SlideShare a Scribd company logo
By:
Altaf Hussain
SS KRL
BS(CS), AU Peshawar, MS(CSE), NUST Islamabad
Modeling and documenting may often seem tedious
and boring but they are essential for helping to
reduce complexity and thus building better
software systems!
The Unified Modeling Language (UML) is a standard  language for
Specifying Visualizing Constructing Documenting
Business Modeling Communications
Users Designers
Analyzers
 Standard Diagrams in UML
• Structural Diagrams
 Class Diagram
 Object Diagram
 Component Diagram
 Deployment Diagram
• Behavioral Diagrams
 Use Case Diagram
 Sequence Diagram
 Collaboration Diagram
 Statechart Diagram
 Activity Diagram
• Class diagrams identify the class structure of a
system, including the properties and methods of
each class. Also depicted are the various
relationships that can exist between classes, such as
an inheritance relationship.
• Class
• Association
• Composition
• Dependency
• Aggregation
• Generalization
 Class
• A Class is depicted using a rectangle divided into three sections. The top
section is the name of the Class. The middle section defines the properties
of the Class. The bottom section lists the methods of the class.
 Association
• An Association is a generic relationship between two classes, and is
modeled by a line connecting the two classes. This line can be qualified
with the type of relationship, and can also feature multiplicity rules (e.g.
one-to-one, one-to-many, many-to-many) for the relationship.
 Composition
• If a class cannot exist by itself, and instead must be a member of another
class, then that class has a Composition relationship with the containing
class.
 Dependency
• When a class uses another class, perhaps as a member variable or a
parameter, and so "depends" on that class, a Dependency relationship is
formed.
 Aggregation
• Aggregations indicate a whole-part relationship, and are known as "has-a"
relationships. An aggregation has a diamond end pointing to the part
containing the whole.
 Generalization
• A Generalization relationship is the equivalent of an inheritance
relationship in object-oriented terms (an "is-a" relationship). A
Generalization relationship is indicated by an arrow with a hollow
arrowhead pointing to the base, or "parent", class.
 Example
• Consider the example of a verterinary system. Animals served, such as
dogs and birds, are tracked along with their owners.
 Example
• Consider the example of a veterinary system. Animals served, such as
dogs and birds, are tracked along with their owners.
Class diagrams show the classes of the
system, their interrelationships
(including inheritance, aggregation, and
association), and the operations and
attributes of the classes.
Name
Attributes
Operations
Relations
• Associations
• Aggregation
• Generalization
 A CRC card is an index card that is use to represent the
responsibilities of classes and the interaction between the
classes.
 The cards are created through scenarios, based on the system
requirements, that model the conceptual view of the system.
 Example
 Object diagrams model instances of classes. This type of
diagram is used to describe the system at a particular point in
time.
 Object
• Objects are identified by placing the instance name followed by a colon
(:) in front of the class name. Property values are written as "name=value"
pairs. The icon for an object is a rectangle divided into sections.
 Association
• Object diagrams can contain associations as well. Often, the constraints,
relationship details, and multiplicity rules found in the Class diagram are
left out to concentrate the diagram on the Objects and their properties.
 Example
• We'll consider the case of John, a pet lover from Boston, MA and
client of the veterinary hospital. He has two pets, Rover, a dog, and
Tweety, a bird.
 Use Case diagrams identify the functionality provided by the
system (use cases), the users who interact with the system
(actors), and the association between the users and the
functionality
 Use Cases are used in the Analysis phase of software development
to articulate the high-level requirements of the system.
 The primary goals of Use Case diagrams include:
Providing a high-level view of what the system does
Identifying the users ("actors") of the system
Determining areas needing human-computer interfaces
 Actor
• An Actor is a user of the system
 Use Case
• A Use Case is functionality provided by the system, typically described as
verb+object (eg. Register Car, Delete User).
 Association
• Associations are used to link Actors with Use Cases, and indicate that an
Actor participates in the Use Case in some form.
 Use Case Diagram: Graphical Notation
