Overview of UML Daniel Brookshier Distinguished Fellow No Magic Inc.

advertisement
Overview of UML
Daniel Brookshier
Distinguished Fellow
No Magic Inc.
Everything is Risky Without
Knowledge
About This Presenation
This presentation was generated by MagicDraw!
Hold your questions to the end of the presentation
Overview
Why UML?
The Core Diagrams
Extending UML
Why UML?
UML Is Alive
UML is Alive
Regular updates by the OMG
UML is the only active modeling standard.
UML is extended into dozens of domains.
UML is supported by many commercial and open
source tools
UML metadata is easily transformed into code and
other data for 3rd party tools
Is UML Relevant?
UML Success
Many people can read UML
It's not 'rocket science'
The state of the art has improved
UML Ecosystem
UML Extensions
Enterprise Architecture
Data Modeling
Systems Engineering
Requirements
Data Modeling
Business Process and Orchestration
Ontology
Domains
Healthcare
Insurance
Military
Robotics
Software development/management
More!
Core UML
Primary Diagram Types
Use Case – Key activities and documentation of usage
Class - Logical structure of the model. Also includes Use Cases,
Deployment, Components, Collaboration, and Object instances.
Composite - An internal configuration of a Class. Can also show
internal structure of other elements like Collaboration, Components
and other Class-based elements.
Activity - Flow associated with either a scenario or a method. When
using swimlanes, can show interactions between instances.
State - State machines of classes.
Sequence - Shows interactions between instances of classes.
4+1
What is a Use Case Diagram?
Use of systems
Diagrams show use cases, actors,
and their relationships
Point of view is interface
Use Cases are NOT
Not a list of features
Not every function
Not a story
Not a replacement for 'requirement'
Simple Use Case
Complex Use Case
Generalization
Why are Use Cses Important?
Documents important user interactions
Related to activities to script use cases
Refine functional requirements
Use Case Details
Class Diagrams
Structural design
Describes associated parts
Interfaces and interface use
Linked to behavior
Class Overview
Interfaces
Lollipop Notation
Object Diagrams
Validation of design by via example data
Can describe initial states or be used in executions
Object Diagrams
Object Links
Composite Diagrams
Instance of structure
Used for advanced configurations
Physical part modeling
Shows nesting caused by associations
Structure For Composite Diagram
Zoo
Healthcare
Heathcare System
Activity Diagrams
Behavior of model
Reusable (callable) activities
Rich semantics (fancy flowcharts).
Links to classes, states, sequences
Prescription Flow
Authorize Prescription
Linking Activity to Operation
Statemachine Diagrams
Valid states of a Class
Edges represent the method or external signal that
causes state to change
Bubbles represent the aggregate state of the class
Methods can trigger on entry/exit of state.
Example State
Prescription
Sequence Diagrams
Interactions between classes
Usually used to show a scenario
Verify sequence and state transitions
Also be used to design class methods
Prescription
Extending UML
Stereotypes are semantic labels
Stereotypes have tags which can hold instances of metainformation
Associations between stereotypes can be validated with Object
constraint Language (OCL)
Domain Specific Languages (DLSL) created on top of rich UML
semantics and diagrams
Stereotypes
Extended UML
Good Traceability
Thank You
Daniel Brookshier
DanielB@NoMagic.com
Download