Anda di halaman 1dari 41

OOMD Using UML

Case Study: Online Examination System

Object Oriented Modeling And Design


Using UML
Practical 11-Group Case Study
Online Examination System

- Prepared By:
Aniket V. Raut 244
Vikas V. Shetty 250
Jayprakash Yadav - 260

RGIT, Mumbai

Page 1

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

PRACTICAL 11
CASE STUDY ONLINE EXAMINATION SYSTEM

CONTENTS :

1. Scope.............3
1.1 Audience
1.2 Organization
2. Software Requirement Specification..3
3. Functional Model5
4. Activity Diagram16
5. Use Case Diagram18
6. UML Interaction Diagram (Sequence and Collaboration Diagram)21
7. State Chart Diagram.29
8. UML Class Diagram.32
9. Component Diagram.35
10. Deployment Diagram..36

RGIT, Mumbai

Page 2

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

1. Scope :
A. Audience :

Administrator
Teacher
Student
Viewer

B. Organization :
ONLINE EXAMINATION SYSTEM

2. Software Requirement specification


System Abstract
ONLINE EXAMINATION SYSTEM
In this system, the student can take an exam ONLINE that is answer the questions on an
Interactive time - bound examination system where its output (can also be printed) or result can be
viewed immediately as soon as the user is finished with answering the questions.
The system has a unique way of assessment of answers, which can be programmed by the teacher
or the test taker.
The input requirements to the system include, test banks which can be created by Teacher/Test
Taker and can be loaded by creating a specific test session for the student. The creation of the test
session provides a unique user Name/password which is valid for particular user. When logged in with a
valid UserId/password student can open the test file and start the test.
The track record of student can be maintained, regarding the tests taken by user & the marks
obtained.
The interactive test creation environment can be provided, for the Teacher/Test Taker through
which he/she can load/create a new test, create student login, create/open new question banks with
answers, create Teacher accounts (for subject specific tests) print the test answers with the keys/solutions
to them.
The system can be expanded to have a detailed report of the student & the test takers along with
correct answers and answers they gave with the marks.

RGIT, Mumbai

Page 3

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Also each exam/test paper can be made to expire so that no same question paper is availed to the
user.
Major features provided by the system are:
Provide log in form to Teachers or Test Takers and also for Students.
Storing personal details and Educational details about the Teachers or Test Takers and Students.
A Time limit is given for the paper, on that time paper should be completed otherwise paper is
submitted.
Provide detail information about Exams like Exam dates, time, subjects and also Syllabus of
Exam that is Books name, Topics included in Exam.
Storing the Questions and Answers of particular subject is made in such way that the teachers or
Test Takers can access them.
Storing the Results of particular subject of particular student is done.
Provide new blank paper for setting the new Questions set with his
or Test Taker can set his paper with appropriate marks.

Answers so that Teacher

Result can be viewed immediately as soon as the student is finished with answering the
Questions.

RGIT, Mumbai

Page 4

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

3. Functional Model.
The functional model describes the data value transformations within the system, transformation of
values function, mapping constraints and functional dependencies.
The Functional model is basically a representation of how information is transformed.
Functional modeling tries to specify the function of each component in your software by providing
consistent in-flows and out-flows. It is a sort of black box approach, in which only inputs/outputs are
considered and the detailed implementations are ignored.
Functional model is represented with the Data Flow Diagram (DFD).
DFD shows the dependencies between the value and the computation of output value from the input value
and function without regards for when the function is executed.
The functional model captures what a system does without regards of how and when it is done.

Data Dictionary
1] Data Process

Table 3.1
NAME

PROCES

PURPOSE

INBOUND DATA

OUTBOUND DATA

FLOW

FLOW

Creation of Qts

Qts Bank & Test

Qts Bank Info, Test

Bank & Test Qts

Dtls

Qts Info

Creation of Qts

Qts Bank Dtls

Qts Bank Info,

Qts Addition Dtls

Qts Bank

Qts Updation Dtls

Upadated Qts Bank

