Richard Mark Soley, Ph.D. Chairman and CEO Leveraging Model Driven Architecture

Leveraging Model Driven
Architecture® for Model
Driven Systems Engineering
MARC 2004
Richard Mark Soley, Ph.D.
Chairman and CEO
Exploring MDA
• What is Model Driven Architecture (MDA)?
• Where did MDA come from?
• How does MDA affect software
development?
• Is there a general pattern?
• MDA for Systems Engineering
A Short OMG Review
The Global Information Appliance
Not too bad for electrical
power
…but a mess for telephony!
OMG’s Mission Since 1989
• Develop an architecture for (software)
integration, with standards focused on:
– reusability of components
– interoperability & portability
– basis in commercially available software
• Specifications freely available
• Implementations exist
• Member-controlled not-for-profit
Who Are OMG?
Alcatel
Fujitsu
Lockheed Martin
SAP
AT&T
General Dynamics MedicAlert
Sun Microsystems
ATLAS Elektronik
Hewlett Packard
MITRE
SWIFT
BAE Systems
Harris
Motorola
Telefonica
BEA
Hitachi
NASA
THALES
Borland
Hyperion
NEC
The Open Group
Boeing
IBM
NIST
Unisys
CA
IONA
Northrop Grumman US DoD
DaimlerChrysler
iO Software
Oracle
Visa
EDS
Kennedy Carter
Raytheon
W3
Adoption Process
 RFI (Request for Information) to
establish range of commercially
available software.
 RFP (Request for Proposals) to
gather explicit descriptions of
available software; Architecture
Board approves.
 Letters of Intent to establish
corporate direction.
 Task Force evaluation &
