2009-11-01 18 views
0

Je voudrais comprendre la hiérarchie exacte d'un diagramme.Comment un diagramme est-il organisé?

Si un bloc A est au-dessus du bloc B que cela signifie que A est une construction de manière abstraite en utilisant B?

Une question concrète:

J'ai un composant C qui appelle les composants D, E pour atteindre son objectif. Est-ce que C est au-dessus de D, E (puisqu'il les utilise) ou sont ces différents blocs sans rapport? Quand serait chaque cas? aD, E ne sont pas une plate-forme sur laquelle C est construit mais juste quelque chose qu'il utilise.

Ce qui me disturbes est que je vois habituellement des diagrammes de blocs avec un grand bloc de base et de nombreux petits « toit » blocs, par exemple une base de cadre et de nombreuses fonctionnalités par-dessus. Cependant dans mon exemple si chaque composant est construit en utilisant 2 autres je finirais avec une base contenant beaucoup de blocs et un "toit". Sinon, je finirais avec des blocs non hiérarchiques (non hiérarchiques) qui semblent manquer l'objectif de ce diagramme (ou le fait-il?).

+1

Sans se référer à une norme spécifique (pas qu'il y en ait autant que ça), il est difficile de répondre à la question.Pour ma part, j'utilise mon propre style de diagrammes la plupart du temps. – jldupont

Répondre

0

Il y a une astuce pour bloquer les diagrammes.

Ils sont juste marketing.

Si vous voulez une sémantique précise, vous devez utiliser UML, qui n'utilise pas de diagrammes de blocs avec un simple décontracté "par-dessus". Le "sur" est clairement trop vague.

Si vous avez une "pyramide", et que vous préférez ne pas le montrer, vos blocs de niveau inférieur sont trop fins. Placez les blocs de niveau inférieur détaillés dans un bloc de structure plus grand. Ensuite, vous pouvez avoir moins de gros blocs sur le fond.

+0

Il existe différentes formes de diagramme, et il n'est pas rare qu'elles aient une sémantique mieux définie que UML, y compris une syntaxe basée sur le placement. –

+2

@Pete Kirkham: Pourriez-vous fournir une référence, un lien, une citation, tout ce qui montre ces "sémantiques mieux définies que UML"? Veuillez fournir quelque chose de mieux défini que UML. –

+1

Toute bonne référence d'ingénierie système vous donnera des exemples de diagrammes de blocs. Plus spécifiques sont utilisés tels que la notation de stevenson, où les blocs de gauche sont entrés, les bons sont de sortie, le centre sont partagés. –

1

blocs et le toit ont des noms réels lorsque vous utilisez UML pour concevoir votre point de vue de l'application. UML utilise des décorations sur les lignes entre les classes pour indiquer leur relation. Généralement, la relation est soit une relation «est un» ou «a un». Il dérive d'une autre classe, ou il a une autre classe en tant que variable membre. Dans les applications pratiques des diagrammes, une grande quantité de classes est souvent exclue de l'image afin de communiquer clairement une idée donnée sur un diagramme donné. Je laisse souvent de côté une hiérarchie de classe lorsque je fais un diagramme de classe concernant un sujet particulier. Il faut généralement un grand nombre de diagrammes pour décrire complètement une application, et vous pouvez même exclure certaines classes complètement et les mettre en place pour les détails de mise en œuvre. Je recommande fortement d'examiner les diagrammes de composants d'UML, les diagrammes de classes, puis de continuer vers d'autres styles que vous trouverez utiles, notamment: les diagrammes d'état, les diagrammes de séquence et les diagrammes de cas d'utilisation. La grande partie est que la plupart des développeurs auront vu ceux-ci, ou ont travaillé avec eux avant.

1

Si vous voulez parler des diagrammes d'architecture comme dans la grande image d'une base de code grand-ish, alors il n'y a pas de norme en tant que tel. Par exemple dans votre exemple, si D et E sont au même niveau, peuvent-ils s'utiliser l'un l'autre - vous verrez les deux utilisés. Structure101 utilise la convention selon laquelle les cellules ne doivent utiliser que des cellules situées en dessous d'elles - toutes les dépendances ascendantes dans le code réel sont marquées sur le diagramme (et dans l'EDI) comme des "violations".

Si l'architecture vous pensez de la relation entre les classes, puis UML est ce que vous voulez et les flèches entre les cases indique ce que fait/doit utiliser quoi et comment ...