SlideShare uma empresa Scribd logo
1 de 62
UML  U M L(Unified Modeling Language)BYCh. Vishwa MohanProject ManagerVision Krest Embedded Systems
Software Development Life Cycle (SDLC) Requirement Definition  Requirement Analysis.  System Design  Prototyping  Construction Integration  Testing  Implementation  Documentation  Maintenance.
What is a Process?
What are the Life Cycle Types ?  Structured Methods Code and Fix (Traditional)  Waterfall Spiral Ward & Mellor (Real Time & Embedded Systems) Object Oriented Methods OOA/OOD By Coad & Yourdon OOD By Booch OMT By Rambaugh OOSE by Jacobson
Drawbacks of Traditional Methods !  Adaptability to change is very poor.  Bugs.  Person Dependency  No way to communicate with team members.  No way to model the system  Limited user involvement.  Persons involved in the analysis will required to go for coding and further phases.
Benefits of the Object Oriented Methodologies:  New requirements can be added at later stage and their integration will be very easy.  It’s possible to deal with more complex systems. Easy way to make communication between software developers and experts.  Seen over the whole of their lifetime, OO models are more stable and thus easier to modify.  OO abstraction allows increases reusability of work outcomes.  Finally it’s more fun.
Steps involved in the OO  Software Development: Identify the objects and their attributes.  Study operations associated with the objects.  Design classes from objects having similar characteristics.  Establish relationship between classes.  Implement the classes and relationships between them.
UML What is Model ?  Representation in a certain medium of some thing in the same or other medium.  A model represents the blueprint of the system. It is an abstract representation of a system.  What is In a Model ?  Semantics: It captures the classes, associations, states, use cases and messages.  Visual Representation: How to represent model elements. Different tool vendors shows different representation for the same model.
What is UML ?  UML is a general purpose visual modeling language that is used to specify, visualize, construct, and document the artifacts of a software intensive system.  UML enables system builders to create blue prints that capture their vision in a standard easy-to understand way and communication them to others. UML can be used with all processes, throughout the development life cycle, and across different implementation technologies. UML captures the static and dynamic behavior of systems.
What is a Visual Modeling ? Basically, the modeling captures the essential parts of the system.  Computer system basically automate business processes.  However, it’s not easy to build software systems on time and within budget. Building a complex software system requires blueprint.  You don’t construct a building without a blueprint.  Visual modeling is the blueprint for software systems. Finally we can say, Visual Modeling is the key to successful software development.
What is a Visual Modeling?
Benefits of Visual Modeling? Visual Modeling captures business process Use case analysis is a technique to capture business process from users perspective.  Visual Modeling is a communication tool. Use visual modeling to capture business objects and logic.  Use visual modeling to analyze and design your application.  Visual Modeling manages complexity.    Visual Modeling defines software architecture.  With the help of Visual modeling language your model your system independent of implementation language.  Visual Modeling promotes reuse.  Here Visual Modeling can be used as component browser and it can also be used to model component assembly.
UML Concepts are: The UML may be used to: ,[object Object]
Illustrate use case realizations with interaction diagrams
Represent a static structure of a system using class diagrams
Model the behavior of objects with state transition diagrams
Reveal the physical implementation architecture with component & deployment diagrams
Extend your functionality with stereotypes,[object Object],[object Object]
Different Diagrams in UML  Use Case Diagram  Class Diagram  Sequence Diagram  Collaboration Diagram  State Transition Diagram Activity Diagram  Component Diagram  Module Diagram  Deployment Diagram.  Presentation Diagram
UML Views Static Views Dynamic Views ,[object Object]
Static View is the foundation of UML. It captures the object Structure. It doesn’t contains details of dynamic behavior.
The key elements in the Static View are
Classifier
Relationships,[object Object]
Classes:  A Class defines a set of objects that have a state and behavior.  State is described by its attributes and associations.  A Class has unique name within its container. The class has a visibility with respect to its container.  If a class is a part of package then you can represent the class preceded with package name.  ,[object Object],[object Object]
Actor Registrar Faculty Student Billing System An actor is someone or some thing that must interact with the system under development. An Actor is a stereo type of class.  An actor is represented with a  sticky man.
Use Case Maintain Schedule Maintain Curriculum Request Course Roster A use case is a pattern of behavior the system exhibits ,[object Object]
 Use case represented with oval. Actors are examined to determine their needs ,[object Object]
