Model Driven Development with the Emerging UML 2.0 rOOts 2003 Trygve Reenskaug Mogul Technology http://heim.ifi.uio.no/~trygver trygver@ifi.uioi.no UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 1 of 19 OMG Analysis and Design Platform Task Force Mission: • To enable developers to better understand how to develop applications, including large-scale distributed systems. • To recommend architectures and technologies related to modeling and metamodeling to enable interchangeability of work products and interoperability of tools and repositories. • To promote standard modeling techniques that increase rigor and consistency of specifications. • To leverage and interoperate with other OMG specifications. • To liaise with related organizations with common goals. UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 3 of 19 The OMG A&D PTF Version 2 projects • MOF 2.0 - MetaObjectFacility Core + XMI +IDL + Versioning + Query/View/Transformation • UML 2.0 - Unified Modeling Language Infrastructure + Superstructure + OCL + Diagram Interchange Testing Profile + Modeling QoS + Fault Tolerance • HUTN - Human-Usable Textual Notation for UML EDOC Profile • CWM - Common Warehouse Metamodel Metadata Interchange Patterns + Web Services recommended - planned recommended june 03 - ??? UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 4 of 19 U2 Partners (U2P) Submitters: Alcatel, CA, Ericsson, HP, IBM, I-Logix, IONA, Kabira, Motorola, Oracle, Rational, SOFTEAM, Telelogic, Unisys New: Adaptive, Borland, Domain Architects, MEGA International, Project Technology UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 5 of 19 UML Superstructure Top Level Packages Common Behaviors Classes Profiles Auxiliary Constructs Use Cases State Machines Interactions Composite Structures Components Activities Deployments Actions Behavior UML 2.0 Structural © Trygve Reenskaug 2003 2016.05.29 Slide 6 of 19 Component Example: Garden Shed Use Case Model summerUse EndUser UML 2.0 winterUse © Trygve Reenskaug 2003 2016.05.29 Slide 7 of 19 Top Level Architecture User's Mental Model «Component» ShedAssembly NorthWall N W «Component» E SouthWall «Component» «Component» «Component» WestWall Roof EastWall «Component» SouthWall S «Component» WindowAssy «Component» Door Door From Above UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Window Slide 8 of 19 Product: Shed Nr. 15 UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 9 of 19 Garden Shed Use Case Model manufacture Manufacturer buy/sell Purchaser assemble TimberYard summerUse EndUser UML 2.0 winterUse © Trygve Reenskaug 2003 Assembler 2016.05.29 Slide 10 of 19 I Purchased Garden Shed at TimberYard «Component» ShedProduct TimberYard UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 11 of 19 Manufacturer's Classes with factory methods «Component» ShedProduct Manufacturer :115W[23] :14W[28] :15W[10] :117W[2] :112W[1] :115W[23] :12W[1] UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 12 of 19 Shed Package Contents «Component» ShedProduct Assembler :115W[23] :14W[28] :15W[10] :117W[2] :112W[1] :115W[23] :12W[1] UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 13 of 19 The blue, shrink-wrapped product isA Component «Component» ShedAssembly «Component» NorthWall End User «Component» «Component» «Component» WestWall Roof EastWall «Component» SouthWall «Component» WindowAssy «Component» Door Door UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Window Slide 14 of 19 Project Garden Shed The End Result UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 15 of 19 The COMBINE Project Model Driven Development • The overall goal of COMBINE is to support model-driven development of enterprise systems - using Components. • This requires further development of methods, infrastructures and tools as well as business solutions for modeling, designing, deploying, testing and running components successfully on an enterprise-wide scale. UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 16 of 19 COMBINE Development Process Overview Business Model Requirements Model Goal Model (Not UML) Business process model (Activity model. Manual-man/machine-automatic Architecture & Design activities) Business information model Stakeholders (Use case model) Main Use Case Model ModelSubsystem Use Case Models Detailed Use Case Models Platform Specific Model Generated Code & Deployment files Business Application Manual Hierarchical Component Models Component Information Models Interface Models Component Class Models GUI Design Sequence Diagrams www.opengroup.org/combine/ UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 17 of 19 A Vision for the Future UML++ as a System Development Language Smalltalk A Personal Information Environment Unified Modeling Language as an Object-Oriented Meta-Model Model Driven Development bridges gaps between Enterprise - Processes - People - Computers InfoBOARD An Information Environment for the Third Millennium UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 18 of 19 Thank You More info at heim.ifi.uio.no/~trygver UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 19 of 19 More details …. http://www.ifi.uio.no/~trygver trygve.reenskaug@ifi.uio.no Unified Modeling Language (UML). Object Management Group. UML 2.0. See OMG website: http://www.omg.org/ for current situation. Infrastructure. 3rd revised submission, 3 March 2003: ad/2003-03-01 Superstructure: 3rd revised submission, 10 April 2003: ad/2003-04-01 Model Driven Architecture See: http://www.omg.org/mda/ The COMBINE project is completed and its reporting website is under development. See: http://www.opengroup.org/combine/overview.htm UML 2.0 © Trygve Reenskaug 2003 2016.05.29 Slide 20 of 19