SYSTEM MODELING Introduction

Similar documents
Modeling Software Architectures with UML 2

Model-Driven Development: Its Essence and Opportunities

MARTE Tutorial

PAPYRUS FUTURE. CEA Papyrus Team

CODE ANALYSES FOR NUMERICAL ACCURACY WITH AFFINE FORMS: FROM DIAGNOSIS TO THE ORIGIN OF THE NUMERICAL ERRORS. Teratec 2017 Forum Védrine Franck

Representing System Architecture

Efficient Application Mapping on CGRAs Based on Backward Simultaneous Scheduling / Binding and Dynamic Graph Transformations

HIGH PERFORMANCE LARGE EDDY SIMULATION OF TURBULENT FLOWS AROUND PWR MIXING GRIDS

ELEMENTTYPES CONFIGURATION FRAMEWORK

Beyond Mere Logic: A Vision of Computer Languages for the 21 st Century - A discourse on software physics -

SystemC abstractions and design refinement for HW- SW SoC design. Dündar Dumlugöl. Vice President of Engineering, CoWare, Inc.

Practical Model-Driven Development with the IBM Software Development Platform

The Theory and Practice of Modeling Language Design Теорија и пракса пројектовања језика за моделирањe софтверских система

Evolving Frama-C Value Analysis

DATA-MANAGEMENT DIRECTORY FOR OPENMP 4.0 AND OPENACC

3.0 Object-Oriented Modeling Using UML

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

REAL-TIME ADAPTIVE IMAGING FOR ULTRASONIC NONDESTRUCTIVE TESTING OF STRUCTURES WITH IRREGULAR SHAPES

References: Jacquie Barker,Beginning Java Objects; Martin Fowler,UML Distilled, 9/25/ UML

The Big Happy Family of System Architecture Approaches. Chris Phillips 14 Jun 2018

OMG SPECIFICATION DEVELOPMENT USING PAPYRUS (AND OTHER ECLIPSE TOOLING)

Plan. Modelling and design. What is a model? Note on spelling

TTool Training. I. Introduction to UML

VISION FOR AUTOMOTIVE DRIVING

Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page:

References: Jacquie Barker,Beginning Java Objects; Martin Fowler,UML Distilled, 1/13/ UML

Quality-Driven Architecture Design Method

Next Generation CEA Computing Centres

Rational Software White paper

INF5120 and INF9120 Modelbased System development

ASSEMBLY OF THE IFMIF CRYOMODULE

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram

Uml Modelling For Business Analysts With Illustrated Examples Businessanalystseries Book 102

Architectural Blueprint

What is UML / why. UML is graphical and notational representation for software system requirements analysis and design. (Software Engineering )

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

Combination of Parallel Imaging and Compressed Sensing for high acceleration factor at 7T

Research Review on Basic Principles of Unified Modelling Language

What is a Model? Copyright hebley & Associates

Software Engineering from a

Introduction to Modeling

UML big picture. Perdita Stevens. School of Informatics University of Edinburgh

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

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

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

Computation Independent Model (CIM): Platform Independent Model (PIM): Platform Specific Model (PSM): Implementation Specific Model (ISM):

SCADE System, a comprehensive toolset for smooth transition from Model-Based System Engineering to certified embedded control and display software

The Process of Software Architecting

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

SDN-BASED CONFIGURATION SOLUTION FOR IEEE TIME SENSITIVE NETWORKING (TSN)

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

Software Architectures. Lecture 6 (part 1)

EEL 5722C Field-Programmable Gate Array Design

Passport Automation System

Using the UML for Architectural Description Rich Hilliard

What is a Data Model?

Architecture of Business Systems Architecture and the Role of the Architect

Presenter: Dong hyun Park

Towards the integration of security patterns in UML Component-based Applications

Abstraction Patterns in Model-Based Engineering

Requirements Analysis

Programming Language Constructs as Basis for Software Architectures

Getting a Quick Start with RUP

Programming Language Constructs as Basis for Software Architectures. Stefan Resmerita, WS2015

Modules v4. Pushing forward user environment management. Xavier Delaruelle FOSDEM 2018 February 4th 2018, ULB, Bruxelles

02291: System Integration

Unified Modeling Language (UML)

Object-Oriented Systems Development: Using the Unified Modeling Language

Software Service Engineering

MDA PLATFORM FOR COMPLEX EMBEDDED SYSTEMS DEVELOPMENT

ALICE. Double Chooz. Irfu. Interpreting radiations from the Universe. Site report 2017 IRFU ARNAB SINHA

Computer Science 520/620 Spring 2013 Prof. L. Osterweil" Use Cases" Software Models and Representations" Part 4" More, and Multiple Models"

Computer Science 520/620 Spring 2013 Prof. L. Osterweil" Software Models and Representations" Part 4" More, and Multiple Models" Use Cases"

