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 > Technologies de l'information > Technologies logicielles Architectures des systèmes > Génie logiciel > UML pour le temps réel : le langage et les méthodes > Vue générale d'UML
Cet article fait partie de l’offre
Automatique et ingénierie système
(138 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
2. Vue générale d'UML
La base de notations utilisée ici est celle d'UML 2.5, en vigueur au moment de la rédaction de cet article. Toutefois, l'OMG s'efforce d'assurer une compatibilité ascendante maximale des versions de la norme afin de ne pas pénaliser les outils existants lors des évolutions de la norme, et comme les concepts et structures utilisés ici font partie des fondamentaux d'UML qui ne devraient que très peu évoluer dans leur notation et leurs usages, les exemples présentés devraient rester valables pour les versions à venir d'UML.
2.1 Différents diagrammes d'UML
UML offre un nombre très important de vues différentes, complémentaires et cohérentes d'un même système. UML 2.5 en offre quatorze qui peuvent être organisées en deux grandes classes, les diagrammes de structures et les diagrammes de comportement, constituées comme suit.
-
Description de comportements :
-
description au niveau système des besoins des utilisateurs : supportée par les diagrammes de cas d'utilisation ;
-
description du fonctionnement dynamique des éléments du système : elle repose principalement sur les diagrammes de machines à états. Elle peut être précisée par des diagrammes d'activités précisant les flots de données et de contrôle ;
-
description des interactions entre les objets du système : elle repose sur les diagrammes de séquence, les diagrammes de communication, les diagrammes globaux d'interaction et les diagrammes temporels. Ces différents types de diagrammes fournissent une vue gros grain de la dynamique du système centrée sur les échanges entre les objets qui le réaliseront. Le plus utilisé est le diagramme de séquence.
-
-
Description de structures :
-
description de la structure et de l'architecture logique (logicielle) du système : elle repose principalement sur les diagrammes de classes qui effectuent une typologie des entités constituant le système et qui précisent les relations entre ces différents types d'entités. Ils peuvent être étendus pour expliciter des notions de composition à l'aide des diagrammes de structures composites. Ils sont complétés par des diagrammes d'objets précisant quelles instances particulières des classes seront manipulées pour mettre en œuvre le système ;
-
description...
-
Cet article fait partie de l’offre
Automatique et ingénierie système
(138 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
Vue générale d'UML
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
Automatique et ingénierie système
(138 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