Professor -- request roster
Student -- maintain schedule
Billing System -- receive billing information from registration,[object Object]
<<uses>> Register for courses <<uses>> Logon validation Maintain curriculum Uses and Extends Use Case Relationship As the use cases are documented, other use case relationships may be discovered ,[object Object]
An extends relationship shows optional behavior ,[object Object]
Use Case Realization The use case diagram presents an outside view of the system ,[object Object],Two types of interaction diagrams ,[object Object]
Collaboration diagrams,[object Object]
Class Diagram Classes can represent  Physical thing (Airplane)  Business thing (order, invoice) Logical thing (broadcasting schedule) Application thing (Button, Cerror) Computer thing (hash table) Behavior thing (A Task) Types of Classes you can show ,[object Object]
Abstract Class
Template Class
Interface Class
Utility Class,[object Object]
Attributes CourseOffering number loation time The structure of a class is represented by its attributes. Attributes may be found by examining class definitions, the problem requirements, and by applying domain knowledge.    Each course offering has a number, location  and time
Operations registration  registration  form manager RegistrationManager 3: add course(joe, math 01) addCourse(Student,Course) The behavior of a class is represented by its operations.  Operations may be found by examining interaction diagrams.
Relationships	 Relationships provides pathway for communication between objects.  Sequence and/or collaboration diagrams are examined to determine what links between objects need to exist to accomplish the behavior.  If two objects need to “talk” there must be a link between them. Three types of relationships are: Association, Aggregation and Dependency.
Interfaces:  Interfaces does not have attributes. So there is no state for interfaces.  Interfaces doesn’t have outgoing associations that are visible to it. You can draw the following relationships with interfaces ,[object Object]
Realization
AssociationAn Interface is represented by a Circle with small line attached to it.  Interface
Association 	 An association establishes relationship between two classes. It is a bi-directional.  Data can flow both directions across association.  The frequency of association is called Multiplicity.  You can apply constraints on association (eg: ordered, or  etc., )  One way of association is called directed association, in which only one side knows the other, but not vice versa.  Different types of associations are:  ,[object Object]
Attributed Association
Qualified Association
Derived Association
Directed Association   ,[object Object],[object Object],[object Object]
Multiplicity	 Multiplicity defines how many objects participate in a relationship.   ,[object Object]
For each association and aggregation, there are two multiplicity decisions to make:  one for each end of the relationship
A class also has multiplicity. ,[object Object],[object Object]
Guarded
Concurrent	,[object Object]
Specialization. Common attributes, operations, and/or relationships are shown at the highest applicable level in the hierarchy.
Inheritance Representation
Links 	 Link: A Link is an instance of an association. It connects objects rather then classes.  ,[object Object],Mohan:Faculty JayaMukhi:Batch Teaches
Stereotypes Stereotype and Constraints are two constructs the UML provided for extending the language.  ,[object Object]
Stereotypes can be sued to extend the UML notational elements. Stereotypes may be used to classify and extend associations, inheritance relationships, classes, and components.  Examples of stereotypes:  Class Stereotypes: Actor, boundary, entity, utility, exception.  Inheritance Stereotypes: uses and extends.  Component Stereotypes: subsystem.

Mais conteúdo relacionado

Mais procurados

Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Haitham El-Ghareeb
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
koolkampus
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
mewaseem
 
Object and class relationships
Object and class relationshipsObject and class relationships
Object and class relationships
Pooja mittal
 

Mais procurados (20)

Ooad
OoadOoad
Ooad
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural Modeling
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
state modeling In UML
state modeling In UMLstate modeling In UML
state modeling In UML
 
