Consider the following set of requirements for a university information system
that is used to keep track of students transcripts.
a. The university keeps track of each student's name, student number,
social security number, current address and phone, permanent address and
phone, birthdate, sex, class (freshman, sophomore, ..., graduate), major
department, minor department (if any), and degree program (B.A., B.S.,
..., Ph.D.). Some user applications need to refer to the city, state,
and zip of the student's permanent address, and to the students' last
name. Both social security number and student number have unique values
for each student.
b. Each department is described by a name, department code, office number,
office phone and college. Both name and code have unique values for
each department.
c. Each course has a course name, description, code number, number of
semester hours, level, and offering department. The value of code number
is unique for each course.
d. Each section has an instructor, semester, year, course, and section
number. The section number distinguishes different sections of the same
course that are taught during the same semester/year; its values are
1, 2, 3, ...; up to the number of sections taught during each semester.
e. A grade report has a student, section, and grade.
The applications are:
(1) An administrator can update the courses to be taught by instructors,
and enter the list of students taking a course.
(2) An instructor can enter and update the grades of the course(s) taught
by this instructor.
(3) A student can request a grade report from the information system.
Exercise 2:
The UML provides a common language for software
developers to communicate with each other. In the
term project, each team/person will use UML for
the specification of the software component to
be developed by this team/person.
Each term/person should
provide a high-level description, rationale, and initial
UML specification of the term project.
The UML diagrams to be delivered include the use case diagram,
the class diagram, the activity diagram and the collaboration diagram. These
four types of diagrams are chosen because they can all be created
using the software tool ArgoUML as long as feedback loops are avoided.
In creating the class diagram, try to remain consistent with the
database schemas for the
virtual classroom.
The name of variables used in the diagrams should also remain
consistent with the variables for the "remote control" supplied
by the teaching assistant. If you follow these rules it will
be easier later to integrate the UML diagrams
to generate a combined overall specification.
Milestone 1: Specify messages to a component.
Milestone 2: Test interface between remote control and component.
You should have already
started the implementation of the component, concentrating on the
interface with the remote control. You will
demonstrate how your component can interact
with the remote control. The scenario is as follows:
First you run the remote control, which will appear on the screen.
Then you use the remote control to send a message to your
component. The message typically consists of some variables and
their values. You can enter the variable names and values through
the remote control. The output message should also appear on the
remote control. You can test most of your messages this way.