xuml, AADL and Beyond

Similar documents
Experiences in the Use of MDA and UML in Developing NATO Standards

F-16 Modular Mission Computer Application Software

MDA at the MoD. Welcome. Chris Raistrick

Model-Based Techniques in the Development of Net-Centric Applications. Timothy A. Anderson Basil C. Krikeles. June 20, 2007

MDA, META-MODELLING and MODEL TRANSFORMATION. Introducing new Technology into the Defence Industry

Open Code Translation from Executable UML Models

Investigation of System Timing Concerns in Embedded Systems: Tool-based Analysis of AADL Models

Pattern-Based Analysis of an Embedded Real-Time System Architecture

Executable UML the silver bullet or maybe not Dr. Joel Henry October 22, 2008

First To Market through Translation of Executable UML

EXECUTABLE UML. Author : Selo Sulistyo and Warsun Najib

BUILDING GOOD-QUALITY FUNCTIONAL SPECIFICATION MODEL

European Component Oriented Architecture (ECOA ) Collaboration Programme: Architecture Specification Part 2: Definitions

Role of Executable UML in MDA. Presented by Shahid Alam

Methods for the Development

COrDeT Cannes : Use of domain engineering process to develop reusable architectures and building-blocks

Modelling of PnP Weapon Systems with AADL Protocol Behaviour

Complexity-Reducing Design Patterns for Cyber-Physical Systems. DARPA META Project. AADL Standards Meeting January 2011 Steven P.

MDA Driven xuml Plug-in for JAVA

The ATCP Modeling Framework

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Reusable Object-Oriented Model

From MDD back to basic: Building DRE systems

Module 7 TOGAF Content Metamodel

CSSE 490 Model-Based Software Engineering: More MBSD. Shawn Bohner Office: Moench Room F212 Phone: (812)

Towards collaborative Blender design through annotation sharing

Review Sources of Architecture. Why Domain-Specific?

Model-Based Development of Embedded Systems with MDA and xtuml

SCOS-2000 Technical Note

Model-Driven *: Beyond Code Generation

Model-based Architectural Verification & Validation

The SAE Architecture Analysis and Description Language (AADL) Standard: A Basis for Architecture- Driven Embedded Systems Engineering

Workshop 1: Specification for SystemC-AADL interoperability

Part 5. Verification and Validation

Using AADL in Model Driven Development. Katholieke Universiteit Leuven Belgium

Model-Based Embedded System Engineering & Analysis of Performance-Critical Systems

RAMSES. Refinement of AADL Models for the Synthesis of Embedded Systems. Etienne Borde

Composable Code Generation Applied to MDA

A Data-Centric Approach for Modular Assurance Abstract. Keywords: 1 Introduction

J2EE Application Development : Conversion and Beyond Osmond Ng

Executive Summary. Round Trip Engineering of Space Systems. Change Log. Executive Summary. Visas

Coding Standards in FACE Conformance. John Thomas, Chris Edwards, and Shan Bhattacharya

Software Architectures. Lecture 6 (part 1)

How to Harvest Reusable Components in Existing Software. Nikolai Mansurov Chief Scientist & Architect

The PISA Project A Model Driven Development case study

MDSE USE CASES. Chapter #3

MDSD in Robotics. servicerobotics Autonomous Mobile Service Robots. Composability of Software Components, Robot Behaviors and Reuse of Action Plots

Conceptual Data Modeling for the Functional Decomposition of Mission Capabilities

Avancier Methods (AM) CONCEPTS

Open Source egovernment Reference Architecture. Cory Casanave, President. Data Access Technologies, Inc.

An Information Model for High-Integrity Real Time Systems

Threat Modeling and Sharing

Unambiguous, Non-Binding Requirements for MDA. -David Hansz, Requirements Analyst -David Fado, Software Architect

Modeling and Simulation for Heterogeneous systems

Certification Authorities Software Team (CAST) Position Paper CAST-25

Implementation Architecture

Foundations of a New Software Engineering Method for Real-time Systems

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Cybersecurity in Acquisition

Software Architecture. Lecture 5

A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE

Hardware/Software Co-design

Model Driven Architecture and Rhapsody

MOMOCS D2.1 XIRUP S UPPORTING T OOLS R EQUIREMENTS. Model driven Modernisation of Complex Systems. Dissemination Level: Work package:

ARTAMIS : Open Source and Extensibility in an Embedded Mission System

Software Engineering

PREPARE FOR TAKE OFF. Accelerate your organisation s journey to the Cloud.

FPGAs: High Assurance through Model Based Design

Establishing a Framework for Effective Testing and Validation of Critical Infrastructure Cyber-Security

INF5120 and INF9120 Modelbased System development

