Présentation
RÉSUMÉ
UML est utilisé industriellement pour le développement de logiciels. Son introduction plus récente dans le domaine du temps réel a montré qu’il offre une base riche et intéressante. Cet article fait un point sur les concepts standard d’UML pouvant être utilisés pour modéliser des systèmes temps réel et en particulier les différents supports fournis par UML pour la modélisation de la concurrence, du comportement, des communications et d’informations temporelles.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleABSTRACT
UML is used by industry for the development of software. More recently, its introduction in the domain of real-time systems shows that it provides a rich and interesting basis for this domain. This paper presents the UML standard concepts that can be used to model real-time systems and, in particular, the various supports provided to model concurrency, behavior, communications and timing information.
Auteur(s)
-
François TERRIER : Chef du département Ingénierie des logiciels et des systèmes - CEA, LIST – Gif-sur-Yvette, France
-
Sébastien GÉRARD : Chef du laboratoire Ingénierie dirigée par les modèles pour les systèmes embarqués - CEA, LIST / DILS – Gif-sur-Yvette, France
INTRODUCTION
Avec la normalisation d'UML (Unified Modeling Language), le point dur de la profusion de formalismes orientés objets est tombé, facilitant par là-même l'introduction de ces technologies dans le domaine industriel. Présent dans le cursus de formation des filières informatiques de la plupart des masters et écoles d'ingénieur, UML est déjà largement utilisé dans l'industrie pour la conception et le développement des systèmes d'information de secteurs très variés comme les finances ou la défense. Les travaux en cours à l'OMG (Objet Management Group) pour introduire dans les évolutions de la norme les points relatifs au domaine du temps réel montrent un intérêt fort pour UML de la part du monde des systèmes et logiciels temps réel ou embarqués avec l'implication de secteurs industriels majeurs comme l'avionique, les télécommunications et l'automobile .
Ce texte vise à faire un point sur les concepts natifs d'UML déjà disponibles en standard et qui peuvent être utilisés pour modéliser des systèmes temps réel. En particulier, nous décrirons rapidement les différents supports fournis par UML pour la modélisation de la concurrence, du comportement, des communications et informations temporelles quantitatives. Il se réfère à la version 2.5 fournie par l'OMG en 2013. Les exemples de modèles ont été construits à l'aide du modeleur UML 2 de référence de la fondation Eclipse ( http://www.eclipse.org/papyrus).
Un second article UML pour le temps réel. Application illustrera ces concepts sur une étude de cas en mettant en évidence une approche méthodologique proposée pour traiter les points les plus délicats de l'utilisation d'UML.
MOTS-CLÉS
Classe/Objet machine à état messages Spécification et modélisation de logiciels Conception de systèmes temps réel Systèmes embarqués Logiciels temps réel
KEYWORDS
Class/Object | state machine | messages | Software specification and modeling | Real time system design | Embedded systems | Real time software
VERSIONS
- Version archivée 1 de juin 2005 par François TERRIER, Sébastien GÉRARD
DOI (Digital Object Identifier)
CET ARTICLE SE TROUVE ÉGALEMENT DANS :
Accueil > Ressources documentaires > Automatique - Robotique > Automatique et ingénierie système > Supervision des systèmes industriels > UML pour le temps réel : le langage et les méthodes > Caractéristiques temps réel quantitatives
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
4. Caractéristiques temps réel quantitatives
Les paragraphes précédents étaient dédiés à la modélisation des aspects qualitatifs des applications temps réel : concurrence, communication, comportement et actions. Nous allons maintenant regarder les aspects quantitatifs de la spécification temps réel en UML standard. UML propose un modèle simple utilisable lorsque des informations très précises sur la mesure et les propriétés du temps ne sont pas nécessaires. Cela permet d'effectuer une première spécification de haut niveau, mais peut donner lieu à différentes interprétations si l'on cherche à en déduire des propriétés formelles.
UML définit deux éléments clés Observation et TimeExpression :
-
Observation permet d'identifier des événements liés à des comportements modélisés et dont l'occurrence définit des instants ou des durées ;
-
TimeExpression permet de spécifier des expressions dont l'évaluation donne une valeur temporelle soit un instant dans le temps, soit un intervalle de temps. UML ne spécifie pas d'unité ni d'opération prédéfinie, leur utilisation reste donc semi-formelle et dépend de conventions définies par les utilisateurs.
Ces données peuvent intervenir en particulier dans deux types de diagrammes : les diagrammes de séquence et les diagrammes d'états.
4.1 Modélisation de propriétés temporelles dans les diagrammes de séquence
Le premier type de diagramme d'UML, particulièrement approprié pour la spécification des systèmes temps réel, est le diagramme de séquence. En effet, un diagramme de séquence possède deux dimensions (paragraphe 3.3.3) :
-
l'axe horizontal, qui contient les objets impliqués dans l'interaction décrite par le diagramme ;
-
l'axe vertical, qui représente...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Caractéristiques temps réel quantitatives
BIBLIOGRAPHIE
-
(1) - SELIC, BURNS, MOORE, TEMPELMEIER, TERRIER - * - . – Heaven or Hell ? A « Real-Time » UML ? In Lecture Notes in Computer Science Vol. 1939, pp 93-100 (2000).
-
(2) - MOORE, COOLING - Real-time Perspective – Overview (Version 1.0) - ARTISAN Software (1998).
-
(3) - SELIC, RUMBAUGH - Using UML for Modeling Complex Real-Time Systems - ObjecTime Limited (1998).
-
(4) - DOUGLASS - Doing Hard Time : Developing Real-Time Systems with UML - Objects, Frameworks, and Patterns. Object technology Series, ed. Rumbaugh. Addison Wesley (1999).
-
(5) - GÉRARD - * - . – Modélisation UML exécutable pour les systèmes embarqués de l'automobile, PhD Thesis, in GLSP. Evry : Paris (2000).
-
(6) - MELLOR, BALCER - Executable UML : A Foundation for Model-Driven...
DANS NOS BASES DOCUMENTAIRES
ANNEXES
-
Objet : un objet est associé à une brique logicielle qui possède une structure interne et un comportement, et sait communiquer avec d’autres objets. Il représente un concept, une idée ou toute entité du monde physique. La communication entre les objets permet de réaliser les fonctionnalités attendues.
-
Classe : une classe décrit (type) un ensemble d’objets qui partagent les mêmes spécifications de propriétés, contraintes, comportement et sémantique.
-
Instance (de classe) : une instance d’une classe référence un objet concret qui possède les caractéristiques de la classe. Il s'agit d'un objet constituant un exemplaire de la classe. L'instanciation est l'action de créer un objet à partir d'un modèle (la classe).
-
Opération : une opération est la spécification externe d’un comportement d’une classe ; elle définit le nom, le type, les paramètres et les contraintes pour l’invocation de ce comportement.
-
Méthode : une méthode est la spécification interne d’un comportement ; elle décrit sa réalisation.
-
Comportement : un comportement caractérise comment un objet change d’état au cours du temps et de ses interactions ; il permet de décrire des traitements et procédures.
-
Activité : une activité est la spécification d’un comportement paramétrable avec des données d’entrée et pouvant produire des données de sortie. Elle est exprimée sous la forme d’une séquence coordonnée d’activités ou d’actions.
-
Action : une action est une unité...
Cet article fait partie de l’offre
Technologies logicielles Architectures des systèmes
(239 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive