75
Architecture et Agilité : réconcilier les frères ennemis Jean-Philippe Gouigoux 11 Octobre

Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Embed Size (px)

Citation preview

Page 1: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Architecture et Agilité : réconcilier les frères ennemis

Jean-Philippe Gouigoux

11 Octobre

Page 3: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

AVANT DE COMMENCER

www.agiletour.com 11/10/2012

Page 4: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Mind Map de la session

www.agiletour.com 11/10/2012

Page 5: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Quoi de neuf ?

www.agiletour.com 11/10/2012

Page 6: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

InfoQ.com : 5 piliers de l’architecture

• Stratégie métier

• Veille

• Qualité réalisation

• Aptitude à la conceptualisation

• Dynamique d’équipe

www.agiletour.com

http://www.infoq.com/news/2012/07/iasa-wilt-five-pillars

11/10/2012

Page 7: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

L’architecte frustré

• Tour d’ivoire

• 200 pages d’UML

• Architecte en tant que rang plutôt que rôle

• « Conception émergente » = espérer que tout se passera bien

www.agiletour.com

http://www.codingthearchitecture.com/2012/03/14/ the_frustrated_architect.html

11/10/2012

Page 8: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Architecture de tableau blanc

• Solutionner des non- problèmes

• Architecte hors-sol

• Solutions o Product owner

o Application immédiate

www.agiletour.com

http://odetocode.com/Blogs/scott/archive/2012/03/28/whiteboard-architecture.aspx

11/10/2012

Page 9: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Joli titre…

• Trois modes : inclus, dilué, hors équipe

• Architecte agile o Inclus dans l’équipe

o Pas de doc d’architecture avant le sprint zéro

o User stories d’architecture dans la backlog

www.agiletour.com

http://www.decideo.fr/Agilite-et-architecture-les-freres-ennemis_a5500.html

11/10/2012

Page 10: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

L’inévitable « cheat sheet »

www.agiletour.com

http://gorban.org/post/32873465932/software-architecture-cheat-sheet

11/10/2012

Page 11: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

• Architecture =

o Abstraire

o Structurer

o Prévoir

Pourquoi « frères ennemis » ?

www.agiletour.com

• Agilité =

o Simplicité (XP, Lean)

o Prééminence des tests (TDD)

o Besoins immédiats (YAGNI)

11/10/2012

Page 12: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Buts de la session

• Détruire des mythes

• Rôle et outils de l’architecte logiciel

• Qualités d’une « architecture agile »

• Gestion de la complexité

www.agiletour.com 11/10/2012

Page 13: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

DETRUIRE DES MYTHES

www.agiletour.com 11/10/2012

Page 14: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Mythe n°1

• « Architecture logicielle »

www.agiletour.com 11/10/2012

Page 15: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Architecture en bâtiment

www.agiletour.com 11/10/2012

Page 16: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

« Architecture » logicielle ?

www.agiletour.com 11/10/2012

Page 18: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Le développeur n’est pas un maçon logiciel

www.agiletour.com

Réalisation

Conception

Système

Application

Code

Compilation

Tests unitaires

11/10/2012

Page 22: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Mythe n°2

• « Si on n’inclut pas cette fonctionnalité tout de suite, on aura du mal à la rajouter »

o Faux, car plus tard, la fonctionnalité voulue sera mieux comprise

o Faux, car plus tard, on aura acquis plus de maîtrise du code existant

o Faux, car si l’architecture ne permet pas cette modification, elle était de toute façon trop rigide

www.agiletour.com 11/10/2012

Page 23: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Concept d’ « architecture émergente »

www.agiletour.com

Architecture

Développement

Architecture

Développement

t

Cycle

en

V

Agili

11/10/2012

Page 24: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Mythe n°3

• « Le coût d’une modification augmente exponentiellement avec la progression dans le projet »

o Faux en mode agile : l’intégration continue garantit une livraison rapide (même si coût en amont)

o Faux en mode agile : le remaniement constant de l’application (XP) fait qu’un changement d’architecture ne prendra pas plus de temps sur un sprint que sur un autre

www.agiletour.com 11/10/2012

Page 25: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Corollaire sur le temps total d’un projet

www.agiletour.com

Temps

Complétion

Mode agile : les changements d’architecture sont plus nombreux mais rapidement absorbés

Cycle en V : un oubli sur l’architecture peut nécessiter de repartir quasiment du début du cycle.

11/10/2012

Page 26: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

LE ROLE D’ARCHITECTE LOGICIEL

www.agiletour.com 11/10/2012

Page 27: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

La caricature

• Moquerie de bon ton

o Tour d’ivoire

o Communication par tableau blanc

o Programmation UML

www.agiletour.com 11/10/2012

Page 28: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

La part de réel

• Beaucoup d’échecs de projets IT à cause d’une sur-architecture par rapport aux besoins

