SlideShare une entreprise Scribd logo
1  sur  34
UML
Sectionsof thispresentation wereadapted from Martin Fowler UML Distilled: A
Brief Guideto theStandard Object Modeling Language, 3rd Edition
History
Design notation of variouskindsused since
programming began:
• Flow charts, Pseudo code, StructureDiagrams…
With advent of OO, many conflicting notations
(1980s, 1990s)
Thesenotationswerecombined and unified (late
1990’s)
UML extensively taught in universities
(2000 - now).
UML: Unified Modeling Language
An industry-standard graphical languagefor specifying,
visualizing, constructing, and documenting theartifactsof
softwaresystems, aswell asfor businessmodeling.
TheUML usesmostly graphical notationsto expressthe
OO analysisand design of softwareprojects. 
Simplifiesthecomplex processof softwaredesign
UML can beused to describe:
 theorganization of aprogram
 how aprogram executes
 how aprogram isused
 how aprogram isdeployed over anetwork
 …and more
What is UML?
Why UMLforModeling?
A diagram/picture= thousandswords
Usesgraphical notation to communicatemoreclearly than
natural language(imprecise) and code(too detailed).
Makesit easier for programmersand softwarearchitectsto
communicate.
Helpsacquirean overall view of asystem.
UML isno t dependent on any onelanguageor technology.
UML movesusfrom fragmentation to standardization.
3 Waysto UseUML
(Both forward & reverseengineering)
1) Sketch e.g. at white board
1) Most common, quick and informal
2) Communication & understanding
2) Blueprint
1) Detailed design, implemented by programmer
2) May havetoolssupporting diagramming
3) Programming Language
1) Toolstranslatediagramsto executablecode
During Software Lifecycle:
UMLCan Be Used at Various Stages
Analysis: OOA
• What issystem to do? What servicesisit to provide? Provide
requirementsfor designer.
Design: OOD
• What will betheparts& structureof thesystem? How will
they interact? Provideblueprint for programmer.
Programming: OOP
Classification of UMLDiagrams
Structure
1) Class diagram
2) Component diagram (cmptscan beindependently
purchased and replaced)
3) Component structurediagram
4) Deployment diagram (what goeson what machine&
place)
5) Object diagram
6) Packagediagram (pkg = group of classes, e.g.
namespace)
There are 13 + Kinds of UMLDiagrams
Classification of UMLDiagrams
(cont.)
Behavior
7) Activity diagram (flow chart)
8) Use Case diagram (scenarios foruse of system)
9) StateMachinediagram
10) Sequence diagram
11) Communication diagram (dataflow diagrams)
12) Interaction diagram (activity + sequencediagrams)
13) Timing diagram
Class Diagrams
Class diagrams
A classdiagram isoften all that isneeded to describea
particular Design Pattern
A classdiagram showsclasses, interfaces, and their
relationships
We’ll cover most of classesand interfaces, and afew of the
most important relationships
Thepurposeof theclassdiagram isto show thetypesbeing
modeled within thesystem.
10
"classifiers."
UML modelstypesmay include:
aclass
an interface
adatatype
acomponent.
Class
Class Name
Attribute : type
Operation (arg list) : return type
Abstract operation
Various parts are optional
Example UMLClass Diagram
13
http://www.ibm.com/ -http://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/bell_fig5.jpg
Instance Specification
(Object)
ObjectName: Class Name
Attribute : type
Operation (arg list) : return
type
Abstract operation
Various parts are optional
An example of Class
Account_Name
- Custom_Name
- Balance
+AddFunds( )
+WithDraw( )
+PayInvoice( )
Name
Attributes
Operations
Class Example
class Checking {
private:
char Customer_name[20];
float Balance;
public:
AddFunds(float);
WithDraw(float);
PayInvoice(float);
set_name(string);
get_name();
set_balance(float);
get_balance();
};
Relationships between Class
Diagrams
Association-- arelationship between instancesof thetwo classes. There
isan association between two classesif an instanceof oneclassmust know
about theother in order to perform itswork. In adiagram, an association is
alink connecting two classes.
Aggregation-- an association in which oneclassbelongsto acollection.
An aggregation hasadiamond end pointing to thepart containing the
whole.
Generalization-- an inheritancelink indicating oneclassisasuperclass
of theother. A generalization hasatrianglepointing to thesuperclass.
17
Notation of Class Diagram: association
Bi-directional association
Associationsareassumed to bebi-directional
e.g. Flight and plane
notation:
Uni-directional association
e.g. Order and item
notation:
Associations represent relationships between instances
of classes .
Association: Multiplicity and Roles
University Person
1
1
*
*
Multiplicity
Symbol Meaning
1 One and only one
0..1 Zero or one
M..N From M to N (natural language)
* From zero to any positive integer
0..* From zero to any positive integer
1..* From one to any positive integer
0…8.. From zero to eight
8..14 From eight to fourteen
teacheremployer
RoleRole
“A given university groups many
people; some act as students, others
as teachers. A given student
belongs to a single university; A
given staff belongs to a single
university; a given teacher may or
may not be working for the university
at a particular time.”
student
staff
*
0..1
Notation of Class Diagram: Aggregation
AGGREGATION
Aggregation: expresses a relationship among
instances
of related classes.
Containee Classes
Flat
Rooms Storage Room
Example 1
Containee Classes
Car
Motor Wheels
Example2
AGGREGATION
41
Generalization
(Inheritance)
Supertype
Subtype 1 Subtype 2
Generalization expresses a relationship among related classes. It is a
class that includes its subclasses.
Generalization Example
http://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/bell_fig10.gif
Elements of Sequence Diagrams
Name: Class
New object
Create
Message
Return
Delete
Self-call
Lifelines
The dotted line that extends down the
vertical axis from the base of each object.
Messages
Labeled as arrows, with the arrowhead
indicating the direction of the call.
Activation bar
The long, thin boxes on the lifelines are
method-invocation boxes indicting that
indicate processing is being performed by
the target object/class to fulfill a message.
Rectangle also denotes when object is
deactivated.
Deletion (X)
Object’s life ends at that point
Activation bar
Sequence Diagrams
Example forSequence Diagram
[Fowler]
Wehavean order and aregoing to invokeacommand on it to
calculateitsprice. To do that, theorder needsto look at all theline
itemson theorder and determinetheir prices, which arebased on
thepricing rulesof theorder line’sproducts. Having donethat for
all thelineitems, theorder then needsto computean overall
discount, which isbased on rulestied to thecustomer.
Example forSequence Diagram
[Fowler]
Wehavean order and aregoing to invokeacommand on it
to calculateitsprice. To do that, theorder needsto look at
all thelineitemson theorder and determinetheir prices,
which arebased on thepricing rulesof theorder line’s
products. Having donethat for all thelineitems, theorder
then needsto computean overall discount, which isbased
on rulestied to thecustomer.
Example Sequence Diagram
anOrder anOrderLine aProduct aCustomer
calculatePrice
getQuantity
getProduct
getPricingDetails
getBasePrice
calculateDiscounts
getDiscountInfo
aProductFound
message
Participant Lifeline
Return
Activation
Self call
Message
Operations
Object: Class
Message
USECASES DIAGRAM
Use cases. A usecasedescribesasequenceof actionsthat provide
something of measurablevalueto an actor and isdrawn asa
horizontal ellipse.
Actors. An actor isaperson, organization, or external system that
playsarolein oneor moreinteractionswith your system. Actorsare
drawn asstick figures
Website Administration
Who managesthewebsite?
What typeof different rolesof admin and help desk have
Website Administration
g
www.uml-diagrams.or
Business Use Case Diagram forAirport Check-
In and Security Screening
Business actors :?
Business use cases ?
PLEASE DISCUSS AND EXPLAIN WHY?
Business Use Case Diagram forAirport Check-
In and Security Screening
Business actors :Passenger,
Tour Guide,
Minor (Child),
Passenger with Special Needs
(all playing external rolesin relation to airport
business.)
Business use cases are
 Individual Check-In,
 Group Check-In (for groupsof
tourists),
 Security Screening