S
NO.
Qts Bank & Test

Qts
Creation of Qts

1.1

Bank

Adding

Bank

1.1.1

Questions

Updating

Addition Of
Questions

1.1.2

Updation Of Qts

Questions

RGIT, Mumbai

Page 5

Dept-MCA (Sem IV)

OOMD Using UML

Delete Selected

Case Study: Online Examination System

1.1.3

Questions

Deletion Of

Qts Deletion Of

Delete Selected Qts

Selected Qts

Selected Dtls

Dtls

Creation of Test

1.2

Creation of Test

Test dtls

Test Info

Selecting &

1.2.1

Addition &

Test Qts Addition &

Test Paper

Selection Of Test

Selection dtls

Adding Test Qts

Qts

Updating Test

1.2.2

Updation Of Test

Test Updation Dtls

Upadated Test Paper

Deleting

1.2.3

Deletion Of

Test Qts Deletion Of

Delete Selected Test

Selection Test

Selection Test dtls

Qts Dtls

To Generate

Test dtls,

Student Result of Test

Student Result

Enrollment dtls

To Collect Student

Student Dtls

Selected Test

Generation

2.2

Student Result

Get Student Info

2.3

Info

Trial Test &

Result
Enrollment

RGIT, Mumbai

Dtls

Process Student

Trial Test dtls

Trial Test & Rsult Dtls

Enrollment dtls

Valid

Trial Test & Result


3.1

Report

Test Report

Student,Test & Result

3.2

To Generate
Enrollment

member,Receiptid,

Report

Examid

Display Message

Page 6

Test Conduct dtls

No such Student & Test

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System


exists dtls

Trial Test &

To Trial Test &

Trial Test Conduct

Result

dtls

Displaying Trial

Trial Test Result dtls

Trial Test Qts Papers

Qts & Ans details

Result

Result
Trial Test

4.1

Display

Trial Test Result

Test & Result

Generation of

4.2

To Generate

Result

Result

2] Data Store

Table 3.2
NO

NAME

DESCRIPTION

DATA DESCRIPTION

Storing the Enrollment


1.

2.

Enrollment

ExamCat

Detail

ReceiptNo, StudentId, TestId, Date, Amount,


PayType,
Chq_DD_No, Chq_DD_date, BankName, CC_No

Storing the Exam

CatId, CatName

Category

3.
Level

4.

QuestionBan
k

RGIT, Mumbai

Storing the Level

LevelId, LevelName, Marks

To store details

QuestionId, CatId, LevelId, TeacherId, Question,

QuestionBank.

Type, Opt1, Opt2, Opt3, Opt4, Answer, Active

Page 7

Dept-MCA (Sem IV)

OOMD Using UML

5.

Result

Case Study: Online Examination System

Storing the Student

Student

7.

Teacher

8.

Test

9.

Viewer

10.

TestRecord

RGIT, Mumbai

ObtainMarks, Status

Result

Storing the Student


6.

TestId, StudentId, TestDate, TotalMarks,

StudentId, FirstName, LastName, Address, PinCode


ContactNo, EmailId, Password

Detail

Storing the Teacher


Detail
Storing the Test Detail

TeacherId, FirstName, LastName, Address, PinCode


ContactNo, EmailId, Qualification, Password
TestId, TestName, Catid, Teacherid, Examid,
ExamDate, Duration

Storing the Viewer

ViewerId, FirstName, LastName, Address, PinCode

Detail

ContactNo, EmailId, Password, Testid

Storing the
TestRecordDetail

ReceiptNo, Studentid, Qtsid, Testid, answer, correct

Page 8

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Context Level DFD

RGIT, Mumbai

Page 9

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Personal Detail

Test Demo
Outstanding Report

Test Report
Enrollment Report
Result Copy
Receipt

RGIT, Mumbai

Page 10

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Fig 3.1 Context Level DFD

DFD FRAGMENTS

RGIT, Mumbai

Page 11

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Retrieve

Store
Store

Store
Retrieve

