43 votes

Utilisez-vous des boules de polystyrène pour modéliser vos systèmes ?

[Objective-C]

Utilisez-vous toujours des boules de polystyrène pour modéliser vos systèmes, où chaque boule représente une classe ?

Tom Love : Nous le faisons, en fait. Nous avons aussi fait une version d'animation 3D de ce film. qui s'est révélée être loin d'être aussi utile que les boules de polystyrène. Il y a quelque chose dans une structure physique, structure visible suspendue au plafond en plein milieu d'un projet de projet de développement qui est régulièrement mise à jour pour fournir non seulement la la structure du système que vous construit, mais aussi le statut actuel de chacune des classes.

Nous l'avons fait sur 19 projets la dernière fois que j'ai compté. L'un d'entre eux comptait 1 856 classes, ce qui est important - en fait, probablement plus important qu'il ne devrait l'être. Il s'agissait d'un grand projet commercial, qui devait donc être assez grand.

Les maîtres de la programmation


C'est la première fois que je lis ou que j'entends parler de l'utilisation de boules de polystyrène pour modéliser les classes.
Est-ce une technique couramment utilisée ? Et, comment ce type de modélisation nous aide-t-il à mieux concevoir le système ?

Si vous avez des photos à partager qui peuvent nous montrer comment les classes sont représentées, ce serait génial !


Mise à jour : Donc, il semble que le matériel La plupart des gens utilisent le papier. Les boules de polystyrène sont en fait énergumènes n'est pas une technique couramment utilisée.

Des techniques perceptibles :

Merci à tous pour les très bonnes réponses.

23voto

GalacticJello Points 6127

J'ai trouvé un couple de modèles en polystyrène pour :

Windows 95

y

Lotus Notes

(si cela peut aider)

En fait, voici une étude de cas de Tom Love qui montre quelques-uns de ses modèles .

Ce modèle peut représenter l'outil CASE le moins le moins coûteux du marché -- les matériaux ont coûté 20,35 $. Il s'est avéré plus utile que tous les outils CASE que j'ai jamais utilisé.

Nous l'avons utilisé de trois façons importantes.

  1. Il a fixé le nombre de classes que nous délivrerions dans l'application finie. application et nous n'avons pas permis que de nouvelles d'en ajouter, à moins que les classes existantes puissent être supprimées.

  2. C'était un moyen très utile de documenter publiquement quelles classes avaient été ont été revues (rubans bleus) et testées (rubans verts) testées (rubans verts).

  3. Cela a aidé tout le monde à comprendre ce qui était en train d'être construit et combien de temps et d'efforts cela prenait. d'effort pour faire des tests, la documentation et les revues de code.

Edit : photo du modèle d'objet

alt text

15voto

NealB Points 11102

Le modèle de la boule de polystyrène semble remonter au milieu des années 1990, à une époque où les systèmes CASE (Computer Aided Systems Analysis) étaient à la mode.

À l'époque, les systèmes CASE promettaient des avantages considérables mais étaient lamentablement lents, bogués, instables, trop étendus et carrément difficiles à utiliser. En fait, le potentiel était grand, mais les résultats n'étaient pas à la hauteur.

Je me souviens d'une conversation avec un analyste travaillant sur un projet différent du mien. Son équipe était tellement frustrée par son système CASE qu'elle l'avait mis à la poubelle et avait recouru à la modélisation "assiettes en carton et ficelle". modélisation. Ils ont réservé une salle de réunion, enlevé tous les meubles et exposé leur modèle de processus à l'aide d'assiettes en papier avec des ficelles (représentant les données). des assiettes en carton étiquetées et des ficelles (représentant les flux de données) les reliant. Elle a affirmé que c'était beaucoup plus utile que le système CASE qu'il a remplacé.

Je soupçonne que le modèle de la balle en polystyrène a des origines similaires.

L'utilisation de boules en polystyrène ou d'assiettes en carton a favorisé l'adhésion à la conception. Si une équipe trouve un point de ralliement, cela crée naturellement un centre d'intérêt commun en matière de conception. C'est simple, concret et minimal - son utilisation nécessite beaucoup d'interaction et de discussion en face à face. Et c'est de là que vient la valeur. Je pense que si vous intégriez une nouvelle personne dans le projet et que vous lui demandiez de se mettre à niveau en examinant le "modèle", elle serait "morte dans l'eau". en examinant le "modèle", il serait "mort dans l'eau". Mais si vous lui montrez le "modèle" et une véritable conversation se produirait où toutes les informations nécessaires pour sur le projet seraient transmises très rapidement et efficacement.

Est-ce que je pense que les boules de polystyrène pourraient devenir un outil de modélisation durable ? Non, je ne le pense pas. Ce serait une véritable de les maintenir à jour dans un environnement changeant. Elles transmettent peu d'informations. Il existe de meilleurs outils disponibles aujourd'hui. Et surtout, si l'équipe avec laquelle vous travaillez n'y adhère pas, ce qui est probable, elle aura l'air vraiment stupide. Et surtout, si l'équipe avec laquelle vous travaillez n'y adhère pas, ce qui est probablement le cas, elle aura l'air vraiment stupide. seulement si l'équipe "l'achète".

12voto

paxdiablo Points 341644

Non, nous ne le faisons pas. Et au cours de mes 30 ans d'histoire dans l'industrie informatique, j'ai jamais J'ai entendu dire que quelqu'un faisait ça.

La seule façon dont cela pourrait vous aider à concevoir de meilleurs systèmes est de le faire :

  • maintenir le nombre de classes au plus bas, car il est difficile de construire le modèle en styromousse
  • en minimisant les changements, car sa mise à jour serait un véritable casse-tête.

En dehors de ces deux caractéristiques douteuses, je ne vois pas en quoi cela peut être très utile. J'en conclurais presque que c'est une sorte de farce. Il vaut mieux faire un vrai travail, je pense.

Sérieusement, si nous essayions de modéliser notre application avec des tasses à café et des pailles en polystyrène, nos patrons appelleraient les hommes en blouse blanche.

7voto

Jason Points 880

Les Post-it sur un tableau blanc semblent être populaires dans les cercles que je fréquente. Les objets vont sur les Post-it, et vous les réarrangez jusqu'à ce que vous obteniez vos relations comme vous le souhaitez.

Et puis il y a les adeptes du Color Modeling, qui utilisent un paquet de 4 Post-Its de couleur et attribuent un archétype à chaque couleur. Cela n'a pas l'air d'être une grande amélioration, mais si vous vous tenez à l'autre bout de la pièce en regardant cela, vous pouvez dire où se trouvent les caractéristiques manquantes ou les objets non identifiés dans le système.

4voto

Laramie Points 2608

Il y a une application à cela que nous avons tendance à oublier : l'utilisation d'outils pour articuler une architecture nous vient naturellement après des années dans l'industrie, mais il y a des parties prenantes précieuses, bien que moins technophiles, qui peuvent ne pas saisir les concepts vitaux aussi facilement. Il serait parfois salutaire de pointer un faisceau de boules et de dire : "Voici le modèle de traitement du langage, et si j'implémente la fonctionnalité que vous voulez, elle aura des conséquences ici, ici et ici. Vous pouvez voir qu'il y a beaucoup de boules connectées ici".

Les architectes, qu'ils conçoivent des bâtiments ou des systèmes, peuvent s'appuyer sur ces modèles tangibles pour endoctriner les rédacteurs de chèques dans le processus.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X