SlideShare a Scribd company logo
1 of 17
T.Y.B.Sc.(Comp. Sci.) Sem. I
Object Oriented Software Engineering
(OOSE)
CS-336
Faculty
Dr. Amit D. Kasliwal
Asst. Professor
Chapter 2
Introduction to UML
 Unified Modeling Language, as the name implies it is a modeling
language used to visualize, specify, construct and document the artifacts
of a software.
 We should clearly understand that UML is not a system design or
development methodology, but can be used to document object oriented
and analysis results obtained using some methodology.
 A model is the graphical, textual, mathematical, or programming code
based representation.
 Models are very useful in documenting the design & analysis results.
 An important reason behind constructing a model is that it helps manage
complexity.
 Once models of a software constructed, it can be used for a variety of
purposes during software development, including Analysis, Specification,
Code generation, Design, Visualize and understand the problem and the
working of a system Testing, etc.
UML
 UML provides a set of notations (e.g. rectangles, lines, ellipses, etc.) to
create a visual model of the system.
 Like any other language, UML has its own syntax (symbols and
sentence formation rules) and semantics (meanings of symbols and
sentences).
 We use UML diagrams to portray the behavior and structure of a
system.
 Thus helping software engineers, businessmen and system architects
with modeling, design and analysis.
 In the late 1980s and early 1990s, there was a large number of object
oriented design techniques and notations.
 Different software development houses were using different notations
to document their object-oriented designs.
 These diverse notations gave rise to a lot of confusion.
 UML was developed to standardize the large number of object oriented
modeling notations that existed and were used extensively in the early
1990s. It uses the principles and has borrowed many concepts from
modeling techniques of :
• Object Management Technology [Rumbaugh 1991]
• Booch’s Methodology [Booch 1991]
• Object-Oriented Software Engineering [Jacobson 1992]
 UML was adopted by Object Management Group (OMG) an
association of industries which tries to facilitate early formation of
standards as a de facto standard in 1997.
 Above all, UML contains an extensive set of notations and suggests
construction by providing many types of diagrams.
 It has successfully been used to model both large and small problems.
 Its adoption by OMG and widespread acceptance, UML is now being
used in a large number of software development projects.
UML
UML Concept
 As UML describes the real time systems, it is very important to make a
conceptual model and then proceed gradually.
 The conceptual model of UML has basic building block having
following three major elements
 Things
 Relationships
 Diagrams
 Things are the most important element of building blocks of UML.
 Things can be
 Structural
 Behavioral
 Grouping
 Annotational
 Structural Things define the static part of the model.
 It represent the physical and conceptual elements.
 Class − Class represents a set of objects having similar responsibilities.
 Interface − Interface defines a set of operations, which specify the
responsibility of a class.
 Actor: It comes under the use case diagrams. It is an object that
interacts with the system from outside. For example, a user.
UML Concept
 Behavioral Things consists of the dynamic parts of proposed model.
 Interaction − It is defined as a behavior that consists of a group of
messages exchanged among elements to accomplish a specific task.
 State machine − State machine is useful when the state of an object in
its life cycle is important.
 It defines the sequence of states an object goes through in response to
events. Events are external factors responsible for state change
UML Concept
 Collaboration: It represents the interaction between things that is done
to meet the goal.
 Use case: Use case is the core concept of object-oriented modeling.
 It portrays a set of actions executed by a system to achieve the goal.
 Component: It represents the physical part of the system.
 Node: Represent physical element that exists at run time.
UML Concept
 Grouping Things can be defined as a mechanism to group elements of
a UML model together.
 Package − Package is the only one grouping thing available for
gathering structural and behavioral things.
 Annotational Things can be defined as a mechanism to capture
remarks, descriptions, and comments of UML model elements.
 Note - It is the only one Annotational thing available used to render
comments, constraints, etc. of an UML element.
UML Concept
UML Concept
 Relationship is another most important building block of UML.
 It shows how the elements are associated with each other and this
association describes the functionality of an application.
 There are four kinds of relationships.
 Association is basically a set of links that connects the elements of a
UML model.
 Dependency is a relationship between two things in which change in
one element also affects the other.
 It also describes how many objects are taking part in that relationship.
 Generalization can be defined as a relationship which connects a
