1 / 43

Executable UML

Executable UML. Presented by: Rizi Aznita Evelyn Brannock. MDA. From OMG Provides an open, vendor-neutral approach that separates business and application logic from underlying platform technology UML is a key foundation Platform independent models document the.

romonaj
Download Presentation

Executable UML

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Executable UML Presented by: Rizi Aznita Evelyn Brannock

  2. MDA • From OMG • Provides an open, vendor-neutral approach that separates business and application logic from underlying platform technology • UML is a key foundation • Platform independent models document the business functionality • Enables interoperability both within and across platform boundaries

  3. Raising the Level of Abstraction

  4. MDA • Three primary viewpoints for modeling • The Computation Independent Model (CIM) • Precise business model, oriented to stakeholders, uncommitted to specific algorithms or system boundary. Also known as a Domain Model. • The Platform Independent Model (PIM) • Precise, computationally complete (executable), uncommitted to any specific platform (portable), oriented to stakeholders (prototyping) and developers (a testable specification), a long life asset • The Platform Specific Model (PSM) • Precise, complete, conforms to constraints of a specific (class of) platform(s), probably generated from a PIM, oriented to technology experts

  5. Action Semantics Consortium

  6. A Perspective on Executable UML One effect of wide adoption of Executable UML will be a marked division of labor and skill sets within the developer community. • Modelers well versed in both the UML and in domain-specific knowledge will build applications; • Developers with lower-level technical skills and deep knowledge of computer science will build model compilers and VEEs (Virtual Execution Environments). • The model compiler and its associated VEE are, in effect, a reusable systems architecture.… Gerry Boyd, Director of Research at NCS Technologies

  7. 2 What is Executable UML? • xUML is • An executable version of UML, with…. • Clearly defined simple model structure • A precise semantics for actions • A compliant action specification language • An accompanying process • A proven development process, oriented towards • Executable modeling • Large scale reuse • Pattern based design

  8. What is Executable UML? • Supported by

  9. What is Executable UML? • The primary models • Action Semantics extend the UML meta-model to express “actions” • Derived attributes • Constraints • Parallel execution • Suited to translation • Function/data flow based

  10. MDA Development Life Cycle

  11. Overview of xUML Process

  12. xUML Development

  13. (part of) xUML (part of) Design Metamodel (object-based) (part of) Ada 83 Metamodel Class Class Package Attribute PrivateDatum BodyVariable Signal PublicMethod SpecSubprogram Define Mapping Define Mapping xUML Metamodel Design Metamodel Implementation Metamodel MDA with xUML: PIM to PSM Mappings • The xUML process supports the fully automatic transformation of PIMs to PSMs • Based on a specification of a mapping from the rigorously defined PIM (expressed in xUML) to the PSM

  14. Two Approaches • Kennedy Carter • Accelerated Technology’s BridgePoint

  15. About Kennedy Carter • Specialize in software design automation for systems where performance and reliability are paramount. • Deploy the xUML development process and provide a complete solution for applying these techniques to real projects, including intelligent tools and a comprehensive range of training and consultant services

  16. Use Case Diagram for a Simple Calendar Application (SCA) • Implement Simple Calendar Application using iUML

  17. SCA Domain Model

  18. SCA Sequence Diagram

  19. SCA Sequence Diagram

  20. SCA Sequence Diagram

  21. SCA Sequence Diagram

  22. SCA Class Diagram

  23. SCA Class Collaboration Diagram

  24. SCA State Diagram

  25. SCA State Machine for User Class

  26. SCA ASL Code

  27. Simulator Results - Show Objects in Calendar Class

  28. User Objects Defined by Initialization

  29. Load Add Event Test Method for Simulation

  30. After Execute ‘Add New Event’ Test

  31. iUML Simulator Features • Interactive debugging • Data browsing • Incremental development • Record / Playback • Breakpoints • Regression testing • Filtering simulation output • Signal Reordering

  32. Simulation Process

  33. About Accelerated Technology • Division of Mentor Graphics • Stephen Mellor - chairs the Analysis and Design Task Force Working Group on MDA • Offers Nucleus BridgePoint XTUML: • object-oriented approach • used on over 1400 real-time and technical projects • life-critical implanted medical devices • DOD flight-critical systems • 24x7 performance-critical fault-tolerant telecom systems • highly resource-constrained consumer electronics • large-scale discrete-event simulation systems.

  34. XTUML Development Process • Concurrent software architecture design and application development • Modeling activities are well defined • each has clear entry and exit gates • final gate is application model execution

  35. XTUML Notation • UML (Unified Modeling Language) - rich set of notations that contains a large number of modeling constructs. • Requires significant ramp-up • Same concept can be represented in a variety of ways • XTUML is a carefully selected streamlined subset of UML that: • Supports execution-based and translation-based development • Provides a predefined methodology • Minimizes the learning curve associated with UML notation • 3 primary components: • Class diagrams • State diagrams • Procedure specifications -- uses Object Action Language • Additional diagrams (e.g.collaboration diagrams) are automatically generated from the three primary components.

  36. Object Action Language Editor • Powered by Eclipse

  37. Translation • Translates application models into 100 percent, target-executable code. • Uses “marks” • Provides the source for translation rules • Contains 3 pieces: • A set of design patterns and translation rules (archetypes) • A translation engine • A run-time library

  38. Integration, Test and Maintenance • Testing involve “pre-testing” • Many defects are eliminated before integration and test • Application models are executable and testable in the PIM state • Translation eliminates all hand-coded defects. • Defects are traced to, and repaired at, their source • The software architecture design or the application model • No code-level modifications • Code always reflects the latest fixes made to the design or application model • Performance tuning is accomplished by modifying the translator rules and patterns. • Changes made to the translator automatically propagate throughout the system code

  39. Model-level Debugging and Testing

  40. Differences between Executable UML and Elaborative (Traditional UML) Development

  41. Differences between XTUML and Elaborative Development

  42. Executable UML • A whole new paradigm….. • Questions??

  43. References • http://www.omg.org/mda • www.kc.com • http://www.mentorgraphics.com • Model Driven Architecture with Executable UML – Francis Raistrick,,John Wright, Colin Carter, Ian Wilkie – Cambridge University Press 2004. • Executable UML A Foundation for Model-Driven Architecture – Mellor and Balcer – Addison Wesley 2002. • MDA Explained: The Model Driven Architecture--Practice and Promise – Kleppe, Warmer, Bast - Addison-Wesley Professional 2003. • Model Driven Architecture: Applying MDA to Enterprise Computing - Frankel - Wiley 2003. • Executable UML - Leonardo Galvão Cavalcanti, 3/31/2004 – Master of Science Thesis • Executable/Translatable UML in Computing Education - Shayne Flint, Henry Gardner, Clive Boughton, - Sixth Australasian Computing Education Conference (ACE2004), Dunedin, New Zealand. Conferences in Research and Practice in Information Technology, Vol. 30 - 2004

More Related