UML 2.0 Roadmap - PowerPoint
Shared by: HC120704122531
-
Stats
- views:
- 16
- posted:
- 7/4/2012
- language:
- English
- pages:
- 33
Document Sample


UML 2.0 Roadmap:
What Should Systems Engineers Expect?
Cris Kobryn Morgan Björkander
cris.kobryn@telelogic.com morgan.björkander@telelogic.se
U2P-SEDSIG
UML for Systems Engineering Workshop
Chicago, USA
September 12, 2002
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 2
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
UML 2.0 Roadmap 3
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 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
UML 2.0 Roadmap 4
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 5
UML 2.0 RFPs
Superstructure Diagram Interchange
Defines user-level constructs to specify
structure and behavior of systems (e.g., class
diagrams, sequence diagrams)
Infrastructure OCL
Defines basic constructs to specify UML
and to customize it for specific domains
(e.g., real-time)
UML 2.0 Roadmap 6
UML 2.0 Schedule
UML 2.0 Roadmap 7
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 8
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 9
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 10
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 11
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 12
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 13
Language Architecture (with compliance levels)
UML
Level 3
Complete
<<import>>
Level 2
Common
<<import>>
Level 1
Basic
<<import>>
Level 0
Foundation
UML 2.0 Roadmap 14
Examples
Proposed notation for new UML 2.0
constructs
work in progress
UML 2.0 Roadmap 15
Use cases
Notationally, use
cases are not
changed much from
UML 1.4 VendingMachine
InsertCoin
«extend»
User
ValidateCoin
Refill ServiceMan
UML 2.0 Roadmap 16
Interactions (sequences)
Purpose:
tracing
capturing sd Trace
requirements :User :VendingMachine
Display(1)
test cases and test Insert(.10)
suites Display(.90)
Insert(.50)
Display(.40)
Insert(.50)
UML 2.0 Roadmap 17
Variations in sequence diagrams
Express variations
parallelism and
alternatives sd ValidateCoin
iterations and User VendingMachine
optionality Insert(coin)
exceptions
Dramatically reduces
alt
Display(price)
the number of else
RejectCoin()
sequence diagrams
required to express
system functionality
UML 2.0 Roadmap 18
Decomposition
To hide information,
a lifeline can be
subdivided into
more detailed sd Decomposition
sequences Detector
create
Controller
sd Overview
Insert(coin)
User VendingMachine ValidateCoin()
ref Decomposition
RejectCoin()
Insert(coin)
RejectCoin()
UML 2.0 Roadmap 19
Referencing sequences
To avoid
unnecessary sd BuyScenario
duplication, it is User VendingMachine
possible to refer to ref
already existing ChooseProduct
sequence diagrams Display(price)
a way to quickly ref
create new scenarios ValidateCoin
(e.g., tests and test
suites)
UML 2.0 Roadmap 20
Organizing sequences
It is possible to
organize sequence sd Overview
diagrams into flows ref
to indicate how they
Initiate
fit together ref ValidateCoin
overviews [price=0] [else]
combine interactions ref DispenseProduct
in different ways to
create new scenarios
UML 2.0 Roadmap 21
Component-based development
Interface-based Encapsulation
design the class is viewed a
required and ”black box”
provided interfaces also need to know
allows each class to how the interfaces
be defined as a may be used
stand-alone entity
Class «interface»
Display
VendingMachine
InsertCoin Display()
NoChange()
OutOfOrder()
Provided interface Display
Required interface
UML 2.0 Roadmap 22
Specifying communicating classes
Only classes with A port serves
matching interfaces several roles:
are allowed to acts as an interaction
communicate with point of the class
each other gives a view of the
contracts class
composite port
Controller
CoinControl
port
Display
pCtrl Maintenance
Detector
InsertCoin Counter
CoinControl, Counter
Counter
UML 2.0 Roadmap 23
Assembling classes
A class can be used Connectors are used
as a part of an as contextual
internal structure of associations
another class represents
hierarchical communication paths
decomposition
Class Part
VendingMachine
pCtrl Counter
:Detector :Counter
InsertCoin
InsertCoin
CoinControl
:Controller
Display
Display Connector
UML 2.0 Roadmap 24
Internal structure and behavior
Behavior can be Allows the container
mixed with the to interact with the
internal structure parts
e.g., a state machine
Behavioral ports Behavior (of Sensor)
Sensor
Maintenance
SensorInitiation
pM pS Input
:Monitor[*]
Regulator
UML 2.0 Roadmap 25
A behavior (state machine)
Action semantics
makes it possible to Payment
execute models
treat UML as a high- Coin(value) Bill(value)
level programming
language sum = sum + value
sum < price
A simple state
[true] [false]
display.Insert display.Change
machine (price-sum) (sum-price)
transition-centric ejector.Change
(sum-price)
view
Payment Change
UML 2.0 Roadmap 26
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 27
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 28
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 29
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 30
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 31
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.
UML 2.0 Roadmap 32
Other Resources
Mailing Lists
uml2-wg@omg.org
uml-rtf@omg.org
u2p-info@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
mailto:cris.kobryn@telelogic.com?subject=UML2
mailto:morgan.björkander@telelogic.se?subject=UML2
UML 2.0 Roadmap 33
Get documents about "