Outils personnels
Vous êtes ici : Accueil UML 2.1 Utilisation UML
« Juillet 2008 »
Juillet
LuMaMeJeVeSaDi
123456
78910111213
14151617181920
21222324252627
28293031
Se connecter


Mot de passe oublié ?
 

Introduction à UML

Ce document a pour objectif de vous expliquer comment utiliser UML 2.1 puis SysML 1.0 afin de réaliser des Projets Informatiques, Électroniques ou des Projets Hétérogènes Complexes.

Multi engrenagesPourquoi UML ?

De la même façon qu'il vaut mieux dessiner une maison avant de la construire, il vaut mieux modéliser un système avant de le réaliser.

UML pour :

  • Obtenir une modélisation de haut niveau, indépendante des langages et des environnements.
  • Faire collaborer des participants de tous horizons autour d'un même document de synthèse.
  • Faire des simulations avant de construire un système.
  • Exprimer dans un seul document tous les aspects statiques, dynamiques, juridiques, spécifications, etc...
  • Documenter un projet.
  • Générer automatiquement la partie logiciel d'un système.

Qu'est ce que UML ?

UML est un langage de modélisation permettant de représenter tous les aspects statiques et dynamiques d'un système.

UML permet la constitution de documents utilisés par tous les participants d'un projet.

UML pose des bases qui sont faites pour être étendues à d'autres domaines que l'informatique.

 

La Genèse d'UML

Au début des années 1990 il existait environ une cinquantaine de méthodes de modélisation objet.
Cette diversité et la concurrence qui l'accompagnait étaient nuisibles au développement des technologies objet.
Entre 1995 et 1997, l'OMG : Object Management Group, lance UML 1.0 en partant des méthodes de modélisation BOOCH, OMT et OOSE.
L'un des premiers environnements de modélisation UML : Rational Rose permis la diffusion du langage au plus large public.

Les Evolutions d'UML : SysML, Soc, etc...

Depuis sa création UML n'a cessé d'évoluer et d'étendre sa capacité de modélisation au delà des simples problématiques informaticiennes.
Nous voyons naître aujourd'hui au sein de l'OMG les évolutions suivantes d'UML :

  • SysML : Systems Modeling Language pour modéliser des systèmes hétérogènes complexes comme l'airbag ou autre système d'ingénierie multi-disciplinaire.
  • BMI : Business Modeling and Integration pour modéliser le fonctionnement inter et intra entreprise.
  • Grâce au standard « Meta Object Facility » ou « MOF » définit par l'OMG, on voit certains spécialistes créer leurs profils UML comme SOC : System On Chip ou RTP : Real Time Profile pour répondre à des besoins précis de modélisation.

Références Bibliographiques et Webographiques

Quelques livres :

  • « UML 2 par la pratique » de Pascal Roques chez Eyrolles livre orienté langage.

  • « UML 2 en action » de Pascal Roques chez Eyrolles livre orienté méthode 2TUP.

  • « Real Time Uml » de Bruce Powel Douglass.

Quelques sites et liens :

Environnements UML : Rhapsody, Rose, etc...

Il existe de nombreux environnements de développement UML et chacun apporte sa touche de personnalisation du langage. Il n'est ainsi pas étonnant de voir des représentations graphiques légèrement différentes de la norme.

Quelques environnements de développements libres ou gratuits :

Quelques environnements de développements industriels :

La Méthode 2TUP

Two Track Unified Process : 2TUP
Nous utiliserons la méthode de développement 2TUP afin de distinguer l'étude fonctionnelle, l'étude technique et le cycle de réalisation du projet.
Dans l'utilisation de cette méthode, notre objectif sera de rester le plus générique possible le plus longtemps possible afin de faire les choix technologiques le plus tard possible.
La méthode 2TUP n'est en aucun cas contradictoire ou concurrente à un cycle en V et à un processus de développement itératif bien au contraire.

La Méthode 2TUP : Les Branches

2TUP Les branches

 

 

