尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
1
Session
Unified Modeling Language
Checklist
 Introduction to UML
 Case Study: Order Processing System
2
Introduction
UML is a modeling tool with graphical notations. It is mainly used by Business Analysts and
Software Engineers. Business Analysts use them for modeling a business flow or to define a
process. Software Engineers use UML for Object Oriented Analysis Design. UML helps software
engineers to communicate their design over the team
UML is maintained by Object Mentor Groups (OMG) a non-profit organization which is
responsible for designing the specification for UML.
How I am going to approach UML?
There are presently 13 official diagram types described by UML 2.0. These official diagrams are
classified as Structural Diagram and Behavioral Diagram. Figure 1 shows UML classification
1. Structural Diagram – These diagrams deal with technical aspects of the system. How the
functional blocks are modeled in a system.
2. Behavioral Diagram – These diagrams deal with the functional flow or process of a
system.
What to do with all these diagrams?
 When the project complexity increases we need some of these diagrams as a
communication medium across all the stake holders in the project. Stakeholders with
different backgrounds will be part of the project. UML diagrams help each stakeholder
to understand the system.
 With different diagrams it is easy to pinpoint the logical mistakes. It will help us to invest
our efforts where it is required.
3
Figure 1: UML Classification Diagram
4
Case Study
I am firm believer in “Learning by doing”. I am going to use this case study in further articles to
learn “How to construct” UML diagrams. The case study presented here is a scaled down
version of Order processing system. As every project starts with gathering requirements, let us
go through the requirements and understand the problem before us.
The Problem Statement
A computer store wants to acquire an automated tool for placing orders. An order may be
placed by a single registered customer. Customers can edit or remove the order before they
pay. An order is considered valid if there is at least one item and ordered items are in stock. The
system should keep track of the inventory. Customers can make their order confirmation by
paying the net amount. They can pay by cash or by using credit card. An invoice is given after
servicing the order.
Some additional requirements when customer uses credit card.
1. The credit card must be under the name of the customer
2. The validity of the credit card must exceed at least two weeks the current date of the
order servicing
3. The credit level must exceed the amount due of the order
Note:
You will see the problem statement changing from session to session. I have to do this because
you will have an opportunity to use as much concepts available in each session.
FAQ’s ?...
Let’s get an overall picture of How’s? & Why’s? before proceeding to the details of modeling. I
have listed some questions that I had in mind before starting to learn UML. Feel free to skip
them if you are familiar with the background of UML.
5
1. Who uses UML?
UML is used by Business Analyst, Programmers and Project Managers. It is not confined
to Software Industry alone, although software industry is the key player in using UML.
Business Analyst use UML to gather requirements from their clients and understand the
business process. They use UML as a communicating medium to help programmers
understand what is required out of the system.
Programmers use UML to design the system. They use UML to assign responsibilities to
engineers. Engineers use these modular level diagrams to construct the system.
Project Management use UML to improve the performances of a business process,
monitor the development life cycle.
2. Will I be using all the diagrams?
No, it depends on what role you play in your project. For instance, if you are a developer
you will use Class diagram, Object diagram and sequence diagram to construct a
particular module of a system.
3. I have seen projects which don’t give much concern about UML? Is it so? Why?
Yes, that is true. It depends upon the project methodology you are using.
One such example is Extreme programming model where the model is mainly focused
on coding. It strips out unimportant aspects like documentation/modeling. Clients
communicate and work with programmers to deliver the product.
But in case of other models like Waterfall, Agile and Iterative process UML is an integral
part of the process. Some business processes even have a separate team for modeling
diagrams.
4. Will this set of articles deal with Model Driven Architecture?
No, Model Driven Architecture is still in its development stage and is not widely used. In
addition to it, MDA is a whole topic which I could not address them in these set of
articles.
6
5. Where does UML fit in a project life cycle?
UML is de-facto in forward engineering; people use to design before they begin to code.
In reverse engineering it is used for understanding the code. Some Integrated
Development Environments (IDE’s) have the capability to generate source code from
UML diagrams.
6. Where are the references for these articles?
There is no specific book or online course as reference for my articles. Web is my
resource; it has wealth of information for you to refer.
7. How can I draw these UML diagrams? What is the development environment required
for using UML?
Just like other programming languages, UML too has its share of modeling tools in the
market. Wikipedia list all the modeling tools here.
8. How to choose my modeling tools?
It is a trick question to answer but I will try to be honest. Choosing a modeling tool
depends upon your requirement and why you need it.
If you are a student who needs to learn using UML then my best bet is to try open
source projects.
If you are a team leader who is a position to select the tool which is required for your
team then I would suggest looking through the usability, whether team collaboration
feature is supported and technical support from the vendor is good before choosing
one.
There is a stack overflow discussion going on here which will help to keep your first foot.
7
Review
 UML is a modeling language maintained by Object Mentor Group
 UML diagrams are used by various stake holders in a project
 There are 13 official diagrams supported by UML 2.0
 The case study to be used in these article is Order processing system