• Architecte souvent vu comme un rang plutôt qu’un rôle

www.agiletour.com 11/10/2012

Page 29: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Bon chasseur, mauvais chasseur

• Niveau conceptuel

• Rôle différent du développeur

• Ne pense pas dans l’immédiat

www.agiletour.com 11/10/2012

Page 30: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Un développeur expérimenté ?

• Intérêt architecte limité en fonction de l’équipe

• Différent de l’expert

o Vision

• Connaissances techniques hors-champ

• Veille non technique

o Formalisme

• Mise en forme pour partage efficace

• Lien client pour feedback

www.agiletour.com

Développeur

Expert

Architecte

11/10/2012

Page 31: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même
Page 32: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

\\fidji\Filière Edition\Projets\ESB\Version 1.0\VueGenerale.vsd

Page 33: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Rôle de l’architecte en milieu agile

• Empêcher la sur-architecture (paradoxal)

• Diffuser les bonnes pratiques

• Ne pas imposer, mais guider

o Architecture émergente

o Equilibre technique / métier

www.agiletour.com 11/10/2012

Page 34: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Qualités de l’architecte (InfoQ)

• Stratégie métier

• Veille

• Qualité réalisation o Usage

o Développement

o Opérationelles

o Sécurité

• Aptitude à la conceptualisation

• Dynamique d’équipe

www.agiletour.com

http://www.infoq.com/news/2012/07/iasa-wilt-five-pillars

11/10/2012

Page 35: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Qualités de l’architecte (ajouts perso)

• Reconnaitre ses erreurs, même énormes

o Calculs côté client

o Flash pour application LOB

o 80 tables au lieu d’un fichier XML

• Calculer les risques (formalisme)

• S’adapter vite

o Le diagnostic ne suffit pas (et dévalorise le métier)

o Agilité peut-être encore plus importante pour l’archi

www.agiletour.com 11/10/2012

Page 36: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Les outils de l’architecte (1)

• YAGNI (supérieur à DTSTTCPW)

• OOP

o Héritage = sur-architecture dans 90% des cas

o Utiliser plutôt SOLID

o Domain Driven Design

o Coder pour la testabilité

www.agiletour.com

SOLID : Top investissement !!!

11/10/2012

Page 37: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Les outils de l’architecte (2)

• Qualité de code

o Couplage afférent / efférent

o NDepend, Sonar, FXCop

• Remaniement

o Contenir la complexité

o Dette technique (gaspillage Lean, Sqale, dette archi)

o Couverture de code : Pareto ou Murphy ?

o Nettoyage de code mort

www.agiletour.com 11/10/2012

Page 38: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Mise en place du filet de sécurité

www.agiletour.com 11/10/2012

Page 39: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Etape 1

www.agiletour.com 11/10/2012

Page 40: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Etape 2

www.agiletour.com 11/10/2012

Page 41: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Etape 3

www.agiletour.com 11/10/2012

Page 42: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Etape 4

www.agiletour.com 11/10/2012

Page 43: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Etape 5

www.agiletour.com 11/10/2012

Page 44: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Etape 6

www.agiletour.com 11/10/2012

Page 45: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Plus simple ou pas ?

• Plus long au début, puis plus court

• Plus dur à lire pour un débutant

• On a fait apparaître des « caractéristiques désirables du code » (SRP, en particulier)

www.agiletour.com 11/10/2012

Page 46: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Atteindre l’étape « architecture »

www.agiletour.com

DLL API

DLL Métier

Nous sommes retombés de nous-mêmes sur la notion de délégué anonyme :

Notion complexe / Architecture simple

11/10/2012

Page 47: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Récursion code simple / remaniement simple

www.agiletour.com 11/10/2012

Page 48: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Code complexe : bon courage !

www.agiletour.com 11/10/2012

Page 49: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Exemple vécu

www.agiletour.com

65 étapes !

3 heures

Baby step 92% couverture

ROI : immédiat !

11/10/2012

Page 50: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Baby steps ?

www.agiletour.com

• Tout petits pas itératifs

o Correction simpliste

o Tests unitaires

o Retours sur erreurs

Tests unitaires

11/10/2012

Page 51: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

ARCHITECTURE AGILE ?

www.agiletour.com 11/10/2012

Page 52: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Proposition de propriétés de base

• Diffuse

o Intègre la formation / diffusion des pratiques

o Architecte inclus dans l’équipe SCRUM

• Emergente

o Pas de user story « architecture »

o Architecture itérative (même si long terme)

• Adaptable

o Simplicité, découplage, légèreté (MongoDB, ESB, …)

www.agiletour.com 11/10/2012

Page 53: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Approche Agile

www.agiletour.com 11/10/2012

Page 54: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Deux retours immédiats