Baggage Check-in and
Baggage Handling extend Check-In usecases, WHY?
Business Use Case Diagram forAirport Check-
In and Security Screening
Activity Diagram
Activity diagram isused to show message
flow from oneactivity to another.
Activity Diagrams:
Draw theactivity flow of asystem.
Describethesequencefrom oneactivity
to another.
Describetheparallel, branched and
concurrent flow of thesystem.
http://www.sparxsystems.com/resources/uml2_tutorial/uml2_activitydiagram.html
An initial or start node Activity final node
Object
Decision Node
Fork/Branch and Join
Nodes
Merger
Node

Contenu connexe

Tendances

Uml unified-modeling-language-presented by dileep
Uml unified-modeling-language-presented by dileepUml unified-modeling-language-presented by dileep
Uml unified-modeling-language-presented by dileepmekhap
 
UML Diagram @ Software engineering discussion
UML Diagram @ Software engineering discussionUML Diagram @ Software engineering discussion
UML Diagram @ Software engineering discussionCherryBerry2
 
The Ultimate Sequence Diagram Tutorial
The Ultimate Sequence Diagram TutorialThe Ultimate Sequence Diagram Tutorial
The Ultimate Sequence Diagram TutorialCreately
 
M02 Uml Overview
M02 Uml OverviewM02 Uml Overview
M02 Uml OverviewDang Tuan
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?Eliza Wright
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagramsbarney92
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsAn Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsMohammed Misbhauddin
 
