UML/SysML temps réel [T9ES532M]

UML/SysML temps réel [T9ES532M]

En pratique

Nature
Elément constitutif
Volume horaire de CM
16
Volume horaire de travail personnel
11
Langue d'enseignement
Français

Description du contenu de l'enseignement

  • Ce cours, orienté sur le développement logiciel basé sur des modèles, vise à fournir une base solide et une compréhension approfondie des concepts les plus essentiels de la modélisation orientée objet en programmation temps réel.
  • Trois aspects indissociables des diagrammes UML sont détaillés conjointement, y compris les notations des éléments du langage, leur signification et la manière de les utiliser efficacement dans un cycle de vie du logiciel.
  • La relation entre SysML et UML est expliquée et illustrée.
  • Une grande importance est accordée aux exemples illustratifs de systèmes contraints en temps réel avec une complexité croissante, ce qui donne vie à la théorie sous-jacente, de la spécification des exigences à la maintenance et à l'évolution des logiciels, en passant par la conception et la mise en œuvre des systèmes (voire la génération automatique de code exécutable).

 

  • This course, oriented model-based software development, aims at providing a solid foundation and deep understanding of the most essential object-oriented modelling concepts in real-time programming.
  • Three inseparable aspects of the UML diagrams are detailed jointly, including the notations of the language elements, their meaning and the way to use them efficiently in a software life cycle.
  • SysML relationship with UML is explained and illustrated.
  • Much emphasis is spent on illustrative examples of hard real-time constrained systems with increasing complexity, breathing life into the underlying theory from requirement specification over system design and implementation (even automatic generation of executable code) to maintenance and software evolution.

Organisation

Modalités d'organisation et de suivi

A – Rappels et/ou présentation (selon présence des pré-requis) des notations SysML et UML

    • Description d'un processus de développement reposant sur l'approche descendante hiérarchique
    • Spécification du modèle externe en réponse au cahier des charges
    • Expression des cas d'utilisation et des scenarii associés au travers des diagrammes de séquence simplifiés
    • Spécification du modèle interne en réponse au modèle externe
    • Reprise et complétion des diagrammes de séquences avec ajout des objets interface(s), métier(s) et contrôle(s)
    • Spécification structurelle de l'architecture interne
    • aspects statiques: diagrammes de collaboration puis diagrammes de classes
    • aspects dynamiques: diagrammes états-transitions
    • Vérification de la cohérence et de la complétude des diagrammes participant aux modèles externe et interne
    •
B – Spécification de l'aspect comportemental du flot de contrôle

    • Automates hiérarchiques
    • Contrôle centralisé
    • Contrôle distribué
    • Approches synchrone (objets passifs) et asynchrone (objets actifs)
    • Spécifications des exigences et  contraintes temporelles

C – Mise en oeuvre

    • Techniques d’ordonnancement utilisables (déploiement mono et multi-processeurs)
    • Vérification de l’expression des exigences et intégration validée (techniques de test)
    • Etude pratique de différents cahiers des charges de complexité croissante illustrant l’ensemble des concepts précédents (C++)

Informations pédagogiques

Compétences à acquérir

  • Acquisition des bases de la modélisation orientée objet en programmation temps réel au moyen de diagrammes UML/SysML ainsi que leurs interrelations.
  • Appropriation d’un processus de mise en œuvre de l’expression initiale d’un cahier des charges à la fourniture du livrable.


À la fin du cours, les étudiants savent utiliser les notations SysML et UML pour formaliser les phases d’analyse, de spécification, et de conception d’une application logicielle temps-réel en réponse à un cahier des charges. Ils peuvent décliner un modèle externe (cas d’utilisation et scenarii associés), puis spécifier les parties statique et dynamique du modèle interne du logiciel via les diagrammes de séquences, de collaboration (communication), l'architecture interne avec les diagrammes de classes et enfin les diagrammes d'états-transitions.

Pré-requis recommandés

  • Avoir des notions d’analyse fonctionnelle, de programmation Orienté-Objet (OO) et d’informatique Temps-Réel (TR).
  • Connaître les concepts et services offerts par les systèmes d’exploitation temps-réel pour la conception d’applications embarquées fiables et sécurisées

Bibliographie, lectures recommandées

  1. UML Profile for Schedulability, Performance, and Time Specification Version 1.1,<http://www.omg.org/spec/SPTP/1.1/&gt;, Object Management Group, Needham, MA, 2005
  2. UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems Version 1.0 OMG Document Number: formal/2009-11-02
  3. UML 2.4.1, <http://www.omg.org/spec/UML/2.4.1/&gt;, Object Management Group, Needham, MA, 2011
  4. Modélisation et analyse de systèmes embarqués ou temps-réel avec le profil UML MARTE, P. Boulet, Techniques de L'ingenieur, Feb 10, 2011
  5. UML pour le temps réel : le langage et les méthodes, F. Terrier et S. Gérard. Techniques de L'ingénieur, Jul 10, 2013
  6. Real Time UML, B.P. Douglass, Addison Wesley, Boston, 2006.
Dernière modification : mar, 05/01/2021 - 11:39