Le processus Agile: comment et quoi documenter?

10

Il y a quelque temps, l'entreprise pour laquelle je travaillais avait externalisé un projet de développement à un tiers. Ils ont utilisé des pratiques agiles pour développer la solution. Cependant, lorsqu'on leur demandait de la documentation, ils répondaient simplement qu'elle était requise car elle était incorporée dans un wiki ou dans le cadre de leurs sprints.

Ils sont partis à la fin du projet, avec tous sauf un de l'équipe de projet. Le site wiki du projet a maintenant été fermé une fois l'abonnement annuel dû.

Quand ils sont partis, ils ont pris la plupart des connaissances et de la compréhension de ce qui a été développé avec eux.

J'ai donc 2 questions principales;

  1. Est-ce normal pour agile ou juste une excuse pour ne pas vouloir l'écrire?
  2. Quelles sont les normes de l'industrie pour la documentation des projets agiles afin d'enregistrer les exigences de développement, les conceptions, les décisions clés et le contexte?
GrumpyMonkey
la source
en.wikipedia.org/wiki/There%27s_a_sucker_born_every_minute Sérieusement - n'avez-vous pas prévu en.wikipedia.org/wiki/Bus_factor ? Eh bien, une leçon apprise à la dure tend à être bien apprise. Si tout va bien, pour vous, il n'y aura pas de prochaine fois (mais vous serez toujours en affaires)
Mawg dit réintégrer Monica

Réponses:

4

Est-ce normal pour agile ou juste une excuse pour ne pas vouloir l'écrire?

Ma théorie est que c'est pourquoi l'agile se propage si rapidement, en particulier la mêlée . J'ai vu trop d'équipes qui voulaient être agiles pour se protéger (au lieu de toute l'entreprise). Le problème est que dans de nombreux cas, la méthodologie est utilisée contre eux par la direction (car ils veulent aussi se protéger!).

Cela signifie-t-il que l'agilité ne fonctionne pas du tout? Bien sûr que non, cela signifie simplement que l'agilité vous aide à résoudre quelques problèmes communs, mais vous êtes toujours en charge de tous les autres. Et dans de nombreux cas, l'agilité n'est tout simplement pas adaptée à cette équipe dans cette entreprise.

Quelles sont les normes de l'industrie pour la documentation des projets agiles afin d'enregistrer les exigences de développement, les conceptions, les décisions clés et le contexte?

Pour être court:

L'équipe doit définir la quantité de documentation dont elle a besoin

Ils connaissent le domaine, ils sont les experts et surtout ils construisent la chose!

C'est ce que signifie un logiciel de travail sur une documentation complète dans le Manifeste Agile .


la source
2

Vous ont-ils laissé un ensemble de tests TDD, de tests d'acceptation ou d'autres tests unitaires? Ils font un bon travail de documentation sur le fonctionnement et le fonctionnement escompté d'une application, et fournissent un exemple d'implémentation de la façon d'utiliser ce qui a été développé.

CaffGeek
la source
+1 Oui, c'est la manière agile de documenter. Si vos tests sont suffisamment exhaustifs et s'exécutent, vous pouvez être sûr que le système est correctement documenté (par opposition à garder la documentation séparée et à ne plus être synchronisé avec le code réel). Oh, et vous avez probablement besoin d'une sorte de document à vue d'ensemble pour la vue d'ensemble.
Martin Wickman
2
Malheureusement, le nombre et la qualité des tests qu'ils ont laissés derrière eux étaient médiocres, ils ont été rapidement jetés sans aucune utilité pratique.
GrumpyMonkey
2

Bien que je ne sois en aucun cas un expert Agile, voici ma tentative de réponse:

  1. Y avait-il une histoire / exigence demandant une documentation spécifique? Sinon, cela fait partie du problème car vous obtenez ce qui est demandé dans une certaine mesure. C'est une excuse et je pourrais me demander ce que vous entendez par «normal» ici. Est-ce juste une majorité de ceux qui suivent les principes Agile qui fait quelque chose de normal ou fait-il partie du processus global qui devrait être attendu? Ce sont les deux points de vue que je pouvais voir pour cela. EDIT: Je doute que la majorité des équipes fassent la même chose en matière de documentation, mais c'est une supposition de ma part.

  2. Quelques liens qui pourraient vous intéresser sont à peu près les meilleurs que je puisse faire à ce sujet:

Agile a quelques points spécifiques dans le manifeste , où je soulignerais celui-ci avec la note:

Logiciel de travail sur une documentation complète

Autrement dit, bien qu'il y ait de la valeur dans les éléments de droite, nous valorisons davantage les éléments de gauche.

JB King
la source
@JB utilise le terme normal pour découvrir ce que fait la majorité des équipes.
GrumpyMonkey
1

Ils sont juste horribles. Je ne pense pas qu'agile signifie pas de documentation du tout. Ils devraient au moins avoir suivi la description de l'application. Obtenir une exportation de leur wiki aurait été bien ou aurait permis à quelqu'un d'autre de récupérer les frais de service.

Ce n'est peut-être pas aussi détaillé qu'une tentative. La théorie est que, en cas de crise, les spécifications ne correspondent plus au code de toute façon. Vous avez donc suffisamment de documentation pour écrire le code et ne pas essayer de le définir en détail (un peu comme écrire le code dans un code pseudo-verbalisé / diagramme, puis dans le code réel.).

JeffO
la source
1

Votre problème n'a rien à voir avec Agile. Ils auraient dû produire la documentation que vous avez demandée. Le projet a été mal géré.

Henri
la source
0

Il devrait y avoir une description des fonctionnalités, des user stories et des cas de test quelque part , au minimum. IL pourrait être dans des fichiers Lisez-moi dans les projets, il pourrait être dans les commentaires du code source, il pourrait être dans des documents de conception; ce pourrait être tout ce qui précède ... ou ce pourrait être MIA!

Steven A. Lowe
la source
0

D'après mon expérience, il y a toujours beaucoup de gens qui demandent de la documentation (j'en fais partie) mais dans la pratique, personne n'a vraiment le temps ni l'envie de les créer. Il y a parfois des efforts, mais la documentation créée devient généralement obsolète très rapidement et se désynchronise avec le fonctionnement réel du système. Cela conduit à une situation où même si vous avez de la documentation, personne ne prend vraiment la peine de la vérifier car il ne fait tout simplement pas confiance à son exactitude.

Pour une réelle précision et des informations fiables, cela revient à peu près à lire le code et les tests. Un client qui souhaite (re) découvrir ce que fait son système peut toujours interroger et interroger un programmeur qui peut ensuite présenter (avec une enquête) des faits sur le système.

Créer une bonne documentation n'est pas trivial et peut être assez coûteux. Deuxièmement, on pourrait s'interroger sur le public, à qui s'adresse la documentation et à quoi sert-elle?

Joppe
la source
On dirait que vous faites référence à la documentation après coup (veuillez me pardonner si je me trompe). Qu'est-il arrivé à la documentation avant le fait? O tempora, o mores :-(
Mawg dit réintégrer Monica le