1. Software Systems Complexity, OO Paradigm, UML

Model Driven Development Unified Modeling Language (UML)

Software Development Methodologies

Compositional Model Based Software Development

Modules v4. Yes, Environment Modules project is not dead. Xavier Delaruelle

3 Days Classroom Training Exam and Certification Included

IT Consulting and Implementation Services

Deployment of SysML in Tools and Architectures: an Industry Perspective. Rick Steiner Raytheon IDS, San Diego

SIDE CHANNEL ANALYSIS : LOW COST PLATFORM. ETSI SECURITY WEEK Driss ABOULKASSIM Jacques FOURNIERI

Sommerville Chapter 6 The High-Level Structure of a Software Intensive System. Architectural Design. Slides courtesy Prof.

CEA Site Report. SLURM User Group Meeting 2012 Matthieu Hautreux 26 septembre 2012 CEA 10 AVRIL 2012 PAGE 1

Towards Modeling Approach Enabling Efficient Platform for Heterogeneous Big Data Analysis.

The Theory and Practice of Modeling Language Design (for Model-Based Software Engineering)

RobinHood Project Status

Integrating TOGAF, Zachman and DoDAF Into A Common Process

Real time system modeling with UML: current status and some prospects

Teaching Encapsulation and Modularity in Object-Oriented Languages with Access Graphs

CDW PARTNER REVIEW GUIDE SERVER VIRTUALIZATION

SENSINACT - HORIZONTAL OPEN PLATFORM FOR AN INTEROPERABLE IOT WORLD

Module 3. Overview of TOGAF 9.1 Architecture Development Method (ADM)

Design Patterns. Gunnar Gotshalks A4-1

Requirement Model for Mechanical, Electrical and Software Integrated Products Using SysML

MBSE with the ARCADIA Method and the Capella Tool

Data Virtualization Implementation Methodology and Best Practices

Software Architecture

Describing Information Systems Moving Beyond UML

GOING ARM A CODE PERSPECTIVE

Transcription:

SYSTEM MODELING Introduction 2015-09-14 François Terrier 1

FIRST WHAT IS A SYSTEM? Complex and heterogeneous systems responding to real-world events Human interactions Embedded system Software + Computers + Physical interactions sensors / actuators Networks F. Terrier 2014-12-02 2

Systems are everywhere, deeply involved in our daily life and inter-connected. 3

Some numbers Innovation = more functions = more computing Security Comfort Control Tenth of interconnected processors Hundreds of processing in parallel Thousands of exchanged data F. Terrier 2014-12-02 4

CEA 10 AVRIL 2012 PAGE 5

Why it fails? Communication issues between numerous and various stakeholders. Time-to-market pressure vs. higher quality level. Ambiguous or uncompleted descriptions of system. Non-availability of expertise for complex analysis. Manual-based methodologies. (Note: this list is of course not exhaustive) Complexity, Complexity, Complexity, Complexity, Complexity S. Gérard 6

Why model driven engineering? Traditional Development Approach ibd [block] Anti-LockController [Internal Block Diagram] c1:modulator interface d1:traction Detector m1:brake Modulator ibd [block] Anti-LockController [Internal Block Diagram] c1:modulator interface d1:traction Detector m1:brake Modulator S. Gérard 7

HOW ARCHITECTURE HELPS DEFINE REQUIREMENTS End-user 2 System administrator End-user 1 Sales and field support Comp1 Comp2 Arbiter Display Design Iteration Comp3 Development manager Developer System Architect Many requirements conflicts and necessary tradeoffs are only detected through analysis of candidate architectures. F. Terrier 8

A SYSTEM-LEVEL APPROACH IS NEEDED: ARCHITECTURE! DESIGN THE SYSTEM AS A WHOLE RATHER THAN AS AN AGGREGATE OF SEPARATELY DESIGNED SUB-SYSTEMS Provides possibility to ensure system integrity Requires a big picture approach an architecture specification ONE DEFINITION OF ARCHITECTURE [IEEE STANDARD 1471] : The fundamental organization of a system embodied in its components, their relationships to each other, and to the environment, and the principles guiding its design and evolution Architectural specifications abstract out non-fundamental detail To architect is to model F. Terrier 2014-12-02 9

PAGE 10 BASIS IS MODELING

MODELS IN TRADITIONAL ENGINEERING Extracted from B. Selic presentation PROBABLY AS OLD AS ENGINEERING 11

ENGINEERING MODELS Extracted from B. Selic presentation ENGINEERING MODEL A reduced representation of some system that highlights the properties of interest from a given viewpoint Modeled system Functional Model WE DON T SEE EVERYTHING AT ONCE WE USE A REPRESENTATION (NOTATION) THAT IS EASILY UNDERSTOOD FOR THE PURPOSE ON HAND 12

