Académique Documents
Professionnel Documents
Culture Documents
Three Types
conceptual or physical. There are seven kinds of structural things: Class, Interface,
Collaboration, Use Case, Active Class, Component, and Node.
o Behavioral things: Dynamic parts of UML models. The verbs which represent
behavior over time and space. There are two kinds of behavioral things: Interaction,
and State Machine.
o Grouping things: Organizational parts of UML. These are boxes into which
models can be decomposed. There is only one kind of grouping thing, the Package.
o Annotational things: Explanatory parts of UML. Used to describe, illuminate, and
remark any element of a model. There is only one kind of annotational thing, the
Note.
2. Relationships: Four Types
o Dependency: A semantic relationship in which a change on one thing (the
independent thing) may cause changes in the other thing (the dependent thing).
o Association: A structural relationship describing links between objects. May also
include labels to indicate number and role of the links. In the example shown below
there may be any number of employees (*) each of which has 0 or 1 employer.
o Generalization: A specialization/generalization relationship. Simply put this
describes the relationship of a parent class (generalization) to its subclasses
(specializations).
o Realization: Defines a relationship in which one class specifies something that
another class will perform. Example: The relationship between an interface and the
class that realizes or executes that interface.
Structural Things:
1. Class - An object with defined attributes and operations. A class in UML is very much like a
class in C++.
3. Collaboration - A larger pattern of behaviors and actions. Example: All classes and behaviors
that create the modeling of a moving tank in a simulation.
4. Use Case - A sequence of actions that a system performs that yields an observable result.
Used to structure behavior in a model. Is realized by collaboration.
5. Active Class - Like a class but its represents behavior that runs concurrent with other behaviors,
i.e. threading.
Behavioral Things:
2. State Machine - A behavior that specifies the sequences of states an object or interaction goes
through during its' lifetime in response to events.
Grouping Thing:
Annotation Thing:
Relationships:
1. Dependency - A semantic relationship in which a change on one thing (the independent thing)
may cause changes in the other thing (the dependent thing).
2. Association - A structural relationship describing links between objects. May also include labels
to indicate number and role of the links. In the example there may be any number of employees (*)
each of which has 0 or 1 employer.
4. Realization - Defines a relationship in which one class specifies something that another class
will perform. Example: The relationship between an interface and the class that realizes or
executes that interface.
Diagrams:
1. Class Diagram - A set of classes, interfaces, and collaborations and their relationships.
Most often found in modeling OO systems.
2. Object Diagram - A set of objects and their relationships. Represents static instances of things
found in class diagrams.
4. Sequence Diagram - An interactive diagram (set of objects, relationships, and messages that
may be exchanged) emphasizing the time-ordering of messages.
6. State chart Diagram - Shows a state machine with states, transitions, events, and activities.
7. Activity Diagram - Special type of state chart diagram that shows the flow from activity to
8. Component Diagram - Shows the organizations and dependencies among a set of components.
9. Deployment Diagram - Shows the configuration of run-time processing nodes and the
components that are part of them.
CASE STUDY
As the head of information systems for Wylie College you are tasked with developing a
new student registration system. The college would like a new client-server system to replace its
much older system developed around mainframe technology. The new system will allow students
to register for courses and view report cards from personal computers attached to the campus LAN.
Professors will be able to access the system to sign up to teach courses as well as record grades.
Due to a decrease in federal funding, the college cannot afford to replace the entire system
at once. The college will keep the existing course catalog database where all course information is
maintained. This database is an Ingress relational database running on a DEC VAX. Fortunately
the college has invested in an open SQL interface that allows access to this database from college’s
UNIX servers. The legacy system performance is rather poor, so the new system must ensure that
access to the data on the legacy system occurs in a timely manner. The new system will access
course information from the legacy database but will not update it. The registrar’s office will
continue to maintain course information through another system.
At the beginning of each semester, students may request a course catalogue containing a list
of course offerings for the semester. Information about each course, such as professor, department,
and prerequisites, will be included to help students make informed decisions.
The new system will allow students to select four course offerings for the coming semester.
In addition, each student will indicate two alternative choices in case the student cannot be
assigned to a primary selection. Course offerings will have a maximum of ten students and a
minimum of three students. A course offering with fewer than three students will be canceled. For
each semester, there is a period of time that students can change their schedule. Students must be
able to access the system during this time to add or drop courses. Once the registration process is
completed for a student, the registration system sends information to the billing system so the
student can be billed for the semester. If a course fills up during the actual registration process, the
student must be notified of the change before submitting the schedule for processing.
At the end of the semester, the student will be able to access the system to view an
electronic report card. Since student grades are sensitive information, the system must employ
extra security measures to prevent unauthorized access.
Professors must be able to access the on-line system to indicate which courses they will be
teaching. They will also need to see which students signed up for their course offerings. In
addition, the professors will be able to record the grades for the students in each class.
Student
View Report card
(from Actors)
(from Use Cases)
Course Catalog
Database
Login (from Actors)
(from Use Cases)
Students List
(from Use Cases)
+ getCoursesList()
Professor
(from Actors)
Record grades
(from Use Cases)
(from Actors)
Billing System
(from Actors)
Close Registration
(from Use Cases)
Login
(from Use Cases)
Student
(from Actors)
User Professor
(from Actors) (from Actors)
Registrar
(from Actors)
Login
(from Use Cases)
Registrar
(from Actors)
Login
(from Use Cases)
Registrar
(from Actors)
Approach
the registrar
Give the
application
Register the
courses
Give to
registrar
[not correct]
Return back the
application form
[filled correct]
Ask for
cash
Give the
cash
Give back to
Bring required the student
money
Take the
receipt
LOGICAL VIEW
Cancel
Closed
[ No professor ]
LoginForm
- username LoginController
- password - usersData
+ setUsername() + setUserData()
+ setPassword() + validation()
+ submit()
MessageBox
- message
+ display()
UsersDB
- usersList
OptionsForm
+ getAllUsersInfo()
+ displayOptions()
2: submit
3: setUserData
4: getAllUsersInfo
5:
6: validation
7: display(message)
6: validation
5:
4: getAllUsersInfo 7: display(message)
UsersDB
MessageBox
system
: User
2: submit
3: perform validation
2: submit
3: setUserData
4: getAllUsersInfo
5:
6: validation
7: displayOptions
LoginForm
: User
6: validation
3: setUserData
UsersDB
4: getAllUsersInfo
LoginController 5:
7: displayOptions
OptionsForm
: RegistrationForm : RegistrationController
: Student
1: fillTheForm( )
2: submit( )
3: isRegstrationOpen( )
4: [Registrstion is open]
5: displayOptions( )
6: createSchdule( )
Sequence
7: modifySchedule( ) Diagr...
8: deleteSchedule( )
5: displayOptions( )
1: fillTheForm( )
2: submit( )
6: createSchdule( )
7: modifySchedule( )
8: deleteSchedule( ) : RegistrationForm
: Student
4: [Registrstion is open]
3: isRegstrationOpen( )
: RegistrationController
: : : CoursesCatalog
: Student : Course
RegistrationForm Registra...
Cata...
1: createSchdule( )
2: getAllCoursesList( )
3: getAllCoursesList( )
4: getCoursesList( )
5:
6:
7:
8: displayCoursesList( )
9: create( ) : Schedule
10: displayBlankSchedule( )
11: selectFourPrimaryCoursesAndTwoAlternateCourses( )
12: saveSchedule( )
13: save( )
Sequence
Diagr...
8: displayCoursesList( )
10: displayBlankSchedule( )
2: getAllCoursesList( )
1: createSchdule( ) 12: saveSchedule( )
11: selectFourPrimaryCoursesAndTwoAlternateCourses( ) : RegistrationController
: RegistrationForm
7:
: Student
6:
9: create( )
3: getAllCoursesList( ) 13: save( )
5:
: CoursesCatalog
: Course Catalog
4: getCoursesList( ) : Schedule
Database
COMPONENT VIEW
IUsers
Users Registration.exe
IBilling
ICourseC
atalog
Billing.dll
Course
Catalog.dll
DEPLOYMENT VIEW
Desktop
Desktop Desktop PC
PC PC
Registration
Printer
Course Catalog
Database
Billing
System
MINI PROJECTS
1. Tele phone Billing System
2. Sports Club Management System
3. Real Estate Management
4. Venue Reservation System
5. Courier Service System
6. Address Book
7. Children Orphanage System
8. Electricity Billing System
9. Human Resource Management System
10. Blood Group Database Management System
11. Trading System
12. Toll Gate Automation System
13. Cab System
14. Database Explorer
15. Gas Agency Automation
16. College Administration System
The purpose of this project titled ‘Telephone billing system’ involves in generating the
bills, for the calls.
The software involves many features such as all the people’s addresses that have the
telephone connection, no of calls, &cost per call &total bill. This software can reduce the man
power and also reduces the working hours and it can work more efficiently.
The administrator can view & update the details of bills where as the viewer can only view
the bill details & pay the bill.
The project is developed by using JSP as the front end considering its advantages in web
application and SQL as backend.
The software involves the features such as the member details and the status of the member.
The Administrator additionally can add, modify or delete users, change user passwords,
add, modify or delete club database fields, view all activities of each function, create, send and
track all email notifications, customize other club information and view all functional reports. The
Members can register for membership in sports club and also they have a facility for viewing their
status, schedules of the games, and results of the game.
The initial requirements call for the program to only be able to work with a single
address book at a time. A later extension might allow for multiple address books to be open, each
with its own window which can be closed separately. In this case, New and Open will result in
creating a new window, without affecting the current window.
The program will keep track of whether any changes have been made to an address
book since it was last saved, and will offer the user the opportunity to save changes when an
address book is closed either explicitly.
The program will keep track of the file that the current address book was read from or
most recently saved to, will display the file's name as the title of the main window, and will use
that file when executing the Save option.