recommendation; simultaneous
evaluation by Business Committee.
OMG: An Consistent History
2003: UML 2
2001: MDA
1997: UML 1
1996: Vertical specs
1995: CORBA 2
1990: CORBA 1
1989: Founded
The MDA Initiative
1996: OMG Creates vertical initiatives
1997: Unified Modeling Language 1.0 arrives
2001: Model Driven Architecture Initiative begins
2003: Unified Modeling Language 2.0
2004: Verticals, Embedded
Generalizing the pattern
Model Driven Architecture
• An initiative of the Object Management Group
(OMG)
• A brand for tools based on OMG’s UML and
MOF open standards
• A set of specifications defined by OMG’s open,
worldwide process.
The Model Driven Architecture
• OMG’s Model Driven Architecture (MDATM) initiative is aimed
precisely at the problem of long-lived & expensive assets
• The opportunity is to increase your bottom line by integrating your
assets: software, data, people, processes, and others
• MDA standards support that goal by future-proofing your designs
• The MDA will help you integrate what you have today, and give
you an architecture to support the unexpected
• Integrate what you have, with what you build
• Models are the core; design is the focus
• MDA supports technology-independent design
• The aim: a 20-year architecture
• There is a general pattern that can be applied
Model Driven Architecture
OMG’s Modeling Suite
• Unified Modeling Language
– UMLTM remains the world’s only standardized object-oriented modeling
language, best-known part of the standard
• Common Warehouse Metamodel
– CWMTM, the integration of the last two data warehousing initiatives
• Meta-Object Facility
– MOFTM, the metadata integration standard
– Defines metadata & metadata services
• XML Metadata Interchange
– XMITM, the XML-UML standard
– Cornerstone of UML tool interoperability
– Actually just a collection of mapping rules XML/MOF
• Software Process Engineering Model (SPEM)
– Helps integrate development artifacts across methodologies
Development Concept
From Computation-Independent Model
To Platform-Independent Model
To Platform-Specific Model
Like most engineering activities, MDA-based
development is the activity of generating more
concrete implementations from higher-level (more
abstract) specifications. The number of “levels” is not
fixed, but rather a matter of one’s perspective.
Leveraging UML is Critical
• The Unified Modeling Language is the successor to the
dozens of OO A&D notations of the early ’90s.
• Result of an OMG adoption begun in ’96 and completed
in ’97
• Complemented with repository (MOF) and XML
Metadata specs (XMI)
• Standardization primed the market
– Over 200 books, in many languages
– Dozens of commercial tools
– Widely available training
• Supported by an open process
– UML 2.0 & MOF 2.0 developed openly
UML Usage Statistics
Current use of UML
18
8
All
Some
20
58
Nev er
Prev ious ly
Plans for future use use of UML
13
5
40
All
Some
Nev er
42
Uns ure
Source: BZ Research,
August 2004
Why Use UML?
Improve Project
69
Communications
Better Requirements
51
Match
40
Easier to maintain
39
Faster Development
25
Fewer Defects
0
Source: BZ Research,
August 2004
20
40
60
80
UML & MDA Books Proliferating
UML Certification Program
(OCUP)
OMG/UTI UML Certification Program
Started November 2003
Worldwide (English & Japanese)
Books available in Japanese & German
Three levels of accomplishment
Focused on UML 2.0
OMG
Endorsed!
MDA FastStart
Fast introduction to MDA technologies
– Initial project selection and planning
– Consulting
– Mentoring
– Training
– Tested, tried & true partners
MDA is Proven in Software Development
• Many excellent proofs-of-concept:
– Banks, railroads, trading, insurance,
manufacturing, healthcare, etc.
– Adopted by UN/CEFACT, SWIFT, ACORD,
HL7 and other key standards players
• Careful studies prove the point
– The Middleware Company (TMC)
– Electronic Data Systems (EDS)
MDA for Joint Warfighting
• Later today Captain Wilson will brief “A
Model Driven Architecture Approach to
Provide Joint Warfighting Capability”
– Joint Single Integrated Air Picture (SIAP) is a
complex enterprise integration problem
– MDA integrates representations of
battlespace across warfighting systems
– Core model is Integrated Architecture
Behavior Model
– Will be used across systems, platforms
The Middleware Company
• Two 3-person teams implementing Sun’s Pet
Store
– Typical 3-tier e-commerce, Sun Java Blueprints
• 35% cost savings using MDA tool
– Traditional tools: 508 man-hours
– MDA tools: 330 man-hours
TMC Conclusions
“We encourage organizations that wish to improve their
developer productivity to evaluate MDA-based
development tools for their projects, especially those
involving enterprise-class applications and web services
… the productivity benefits gained from the approach —
especially for work on subsequent applications — make
the effort significantly worthwhile.”
Most interesting result: bugs found by
traditional team were higher-level – MDA
tools allow shakeout of high-level design
much earlier in the development process.
http://www.compuware.com/dl/MDAComparisonTMCfinal.pdf
Electronic Data Systems study
• Three parallel implementations
– J2EE: 14,000 hand-coded lines
– .Net/C#: 4,000 hand-coded lines
– OptimalJ: 600 hand-coded lines
• Conversion from J2EE 1.1-2.0
– Projected: several months
– Using OptimalJ: 30 minutes
EDS Coding Results
16000
J2EE
.NET
MDA
14000
12000
10000
8000
6000
4000
2000
0
Total
UI
Mid-tier
Data-tier
Config
EDS Conclusions
“MDA helps organizations achieve agile and adaptable IT so they can
overcome ... business challenges. Through this evolutionary
approach, collaborative teams can enjoy a wide range of compelling
business benefits:
• Rapid inclusion of emerging technology benefits into existing
systems
• Reduced cost throughout the application life cycle
• Reduced development time for new applications
• Increased return on technology investments
• Improved application quality”
http://www.eds.com/thought/thought_leadership_agility_model_arch.pdf
MDA is a general pattern
• There is a general pattern to MDA:
– Discover multiple syntaxes for a single
semantic
– Derive & design a model which underlies that
semantic
– Develop transformations between
those models
Why Apply MDA?
• For vendors, leveraging products into
patents, systems engineering, business
process…
• For end-users, leveraging people, training
and process
• Discover, derive, design
• Retarget as technology changes
Business Process Modeling
• Beginning of 2005 will feature new
specifications:
– Business Process Metamodel
– BPM interface standards for interoperability
– Business Rules Model
UML in Patents?
• The most exciting area for extension:
UML as a business tool
• Patents in the US and Europe already
depend on UML to explain processes and
design
• Should UML be taught in
business schools? Yes!
MDA in Systems Engineering
• Late in 2004, or early 2005, a new UMLbased specification for Model-Driven
Systems Engineering (SE):
– Integrated hardware/software design
– Integrated planning/engineering
Motivation: Why Apply MDA
•
•
Systems Engineers need a common, robust language
for analyzing, specifying, designing, verifying and
validating systems
Many different modeling techniques already exist
– Behavior diagrams, IDEF0, N2 charts, …
•
General purpose language must:
– satisfy broad set of modeling requirements (behavior, structure,
performance, …)
– integrate with other disciplines (s/w, h/w, …)
– be scalable
– be adaptable to different SE domains
– be supported by multiple tools
A Joint OMG/INCOSE Project
• Joint INCOSE / Object Management Group (OMG)
Initiative to extend UML for SE
• Systems Engineering Domain Special Interest Group
kickoff in July ’01 thanks to Dave Oliver, with focus:
– Extending UML to to systems engineering (MDA->MDSE)
– Aligning with ISO AP-233 Systems Engineering data
interchange standard to support tool interoperability
• RFI (information gathering) began in ‘02
• RFP (definition) process began March ’03
• Already a successful partnership:
– INCOSE brings SE focus to OMG
– OMG brings MDA focus to INCOSE
Why Apply MDA to MDSE?
• UML is de facto standard within software engineering
community, and being applied to other communities
• UML and other OMG specs are extensible, and can
be adapted to support SE requirements
• UML tools and training are widely available
– Shared language for end-users
– Wider market for vendors
• Open OMG standardization process
supports UML customization for specific
domains
Joint INCOSE/OMG DSIG Charter
• Create a semantic bridge between ISO 10303-233
standard and ISO/IEC 19501 UML standard
• Create UML extended modeling language for specifying,
designing, and verifying complex systems using profiles,
or other extensibility mechanisms.
• Provide capability for rigorous transfer of specifications
and related information among tools used by systems,
software and hardware engineers
• Bridge the semantic gap, the professional
engineering discipline gap, and the training
gap that exists between systems
engineering and software engineering
SysML: The MDSE Standard
• First critical MDA standard focused on systems
engineering
• A UML extension that is a general purpose
modeling language for specifying, analyzing,
designing and verifying systems
• Activity chartered in ’01
• RFP issued in March ’03
• 1.0 adoption planned for 1Q05
• Prototypes already being shown
SysML Partners
•
Single joint submission to the OMG process, an
informal partnership of industry, vendors, government
– organized in May 2003 to respond to UML for
Systems Engineering RFP
– define Systems Modeling Language (SysML™) to
customize UML 2 to support the specification,
analysis, design, verification and validation of
complex systems
SysML Partners
• Industry
– American Systems, Astrium Space, BAE SYSTEMS, Boeing,
Deere & Company, Eurostep, Israel Aircraft Industries,
Lockheed Martin, Motorola, Northrop Grumman, oose.de,
Raytheon, THALES
• Tool Vendors
– Artisan, Ceira, Gentleware, IBM/Rational, I-Logix, PivotPoint
Technology, Popkin, Project Technology, 3SL, Telelogic, Vitech
• Liaisons and Organizations
– AP-233, CCSDS, EAST, INCOSE, Rosetta
• Government
– DoD/OSD, NASA/JPL, NIST
Modeling Requirements
•
Structure
– e.g., system hierarchy, interconnection
•
Behavior
– e.g., function-based behavior, state-based behavior
•
Properties
– e.g., parametric models, time property
•
Requirements
– e.g., requirements hierarchy, traceability
•
Verification
– e.g., test cases, verification results
•
Other
– e.g., trade studies, spatial relationships
Design Approach
•
Reuse and extend UML 2.0
– select the subset of UML 2.0 that is reusable for SE
applications
– add new constructs and diagrams needed for SE
– UML2++--
•
AP-233 alignment
– align with evolving AP-233 SE Data Interchange
Standard
•
Incremental development
– extend the language incrementally, using SE
feedback to ensure new extensions are valid
Finishing Now
• INCOSE/OMG Partnership is nearing its
first product
–
–
–
–
Joint SysML specification
Joint ownership of name & spec
“Finalization” and revision
Next steps: find other specs where SE
influence is important:
• Simulation & test
• MOF
• Executable UML
Don’t Forget!
• See the demonstrations in the demo table area,
including SysML prototype
• Captain Wilson talk on MDA for Warfighting
today
• Mark Schaeffer keynote tomorrow
• Leverage your INCOSE voice at OMG
To Get More Information
•
•
•
•
•
SysML Partners: http://www.sysml.org/
OMG SE DSIG: http://syseng.omg.org/
MDA Information Page: http://www.omg.org/mda/
OMG General Information: http://www.omg.org/
Contact the Author: [email protected]
http://www.omg.org/~soley/mdase.ppt