UML 2.0 Roadmap: What Should Systems Engineers Expect? - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

UML 2.0 Roadmap: What Should Systems Engineers Expect?

Description:

What Should Systems Engineers Expect? Cris Kobryn Morgan Bj rkander cris.kobryn_at_telelogic.com morgan.bj rkander_at_telelogic.se U2P-SEDSIG UML for Systems Engineering ... – PowerPoint PPT presentation

Number of Views:126
Avg rating:3.0/5.0
Slides: 34
Provided by: CrisK2
Category:

less

Transcript and Presenter's Notes

Title: UML 2.0 Roadmap: What Should Systems Engineers Expect?


1
UML 2.0 RoadmapWhat Should Systems Engineers
Expect?
  • Cris Kobryn Morgan Björkander
  • cris.kobryn_at_telelogic.com morgan.björkander_at_telel
    ogic.se
  • U2P-SEDSIG UML for Systems Engineering
    WorkshopChicago, USASeptember 12, 2002


2
Overview
  • What is UML?
  • Why is UML important?
  • Why UML 2.0?
  • UML 2.0 status
  • Featured proposalU2 Partners submission
  • Issues
  • User benefits

3
What is UML?
  • Unified Modeling Language is a visual language
    for specifying, constructing, and documenting
    systems
  • Derived from synthesis of Booch, OMT and
    Objectory modeling languages
  • roots can be traced to ER data modeling,
    Specification and Description Language (SDL),
    Message Sequence Charts (MSCs), Statecharts, etc.
  • Adopted by OMG in November 1997 as UML 1.1
  • most recent minor revision is UML 1.4, adopted
    May 2001
  • next planned major revision is UML 2.0, scheduled
    to be completed during 2002

4
Why is UML important?
  • As software architectures grow in size and
    complexity so does the need for software models
  • compare building blueprints and visual CAD
  • UML is the software industrys dominant modeling
    language
  • currently a de facto standard adopted by the
    Object Management Group, the worlds largest
    software consortium
  • difficult to find a software project with gt 10
    developers who do not use UML in some way to
    specify their architecture
  • UML has enormous growth potential
  • lingua franca across the software lifecycle
    (requirements through testing) and across
    platforms and domains
  • executable UML can automate software development,
    reducing chasm between analysis design and
    implementation

5
Why UML 2.0?
  • Although UML 1.x has enjoyed widespread
    acceptance, it shortcomings include
  • excessive size and gratuitous complexity
  • uneven precision
  • inadequate support for components and executable
    models
  • limited customizability
  • non-standard implementations
  • lack of support for diagram interchange
  • lack of support for systems engineering
  • A major revision is required to address these
    issues

6
UML 2.0 RFPs
Superstructure
Diagram Interchange
Defines user-level constructs to specify
structure and behavior of systems (e.g., class
diagrams, sequence diagrams)
OCL
Infrastructure
Defines basic constructs to specify UML and to
customize it for specific domains (e.g.,
real-time)
7
UML 2.0 Schedule
8
Goals
  • Restructure and refine the language to make it
    easier to apply, implement and customize
  • improve precision and conciseness
  • practice reuse
  • Infrastructure goals
  • Define a metalanguage kernel that
  • defines (bootstraps) the UML language
  • can be reused to define other metamodels (e.g.,
    Meta Object Facility, Common Warehouse Model)
  • Provide more powerful mechanisms to customize UML
  • allow users to define language dialects for
    platforms (e.g., J2EE, .NET) and domains (e.g.,
    telecom, finance, systems engineering)

9
Goals Superstructure (contd)
  • Improve support for component-based development
  • specify both platform-independent components
    (e.g., business components) and platform-specific
    components (e.g., EJB, COM)
  • Refine architectural specification capabilities
  • support hierarchical composition of parts with
    interfaces (compare SDL blocks and processes)
  • Enhance support for real-time development
  • revise state machines diagrams to make more
    scaleable and generalizable, and able to support
    a transition-centric view
  • Improve support for business process modeling
  • update activity diagrams to support more flexible
    parallelism and furnish more I/O options
  • Increase scalability and precision of other
    behavioral constructs
  • augment sequence diagrams with advanced contructs
    from MSCs that can be combined and integrated
    with other behavior
  • Deepen precision so that it better supports
    executable models.
  • Review all UML 1.x constructs and diagrams
  • refine, retire or deprecate as appropriate

10
Featured Proposal U2 Partners
  • Insufficient time to review all proposals
  • please download all submissions and judge for
    yourself
  • U2 Partners proposal selected because
  • work of the largest submission team (40
    submitters and supporters)
  • balanced approach to integrating language
    Infrastructure with Superstructure
  • architecturally aligned with other industry
    standards (e.g., ITU-T languages, EXPRESS, AP-233)