Result
Store

Retrieve

Retrieve

RGIT, Mumbai

Page 12

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System


Store

Fig 3.2 DFD Level-1

Retrieve

TestTest
Qts BankQts Bank
Selected Qts

ResultResult

TestName

Test details
Trial Test & Result
4
Viewer
Appearing for Trial Test
Test Paper & Result Display

Viewer

Store

Fig 3.3 DFD Level-1

RGIT, Mumbai
Retrieve

Page 13

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Store

Level
Assign
Exam Cat

Assign

Assign
Question Bank Creation

Creation of Qts Bank


1.1

Question Bank Created


Teacher

Teacher
Test Created
Test Creation

Creation of Test
1.2

Selected

Qts Bank

Prepared
Test

Fig 3.4 DFD Level-2 (Process 1)

RGIT, Mumbai

Page 14

Dept-MCA (Sem IV)

Level
Case Study:
Online Examination
System
Qts Bank
& Test Qts

OOMD Using UML

1
Teacher
Question Bank & Test Creation

Qts Selected

Qts Bank

Test Paper Display

Test

Display Test
2.1

Teacher

Paper created

Student Test & Result


2

Result Display
Test Info
Test Report
Appearing For Test

Student

Test Paper Display

Summary
Generation Student Result
2.2
Submit Test

Result Display

Student

Enrollment Receipt

Enrollment Report Request


Retrive

Management

Enrollment

Store

Management

Get Student Info


2.3

Receipt

Report
3
Test Record

Student

Enrollment Report
Id Generated

Enrollment

Fig 3.5 DFD Level-2 (Process 2)

RGIT, Mumbai

Page 15

Dept-MCA (Sem IV)

Enrollme

OOMD Using UML

Case Study: Online Examination System

Enrollment
Summery

Management

Test

Summery

Request Enrollment Report


Enrollment
Report
3.1

Report Display
Summery

Request Test Report

Management

Report Display

Test Report
3.2

Summery

Result

Fig 3.6 DFD Level-2 (Process 3)

RGIT, Mumbai

Page 16

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Qts Selected

Qts Bank

Paper created

Test

Trial Test Display


4.1
Appearing for Trial Test

Viewer

Viewer

Result Display
Submit Test
Generation of Result
4.2

Store
Result
Retrieve

Fig 3.7 DFD Level-2 (Process 4)

RGIT, Mumbai

Page 17

Dept-MCA (Sem IV)

OOMD Using UML


4.

Case Study: Online Examination System

Activity Diagram

An Activity diagram is a visual representation of any system's activities and flows of data or decisions
between activities.

Activity diagrams provide a very broad view of a business process.


They represent the dynamics of a system.
They are flow charts that are used to show the work flow of a system.
They show the flow of control from activity to activity in the system.
They show what activities can be done in parallel, and any alternative paths through the flow.
Purpose
Model business workflows
Model operations
Activity diagrams commonly contain
Activity states and action states
Transitions
Objects
Action States and Activity States

Action states are atomic and cannot be decomposed


Work of the action state is not interrupted

Activity states can be further decomposed


Their activity being represented by other activity diagrams
They may be interrupted

Represented in UML by a rounded rectangle.

Activity represents the performance of some behavior in the work flow.

Branching

When modeling the workflow of a system, it is often necessary to show where the flow of control
branches based on a decision point.

The transition from a decision point contain a guard condition.


The guard condition is used to determine which path from the decision point is taken.
Decisions along with their guard conditions allow you to show alternative paths through a work flow .

RGIT, Mumbai

Page 18

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

A branch specifies alternate paths taken based on some Boolean expression


A branch may have one incoming transition and two or more outgoing ones

Admin
Entered

Login

Admin Login

Defined Exam Category &


Exam Level

Assign Teacher

N
Teacher Login

Teacher
Entered
N

Teacher
Details

Issue ID
N

Create Qts
Bank

Teacher
Authorised

Student Details

Create Test

Qts Bank
Created