Software Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagramSoftware Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagramAjit Nayak
 

Tendances (20)

Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
Uml unified-modeling-language-presented by dileep
Uml unified-modeling-language-presented by dileepUml unified-modeling-language-presented by dileep
Uml unified-modeling-language-presented by dileep
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
UML Diagram @ Software engineering discussion
UML Diagram @ Software engineering discussionUML Diagram @ Software engineering discussion
UML Diagram @ Software engineering discussion
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
 
The Ultimate Sequence Diagram Tutorial
The Ultimate Sequence Diagram TutorialThe Ultimate Sequence Diagram Tutorial
The Ultimate Sequence Diagram Tutorial
 
UML
UMLUML
UML
 
M02 Uml Overview
M02 Uml OverviewM02 Uml Overview
M02 Uml Overview
 
Class diagram, use case and sequence diagram
Class diagram, use case and sequence diagramClass diagram, use case and sequence diagram
Class diagram, use case and sequence diagram
 
What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?What is UML (Unified Modeling Language)?
What is UML (Unified Modeling Language)?
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Intro Uml
Intro UmlIntro Uml
Intro Uml
 
An Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence DiagramsAn Automatic Approach to Translate Use Cases to Sequence Diagrams
An Automatic Approach to Translate Use Cases to Sequence Diagrams
 
Uml2
Uml2Uml2
Uml2
 
34. uml
34. uml34. uml
34. uml
 
Uml 9
Uml 9Uml 9
Uml 9
 
Software Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagramSoftware Engineering :Behavioral Modelling - II State diagram
Software Engineering :Behavioral Modelling - II State diagram
 
Behavioural modelling
Behavioural modellingBehavioural modelling
Behavioural modelling
 

En vedette

Stevecook uml mdday2010
Stevecook uml mdday2010Stevecook uml mdday2010
Stevecook uml mdday2010MD DAY
 
Open Data Innovation from GEO DATA Perspective
Open Data Innovation from GEO DATA  PerspectiveOpen Data Innovation from GEO DATA  Perspective
Open Data Innovation from GEO DATA PerspectiveSerdar Temiz
 