• A user placing an order with a sales company might follow these steps. 
 Use Case Diagram: Text Notation
 Create Bug Report (Paragraph Version)
• The Tester initiates a new bug report. The Tester indicates
the source of the bug, a description of the problem, and
the person to whom the bug should be assigned. The
System records the bug as an open issue, and notifies the
Assigned Person that a new bug has been submitted.
 Create Bug Report (Template Version)
• Primary Actor: Tester
• Goal in Context: Tester is testing an application and discovers a new bug.
He/She wants to report it so that it can be addressed.
• Scope: System - the quality assurance system for the XYZ Application
• Level: User
• Stakeholders and Interests:
• Tester: wants to record a new bug
Assignee: wants to be notified of any new bugs
QA Manager: wants all bugs recorded
• Precondition: none
• Trigger: Tester discovers a bug while testing an application
• Main Success Scenario:
• 1. Tester initiates a new bug report.
2. System records bug with date of submission.
3. System notifies assigned user.
• Extensions:1 a. Tester does not know who to assign bug report to: System
assigns bug to QA Manager.
 Sequence diagrams document the interactions between classes to
achieve a result, such as a use case. These communications between
classes are known as messages.
 The Sequence diagram lists objects horizontally, and time vertically,
and models these messages over time.
 Object
• Objects are instances of classes, and are arranged horizontally.
 Actor
• Actors can also communicate with objects, so they too can be listed as a
column.
 Lifeline
• The LifeLine identifies the existence of the object over time.
 Activation
• Activations, modeled as rectangular boxes on the lifeline, indicate when
the object is performing an action.
 Message
• Messages, modeled as horizontal arrows between Activations, indicate the
communications between objects.
 Hotel Reservation Example
 A sequence diagram is
 An interaction diagram that
details how operations are
carried out.
 What messages are sent
and when.
 Sequence diagrams are
organized according to
time
Object: Class
Lifeline
Operations
Message
 Collaboration Diagrams describe interactions among classes and
associations.These interactions are modeled as exchanges of
messages between classes through their associations.
Collaboration diagrams are a type of interaction diagram.
Collaboration diagrams contain the following elements.
• Class roles, which represent roles that objects may play within
the interaction.
• Association roles, which represent roles that links may play
within the interaction.
• Message flows, which represent messages sent between objects
via links. Links transport or implement the delivery of the
message.
 State chart (or state) diagrams describe the states and
responses of a class. Statechart diagrams describe the
behavior of a class in response to external stimuli.
These diagrams contain the following elements:
• States, which represent the situations during the life of
an object in which it satisfies some condition, performs
some activity, or waits for some occurrence.
• Transitions, which represent relationships between
the different states of an object.
A State Machine diagram
shows the possible states of
the object and the transitions
that cause a change in state.
?
What is different
between activities and
Statemachine diagram
 Activity diagrams describe the activities of a class.These
diagrams are similar to statechart diagrams and use similar
conventions, but activity diagrams describe the behavior of a
class in response to internal processing rather than external
events as in statechart diagram.
• Swimlanes, which represent responsibilities of one or more
objects for actions within an overall activity; that is, they divide the
activity states into groups and assign these groups to objects that
must perform the activities.
• Action States, which represent atomic, or noninterruptible,
actions of entities or steps in the execution of an algorithm.
• Action flows, which represent relationships between the different
action states of an entity.
• Object flows, which represent the utilization of objects by action
states and the influence of action states on objects.
Activity diagrams describe the
workflow behaviour of a system
Start
Fork
Branch
Merge
Joint
End
 Component diagrams describe the organization of and
dependencies among software implementation
components.These diagrams contain components,
which represent distributable physical units, including
source code, object code, and executable code.
 Deployment diagrams describe the configuration of
processing resource elements and the mapping of
software implementation components onto them.These
diagrams contain components and nodes, which
represent processing or computational resources,
including computers, printers, etc.
Lecture#03, uml diagrams
Lecture#03, uml diagrams

