Exemples de schémas conceptuels dynamiques et statiques

Le diagramme de “collaboration”

Son nom n'indique pas entre qui est envisagé la collaboration.

On peut comprendre ce concept de collaboration de deux façons :

Collaboration entre plusieurs classes d'objets pour réaliser une fonction du système.

Synthèse de certaines informations issues du modèle statique et des diagrammes dynamiques précédents qui collaborent pour offrir une vue partielle plus opérationnelle de la même fonction.

Un diagramme de collaboration[1] assure la liaison entre les deux types de modèles.

Il contient une densité d'informations qui peut le rendre difficilement lisible.

On découpe les diagrammes en parties dont la granulométrie correspond à celle d'un scénario[2].

Pour une fonction donnée, et un degré de granulométrie donné, le diagramme de collaboration[1] contient deux types d'information : le contexte[3] et les interactions.

Le contexte

Le contexte[3] est tout simplement un extrait du modèle statique, un package, ou schéma qui ne réunit que les classes concernées, avec leurs associations, contraintes[4], attributs[5], opérations[6]. Pour une meilleure lisibilité, on ne détaille pas le contenu d'une classe.

Si, comme nous l'avons déjà évoqué, de nouveaux objets de classes naissent à l'occasion de la synthèse des aspects dynamiques avec le modèle statique, on note le commentaire « new » associé à la classe créée.

Les interactions

Une fois le contexte[3] mis en place, on recense dans les diagrammes de scénario[7] et d'état[8] les messages[9] qui sont nécessaires à l'exécution de la fonction, et on les ajoute au contexte[3]. L'ensemble de ces messages forment ce qu'on appelle les interactions.

Une ambiguïté subsiste alors : la description statique de la classe ne renseigne pas sur les différents états possibles des objets de la classe. On ne peut tout dire dans un seul diagramme !

Cependant, on améliore la connaissance de l'écoulement du temps, par la description chronologique des messages reportés dans le diagramme. Il suffit de les numéroter. Mais pas seulement avec un simple numéro d'ordre. Il convient de noter les messages[9] en concurrence[10], ce qui permettra de les dérouler dans une arborescence séparée qui permettra aux futurs logiciels d'exploitation une exploration algorithmique d'un arbre.

Pour bien comprendre, construisons un diagramme de collaboration[1] en trois étapes :

Tout d'abord, par exemple, isolons quelques entités du scénario de construction d'un poteau. Dans le diagramme qui suit, nous avons séparé l'équipe et son chef, qui émet les messages, ce qui est plus conforme à la réalité semble-t-il, que dans le scénario. Une analyse d'occupation des tâches a déterminé qu'une équipe devait s'occuper de 4 poteaux simultanément. Après le coulage, l'équipe a le choix entre passer à un nouveau groupe, ou bien passer à la construction de poutres, dont la présence est décrite dans le schéma par un package. Aux classes armatures, jeu de coffrage, béton sont en fait associés des hommes qui obéissent au grutier.

Diagramme du contexte du coulage de poteaux.
Contexte du coulage de poteaux ...
Diagramme du contexte du coulage de poteaux et tentative d'ajout des interactions.
... et tentative d'ajout des interactions
  1. diagramme de collaboration

    Synthèse réalisée à partir du modèle statique et des diagrammes dynamiques qui collaborent pour offrir une vue du système limitée à une de ses fonctions.

  2. scénario

    Méthode stratégique à l'appui de données qui permet de formuler des hypothèses et décisions possibles et de prévoir leurs conséquences.

  3. contexte

    Dans un diagramme de collaboration du modèle dynamique, partie du modèle statique servant de support aux interactions

  4. contrainte

    En spécification formelle, une contrainte s'applique pour filtrer la mise en relation entre les objets des deux concepts en présence.

  5. attribut

    Champs — ou données — décrivant la structure interne d'un objet, dans le contexte de la programmation orientée objet.

  6. opération

    Dans un modèle dynamique, procédures déclenchées par l'objet qui change d'état, et qui se décomposent en actions et activités .

  7. diagramme Scénario

    Formalise un use-case, constitué d'évènements mettant en jeu des objets de plusieurs classes, et cités dans un ordre chronologique.

  8. état

    Dans un modèle dynamique, se dit d'un objet dont les propriétés sont constantes entre deux évènements.

  9. message

    Dans un langage à objets ou un modèle dynamique : Action brusque qui n'a pas de durée, émise uniquement par un objet d'une classe et qui peut on non déclencher une action.

  10. concurrence

    Dans un diagramme d'état d'un modèle dynamique, la transition est effectuée dès que l'un des sous-états en concurrence change d'état.

PrécédentPrécédentSuivantSuivant
AccueilAccueilImprimerImprimerRéalisé avec Scenari (nouvelle fenêtre)