More Related Content

What's hot

Interaction overview and Profile UML Diagrams
Interaction overview and Profile UML DiagramsInteraction overview and Profile UML Diagrams
Interaction overview and Profile UML Diagrams
Husnain Safdar
 
Component Diagram Example Templates
Component Diagram Example TemplatesComponent Diagram Example Templates
Component Diagram Example Templates
Creately
 
Sequence diagram- UML diagram
Sequence diagram- UML diagramSequence diagram- UML diagram
Sequence diagram- UML diagram
Ramakant Soni
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)
Gajeshwar Bahekar
 
Uml
UmlUml
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsSE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour Diagrams
Amr E. Mohamed
 
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
 
Use case model
Use case modelUse case model
Use case model
Ashwani Kumar
 
SE_Lec 08_UML Use Cases
SE_Lec 08_UML Use CasesSE_Lec 08_UML Use Cases
SE_Lec 08_UML Use Cases
Amr E. Mohamed
 
Collaboration Diagram
Collaboration DiagramCollaboration Diagram
Collaboration Diagram
fahad_uaar
 
SE_Lec 06_Object Oriented Analysis and Design
SE_Lec 06_Object Oriented Analysis and DesignSE_Lec 06_Object Oriented Analysis and Design
SE_Lec 06_Object Oriented Analysis and Design
Amr E. Mohamed
 
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction DiagramsSE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
Amr E. Mohamed
 
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
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
Mir Majid
 
UML Diagrams For Online Course Portal
UML Diagrams For Online Course PortalUML Diagrams For Online Course Portal
UML Diagrams For Online Course Portal
HarieHaren GV
 
SE18_Lec 08_UML Class Diagram
SE18_Lec 08_UML Class DiagramSE18_Lec 08_UML Class Diagram
SE18_Lec 08_UML Class Diagram
Amr E. Mohamed
 
Communication diagram Introduction
Communication diagram IntroductionCommunication diagram Introduction
Communication diagram Introduction
Dineesha Suraweera
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
Nirmal Sharma
 
SE18_Lec 06_Object Oriented Analysis and Design
SE18_Lec 06_Object Oriented Analysis and DesignSE18_Lec 06_Object Oriented Analysis and Design
SE18_Lec 06_Object Oriented Analysis and Design
Amr E. Mohamed
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Dr Sukhpal Singh Gill
 

What's hot (20)

Interaction overview and Profile UML Diagrams
Interaction overview and Profile UML DiagramsInteraction overview and Profile UML Diagrams
Interaction overview and Profile UML Diagrams
 
Component Diagram Example Templates
Component Diagram Example TemplatesComponent Diagram Example Templates
Component Diagram Example Templates
 
Sequence diagram- UML diagram
Sequence diagram- UML diagramSequence diagram- UML diagram
Sequence diagram- UML diagram
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)
 
Uml
UmlUml
Uml
 
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsSE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour Diagrams
 
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
 
Use case model
Use case modelUse case model
Use case model
 
SE_Lec 08_UML Use Cases
SE_Lec 08_UML Use CasesSE_Lec 08_UML Use Cases
SE_Lec 08_UML Use Cases
 
Collaboration Diagram
Collaboration DiagramCollaboration Diagram
Collaboration Diagram
 
SE_Lec 06_Object Oriented Analysis and Design
SE_Lec 06_Object Oriented Analysis and DesignSE_Lec 06_Object Oriented Analysis and Design
SE_Lec 06_Object Oriented Analysis and Design
 
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction DiagramsSE18_Lec 10_ UML Behaviour and Interaction Diagrams
SE18_Lec 10_ UML Behaviour and Interaction Diagrams
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
UML Diagrams For Online Course Portal
UML Diagrams For Online Course PortalUML Diagrams For Online Course Portal
UML Diagrams For Online Course Portal
 
SE18_Lec 08_UML Class Diagram
SE18_Lec 08_UML Class DiagramSE18_Lec 08_UML Class Diagram
SE18_Lec 08_UML Class Diagram
 