More Related Content

What's hot

Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)
Manoj Reddy
 
classes & objects introduction
classes & objects introductionclasses & objects introduction
classes & objects introduction
Kumar
 
Modeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and FunctionalModeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and Functional
Rajani Bhandari
 
A&D - Object Oriented Design using UML
A&D - Object Oriented Design using UMLA&D - Object Oriented Design using UML
A&D - Object Oriented Design using UMLvinay arora
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
Amith Tiwari
 
Multivariate analyses
Multivariate analysesMultivariate analyses
Multivariate analysesNaveen Deswal
 
Ooad ppt
Ooad pptOoad ppt
Ooad ppt
Radhika Yadav
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and designAnand Grewal
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering conceptsKomal Singh
 
Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)
Subash Khatiwada
 
Ooad 2marks
Ooad 2marksOoad 2marks
Ooad 2marksAsh Wini
 
Basic behavioral modeling chapter 3 of OMD
Basic behavioral modeling chapter 3 of OMDBasic behavioral modeling chapter 3 of OMD
Basic behavioral modeling chapter 3 of OMD
jayashri kolekar
 
Ooad 3
Ooad 3Ooad 3
Some Basic Concepts of Object Oriented Methodology
Some Basic Concepts of Object Oriented MethodologySome Basic Concepts of Object Oriented Methodology
Some Basic Concepts of Object Oriented Methodology
Manoj Kumar
 
Ooad
OoadOoad
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and DesignHaitham El-Ghareeb
 
Discriminant analysis
Discriminant analysisDiscriminant analysis
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
ATS SBGI MIRAJ
 

What's hot (20)

Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)
 
classes & objects introduction
classes & objects introductionclasses & objects introduction
classes & objects introduction
 
Modeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and FunctionalModeling- Object, Dynamic and Functional
Modeling- Object, Dynamic and Functional
 
A&D - Object Oriented Design using UML
A&D - Object Oriented Design using UMLA&D - Object Oriented Design using UML
A&D - Object Oriented Design using UML
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
 
Multivariate analyses
Multivariate analysesMultivariate analyses
Multivariate analyses
 
Ooad ppt
Ooad pptOoad ppt
Ooad ppt
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering concepts
 
Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)
 
Ooad 2marks
Ooad 2marksOoad 2marks
Ooad 2marks
 
Basic behavioral modeling chapter 3 of OMD
Basic behavioral modeling chapter 3 of OMDBasic behavioral modeling chapter 3 of OMD
Basic behavioral modeling chapter 3 of OMD
 
Ooad 3
Ooad 3Ooad 3
Ooad 3
 
Some Basic Concepts of Object Oriented Methodology
Some Basic Concepts of Object Oriented MethodologySome Basic Concepts of Object Oriented Methodology
Some Basic Concepts of Object Oriented Methodology
 
Pawan111
Pawan111Pawan111
Pawan111
 
Ooad
OoadOoad
Ooad
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Discriminant analysis
Discriminant analysisDiscriminant analysis
Discriminant analysis
 
modeling concepts
modeling conceptsmodeling concepts
modeling concepts
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
 

Similar to Lecture#03, uml diagrams

CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.ppt
RAJESH S
 
Chapter3
Chapter3Chapter3
Chapter3
Fahad Sheref
 
ASP.NET System design 2
ASP.NET System design 2ASP.NET System design 2
ASP.NET System design 2Sisir Ghosh
 
UML Diagram @ Software engineering discussion
UML Diagram @ Software engineering discussionUML Diagram @ Software engineering discussion
UML Diagram @ Software engineering discussion
CherryBerry2
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
suganya2411
 
Types of UML diagrams
Types of UML diagramsTypes of UML diagrams
Types of UML diagrams
Mukesh Tekwani
 