Class diagrams
Class diagramsClass diagrams
Class diagrams
 
The Ultimate Sequence Diagram Tutorial
The Ultimate Sequence Diagram TutorialThe Ultimate Sequence Diagram Tutorial
The Ultimate Sequence Diagram Tutorial
 
Introduction to Design Pattern
Introduction to Design  PatternIntroduction to Design  Pattern
Introduction to Design Pattern
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
 
Object and class relationships
Object and class relationshipsObject and class relationships
Object and class relationships
 
UML diagrams and symbols
UML diagrams and symbolsUML diagrams and symbols
UML diagrams and symbols
 
UML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptxUML and Software Modeling Tools.pptx
UML and Software Modeling Tools.pptx
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Unit 2(advanced class modeling & state diagram)
Unit  2(advanced class modeling & state diagram)Unit  2(advanced class modeling & state diagram)
Unit 2(advanced class modeling & state diagram)
 
Unified modelling language (UML)
Unified modelling language (UML)Unified modelling language (UML)
Unified modelling language (UML)
 
Use Case Modeling
Use Case ModelingUse Case Modeling
Use Case Modeling
 
Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram
 

Semelhante a Uml

Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
MeagGhn
 
ASP.NET System design 2
ASP.NET System design 2ASP.NET System design 2
ASP.NET System design 2
Sisir Ghosh
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
Dang Tuan
 
Introduction to Modeling Java and UML
Introduction to Modeling Java and UMLIntroduction to Modeling Java and UML
Introduction to Modeling Java and UML
Dang Tuan
 
Introduction to Object orientation , Modeling as a Design Technique Modeling ...
Introduction to Object orientation , Modeling as a Design Technique Modeling ...Introduction to Object orientation , Modeling as a Design Technique Modeling ...
Introduction to Object orientation , Modeling as a Design Technique Modeling ...
DhwaniDesai21
 
Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling Language
AMITJain879
 

Semelhante a Uml (20)

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- ii
Object oriented analysis and design unit- iiObject oriented analysis and design unit- ii
Object oriented analysis and design unit- ii
 
ASP.NET System design 2
ASP.NET System design 2ASP.NET System design 2
ASP.NET System design 2
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
432
432432
432
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Design UML diagrams
Design UML diagramsDesign UML diagrams
Design UML diagrams
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
 
Unified Modeling Language
Unified Modeling LanguageUnified Modeling Language
Unified Modeling Language
 
Object oriented analysis and design unit- iv
Object oriented analysis and design unit- ivObject oriented analysis and design unit- iv
Object oriented analysis and design unit- iv
 
Introduction to Modeling Java and UML
Introduction to Modeling Java and UMLIntroduction to Modeling Java and UML
Introduction to Modeling Java and UML
 
Intro Uml
Intro UmlIntro Uml
Intro Uml
 
Ooad
OoadOoad
Ooad
 
Uml
UmlUml
Uml
 
Introduction to Object orientation , Modeling as a Design Technique Modeling ...
Introduction to Object orientation , Modeling as a Design Technique Modeling ...Introduction to Object orientation , Modeling as a Design Technique Modeling ...
Introduction to Object orientation , Modeling as a Design Technique Modeling ...
 
Introduction to Unified Modeling Language
Introduction to Unified Modeling LanguageIntroduction to Unified Modeling Language
Introduction to Unified Modeling Language
 
UML Design
UML DesignUML Design
UML Design
 
OOP_Module 2.pptx
OOP_Module 2.pptxOOP_Module 2.pptx
OOP_Module 2.pptx
 
l1_introuml.pdf
l1_introuml.pdfl1_introuml.pdf
l1_introuml.pdf
 

Mais de Vishwa Mohan (15)

OPC Unified Architecture
OPC Unified ArchitectureOPC Unified Architecture
OPC Unified Architecture
 
jQuery
jQueryjQuery
jQuery
 
WPF
WPFWPF
WPF
 