Communication diagram Introduction
Communication diagram IntroductionCommunication diagram Introduction
Communication diagram Introduction
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
 
SE18_Lec 06_Object Oriented Analysis and Design
SE18_Lec 06_Object Oriented Analysis and DesignSE18_Lec 06_Object Oriented Analysis and Design
SE18_Lec 06_Object Oriented Analysis and Design
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 

Viewers also liked

Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
AmineMouhout1
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
Amir Souissi
 
Cours uml
Cours umlCours uml
Cours uml
zimamouche1
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
barney92
 
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
Malek Sumaiya
 
Uml & cas d'utilisation
Uml & cas d'utilisationUml & cas d'utilisation
Uml & cas d'utilisation
Mireille Blay-Fornarino
 

Viewers also liked (6)

Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Cours uml
Cours umlCours uml
Cours uml
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
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
 
Uml & cas d'utilisation
Uml & cas d'utilisationUml & cas d'utilisation
Uml & cas d'utilisation
 

Similar to Introduction to UML

Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
Neeraj Kaushik
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
Neeraj Kaushik
 
Uml doc
Uml docUml doc
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
rizki adam kurniawan
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
Kimberly Jones
 
OOAD U1.pptx
OOAD U1.pptxOOAD U1.pptx
OOAD U1.pptx
anguraju1
 
Chapter1
Chapter1Chapter1
Chapter1
Dang Tuan
 
UML Design
UML DesignUML Design
UML Design
Debashis Biswas
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptx
devnasra1
 
Object oriented analysis and design unit- ii
Object oriented analysis and design unit- iiObject oriented analysis and design unit- ii
Object oriented analysis and design unit- ii
Shri Shankaracharya College, Bhilai,Junwani
 
502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf
PradeepPandey506579
 
Uml intro
Uml introUml intro
Uml intro
Preeti Mishra
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
Susan Cox
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
6020 peaks
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
Megan Espinoza
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
ganeshkarthy
 
Sdlc
SdlcSdlc
Sdlc
SdlcSdlc
07. MTE - Studi Kasus Pemodelan Sistem.pptx
07. MTE - Studi Kasus Pemodelan Sistem.pptx07. MTE - Studi Kasus Pemodelan Sistem.pptx
07. MTE - Studi Kasus Pemodelan Sistem.pptx
AsalReview
 

Similar to Introduction to UML (20)

Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Uml doc
Uml docUml doc
Uml doc
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
 
Quality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White BoxQuality Assurance. Quality Assurance Approach. White Box
Quality Assurance. Quality Assurance Approach. White Box
 
OOAD U1.pptx
OOAD U1.pptxOOAD U1.pptx
OOAD U1.pptx
 
Chapter1
Chapter1Chapter1
Chapter1
 
UML Design
UML DesignUML Design
UML Design
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptx
 
Object oriented analysis and design unit- ii
Object oriented analysis and design unit- iiObject oriented analysis and design unit- ii
Object oriented analysis and design unit- ii
 
502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf502 Object Oriented Analysis and Design.pdf
502 Object Oriented Analysis and Design.pdf
 
Uml intro
Uml introUml intro
Uml intro
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
 
Sdlc
SdlcSdlc
Sdlc
 
Sdlc
SdlcSdlc
Sdlc
 
07. MTE - Studi Kasus Pemodelan Sistem.pptx
07. MTE - Studi Kasus Pemodelan Sistem.pptx07. MTE - Studi Kasus Pemodelan Sistem.pptx
07. MTE - Studi Kasus Pemodelan Sistem.pptx
 

More from University of Texas at Dallas

State Diagram
State DiagramState Diagram
Deployment Diagram
Deployment DiagramDeployment Diagram
Deployment Diagram
University of Texas at Dallas
 
Class diagram
Class diagramClass diagram
Libraries
LibrariesLibraries
Yocto project
Yocto projectYocto project
Subversion Reference
Subversion ReferenceSubversion Reference
Subversion Reference
University of Texas at Dallas
 
Subversion
SubversionSubversion

More from University of Texas at Dallas (7)

State Diagram
State DiagramState Diagram
State Diagram
 
Deployment Diagram
Deployment DiagramDeployment Diagram
Deployment Diagram
 
Class diagram
Class diagramClass diagram
Class diagram
 
Libraries
LibrariesLibraries
Libraries
 
Yocto project
Yocto projectYocto project
Yocto project
 