• « On va commencer par une classe Outils avec toutes les fonctions dont on a besoin »

o Non ! (YAGNI)

• « C’est lequel le post-it avec la structure du projet? »

o Solution et projets Visual Studio

o Création de la fenêtre, du service, de la structure BD

www.agiletour.com 11/10/2012

Page 55: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Exemple : TP de formation .NET

www.agiletour.com 11/10/2012

Page 56: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

YAGNI

www.agiletour.com

• Conséquences

o Pas de 3-tiers

o Pas de service

o Pas de base de données !

o 1 solution avec 1 projet

11/10/2012

Page 57: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Un post-it pour la structure initiale ?

www.agiletour.com

Architecture ? Structuration ?

4h p1

11/10/2012

• Mais

o Séparer GUI / métier

o Contrats simples

o Interface persistance

Page 58: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Architecture émergente

• « The frustrated architect » très critique

o Hoping for the best

• L’émergence est facilitée par l’architecte

o Vision stratégique des enjeux long terme

o Connaissance des outils alternatifs

• Eviter la sur-architecture est l’objectif n°1

www.agiletour.com 11/10/2012

Page 59: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Quand je parle de long terme…

www.agiletour.com 11/10/2012

Page 60: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Mise en place d’une architecture SOA

• 2003 : web services

• 2005 : 100% SOAP

• 2007 : intégration autres applis

• 2009 : extranets

• 2010 : web services publics

• 2011 : REST

• 2012 : début urbanisation ESB

• 2015 (?) : architecture complètement SOA

www.agiletour.com 11/10/2012

Page 61: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

REX sur une architecture émergente

• Ne prendre que ce qui est utile

o L’équipe est convaincue

o Un client est prêt à payer

• Etaler le risque dans le temps

• L’infrastructure doit être elle-même agile

o ESB = souplesse

o ESB propriétaire = menottes

www.agiletour.com 11/10/2012

Page 62: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

GESTION DE LA COMPLEXITÉ

www.agiletour.com 11/10/2012

Page 63: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Faire simple

• Ne veut pas dire simpliste

• Les exigences non fonctionnelles

o Robustesse

o Sécurité

o Montée en version parallélisable (besoin admin.)

o Rarement exprimées dans la backlog

o etc.

www.agiletour.com 11/10/2012

Page 64: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Fibonacci simpliste

www.agiletour.com 11/10/2012

Page 65: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Fibonacci simple

www.agiletour.com 11/10/2012

Page 66: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

… mais peu performant !

www.agiletour.com 11/10/2012

Page 67: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Fibonacci équilibré entre simple et performant

www.agiletour.com 11/10/2012

Page 68: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

C’est compliqué de faire simple

• Extranet contacte Back Office

• Faire communiquer les serveurs ou transformer les messages ?

• Vases communicants entre

o Complexité pour l’utilisateur

o Complexité pour le développeur

• L’architecte doit équilibrer et maîtriser la complexité par des solutions hors-champ

www.agiletour.com 11/10/2012

Page 69: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Les degrés de complexité

• Réalisation (accidentelle)

o YAGNI, DRY, SOLID

• Structurelle (accidentelle)

o Ré-architecture

• Métier (incompressible)

www.agiletour.com 11/10/2012

Page 70: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Solution : aborder la complexité dans le temps

• SI qui se simplifie ou se complexifie ?

• Pente naturelle : empilement

• Rationalisation très longue

o Comme pour le remaniement, parfois besoin de complexifier avant de re-décomposer

• Exemple : découplage d’un annuaire

www.agiletour.com 11/10/2012

Page 71: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

JUST DO IT !

www.agiletour.com 11/10/2012

Page 72: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

• Architecture =

o Abstraire => simplifier

o Structurer => assouplir

o Prévoir => s’adapter

« Frères ennemis », vraiment ?

www.agiletour.com

• Agilité =

o Simplicité (XP, Lean)

o Prééminence des tests (TDD)

o Besoins immédiats (YAGNI)

11/10/2012

Page 73: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Courage, notion fondamentale de l’agilité

• Pas le temps ?

o Remaniement au fur et à mesure des besoins

• Qualité suffisante ?

o Le code pourrit

o Sustainable pace

• Trop de dette technique ?

o Commencez petit

o Assurez un retour immédiat (motivation, qualité)

www.agiletour.com 11/10/2012

Page 74: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Citation

• Comment pourrait-on faire du développement agile sur une architecture qui ne le serait pas ?

• Hugues Cornuaille, Certified Scrum Master

www.agiletour.com 11/10/2012

Page 75: Architecture et Agilité : réconcilier les frères ennemisgouigoux.com/download/ConferenceAgileTourArchitectureAgilite.pdf · Buts de la session ... •Reconnaitre ses erreurs, même

Questions… et peut-être même réponses !

www.agiletour.com 11/10/2012