Partage
  • Partager sur Facebook
  • Partager sur Twitter

UML, les composants

    17 octobre 2019 à 11:53:24

    Bonjour,

    J'ai quelques questions sur les composants en UML:

    -Les composants sont du domaine de la conception (J'ai bon?)

    -je rencontre souvent les mots clés realise/use et provide/require dans les diagrammes de composant ou dans la représentation d'un composant. J'ai conclu que ce sont les mêmes (Est-ce bon?)

    -Comment implémenter les provide/require (ou realize/use) en c++/PHP? je pense que les provide ou realize sont des extends (ou implement en java si je ne dis pas de bêtises) et les require ou use sont des déclarations du composant ou de l'interface

    -Enfin qu'est ce qu'un port (j'ai lu des informations sur le WEB, mais impossible de comprendre sans un exemple pratique du coté de l'implémentation)

    Merci de votre aide

    -
    Edité par sajreborn 18 octobre 2019 à 0:42:12

    • Partager sur Facebook
    • Partager sur Twitter
    Tant qu'on vie, faisons ce que nous pouvons et faisons le bien!
      18 octobre 2019 à 23:20:28

      Salut,

      Le diagramme de composants fournit les relations entre tous les composants de ton systeme. Chaque composant peut être composé de plusieurs classes, par conséquent, il ne fournit pas l'implantation directe (contrairement au diagramme de classe). Pour ce qui est des mots clés use/realize, ils indiquent le type de relation entre les composants (résultat, dépendance etc...).

      Pour ce qui est de définir ce que c'est qu'un port, tu peux imaginer une adresse ip comme un immeuble. L'immeuble comporte plusieurs appartements, et chaque appartement est identifié par un numéro. Tu peux donc voir le port comme ce numéro, par conséquent quand tu envoies un message sur un port c'est comme si tu mettais ce message dans la boite aux lettres numero X (où X est ton numero de port) de l'immeuble représenté par ton adresse IP.

      • Partager sur Facebook
      • Partager sur Twitter
        20 octobre 2019 à 18:53:52

        Merci pour ton intervention.

        Je résume: On ne peut pas implémenter (ou implanter, c'est flou pour moi) un composant, mais juste décrire les services qu'offre ce composant ou des services dont il dépend. Exact?

        Pour le port, je suis désolé car je ne 'ai pas été très clair. Je parle du port dans le contexte des composants. Je vois aussi la notion de port et dans la représentation visuel d'un port sur le composant, je vois un petit carré dessiné sur un coté du composant.

        C'est cette notion du port du point de vue Composant que je ne comprends pas. Mais merci pour ton explication sur les ports vue du réseau, c'est plutôt intéressant je l'avoue.


        -Les composants sont du domaine de la conception (J'ai bon?)

        -
        Edité par sajreborn 21 octobre 2019 à 4:08:47

        • Partager sur Facebook
        • Partager sur Twitter
        Tant qu'on vie, faisons ce que nous pouvons et faisons le bien!
          20 octobre 2019 à 19:08:18

          Pas de soucis, je ne connais pas bien ce diagramme UML en question mais vu le principe du diagramme, tu décris les différents services et résultats que donnent ton composant. Donc si un composant permet par exemple de calculer quelque chose, tu vas donner en entrée les données et en sortie le résultat, par contre comment il le calcule n'est pas décrit dans ce diagramme.

          Pour la question de port, de ce que j'ai compris cela correspond à l'interface de communication de ton composant avec son environnement.

          Tous les diagrammes UML font partie de la conception ;)

          • Partager sur Facebook
          • Partager sur Twitter
            23 octobre 2019 à 18:05:41

            Merci pour toutes tes réponses. C'est tellement bien expliqué, que je vais en profiter pour poser une dernière question.

            Par exemple j'ai un diagramme de classe. En implémentation, chaque classe est dans un fichier. Aussi un fichier peut regrouper plusieurs classe selon leur un objectif bien précis. 

            Maintenant comment représenter ces fichiers et les classes qu'elles implémentent? J'ai pensé à un diagramme de composant, ou j'utiliserais des artefacts. Pour chaque artefact, je saisis à l'intérieur les classes que l'artefact représente. Ensuite chaque artefact est relié à un autre selon les liens de dépendances.

            Qu'en pensez vous?

            Si vous avez un exemple pour représenter les fichiers qui implémentent une ou plusieurs classes, ça pourrait m'inspirer.

            Merci en tout cas

            -
            Edité par sajreborn 23 octobre 2019 à 18:06:57

            • Partager sur Facebook
            • Partager sur Twitter
            Tant qu'on vie, faisons ce que nous pouvons et faisons le bien!
              23 octobre 2019 à 18:29:51

              Euh je t'avoue ne pas avoir bien saisi ta question. Le diagramme de classe est là pour exprimer les dépendances entre les différentes classes. Il faut toujours garder en tête que les diagrammes UML sont plus haut niveau que le code dans le sens où ils décrivent des concepts et des relations, et non les choix d'implantation. Un diagramme UML peut être implanté dans tous les langages. Par exemple, lorsque tu as une composition avec une autre classe, tu peux choisir de la représenter par un tableau, ou une pile etc.

              Si ca ne répond pas à ta question, n'hésite pas à la reformuler et re poser ;)

              • Partager sur Facebook
              • Partager sur Twitter
                23 octobre 2019 à 19:32:55

                OK J’ENVOIE UN EXEMPLE VISUEL PLUS TARD POUR MIEUX ILLUSTRER MES PROPOS

                Voici un exemple de ce que je veux représenter:


                1-Je représente mon diagramme de classe

                2-J'aimerai représenter les artefacts qui contiennent ces diagrammes. Y a t-il un diagramme pour cela? j'utilise un logiciel de modélisation UML. Je représente les fichiers par un artefact, et à l'intérieur des interfacts j'ajoute une note qui liste les classes implémenter dans ce fichiers, et la dépendance entre ces classes.


                J'espère que c'est plus compréhensible.

                -
                Edité par sajreborn 24 octobre 2019 à 12:37:20

                • Partager sur Facebook
                • Partager sur Twitter
                Tant qu'on vie, faisons ce que nous pouvons et faisons le bien!

                UML, les composants

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown