SlideShare a Scribd company logo
1 of 35
UML
UNIFIED MODELING LANGUAGE
OVERVIEW OF UNIFIED MODELING (UML) LANGUAGE FOR
MODELING BUSINESS AND SYSTEM REQUIREMENTS
IEEE 42010-2011 - ISO/IEC/IEEE SYSTEMS
AND SOFTWARE ENGINEERING
ARCHITECTURE DESCRIPTION
• https://www.sis.se/api/document/preview/914062/
Stakeholder onion diagram
IEEE 42010-2011 - ISO/IEC/IEEE SYSTEMS
AND SOFTWARE ENGINEERING
ARCHITECTURE DESCRIPTION
Our interest
UML – UNIFIED MODELING
LANGUAGE
1. What is UML?
The Unified Modeling Language (UML) is a general-purpose, modeling language in the field of software
engineering that is intended to provide a standard way to visualize the design of a system.
The creation of UML was originally motivated by the desire to standardize the disparate notational systems and
approaches to software design. It was developed at Rational Software in 1994–1995.
In 1997, UML was adopted as a standard by the Object Management Group (OMG), and has been managed by this
organization ever since. In 2005, UML was also published by the International Organization for Standardization (ISO)
as an approved ISO standard.
UML – UNIFIED MODELING
LANGUAGE
Structure diagrams show the static structure of the
system and its parts on different abstraction and
implementation levels and how they are related to each
other. The elements in a structure diagram represent the
meaningful concepts of a system, and may include
abstract, real world and implementation concepts.
Behavior diagrams show the dynamic behavior of the
objects in a system, which can be described as a series of
changes to the system over time.
UML – UNIFIED MODELING
LANGUAGE
 Behavioral diagrams
 Use Case
 Interaction diagrams
 Sequence diagram
 Communication diagram
 Structure diagrams
 Class diagram
 Package diagram
 System context (diagram is not part of UML)
 Entity relationship diagram (diagram is not part of
UML)
 Dinamic modeling diagrams
 State machine diagram
 Activity diagram
 Realization diagrams
 Component diagram
 Deployment diagram