specialized element with a generalized element.
 It basically describes the inheritance relationship in the world of
objects.
 Realization can be defined as a relationship in which two elements are
connected.
 One element describes some responsibility, which is not implemented
and the other one implements them.
 This relationship exists in case of interfaces.
UML Concept
UML Concept
 UML Diagram used to construct, capture and view the software by
using different types of diagrams.
 The different UML diagrams provide different perspectives of the
software system to be developed and facilitate a comprehensive
understanding of the system.
 Such models can be redefined to get the actual implementation of the
system.
 The UML diagrams can capture the following five views of a system:
• User’s view
• Structural view
• Behavioral view
• Implementation view
• Environmental view
 User's view
 This contains the diagrams in which the user's part of interaction with
the software is defined.
 No internal working is defined in this view for model. The diagrams
contained in this view is Use case Diagram.
 Structural view
 In the structural view, only the structure of the model is explained.
 This gives an estimation of what the software consists of.
 However, internal working is still not defined in this model.
 The diagram that this view includes are Class Diagrams, Object
Diagrams.
UML Concept
 Behavioral view
 The behavioral view contains the diagrams which explain the behavior of
the software. It includes Sequence Diagram, Collaboration Diagram, State
chart Diagram and Activity Diagram.
 Environmental view
 This view explains the user interactions & software effects on the system.
 It helps in view how the different components are implemented on
different pieces of hardware. It contain Deployment diagram
 Implementation view
 The view consists of the diagrams that represent the implementation part.
 This view is related to the developer’s views.
 This is the only view in which the internal workflow of the software is
defined. It contains Component Diagram
UML Concept
UML Concept
Advantages of UML
 Robust
 Reusable
 Flexible
 With UML, we know exactly what we are getting.
 We will have lower development costs.
 Software will behave as we expect it to.(With Fewer surprises)
 The right decisions are made before we are given poorly written code.
 We can develop more memory and processor efficient systems.
 System maintenance costs will be lower.
 Less relearning takes place.
 Communication with stakeholders will be more efficient.
Introduction to Unified Modeling Language

More Related Content

What's hot

Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes arvind pandey
 
Uml structural diagrams
Uml structural diagramsUml structural diagrams
Uml structural diagramsSwathy T
 
Introduction to Rational Rose
Introduction to Rational RoseIntroduction to Rational Rose
Introduction to Rational RoseMunaam Munawar
 
Structural modeling and analysis
Structural modeling and analysisStructural modeling and analysis
Structural modeling and analysisJIGAR MAKHIJA
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with umlsabin kafle
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling LanguageShahzad
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)Nguyen Tuan
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and designjayashri kolekar
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationmewaseem
 
Ooad (object oriented analysis design)
Ooad (object oriented analysis design)Ooad (object oriented analysis design)
Ooad (object oriented analysis design)Gagandeep Nanda
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and DesignRiazAhmad786
 

What's hot (20)

Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes
 
Uml structural diagrams
Uml structural diagramsUml structural diagrams
Uml structural diagrams
 
Presentation on uml
Presentation on umlPresentation on uml
Presentation on uml
 
UML Diagrams
UML DiagramsUML Diagrams
UML Diagrams
 
Introduction to Rational Rose
Introduction to Rational RoseIntroduction to Rational Rose
Introduction to Rational Rose
 
Structural modeling and analysis
Structural modeling and analysisStructural modeling and analysis
Structural modeling and analysis
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling Language
 
UML (Unified Modeling Language)
UML (Unified Modeling Language)UML (Unified Modeling Language)
UML (Unified Modeling Language)
 
Uml
UmlUml
Uml
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Ooad (object oriented analysis design)
Ooad (object oriented analysis design)Ooad (object oriented analysis design)
Ooad (object oriented analysis design)
 
UML
UMLUML
UML
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Use Case Modeling
Use Case ModelingUse Case Modeling
Use Case Modeling
 
Ooad
OoadOoad
Ooad
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and Design
 

Similar to Introduction to Unified Modeling Language

Similar to Introduction to Unified Modeling Language (20)

UNIFIED MODELLING LANGUAGE (UML)
UNIFIED MODELLING LANGUAGE (UML)UNIFIED MODELLING LANGUAGE (UML)
UNIFIED MODELLING LANGUAGE (UML)
 
Uml tutorial
Uml tutorialUml tutorial
Uml tutorial
 
Uml tutorial
Uml tutorialUml tutorial
Uml tutorial
 
Uml tutorial
Uml tutorialUml tutorial
Uml tutorial
 
Uml Tutorial
Uml TutorialUml Tutorial
Uml Tutorial
 
UML Tutorial
UML TutorialUML Tutorial
UML Tutorial
 
Uml.pptx
Uml.pptxUml.pptx
Uml.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
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
Uml overview modified
Uml overview modifiedUml overview modified
Uml overview modified
 
Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Understanding unified modelling language
Understanding unified modelling languageUnderstanding unified modelling language
Understanding unified modelling language
 
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdfPhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
PhD Core Paper Unit 5 _Part 1 Software Design and UML Use Case Modeling.pdf
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Uml
UmlUml
Uml
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
Object oriented analysis and design unit- iii
Object oriented analysis and design unit- iiiObject oriented analysis and design unit- iii
Object oriented analysis and design unit- iii
 
Experiment no
Experiment noExperiment no
Experiment no
 
UML-Advanced Software Engineering
UML-Advanced Software EngineeringUML-Advanced Software Engineering
UML-Advanced Software Engineering
 

More from AMITJain879

Object Oriented Testing
Object Oriented TestingObject Oriented Testing
Object Oriented TestingAMITJain879
 
Architectural Modeling
Architectural ModelingArchitectural Modeling
Architectural ModelingAMITJain879
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented DesignAMITJain879
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented AnalysisAMITJain879
 
Basic Behavioral Modeling
Basic Behavioral ModelingBasic Behavioral Modeling
Basic Behavioral ModelingAMITJain879
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural ModelingAMITJain879
 
Basic Structural Modeling
Basic Structural ModelingBasic Structural Modeling
Basic Structural ModelingAMITJain879
 
What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?AMITJain879
 

More from AMITJain879 (8)

Object Oriented Testing
Object Oriented TestingObject Oriented Testing
Object Oriented Testing
 
Architectural Modeling
Architectural ModelingArchitectural Modeling
Architectural Modeling
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented Analysis
 
Basic Behavioral Modeling
Basic Behavioral ModelingBasic Behavioral Modeling
Basic Behavioral Modeling
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural Modeling
 
Basic Structural Modeling
Basic Structural ModelingBasic Structural Modeling
Basic Structural Modeling
 
What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?
 

Recently uploaded

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 

Recently uploaded (20)

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 