11
U2 Partners
  • A consortium of UML vendors and users dedicated
    to making UML easier to apply, implement and
    customize
  • Submitters
  • Alcatel, CA, ENEA Business Software, Ericsson,
    Fujitsu, HP, IBM, I-Logix, IONA, Kabira,
    Motorola, Oracle, Rational, SOFTEAM, Telelogic,
    Unisys, WebGain
  • Supporters
  • Advanced Concepts Center LLC, Ceira Technologies,
    Commissariat à L'Energie Atomique, Compuware,
    DaimlerChrysler, Embarcadero Technologies, France
    Telecom, Fraunhofer FOKUS, Fujitsu, Gentleware,
    Intellicorp, Jaczone, Kennedy Carter, KLOCwork,
    Lockheed Martin, Mercury Computer, MSC.Software,
    Northeastern University, Popkin Software,
    Proforma, Sims Associates, Syntropy Ltd.,
    University of Kaiserslautern, VERIMAG, and
    88solutions
  • Largest and most experienced submission team,
    includes many veterans of UML Partners submission
    team for UML1
  • Collaborating with other UML2 submission teams to
    integrate their best ideas

12
U2 Partners UML2 Proposal Status
  • UML Infrastructure v. 2.0 R1
  • defines basic constructs to specify UML and to
    customize it for specific domains (e.g., Systems
    Engineering) and platforms (e.g., J2EE, .NET)
  • 2nd revised proposal to be presented to OMG in
    Sept. 2002
  • UML Superstructure v. 2.0 beta R1
  • defines user-level constructs to specify
    structure and behavior of systems (e.g., class
    diagrams, sequence diagrams)
  • revised proposal to be presented to OMG in Sept.
    2002
  • 2nd revised proposal to be presented to OMG in
    Nov. 2002

13
Language Formalism
  • Refinement of UML 1.x formalism
  • abstract syntax
  • constraints
  • semantics (natural language)
  • Integrated semantics and notation
  • straightforward mapping between notation and
    semantics
  • New sections for semantic variation points,
    backward compatibility, etc.
  • pragmatic information previously lacking

14
Language Architecture (with compliance levels)
15
Examples
  • Proposed notation for new UML 2.0 constructs
  • work in progress

16
Use cases
  • Notationally, use cases are not changed much from
    UML 1.4

VendingMachine
InsertCoin
extend
User
ValidateCoin
Refill
ServiceMan
17
Interactions (sequences)
  • Purpose
  • tracing
  • capturing requirements
  • test cases and test suites

sd Trace
VendingMachine
User
Display(1)
Insert(.10)
Display(.90)
Insert(.50)
Display(.40)
Insert(.50)
18
Variations in sequence diagrams
  • Express variations
  • parallelism and alternatives
  • iterations and optionality
  • exceptions
  • Dramatically reduces the number of sequence
    diagrams required to express system functionality

sd ValidateCoin
VendingMachine
User
Insert(coin)
alt
Display(price)
else
RejectCoin()
19
Decomposition
  • To hide information, a lifeline can be subdivided
    into more detailed sequences

sd Decomposition
Detector
create
Controller
sd Overview
Insert(coin)
VendingMachine ref Decomposition
User
ValidateCoin()
RejectCoin()
Insert(coin)
RejectCoin()
20
Referencing sequences
  • To avoid unnecessary duplication, it is possible
    to refer to already existing sequence diagrams
  • a way to quickly create new scenarios (e.g.,
    tests and test suites)

sd BuyScenario
User
VendingMachine
ref
ChooseProduct
Display(price)
ref
ValidateCoin
21
Organizing sequences
  • It is possible to organize sequence diagrams into
    flows to indicate how they fit together
  • overviews
  • combine interactions in different ways to create
    new scenarios

sd Overview
ref
Initiate
ref
ValidateCoin
else
price0
ref
DispenseProduct
22
Component-based development
  • Interface-based design
  • required and provided interfaces allows each
    class to be defined as a stand-alone entity
  • Encapsulation
  • the class is viewed a black box
  • also need to know how the interfaces may be used

Class
interface Display
VendingMachine
Display() NoChange() OutOfOrder()
InsertCoin
Display
Provided interface
Required interface
23
Specifying communicating classes
  • Only classes with matching interfaces are allowed
    to communicate with each other
  • contracts
  • A port serves several roles
  • acts as an interaction point of the class
  • gives a view of the class

Controller
composite port
CoinControl
port
Display
Detector
pCtrl
Maintenance
Counter
InsertCoin
CoinControl,Counter
Counter
24
Assembling classes
  • A class can be used as a part of an internal
    structure of another class
  • hierarchical decomposition
  • Connectors are used as contextual associations
  • represents communication paths