LECTURE 9 (Week 5) - Behavioral Diagrams.pptx
LECTURE 9 (Week 5) - Behavioral Diagrams.pptxLECTURE 9 (Week 5) - Behavioral Diagrams.pptx
LECTURE 9 (Week 5) - Behavioral Diagrams.pptx
MuneerUmar3
 
SMD Unit ii
SMD Unit iiSMD Unit ii
SMD Unit ii
madhavi patil
 
Introduction to Rational Rose
Introduction to Rational RoseIntroduction to Rational Rose
Introduction to Rational Rose
Munaam Munawar
 
Selab1 slides
Selab1 slidesSelab1 slides
Selab1 slidesSumedha
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
Mahesh Bhalerao
 
OOSE UNIT-2.pdf
OOSE UNIT-2.pdfOOSE UNIT-2.pdf
OOSE UNIT-2.pdf
KarumuriJayasri
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptx
viju001
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
Raj Thilak S
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
Nikhil Pandit
 
classdiagram.pptx
classdiagram.pptxclassdiagram.pptx
classdiagram.pptx
RahulGautam663736
 
Umldiagram
UmldiagramUmldiagram
Umldiagram
pavandeep11
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
Kartik Raghuvanshi
 

Similar to Lecture#03, uml diagrams (20)

CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.ppt
 
Chapter3
Chapter3Chapter3
Chapter3
 
ASP.NET System design 2
ASP.NET System design 2ASP.NET System design 2
ASP.NET System design 2
 
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
 
Types of UML diagrams
Types of UML diagramsTypes of UML diagrams
Types of UML diagrams
 
Uml report
Uml reportUml report
Uml report
 
LECTURE 9 (Week 5) - Behavioral Diagrams.pptx
LECTURE 9 (Week 5) - Behavioral Diagrams.pptxLECTURE 9 (Week 5) - Behavioral Diagrams.pptx
LECTURE 9 (Week 5) - Behavioral Diagrams.pptx
 
SMD Unit ii
SMD Unit iiSMD Unit ii
SMD Unit ii
 
Introduction to Rational Rose
Introduction to Rational RoseIntroduction to Rational Rose
Introduction to Rational Rose
 
Selab1 slides
Selab1 slidesSelab1 slides
Selab1 slides
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
 
OOSE UNIT-2.pdf
OOSE UNIT-2.pdfOOSE UNIT-2.pdf
OOSE UNIT-2.pdf
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptx
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
 
classdiagram.pptx
classdiagram.pptxclassdiagram.pptx
classdiagram.pptx
 
Umldiagram
UmldiagramUmldiagram
Umldiagram
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
 
432
432432
432
 

More from babak danyal

Easy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client SocketsEasy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client Sockets
babak danyal
 
Java IO Package and Streams
Java IO Package and StreamsJava IO Package and Streams
Java IO Package and Streams
babak danyal
 
Swing and Graphical User Interface in Java
Swing and Graphical User Interface in JavaSwing and Graphical User Interface in Java
Swing and Graphical User Interface in Java
babak danyal
 
Tcp sockets
Tcp socketsTcp sockets
Tcp sockets
babak danyal
 
block ciphers and the des
block ciphers and the desblock ciphers and the des
block ciphers and the des
babak danyal
 
key distribution in network security
key distribution in network securitykey distribution in network security
key distribution in network security
babak danyal
 
Lecture10 Signal and Systems
Lecture10 Signal and SystemsLecture10 Signal and Systems
Lecture10 Signal and Systems
babak danyal
 
Lecture8 Signal and Systems
Lecture8 Signal and SystemsLecture8 Signal and Systems
Lecture8 Signal and Systems
babak danyal
 
Lecture7 Signal and Systems
Lecture7 Signal and SystemsLecture7 Signal and Systems
Lecture7 Signal and Systems
babak danyal
 
Lecture6 Signal and Systems
Lecture6 Signal and SystemsLecture6 Signal and Systems
Lecture6 Signal and Systems
babak danyal
 