Fast Prototyping Customer Development Mock Ups 2014
Fast Prototyping Customer Development Mock Ups 2014Fast Prototyping Customer Development Mock Ups 2014
Fast Prototyping Customer Development Mock Ups 2014Serdar Temiz
 
Data Privacy, Corporates and States
Data Privacy, Corporates and StatesData Privacy, Corporates and States
Data Privacy, Corporates and StatesSerdar Temiz
 
Project Integration Management
Project Integration ManagementProject Integration Management
Project Integration ManagementSerdar Temiz
 
Start up finance & venture capital
Start up finance & venture capitalStart up finance & venture capital
Start up finance & venture capitalSerdar Temiz
 
Project Scope Management
Project Scope ManagementProject Scope Management
Project Scope ManagementSerdar Temiz
 
Introducing Uml And Development Process
Introducing Uml And Development ProcessIntroducing Uml And Development Process
Introducing Uml And Development ProcessTerry Cho
 
Project Cost Management
Project Cost ManagementProject Cost Management
Project Cost ManagementSerdar Temiz
 
Project Quality Management
 Project Quality Management Project Quality Management
Project Quality ManagementSerdar Temiz
 
Busıness Model Innovation Business Model Canvas Toolbox 2016
Busıness Model Innovation Business Model Canvas Toolbox 2016Busıness Model Innovation Business Model Canvas Toolbox 2016
Busıness Model Innovation Business Model Canvas Toolbox 2016Serdar Temiz
 
Introduction to OPEN INNOVATION
Introduction to OPEN INNOVATIONIntroduction to OPEN INNOVATION
Introduction to OPEN INNOVATIONSerdar Temiz
 
Organization Structure - stake holder -human resources management during proj...
Organization Structure - stake holder -human resources management during proj...Organization Structure - stake holder -human resources management during proj...
Organization Structure - stake holder -human resources management during proj...Serdar Temiz
 
Project Time Management
Project Time ManagementProject Time Management
Project Time ManagementSerdar Temiz
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)Nguyen Tuan
 
Introduction to Entrepreneurship , Entrepreneurship in Action, KTH
Introduction to  Entrepreneurship , Entrepreneurship in Action, KTHIntroduction to  Entrepreneurship , Entrepreneurship in Action, KTH
Introduction to Entrepreneurship , Entrepreneurship in Action, KTHSerdar Temiz
 
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Isuru Perera
 
Innovation & Business Model & Business Model Canvas 2014
Innovation & Business Model & Business Model Canvas 2014Innovation & Business Model & Business Model Canvas 2014
Innovation & Business Model & Business Model Canvas 2014Serdar Temiz
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationmewaseem
 

En vedette (20)

OOAD chapter 1
OOAD chapter 1 OOAD chapter 1
OOAD chapter 1
 
Stevecook uml mdday2010
Stevecook uml mdday2010Stevecook uml mdday2010
Stevecook uml mdday2010
 
Open Data Innovation from GEO DATA Perspective
Open Data Innovation from GEO DATA  PerspectiveOpen Data Innovation from GEO DATA  Perspective
Open Data Innovation from GEO DATA Perspective
 
Fast Prototyping Customer Development Mock Ups 2014
Fast Prototyping Customer Development Mock Ups 2014Fast Prototyping Customer Development Mock Ups 2014
Fast Prototyping Customer Development Mock Ups 2014
 
Data Privacy, Corporates and States
Data Privacy, Corporates and StatesData Privacy, Corporates and States
Data Privacy, Corporates and States
 
Project Integration Management
Project Integration ManagementProject Integration Management
Project Integration Management
 
Start up finance & venture capital
Start up finance & venture capitalStart up finance & venture capital
Start up finance & venture capital
 
