Les équipes de développement ne sont pas immuables. Lorsqu’elles se retrouvent modifiées par l’arrivée ou le départ d’un nouveau membre, c’est une nouvelle équipe qui se crée.
Voir la publication originale
Cette dernière est republiée ici afin de ne pas dépendre entièrement d'une plateforme tierce.
Modifier la composition d’une équipe n’est pas anodin. Lors d’un départ, c’est une partie des connaissances du groupe qui s’en va. Des connaissances potentiellement non documentées et des décisions implicites qui sont perdues. À l’inverse, lors d’une nouvelle arrivée, c’est une nouvelle vision des choses qui émerge, mais aussi la nécessité de reconstruire une compréhension et vision commune du projet.
C’est dans cette situation qu’avoir une documentation, une vision et des standards de développement clairement établis devient essentiel. Ils ne sont pas là pour contraindre le fonctionnement, mais pour constituer une connaissance commune et partagée permettant d’avancer ensemble dans la même direction.
Documenter d’où vient et là où l’on veut aller. Décrire l’architecture, les choix effectués et pourquoi les choses ont été réalisées de telle ou telle manière. Expliciter la façon de travailler, les patrons de conceptions privilégiés, le processus de revue de code, la stratégie de tests. Autant d’éléments qui définissent le fonctionnement de l’équipe et permettent de limiter les frictions lors des changements de composition du groupe.
Sans standards clairement établis et partagés, chacun avance dans sa propre direction. Les décisions sont régulièrement discutées et remises en question. Les approches divergent et la cohérence de l’ensemble s’effrite. Le projet devient alors le reflet du passage de chaque équipe.
Définir et maintenir ces standards peut-être long. Cela devrait être un processus continu qui doit être mis à jour au fil des évolutions du projet. L’idéal (et le Graal à atteindre) serait que la documentation et les règles du projet soient automatisées, permettant que personne ne puisse passer à côté.
Définir et documenter permet ainsi d’assurer la stabilité de l’équipe projet au fil du temps.