+ All Categories
Home > Documents > UML 2.0 Roadmap: What Should Systems Engineers Expect? Cris Kobryn Morgan Björkander...

UML 2.0 Roadmap: What Should Systems Engineers Expect? Cris Kobryn Morgan Björkander...

Date post: 19-Dec-2015
Category:
View: 213 times
Download: 0 times
Share this document with a friend
Popular Tags:
33
UML 2.0 Roadmap: What Should Systems Engineers Expect? Cris Kobryn Morgan Björkander cris . kobryn @ telelogic .com morgan .bjö[email protected] U2P-SEDSIG UML for Systems Engineering Workshop Chicago, USA September 12, 2002
Transcript

UML 2.0 Roadmap:What Should Systems Engineers Expect?

Cris Kobryn Morgan Bjö[email protected] morgan.bjö[email protected]

U2P-SEDSIG UML for Systems Engineering Workshop

Chicago, USASeptember 12, 2002

UML 2.0 Roadmap 2

Overview

What is UML? Why is UML important? Why UML 2.0? UML 2.0 status Featured proposal:

U2 Partners’ submission Issues User benefits

UML 2.0 Roadmap 3

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

What is UML?

UML 2.0 Roadmap 4

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 industry’s dominant modeling

language currently a de facto standard adopted by the Object

Management Group, the world’s largest software consortium

difficult to find a software project with > 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

Why is UML important?

UML 2.0 Roadmap 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

UML 2.0 Roadmap 6

UML 2.0 RFPs

Diagram Interchange

OCLInfrastructure

Defines basic constructs to specify UML and to customize it for specific domains (e.g., real-time)

Superstructure

Defines user-level constructs to specify structure and behavior of systems (e.g., class diagrams, sequence diagrams)

UML 2.0 Roadmap 7

UML 2.0 Schedule

Feb1/02 12/02

Mar Apr May Jun Jul Aug Sep Oct Nov Dec

3 June 02UML 1.4.1final report

3 Jun 02UML2

Infrastructure& OCL revisions

9 Sept 02UML2

Superstructure &Diagram Interchange

revisions;Infrastructure & OCL

2nd revisions25 Nov 02UML 1.x

Action Semanticsfinal report

28 Oct 02UML2

Superstructure &Diagram Interchange

2nd revisions

UML 2.0 Roadmap 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)

UML 2.0 Roadmap 9

Goals: Superstructure (cont’d)

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

UML 2.0 Roadmap 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)

UML 2.0 Roadmap 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

UML 2.0 Roadmap 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

UML 2.0 Roadmap 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

UML 2.0 Roadmap 14

Language Architecture (with compliance levels)

UML

Basic

Common

<<import>>

Complete

<<import>>

Foundation

<<import>>

Level 3

Level 2

Level 1

Level 0

UML 2.0 Roadmap 15

Examples Proposed notation for new UML

2.0 constructs work in progress

UML 2.0 Roadmap 16

Use cases Notationally, use

cases are not changed much from UML 1.4

InsertCoin

ValidateCoinUser

VendingMachine

«extend»

ServiceManRefill

UML 2.0 Roadmap 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)

UML 2.0 Roadmap 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

VendingMachineUser

Insert(coin)

Display(price)

RejectCoin()

alt

else

UML 2.0 Roadmap 19

Decomposition To hide

information, a lifeline can be subdivided into more detailed sequences

sd Overview

VendingMachine ref

Decomposition

Insert(coin)

RejectCoin()

User

sd Decomposition

Detector

Controller

RejectCoin()

create

Insert(coin)

ValidateCoin()

UML 2.0 Roadmap 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

VendingMachineUser

Display(price)

ref

ChooseProduct

ref

ValidateCoin

UML 2.0 Roadmap 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

ValidateCoinref

Initiateref

[else][price=0]

DispenseProductref

UML 2.0 Roadmap 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

VendingMachine

Display

«interface» Display

Display() NoChange() OutOfOrder()

InsertCoin

Required interfaceProvided interface

Class

UML 2.0 Roadmap 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

CounterCounter

DetectorInsertCoin

CoinControl,Counter

Maintenance

CoinControl

Display

portcomposite port

pCtrl

UML 2.0 Roadmap 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

VendingMachine

InsertCoin

Display

:Detector

Connector

PartClass

:Counter

:Controller

InsertCoin

pCtrl Counter

CoinControl

Display

UML 2.0 Roadmap 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

Sensor

Maintenance

:Monitor[*]

Behavioral ports

Regulator

InputpSpM

SensorInitiation

Behavior (of Sensor)

UML 2.0 Roadmap 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

Payment

Coin(value) Bill(value)

sum = sum + value

display.Insert(price-sum)

[true]

display.Change(sum-price)

[false]

ejector.Change(sum-price)

Payment Change

sum < price

UML 2.0 Roadmap 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

UML 2.0 Roadmap 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

UML 2.0 Roadmap 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

UML 2.0 Roadmap 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

UML 2.0 Roadmap 31

Wrap Up UML is used extensively inside and outside

OMG common language for OMG’s Model Driven

Architecture de facto standard de jure standard

UML’s 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

UML 2.0 Roadmap 32

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.

Web Resources

UML 2.0 Roadmap 33

Mailing Lists [email protected] [email protected] [email protected]

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 mailto:[email protected]?subject=UML2 mailto:morgan.bjö[email protected]?subject=UML2

Other Resources


Recommended