Subversion Reference
Subversion ReferenceSubversion Reference
Subversion Reference
 
Subversion
SubversionSubversion
Subversion
 

Recently uploaded

MongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to SuccessMongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to Success
ScyllaDB
 
From NCSA to the National Research Platform
From NCSA to the National Research PlatformFrom NCSA to the National Research Platform
From NCSA to the National Research Platform
Larry Smarr
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
DianaGray10
 
Facilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptxFacilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptx
Knoldus Inc.
 
New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024
ThousandEyes
 
Real-Time Persisted Events at Supercell
Real-Time Persisted Events at  SupercellReal-Time Persisted Events at  Supercell
Real-Time Persisted Events at Supercell
ScyllaDB
 
Fuxnet [EN] .pdf
Fuxnet [EN]                                   .pdfFuxnet [EN]                                   .pdf
Fuxnet [EN] .pdf
Overkill Security
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
UiPathCommunity
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
Mydbops
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
AlexanderRichford
 
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My IdentityCNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
Cynthia Thomas
 
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to SuccessDynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
ScyllaDB
 
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDCScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB
 
An Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise IntegrationAn Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise Integration
Safe Software
 
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
anilsa9823
 
Building a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data PlatformBuilding a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data Platform
Enterprise Knowledge
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
leebarnesutopia
 
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
UiPathCommunity
 

Recently uploaded (20)

MongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to SuccessMongoDB to ScyllaDB: Technical Comparison and the Path to Success
MongoDB to ScyllaDB: Technical Comparison and the Path to Success
 
From NCSA to the National Research Platform
From NCSA to the National Research PlatformFrom NCSA to the National Research Platform
From NCSA to the National Research Platform
 
Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2Communications Mining Series - Zero to Hero - Session 2
Communications Mining Series - Zero to Hero - Session 2
 
Facilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptxFacilitation Skills - When to Use and Why.pptx
Facilitation Skills - When to Use and Why.pptx
 
New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024New ThousandEyes Product Features and Release Highlights: June 2024
New ThousandEyes Product Features and Release Highlights: June 2024
 
Real-Time Persisted Events at Supercell
Real-Time Persisted Events at  SupercellReal-Time Persisted Events at  Supercell
Real-Time Persisted Events at Supercell
 
Fuxnet [EN] .pdf
Fuxnet [EN]                                   .pdfFuxnet [EN]                                   .pdf
Fuxnet [EN] .pdf
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
Day 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio FundamentalsDay 2 - Intro to UiPath Studio Fundamentals
Day 2 - Intro to UiPath Studio Fundamentals
 
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - MydbopsMySQL InnoDB Storage Engine: Deep Dive - Mydbops
MySQL InnoDB Storage Engine: Deep Dive - Mydbops
 
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
QR Secure: A Hybrid Approach Using Machine Learning and Security Validation F...
 
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My IdentityCNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
CNSCon 2024 Lightning Talk: Don’t Make Me Impersonate My Identity
 
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to SuccessDynamoDB to ScyllaDB: Technical Comparison and the Path to Success
DynamoDB to ScyllaDB: Technical Comparison and the Path to Success
 
ScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDCScyllaDB Real-Time Event Processing with CDC
ScyllaDB Real-Time Event Processing with CDC
 
An Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise IntegrationAn Introduction to All Data Enterprise Integration
An Introduction to All Data Enterprise Integration
 
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
Call Girls Chennai ☎️ +91-7426014248 😍 Chennai Call Girl Beauty Girls Chennai...
 
Building a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data PlatformBuilding a Semantic Layer of your Data Platform
Building a Semantic Layer of your Data Platform
 
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdfLee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
Lee Barnes - Path to Becoming an Effective Test Automation Engineer.pdf
 
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
TrustArc Webinar - Your Guide for Smooth Cross-Border Data Transfers and Glob...
 
Session 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdfSession 1 - Intro to Robotic Process Automation.pdf
Session 1 - Intro to Robotic Process Automation.pdf
 