Class
Part
VendingMachine
Counter
Detector
pCtrl
Counter
InsertCoin
InsertCoin
Controller
CoinControl
Display
Display
Connector
25
Internal structure and behavior
  • Behavior can be mixed with the internal structure
  • e.g., a state machine
  • Allows the container to interact with the parts

Behavioral ports
Behavior (of Sensor)
Sensor
Maintenance
SensorInitiation
Input
pS
Monitor
pM
Regulator
26
A behavior (state machine)
  • Action semantics
  • makes it possible to execute models
  • treat UML as a high-level programming language
  • A simple state machine
  • transition-centric view

27
Support for Systems Engineering
  • Working document
  • Requirements Analysis For Systems Engineering
    (SE) UML (draft v0.3 OMG doc syseng/02-07-01)
  • System composition and decomposition
  • structured classifiers (classes, components) with
    internal structures
  • subsystems
  • Views
  • allow system to be defined from different
    perspectives (viewpoints) appropriate for the
    various stakeholders (e.g., systems engineer,
    business analyst, designer, programmer, end user)
  • Systems Engineering profile
  • Profile as UML customization (UML dialect) for a
    particular platform, domain or method
  • e.g., HardwareComponent as stereotype or subclass
    of Component metaclass

28
General Issues
  • Second language syndrome
  • feature set features added features retired
    0.5 features deprecated
  • Will UML 2.0 Be Agile or Awkward, CACM, Jan.
    2002
  • Paradigm evolution objects ? components
  • reduce impedance between object and component
    paradigms
  • simple classes vs. structured classes vs.
    components
  • Language reuse
  • libraries, profiles, and metamodels
  • InfraststructureLibrary reused by UML2 and other
    future OMG Model Driven Architecture standards
    (e.g., MOF2, CWM2)
  • Multiple views
  • compare building and hardware blueprints and
    schematics
  • requires refinement and traceability (audit
    trails) across views
  • Executable models
  • integration of UML 1.x Action Semantics
  • full integration vs. optional compliance point

29
System Engineering Issues
  • Relationships among core concepts and constructs
  • definitions for system, subsystem, component, and
    part need to be recursive and complementary
  • need to distinguish clearly between physical
    system, system (being modeled), system boundary,
    model, and view
  • need to precisely define kinds of aggregation and
    composition (white, black and greyscale
    diamonds)
  • Scope creep
  • what is scope of SE?
  • what is general purpose UML, what is appropriate
    for a SE profile?
  • separating language issues from
    method/process/approach issues
  • Getting lost in metaspace
  • profile vs. metamodeling approaches
  • MDA and MOF2 alignment

30
User Benefits
  • UML 2.0 marks a major milestone in model-driven
    development
  • significantly more mature than UML 1.x
  • more precise, concise and consistent
  • Major improvements include enhanced support for
  • component-based development
  • architectural specifications of large, complex
    systems
  • business process modeling (workflows)
  • executable models
  • UML 2.0 Action Semantics can realize the
    potential of model-driven development
  • automate generation of production quality code
  • automate system validation verification
    throughout software lifecycle

31
Wrap Up
  • UML is used extensively inside and outside OMG
  • common language for OMGs Model Driven
    Architecture
  • de facto standard ? de jure standard
  • UMLs evolution is following a well-planned
    roadmap
  • UML 1.4 marks end of significant changes for UML
    1.x
  • UML 1.4.1 is a maintenance revision
  • UML 2.0 is next planned major revision
  • U2 Partners submission for UML 2.0 proposes many
    improvements that will benefit users
  • improved support for component development,
    architectural specifications, business process
    modeling, and executable models
  • realize the potential of model-driven development

32
Web Resources
  • U2 Partners
  • www.u2-partners.org
  • OMG UML Resources
  • www.uml.org
  • UML Forum
  • www.uml-forum.com
  • contains links to the UML Revision Task Force and
    UML 2.0 Working Group webs as well as other UML
    resources.

33
Other Resources
  • Mailing Lists
  • uml2-wg_at_omg.org
  • uml-rtf_at_omg.org
  • u2p-info_at_yahoogroups.org
  • Conferences Workshops
  • UML 2002, Dresden, Germany, Sep. 30-Oct. 4, 2002.
  • OMG UML Workshop, San Francisco, Oct. 21-24,
    2002.
  • UML Forum/Tokyo 2003, Tokyo, dates TBD.
  • UML Track at SD West 2003, San Jose, dates TBD.
  • Questions
  • mailtocris.kobryn_at_telelogic.com?subjectUML2
  • mailtomorgan.björkander_at_telelogic.se?subjectUML2
Write a Comment
User Comments (0)
About PowerShow.com