Professional Documents
Culture Documents
MLUML
(Unified Modeling Language)
Concepts in UML
1. Introduction to UML
2. Basic Structural Modeling
3. Advanced Structural Modeling
4. Class & Object
Diagrams
5. Basic Behavioral Modeling - I
6. Basic Behavioral Modeling - II
7. Advanced Behavioral Modeling
8. Architectural Modeling
Introduction to UML:
ØHistory of UML
ØImportance of Modeling
ØPrinciples of Modeling
ØObject Oriented Modeling
ØConceptual Model of UML
ØArchitecture
ØSoftware Development Life Cycle
Basic Structural Modeling:
ØClasses
ØRelationships
ØCommon Mechanisms
ØDiagrams
Advanced Structural Modeling:
ØAdvanced Classes
ØAdvanced Relationships
ØInterfaces
ØTypes and Roles
ØPackages
Class & Object Diagrams:
ØTerms
ØConcepts
ØModeling Techniques for
Class & Object Diagrams
Basic Behavioral Modeling – I:
ØInteractions
ØInteraction Diagrams
Behavioral Modeling – II:
ØUse Cases
ØUse Case Diagrams
ØActivity Diagrams
Advanced Behavioral Modeling:
ØEvents and Signals
ØState Machines
ØProcess and Threads
ØTime and Space
ØState Chart Diagrams
Architectural Modeling:
ØComponent
ØDeployment
ØComponent Diagrams and
Deployment Diagrams
Introduction to
UML:-
Why only UML?
The UML enables system builders to create “blueprints” that
capture their visions in a standard , easy-to-understand way and
communicate them to others.
What is UML:-
UML stands for Unified Modeling Language is a standard language
for writing software blueprints used to specify, visualize, construct &
document the artifacts of an object-oriented s/w intensive system under
development.
History of
developedUML
vGrady Booch, James Rumbaugh and Ivar Jacobson are the “Three Amigos” who
this UML in :-
the ending of 1996.
vThese gentlemen worked in separate organizations through the ‘80s and early ‘90s
each devising his own methodology for Object-Oriented analysis and design.
vIn 1994, Rumbaugh joined Rational Software Corporation, where Booch was
already working. Jacobson enlisted at Rational a year later.
vUML is a merged technique which is merged from the concepts of Booch Methods,
Object Modeling Techniques & Object-Oriented Software Engineering(OOSE).
vUML combines the best practices from Data Modeling concepts such as Entity
Relationship diagrams, Data Flow, Work Flow diagrams, Object Modeling &
Component Modeling.
vThe UML consists a number of graphical elements that combine to form diagrams.
The purpose of the diagrams is to present multiple views of a system, and this set of
multiple views is called a “Model”.
vIn 1997, the UML consortium produced version 1.0 of the UML and submitted it to
the Object Management Group(OMG) for a standard modeling language.
Versions of
UML:-
üUML 1.0 in 1996
üUML 1.1 in 1997
üUML 1.2 in 1999
üUML 1.3 in 2000
üUML 1.4 in 2001
üUML 1.5 in 2003
üUML 2.0 in 2005
üUML 2.1.1 in 2007
üUML 2.1.2 in 2007
Importance of Modeling:-
•Modeling is a proven and well-accepted engineering technique.
•A Model is a simplification of reality.
•A Model provides the blue prints of a system.
•We build Models so that we can better understand the system we
are developing.
•Models helps us to visualize a system as it is or as we want it to be.
•Models permits us to specify the structure or behavior of a system.
•Models document the decisions we have made.
•Models gives us a template that guides us in constructing a system.
•We build Models of complex systems because we cannot
comprehend such a system in its entirety.
•Finally, we build Model to control the system.
Principles Of Modeling:-
I. The choice of what models to create has a profound influence on how a
problem is and how a solution is shaped.
II. Every model may be expressed at different levels of
precision.
III. The best models are connected to reality.
IV. No Single model is sufficient, Every nontrivial system is best approached
through a small set of nearly independent models.
Object-Oriented Modeling:-
üIn Object-Oriented Modeling approach, the main building block of all
software system is the “ Object “ or “ Class “.
üSimply put, an Object is a “ Thing “.
üA Class is description of a set of common objects.
üEvery object has identity, state, and behavior.
üVisualizing, specifying, constructing, and documenting object-oriented systems
is exactly the purpose of the Unified Modeling Language.
Overview of UML:-
ØUML as a Language:
A Language provides a vocabulary & the rules for
communication that focus on physical & conceptual representation of a system, UML tells
you how to create & read well-formed models, but they don’t tell you what models you
should create and when to create.
Attributes
Operations
Interface name
3. Collaboration:- A Collaboration defines an interaction & it is a set of roles
and responsibilities. Generally, a collaboration is realized by a “ Use Case ”.
Graphically, a collaboration is rendered as an “ Ellipse with Dashed Lines “ as
shown below.
Roles
Action Name
5. Active Class:- An Active Class is a class where objects own one or more
processes or threads to initiate a control activity. Graphically, an active class is
rendered like a “ Class but with Thick Lines “ as shown below.
6. Component:- A Component is a physical and replaceable part of a system
which provides the realization of Interfaces. Graphically, a component is
rendered as a “ Rectangle with Tabs “ as shown below.
Name.java
Server
State Name
Package Name
Comments
Relationships in UML:-
There are four types of “ Relationships “ in UML. They are,
i. Dependency:- A Dependency is a Semantic relationship between two things
in which a change to one thing may affect the semantics of the other thing.
Graphically, a dependency is rendered as a “ Dashed Arrow “ as shown below.
§Rules:
The UML has various semantic rules for,
i. Names
ii. Scope
iii. Visibility
iv. Integrity
v. Execution
§Common Mechanisms in UML:
There are four types of mechanisms available in UML. They are,
1. Specifications Mechanism:- UML is a language which is not
only meant for visualizing the system but also used for specifying
the various artifacts of an intensive system.
2. Adornments Mechanism:- In UML , some of the vocabulary
of the system are elided(hided) because of the rules . In order to
expose some of the facts, UML has a mechanism often known as
“ Adornments ” which may be in the form of graphical or textual.
3. Common Divisions Mechanism:-The Common divisions are,
Class & Object
Interface & Implementation
4. Extensibility Mechanism:- UML provides a mechanism to
extend the various naunces(issues) such as vocabulary, properties,
& semantics using three extensibility mechanisms known as
Stereotypes, Tagged values & Constraints.
Architecture of UML:- In UML, the architecture of a s/w intensive
system can be best described by the following 4+1 architecture view.
Design Implementation
View View
Use Case
View
Process Deployment
View View
I. Use Case View:- A Use Case View of a system encompasses the use cases
that describe the behavior of the system. In UML, “ Static “ aspects of this view
are captured in Use Case diagrams, the “ Dynamic “ aspects of this view are
captured in Interaction, State Chart and Activity diagrams.
II. Design View:- The Design View of a system encompasses the classes,
interfaces and collaboration that form the vocabulary of the system. In UML,
the “ Static ” aspects are captured using Class diagrams and Object diagrams,
the “ Dynamic “ aspects are captured using Interaction, State Chart & Activity
diagrams.
III. Process View:- The Process View of a system encompasses threads and
processes that form the system. The same type of diagrams used for Design
View are used for this view but Classes are replaced with Active Class .
Class
Interface
Interaction
Collaboration
Package Note
Use Case
Active Class
State
Component Machine
Node
Dependency
Association/Aggregation
Relationships
Generalization/Specialization
Realization
Class Diagram
Object Diagram
Use Case Diagram
Sequence Diagram
Diagrams Collaboration Diagram
State Chart Diagram
Activity Diagram
Component Diagram
Deployment Diagram
Rules
Specifications
Adornments
Common Mechanisms
Common Divisions
Extensibility