UMLEmb: UML for Embedded Systems. I. Introduction. Ludovic Apvrille Eurecom, office 470

Similar documents
TTool Training. I. Introduction to UML

Design Space Exploration of Systems-on-Chip: DIPLODOCUS

TTool/DIPLODOCUS: a UML Model-Driven Environment for Embedded Systems-on-Chip Design

SysML, It s Coming Are You Prepared?

From Analysis to Code Generation of Distributed Systems with a UML-Based Formal Environment Named TURTLE 2005

Model Driven Development Unified Modeling Language (UML)

UML for Embedded Systems IV. Validation

Modelling in Enterprise Architecture. MSc Business Information Systems

Capella to SysML Bridge: A Tooled-up Methodology for MBSE Interoperability

TURTLE Four Weddings and a Tutorial

An Introduction to SySML

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

Modeling Requirements, Architectures, Behaviour...

From Analysis to Code Generation of Protocols and Embedded Software with a UML-Based Formal Environment Named TURTLE 2005

Unified Modeling Language (UML)

TEPE: A SysML Language for Time-Constrained Property Modeling and Formal Verification

An introduction to MOF MetaObject Facility.

UML 2.0 State Machines

Operating Systems. I. Introduction. Eurecom

EARLY CHECKING OF SYSML MODELS APPLIED TO PROTOCOLS

1 Introduction. 1.1 Introduction

TEPE: A SysML Language for Time-Constrained Property Modeling and Formal Verification

3rd Lecture Languages for information modeling

Unified Modeling Language - UML

Modeling Requirements

Architecting System-of-Systems

Introduction to SysML

02291: System Integration

3.0 Object-Oriented Modeling Using UML

Technical Overview for

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE

CISC 322 Software Architecture

INF5120 and INF9120 Modelbased System development

Representing System Architecture

FEASIBILITY of the MDA APPROACH in UCE projects

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture

Software Engineering

Model Driven Architecture - The Vision

Software Architecture in Action. Flavio Oquendo, Jair C Leite, Thais Batista

Christian Doppler Laboratory

Making Modeling Assumptions an Explicit Part of Real-Time Systems Models

Semantics-Based Integration of Embedded Systems Models

GreHack. Pre-filtering Mobile Malware with. Heuristic Techniques. Institut Mines-Telecom

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Design of Embedded Systems

EXECUTABLE MODELING WITH FUML AND ALF IN PAPYRUS: TOOLING AND EXPERIMENTS

Systems Modeling Language (SysML) INCOSE MDSD Review

Formal Foundations of Software Engineering

SCOS-2000 Technical Note

Generating high-integrity systems with AADL and Ocarina. Jérôme Hugues, ISAE/DMIA

A UML SIMULATOR BASED ON A GENERIC MODEL EXECUTION ENGINE

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML

CS560: Formal Modelling and Implementation of Systems (Term II) Lecture: CASE A. O Riordan, 2009.

an author's

Reconciling UML and BPMN Models in UPDM

Papyrus: Advent of an Open Source IME at Eclipse (Redux)

Modeling Issues Modeling Enterprises. Modeling

Model Driven Architecture and Rhapsody

TTool Training. III. Using TTool

Outline. A little history. Outline. The Unified Modeling Language Opportunities and Challenges for Formal Methods

The Specifications Exchange Service of an RM-ODP Framework

Systems Engineering Training Courses 2015 Catalog

Role of Executable UML in MDA. Presented by Shahid Alam

Formal Verification for UML/SysML models

Model driven Engineering & Model driven Architecture

Agenda. Why Model. Why Model? History of OO Modeling Methodologies Object Modeling Technique (OMT) Unified Modeling Language (UML)

The Software Assurance Ecosystem: OMG s Approach to Systems & Software Assurance

!MDA$based*Teaching*and* Research*in*Software*Engineering*!

Databases 2 (VU) ( )

PisaTel Meeting Roma, 29 novembre 2007

Model Driven Engineering (MDE)

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process

i219 Software Design Methodology 1. Overview of software design methodology Kazuhiro Ogata (JAIST) Outline of lecture

Object-Oriented Systems Development: Using the Unified Modeling Language

OBJECT ORIENTED ANALYSIS AND DESIGN

Execution of UML models Present and Future of Research and Practice