Project Scope Management
Project Scope ManagementProject Scope Management
Project Scope Management
 
Introducing Uml And Development Process
Introducing Uml And Development ProcessIntroducing Uml And Development Process
Introducing Uml And Development Process
 
Project Cost Management
Project Cost ManagementProject Cost Management
Project Cost Management
 
Project Quality Management
 Project Quality Management Project Quality Management
Project Quality Management
 
Busıness Model Innovation Business Model Canvas Toolbox 2016
Busıness Model Innovation Business Model Canvas Toolbox 2016Busıness Model Innovation Business Model Canvas Toolbox 2016
Busıness Model Innovation Business Model Canvas Toolbox 2016
 
Introduction to OPEN INNOVATION
Introduction to OPEN INNOVATIONIntroduction to OPEN INNOVATION
Introduction to OPEN INNOVATION
 
Organization Structure - stake holder -human resources management during proj...
Organization Structure - stake holder -human resources management during proj...Organization Structure - stake holder -human resources management during proj...
Organization Structure - stake holder -human resources management during proj...
 
Project Time Management
Project Time ManagementProject Time Management
Project Time Management
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)
 
Introduction to Entrepreneurship , Entrepreneurship in Action, KTH
Introduction to  Entrepreneurship , Entrepreneurship in Action, KTHIntroduction to  Entrepreneurship , Entrepreneurship in Action, KTH
Introduction to Entrepreneurship , Entrepreneurship in Action, KTH
 
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
 
Innovation & Business Model & Business Model Canvas 2014
Innovation & Business Model & Business Model Canvas 2014Innovation & Business Model & Business Model Canvas 2014
Innovation & Business Model & Business Model Canvas 2014
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 

Similaire à UML Basics

Similaire à UML Basics (20)

Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
 
uml2-1214558329929112-8.ppt
uml2-1214558329929112-8.pptuml2-1214558329929112-8.ppt
uml2-1214558329929112-8.ppt
 
Uml & rup
Uml & rupUml & rup
Uml & rup
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling Language
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
 
Uml lecture
Uml lectureUml lecture
Uml lecture
 
Object Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UMLObject Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UML
 
FSD MICRO PROJECT UML PPT.pptx
FSD MICRO PROJECT UML PPT.pptxFSD MICRO PROJECT UML PPT.pptx
FSD MICRO PROJECT UML PPT.pptx
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejnejeUML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
UML_Lecture.pptxnd bfdjjrnekdddkeeeenekejneje
 
lecture 3.ppt
lecture  3.pptlecture  3.ppt
lecture 3.ppt
 
UML Design.pptx
UML Design.pptxUML Design.pptx
UML Design.pptx
 
Ooad static diagram
Ooad static diagramOoad static diagram
Ooad static diagram
 
Uml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpUml(unified modeling language) Homework Help
Uml(unified modeling language) Homework Help
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
432
432432
432
 
Architecture and design
Architecture and designArchitecture and design
Architecture and design
 
Uml introduciton
Uml introducitonUml introduciton
Uml introduciton
 

Plus de Serdar Temiz

Business Model Canvas 2015
Business Model Canvas 2015Business Model Canvas 2015
Business Model Canvas 2015Serdar Temiz
 
Customer Development Fast Protyping
Customer Development Fast ProtypingCustomer Development Fast Protyping
Customer Development Fast ProtypingSerdar Temiz
 
Introduction to Entepreneurship ME2603 KTH
Introduction to Entepreneurship ME2603 KTHIntroduction to Entepreneurship ME2603 KTH
Introduction to Entepreneurship ME2603 KTHSerdar Temiz
 
How Open Data Changes Our Life?
How Open Data Changes Our Life?How Open Data Changes Our Life?
How Open Data Changes Our Life?Serdar Temiz
 
Project Risk Management (10)
 Project Risk Management (10) Project Risk Management (10)
Project Risk Management (10)Serdar Temiz
 