Issue Student
ID
Viewer ID
Issued
N

Modify Or
Delete Teat

Test Created &


Confirm

Appear Demo Exam &


Issue Result
Attempt Final Exam

Student ID
Issued

Enrollment
N

Modify Or Delete
Qts Bank

Attempt Exam

Issue Receipt &


Enrollment ID
Y

Issue Fail
Result

Enter Enrollment
ID

ID Validation
N

Attending Test
Paper

Time Out
N

Display & Print


Result

Submit Paper
N

Fig 4.1 The Activity Diagram for Online Examination system

RGIT, Mumbai

Page 19

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

5. Use Case Diagram :

The use-case concept was introduced by Ivar Jacobson in the object-oriented software engineering
(OOSE) method.
A use-case diagram is a graph of actors, a set of use cases enclosed by a system boundary,
communication (participation) associations between the actors and the use cases, and generalization
among the cases.
Use case diagrams show how users interact with the system.
Use case diagrams describe what a system does from the standpoint of an external observer. The
emphasis is on what a system does rather than how.

Use case diagrams are closely connected to scenarios. A scenario is an example of what happens
when someone interacts with the system. Here is a scenario for a medical clinic.
"A patient calls the clinic to make an appointment for a yearly checkup. The receptionist finds the
nearest empty time slot in the appointment book and schedules the appointment for that time slot.
"

Used during requirements elicitation to represent external behavior


Actors represent roles, that is, a type of user of the system
Use cases represent a sequence of interaction for a type of functionality
The use case model is the set of all use cases. It is a complete description of the functionality of the
system and its environment

Actors

An actor models an external entity which communicates with the system:


User
External system
Physical environment

An actor has a unique name and an optional description.


Examples:
Passenger: A person in the train
GPS satellite: Provides the system with GPS coordinates

RGIT, Mumbai

Page 20

Passenger

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Use Cases
A use case represents a class of functionality provided by the system as an event flow.
A use case consists of:

Unique name
Participating actors
Pre-conditions
Entry conditions (triggers)
Flow of events
Exit conditions (success guarantees)
Special requirements

RGIT, Mumbai

Purchase Ticket

Page 21

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Fig 5.1 Use case diagram for Online Examination System

USE CASE DESCRIPTION :

Actors:
A. Administrator
B. Student
C. Teacher
D. viewer

RGIT, Mumbai

Page 22

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Use cases:
1. Creating question bank
2. Creation of test
3. Enrolling student
4. Student test
5. Generating result
6. Trail test
7. report

1. creating question bank


Question bank is created by the Authorized Teacher only.
2. Creation of test
Authorized teacher will create a test paper from the question bank previously prepared.
3. Enrolling student
Student has to clear the demo test. After which her will be enrolled and given a Enrollment ID.

4. Student Test
After receiving the Enrollment ID the particular student has to give the exam online on the
prescheduled date and time

5. Generating results
The exam is of fixed duration after which the paper would be auto submitted and the result of the
candidate would be generated.
6. Trail Test
Any unregistered user or first time user is a Viewer. He has to clear a demo test in order to receive
the enrollment ID which in turn will be used to appear for the Final Examination.

RGIT, Mumbai

Page 23

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

7 Report
At the end of the Examination, a detailed combine result of the Enrolled students would be
documented as a report

6. UML Interaction Diagram (Sequence And Collaboration Diagram) .


Sequence diagrams :
A sequence diagram is an interaction diagram that details how operations are carried out -- what
messages are sent and when. Sequence diagrams are organized according to time. The time progresses as
you go down the page. The objects involved in the operation are listed from left to right according to
when they take part in the message sequence.
Sequence diagrams contain the following:

Class roles (subsystem/object/class, actor, and external system roles in the interaction). These are
(usually) drawn across the top of the diagram.

Lifelines (subsystem/object/class existence). These (usually) extend down the diagram.

Activations (show when the subsystem/object/class is doing something)