Introduction to Unified Modeling Language

  • 1. T.Y.B.Sc.(Comp. Sci.) Sem. I Object Oriented Software Engineering (OOSE) CS-336 Faculty Dr. Amit D. Kasliwal Asst. Professor
  • 2. Chapter 2 Introduction to UML  Unified Modeling Language, as the name implies it is a modeling language used to visualize, specify, construct and document the artifacts of a software.  We should clearly understand that UML is not a system design or development methodology, but can be used to document object oriented and analysis results obtained using some methodology.  A model is the graphical, textual, mathematical, or programming code based representation.  Models are very useful in documenting the design & analysis results.  An important reason behind constructing a model is that it helps manage complexity.  Once models of a software constructed, it can be used for a variety of purposes during software development, including Analysis, Specification, Code generation, Design, Visualize and understand the problem and the working of a system Testing, etc.
  • 3. UML  UML provides a set of notations (e.g. rectangles, lines, ellipses, etc.) to create a visual model of the system.  Like any other language, UML has its own syntax (symbols and sentence formation rules) and semantics (meanings of symbols and sentences).  We use UML diagrams to portray the behavior and structure of a system.  Thus helping software engineers, businessmen and system architects with modeling, design and analysis.  In the late 1980s and early 1990s, there was a large number of object oriented design techniques and notations.  Different software development houses were using different notations to document their object-oriented designs.  These diverse notations gave rise to a lot of confusion.
  • 4.  UML was developed to standardize the large number of object oriented modeling notations that existed and were used extensively in the early 1990s. It uses the principles and has borrowed many concepts from modeling techniques of : • Object Management Technology [Rumbaugh 1991] • Booch’s Methodology [Booch 1991] • Object-Oriented Software Engineering [Jacobson 1992]  UML was adopted by Object Management Group (OMG) an association of industries which tries to facilitate early formation of standards as a de facto standard in 1997.  Above all, UML contains an extensive set of notations and suggests construction by providing many types of diagrams.  It has successfully been used to model both large and small problems.  Its adoption by OMG and widespread acceptance, UML is now being used in a large number of software development projects. UML
  • 5. UML Concept  As UML describes the real time systems, it is very important to make a conceptual model and then proceed gradually.  The conceptual model of UML has basic building block having following three major elements  Things  Relationships  Diagrams  Things are the most important element of building blocks of UML.  Things can be  Structural  Behavioral  Grouping  Annotational
  • 6.  Structural Things define the static part of the model.  It represent the physical and conceptual elements.  Class − Class represents a set of objects having similar responsibilities.  Interface − Interface defines a set of operations, which specify the responsibility of a class.  Actor: It comes under the use case diagrams. It is an object that interacts with the system from outside. For example, a user. UML Concept
  • 7.  Behavioral Things consists of the dynamic parts of proposed model.  Interaction − It is defined as a behavior that consists of a group of messages exchanged among elements to accomplish a specific task.  State machine − State machine is useful when the state of an object in its life cycle is important.  It defines the sequence of states an object goes through in response to events. Events are external factors responsible for state change UML Concept
  • 8.  Collaboration: It represents the interaction between things that is done to meet the goal.  Use case: Use case is the core concept of object-oriented modeling.  It portrays a set of actions executed by a system to achieve the goal.  Component: It represents the physical part of the system.  Node: Represent physical element that exists at run time. UML Concept
  • 9.  Grouping Things can be defined as a mechanism to group elements of a UML model together.  Package − Package is the only one grouping thing available for gathering structural and behavioral things.  Annotational Things can be defined as a mechanism to capture remarks, descriptions, and comments of UML model elements.  Note - It is the only one Annotational thing available used to render comments, constraints, etc. of an UML element. UML Concept
  • 10. UML Concept  Relationship is another most important building block of UML.  It shows how the elements are associated with each other and this association describes the functionality of an application.  There are four kinds of relationships.  Association is basically a set of links that connects the elements of a UML model.  Dependency is a relationship between two things in which change in one element also affects the other.  It also describes how many objects are taking part in that relationship.
  • 11.  Generalization can be defined as a relationship which connects a specialized element with a generalized element.  It basically describes the inheritance relationship in the world of objects.  Realization can be defined as a relationship in which two elements are connected.  One element describes some responsibility, which is not implemented and the other one implements them.  This relationship exists in case of interfaces. UML Concept
  • 12. UML Concept  UML Diagram used to construct, capture and view the software by using different types of diagrams.  The different UML diagrams provide different perspectives of the software system to be developed and facilitate a comprehensive understanding of the system.  Such models can be redefined to get the actual implementation of the system.  The UML diagrams can capture the following five views of a system: • User’s view • Structural view • Behavioral view • Implementation view • Environmental view
  • 13.  User's view  This contains the diagrams in which the user's part of interaction with the software is defined.  No internal working is defined in this view for model. The diagrams contained in this view is Use case Diagram.  Structural view  In the structural view, only the structure of the model is explained.  This gives an estimation of what the software consists of.  However, internal working is still not defined in this model.  The diagram that this view includes are Class Diagrams, Object Diagrams. UML Concept
  • 14.  Behavioral view  The behavioral view contains the diagrams which explain the behavior of the software. It includes Sequence Diagram, Collaboration Diagram, State chart Diagram and Activity Diagram.  Environmental view  This view explains the user interactions & software effects on the system.  It helps in view how the different components are implemented on different pieces of hardware. It contain Deployment diagram  Implementation view  The view consists of the diagrams that represent the implementation part.  This view is related to the developer’s views.  This is the only view in which the internal workflow of the software is defined. It contains Component Diagram UML Concept
  • 16. Advantages of UML  Robust  Reusable  Flexible  With UML, we know exactly what we are getting.  We will have lower development costs.  Software will behave as we expect it to.(With Fewer surprises)  The right decisions are made before we are given poorly written code.  We can develop more memory and processor efficient systems.  System maintenance costs will be lower.  Less relearning takes place.  Communication with stakeholders will be more efficient.