Talk présenté :
- au BreizhCamp (http://lyjia.net/breizhcamp-slides-de-ma-presentation/)
- Agile Tour Montpellier
"Les équipes s'auto-organisent afin de faire émerger les meilleures architectures, spécifications et conceptions." C'est sur ce principe du manifeste agile que se base la notion d'équipe auto-organisée de Scrum. En pratique, beaucoup d'entreprises qui ont mis en place Scrum gardent leurs architectes dans leurs tours d'ivoire.
C'est une décision normale car peut-on imaginer qu'une équipe puisse concevoir une architecture ? Et puis soyons sérieux, est-ce qu'un design par des développeurs pourrait être meilleur que celui d'un architecte ? Qu'allez-vous faire de vos architectes sinon ?
À travers un retour d'expérience, nous verrons qu'effectivement confier l'architecture aux équipes n'est pas rentable si ce n'est pas fait intelligemment. En revanche, si la conception en équipe est bien maîtrisée, les bénéfices iront bien au-delà du cercle des développeurs.
5. « Architecture represents the significant
design decisions that shape a system »
« The architectural decisions are those that
you can’t reverse without some degree of effort. Or, put
Simply, they’re the things that you’d find hard to refactor
an afternoon. »
Simon Brown
Software Architecture for Developers
6. « I tend to look at "architecture" as one
of those impressive-sounding words, used primarily to
indicate that we're talking something that'simportant. »
Martin Fowler
Patterns of enterprise application architecture , 2003
8. "Quelqu'un qui a la vision globale du système"
"Une personne qui va décider des solutions techniques pérennes et des bonnes pratiques
à suivre dans la société"
"Le pondeur de schémas via Enterprise Architect"
"Des gens dans leurs bureaux à faire des powerpoints pour communiquer
des solutions à côté de la plaque"
"Étape officielle de validation"
12. ● Équipes de développement agiles (Scrum)
● TDD
● Pair-programming
13. ● Équipes de développement agiles (Scrum)
● TDD
● Pair-programming
● Pas d'architecte
14. ● Équipes de développement agiles (Scrum) => Pas de spécifications
● TDD
● Pair-programming
● Pas d'architecte
15. ● Équipes de développement agiles (Scrum) => Pas de spécifications
● TDD => Conception devant le clavier
● Pair-programming
● Pas d'architecte
16. ● Équipes de développement agiles (Scrum) => Pas de spécifications
● TDD => Conception devant le clavier
● Pair-programming => Communication d'équipe
● Pas d'architecte
17. ● Équipes de développement agiles (Scrum) => Pas de spécifications
● TDD => Conception devant le clavier
● Pair-programming => Communication d'équipe
● Pas d'architecte