SYSTEM CONTEXT DIAGRAM
System context diagram (SCD) in engineering is a diagram that defines the
boundary between the system, or part of a system, and its environment, showing
the entities that interact with it. This diagram is a high level view of a system.
https://www.youtube.com/watch/fWNrc6GNK14
UML – UNIFIED MODELING
LANGUAGE
Use case diagrams are usually referred to as behavior diagrams used to
describe a set of actions (use cases) that some system or systems
(subject) should or can perform in collaboration with one or more
external users of the system (actors). Each use case should provide some
observable and valuable result to the actors or other stakeholders of the
system.
Use case diagrams are in fact twofold - they are both behavior diagrams,
because they describe behavior of the system, and they are also
structure diagrams - as a special case of class diagrams where classifiers
are restricted to be either actors or use cases related to each other with
associations.
(System) Use case diagrams are used to specify:
• (external) requirements, required usages of a system under design or
analysis (subject) - to capture what the system is supposed to do;
• the functionality offered by a subject – what the system can do;
• requirements the specified subject poses on its environment - by
defining how environment should interact with the subject so that it
will be able to perform its services.
https://www.youtube.com/watch?v=Bjj5CPL6OdI
https://www.uml-diagrams.org/use-case-diagrams.html
UML – UNIFIED MODELING
LANGUAGE
UML Use Case <<include>> relationship
• Use case include is a directed relationship between two use cases which is used to show that behavior of the included use case
(the addition) is inserted into the behavior of the including (the base) use case.
• The include relationship could be used:
• to simplify large use case by splitting it into several use cases,
• to extract common parts of the behaviors of two or more use cases.
• A large use case could have some behaviors which might be detached into distinct smaller use cases to be included back into the
base use case using the UML include relationship. The purpose of this action is modularization of behaviors, making them more
manageable.
UML – UNIFIED MODELING
LANGUAGE
UML Use Case <<include>> relationship
• When two or more use cases have some common behavior, this common part
could be extracted into a separate use case to be included back by the use cases
with the UML include relationship.
UML – UNIFIED MODELING
LANGUAGE
UML Use Case <<include>> relationship
• Include relationship between use cases is shown by a dashed arrow with an open
arrowhead from the including (base) use case to the included (common part) use
case. The arrow is labeled with the keyword «include».
UML – UNIFIED MODELING
LANGUAGE
• UML Use Case <<extend>> relationship
• Extend is a directed relationship that specifies how and when the behavior defined in usually supplementary (optional) extending use case can be inserted into
the behavior defined in the extended use case.
• Extended use case is meaningful on its own, it is independent of the extending use case. Extending use case typically defines optional behavior that is not
necessarily meaningful by itself. The extend relationship is owned by the extending use case. The same extending use case can extend more than one use case,
and extending use case may itself be extended.
• The extension takes place at one or more extension points defined in the extended use case.
• Extend relationship is shown as a dashed line with an open arrowhead directed from the extending use case to the extended (base) use case. The arrow is labeled
with the keyword «extend».
The condition of the extend relationship as well as the
references to the extension points are optionally shown in a
comment note attached to the corresponding extend
relationship.
UML – UNIFIED MODELING
LANGUAGE
• Use Case Relationships Compared
UML – UNIFIED MODELING
LANGUAGE
• Package diagram is UML structure diagram
which shows structure of the designed
system at the level of packages.
• Package is a conceptual level structure used
in design phase
Packages can be used in all
types of UML diagrams:
E.g. we can group all use
case diagrams in one
package
https://www.uml-
diagrams.org/package-diagrams-
overview.html
UML – UNIFIED MODELING
LANGUAGE
• Sequence diagram is the most
common kind of interaction
diagram, which focuses on the
message interchange between a
number of lifelines.
• Sequence diagram describes an
interaction by focusing on the
sequence of messages that are
exchanged, along with their
corresponding occurrence
specifications on the lifelines.
https://www.youtube.com/watch?v
=XIQKt5Bs7II
https://www.youtube.com/watch?v
=pCK6prSq8aw
https://www.uml-
diagrams.org/sequence-
diagrams.html
UML – UNIFIED MODELING
LANGUAGE
Communication diagram is a kind of UML interaction
diagram which shows interactions between objects
and/or parts (represented as lifelines) using sequenced
messages in a free-form arrangement.
Communication diagram corresponds (i.e. could be
converted to/from or replaced by) to a simple sequence
diagram without structuring mechanisms such as
interaction uses and combined fragments. It is also
assumed that message overtaking (i.e., the order of the
receptions are different from the order of sending of a
given set of messages) will not take place or is irrelevant.
The following nodes and edges are drawn in a UML
communication diagrams: frame, lifeline, message. These
major elements of the communication diagram are
shown on the picture below.
https://www.uml-diagrams.org/communication-
diagrams.html
UML – UNIFIED MODELING
LANGUAGE
UML Class diagram is structure
diagram which shows structure of the
designed system at the level of
classes and interfaces, shows their
features, constraints and relationships
- associations, generalizations,
dependencies, etc.
https://www.uml-diagrams.org/class-
diagrams-overview.html
https://www.youtube.com/watch?v=
UI6lqHOVHic
UML – UNIFIED MODELING
LANGUAGE
UML Class diagram
UML – UNIFIED MODELING
LANGUAGE
• UML Class diagram attributes and parameters visibility and annotation
Operation annotation
[Visibility] operation name (parameter 1: type, parameter 2: type) : operation result type
+ assignAgent (a : Agent) : Boolean
UML – UNIFIED MODELING
LANGUAGE
UML abstract class
• An abstract class is a class that has no direct instances
but whose descendant classes have direct instances
UML – UNIFIED MODELING
LANGUAGE
• UML class diagram - generalization
• A generalization is a directed relationship between a
more general classifier (superclass) and a more specific
classifier (subclass).
• Each instance of the specific classifier is also an indirect
instance of the general classifier, so that we can say
"Patient is a Person", "Savings account is an Account", etc.
Because of this, generalization relationship is also
informally called "Is A" relationship.
• In OOAD inheritance is usually defined as a mechanism
by which more specific classes (called subclasses or
derived classes) incorporate structure and behavior of
more general classes (called superclasses or base
classes).
UML – UNIFIED MODELING
LANGUAGE
• UML class diagram - association and
multiplicity
• An association is usually drawn as a
solid line connecting two classes.
Name of the association can be
shown somewhere near the middle
of the association line but not too
close to any of the ends of the line.
• Multiplicity in UML allows to specify
cardinality - i.e. number of elements -
of some collection of elements.
UML – UNIFIED MODELING
LANGUAGE
• UML class diagram – aggregation
• It is a "weak" form of aggregation
when part instance is independent of
the composite. Because of this,
aggregation relationship is also
informally called “part of/has a"
relationship.
• Part can belong to a number of
composites.
• When a composite is demolished, a
part can still exist.
UML – UNIFIED MODELING
LANGUAGE
• UML class diagram – composition
• It is a “strong" form of aggregation
when part instance is independent of
the composite. Because of this,
aggregation relationship is also
informally called “part of/has a"
relationship.
• Part can not belong to a number of
composites.
• When a composite is demolished, a
part is also demolished (can no longer
exist).
UML – UNIFIED MODELING
LANGUAGE
• An interface is a class that does not have
realization.
• Interface does not have attributes, only public
operations that are realized by classes.
• Since interfaces are declarations, they are not
instantiable. Instead, an interface specification is
implemented by an instance of an instantiable class,
which means that the instantiable class presents a
public facade that conforms to the interface
specification.
• Any given class may implement more than one
interface. Interface may be implemented by a
number of different class.
An interface may be shown using a rectangle
symbol with the keyword «interface» preceding the
name.
Interface participating in the interface realization
dependency is shown as a circle or ball, labeled with
the name of the interface and attached by a solid
line to the classifier that realizes this interface.
ENTITY-RELATIONSHIP DIAGRAM I
The primary key consists of one or more columns whose
data contained within are used to uniquely identify each
row in the table. You can think of them as an address. If
the rows in a table were mailboxes, then the primary key
would be the listing of street addresses.
A foreign key is a set of one or more columns in a table
that refers to the primary key in another table. There
aren’t any special code, configurations, or table
definitions you need to place to officially “designate” a
foreign key.
ENTITY-RELATIONSHIP DIAGRAM II
UML – UNIFIED MODELING
LANGUAGE
UML State machine – protocol state machine diagram
UML protocol state machine diagrams are used to express
a usage protocol or a lifecycle of a class. It shows which
operations of the classifier may be called in each state of
the classifier, under which specific conditions, and
satisfying some optional postconditions after the classifier
transitions to a target state.
• Diagram shows available states and transition states
from one state to the other.
• Class state diagram can have only one initial state.
• Class state diagram can have multiple final states.
https://www.youtube.com/watch?v=OsmWASXE2IM
UML – UNIFIED MODELING
LANGUAGE
UML State machine – behavioral state
machine diagram
State machine diagram is a behavior diagram
which shows discrete behavior of a part of
designed system (or a class) through finite
state transitions.
• Diagram shows available states and
transition states from one state to the other.
• Class state diagram can have only one initial
state.
• Class state diagram can have multiple final
states.
UML – UNIFIED MODELING
LANGUAGE
• UML Activity diagram
• Activity diagram is UML behavior diagram
which shows flow of control or object flow
with emphasis on the sequence and
conditions of the flow. The actions
coordinated by activity models can be
initiated because other actions finish
executing, because objects and data become
available, or because some events external to
the flow occur.
• Can be changed by BPMN diagram.
UML – UNIFIED MODELING
LANGUAGE
• Component diagram shows components, provided and
required interfaces, ports, and relationships between
them. This type of diagrams is used in Component-
Based Development (CBD) to describe systems with
Service-Oriented Architecture (SOA).
• Component-based development is based on
assumptions that previously constructed components
could be reused and that components could be
replaced by some other "equivalent" or "conformant"
components, if needed. The artifacts that implement
component are intended to be capable of being
deployed and re-deployed independently, for instance
to update an existing system.
• Components in UML could represent
• logical components (e.g., business components,
process components), and
• physical components (e.g., CORBA components, EJB
components, COM+ and .NET components, WSDL
components, etc.),
• along with the artifacts that implement them and the
nodes on which they are deployed and executed. It is
anticipated that profiles based around components will
be developed for specific component technologies and
associated hardware and software environments.
https://www.uml-diagrams.org/component-diagrams.html
https://www.youtube.com/watch?v=ipKJwnPsst8
UML – UNIFIED MODELING
LANGUAGE
• Deployment diagram is a structure diagram which
shows architecture of the system as deployment
(distribution) of software artifacts to deployment
targets.
• Artifacts represent concrete elements in the physical
world that are the result of a development process.
Examples of artifacts are executable files, libraries,
archives, database schemas, configuration files, etc.
• Deployment target is usually represented by a node
which is either hardware device or some software
execution environment. Nodes could be connected
through communication paths to create networked
systems of arbitrary complexity.
ttps://www.uml-diagrams.org/deployment-
diagrams-overview.html
https://www.youtube.com/watch?v=IzEzX5HW_CU
BPMN – BUSINESS PROCESS
MODEL AND NOTATION
BPMN tools
https://app.diagrams.net/
BPMN – BUSINESS PROCESS
MODEL AND NOTATION
BPMN tools
Confluence Gliffy plugin

