Beruflich Dokumente
Kultur Dokumente
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 1
03085016
ABSTRACT
The Automated Consultant for Higher studies deals with the the
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 2
03085016
PROBLEM STATEMENT
This should explain who needs the solution and who will decide the problem has
been solved.
3. What is the scope and limitations (in time, money resources, technology) that
can be used to solve the problem?
4. What are the features of the problem?
The student does not have enough resources to prepare for the various test that
are held by the university, which may result in the student getting unsatisfactory
marks.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 3
03085016
PROPOSED STATEMENT
The automated consultant makes dreams come true. This helps those students
who wish to pursue higher education in abroad. This consultant provides necessary
details for higher education in abroad. The consultancy also provides training
institute for entrance exam like GRE-TOFEL these automated consultants give all
required details for visa process.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 4
03085016
SOFTWARE REQUIREMENT SPECIFICATION
INTRODUCTION
1.1 PURPOSE:
1.2 SCOPE:
ACTIVITY:
An activity is on going atomic execution within a state machine.
ASSOCIATION:
An association is a structural relationship, that object of one thing was
connected to object of another.
GENERALIZATION:
A generalization is a relationship between general things.
1.4 REFERENCE:
SE fundamentals
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 5
03085016
www.wikipedia.org
www.google.com
1.5 OVERVIEW:
GENERAL DESCRIPTION
A sample diagram that shows the major components of overall system, sub-
systems, interconnection and external interference can be helpful.
The various users that anticipate using this product user loss may be
differentiated based on frequency of use.
Describe any term an issues that will tell the option available for developers.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 6
03085016
SPECIFICATION FUNCTIONS
FUNCTIONALITY 1:
FUNCTIONALITY 2:
OUTPUT: Making him/her score high marks in GRE, students will either pass
or fail.
FUNCTIONALITY 3:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 7
03085016
PROCESSING: Preparing for TOEFL
OUTPUT: Making sure the score is high in exam; students will either pass or
fail.
FUNCTIONALITY 4:
FUNCTIONALITY 4:
USER INTERFACE:
The user interface element should be easy to understand to use and learn. It
used to perform common link between student and consultant.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 8
03085016
UNIFIED MODELING LANGUAGE
INTRODUCTION
Visualizing
Specifying
Construction
Documenting
UML is a language that provides vocabulary and the rules for combing words
in that vocabulary for the purpose of communication.
Vocabulary and rules of a language tell us how to create and real well formed
models, but they don’t tell you what model you should create and when should
create them.
VISUALIZING
The UML is more than just a bunch of graphical symbols. In UML each
symbol has well defined semantics. In this manner one developer can write a model
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 9
03085016
in the UML and another developer or even another tool can interpret the model
unambiguously.
SPECIFYING
UML is used fro specifying means building models that are precise,
unambiguous and complete.
UML addresses the specification of all the important analysis, design and
implementation decisions that must be made in developing and deploying a software
intensive system.
CONSTRUCTING
UML is not a visual programming language but its models can be directly
connected to a variety of programming languages.
The reverse engineering is also possible you can reconstruct a model from an
implementation back into the UML.
DOCUMENTING
Such artifacts are not only the deliverables of a project, they are also critical in
controlling, measuring and communicating about a system during its development
and after its deployment.
The Rules that direct how those building blocks may be put together.
This chapter describes all the UML building blocks. The building blocks of UML
can be defined as:
Things
Relationships
Diagrams
Things:
Things are the most important building blocks of UML. Things can be:
Structural
Behavioral
Grouping
Annotational
STRUCTURAL THINGS:
The Structural things define the static part of the model. They represent
physical and conceptual elements. Following are the brief descriptions of the
structural things.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 11
03085016
CLASS:
INTERFACE:
COLLABORATION:
USE CASE:
Use case represents a set of actions performed by a system for a specific goal.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 12
03085016
COMPONENT:
NODE:
BEHAVIORAL THINGS:
INTERACTION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 13
03085016
STATE MACHINE:
State machine is useful when the state of an object in its life cycle is
important. It defines the sequence of states an object goes through in response to
events. Events are external factors responsible for state change.
GROUPING THINGS:
PACKAGE:
Package is the only one grouping thing available for gathering structural and
behavioral things.
ANNOTATIONAL THINGS:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 14
03085016
NOTE:
RELATIONSHIP IN UML
DEPENDENCY:
ASSOCIATION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 15
03085016
GENERALIZATION:
REALIZATION:
UML DIAGRAMS:
UML diagrams are the ultimate output of the entire discussion. All the
elements, relationships are used to make a complete UML diagram and the diagram
represents a system.
The visual effect of the UML diagram is the most important part of the entire
process. All the other elements are used to make it a complete one.
UML includes the following nine diagrams and the details are described in the
following chapters.
Class diagram
Object diagram
Use case diagram
Sequence diagram
Collaboration diagram
Activity diagram
Statechart diagram
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 16
03085016
Deployment diagram
Component diagram
CLASS DIAGRAM
OVERVIEW:
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.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 17
03085016
PURPOSE:
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.
Class diagrams are the most popular UML diagrams used for construction of
software applications. So it is very important to learn the drawing procedure of class
diagram.
Class diagrams have lot of properties to consider while drawing but here the diagram
will be considered from a top level view.
Class diagram is basically a graphical representation of the static view of the system
and represents different aspects of the application. So a collection of class diagrams
represent the whole system.
The name of the class diagram should be meaningful to describe the aspect of
the system.
Each element and their relationships should be identified in advance.
Responsibility (attributes and methods) of each class should be clearly
identified.
For each class minimum number of properties should be specified. Because
unnecessary properties will make the diagram complicated.
Use notes when ever required to describe some aspect of the diagram.
Because at the end of the drawing it should be understandable to the
developer/coder.
Finally, before making the final version, the diagram should be drawn on
plain paper and rework as many times as possible to make it correct.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 18
03085016
Now the following diagram is an example of an Order System of an
application. So it describes a particular aspect of the entire application.
First of all Order and Customer are identified as the two elements of the
system and they have a one to many relationship because a customer can
have multiple orders.
We would keep Order class is an abstract class and it has two concrete
classes (inheritance relationship) SpecialOrder and NormalOrder.
The two inherited classes have all the properties as the Order class. In
addition they have additional functions like dispatch () and receive ().
So the following class diagram has been drawn considering all the points mentioned
above:
Class diagram is also considered as the foundation for component and deployment
diagrams. Class diagrams are not only used to visualize the static view of the system
but they are also used to construct the executable code for forward and reverse
engineering of any system.
Generally UML diagrams are not directly mapped with any object oriented
programming languages but the class diagram is an exception.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 19
03085016
Class diagram clearly shows the mapping with object oriented languages like Java,
C++ etc. So from practical experience class diagram is generally used for
construction purpose.
OBJECT DIAGRAM
Object diagram shows a set of objects and there relationships. Object
diagram represents static snapshot of instances of the things found in class diagram.
These diagrams address static design view or static process view of a system.
OVERVIEW:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 20
03085016
So only static behaviour is not sufficient to model a system rather dynamic
behaviour is more important than static behaviour. In UML there are five diagrams
available to model dynamic nature and use case diagram is one of them. Now as we
have to discuss that the use case diagram is dynamic in nature there should be some
internal or external factors for making the interaction.
These internal and external agents are known as actors. So use case diagrams
are consists of actors, use cases and their relationships. The diagram is used to model
the system/subsystem of an application. A single use case diagram captures a
particular functionality of a system.
So to model the entire system numbers of use case diagrams are used.
PURPOSE:
The purpose of use case diagram is to capture the dynamic aspect of a system.
But this definition is too generic to describe the purpose.
Use case diagrams are used to gather the requirements of a system including
internal and external influences. These requirements are mostly design requirements.
So when a system is analyzed to gather its functionalities use cases are prepared and
actors are identified.
Now when the initial task is complete use case diagrams are modelled to present the
outside view.
Use case diagrams are considered for high level requirement analysis of a
system. So when the requirements of a system are analyzed the functionalities are
captured in use cases.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 21
03085016
So we can say that uses cases are nothing but the system functionalities written in an
organized manner. Now the second things which are relevant to the use cases are the
actors. Actors can be defined as something that interacts with the system.
The actors can be human user, some internal applications or may be some external
applications. So in a brief when we are planning to draw an use case diagram we
should have the following items identified.
Actors
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 22
03085016
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 23
03085016
INTERACTION DIAGRAM
We have two types of interaction diagrams in UML. One is sequence diagram
and the other is a collaboration diagram. The sequence diagram captures the time
sequence of message flow from one object to another and the collaboration diagram
describes the organization of objects in a system taking part in the message flow.
So the following things are to identified clearly before drawing the interaction
diagram:
The following diagram has shown the message sequence for Special Order object
and the same can be used in case of Normal Order object. Now it is important to
understand the time sequence of message flows. The message flow is nothing but a
method call of an object.
The first call is sendOrder () which is a method of Order object. The next call is
confirm () which is a method of SpecialOrder object and the last call is Dispatch ()
which is a method of SpecialOrder object. So here the diagram is mainly describing
the method calls from one object to another and this is also the actual scenario when
the system is running.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 24
03085016
THE COLLABORATION DIAGRAM:
The method calls are similar to that of a sequence diagram. But the difference is that
the sequence diagram does not describe the object organization where as the
collaboration diagram shows the object organization.
Now to choose between these two diagrams the main emphasis is given on the type
of requirement. If the time sequence is important then sequence diagram is used and
if organization is required then collaboration diagram is used.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 25
03085016
Where to use Interaction Diagrams?
The main purposes of both the diagrams are similar as they are used to capture the
dynamic behaviour of a system. But the specific purposes are more important to
clarify and understood.
Sequence diagrams are used to capture the order of messages flowing from one
object to another. And the collaboration diagrams are used to describe the structural
organizations of the objects taking part in the interaction. A single diagram is not
sufficient to describe the dynamic aspect of an entire system so a set of diagrams are
used to capture is as a whole.
The interaction diagrams are used when we want to understand the message flow
and the structural organization. Now message flow means the sequence of control
flow from one object to another and structural organization means the visual
organization of the elements in a system.
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.
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.
Statechart diagrams are also used for forward and reverse engineering of a
system. But the main purpose is to model reactive system.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 27
03085016
Statechart diagram is used to describe the states of different objects in its
life cycle. So the emphasis is given on the state changes upon some internal or
external events. These states of objects are important to analyze and implement them
accurately.
Statechart diagrams are very important for describing the states. States can be
identified as the condition of objects when a particular event occurs.
Before drawing a Statechart diagram we must have clarified the following points:
The first state is an idle state from where the process starts. The next states are
arrived for events like send request, confirm request, and dispatch order. These
events are responsible for state changes of order object.
During the life cycle of an object (here order object) it goes through the following
states and there may be some abnormal exists also. This abnormal exit may occur
due to some problem in the system. When the entire life cycle is complete it is
considered as the complete transaction as mentioned below.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 28
03085016
Where to use Interaction Diagrams?
Statechart diagram defines the states of a component and these state changes
are dynamic in nature. So its specific purpose is to define state changes triggered by
events. Events are internal or external factors influencing the system.
Statechart diagrams are used to model states and also events operating on the
system. When implementing a system it is very important to clarify different states
of an object during its life time and statechart diagrams are used for this purpose.
When these states and events are identified they are used to model it and these
models are used during implementation of the system.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 29
03085016
ACTIVITY DIAGRAM
Overview:
Activity diagram is basically a flow chart to represent the flow form one activity to
another activity. The activity can be described as an operation of the system.
So the control flow is drawn from one operation to another. This flow can be
sequential, branched or concurrent. Activity diagrams deals with all type of flow
control by using different elements like fork, join etc.
Purpose:
The basic purposes of activity diagrams are similar to other four diagrams. It
captures the dynamic behaviour of the system. Other four diagrams are used to show
the message flow from one object to another but activity diagram is used to show
message flow from one activity to another.
Activity is a particular operation of the system. Activity diagrams are not only
used for visualizing dynamic nature of a system but they are also used to construct
the executable system by using forward and reverse engineering techniques. The
only missing thing in activity diagram is the message part.
It does not show any message flow from one activity to another. Activity
diagram is some time considered as the flow chart. Although the diagrams looks like
a flow chart but it is not. It shows different flow like parallel, branched, concurrent
and single.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 30
03085016
How to draw Component Diagram?
Activities
Association
Conditions
Constraints
Once the above mentioned parameters are identified we need to make a mental
layout of the entire flow. This mental layout is then transformed into an activity
diagram.
After receiving the order request condition checks are performed to check if it
is normal or special order. After the type of order is identified dispatch activity is
performed and that is marked as the termination of the process.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 31
03085016
Where to use Interaction Diagrams?
The basic usage of activity diagram is similar to other four UML diagrams.
The specific usage is to model the control flow from one activity to another. This
control flow does not include messages.
The activity diagram is suitable for modeling the activity flow of the system.
An application can have multiple systems. Activity diagram also captures these
systems and describes flow from one system to another. This specific usage is not
available in other diagrams. These systems can be database, external queues or any
other system.
Now we will look into the practical applications of the activity diagram.
From the above discussion it is clear that an activity diagram is drawn from a very
high level. So it gives high level view of a system. This high level view is mainly for
business users or any other person who is not a technical person.
This diagram is used to model the activities which are nothing but business
requirements. So the diagram has more impact on business understanding rather
implementation details.
Now the question is what are these physical aspects? Physical aspects are the
elements like executables, libraries, files, documents etc which resides in a node.
PURPOSE:
So from that point component diagrams are used to visualize the physical
components in a system. These components are libraries, packages, files etc.
A single component diagram cannot represent the entire system but a collection of
diagrams are used to represent the whole.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 33
03085016
Component diagrams are used to describe the physical artifacts of a system.
This artifact includes files, executables, libraries etc.
Initially the system is designed using different UML diagrams and then
when the artifacts are ready component diagrams are used to get an idea of the
implementation.
In the following diagram four files are identified and their relationships are
produced. Component diagram cannot be matched directly with other UML
diagrams discussed so far. Because it is drawn for a completely different purpose.
So the following component diagram has been drawn considering all the points
mentioned above:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 34
03085016
Where to use Component Diagrams?
We have already described that component diagrams are used to visualize the
static implementation view of a system. Component diagrams are special type of
UML diagrams used for different purposes.
These diagrams show the physical components of a system. To clarify it, we can say
that component diagrams describe the organization of the components in a system.
As we have already discussed those components are libraries, files, executables etc.
Now before implementing the application these components are to be organized.
This component organization is also designed separately as a part of project
execution.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 35
03085016
Model executables of an application.
Model system's source code.
DEPLOYMENT DIAGRAM
Overview:
Purpose:
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.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 36
03085016
Performance
Scalability
Maintainability
Portability
Nodes
Monitor
Modem
Caching server
Server
So the following deployment diagram has been drawn considering all the points
mentioned above:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 37
03085016
Where to use Deployment Diagrams?
Now a day's software applications are very complex in nature. Software applications
can be stand alone, web based, distributed, mainframe based and many more. So it is
very important to design the hardware components efficiently.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 38
03085016
UML NOTATIONS
UML notations are the most important elements in modeling. Efficient and
appropriate use of notations is very important for making a complete and meaningful
model. The model is useless unless its purpose is depicted properly.
The chapter describes the UML Basic Notations in more details. This is just an
extension to the UML buildling block section I have discussed in previous chapter.
Structural Things:
Graphical notations used in structural things are the most widely used in UML.
These are considered as the nouns of UML models. Following are the list of
structural things.
CLASSES
Interface
Collaboration
Use case
Active classes
Components
Nodes
Class Notation:
UML class is represented by the diagram shown below. The diagram is divided into
four parts.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 39
03085016
Classes are used to represent objects. Objects can be anything having properties and
responsibility.
OBJECT NOTATION:
The object is represented in the same way as the class. The only difference is
the name which is underlined as shown below..
INTERFACE NOTATION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 40
03085016
Interface is used to describe functionality without implementation. Interface is the
just like a template where you define different functions not the implementation.
When a class implements the interface it also implements the functionality as per the
requirement.
COLLABORATION NOTATION:
Use case is represented as an eclipse with a name inside it. It may contain
additional responsibilities.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 41
03085016
Use case is used to capture high level functionalities of a system.
ACTOR NOTATION:
An actor can be defined as some internal or external entity that interacts with the
system.
Actor is used in a use case diagram to describe the internal or external entities.
Initial state is defined show the start of a process. This notation is used in almost all
diagrams.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 42
03085016
The usage of Initial State Notation is to show the starting point of a process.
Final state is used to show the end of a process. This notation is also used in
almost all diagrams to describe the end.
The usage of Final State Notation is to show the termination point of a process.
Active class looks similar to a class with a solid border. Active class is
generally used to describe concurrent behaviour of a system.
COMPONENT NOTATION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 43
03085016
Component is used to represent any part of a system for which UML diagrams are
made.
NODE NOTATION:
Node is used to represent physical part of a system like server, network etc.
BEHAVIOURAL THINGS:
Dynamic parts are one of the most important elements in UML. UML has a set
of powerful features to represent the dynamic part of software and non software
systems. These features include interactions and state machines.
INTERACTION NOTATION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 44
03085016
Interaction is used to represent communication among the components of a system.
State machine describes the different states of a component in its life cycle.
The notations are described in the following diagram.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 45
03085016
State machine is used to describe different states of a system component. The state
can be active, idle or any other depending upon the situation.
GROUPING THINGS:
Organizing the UML models are one of the most important aspects of the
design. In UML there is only one element available for grouping and that is package.
PACKAGE NOTATION:
Package notation is shown below and this is used to wrap the components of a
system.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 46
03085016
ANNOTATIONAL THINGS:
NOTE NOTATION:
This notation is shown below and they are used to provide necessary
information of a system.
RELATIONSHIPS
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 47
03085016
A model is not complete unless the relationships between elements are described
properly. The Relationship gives a proper meaning to an UML model. Following are
the different types of relationships available in UML.
Dependency
Association
Generalization
Extensibility
DEPENDENCY NOTATION:
ASSOCIATION NOTATION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 48
03085016
Association describes how the elements in an UML diagram are associated. In
simple word it describes how many elements are taking part in an interaction.
GENERALIZATION NOTATION:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 49
03085016
EXTENSIBILITY NOTATION:
Abstraction Relationship
An abstraction relationship is a dependency between model
elements that represents the same concept at different levels of abstraction or from
different viewpoints. You can add abstraction relationships to a model in several
diagrams, including use-case, class, and component diagrams.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 50
03085016
ACTIVITY EDGES
AGGREGATION RELATIONSHIPS
ASSOCIATION RELATIONSHIPS
BINDING RELATIONSHIPS
COMMUNICATION PATHS
COMPOSITION RELATIONSHIPS
DEPLOYMENT RELATIONSHIPS
GENERALIZATION RELATIONSHIPS
IMPLEMENTATION RELATIONSHIPS
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 52
03085016
INCLUDE RELATIONSHIPS
MANIFESTATION RELATIONSHIPS
REALIZATION RELATIONSHIPS
USAGE RELATIONSHIPS
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 53
03085016
COMMON MECHANISMS IN UML
SPECIFICATIONS
ADORNMENTS
COMMON DIVISIONS
Interface - contract
Extensibility Mechanisms
STEREOTYPE
TAGGED VALUE
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 54
03085016
CONSTRAINT
RULES OF UML
names
scope
visibility
integrity
execution
Common properties of models
elided - hide some elements for simplicity
incomplete
inconsistent
rules of UML make it easier to address these problems
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 55
03085016
ARCHITECTURE OF UML
Any real world system is used by different users. The users can be developers,
testers, business people, analysts and many more. So before designing a system the
architecture is made with different perspectives in mind. The most important part is
to visualize the system from different viewer.s perspective. The better we understand
the better we make the system.
Design
Implementation
Process
Deployment
And the centre is the Use Case view which connects all these four. A Use case
represents the functionality of the system. So the other perspectives are connected
with use case.
Process defines the flow of the system. So the same elements as used in Design are
also used to support this perspective.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 56
03085016
Deployment represents the physical nodes of the system that forms the hardware.
UML deployment diagram is used to support this perspective.
UML 2.2 has 14 types of diagrams divided into two categories. [10] Seven
diagram types represent structural information, and the other seven represent general
types of behavior, including four that represent different aspects of interactions.
These diagrams can be categorized hierarchically as shown in the following class
diagram:
UML does not restrict UML element types to a certain diagram type. In general,
every UML element may appear on almost all types of diagrams; this flexibility has
been partially restricted in UML 2.0. UML profiles may define additional diagram
types or extend existing diagrams with additional notations.
In keeping with the tradition of engineering drawings, a comment or note explaining
usage, constraint, or intent is allowed in a UML diagram.
STRUCTURE DIAGRAMS
Structure diagrams emphasize what things must be in the system being modeled:
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 57
03085016
Since structure diagrams represent the structure they are used extensively in
documenting the architecture of software systems.
BEHAVIOR DIAGRAMS
Behavior diagrams emphasize what must happen in the system being modeled:
ACTIVITY DIAGRAM: represents the business and operational step-by-step
workflows of components in a system. An activity diagram shows the overall
flow of control.
STATE MACHINE DIAGRAM: standardized notation to describe many
systems, from computer programs to business processes.
USE CASE DIAGRAM: shows the functionality provided by a system in
terms of actors, their goals represented as use cases, and any dependencies
among those use cases.
Since behavior diagrams illustrate the behavior of a system, they are used
extensively to describe the functionality of software systems.
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 58
03085016
CLASS DIAGRAM
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
modeling of object oriented systems because they are the only UML diagrams which
can be mapped directly with object oriented languages.
CONTENTS:
Classes
Interfaces
Collaborations
CENTER
Center allocated
address
contact number
web site
STUDENT
student name
UNIVERSITY
gender university name
father's name address
address contact number
email id web site
nation
checking the student form()
student's result()
registering name()
fill the application form() advertisements()
submittng the form() provide offers()
writing the exam()
paying fees()
CONSULTANT
consultant name
address
contact
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 60
03085016
USE CASE DIAGRAM
<<include>>
fill application
receive response
consultant
<<extend>>
student
check detail
university
result
get university
offer
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 61
03085016
INTERACTION DIAGRAM
A. SEQUENCE DIAGRAM
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 62
03085016
centre student consul tant universi ty
1: conducti ng classes
2: attendi ng classes
5: conducti ng exams
6: di splaying resul t
B. COLLABORATION DIAGRAM
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 63
03085016
4: preparing for exam
1: conducting cl asses
3: providi ng study material
5: conducting exams
6: displaying result
centre student
2: attending classes
university
ACTIVITY DIAGRAMS
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 64
03085016
ACTIVITY DIAGRAM FOR GRANTING VISA
Displaying visa
notification
visa
processing
granting status
report
issueing visa
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 65
03085016
Student Detail
Check Detail
Check Visa
ino
NO
reject
YES
Accepted
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 66
03085016
ACTIVITY DIAGRAM FOR HIGHER STUDIES
register
fill aplications
submit
certificates
check datails
result
rejected
enrolled
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 67
03085016
ACTIVITY DIAGRAM FOR ADMISSION IN CENTER
Submitting Receiving
form Form
Allotment
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 68
03085016
STATE CHART DIAGRAM
Registering
accepting
Filling
application
forward
Submitting
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 69
03085016
State chart diagram for centre
enrolling
student
accepting
gre
preparation
forward
writing
exams
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 70
03085016
State Chart Diagram for University
Granting
Checking Updating Send Storing
detail
Accepting
Forwarding
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 71
03085016
COMPONENT DIAGRAM
Consulta
nt.exe
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 72
03085016
DEPLOYMENT DIAGRAM
Consult
ant
---------------------------------------------------------------------------------------------------------------
--ZEBA ZAMAN 73
03085016