Wwf
WwfWwf
Wwf
 
Da package usersguide
Da package usersguideDa package usersguide
Da package usersguide
 
Dareadme
DareadmeDareadme
Dareadme
 
CSharp Presentation
CSharp PresentationCSharp Presentation
CSharp Presentation
 
Linq
LinqLinq
Linq
 
Xml
XmlXml
Xml
 
Real Time Systems &amp; RTOS
Real Time Systems &amp; RTOSReal Time Systems &amp; RTOS
Real Time Systems &amp; RTOS
 
Embedded Linux
Embedded LinuxEmbedded Linux
Embedded Linux
 
Introduction To Embedded Systems
Introduction To Embedded SystemsIntroduction To Embedded Systems
Introduction To Embedded Systems
 
Microsoft.Net
Microsoft.NetMicrosoft.Net
Microsoft.Net
 
Zig Bee
Zig BeeZig Bee
Zig Bee
 
WCF
WCFWCF
WCF
 

Uml

  • 1. UML U M L(Unified Modeling Language)BYCh. Vishwa MohanProject ManagerVision Krest Embedded Systems
  • 2. Software Development Life Cycle (SDLC) Requirement Definition Requirement Analysis. System Design Prototyping Construction Integration Testing Implementation Documentation Maintenance.
  • 3. What is a Process?
  • 4. What are the Life Cycle Types ? Structured Methods Code and Fix (Traditional) Waterfall Spiral Ward & Mellor (Real Time & Embedded Systems) Object Oriented Methods OOA/OOD By Coad & Yourdon OOD By Booch OMT By Rambaugh OOSE by Jacobson
  • 5. Drawbacks of Traditional Methods ! Adaptability to change is very poor. Bugs. Person Dependency No way to communicate with team members. No way to model the system Limited user involvement. Persons involved in the analysis will required to go for coding and further phases.
  • 6. Benefits of the Object Oriented Methodologies: New requirements can be added at later stage and their integration will be very easy. It’s possible to deal with more complex systems. Easy way to make communication between software developers and experts. Seen over the whole of their lifetime, OO models are more stable and thus easier to modify. OO abstraction allows increases reusability of work outcomes. Finally it’s more fun.
  • 7. Steps involved in the OO Software Development: Identify the objects and their attributes. Study operations associated with the objects. Design classes from objects having similar characteristics. Establish relationship between classes. Implement the classes and relationships between them.
  • 8. UML What is Model ? Representation in a certain medium of some thing in the same or other medium. A model represents the blueprint of the system. It is an abstract representation of a system. What is In a Model ? Semantics: It captures the classes, associations, states, use cases and messages. Visual Representation: How to represent model elements. Different tool vendors shows different representation for the same model.
  • 9. What is UML ? UML is a general purpose visual modeling language that is used to specify, visualize, construct, and document the artifacts of a software intensive system. UML enables system builders to create blue prints that capture their vision in a standard easy-to understand way and communication them to others. UML can be used with all processes, throughout the development life cycle, and across different implementation technologies. UML captures the static and dynamic behavior of systems.
  • 10. What is a Visual Modeling ? Basically, the modeling captures the essential parts of the system. Computer system basically automate business processes. However, it’s not easy to build software systems on time and within budget. Building a complex software system requires blueprint. You don’t construct a building without a blueprint. Visual modeling is the blueprint for software systems. Finally we can say, Visual Modeling is the key to successful software development.
  • 11. What is a Visual Modeling?
  • 12. Benefits of Visual Modeling? Visual Modeling captures business process Use case analysis is a technique to capture business process from users perspective. Visual Modeling is a communication tool. Use visual modeling to capture business objects and logic. Use visual modeling to analyze and design your application. Visual Modeling manages complexity. Visual Modeling defines software architecture. With the help of Visual modeling language your model your system independent of implementation language. Visual Modeling promotes reuse. Here Visual Modeling can be used as component browser and it can also be used to model component assembly.
  • 13.
  • 14. Illustrate use case realizations with interaction diagrams
  • 15. Represent a static structure of a system using class diagrams
  • 16. Model the behavior of objects with state transition diagrams
  • 17. Reveal the physical implementation architecture with component & deployment diagrams
  • 18.
  • 19. Different Diagrams in UML Use Case Diagram Class Diagram Sequence Diagram Collaboration Diagram State Transition Diagram Activity Diagram Component Diagram Module Diagram Deployment Diagram. Presentation Diagram
  • 20.
  • 21.
  • 22. Static View is the foundation of UML. It captures the object Structure. It doesn’t contains details of dynamic behavior.
  • 23. The key elements in the Static View are
  • 25.
  • 26.
  • 27. Actor Registrar Faculty Student Billing System An actor is someone or some thing that must interact with the system under development. An Actor is a stereo type of class. An actor is represented with a sticky man.
  • 28.
  • 29.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 41.
  • 42. Attributes CourseOffering number loation time The structure of a class is represented by its attributes. Attributes may be found by examining class definitions, the problem requirements, and by applying domain knowledge. Each course offering has a number, location and time
  • 43. Operations registration registration form manager RegistrationManager 3: add course(joe, math 01) addCourse(Student,Course) The behavior of a class is represented by its operations. Operations may be found by examining interaction diagrams.
  • 44. Relationships Relationships provides pathway for communication between objects. Sequence and/or collaboration diagrams are examined to determine what links between objects need to exist to accomplish the behavior. If two objects need to “talk” there must be a link between them. Three types of relationships are: Association, Aggregation and Dependency.
  • 45.
  • 47. AssociationAn Interface is represented by a Circle with small line attached to it. Interface
  • 48.
  • 52.
  • 53.
  • 54. For each association and aggregation, there are two multiplicity decisions to make: one for each end of the relationship
  • 55.
  • 57.
  • 58. Specialization. Common attributes, operations, and/or relationships are shown at the highest applicable level in the hierarchy.
  • 60.
  • 61.
  • 62. Stereotypes can be sued to extend the UML notational elements. Stereotypes may be used to classify and extend associations, inheritance relationships, classes, and components. Examples of stereotypes: Class Stereotypes: Actor, boundary, entity, utility, exception. Inheritance Stereotypes: uses and extends. Component Stereotypes: subsystem.
  • 63. Constraints A Constraint is an expression which restricts the possible contents, states are the semantics of a model element which must always be satisfied. Constraints are always enclosed in braces. The below represents constraint on association. Bank Teller Customer Servers {ordered} Chooses .NET Course Student {Or} Java Course Chooses
  • 64.
  • 67.
  • 68. The sequence diagram shows the interaction between objects in a time sequence.
  • 69.
  • 70. Sequence Diagram registration registration math 101 math 101 : Student form manager section 1 1: fill in info 2: submit 3: add course(joe, math 01) 4: are you open? 5: are you open? 6: add (joe) 7: add (joe) A Sequence diagram displays the object interaction arranged in a time sequence.
  • 72.
  • 73. The events that cause a transition from one state to another.
  • 74. The actions that result from a state change. State transition diagrams are created for objects with significant dynamic behavior.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80. A run time Component
  • 81.
  • 82. Deployment Diagram Registration Database Main Library Building Dorm The deployment diagram shows the configuration or run-time processing elements and the software processes living on them. The deployment diagram visualizes the distribution of components across the enterprise.
  • 83.
  • 84.
  • 85.
  • 86.

Notas do Editor

  1. Sequential:Only one call to an instance may be outstanding at once. Guarded: Multiple calls from concurrent threads may occur simultaneously to one instance, but only one is allowed to commence. The others are blocked until the performance of the first operation is complete. (Designers to ensure that deadlocks can’t occur)Concurrent: Multiple calls from concurrent threads may occur simultaneously to one instance on any concurrent operation. All of them may process concurrently with correct semantics. (Inside the method implementation synchronization problems are correctly addressed.)