Experiences from the first step in designing an Architecture executing Executable UML semantics in Programmable Logic using VHDL

Refactoring-based Executable UML Transformation for Embedded System Design

Minsoo Ryu. College of Information and Communications Hanyang University.

VMware BCDR Accelerator Service

Incentives for IoT Security. White Paper. May Author: Dr. Cédric LEVY-BENCHETON, CEO

UNCLASSIFIED. FY 2016 Base FY 2016 OCO

Real-Time CORBA Experiences in an Avionics Domain

Coding Standards in FACE Conformance. John Thomas, Chris Edwards, and Shan Bhattacharya

Object Management Group Model Driven Architecture (MDA) MDA Guide rev. 2.0 OMG Document ormsc/

MODEL-DRIVEN DEVELOPMENT OF COMMAND AND CONTROL CAPABILITIES FOR JOINT AND COALITION WARFARE

MARTE Based Modeling Tools Usage Scenarios in Avionics Software Development Workflows

Sample Application of OOSEM to Real Time Application

Implementation Architecture

A Customizable Methodology for the Model driven Engineering of Service based System Landscapes

DISA CLOUD CLOUD SYMPOSIUM

Ingegneria del Software II, a.a. 2004/05. V.Cortellessa, University of L Aquila

Software Development Methodologies

COMET. Component and Model-based development Methodology. Adapted from COMET I and COMBINE. COMET Methodology Handbook

Accelerate Your Enterprise Private Cloud Initiative

Interoperable and Extensible Design Information Modelling

QoS-aware model-driven SOA using SoaML

ACM Technical Solution Architecture - Development and Deployment of ACM Solutions- ECM Fast Start Workshop 1Q2011

CSSE 490 Model-Based Software Engineering: Architecture Description Languages (ADL)

Towards UML Profile for Human Machine Interface Applications of In-vehicle Infotainment Platforms

Model Driven Development with xtuml and BridgePoint

Strengthen hybrid cloud operations and controls with Liquid Sky. Singtel Business

Enterprise Architecture Views and Viewpoints in ArchiMate

Software architecture in ASPICE and Even-André Karlsson

Implementing a Modular Open Systems Approach (MOSA) to Achieve Acquisition Agility in Defense Acquisition Programs

Draft Cultural transformation the key to raising performance

Transcription:

xuml and AADL xuml, AADL and Beyond Chris Raistrick www.kc.com

xuml and AADL xuml Overview Chris Raistrick www.kc.com

Platform Independent Model A Platform Independent Model (PIM) is a technology agnostic model of some aspect of the system under study. A PIM contains no information about any of the following: Hardware Architecture Operating System Programming Language Database Technology Internal Communication Technology It is therefore much simpler than a Platform-Specific Model (PSM) Use of Executable UML (xuml) allows construction of PIMs that are: Precise Complete PIMs built using xuml can be: Executed to demonstrate compliance with functional requirements Automatically translated into a complete Platform Specific Implementation using a suitable model translator Used as executable specifications, forming the basis for contract-based procurement 3

Built by application experts The MDA Process Overview MDA with xuml Development Build PIM (xuml) Define PIM-PSI Mapping Rules Built by technology experts PIM PIM-PSI Mapping Rules Translate PIM To PSI PSI (AADL/C++/Ada/ ) 4

Service Layers on the Domain Model Network Level Services Mission Level Services Store Control Services (API) Store OSI Services (API) Specific Comms Services UML Execution Services 8

Classes Classes identify the things that exist with a domain. Ideally, they represent things in the real world of that domain. They establish the vocabulary of the domain, or area of expertise. For example, the Effectors domain might contain this class 10

Attributes Attributes specify what we know about each thing (or class). They are analogous to data. 11

Operations Operations specify what we can do to each thing. They are analogous to code. 12

Operations and Methods Every operation has a method, comprising the ASL to specify that operation. Use of ASL makes the model executable while preserving platform independence. Find a set of objects Invoke an object-scoped operation Create a link 13

Associations Associations capture real-world connections between classes. 14

Internal and External Interfaces The Class Collaboration Diagram shows the interfaces within the system, and between the system and the outside world. In this view, Actors are represented as <<Terminator>> classes. Internal interface Class Collaboration Diagram Use Case Diagram External interface 15

Signals on The Class Collaboration Diagram The Class Collaboration Diagram shows this signal is generated by the Weapon class and received by the Target class 16

State Machines and Signals The Weapon class has a state machine, represented using this statechart The Target class has a state machine, represented using this statechart 17

The Primary xuml Models Domains Classes States Actions 18

xuml and AADL Chris Raistrick xuml to AADL www.kc.com

