42
Modélisation hétérogène – Généralisation Modélisation des systèmes 1

Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modélisation hétérogène – Généralisation

Modélisation des systèmes 1

Page 2: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modélisation hétérogène – Généralisation

Modélisation des systèmes 2

1.  Modèles mixtes & composition de modèles

2.  Modèles multi-vues

3.  Transformations de modèles 4.  Conclusion

Page 3: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Thermostat, vers l’implémentation ?

Modélisation des systèmes 3

?

Page 4: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modèle mixte

Modélisation des systèmes 4

Sous-modèle discret Sous-modèle continu

Modèle mixte

« control » « plant »

Page 5: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Thermostat, modèle mixte

Modélisation des systèmes 5

Sous-modèle discret Sous-modèle continu

Page 6: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Problème de la composition

Modélisation des systèmes 6

Sous-modèle type B

Sous-modèle type C

Modèle type A

Conversions ??? (données, temps & contrôle)

Page 7: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Adaptation Sémantique

Modélisation des systèmes 7

Ø  Sous-modèle à sémantique différente

Ø  Sous-modèles à modèle global : adaptation sémantique

Ø  L’adaptation sémantique: •  la principale complexité •  la grande variété des paradigmes

Ø  Paradigmes de modélisation (TFSM, DE, CT, …) •  la sémantique des données •  la sémantique de temps •  la sémantique de contrôle

Page 8: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Adaptation Sémantique

Modélisation des systèmes 8

Ø  Hétérogénéité des données •  évènements (valeur, date) •  échantillons d’un flux de données •  symboles

Ø  Hétérogénéité du temps •  temps continu •  instants discrets •  itérations

Ø  Hétérogénéité du contrôle •  dépendre des données et du temps •  dépendre des modèles de calcul

Page 9: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Job processing

Modélisation des systèmes 9

Page 10: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Job processing

Modélisation des systèmes 10

Modèle DE

Modèle CT

Page 11: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Job processing

Modélisation des systèmes 11

Modèle DE

Modèle CT ???

Page 12: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Embouteillage

Modélisation des systèmes 12

Page 13: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Embouteillage

Modélisation des systèmes 13

Modèle DE

Page 14: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Embouteillage

Modélisation des systèmes 14

Sous-modèle FSM

Sous-sous-modèle CT

Page 15: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Embouteillage

Modélisation des systèmes 15

Sous-modèle FSM

Sous-sous-modèle CT

???

Page 16: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Embouteillage

Modélisation des systèmes 16

Modèle DE

Sous-modèle FSM

???

Page 17: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modélisation hétérogène – Généralisation

Modélisation des systèmes 17

1.  Modèles mixtes & composition de modèles

2.  Modèles multi-vues

3.  Transformations de modèles 4.  Conclusion

Page 18: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modèles multi-vues

Modélisation des systèmes 18

Vue 1 (projection)

Vue 2 (projection)

Modèle = union des projections

Projection

Projection

Page 19: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple e-Commerce

Modélisation des systèmes 19

Page 20: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple e-Commerce, vue Besoins

Modélisation des systèmes 20

Projection

Page 21: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple e-Commerce, vue Architecture

Modélisation des systèmes 21

Projection

Page 22: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple e-Commerce, vue Interactions

Modélisation des systèmes 22

Projection

Page 23: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 23

Page 24: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 24

Appel d'une opération non déclarée dans une classe cible

Page 25: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 25

Page 26: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 26

Incohérence entre un type d'argument et un type de paramètre.

Page 27: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 27

Page 28: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 28

L'appel à une opération privée.

Page 29: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 29

Page 30: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 30

Nombre incohérent d'objets avec la multiplicité pour la classe.

Page 31: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 31

Page 32: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple Incohérence

Modélisation des systèmes 32

L'ordre des messages dans le diagramme de séquence ne peut pas être réalisé par cette machine à états.

Page 33: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modélisation hétérogène – Généralisation

Modélisation des systèmes 33

1.  Modèles mixtes & composition de modèles

2.  Modèles multi-vues

3.  Transformations de modèles 4.  Conclusion

Page 34: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Transformation de modèle

Modélisation des systèmes 34

Modèle X Langage B

Modèle X Langage A

Transformation

Modèle X Langage C

Transformation

Page 35: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modèle résultat

Modèle résultat

Modèle source

Modèle source

Transformation de modèle

Modélisation des systèmes 35

Méta-modèle source

Méta-modèle cible

Modèle source

Modèle résultat

conforme à conforme à

Modèle d'une transformation

exécute

Moteur de transformation

Méta-modèle transformation

conforme à

