xtUML: Current and Next State of a Modeling Dialect

xtUML: Current and Next
State of a Modeling Dialect
Cortland Starrett
[email protected]
2
Outline
• 
• 
• 
• 
• 
• 
• 
• 
Introduc)on
Background
BriefHistory
KeyPlayers
CurrentState
RelatedModelingDialects
NextState
Conclusion
[email protected]
3
Introduc)on
[email protected]
4
Background
•  Shlaer-MellorMethod(xtUML)
–  subjectmaIers,separa)onofconcerns
–  data,control,processing
–  BridgePoint
•  datamodeling(ObjectOrientedAnalysis(OOA))
•  statemachines
•  ac)onlanguage
•  interpre)veexecu)on
•  modelcompila)on
[email protected]
5
History
• 1988, 1991 Shlaer-Mellor Method published by Stephen Mellor and Sally Shlaer.
• 2002 Executable UML established as Shlaer-Mellor OOA using UML notation.
• 2004 Commercial Corporate Proprietary Licensed.
• 2013 BridgePoint xtUML Editor goes open source under Apache 2.0.
• 2014 all of BridgePoint (including Verifier and model compilers) goes open
source under Apache and Creative Commons.
• 2015 Papyrus Industry Consortium and xtUML/BridgePoint contribution
• 2015 OSS of alternate generator engine (community building)
• 2016 Papyrus-xtUML (BridgePoint) Eclipse Foundation governance
• 2016 OSS contributions from industry, university and individuals
[email protected]
6
KeyPlayers
• 
• 
• 
• 
• 
• 
Saab
UKCrown
Agilent
Ericsson
Fuji-Xerox
Academia
[email protected]
7
CurrentState
•  bodyofIP
•  self-hos)ng
•  Papyrus(andPapyrusIndustryConsor)um)
[email protected]
8
RelatedDialects
•  MASL
•  Alf
•  UML-RT
[email protected]
9
NextState
•  PapyrusPlaSorm
•  ac)onlanguage
•  persistence
–  seman)cmodelpersistencemanifesto
•  hybridtextual/graphical
•  typesystem(DarwenandDate)
•  fUMLandAlf
•  roadmap:xtuml.org/xtumldayemd/
[email protected]
10
Conclusion
• 
• 
• 
• 
methodsound
bodyofIPdriving
communitygrowing
toolingontherise
[email protected]
11
Ques)onsandDiscussion
12
Papyrus-xtUML(BridgePoint)
• 
• 
• 
• 
• 
• 
• 
Overview
Demo
OSSLicense
ProcessforContribu)ng
Quality
RoadMap
WelcomeContribu)ons
[email protected]
13
xtUML–ExecutableTranslatableUML
Unified Modeling Language
−  Industry standard notation
−  Family of languages
“Executable UML”
−  Defines a method, including:
•  Semantics of diagrams
•  Relationship between diagrams
•  Execution rules
•  Order of construction
•  Path to implementation
DefectRemovalthroughExecu)on
(interpre)veexecu)onofpar)almodels)
We find many defects
through inspection, but…
…we find the rest by
testing the system.
Executable models enable early
and frequent testing.
xtUMLModelingFlow
Component Diagram
• Decompose the application
• Define Interfaces
Class Diagram
• Abstractions, associations
• Operations
State Diagram
•  Functional
lifecycle
•  Event handling
Executable Action Specification
Translatable • Processing
xtUMLEditor
•  Intelligentmodelentry,naviga)on
•  Smartac)on-languageeditors
•  Flexibleconfigura)onmanagement
xtUMLVerifier(Interpre)veExecu)on)
• 
• 
• 
• 
Interpre)veexecu)on
Interac)vedebugging
Anima)onofmodels
Connecttolegacy
■ Execute models before generating or writing any code
—  Run models immediately and incrementally
—  Remove defects early
xtUMLModelCompilers
• Build
– Customizetoolchainandbuildparameters
– GeneratebuildscriptforCMandbatch
– Exis)ngmodelcompilersforC,C++,SystemC
n 
Design patterns
n 
Translation rules
n 
Marking
—  Models of target
—  Templates
—  Query
—  Transform (M2M)
—  Populate templates
—  Like compiler flags
—  Determine which
patterns are applied
to each model
element
Details
• OSSLicensing:
– Eclipse(EPL)+Apache2.0
• Contribu)onProcess:
– JointhextUMLCommunitychatonSkype
– RuntheDeveloperGe/ngStarted(xtuml.org/par9cipate/developers)
– Selectanissue(oropenone);assignittoyourself
– Dothework,includingtestanddocumenta)on
– Submitapullrequest,followingEclipsegovernance
• QualityAssurance:
– WriIendevelopmentprocess
– Reviewsofintermediatework-products(e.g.,designnotes)
– Rununittestsuite
– FinalreviewandmergebycommunitycommiIer
• FutureDevelopment:
– Roadmapinissuetracker(andhere:xtuml.org/xtumldayemd/)
– Drivenbycustomercontractsandcommunitycontribu)ons
• Contribu)onsofpar)cularinterest:
– PapyrusPlaSormMigra)on
– Markingeditor
21
22
23