Executable modeling and simulation of system software and processes

50 %
50 %
Information about Executable modeling and simulation of system software and processes

Published on January 22, 2016

Author: tommens

Source: slideshare.net

1. Tom Mens tom.mens@umons.ac.be Executable modeling and simula2on of system so5ware and processes So1ware Engineering Lab, Dept. Computer Science

2. Université de Mons So5ware-controlled systems are omnipresent Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

3. Université de Mons Control so1ware can be very complex § ConEnuous interacEon between so1ware and hardware § ConEnuous interacEon with external world and users § Must respect func%onal requirements § Vending machine does not dispense correct beverage § Cash machine returns more cash than requested § … § Must respect non-func%onal requirements § Safety / Security / Performance / Energy constraints / Maintainability / Usability / … §  Microwave/elevator should not funcEon with open doors §  Traffic lights should never be green simultaneously So5ware-controlled systems are difficult to develop 3 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

4. Université de Mons Example 1: Modèle du processus d’engagement de personnel UMONS (version 1, 2013) The same is true for (business) processes 4 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

5. Université de Mons Example 2: Distributed software development and bug fixing processes The same is true for (business) processes 5 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

6. Université de Mons •  beUer understand the problem •  reduce the “accidental complexity” of the soluEon •  detect errors early •  Test or verify the soluEon before it is actually implemented •  explore the design space •  compare alternaEve soluEons through simulaEon Model simula2on and analysis can help to … 6 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

7. Université de Mons •  Allow to express the soluEon at a higher level of abstracEon than tradiEonal programming languages •  Provide support for •  Simula%ng the desired behaviour or process •  Genera%ng so1ware code automaEcally from the simulated model in order to •  Execute and integrate the generated so1ware with other so1ware or hardware •  Support or control the modeled process •  Verifying correctness of the modeled behaviour Modeling languages 7 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

8. Université de Mons Modeling Languages Example : Statecharts 8 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

9. Université de Mons Many tools for simulaEon and execuEon Example: Yakindu (www.statecharts.org) Modeling Tools Example : Statecharts 9 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

10. Université de Mons SISMIC (created by A. Decan) A tool under development at So1ware Engineering Lab (UMONS) to •  Simulate statecharts •  Integrate with Python code •  Facilitate tesEng (based on “stories”) •  Support mulEple communicaEng statecharts •  Express statechart contracts (invariants, pre- and postcondiEons) •  And many more… See hUps://github.com/AlexandreDecan/sismic Modeling Languages Example : Statecharts 10 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

11. Université de Mons Modeling Languages Example : Petri nets 11 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque See “Petri Nets World” for more information http://www.informatik.uni-hamburg.de/TGI/PetriNets

12. Université de Mons Many tools for simulaEon and formal analysis Example: Pipe2 (pipe2.sourceforge.net) Modeling tools Example: Petri nets 12 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

13. Université de Mons Modeling languages Examples: BPMN 13 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

14. Université de Mons Example: Visual Paradigm Simulate execuEon of business process to •  Study resource consumpEon (e.g. human resources, devices) throughout the process •  Evaluate cost •  IdenEfy boUlenecks •  Compare design alternaEves Modeling tools BPMN 14 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

15. Université de Mons Model verifica2on and model checking Verify if the model has all desirable proper2es (structural, behavioural, temporal, …) Use most appropriate formalism Use most appropriate (model checking) tool Examples •  Reachability •  Safety: something should never happen •  Liveness: something must eventually happen •  Fairness: every possible process should be executed infinitely o1en •  linear temporal logic (LTL) •  computaEon tree logic (CTL) •  … •  SPIN •  Alloy •  … 15 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

16. Université de Mons Provide beUer tool support and formal support for •  Domain-specific modeling •  Express models in a language close to the domain expert •  Human-computer interacEon modeling •  E.g. to control robots •  Model-based tesEng •  Facilitate tesEng of models / generate automated tests from models •  Design space exploraEon •  Evaluate the qualiEes of alternaEve models •  Model evoluEon •  Facilitate changing the model while preserving its desirable properEes Challenges 16 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

17. Université de Mons Example: A modeling language for gestural interacEon (GISMO, PhD thesis Romuald Deshayes, UMONS, 2015) Challenges Domain-specific so5ware modeling 17 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

18. Université de Mons Example: A modeling language for gestural interacEon (GISMO, PhD thesis Romuald Deshayes, UMONS, 2015) Challenges Domain-specific so5ware modeling 18 Prof. Tom Mens Service de Génie Logiciel Département d’InformaEque

19. Université de Mons Challenges Executable robot modeling 19 Mémoire Christophe D’Hondt

20. Université de Mons •  Research in progress •  Property-based tesEng •  Generate simplest test cases that violate a given property / invariant •  Design by contract •  Express pre- and postcondiEons and invariants on the model •  Raise excepEons during simulaEon/execuEon if contract violated •  Test generaEon •  Use model to generate tests for source code automaEcally •  MutaEon tesEng •  To evaluate and improve exisEng test suite Challenges Model-based tes2ng 20

Add a comment

Related pages

Modeling and simulation - Wikipedia, the free encyclopedia

Modeling and simulation ... phases and include topics like executable system ... for Modeling and Simulation (M.Tech (Modelling ...
Read more

SimIS Inc. | Modeling and Simulation

Executable Architecture is an architecture that contains executable models, (i.e. software ... Dynamic Process Modeling ... modeling and simulation ...
Read more

Software Process Simulation and Modeling: A Review

• Software Process Simulation and Modeling ... Modeling for Simulation Vensim Systems Dynamics ... existing software processes to reproduce
Read more

Towards Unified System Modeling and Simulation with ...

1 Towards Unified System Modeling and Simulation with ModelicaML: Modeling of Executable Behavior Using Graphical Notations Wladimir Schamai 1,Peter ...
Read more

Systems modeling - Wikipedia, the free encyclopedia

Business process modeling; ... Software and Systems Modeling (SoSyM) Systems analysis; ... Systems modeling and simulation: ...
Read more

Intel® System Modeling and Simulation

Intel® System Modeling and Simulation Using ... Provides system-level modeling and simulation tools that enable ... facilitating hardware and software co ...
Read more

Modeling and Simulation - Personal Web Space Basics ...

Systems Simulation: The Shortest Route to Applications. This site features information about discrete event system modeling and simulation. It includes ...
Read more

Modeling and simulation modeling - AnyLogic

Modeling and simulation modeling ... modeling software where someone can model arithmetic or algebra ... Control systems Business processes ...
Read more

Modelling, Simulation, and Performance Analysis of ...

Modelling, Simulation ... orchestrating such hybrid systems using executable process description ... and ubiquitous systems. Process modelling ...
Read more