Project Procurement Management
 Project Procurement Management  Project Procurement Management
Project Procurement Management Serdar Temiz
 
Project Management Introduction General PM lifecycles
Project Management Introduction General PM lifecyclesProject Management Introduction General PM lifecycles
Project Management Introduction General PM lifecyclesSerdar Temiz
 
Open Data for Digital Activism and Civic Engegament
Open Data for Digital Activism and Civic EngegamentOpen Data for Digital Activism and Civic Engegament
Open Data for Digital Activism and Civic EngegamentSerdar Temiz
 
Introduction to OKFN
Introduction to OKFNIntroduction to OKFN
Introduction to OKFNSerdar Temiz
 
Business model canvas 2013
Business model canvas 2013 Business model canvas 2013
Business model canvas 2013 Serdar Temiz
 
Open Data Open Innovation
Open Data Open InnovationOpen Data Open Innovation
Open Data Open InnovationSerdar Temiz
 
Fast prototypes and customer development for start ups
Fast prototypes and customer development for start upsFast prototypes and customer development for start ups
Fast prototypes and customer development for start upsSerdar Temiz
 
Entepreneurship for engineers
Entepreneurship for engineersEntepreneurship for engineers
Entepreneurship for engineersSerdar Temiz
 

Plus de Serdar Temiz (13)

Business Model Canvas 2015
Business Model Canvas 2015Business Model Canvas 2015
Business Model Canvas 2015
 
Customer Development Fast Protyping
Customer Development Fast ProtypingCustomer Development Fast Protyping
Customer Development Fast Protyping
 
Introduction to Entepreneurship ME2603 KTH
Introduction to Entepreneurship ME2603 KTHIntroduction to Entepreneurship ME2603 KTH
Introduction to Entepreneurship ME2603 KTH
 
How Open Data Changes Our Life?
How Open Data Changes Our Life?How Open Data Changes Our Life?
How Open Data Changes Our Life?
 
Project Risk Management (10)
 Project Risk Management (10) Project Risk Management (10)
Project Risk Management (10)
 
Project Procurement Management
 Project Procurement Management  Project Procurement Management
Project Procurement Management
 
Project Management Introduction General PM lifecycles
Project Management Introduction General PM lifecyclesProject Management Introduction General PM lifecycles
Project Management Introduction General PM lifecycles
 
Open Data for Digital Activism and Civic Engegament
Open Data for Digital Activism and Civic EngegamentOpen Data for Digital Activism and Civic Engegament
Open Data for Digital Activism and Civic Engegament
 
Introduction to OKFN
Introduction to OKFNIntroduction to OKFN
Introduction to OKFN
 
Business model canvas 2013
Business model canvas 2013 Business model canvas 2013
Business model canvas 2013
 
Open Data Open Innovation
Open Data Open InnovationOpen Data Open Innovation
Open Data Open Innovation
 
Fast prototypes and customer development for start ups
Fast prototypes and customer development for start upsFast prototypes and customer development for start ups
Fast prototypes and customer development for start ups
 
Entepreneurship for engineers
Entepreneurship for engineersEntepreneurship for engineers
Entepreneurship for engineers
 

Dernier

The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingrknatarajan
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 

Dernier (20)

The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 

