Image meilleures pratiques modéliser visuellement UML

La modélisation visuelle augmente le niveau d'abstraction

Rubriques

En quoi consiste la modélisation visuelle ? Haut de la page

La modélisation visuelle est l'utilisation de notations de conception riches du point de vue de la sémantique, graphiques et textuelles, afin de consigner les conceptions logicielles. Une notation comme l'UML permet d'augmenter le niveau d'abstraction en maintenant une syntaxe et une sémantique rigoureuses. Cela facilite la communication dans l'équipe de conception lors de la formation et de la revue de la conception, permettant au lecteur de réfléchir au sujet de la conception, et fournit une base sans ambiguïté pour l'implémentation.

Pourquoi modéliser ? Haut de la page

Un modèle est une vue simplifiée d'un système. Il montre les éléments essentiels du système d'un point de vue spécifique et cache les détails non essentiels.  Les modèles peuvent avoir les fonctions suivantes :

Aider à comprendre les systèmes complexes Haut de la page

L'importance des modèles s'accroît en fonction de la complexité des systèmes.  Par exemple, on peut construire une niche sans schéma directeur.  Cependant, si l'on passe à la construction de maisons, puis de gratte-ciels, il devient nécessaire d'exécuter des schémas directeurs.

De même, une petite application créée par une personne en quelques jours peut être facilement compréhensible dans son intégralité.  Par contre, un système de e-commerce comprenant des dizaines de milliers de lignes de code (SLOCs) - ou un système de contrôle aérien avec des centaines de milliers de SLOCs- ne peuvent pas être facilement compris par une seule personne.  Les modèles de construction permettent au développeur d'examiner le projet dans son ensemble, de comprendre comment les composants interagissent et d'identifier les anomalies fatales. 

 Voici quelques exemples de   modèles :

  • Les cas d'utilisation pour choisir des fonctionnements sans ambiguïté
  • Les diagrammes de classes et de modèles de données pour consigner la conception
  • Les diagrammes de transition d'état pour modéliser le fonctionnement dynamique

La modélisation est importante car elle permet à l'équipe de visualiser, construire et documenter la structure et le fonctionnement du système, sans se perdre dans la complexité.

Etudier et comparer les alternatives de conception à moindres frais Haut de la page

Des modèles simples peuvent être créés et modifiés à moindre prix pour étudier les alternatives de conception.  Les idées novatrices peuvent être consignées et revues par d'autres développeurs avant d'investir dans un développement de code coûteux.  Lorsqu'elle est associée au développement itératif, la modélisation visuelle aide les développeurs à évaluer les changements de conception et à informer toute l'équipe de développement au sujet de ces changements.

Former une base d'implémentation Haut de la page

Aujourd'hui de nombreux projets utilisent des langages de programmes orientés objet pour obtenir des systèmes réutilisables, à tolérance de changements, et stables. Pour obtenir ces avantages, il est encore plus important d'utiliser la technologie orientée objet dans la conception. Le Rational Unified Process (RUP) produit un modèle de conception orienté objet qui forme la base de l'implémentation.

Avec l'aide d'outils adaptés, un modèle de conception peut être utilisé pour générer un ensemble initial de codes pour implémentation. On appelle ce procédé "conception" ou "génération de codes".  Les modèles de conception peuvent aussi être améliorés pour inclure assez d'informations pour créer le système.

La génération de code peut aussi être appliquée pour générer des modèles de conception à partir d'implémentations existantes.  Ce procédé peut être utilisé pour évaluer les implémentations existantes.   

"L'ingénierie aller-retour" combine les techniques de rétro-conception et de génération de codes pour garantir une conception et des codes cohérents.  Associée à un processus itératif, et aux outils appropriés, l'ingénierie aller-retour permet de synchroniser la conception et les codes pendant chaque itération.

Consigner les exigences avec précision Haut de la page

Avant de créer un système, il est crucial de consigner les exigences. Choisir les exigences à l'aide d'un modèle précis et sans ambiguïté permet de s'assurer que toutes les parties prenantes peuvent comprendre et se mettre d'accord au sujet des exigences.  

Un modèle qui sépare le fonctionnement externe du système de l'implémentation vous permet de vous concentrer sur l'utilisation souhaitée du système, sans s'enliser dans des détails d'implémentation.

Informer des décisions sans ambiguïté Haut de la page

Le RUP utilise le Unified Modeling Language (UML), une notation cohérente pouvant être appliquée pour l'ingénierie système et métier.  Une notation standard joue les rôles suivants (voir [BOO95]):

  • "Elle sert de langage pour informer des décisions qui ne sont pas évidentes ou ne peuvent pas être déduites par le code lui-même."
  • "Elle fournit une sémantique assez riche pour consigner toutes les décisions stratégiques et tactiques importantes."
  • "Elle propose une forme assez concrète pour que les personnes puissent l'examiner et que les outils puissent l'utiliser"

L'UML représente l'alliance des meilleures pratiques de modélisation logicielle dans toute l'industrie de la technologie orientée objet.  Pour plus d'informations sur l'UML, visitez notre site Web à http://www-306.ibm.com/software/rational/uml.



RUP (Rational Unified Process)   2003.06.15