A BIT OF SOFTWARE Extracted from B. Selic presentation SC_MODULE(producer) { sc_outmaster<int> out1; sc_in<bool> start; // kick-start void generate_data () { for(int i =0; i <10; i++) { out1 =i ; //to invoke slave;} } SC_CTOR(producer) { SC_METHOD(generate_data); sensitive << start;}}; SC_MODULE(consumer) { sc_inslave<int> in1; int sum; // state variable void accumulate (){ sum += in1; cout << Sum = << sum << endl;} SC_CTOR(consumer) { SC_SLAVE(accumulate, in1); sum = 0; // initialize }; SC_MODULE(top) // container { producer *A1; consumer *B1; sc_link_mp<int> link1; SC_CTOR(top) { A1 = new producer( A1 ); A1.out1(link1); B1 = new consumer( B1 ); B1.in1(link1);}}; Can you spot the architecture? F. Terrier 2014-12-02 13

AND ITS MODEL Extracted from B. Selic presentation producer link1 consumer start out1 in1 Can you spot the architecture? 14

MODEL-DRIVEN STYLE OF DEVELOPMENT Extracted from B. Selic presentation AN APPROACH TO SOFTWARE DEVELOPMENT IN WHICH THE FOCUS AND PRIMARY ARTIFACTS OF DEVELOPMENT ARE MODELS (AS OPPOSED TO PROGRAMS) AND BASED ON TWO TIME-PROVEN METHODS (1) ABSTRACTION (2) AUTOMATION Realm of modeling languages start producer out1 start producer out1 Realm of tools SC_MODULE(producer) {sc_inslave<int> in1; int sum; // void accumulate (){ sum += in1; cout << Sum = << sum << endl;} SC_MODULE(producer) {sc_inslave<int> in1; int sum; // void accumulate (){ sum += in1; cout << Sum = << sum << endl;} 15

16

TWO MAIN PRINCIPLES BEHIND MDE Modelling Language Engineering ComputerAided Modeling S. Gérard 2014-12-02 17

Model-based Development Approach X X X T X T X X X X T Model Transform Link Trace Link S. Gérard 18

Going further for developing modern complex systems & software requires new advanced and innovative methods and tools S. Gérard 19

NUMEROUS, COMPLEX & INTERDEPENDENT SOFTWARE From requirement document: Hundreds of pages Methods & tools to code: millions of lines F. Terrier 2014-12-02 20

PAGE 21 Modeling with which language?

AND NOW WHAT ABOUT STANDARDS? Standards have traditionally provided major boosts to technological progress! BUT STANDARDS ENABLE ALSO VENDOR INDEPENDENCE Users have a choice of different vendors (no vendor tie-in ) Forces vendors into competing and improving their products THE OBJECT MANAGEMENT GROUP (OMG) HAS CREATED THE MODEL-DRIVEN ARCHITECTURE INITIATIVE: A comprehensive set of standards in support of MBE including standard modeling languages: UML2, SysML and MARTE F. Terrier 2014-12-02 22

For standard-based modeling, UML is a GOOD choice. Mature modeling language Initially based on very experienced modeling language designers: the three amigos, Booch, Jackobson and Rumbaugh but also Coleman, Desfray, Embley, Gamma, Harel, Meyer, Odell, Selic, Shaer-Mellor, Wirfs-Brock, etc. A 20 year old modeling languages (current version:2.5) continually maintained and updated by very advanced experts coming from vairous origin: end users, tool providers and academics. A rich modeling languages covering a large set of concerns e.g., architecture, automata, data-flow, scenario and use case. Internationally popular and in-use UML is widely educated, disseminated and implemented all around the world. 23

BUT UML IS ALSO A CUSTOMIZABLE STANDARD! ORIGINALLY INTENDED FOR MODELING SOFTWARE-INTENSIVE SYSTEMS UML models capture different views of a software system (information model, run-time structure/behavior, packaging, deployment, etc.) Inspired primarily by the concepts from object-oriented languages (class, operation, object, etc.) HOWEVER, THE GENERAL NATURE A LARGE SCOPE OF ITS CONCEPTS MADE UML SUITABLE FOR EXTENSIONS TO OTHER DOMAINS. Domain Specific Modeling by profiling the UML2! F. Terrier 2014-12-02 24

www.eclipse.org/papyrus Commissariat à l énergie atomique et aux énergies alternatives Institut Carnot CEA LIST Centre de Saclay 91191 Gif-sur-Yvette Cedex T. +33 (0)169 077 093 M. +33 (0)688 200 047 Etablissement public à caractère industriel et commercial RCS Paris B 775 685 019 Direction Département Laboratoire DRT DILS LISE