Unified Modelling Language

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1.

Best Practices for Model-Based Systems Engineering

Operating Systems. V. Input / Output. Eurecom

Outline of Unified Process

Operating Systems. IV. Memory Management

CHAPTER 1. Objects, UML, and Java

Introduction to Model-Driven System Development

ITM DEVELOPMENT (ITMD)

Software Engineering Lab Manual

Combining SysML and AADL for the Design, Validation and Implementation of Critical Systems

On UML2.0 s Abandonment of the Actors- Call-Use-Cases Conjecture

On UML2.0 s Abandonment of the Actors-Call-Use-Cases Conjecture

Future Directions for SysML v2 INCOSE IW MBSE Workshop January 28, 2017

Incorporating applications to a Service Oriented Architecture

A Generic Method for Defining Viewpoints in SysML

GET 433 Course Syllabus Spring 2017

Lecture 0: Overview of cs1106/cs6503

(Movement - Synthesis) Improve existing programming skills by developing much larger and more complex programs than in previous classes.

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks

The Model Driven (R)evolution. Richard Mark Soley, Ph.D. Chairman and CEO Object Management Group, Inc.

Course 3 7 March

Software Engineering (CSC 4350/6350) Rao Casturi

Software Development With Uml

Transcription:

UMLEmb: UML for Embedded Systems I. Introduction Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/umlemb/ @UMLEmb Eurecom

Goals System specification (includes software specification)? 2/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Goals (Cont.) To propose a method, a language, and a tool, that can be applied to the design of a broad variety of systems Real-time and embedded systems Transportation systems, smart objects,... To practice modeling using a UML/SysML framework To answer your questions To interact together e.g. be able to evaluate the model of someone else And be able to evaluate your own work! 3/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Origin of this Course This course was designed with Pierre de Saqui-Sannes, ISAE It has been used worldwide for years in different formats for: Master students Tutorials in international conferences Trainings in companies 4/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Outline of the Lectures and Labs From a system specification, you will learn how to: Capture system requirements Analyze the system Design the system Validate the system All stages will be explained with UML/SysML models BTW: Do you know what is a system specification? 5/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Lecture Organization Lectures: 4 sessions Presentation of SysML diagrams Exercises Labs: 3 sessions Modeling a system with TTool Requirements, analysis, design, validation Grading policy (Applies only to Eurecom students) 30% on labs. Attendance is therefore obligatory. 70% on exam. (Exam is like a lab). 6/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Recommended Books (Also available on the course s website) F. Kordon et al, Embedded systems : Analysis and modeling with SysML, UML and AADL D. Alan et al, Systems analysis and design with UML version 2.0: an object-oriented approach L. Doldi, UML 2 illustrated - Developing real-time and communications systems See the link section of UMLEmb website for videos of examples on how to model with similar aproaches 7/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Outline Introduction to modeling OMG, UML and SysML UML/SysML for Embedded Systems 8/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Outline Introduction to modeling OMG, UML and SysML UML/SysML for Embedded Systems 9/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Designing Embedded Systems How to Handle Complexity? Modeling and verification! (But there are other options) 10/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Introduction to modeling OMG, UML and SysML UML/SysML for Embedded Systems Modeling is not Really a New Technique...... and it is not limited to Software! 11/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Introduction to modeling OMG, UML and SysML UML/SysML for Embedded Systems Modeling is not Really a New Technique... If you fail to plan, you are planning to fail! Painting by Duplessis. Source: Wikipedia 12/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Abstraction Level (source: peek and Poke, July, 2013) 13/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

So, What is Modeling? A modeling = An abstraction of the system to design Representation of the main functionalities of a complex system Non relevant details are ignored Abstractions make it possible to deal with complexity An engineer, or a development team, cannot have a global understanding of complex systems A modeling is a view of a system according to some assumptions 14/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Software Development Techniques for E. S. Code-based approaches Extreme Programming Strongly tested step-by-step code increments Agile Software Development Focus on change in specification Model-based approaches V-Cycle KAOS, AADL, MDE,... makingmessage m.data = secretdata m1 = sencrypt(m, sk) sendingmessage chout(m1) Formal models B, LOTOS, Petri nets,... 15/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Outline Introduction to modeling OMG, UML and SysML UML/SysML for Embedded Systems 16/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