La Méthode 2TUP : Les Phases

 

2TUP les phases

 

L'Approche Top – Down

Inutile de chercher à définir le détail quand on ne connait pas le global.
L'approche Top – Down proposée à travers la méthode 2TUP apporte une modélisation de très haut niveau qui permet :

  • Une meilleure généricité des modèles afin d'adapter toujours plus simplement et rapidement un besoin à son contexte.
  • Une meilleure modularité des modèles afin d'offrir des blocs interchangeables et l'évolution progressive d'un système.
  • Un effort adapté à chaque niveau de réflexion.

La Méthode Itérative en Spirale

Chaque itération de développement produit une version à l'issue des étapes 1 à 5.
Un projet est généralement décomposé en phases qui sont réalisées par itération. Le projet complet est ainsi réalisé au bout de N itérations qui auront permis de limiter les risques et de consolider le modèle global.

Cycle en spirale

Implications et Conséquences d'un Modèle

Le modèle est au système ce que l'architecture est au bâtiment.
Un modèle fortement lié à l'environnement et/ou au métier dans lequel le système est modélisé sera simple à comprendre pour les collaborateurs du métier mais plus difficilement utilisable pour d'autres métiers et/ou environnements.
Un modèle aux blocs fortement couplés sera d'une moins bonne modularité mais d'une meilleure efficacité pour un cas donné.
L'art de la conception consiste toujours à choisir entre généricité et spécialisation et nécessite du concepteur qu'il est conscience des conséquences de ses choix.

Exemples de Projets UML

Quelques projets traités à l'école depuis 2003 :
Le digicode
L'explorateur de fichier
La calculatrice
Les robots nettoyeurs
La machine à café
La carte de télé maintenance
L'airbag

Quelques Projets traités en PE ou en stage :

  • Émission / Réception entre base et satellite.
  • Rétro ingénierie du profil de génération de code pour systèmes embarqués dans des satellites.
  • Modélisation d'un nouveau simulateur de vol.

Exercices

Exercice 1 (pour Ismea 2A) :

  • Décrivez le déroulement d'un de vos projets informatiques ou industriels allant jusqu'à la réalisation.
  • Décrivez le déroulement du projet en toute objectivité en précisant le nombre et le rôle des personnes qui y ont participé.
  • Identifiez les étapes du processus 2TUP que vous avez utilisé ou non.

Exercice 2 (pour ismea 3A) :

  • Définissez les grandes lignes d'un projet de réalisation d'une carte de télé-maintenance.
  • Définissez les collaborateurs qui y participeront.
  • Définissez le macro planning de réalisation du projet.
  • Établissez la liste des documents qui seront produits et requis pour chaque phase du projet.

La Caisse Enregistreuse

Le fonctionnement d'une caisse est le suivant :

  • Les produits choisis par un client sont présentés un par un devant le système de lecture de la caisse.
  • Le lecteur lit le code barre. Si le produit est identifié, son nom et son prix sont affichés sur l'écran.
  • Si le produit n'est pas reconnu, le message "produit inconnu" est affiché et le code barre doit être entré par le clavier de la personne chargée de la caisse.
  • Quand tous les articles ont été lu, la caisse émet un ticket comportant la liste des articles avec le nom, le prix unitaire, la quantité et le prix total.
  • Certains produits peuvent bénéficier d'une offre spéciale. Le système doit permettre l'ajout d'une offre spéciale ("un exemplaire acheté = un exemplaire offert", "rabais de 10%", ...).
  • En cours de saisie des produits, un produit déjà saisi peut être retiré de la liste.
  • Par l'intermédiaire du clavier, le caissier peut débuter une "session" de saisie, retirer le dernier produit saisi de la liste des produits, fermer la session et imprimer un ticket.
  • A terme, les plateformes hardware doivent pouvoir être changées facilement.
  • La caisse enregistreuse contient une base de données locales des produits.

 

 

 

 

 

 

 

Actions sur le document