uml introduction
TRANSCRIPT
Famous UML Philosophers
Laws are like sausages, it is better not to see them being made. – Otto von Bismarck
Why do you climb philosophical hills? Because they are worth climbing. There are no hills to go down unless you start from the top. – Margaret Thatcher
Unified Modeling Language (UML)
Introduction
Barry DemchakCSE 294 Spring 2007
Professor KrügerFri, 13 Apr 2007 21:00:00 GMT
Roadmap
The OMG and UML The Documents
Infrastructure Superstructure Related (UML Distilled, Diagram Interchange,
OCL) Presentation Opportunities
Object Management Group
Who they are 427 Members (not Microsoft)
www.omg.org
Object Management Group Technology Standards
Real-time Embedded and Specialized Systems Analysis & Design Architecture-Driven Modernization and Middleware
Industries Business Modeling and Integration C4I Finance Government Healthcare Legal Compliance Life Sciences Research Manufacturing Technology Robotics Software-Based Communications and Space
Conferences Object World EclipseCon OSDL Enterprise Linux Summit Internationalization & Unicode Conference
Object Management Group
Modeling Standards Unified Modeling Language (UML) Model Driven Architecture (MDA) Common Object Request Broker (CORBA) Meta Object Facility (MOF) Interface Definition Language (IDL)
OMG and UML
Define and maintain the UML specification Disseminate information:
Tools and tool vendors Specifications Articles Resource Pages Tutorials Modeling Methodologies
Professional Certification (3 levels)
OMG, UML, MOF, and MDA UML, along with the
Meta Object Facility (MOF™), also provides a key foundation for OMG's Model-Driven Architecture®, which unifies every step of development and integration from: business modeling through architectural and application modeling to development, deployment, maintenance,
and evolution.
Model Driven Architecture (MDA)
Provides open, vendor-neutral approach to challenge of business and technology change
Separates business and application logic from underlying platform technology
MetaObject Facility (MOF)
Models can be … exported from one application imported into another transported across a network stored in a repository then retrieved rendered into different formats (e.g., XMI)
Roadmap
The OMG and UML The Documents
Infrastructure Superstructure Related (UML Distilled, Diagram Interchange,
OCL) Presentation Opportunities
UML and the __________ Pattern
Component
Leaf Composite
UML Documents Superstructure (v2.1.1 Feb 2007) Infrastructure (v2.1.1 Feb 2007) Related
Infrastructure
Superstructure
UML Distilled
Diagram Interchange
OCLMOF
CWM
Profiles
Metamodeling
Metamodeling
Infrastructure (Metamodel)
Infrastructure Library Packages
Core
Defined in MOF, reused (refined) in
UML
Infrastructure(Metamodel:Core)
Infrastructure (Metamodel:Core:Abstractions)
Infrastructure (Comment)
Description Generalizations Attributes Associations
Constraints Semantics Notation Presentation Options
Infrastructure (Comment)
Infrastructure(Metamodel:Profile) Mechanism for adapting existing metamodel
to have constructs for a specific domain or platform
Roadmap The OMG and UML The Documents
Infrastructure Superstructure Related (UML Distilled, Diagram Interchange,
OCL) Presentation Opportunities
Infrastructure
Superstructure
UML Distilled
Diagram Interchange
OCLMOF
CWM
Profiles
Superstructure – UML Metamodel
Major element categories Classifiers (describe set of objects) Events (describe an occurrence) Behaviors (describe set of possible
executions)
Superstructure – Runtime Model
All behavior is caused by actions executed by active objects (e.g., a class)
Behaviors occur because of discrete events Causality: objects respond to messages
generated by objects executing communication actions
Superstructure – Capabilities
Structure Classes (55) Components (4) Composite Structures (15) Deployments (12)
Behavior Actions (55) Activities (52) Common Behaviors (31) Interactions (31) State Machines (16) Use Cases (6)
Auxiliary Constructs Information Flows (2) Models (1) Primitive Types (4) Templates (20) Profiles (8)
Group of tightly coupled modeling concepts allowing representation according to a particular formalism – aka language unit
Superstructure – Classes
The Kernel Package imports:
The Kernel Package subpackages:
Superstructure – Classes
Superstructure – Classes Diagrams
Root Namespaces Multiplicities Expressions Constraints Instances Classifiers Features
Operations Classes DataTypes Packages Dependencies Interfaces AssociationClasses PowerTypes
Superstructure -- Profiles
Tailor UML metamodel for different platforms or domains J2EE vs .NET Real-time, Business Process Model, SysML
Leverage Profiles in Infrastructure and Meta-MetaModel
Leverage defined portions of UML in Superstructure
Roadmap The OMG and UML The Documents
Infrastructure Superstructure Related (UML Distilled, Diagram
Interchange, OCL) Presentation Opportunities
Infrastructure
Superstructure
UML Distilled
Diagram Interchange
OCLMOF
CWM
Profiles
UML Distilled – Martin Fowler Describes 14 diagrams Distills Superstructure
into English with commentary
Diagram Interchange
Friend to UML Elements::Element Graphical and model information are cleanly
separated XMI serialization SVG representation
Object Constraint Language (OCL)
Supplements UML diagrams Specifies invariants on classes and types Well-formed expressions Typed language Formal language with no side effects Can be used as a query language
Roadmap The OMG and UML The Documents
Infrastructure Superstructure Related (UML Distilled, Diagram Interchange,
OCL) Presentation Opportunities
Presentation Opportunities
Individual Diagrams Relationship between diagrams Metamodel UML and MDA Specific profiles UML tools Website papers