Messages (communication between roles

RGIT, Mumbai

Page 24

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Qts Bank : Class


Teacher : Teacher
Select Exam Category & Level
Exam Category & Level Selected
Enter Questions

Questions Added

Modify Questions
Questions Modified
Delete Questions
Questions Deleted

Fig 6.1 Sequence Diagram For Creating Qts Bank

Qts Bank :
Class

Test : Class

Teacher : Teacher

Request for Questions


Question Send
Enter Question

Question Added
Modify Questions

Question Modified
Delete Question
Question Deleted

Fig 6.2 Sequence Diagram For Creating Test

RGIT, Mumbai

Page 25

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Enrollment : Class
Management :
Management

Student : Student
Enrolling for Test
Enter Test Name
Test Name Entered
Fees Details
Payment of Fees
Receipt_ID Issued
Display Schedule

Enrollment Report

Fig 6.3 Sequence Diagram For Enrollment

Test : Class

Test Record : Class

Result : Class

Question & Answer Submitted


Wrong Answer
Marks (-1)
Correct Answer
Marks (2)

Final Marks

Fig 6.4 Sequence Diagram For Generation of Result

RGIT, Mumbai

Page 26

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Result : Class

Enrollment : Class
Management :
Management
Enrollment Report
Weekly Report

Monthly Report
Yearly Report
Summary Report

Fig 6.5 Sequence Diagram For Report

: Trial Test : Class


Viewer : Viewer
Teacher : Teacher
Request for Test
Request send

Request Approved
Request Grant
Attempt Test
Display Result

Fig6.6 Sequence Diagram for Trial Test

RGIT, Mumbai

Page 27

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Test : Class

Result : Class
Teacher : Teacher

Student : Student

Request For Test


Demand For Recept_ID
Enter Receipt_ID
Invalid Receipt_ID
ReEnter Receipt_ID

Receipt_ID Valid
Display Test
Attempting Test
Submit Paper
Marks Stored
Display & print Result

Display & print Result

Fig 6.7 Sequence Diagram For Student Test


Collaboration diagrams :

RGIT, Mumbai

Page 28

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Collaboration diagrams are also interaction diagrams. They convey the same information as
sequence diagrams, but they focus on object roles instead of the times that messages are sent. In a
sequence diagram, object roles are the vertices and messages are the connecting links.

Collaboration diagrams show (used to model) how objects interact and their roles.
They are very similar to sequence diagrams. Actually they are considered as a cross between class
and sequence diagram.
Sequence Diagrams are arranged according to Time.
Collaboration Diagrams represent the structural organization of object.
[Both sequence and collaboration diagrams are called interaction diagrams]

Forms a context for interactions

May realize use cases


May be associated with operations
May describe the static structure of classes

Collaboration diagrams contain the following:

Class roles (subsystems/objects/classes/actors/ external systems) as before.


Association roles (pathways or links over which messages flow)
Message flows (messages sent between class roles)

1: Select Exam Category & Level


3: Enter Questions
5: Modify Questions
7: Delete Questions
Qts Bank :
Class
Teacher : Teacher

2: Exam Category & Level Selected


4: Questions Added
6: Questions Modified
8: Questions Deleted

Fig 6.8 Collaboration Diagram For Creating Qts Bank

RGIT, Mumbai

Page 29

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Qts Bank :
Class

2: Question Send

1: Request for Questions

3: Enter Question
5: Modify Questions
7: Delete Question
Test :
Class
4: Question Added
6: Question Modified
8: Question Deleted

Teacher : Teacher

Fig 6.9 Collaboration Diagram For Creating Test

Student : Student

2: Enter Test Name


4: Fees Details
6: Receipt_ID Issued
7: Display Schedule

1: Enrolling for Test


3: Test Name Entered
5: Payment of Fees
8: Enrollment Report
Enrollment :
Class
Management :
Management

Fig 6.10 Collaboration Diagram For Enrollment

RGIT, Mumbai

Page 30

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

1: Question & Answer Submitted


Test :
Class

Test Record :
Class

3: Marks (-1)
5: Marks (2)

2: Wrong Answer
4: Correct Answer
6: Final Marks

Result :
Class

6.11 Collaboration Diagram For Generation of Result

Enrollment :
Class
1: Enrollment Report
Management :
Management
2: Weekly Report
3: Monthly Report
4: Yearly Report
5: Summary Report
Result :
Class

6.12 Collaboration Diagram For Report

RGIT, Mumbai

Page 31

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

1: Request For Test


3: Enter Receipt_ID
5: ReEnter Receipt_ID
8: Attempting Test
9: Submit Paper
Test :
Class
Student : Student

2: Demand For Recept_ID


4: Invalid Receipt_ID
6: Receipt_ID Valid
7: Display Test
10: Marks Stored
12: Display & print Result

Result :
Class
11: Display & print Result

Teacher : Teacher

6.13 Collaboration Diagram For Student Test

1: Request for Test


5: Attempt Test
: Trial Test :
Class
Viewer : Viewer

4: Request Grant
6: Display Result

3: Request Approved
2: Request send

Teacher : Teacher

6.14 Collaboration Diagram For Viewer Test

RGIT, Mumbai

Page 32

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

7. Statechart Diagram:
The name of the diagram itself clarifies the purpose of the diagram and other details. It describes
different states of a component in a system. The states are specific to a component/object of a system.
A Statechart diagram describes a state machine. Now to clarify it state machine can be defined as a
machine which defines different states of an object and these states are controlled by external or internal
events.
Purpose:
Statechart diagram is one of the five UML diagrams used to model dynamic nature of a system.
They define different states of an object during its lifetime. And these states are changed by events. So
Statechart diagrams are useful to model reactive systems. Reactive systems can be defined as a system
that responds to external or internal events.
Statechart diagram describes the flow of control from one state to another state. States are defined as a
condition in which an object exists and it changes when some event is triggered. So the most important
purpose of Statechart diagram is to model life time of an object from creation to termination.
Following are the main purposes of using Statechart diagrams:
To model dynamic aspect of a system.
To model life time of a reactive system.
To describe different states of an object during its life time.
Define a state machine to model states of an object.
Notation :
State

The State notation marks a mode of the entity, and


is indicated using a rectange with rounded corners,
and the state name written inside.

Transition

A Transition marks the changing of the object State,


caused by an event. The notation for a Transition is
an arrow, with the Event Name written above,

RGIT, Mumbai

Page 33

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System


below, or alongside the arrow.

Initial State

The Initial State is the state of an object before any


transitions. For objects, this could be the state when
instantiated. The Initial State is marked using a
solid circle. Only one initial state is allowed on a
diagram.
End States mark the destruction of the object who's

Final State

state we are modeling. These states are drawn using


a solid circle with a surrounding circle.

Admin
Login

Alloting Teacher
For Specific Test

Teacher
Assign

Create Qts

Create Qts
Bank

Select Qts
Form QtsBank

Enrolling
Student for
Test

Create Test

Student
Enrollment

Pay Fees

Issue Exam
ID

Display Test

Finish Test

When
Student==Viewer

Appearing
Demo Exam

Appearing
Test

Finish Test

Display &
Print Result

Fig 7.1 Statechart Diagram For Online Examination System

RGIT, Mumbai

Page 34

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

8. CLASS DIAGRAM :

The class diagram is a static diagram. It represents the static view of an application. Class diagram is
not only used for visualizing, describing and documenting different aspects of a system but also for
constructing executable code of the software application.
The class diagram describes the attributes and operations of a class and also the constraints imposed on
the system. The class diagrams are widely used in the modelling of object oriented systems because they
are the only UML diagrams which can be mapped directly with object oriented languages.
The class diagram shows a collection of classes, interfaces, associations, collaborations and constraints. It
is also known as a structural diagram.
Purpose:
The purpose of the class diagram is to model the static view of an application. The class diagrams
are the only diagrams which can be directly mapped with object oriented languages and thus widely used
at the time of construction.
The UML diagrams like activity diagram, sequence diagram can only give the sequence flow of the
application but class diagram is a bit different. So it is the most popular UML diagram in the coder
community.
So the purpose of the class diagram can be summarized as:

Analysis and design of the static view of an application.

Describe responsibilities of a system.

Base for component and deployment diagrams.

Forward and reverse engineering.

RGIT, Mumbai

Page 35

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

Notation:
Class

Classes are the building blocks in object-oriented


programming. A Class is depicted using a
rectangle divided into three sections. The top
section is the name of the Class. The middle
section defines the properties of the Class. The
bottom section lists the methods of the class.

Association

An Association is a generic relationship between


two classes, and is modeled by a line connecting
the two classes. This line can be qualified with the
type of relationship, and can also feature
multiplicity rules (eg. one-to-one, one-to-many,
many-to-many) for the relationship.

Composition

If a class cannot exist by itself, and instead must


be a member of another class, then that class has a
Composition relationship with the containing
class. A Composition relationship is indicated by a
line with a filled diamond.

Dependency

When a class uses another class, perhaps as a


member variable or a parameter, and so "depends"
on that class, a Dependency relationship is formed.
A Dependency relationship is indicated by a dotted
arrow.

Aggregation

Aggregations indicate a whole-part relationship,


and are known as "has-a" relationships. An
Aggregation relationship is indicated by a line
with a hollow diamond.

Generalization

A Generalization relationship is the equivalent of


an inheritance relationship in object-oriented
terms (an "is-a" relationship). A Generalization

RGIT, Mumbai

Page 36

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

relationship is indicated by an arrow with a hollow


arrowhead pointing to the base, or "parent", class.

Result
TestID : Number
StudentID : Number
TestDate : Date
TotalMarks : Number
ObtainMarks : Number
Status : Varchar

IssueResult()
DisplayResult()

AddQts()
UpdateQts()
DeleteQts()
DisplayTestQts()
0..*
1

Test Record
ReceiptNo : Number
StudentID : Number
TestID : Number
QuestionID : Number
Answer : Varchar
Correct : Varchar
TotalCalculation()

0..*
1..*

Student
StudentID : Number
FirstName : Varchar
LastName : Varchar
Address : Varchar
Pincode : Number
ContactNo : Number
EmailID : Varchar
Password : Varchar

1
Viewer
ViewerID : Number
FirstName : Varchar
LastName : Varchar
Address : Varchar
Pincode : Number
ContactNo : Number
EmailID : Varchar
TestName : Varchar

GetDetails()
DisplayDetails()
UpdateDetails()
DeleteDetails()

GetDetails()
DisplayDetails()
UpdateDetails()
DeleteDetails()

1..*

Test
TestID : Number
TestName : Varchar
CatID : Number
TeacherID : Number
Amount : Number
ExamDate : Date
ExamTime : DateTime
DurationH : Number
DurationM : Number

1
Teacher
TeacherID : Number
FirstName : Varchar
LastName : Varchar
Address : Varchar
Pincode : Number
ContactNo : Number
EmailID : Varchar
Qualification : Varchar
Password : Varchar

CreateQts()
UpdateQts()
DeteleQts()
DisplayQtsBank()

GetDetails()
DisplayDetails()
UpdateDetails()
DeleteDetails()
1..*

Enrollment
ReceiptNo : Number
StudentID : Number
TestID : Number
Date : Date
Amount : Number
PayType : Varchar
ChqDDNo : Number
ChqDDDate : Date
BankName : Varchar
CCNO : Number

0..*

Qts Bank
QtsID : Number
CatID : Number
LevelID : Number
TeacherID : Number
Question : Varchar
Type : Varchar
Opt1 : Varchar
Opt2 : Varchar
Opt3 : Varchar
Opt4 : Varchar
Answer : Varchar
Active : Varchar

Exam Category
CatID : Number
CatName : Varchar
AssignCat()

Level
LevelID : Number
LevelName : Varchar
Marks : Number
AssignLevel()

Management
UserID : Number
UserName : Varchar
Password : Varchar
AssignTeacher()
AnalysReports()

GetPayment()
PutPayment()
IssueReceipt()

Fig 8.1 Class Diagram for Online Examination System

RGIT, Mumbai

Page 37

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

9. Component Diagram :
Component diagrams are different in terms of nature and behavior. Component diagrams are used to
model physical aspects of a system.
Physical aspects are the elements like executables, libraries, files, documents etc which resides in a node.
So component diagrams are used to visualize the organization and relationships among components in a
system. These diagrams are also used to make executable systems.
Purpose:
Component diagram is a special kind of diagram in UML. The purpose is also different from all
other diagrams discussed so far. It does not describe the functionality of the system but it describes the
components used to make those functionalities.
So from that point component diagrams are used to visualize the physical components in a system. These
components are libraries, packages, files etc.
Component diagrams can also be described as a static implementation view of a system. Static
implementation represents the organization of the components at a particular moment.
A single component diagram cannot represent the entire system but a collection of diagrams are used to
represent the whole.
So the purpose of the component diagram can be summarized as:

Visualize the components of a system.

Construct executables by using forward and reverse engineering.

Describe the organization and relationships of the components.

Notation :

RGIT, Mumbai

Page 38

Dept-MCA (Sem IV)

OOMD Using UML

Component

Case Study: Online Examination System

A component represents a software entity in a system.


Examples include source code files, programs, documents,
and resource files. A component is represented using a
rectangular box, with two rectangles protruding from the left
side, as seen in the image to the right.

Dependency

A Dependency is used to model the relationship between two


components. The notation for a dependency relationship is a
dotted arrow, pointing from a component to the component it
depends on.

Component Diagram :

<<GUI>>

Java
Application

<<INFRASTRUCTURE>>

Online Examination
System
Oracle

Fig 9.1 Component Diagram For Online Examination System

10. Deployment Diagram :


Deployment diagrams are used to visualize the topology of the physical components of a system
where the software components are deployed.

RGIT, Mumbai

Page 39

Dept-MCA (Sem IV)

OOMD Using UML

Case Study: Online Examination System

So deployment diagrams are used to describe the static deployment view of a system. Deployment
diagrams consist of nodes and their relationships.

Purpose:
The name Deployment itself describes the purpose of the diagram. Deployment diagrams are used
for describing the hardware components where software components are deployed. Component diagrams
and deployment diagrams are closely related.
Component diagrams are used to describe the components and deployment diagrams shows how they are
deployed in hardware.
UML is mainly designed to focus on software artifacts of a system. But these two diagrams are special
diagrams used to focus on software components and hardware components.
So most of the UML diagrams are used to handle logical components but deployment diagrams are made
to focus on hardware topology of a system. Deployment diagrams are used by the system engineers.
The purpose of deployment diagrams can be described as:

Visualize hardware topology of a system.

Describe the hardware components used to deploy software components.

Describe runtime processing nodes.

Notation :
Componen

A component represents a software entity in a system.

Examples include source code files, programs, documents,


and resource files. On a deployment diagram, components
are placed within nodes to identify their deployed location.
A component is represented using a rectangular box, with
two rectangles protruding from the left side, as seen in the
image to the right.

RGIT, Mumbai

Page 40

Dept-MCA (Sem IV)

OOMD Using UML


Node

Case Study: Online Examination System


A node represents a piece of hardware in the system. This
entity is represented by a three-dimensional cube.

Association

An association, drawn as a solid line between two Nodes,


indicates a line of communication between the hardware
elements.

Deployment Diagram:

Client Computer
Java
Application

Teacher Server
FTP

Test.Sql

Administrator Server
FTP

Report.Sql

JDBC

FTP

FTP

Database
Printer

FTP

Oracle

Fig 10.1 Deployment Diagram For Online Examination System

RGIT, Mumbai

Page 41

Dept-MCA (Sem IV)

Anda mungkin juga menyukai