UML Basics

  • 1. UML Sectionsof thispresentation wereadapted from Martin Fowler UML Distilled: A Brief Guideto theStandard Object Modeling Language, 3rd Edition
  • 2. History Design notation of variouskindsused since programming began: • Flow charts, Pseudo code, StructureDiagrams… With advent of OO, many conflicting notations (1980s, 1990s) Thesenotationswerecombined and unified (late 1990’s) UML extensively taught in universities (2000 - now).
  • 3. UML: Unified Modeling Language An industry-standard graphical languagefor specifying, visualizing, constructing, and documenting theartifactsof softwaresystems, aswell asfor businessmodeling. TheUML usesmostly graphical notationsto expressthe OO analysisand design of softwareprojects.  Simplifiesthecomplex processof softwaredesign UML can beused to describe:  theorganization of aprogram  how aprogram executes  how aprogram isused  how aprogram isdeployed over anetwork  …and more What is UML?
  • 4. Why UMLforModeling? A diagram/picture= thousandswords Usesgraphical notation to communicatemoreclearly than natural language(imprecise) and code(too detailed). Makesit easier for programmersand softwarearchitectsto communicate. Helpsacquirean overall view of asystem. UML isno t dependent on any onelanguageor technology. UML movesusfrom fragmentation to standardization.
  • 5. 3 Waysto UseUML (Both forward & reverseengineering) 1) Sketch e.g. at white board 1) Most common, quick and informal 2) Communication & understanding 2) Blueprint 1) Detailed design, implemented by programmer 2) May havetoolssupporting diagramming 3) Programming Language 1) Toolstranslatediagramsto executablecode
  • 6. During Software Lifecycle: UMLCan Be Used at Various Stages Analysis: OOA • What issystem to do? What servicesisit to provide? Provide requirementsfor designer. Design: OOD • What will betheparts& structureof thesystem? How will they interact? Provideblueprint for programmer. Programming: OOP
  • 7. Classification of UMLDiagrams Structure 1) Class diagram 2) Component diagram (cmptscan beindependently purchased and replaced) 3) Component structurediagram 4) Deployment diagram (what goeson what machine& place) 5) Object diagram 6) Packagediagram (pkg = group of classes, e.g. namespace) There are 13 + Kinds of UMLDiagrams
  • 8. Classification of UMLDiagrams (cont.) Behavior 7) Activity diagram (flow chart) 8) Use Case diagram (scenarios foruse of system) 9) StateMachinediagram 10) Sequence diagram 11) Communication diagram (dataflow diagrams) 12) Interaction diagram (activity + sequencediagrams) 13) Timing diagram
  • 10. Class diagrams A classdiagram isoften all that isneeded to describea particular Design Pattern A classdiagram showsclasses, interfaces, and their relationships We’ll cover most of classesand interfaces, and afew of the most important relationships Thepurposeof theclassdiagram isto show thetypesbeing modeled within thesystem. 10
  • 11. "classifiers." UML modelstypesmay include: aclass an interface adatatype acomponent.
  • 12. Class Class Name Attribute : type Operation (arg list) : return type Abstract operation Various parts are optional
  • 13. Example UMLClass Diagram 13 http://www.ibm.com/ -http://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/bell_fig5.jpg
  • 14. Instance Specification (Object) ObjectName: Class Name Attribute : type Operation (arg list) : return type Abstract operation Various parts are optional
  • 15. An example of Class Account_Name - Custom_Name - Balance +AddFunds( ) +WithDraw( ) +PayInvoice( ) Name Attributes Operations
  • 16. Class Example class Checking { private: char Customer_name[20]; float Balance; public: AddFunds(float); WithDraw(float); PayInvoice(float); set_name(string); get_name(); set_balance(float); get_balance(); };
  • 17. Relationships between Class Diagrams Association-- arelationship between instancesof thetwo classes. There isan association between two classesif an instanceof oneclassmust know about theother in order to perform itswork. In adiagram, an association is alink connecting two classes. Aggregation-- an association in which oneclassbelongsto acollection. An aggregation hasadiamond end pointing to thepart containing the whole. Generalization-- an inheritancelink indicating oneclassisasuperclass of theother. A generalization hasatrianglepointing to thesuperclass. 17
  • 18. Notation of Class Diagram: association Bi-directional association Associationsareassumed to bebi-directional e.g. Flight and plane notation: Uni-directional association e.g. Order and item notation: Associations represent relationships between instances of classes .
  • 19. Association: Multiplicity and Roles University Person 1 1 * * Multiplicity Symbol Meaning 1 One and only one 0..1 Zero or one M..N From M to N (natural language) * From zero to any positive integer 0..* From zero to any positive integer 1..* From one to any positive integer 0…8.. From zero to eight 8..14 From eight to fourteen teacheremployer RoleRole “A given university groups many people; some act as students, others as teachers. A given student belongs to a single university; A given staff belongs to a single university; a given teacher may or may not be working for the university at a particular time.” student staff * 0..1
  • 20. Notation of Class Diagram: Aggregation AGGREGATION Aggregation: expresses a relationship among instances of related classes. Containee Classes Flat Rooms Storage Room Example 1 Containee Classes Car Motor Wheels Example2 AGGREGATION 41
  • 21. Generalization (Inheritance) Supertype Subtype 1 Subtype 2 Generalization expresses a relationship among related classes. It is a class that includes its subclasses.
  • 23. Elements of Sequence Diagrams Name: Class New object Create Message Return Delete Self-call Lifelines The dotted line that extends down the vertical axis from the base of each object. Messages Labeled as arrows, with the arrowhead indicating the direction of the call. Activation bar The long, thin boxes on the lifelines are method-invocation boxes indicting that indicate processing is being performed by the target object/class to fulfill a message. Rectangle also denotes when object is deactivated. Deletion (X) Object’s life ends at that point Activation bar Sequence Diagrams
  • 24. Example forSequence Diagram [Fowler] Wehavean order and aregoing to invokeacommand on it to calculateitsprice. To do that, theorder needsto look at all theline itemson theorder and determinetheir prices, which arebased on thepricing rulesof theorder line’sproducts. Having donethat for all thelineitems, theorder then needsto computean overall discount, which isbased on rulestied to thecustomer.
  • 25. Example forSequence Diagram [Fowler] Wehavean order and aregoing to invokeacommand on it to calculateitsprice. To do that, theorder needsto look at all thelineitemson theorder and determinetheir prices, which arebased on thepricing rulesof theorder line’s products. Having donethat for all thelineitems, theorder then needsto computean overall discount, which isbased on rulestied to thecustomer.
  • 26. Example Sequence Diagram anOrder anOrderLine aProduct aCustomer calculatePrice getQuantity getProduct getPricingDetails getBasePrice calculateDiscounts getDiscountInfo aProductFound message Participant Lifeline Return Activation Self call Message Operations Object: Class Message
  • 27. USECASES DIAGRAM Use cases. A usecasedescribesasequenceof actionsthat provide something of measurablevalueto an actor and isdrawn asa horizontal ellipse. Actors. An actor isaperson, organization, or external system that playsarolein oneor moreinteractionswith your system. Actorsare drawn asstick figures
  • 28. Website Administration Who managesthewebsite? What typeof different rolesof admin and help desk have
  • 30. Business Use Case Diagram forAirport Check- In and Security Screening Business actors :? Business use cases ? PLEASE DISCUSS AND EXPLAIN WHY?
  • 31. Business Use Case Diagram forAirport Check- In and Security Screening Business actors :Passenger, Tour Guide, Minor (Child), Passenger with Special Needs (all playing external rolesin relation to airport business.) Business use cases are  Individual Check-In,  Group Check-In (for groupsof tourists),  Security Screening Baggage Check-in and Baggage Handling extend Check-In usecases, WHY?
  • 32. Business Use Case Diagram forAirport Check- In and Security Screening
  • 33. Activity Diagram Activity diagram isused to show message flow from oneactivity to another. Activity Diagrams: Draw theactivity flow of asystem. Describethesequencefrom oneactivity to another. Describetheparallel, branched and concurrent flow of thesystem.
  • 34. http://www.sparxsystems.com/resources/uml2_tutorial/uml2_activitydiagram.html An initial or start node Activity final node Object Decision Node Fork/Branch and Join Nodes Merger Node