What is UML? UML = Unified Modeling Language Main characteristics of UML Standard graphical modeling language for complex systems Defined by OMG Specification, design, automatic code generation, documentation Independent of any programming language Object-oriented design Supported by many CASE Tools CASE = Computer-Aided Software Engineering But: No standard UML methodology 17/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Origin of UML 18/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Genesis of UML ROOM (1994) UML 2.0 (2005) UML 2.5 (2015) MSC & SDL (1993) Statecharts (1980s) OMT (Rumbauch et al.) Booch UML 0.9 (1996) UML 1.1 (1997) UML 1.5 (2003) OOSE (Jacobson et al.) 19/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

UML 1.5 Requirement capture Outside the UML model Use case driven analysis Use case = main function System / environment (actors) Use cases need documentation Customer DisplayBalance DeliverBankNotes ATM Object-oriented design Object = Name + Attributes (state) + Methods Objects communicate using method calls Class diagrams for software architectures 20/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

UML 2 Requirement capture Outside the UML model Analysis Enhanced sequence and activity diagrams Object-oriented design Object can communicate by method calls via ports Input and output signals are defined by interfaces 21/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

OMG: Object Management Group Non-profit organization Goal: definition of standards related to object-oriented services MOF, UML, XMI, CWM, CORBA (includes IDL, IIOP) 11 creating members Hewlett-Packard, IBM, Sun Microsystems, Apple Computer, American Airlines, Data General,... Nowadays: 300 members 22/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

Outline Introduction to modeling OMG, UML and SysML UML/SysML for Embedded Systems 23/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

UML for Embedded Systems Specificity of embedded systems Strict constraints Performance constraints, real-time constraints, limited resources, etc. Specific UML operators, diagrams, methodologies, toolkits Make use of some UML diagrams rather than others Make use of simulation techniques as soon as possible in the development cycle Specific UML toolkits Profiles 24/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

UML Profiles Definition UML defines extension mechanisms to e.g., Define new operators Provide a semantics Give a methodology Example of profiles Profiles defined by OMG (e.g., SPT, MARTE, SysML) Profiles defined by tool vendors (e.g. in Rhapsody, Artisan) User-defined and company-defined profiles 25/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

From UML to SysML What s wrong with UML? (as far as system modeling is concerned) Objects are for computer-literates, not for systems engineers Requirements are described outside the model using, e.g., IBM DOORS Allocation relations are not explicitly supported Nevertheless SysML is a UML 2 profile Developed by the Object Management Group (OMG) and the International Council on Systems Engineering (INCOSE) SysML standard: www.omgsysml.org 26/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

SysML An international standard at OMG UML profile A graphical modelling language that supports the specification, analysis, design, verification, and validation of systems that include hardware, software, data, staff, procedures, and facilities A notation, not a method Proprietary tools Enterprise Architect, Rhapsody, Modelio,... Free software tools Polarsys, Papyrus, TTool,... User communities http://sysmlfrance.blogspot.com/ http://sysmlbrasil.blogspot.fr/p/sysml-brasil.html 27/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

SysML Diagrams vs. UML Diagrams 28/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

From SysML to AVATAR AVATAR reuses most SysML diagrams Requirement capture: requirement diagrams Analysis: use case, sequence and activity diagrams Design: block and state machines diagrams AVATAR does not entirely comply with the OMG-based SysML In AVATAR, block diagrams merge block and internal block diagrams AVATAR does not support continuous flows AVATAR gives a formal semantics to several diagrams, including: Block instance and state machine diagrams Starting point for simulation, verification and code generation 29/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

TTool: A Multi Profile Platform TTool Open-source and free toolkit mainly developed by Telecom ParisTech Multi-profile toolkit DIPLODOCUS, AVATAR,... Support from academic (e.g. LIP6, ISAE) and industrial partners (e.g., Nokia) Main ideas Lightweight, easy-to-use toolkit Simulation with model animation Formal proof at the push of a button 30/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction

End of Introduction... So, what s next? 1. Modeling in SysML/AVATAR Methodology Diagrams 2. Validation Simulation Formal verification Code generation, and execution of that code 31/31 Fall 2017 Institut Mines-Telecom UMLEmb - Introduction