Introduction to UML

  • 1. 1 Session Unified Modeling Language Checklist  Introduction to UML  Case Study: Order Processing System
  • 2. 2 Introduction UML is a modeling tool with graphical notations. It is mainly used by Business Analysts and Software Engineers. Business Analysts use them for modeling a business flow or to define a process. Software Engineers use UML for Object Oriented Analysis Design. UML helps software engineers to communicate their design over the team UML is maintained by Object Mentor Groups (OMG) a non-profit organization which is responsible for designing the specification for UML. How I am going to approach UML? There are presently 13 official diagram types described by UML 2.0. These official diagrams are classified as Structural Diagram and Behavioral Diagram. Figure 1 shows UML classification 1. Structural Diagram – These diagrams deal with technical aspects of the system. How the functional blocks are modeled in a system. 2. Behavioral Diagram – These diagrams deal with the functional flow or process of a system. What to do with all these diagrams?  When the project complexity increases we need some of these diagrams as a communication medium across all the stake holders in the project. Stakeholders with different backgrounds will be part of the project. UML diagrams help each stakeholder to understand the system.  With different diagrams it is easy to pinpoint the logical mistakes. It will help us to invest our efforts where it is required.
  • 3. 3 Figure 1: UML Classification Diagram
  • 4. 4 Case Study I am firm believer in “Learning by doing”. I am going to use this case study in further articles to learn “How to construct” UML diagrams. The case study presented here is a scaled down version of Order processing system. As every project starts with gathering requirements, let us go through the requirements and understand the problem before us. The Problem Statement A computer store wants to acquire an automated tool for placing orders. An order may be placed by a single registered customer. Customers can edit or remove the order before they pay. An order is considered valid if there is at least one item and ordered items are in stock. The system should keep track of the inventory. Customers can make their order confirmation by paying the net amount. They can pay by cash or by using credit card. An invoice is given after servicing the order. Some additional requirements when customer uses credit card. 1. The credit card must be under the name of the customer 2. The validity of the credit card must exceed at least two weeks the current date of the order servicing 3. The credit level must exceed the amount due of the order Note: You will see the problem statement changing from session to session. I have to do this because you will have an opportunity to use as much concepts available in each session. FAQ’s ?... Let’s get an overall picture of How’s? & Why’s? before proceeding to the details of modeling. I have listed some questions that I had in mind before starting to learn UML. Feel free to skip them if you are familiar with the background of UML.
  • 5. 5 1. Who uses UML? UML is used by Business Analyst, Programmers and Project Managers. It is not confined to Software Industry alone, although software industry is the key player in using UML. Business Analyst use UML to gather requirements from their clients and understand the business process. They use UML as a communicating medium to help programmers understand what is required out of the system. Programmers use UML to design the system. They use UML to assign responsibilities to engineers. Engineers use these modular level diagrams to construct the system. Project Management use UML to improve the performances of a business process, monitor the development life cycle. 2. Will I be using all the diagrams? No, it depends on what role you play in your project. For instance, if you are a developer you will use Class diagram, Object diagram and sequence diagram to construct a particular module of a system. 3. I have seen projects which don’t give much concern about UML? Is it so? Why? Yes, that is true. It depends upon the project methodology you are using. One such example is Extreme programming model where the model is mainly focused on coding. It strips out unimportant aspects like documentation/modeling. Clients communicate and work with programmers to deliver the product. But in case of other models like Waterfall, Agile and Iterative process UML is an integral part of the process. Some business processes even have a separate team for modeling diagrams. 4. Will this set of articles deal with Model Driven Architecture? No, Model Driven Architecture is still in its development stage and is not widely used. In addition to it, MDA is a whole topic which I could not address them in these set of articles.
  • 6. 6 5. Where does UML fit in a project life cycle? UML is de-facto in forward engineering; people use to design before they begin to code. In reverse engineering it is used for understanding the code. Some Integrated Development Environments (IDE’s) have the capability to generate source code from UML diagrams. 6. Where are the references for these articles? There is no specific book or online course as reference for my articles. Web is my resource; it has wealth of information for you to refer. 7. How can I draw these UML diagrams? What is the development environment required for using UML? Just like other programming languages, UML too has its share of modeling tools in the market. Wikipedia list all the modeling tools here. 8. How to choose my modeling tools? It is a trick question to answer but I will try to be honest. Choosing a modeling tool depends upon your requirement and why you need it. If you are a student who needs to learn using UML then my best bet is to try open source projects. If you are a team leader who is a position to select the tool which is required for your team then I would suggest looking through the usability, whether team collaboration feature is supported and technical support from the vendor is good before choosing one. There is a stack overflow discussion going on here which will help to keep your first foot.
  • 7. 7 Review  UML is a modeling language maintained by Object Mentor Group  UML diagrams are used by various stake holders in a project  There are 13 official diagrams supported by UML 2.0  The case study to be used in these article is Order processing system
  翻译: