1 / 37

Model Driven Development

Model Driven Development. DoDAF/ModAF/ SysML and AP233. Architecture DODAF MODAF Modelling UML SysML Interchange AP 233 XMI. DoDAF. Architecture:

spencer
Télécharger la présentation

Model Driven Development

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. Model Driven Development

  2. DoDAF/ModAF/ SysML and AP233 • Architecture • DODAF • MODAF • Modelling • UML • SysML • Interchange • AP 233 • XMI

  3. DoDAF • Architecture: • “The structure of components, their relationships and the principles and guidelines governing their design and evolution over time. “ DoD • Public Documents • Volume 1 Architectural Framework • Volume 2 Product Description • Deskbook

  4. 3 views

  5. UML 1.4 • Version of Unified Modelling language in most widespread use • Wide set of support tools: • IBM/Rational Rose, Telelogic Tau, System Architect, QSEE.. • Arises from Object-Oriented Software development • Previously data and code were kept separate, objects combine the two • Software objects mimic real world things • Objects have a type or class • Viewpoints • Structure • Class; object; component ; deployment • Behaviour • Use case; state-chart; sequence; collaboration; activity

  6. UML 2.0 • UML 2.0 includes features which are helpful in Systems Engineering1: • Allows for more flexible System, Subsystem and Component representations • Structural decomposition • e.g. Classes, Components, Subsystems • System and component interconnections • via Parts, Ports, Connectors • Behavior decomposition • e.g., Sequences, Activities, State Machines • Enhancements to Activity diagrams • e.g. data and control flow constructs, activity partitions/swim lanes 1Kobryn and Friedenthal, Systems Modeling Language™ Overview, 2003

  7. UML 2.0 • UML 2.0 includes features which are helpful in Systems Engineering (contd.) • Enhancements to Interaction diagrams • e.g., alternative sequences, reference sequences, interaction overview, timing diagrams • Support for information flows between components • Improved Profile and extension mechanisms • Support for complete model interchange, including diagrams • Compliance points and levels for standardizing tool compliance • Does not preclude continuous time varying properties • especially important for SE applications

  8. SysML origins • Systems Engineering requirements • Hierarchic levelling of detail • Functional decomposition: Function block diagrams • Physical interaction and continuous connections • Requirements – system relationship • Mathematical models • Main authors • Cris Kobryn and Sandy Friedenthal (SysMl partners (www.SysML.org) • Support from • Object Management Group • Tool vendors • Artisan, Telelogic, IBM/Rational, I-Logix • INCOSE • Industry • BAE SYSTEMS, Deere & Company, Lockheed Martin, Motorola, Northrop Grumman, Raytheon, Thales • Now at Draft 0.9

  9. SysML Diagrams • Viewpoints • Structure • Class; object;component ; deployment ; assembly • Behaviour • Use case; state-chart; sequence; collaboration; activity; state-machine; timing • Others • Parametric ; requirements

  10. SysML Example • Vehicle system • The problem is derived from a marketing analysis which indicated the need to increase the acceleration of the vehicle form its current capability. • Appendix B of the Draft standard

  11. Concept Diagram stereotype

  12. Class diagram composition?? generalisation

  13. Requirement Diagram containment

  14. Use case diagram Use case actor Sub use case Optional extension

  15. Activity Diagram initial fork merge Sub-activity decision join final

  16. Activity Diagram object Swimlane (actor) action signal

  17. Class Diagram association with flow Data property Physical property operation association

  18. State Machine Diagram state state Initial transition final guard event

  19. Class Diagram Meta data Exclusive sub-assembly

  20. Assembly Diagram connector Connector type port

  21. Assembly Diagram swimlane connection stereotype

  22. Parametric Diagram Parametric constraint parameter

  23. : Timing Diagram

  24. Sequence Diagram object Class of object Lifeline (time downwards) Message (Async)

  25. Sequence Diagram Sub sequence

  26. Issues manager 1 Employee • Diagrams are not enough • Limited expressive power • Limited scope for verification • Formal languages e.g. • OCL (Object Constraint Language) • Alloy from MIT • Comprehension • Construction • Patterns and Problem Frames • Knowledge representation and reuse • Problem Frames (Jackson) 0..*

  27. Workshop • 1 – Comprehension • What do these diagrams mean in English? • 2 – Construction • Look at the collection of simple diagrams taken form various texts and papers • Identify which kind of diagram most closely matches each diagram • Take on diagram and re-write as a SysML diagram

  28. State machines in SysML • 15 July 2004 – I-Logix announce that BAe systems are standardising on Statemate for development of Eurofigher Typhoon • - using MDD – Model-driven Development • Dec 14 2004 Statemate chosen for use by MBDA in the development of METEOR

  29. Model–driven Development • Design behaviour using diagrammatic notations • Demonstrate and evaluate the behaviour early in the development process • Generate the delivered code/part directly from the model, perhaps guided by the designer with additional decisions.

  30. Statemate • A state machine design tool based on David Harel’s state charts (incorporated into UML) • Allows • Simulation – what would happen if the following sequence of events occurred. • Analysis – prove that the system can never lock up • Code generation – to C for loading into embedded processors

  31. Basic State Machine • The basic concepts in this notation are: • state • A mode of the object/component/sub-system • transition • A change of state caused by an event or input, perhaps back to the same state • event • the input which causes a transition to occur • action • An action which occurs when a transition is made

  32. example C clang s1 event A ------- B action A boing clack hiss B bang S2 S3 A ping C pong

  33. Exercise • 1.1. What sequence of noises does it make when the sequence ABACAC is in put? • 1.2 What about BABAAC? • 1.3 What kind of error in the machine does the sequence ACCBA reveal? • 1.4 What kind error in the machine does the input BABC reveal? • 1.5 What kind of error does the sequence ABAXAC reveal? • 1.6 Give other examples of good and bad input.

More Related