More Related Content

What's hot

UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxNwabueze Obioma
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGERaval Chirag
 
Object Oriented Analysis &amp; Design
Object Oriented Analysis &amp; DesignObject Oriented Analysis &amp; Design
Object Oriented Analysis &amp; Designkpthakershy
 
Uml with detail
Uml with detailUml with detail
Uml with detailHamza Khan
 
Uml package diagram
Uml package  diagramUml package  diagram
Uml package diagramVedaraj M
 
Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)Marwa Ali Eissa
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationmewaseem
 
08 class and sequence diagrams
08   class and sequence diagrams08   class and sequence diagrams
08 class and sequence diagramskebsterz
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)Nguyen Tuan
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationanasz3z3
 

What's hot (20)

UML
UMLUML
UML
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
UML
UMLUML
UML
 
Object Oriented Analysis &amp; Design
Object Oriented Analysis &amp; DesignObject Oriented Analysis &amp; Design
Object Oriented Analysis &amp; Design
 
Uml with detail
Uml with detailUml with detail
Uml with detail
 
Uml package diagram
Uml package  diagramUml package  diagram
Uml package diagram
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
08 class and sequence diagrams
08   class and sequence diagrams08   class and sequence diagrams
08 class and sequence diagrams
 
UML
UMLUML
UML
 