Lecture5 Signal and Systems
Lecture5 Signal and SystemsLecture5 Signal and Systems
Lecture5 Signal and Systems
babak danyal
 
Lecture4 Signal and Systems
Lecture4  Signal and SystemsLecture4  Signal and Systems
Lecture4 Signal and Systems
babak danyal
 
Lecture3 Signal and Systems
Lecture3 Signal and SystemsLecture3 Signal and Systems
Lecture3 Signal and Systems
babak danyal
 
Lecture2 Signal and Systems
Lecture2 Signal and SystemsLecture2 Signal and Systems
Lecture2 Signal and Systems
babak danyal
 
Lecture1 Intro To Signa
Lecture1 Intro To SignaLecture1 Intro To Signa
Lecture1 Intro To Signababak danyal
 
Lecture9 Signal and Systems
Lecture9 Signal and SystemsLecture9 Signal and Systems
Lecture9 Signal and Systems
babak danyal
 
Cns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption TechniquesCns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption Techniques
babak danyal
 
Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Security
babak danyal
 

More from babak danyal (20)

applist
applistapplist
applist
 
Easy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client SocketsEasy Steps to implement UDP Server and Client Sockets
Easy Steps to implement UDP Server and Client Sockets
 
Java IO Package and Streams
Java IO Package and StreamsJava IO Package and Streams
Java IO Package and Streams
 
Swing and Graphical User Interface in Java
Swing and Graphical User Interface in JavaSwing and Graphical User Interface in Java
Swing and Graphical User Interface in Java
 
Tcp sockets
Tcp socketsTcp sockets
Tcp sockets
 
block ciphers and the des
block ciphers and the desblock ciphers and the des
block ciphers and the des
 
key distribution in network security
key distribution in network securitykey distribution in network security
key distribution in network security
 
Lecture10 Signal and Systems
Lecture10 Signal and SystemsLecture10 Signal and Systems
Lecture10 Signal and Systems
 
Lecture8 Signal and Systems
Lecture8 Signal and SystemsLecture8 Signal and Systems
Lecture8 Signal and Systems
 
Lecture7 Signal and Systems
Lecture7 Signal and SystemsLecture7 Signal and Systems
Lecture7 Signal and Systems
 
Lecture6 Signal and Systems
Lecture6 Signal and SystemsLecture6 Signal and Systems
Lecture6 Signal and Systems
 
Lecture5 Signal and Systems
Lecture5 Signal and SystemsLecture5 Signal and Systems
Lecture5 Signal and Systems
 
Lecture4 Signal and Systems
Lecture4  Signal and SystemsLecture4  Signal and Systems
Lecture4 Signal and Systems
 
Lecture3 Signal and Systems
Lecture3 Signal and SystemsLecture3 Signal and Systems
Lecture3 Signal and Systems
 
Lecture2 Signal and Systems
Lecture2 Signal and SystemsLecture2 Signal and Systems
Lecture2 Signal and Systems
 
Lecture1 Intro To Signa
Lecture1 Intro To SignaLecture1 Intro To Signa
Lecture1 Intro To Signa
 
Lecture9 Signal and Systems
Lecture9 Signal and SystemsLecture9 Signal and Systems
Lecture9 Signal and Systems
 
Lecture9
Lecture9Lecture9
Lecture9
 
Cns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption TechniquesCns 13f-lec03- Classical Encryption Techniques
Cns 13f-lec03- Classical Encryption Techniques
 
Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Security
 

Recently uploaded

"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
Chapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdfChapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdf
Kartik Tiwari
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
Pavel ( NSTU)
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
EduSkills OECD
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
DhatriParmar
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
Peter Windle
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
Mohammed Sikander
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
Celine George
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
Vikramjit Singh
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
DhatriParmar
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
vaibhavrinwa19
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 

Recently uploaded (20)

"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
Chapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdfChapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdf
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
Francesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptxFrancesca Gottschalk - How can education support child empowerment.pptx
Francesca Gottschalk - How can education support child empowerment.pptx
 
The Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptxThe Accursed House by Émile Gaboriau.pptx
The Accursed House by Émile Gaboriau.pptx
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 

Lecture#03, uml diagrams

  • 1. By: Altaf Hussain SS KRL BS(CS), AU Peshawar, MS(CSE), NUST Islamabad
  • 2. Modeling and documenting may often seem tedious and boring but they are essential for helping to reduce complexity and thus building better software systems!
  • 3. The Unified Modeling Language (UML) is a standard  language for Specifying Visualizing Constructing Documenting Business Modeling Communications
  • 5.  Standard Diagrams in UML • Structural Diagrams  Class Diagram  Object Diagram  Component Diagram  Deployment Diagram • Behavioral Diagrams  Use Case Diagram  Sequence Diagram  Collaboration Diagram  Statechart Diagram  Activity Diagram
  • 6.
  • 7. • Class diagrams identify the class structure of a system, including the properties and methods of each class. Also depicted are the various relationships that can exist between classes, such as an inheritance relationship. • Class • Association • Composition • Dependency • Aggregation • Generalization
  • 8.  Class • A Class is depicted using a rectangle divided into three sections. The top section is the name of the Class. The middle section defines the properties of the Class. The bottom section lists the methods of the class.  Association • An Association is a generic relationship between two classes, and is modeled by a line connecting the two classes. This line can be qualified with the type of relationship, and can also feature multiplicity rules (e.g. one-to-one, one-to-many, many-to-many) for the relationship.  Composition • If a class cannot exist by itself, and instead must be a member of another class, then that class has a Composition relationship with the containing class.  Dependency • When a class uses another class, perhaps as a member variable or a parameter, and so "depends" on that class, a Dependency relationship is formed.
  • 9.  Aggregation • Aggregations indicate a whole-part relationship, and are known as "has-a" relationships. An aggregation has a diamond end pointing to the part containing the whole.  Generalization • A Generalization relationship is the equivalent of an inheritance relationship in object-oriented terms (an "is-a" relationship). A Generalization relationship is indicated by an arrow with a hollow arrowhead pointing to the base, or "parent", class.  Example • Consider the example of a verterinary system. Animals served, such as dogs and birds, are tracked along with their owners.
  • 10.
  • 11.  Example • Consider the example of a veterinary system. Animals served, such as dogs and birds, are tracked along with their owners.
  • 12. Class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association), and the operations and attributes of the classes. Name Attributes Operations Relations • Associations • Aggregation • Generalization
  • 13.  A CRC card is an index card that is use to represent the responsibilities of classes and the interaction between the classes.  The cards are created through scenarios, based on the system requirements, that model the conceptual view of the system.
  • 15.  Object diagrams model instances of classes. This type of diagram is used to describe the system at a particular point in time.  Object • Objects are identified by placing the instance name followed by a colon (:) in front of the class name. Property values are written as "name=value" pairs. The icon for an object is a rectangle divided into sections.  Association • Object diagrams can contain associations as well. Often, the constraints, relationship details, and multiplicity rules found in the Class diagram are left out to concentrate the diagram on the Objects and their properties.
  • 16.  Example • We'll consider the case of John, a pet lover from Boston, MA and client of the veterinary hospital. He has two pets, Rover, a dog, and Tweety, a bird.
  • 17.  Use Case diagrams identify the functionality provided by the system (use cases), the users who interact with the system (actors), and the association between the users and the functionality  Use Cases are used in the Analysis phase of software development to articulate the high-level requirements of the system.  The primary goals of Use Case diagrams include: Providing a high-level view of what the system does Identifying the users ("actors") of the system Determining areas needing human-computer interfaces
  • 18.  Actor • An Actor is a user of the system  Use Case • A Use Case is functionality provided by the system, typically described as verb+object (eg. Register Car, Delete User).  Association • Associations are used to link Actors with Use Cases, and indicate that an Actor participates in the Use Case in some form.
  • 19.  Use Case Diagram: Graphical Notation • A user placing an order with a sales company might follow these steps. 
  • 20.  Use Case Diagram: Text Notation  Create Bug Report (Paragraph Version) • The Tester initiates a new bug report. The Tester indicates the source of the bug, a description of the problem, and the person to whom the bug should be assigned. The System records the bug as an open issue, and notifies the Assigned Person that a new bug has been submitted.
  • 21.  Create Bug Report (Template Version) • Primary Actor: Tester • Goal in Context: Tester is testing an application and discovers a new bug. He/She wants to report it so that it can be addressed. • Scope: System - the quality assurance system for the XYZ Application • Level: User • Stakeholders and Interests: • Tester: wants to record a new bug Assignee: wants to be notified of any new bugs QA Manager: wants all bugs recorded • Precondition: none • Trigger: Tester discovers a bug while testing an application • Main Success Scenario: • 1. Tester initiates a new bug report. 2. System records bug with date of submission. 3. System notifies assigned user. • Extensions:1 a. Tester does not know who to assign bug report to: System assigns bug to QA Manager.
  • 22.  Sequence diagrams document the interactions between classes to achieve a result, such as a use case. These communications between classes are known as messages.  The Sequence diagram lists objects horizontally, and time vertically, and models these messages over time.  Object • Objects are instances of classes, and are arranged horizontally.  Actor • Actors can also communicate with objects, so they too can be listed as a column.  Lifeline • The LifeLine identifies the existence of the object over time.  Activation • Activations, modeled as rectangular boxes on the lifeline, indicate when the object is performing an action.  Message • Messages, modeled as horizontal arrows between Activations, indicate the communications between objects.
  • 24.  A sequence diagram is  An interaction diagram that details how operations are carried out.  What messages are sent and when.  Sequence diagrams are organized according to time Object: Class Lifeline Operations Message
  • 25.
  • 26.  Collaboration Diagrams describe interactions among classes and associations.These interactions are modeled as exchanges of messages between classes through their associations. Collaboration diagrams are a type of interaction diagram. Collaboration diagrams contain the following elements. • Class roles, which represent roles that objects may play within the interaction. • Association roles, which represent roles that links may play within the interaction. • Message flows, which represent messages sent between objects via links. Links transport or implement the delivery of the message.
  • 27.
  • 28.  State chart (or state) diagrams describe the states and responses of a class. Statechart diagrams describe the behavior of a class in response to external stimuli. These diagrams contain the following elements: • States, which represent the situations during the life of an object in which it satisfies some condition, performs some activity, or waits for some occurrence. • Transitions, which represent relationships between the different states of an object.
  • 29.
  • 30. A State Machine diagram shows the possible states of the object and the transitions that cause a change in state. ? What is different between activities and Statemachine diagram
  • 31.  Activity diagrams describe the activities of a class.These diagrams are similar to statechart diagrams and use similar conventions, but activity diagrams describe the behavior of a class in response to internal processing rather than external events as in statechart diagram. • Swimlanes, which represent responsibilities of one or more objects for actions within an overall activity; that is, they divide the activity states into groups and assign these groups to objects that must perform the activities. • Action States, which represent atomic, or noninterruptible, actions of entities or steps in the execution of an algorithm. • Action flows, which represent relationships between the different action states of an entity. • Object flows, which represent the utilization of objects by action states and the influence of action states on objects.
  • 32.
  • 33. Activity diagrams describe the workflow behaviour of a system Start Fork Branch Merge Joint End
  • 34.  Component diagrams describe the organization of and dependencies among software implementation components.These diagrams contain components, which represent distributable physical units, including source code, object code, and executable code.
  • 35.
  • 36.  Deployment diagrams describe the configuration of processing resource elements and the mapping of software implementation components onto them.These diagrams contain components and nodes, which represent processing or computational resources, including computers, printers, etc.