Page 36: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Organigrammes è contacts

Modélisation des systèmes 36

conforme à conforme à

Person è Contact!&!Contact.name= Person.first_name +" "! +Person.last_name!

exécute

Méta-modèle source Méta-modèle cible

Moteur de transformation

<contact>! <name>Alain Bravo</name>! <address></address>!</contact>!<contact>! <name>Olivier Friedel</name>! <address></address>!</contact>!

Modèle source Modèle résultat

Bravo, Alain, DG

Friedel, Olivier, DE … …

Page 37: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modèle résultat

Modèle résultat

Modèle source

Modèle source

Transformation de modèle

Modélisation des systèmes 37

}  Types de transformations

}  M2M / M2T

}  Unidirectionnelle / bidirectionnelle

}  Utilisation }  Conversion }  Raffinement }  Génération de code

}  Restructuration

}  Inclusion de patrons

Méta-modèle source

Méta-modèle cible

Modèle source

Modèle résultat

conforme à conforme à

Définition de la transformation

exécute

Moteur de transformation

Page 38: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Exemple : Feux tricolores, transformation

Modélisation des systèmes 38

Fonctionnement normal

[…]!< '_Controller : FSM-Actor |!currState : 'init,!initState : 'init,!transitions : ( ! ('relation : 'Pred --> 'Pgreen {!

!guard: (isPresent('Pgo)) !!output: (('Pred |-> # 0) ;!! ! !('Pgrn |-> # 1)) !!set: (emptyMap)}) ;!

('relation3 : 'Pgreen --> 'Pred {!!guard: (isPresent('Pstop)) !!output: (('Pred |-> # 1) ;!! ! !('Pgrn |-> # 0)) !!set: (emptyMap)}) ;!

('relation2 : 'init --> 'Pred {!!guard: (# true) !!output: (('Pred |-> # 1) ;!! ! !('Pgrn |-> # 0)) !!set: (emptyMap)})),!

[…]!

Modèle source

Modèle résultat

Page 39: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Modélisation hétérogène – Généralisation

Modélisation des systèmes 39

1.  Modèles mixtes & composition de modèles

2.  Modèles multi-vues

3.  Transformations de modèles 4.  Conclusion

Page 40: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

En résumé

Modélisation des systèmes 40

}  Hétérogénéité des systèmes

}  Conception de systèmes hétérogènes = beaucoup de problématiques différentes

}  Besoin de langages de modélisation adaptés ☛ hétérogénéité des modèles

}  Besoin d’outils d’analyse fiables, de bout en bout du cycle

}  Modélisation hétérogène = beaucoup de techniques différentes }  Entre autres :

}  Automates hybrides et modèles modaux }  Composition de modèles }  Modèles multi-vues }  Transformation de modèles }  Langage de coordination }  …

Page 41: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Sources & bibliographie (sélectionnés)

Modélisation des systèmes 41

}  TheMathWorks – Matlab / Simulink – modèles de démonstration }  U. Berkeley, EECS, CHESS – Ptolemy II – modèles de démonstration }  Edward A. Lee and Sanjit A. Seshia,

Introduction to Embedded Systems, A Cyber-Physical Systems Approach, http://LeeSeshia.org, ISBN 978-0-557-70857-4, 2011

}  UC Berkeley course EECS 149 « Introduction to Embedded Systems », Edward A. Lee and Sanjit A. Seshia

}  « Modélisation des systèmes », Cours de troisième année, option SI, Supélec, Frédéric Boulanger

}  « Hybrid Systems, Part I », Edward A. Lee and Sanjit A. Seshia, UC Berkeley }  « Introduction to Hybrid Automata », Arijit Mondal, Kapil Modi

and Arnab Sinha, IIT Kharagpur }  « The Art of Hybrid Systems », John Lygeros, Shankar Sastry

and Claire Tomlin

Page 42: Modélisation hétérogène – Généralisationlinaye/Generalisation.pdf · 2019. 1. 5. · Modélisation hétérogène – Généralisation 2 Modélisation des systèmes 1. Modèles

Sources & bibliographie (sélectionnés)

Modélisation des systèmes 42

}  A theory of timed automata, Alur Rajeev and Dill David, Theor. Comput. Sci.

}  Decision problem for timed automata: A survey, Alur Rajeev and P. Madhusudan, proceedings of SFM

}  Modularity for timed and hybrid systems, Alur Rajeev and Thomas A. Henzinger, proceedings of CONCUR

}  Principles of Model Checking, Christel Baier and Joost-Pieter Katoen, MIT Press

}  Vérification par automates temporisés, Patricia Bouyer and François Laroussinie