dtsi/sla/ 1journées rtp – secc – 15/11/2002 – ens cachan thesystem ba c laboratoire logiciels...
TRANSCRIPT
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 1
theSystem
theSystem
BA
C
Laboratoire Logiciels pour la Sûreté des Procédés
Concevoir et développer méthodes et outils de réalisation de systèmes temps-réel complexes
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 2
Exécutifs temps réel sûrs. Systèmes d’exploitation répartis
Conception et mise en œuvrede systèmes critiquesde composants temps réel
Spécification / modélisationde composants temps réel
Principaux axes de R&D
ACCORD
OASIS
AGATHA
Génération de testsValidation
Analyse statique
Développement par Composants de Systèmes Embarqués ACCORD : Méthode UML & Objets Temps Réel
AGATHA : Génération Automatique de Tests
Analyse Formelle de Modèles Concurrents
Développement orienté Sûreté de Systèmes Temps Réel OASIS : Modèle Déterministe pour le Temps Réel Multitâche
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 3
Développement par composants (ACCORD)
Problème : méthodologie « Maître d’œuvre » centrée métier & prototypage logiciel rapide
Spécification TR & transparence choix d’implantation Réutilisation, Evolutivité
Approche : Modèle à Objets Temps Réel (base : Progr. Concurrente à Objets) Formalisme UML (standard, ouvert, extensible) Patterns de conception, gén. code sur différents modèles d’éxé.
Outils supports : AGL Objecteering, gén. de code C++, OS TR, CORBA…
Réalisations : Définition méthodologie (Quoi modéliser ? Quand ? Comment affiner ?…)* Extension du formalisme UML pour spécifications TR déclaratives Fourniture modules supports méthodologie intégrés à un AGL UML Fourniture modules génération d’implantation (Solaris, VxWorks, SIGNAL)
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 4
Développement par composants (ACCORD)
Système embarqué avec PSA
(5ième PCRD, AIT-WOODDES) connexion OS-TR multitâches (Rhapsody / I-Logix) Calculateurs // avec EADS Missiles
(RNTL, ACOTRIS) connexion modèles synchrones (SIGNAL, SynDEx) Supervision automatismes distribués
(RNTL, CLIPS) plate-forme composants distribués (Plug&NetTM)
Valorisation : Modélisation architecture système automobile
(ITEA, EAST-AEE) Modélisation composants Temps Réel
(5ième PCRD, ARTIST)
Normalisation à l’OMG : UML&RT
(SPT Prof., UML 2.0, QoS Prof.)
ACCORD Automate de protocole, QoS TR, Evt. Mod. Synchr.
Applications et évaluations
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 5
Analyse & validation de modèles AGATHA
Problème : analyse d’une spécificationet définition d’une stratégie de tests
Gestion de la logique et des données Exhaustivité et minimalité Exploitation des formalismes industriels
Approche : Exécution symbolique du modèle
fusion d’automates, réécriture, résolution de contraintes Couverture « fonctionnelle » de chemins (point fixe symbolique) Traduction sémantiques formalismes industriels en EIOLTS
Outils supports : AGL ObjectGeode, Statemate, Objecteering, freewares…
Réalisations : Méthode d’analyse et d’abstraction (limitation combinatoire) Moteur d’exécution symbolique Interfaces de traduction (transparence des techniques formelles)
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 6
Analyse & validation de modèles AGATHA
Analyse modèle com. rendez-vous
(LSA+, 7 modules //, 1500 lg) Système contrôle, EdF Analyse modèle com. asynchrone
(SDL, 20 modules //, 5000 lg) Séquenceur de vol Ariane V, EADS LV Analyse modèle réactif synchrone
(Statechart, 10 modules) Fonction habitacle automobile, PSA Analyse modèle UML
(AIT-WOODDES) Assistant guidage, PSA Analyse modèles UML certifiables
(RNTL, EDEN) appli. cartes à puces sécuritaires, Trusted Logic, Schlumberger Analyse modèles hétérogènes
(RNRT, STACS) appli. cartes à puces sécuritaires, Trusted Logic, Schlumberger
Valorisation : Validation système automobile
(ITEA, EAST-AEE)
Applications et évaluations
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 7
Connexion entre méthode ACCORD/UML
et génération de tests AGATHA
Train
Control
Circuit
Produit
ACCORD/UML
Enviro
nnement
AGATHA
(Vit < 100 ) ( dist < 200)(Reg = true) (Vit 50)
…
(Vit < 100 ) ( dist < 200)(Reg = true) (Vit 50)
…Contraintes de chemin
J1 = (Vit=120, dist=150) J2 = (Reg=true, Vit=55)
…
J1 = (Vit=120, dist=150) J2 = (Reg=true, Vit=55)
…Jeux de tests
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 8
Conception de système temps réel multitâchepour les applications de sûreté (OASIS)
Problème : conception et mise en œuvre sûred’un système TR complexe
Expression déclarative et respect contraintes (CEI-880) Preuve dimensionnement Exécution sûre et tolérante aux fautes
Approche : Modèle de progr. TR déterministe
(modèle cadencé par le temps) Analyse statique du programme pour calcul d’ordonnancement Extension d’un formalisme standard
(C ANSI)
Réalisations : Compilateur dédié, outil de dimmensionnement Noyau d’exécution sûr, moniteur pour exécution Linux Support de communication distribuée déterministe
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 9
Conception de système temps réel multitâchepour les applications de sûreté (OASIS)
Système protection nucléaire critique
(EdF et Framatome) Système contrôle-commande levage
(PME) Analyse de sûreté
(IRSN) Tolérance aux fautes
(5ième PCRD, OCERA) composant Open Source Linux dédié
Valorisation : Architecture sûre de système automobile
(ITEA, EAST-AEE) Temps Réel Critique
(5ième PCRD, ARTIST)
Normalisation systèmes électroniques de sûreté : CEI-880
Applications et évaluations
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 10
Ingénierie Dirigée par les Modèlesde Systèmes Temps Réel Embarqués
• MDE means:modeling a system to develop it with
• a clear separation of implementation technology• following a continuous modeling process• using intensively models
(composition, transformation,synthesis, etc.)
No break with current usages! models already widely used for system developm.
just reinforce their use and focus on them(instead on code/libraries/run-time)
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 11
Why to use MDE for RT-ES?
• Intrinsically requires various points of view
Functional, Real-Time, Security, fault-tolerance…
• Separation among product line andparticular application requirements is difficult
a priori implementation choices or constraints
Requirements often use particular real time values
• Target implementation choices are very variable
Various execution models for same specification, eg.:Multitask models with RT-OS, Synchronous models…
Various deployments and platforms, e.g.:Single/multi processors, shared/distributed memory…
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 12
A MDE Methodolgy: three components
Method Process
Supports
DicoXxxxxxxx
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 13
user
!+
MDE through UML Profile
E.g.: Structure of ACCORD Methodology
ACCORD/UMLMethodology
relizes
Modelling tools
defines
ACCORD/UML Profile
OMG’ Standard profiles !!!
SPE profileSPT profile AL profile
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 14
E.g.: ACCORD/UML PAM DAM
• DAM squeleton synthesis + traceability links
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 15
How MDE would help for RT-ES?
• Target implem. choices are very variable
Exe. models: implem. Frameworks + model transf.
Deployments: deployment frameworks/interfaces
multilevel model agreg./compacting
DicoXxxxxxxx
Intrinsically requires various viewsMethodo. providing clear modeling points of view
Points of view composition and filtering rules
A priori specification of implementationMethodo.: dedicated points of view (RT, deployment)
Modeling: dedicated abstraction (RTO, QoS, com.)
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 16
Same business model with high level concepts to various execution models
MultitaskingReg
maintainmaintainTask
StartStopButton
sendStartStopSignalsendStartStopSignalTask
SpdSens
acquireacquireTask
Task
createstart
Lock
createtake
release
MailBox ReplyBoxSignal
ACCORD Virtual Machine
• • •
TimeTrigeredModel
• • •
OASIS
Multithreaded RTO(C++ with RT-OS)
Real-Time Objects
Reg
maintainr
SpdSens
acquire
StartStopButton
sendStartStopSignal
«RTO» «RTO»
«thread»«thread»
«RTO»
«thread»
ACCORD Kernel
Synchronous modelLoop
Reg
maintain
StartStopButton
manageStartStop
SpdSens
acquire
Main
SIGNAL/SynDEx
DicoXxxxxxxx
Thanks to MDE module definition and development
Formalise implementation expertise
Build one time implementation procedure
reuse for several applications
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 17
E.g.: DAM VeM (UML) AGATHA
Formal analysis of system behavior from its
UML model
• Model filtering, translation into formal model
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 18
E.g.: AGATHA results TeM (UML)
Test sequencesautomatically generated and imported in modeler
Model structuration, test representation
Dtsi/SLA/
Journées RTP – SECC – 15/11/2002 – ENS Cachan 19
What we need ?
• Methods to define well-structured models
Business oriented (versus software technology oriented)
Activity oriented (req / spec / design / impl / proof / test / simul, etc.)
• Implementation platform models (CCM, RT-OS, etc.)
• Expertise implementation (RT, emb., safety, valid., etc.)
• Techniques to exploit expertise
Profile, script, meta-modeling, aspect progr., etc.
• Tooling & standards