480 likes | 1.5k Views
An Introduction to SysML . Finn Overgaard Hansen and Peter Gorm Larsen. Agenda. What is SysML? Relationship between UML and SysML Examples of Extensions Industrial Control Concluding Remarks. What is SysML?.
E N D
An Introduction to SysML Finn Overgaard Hansen and Peter Gorm Larsen An Introduction to SysML
Agenda • What is SysML? • Relationship between UML and SysML • Examples of Extensions • Industrial Control • Concluding Remarks An Introduction to SysML
What is SysML? • A graphical modeling language in response to the UML for Systems Engineering RFP developed by the OMG, INCOSE, and AP233 • a UML Profile that represents a subset of UML 2 with extensions • Supports the specification, analysis, design, verification and validation of systems that include hardware, software, data, personnel, procedures, and facilities • Supports model and data interchange via XMI and the evolving AP233 standard (in-process) SysML is a Critical Enabler for Model Driven SE An Introduction to SysML
SysML Background • UML for System Engineering RFP issued – 28 March 2003 • SysML Partners Kickoff meeting – 6 May 2003 • Chaired by S. Friedenthal and C. Kobryn • v0.9 Submission to OMG – 10 Jan 2005 • Addendum stereotypes chapter – 30 May 2005 • SST and SP split – 30 August 2005 • SST/SP revised submissions to OMG – 14 November 2005 • INCOSE and OMG Evaluations – December 2005 thru January 2006 • SysML Merge Team (SMT) submission v0.99 (ad/2006-02-01) – 13 February 2006 • SMT formally announced - 15 February 2006 • OMG Systems Modeling Language (OMG SysML) Specification-Final Adopted Specification ptc/06-05-04 – 6 July 2006 – Final public version planned in April 2007. An Introduction to SysML
SysML Partners • Industry • American Systems, EADS Astrium, BAE SYSTEMS, Boeing, Deere & Company, Eurostep, Israel Aircraft Industries, Lockheed Martin, Motorola, Northrop Grumman, oose.de, Raytheon, THALES • Government • DoD/OSD, NASA/JPL, NIST • Vendors • Artisan, Ceira, Gentleware, IBM/Rational, I-Logix, PivotPoint Technology, Popkin, Project Technology, 3SL, Telelogic, Vitech • Liaisons • AP-233, CCSDS, EAST, INCOSE, Rosetta An Introduction to SysML
SysML Context Systems - Operations Services - Enterprise Layers DoDAF DoD Architectural Framework across multiple levels (Zachman And MoDAF are similar) UPDM Unified Modeling Language (UML) Profile for DoDAF and ModAF FEA-DEA-BEA Federal and Defense Enterprise Architectures Enterprise Architects SOA Architecture based on services SCBA FEA extension to Services and Components Program Architects SysML UML Extension for Systems Engineering SDF Service Interface Descriptions System Architects And Engineers MDA UML Models For software Architecture, Components and interfaces Software Architects SCA Component Interface Description Developers Testbeds such as Federated Development and Certification Environment (FDCE) including Live Systems, Modules, Components ,Services and Simulations An Introduction to SysML
SysML Specification Outline • Part IV – Crosscutting Constructs • Allocations • Requirements • Profiles & Model Libraries • Part V Appendices • Diagrams • Sample Problem • Non-Normative Extensions • Model Interchange * • Requirements Traceability • Terms and Definitions * • BNF Diagram Syntax Definitions • Preface • Part I - Introduction • Part II – Structural Constructs • Model Elements • Blocks • Ports and Flows • Constraint Blocks • Part III – Behavioral Constructs • Activities • Interactions • State Machines • Use Cases An Introduction to SysML
Harmony – a System Engineering Development Process An Introduction to SysML
Agenda • What is SysML? • Relationship between UML and SysML • Examples of Extensions • Industrial Control • Concluding Remarks An Introduction to SysML
Relationship Between SysML and UML UML4SysML SysML Profile An Introduction to SysML
SysML Diagram Taxonomy An Introduction to SysML
Major Extensions to UML 2 • New Diagram Types • Requirement Diagram (visual modeling of requirements) • Parametric Diagram (showing relations between parameters) • Structure Diagram • Block Definition Diagram (based on UML class diagram with blocks instead of classes) • Internal Block Diagram (based on UML composite structure diagram with restrictions and extensions) • Activity Diagram • extensions for continuous flow modeling • extensions to support disabling control and control operators. • accommodate needs of Extended Functional Flow Block Diagrams (EFFBDs) An Introduction to SysML
Agenda • What is SysML? • Relationship between UML and SysML • Examples of Extensions • Industrial Control • Concluding Remarks An Introduction to SysML
SysML Diagram Frames An Introduction to SysML
Blocks are Basic Structural Elements An Introduction to SysML
Block Definition Diagram An Introduction to SysML
Internal Block Diagram An Introduction to SysML
Internal Block Diagram Example Control signals An Introduction to SysML
Requirements Diagram (NEW) An Introduction to SysML
Parametric Diagram (NEW) • Used to express constraints (equations) between value properties • Provides support for engineering analysis (e.g., performance, reliability) • Constraint block captures equations • Expression language can be formal (e.g., MathML, OCL) or informal • Computational engine is defined by applicable analysis tool and not by SysML • Parametric diagram represents the usage of the constraints in an analysis context • Binding of constraint usage to value properties of blocks (e.g., vehicle mass bound to F= m × a) • Parametrics Enable Integration of Engineering Analysis with Design Models An Introduction to SysML
Example: Defining Vehicle Dynamics An Introduction to SysML
Example: Vehicle DynamicsAnalysis – Parametric Diagram An Introduction to SysML
Parametric Example - Usage Parametric Diagram An Introduction to SysML
Activity Diagram Notation Flows can be discrete, streaming or control An Introduction to SysML
SysML EFFBD Profile An Introduction to SysML
Allocations • Provides general relationship to map one model element to another • Includes specific subclasses of allocation with constraints on their usage • Behavioral • Structural • Flow • Explicit allocation of activities to swim lanes (e.g. activity partitions) • Graphical and/or tabular representations An Introduction to SysML
Different Allocation Representations Explicit Allocation of Activity to Swim Lane Allocate Relationship Callout Notation Compartment Notation An Introduction to SysML
Example - SysML Allocation to SW and HW An Introduction to SysML
interaction state machine activity/ function use definition 4 Pillars of SysML ABS Example 1. Structure 2. Behavior 3. Requirements 4. Parametrics An Introduction to SysML
allocate value binding satisfy verify Cross Connecting Model Elements 2. Behavior 1. Structure 3. Requirements 4. Parametrics An Introduction to SysML
Agenda • What is SysML? • Relationship between UML and SysML • Examples of Extensions • Industrial Control • Concluding Remarks An Introduction to SysML
System Modeling An Introduction to SysML
Combining Model-Driven and Model Based Design in Industrial Machine Control MDD: Model Driven Development in Rhapsody (Telelogic) MBD: Model Based Design in Simulink (Mathworks) An Introduction to SysML
MDD versus MBD Feature Comparison An Introduction to SysML
Complementary Tool Solution • The Rhapsody MDD environment covers standard UML 2.0 / SysML based software and systems design • Simulink is the de-facto standard for dynamic systems modeling • allowing block diagrams of complex dynamic (mathematical) algorithms to be captured and analyzed • Simulink connection to Rhapsody An Introduction to SysML
Rhapsody – Simulink Integration (1) An Introduction to SysML
Rhapsody – Simulink Integration (2) Simulink Model and Code Imported into Rhapsody An Introduction to SysML
Agenda • What is SysML? • Relationship between UML and SysML • Examples of Extensions • Industrial Control • Concluding Remarks An Introduction to SysML
Concluding Remarks • SysML contains many interesting extensions of UML • It will be good to get a more common language between different disciplines • Question is what kind of validation can be made with these different models • What about common semantics? • What about time connectivity between discrete event an continuous simulators? An Introduction to SysML