21 A Translation-Based MDA Process PIM to PSM Mapping Apply the PIM to PSM Mapping PSM (AADL) Hardware Hardware and and software software architecture architecture experts experts build build this this Existing ALWI Docs Software Software experts experts build build this this Requirements Build Store API PIM PIM (xuml) PSM to PSI Mapping Weapon Weapon experts experts build build this this Apply the PSM to PSI Mapping Only the PIM is maintained PSMs and PSIs are automatically generated PSI (Ada)

Aircraft Platform Characteristics E2 JSF F16 Aircraft Platform Specification We could specify the hardware architecture, and existing software and bus loadings, of each aircraft type and generate one or more Aircraft Platform Specific Models from each PIM 22

An xuml-aadl Process Requirements Build Platform Independent xuml API Model Platform Independent xuml API Model Automatically Generate Target Code Target Code Automatically Generate AADL from xuml PIM E2 JSF F16 Aircraft Platform Specification Refine xuml API Model E2 JSF F16 AADL Specification AADL Problems Analyse AADL Specification Identify Problems in AADL AADL Analysis Results 23

(Simplified) AADL Metamodel 24

(Simplified) AADL Metamodel Regions Software Components Hardware Components Hardware-Software Allocations 25

Configure the AADL Model for the Hardware Components Aircraft hardware architecture The AADL model is configured with data to capture the aircraft platform hardware architecture Platform Independent xuml API Model Automatically Generate AADL from xuml PIM Aircraft Platform Specification AADL Specification 26

Populate the AADL Metamodel with Software Components xuml Aircraft Model Platform Independent xuml API Model Automatically Generate AADL from xuml PIM Aircraft Platform Specification AADL Specification 27

PIM-PSM-PSI Mappings Are Defined at the Metamodel Level (part of) PIM Metamodel (xuml) (part of) PSM Metamodel (AADL) (part of) PSI Metamodel (Ada 83) Class SW Component Package Attribute Data Port Data Type Signal Event Port Spec Subprogram xuml xuml Metamodel Metamodel Define Mapping PSM PSM Metamodel Metamodel Define Mapping PSI PSI Metamodel Metamodel 28

Apply Mappings to Generate AADL (part of) xuml Metamodel Class Attribute SignalGeneration The system experts define mappings onto AADL (part of) AADL Metamodel Software Component Data Port Event Port The application experts instantiate the xuml Metamodel classes the AADL mappings are applied to the xuml objects to generate the AADL Nav signal data From Partitions Navigation Sensor Processing 20Hz Nav sensor data 10Hz Integrated Nav Nav sensor Navigation data data Phase delay of Periodic I/O 20Hz Guidance Processing Guidance To Partitions 5Hz Flight Plan Processing FP data Fuel Flow FP data Nav data 2Hz Aircraft Performance Calculation Performance data Aircraft System PIM Generated Aircraft System AADL 29

Apply Mappings to Generate Code (part of) xuml Metamodel Class Attribute SignalGeneration The Ada experts define mappings onto Ada (part of) Ada Metamodel Package BodyVariable SubprogramCall The application experts instantiate the xuml Metamodel classes the Ada mappings are applied to the xuml objects to generate the application Ada Aircraft System PIM Generated Aircraft System Ada 30

Apply Mappings to Generate AADL and Code Nav signal data From Partitions Navigation Sensor Processing 20Hz Nav sensor data 10Hz Integrated Nav Nav sensor Navigation data data Phase delay of Periodic I/O 20Hz Guidance Processing Guidance To Partitions Aircraft System PIM 5Hz Flight Plan Processing FP data Fuel Flow FP data Nav data 2Hz Aircraft Performance Calculation Performance data Generated Aircraft System AADL 31

xuml and AADL Summary www.kc.com

MDA to Capture Application and Design Expertise Formalised Intellectual Property This approach ensures that all expertise is formalised, and made reusable, in xuml. Application Domains Build & Test xuml models Generate AADL and Ada Components Aircraft Platform-Specific Implementations AADL/Ada Generation Domains 33

MDA Benefits Captures intellectual property valuable subject matter expertise is captured in a standardised, reusable, readily shared and easily maintainable manner; Executable and testable models early verification that requirements are understood and early demonstration of required system behaviour lowers through-life costs, reduces risk and increases confidence; Resilience to change changes in functional requirement are isolated from changes in technology and platform, therefore giving the ability to migrate to the next generation platform without model rework; 100% code generation from models so models are maintained and code is a derived product, models never become obsolete and are guaranteed to always be up-to-date; Reduced lifecycle costs through early defect identification, maintained separation of concerns and minimised impact of change; 34

xuml and AADL The End www.kc.com