Uml
UmlUml
Uml
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Uml2
Uml2Uml2
Uml2
 

Similar to UML Trainings

Similar to UML Trainings (20)

Uml.pptx
Uml.pptxUml.pptx
Uml.pptx
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
Uml(unified modeling language) Homework Help
Uml(unified modeling language) Homework HelpUml(unified modeling language) Homework Help
Uml(unified modeling language) Homework Help
 
uml2-1214558329929112-8.ppt
uml2-1214558329929112-8.pptuml2-1214558329929112-8.ppt
uml2-1214558329929112-8.ppt
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Uml
UmlUml
Uml
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
 
Uml overview modified
Uml overview modifiedUml overview modified
Uml overview modified
 
Ooad static diagram
Ooad static diagramOoad static diagram
Ooad static diagram
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manual
 
Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Interaction overview and Profile UML Diagrams
Interaction overview and Profile UML DiagramsInteraction overview and Profile UML Diagrams
Interaction overview and Profile UML Diagrams
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 
Uml introduciton
Uml introducitonUml introduciton
Uml introduciton
 
ooAD
ooADooAD
ooAD
 
Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Uml
 

Recently uploaded

software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 

Recently uploaded (20)

software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 

UML Trainings

  • 1. UML UNIFIED MODELING LANGUAGE OVERVIEW OF UNIFIED MODELING (UML) LANGUAGE FOR MODELING BUSINESS AND SYSTEM REQUIREMENTS
  • 2. IEEE 42010-2011 - ISO/IEC/IEEE SYSTEMS AND SOFTWARE ENGINEERING ARCHITECTURE DESCRIPTION • https://www.sis.se/api/document/preview/914062/ Stakeholder onion diagram
  • 3. IEEE 42010-2011 - ISO/IEC/IEEE SYSTEMS AND SOFTWARE ENGINEERING ARCHITECTURE DESCRIPTION Our interest
  • 4. UML – UNIFIED MODELING LANGUAGE 1. What is UML? The Unified Modeling Language (UML) is a general-purpose, modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally motivated by the desire to standardize the disparate notational systems and approaches to software design. It was developed at Rational Software in 1994–1995. In 1997, UML was adopted as a standard by the Object Management Group (OMG), and has been managed by this organization ever since. In 2005, UML was also published by the International Organization for Standardization (ISO) as an approved ISO standard.
  • 5. UML – UNIFIED MODELING LANGUAGE Structure diagrams show the static structure of the system and its parts on different abstraction and implementation levels and how they are related to each other. The elements in a structure diagram represent the meaningful concepts of a system, and may include abstract, real world and implementation concepts. Behavior diagrams show the dynamic behavior of the objects in a system, which can be described as a series of changes to the system over time.
  • 6. UML – UNIFIED MODELING LANGUAGE  Behavioral diagrams  Use Case  Interaction diagrams  Sequence diagram  Communication diagram  Structure diagrams  Class diagram  Package diagram  System context (diagram is not part of UML)  Entity relationship diagram (diagram is not part of UML)  Dinamic modeling diagrams  State machine diagram  Activity diagram  Realization diagrams  Component diagram  Deployment diagram
  • 7. SYSTEM CONTEXT DIAGRAM System context diagram (SCD) in engineering is a diagram that defines the boundary between the system, or part of a system, and its environment, showing the entities that interact with it. This diagram is a high level view of a system. https://www.youtube.com/watch/fWNrc6GNK14
  • 8. UML – UNIFIED MODELING LANGUAGE Use case diagrams are usually referred to as behavior diagrams used to describe a set of actions (use cases) that some system or systems (subject) should or can perform in collaboration with one or more external users of the system (actors). Each use case should provide some observable and valuable result to the actors or other stakeholders of the system. Use case diagrams are in fact twofold - they are both behavior diagrams, because they describe behavior of the system, and they are also structure diagrams - as a special case of class diagrams where classifiers are restricted to be either actors or use cases related to each other with associations. (System) Use case diagrams are used to specify: • (external) requirements, required usages of a system under design or analysis (subject) - to capture what the system is supposed to do; • the functionality offered by a subject – what the system can do; • requirements the specified subject poses on its environment - by defining how environment should interact with the subject so that it will be able to perform its services. https://www.youtube.com/watch?v=Bjj5CPL6OdI https://www.uml-diagrams.org/use-case-diagrams.html
  • 9. UML – UNIFIED MODELING LANGUAGE UML Use Case <<include>> relationship • Use case include is a directed relationship between two use cases which is used to show that behavior of the included use case (the addition) is inserted into the behavior of the including (the base) use case. • The include relationship could be used: • to simplify large use case by splitting it into several use cases, • to extract common parts of the behaviors of two or more use cases. • A large use case could have some behaviors which might be detached into distinct smaller use cases to be included back into the base use case using the UML include relationship. The purpose of this action is modularization of behaviors, making them more manageable.
  • 10. UML – UNIFIED MODELING LANGUAGE UML Use Case <<include>> relationship • When two or more use cases have some common behavior, this common part could be extracted into a separate use case to be included back by the use cases with the UML include relationship.
  • 11. UML – UNIFIED MODELING LANGUAGE UML Use Case <<include>> relationship • Include relationship between use cases is shown by a dashed arrow with an open arrowhead from the including (base) use case to the included (common part) use case. The arrow is labeled with the keyword «include».
  • 12. UML – UNIFIED MODELING LANGUAGE • UML Use Case <<extend>> relationship • Extend is a directed relationship that specifies how and when the behavior defined in usually supplementary (optional) extending use case can be inserted into the behavior defined in the extended use case. • Extended use case is meaningful on its own, it is independent of the extending use case. Extending use case typically defines optional behavior that is not necessarily meaningful by itself. The extend relationship is owned by the extending use case. The same extending use case can extend more than one use case, and extending use case may itself be extended. • The extension takes place at one or more extension points defined in the extended use case. • Extend relationship is shown as a dashed line with an open arrowhead directed from the extending use case to the extended (base) use case. The arrow is labeled with the keyword «extend». The condition of the extend relationship as well as the references to the extension points are optionally shown in a comment note attached to the corresponding extend relationship.
  • 13. UML – UNIFIED MODELING LANGUAGE • Use Case Relationships Compared
  • 14. UML – UNIFIED MODELING LANGUAGE • Package diagram is UML structure diagram which shows structure of the designed system at the level of packages. • Package is a conceptual level structure used in design phase Packages can be used in all types of UML diagrams: E.g. we can group all use case diagrams in one package https://www.uml- diagrams.org/package-diagrams- overview.html
  • 15. UML – UNIFIED MODELING LANGUAGE • Sequence diagram is the most common kind of interaction diagram, which focuses on the message interchange between a number of lifelines. • Sequence diagram describes an interaction by focusing on the sequence of messages that are exchanged, along with their corresponding occurrence specifications on the lifelines. https://www.youtube.com/watch?v =XIQKt5Bs7II https://www.youtube.com/watch?v =pCK6prSq8aw https://www.uml- diagrams.org/sequence- diagrams.html
  • 16.
  • 17. UML – UNIFIED MODELING LANGUAGE Communication diagram is a kind of UML interaction diagram which shows interactions between objects and/or parts (represented as lifelines) using sequenced messages in a free-form arrangement. Communication diagram corresponds (i.e. could be converted to/from or replaced by) to a simple sequence diagram without structuring mechanisms such as interaction uses and combined fragments. It is also assumed that message overtaking (i.e., the order of the receptions are different from the order of sending of a given set of messages) will not take place or is irrelevant. The following nodes and edges are drawn in a UML communication diagrams: frame, lifeline, message. These major elements of the communication diagram are shown on the picture below. https://www.uml-diagrams.org/communication- diagrams.html
  • 18. UML – UNIFIED MODELING LANGUAGE UML Class diagram is structure diagram which shows structure of the designed system at the level of classes and interfaces, shows their features, constraints and relationships - associations, generalizations, dependencies, etc. https://www.uml-diagrams.org/class- diagrams-overview.html https://www.youtube.com/watch?v= UI6lqHOVHic
  • 19. UML – UNIFIED MODELING LANGUAGE UML Class diagram
  • 20. UML – UNIFIED MODELING LANGUAGE • UML Class diagram attributes and parameters visibility and annotation Operation annotation [Visibility] operation name (parameter 1: type, parameter 2: type) : operation result type + assignAgent (a : Agent) : Boolean
  • 21. UML – UNIFIED MODELING LANGUAGE UML abstract class • An abstract class is a class that has no direct instances but whose descendant classes have direct instances
  • 22. UML – UNIFIED MODELING LANGUAGE • UML class diagram - generalization • A generalization is a directed relationship between a more general classifier (superclass) and a more specific classifier (subclass). • Each instance of the specific classifier is also an indirect instance of the general classifier, so that we can say "Patient is a Person", "Savings account is an Account", etc. Because of this, generalization relationship is also informally called "Is A" relationship. • In OOAD inheritance is usually defined as a mechanism by which more specific classes (called subclasses or derived classes) incorporate structure and behavior of more general classes (called superclasses or base classes).
  • 23. UML – UNIFIED MODELING LANGUAGE • UML class diagram - association and multiplicity • An association is usually drawn as a solid line connecting two classes. Name of the association can be shown somewhere near the middle of the association line but not too close to any of the ends of the line. • Multiplicity in UML allows to specify cardinality - i.e. number of elements - of some collection of elements.
  • 24. UML – UNIFIED MODELING LANGUAGE • UML class diagram – aggregation • It is a "weak" form of aggregation when part instance is independent of the composite. Because of this, aggregation relationship is also informally called “part of/has a" relationship. • Part can belong to a number of composites. • When a composite is demolished, a part can still exist.
  • 25. UML – UNIFIED MODELING LANGUAGE • UML class diagram – composition • It is a “strong" form of aggregation when part instance is independent of the composite. Because of this, aggregation relationship is also informally called “part of/has a" relationship. • Part can not belong to a number of composites. • When a composite is demolished, a part is also demolished (can no longer exist).
  • 26. UML – UNIFIED MODELING LANGUAGE • An interface is a class that does not have realization. • Interface does not have attributes, only public operations that are realized by classes. • Since interfaces are declarations, they are not instantiable. Instead, an interface specification is implemented by an instance of an instantiable class, which means that the instantiable class presents a public facade that conforms to the interface specification. • Any given class may implement more than one interface. Interface may be implemented by a number of different class. An interface may be shown using a rectangle symbol with the keyword «interface» preceding the name. Interface participating in the interface realization dependency is shown as a circle or ball, labeled with the name of the interface and attached by a solid line to the classifier that realizes this interface.
  • 27. ENTITY-RELATIONSHIP DIAGRAM I The primary key consists of one or more columns whose data contained within are used to uniquely identify each row in the table. You can think of them as an address. If the rows in a table were mailboxes, then the primary key would be the listing of street addresses. A foreign key is a set of one or more columns in a table that refers to the primary key in another table. There aren’t any special code, configurations, or table definitions you need to place to officially “designate” a foreign key.
  • 29. UML – UNIFIED MODELING LANGUAGE UML State machine – protocol state machine diagram UML protocol state machine diagrams are used to express a usage protocol or a lifecycle of a class. It shows which operations of the classifier may be called in each state of the classifier, under which specific conditions, and satisfying some optional postconditions after the classifier transitions to a target state. • Diagram shows available states and transition states from one state to the other. • Class state diagram can have only one initial state. • Class state diagram can have multiple final states. https://www.youtube.com/watch?v=OsmWASXE2IM
  • 30. UML – UNIFIED MODELING LANGUAGE UML State machine – behavioral state machine diagram State machine diagram is a behavior diagram which shows discrete behavior of a part of designed system (or a class) through finite state transitions. • Diagram shows available states and transition states from one state to the other. • Class state diagram can have only one initial state. • Class state diagram can have multiple final states.
  • 31. UML – UNIFIED MODELING LANGUAGE • UML Activity diagram • Activity diagram is UML behavior diagram which shows flow of control or object flow with emphasis on the sequence and conditions of the flow. The actions coordinated by activity models can be initiated because other actions finish executing, because objects and data become available, or because some events external to the flow occur. • Can be changed by BPMN diagram.
  • 32. UML – UNIFIED MODELING LANGUAGE • Component diagram shows components, provided and required interfaces, ports, and relationships between them. This type of diagrams is used in Component- Based Development (CBD) to describe systems with Service-Oriented Architecture (SOA). • Component-based development is based on assumptions that previously constructed components could be reused and that components could be replaced by some other "equivalent" or "conformant" components, if needed. The artifacts that implement component are intended to be capable of being deployed and re-deployed independently, for instance to update an existing system. • Components in UML could represent • logical components (e.g., business components, process components), and • physical components (e.g., CORBA components, EJB components, COM+ and .NET components, WSDL components, etc.), • along with the artifacts that implement them and the nodes on which they are deployed and executed. It is anticipated that profiles based around components will be developed for specific component technologies and associated hardware and software environments. https://www.uml-diagrams.org/component-diagrams.html https://www.youtube.com/watch?v=ipKJwnPsst8
  • 33. UML – UNIFIED MODELING LANGUAGE • Deployment diagram is a structure diagram which shows architecture of the system as deployment (distribution) of software artifacts to deployment targets. • Artifacts represent concrete elements in the physical world that are the result of a development process. Examples of artifacts are executable files, libraries, archives, database schemas, configuration files, etc. • Deployment target is usually represented by a node which is either hardware device or some software execution environment. Nodes could be connected through communication paths to create networked systems of arbitrary complexity. ttps://www.uml-diagrams.org/deployment- diagrams-overview.html https://www.youtube.com/watch?v=IzEzX5HW_CU
  • 34. BPMN – BUSINESS PROCESS MODEL AND NOTATION BPMN tools https://app.diagrams.net/
  • 35. BPMN – BUSINESS PROCESS MODEL AND NOTATION BPMN tools Confluence Gliffy plugin