La dernière fois nous avons parlé de l'Agilité, ses forces et ses faiblesses. Nous avons compris, le mot d'ordre c'est l'adaptation au changement. Aujourd'hui nous allons donc aller un peu plus loin sur le sujet voir quelles sont les différentes pratiques et méthodologies qualifiées d'agiles. Donc nous avons recherché et nous avons trouvé 8 pratiques chacune avec ses spécificités. Nous n'allons pas détailler ces pratiques ici mais allons juste les introduire et on donnera quelques ressources pour ceux qui veulent approfondir chaque item.
Une équipe respectant la méthode peut être décrite comme suit :
D'après l'article concernant DSDM sur Wikipedia.
L'ouvrage "The Pragmatic Programmer" est disponible ici.
Pour lire un peu plus sur Lean, voir cette article Wikipedia.
Contents
Extreme Programming
Parmi les méthodologies agiles les plus populaires, XP a la spécificité d'être l'agile pour les développeurs. En effet, elle se concentre plus sur ce que les développeurs doivent faire sans trop s'occuper de l'organisation en général de l'ensemble de l'équipe et des parties prenantes. Elle spécifie entre autre la nécessisté de faire des releases fréquents ainsi que des pratiques comme le pair programming, le code review, l'utilisation des tests unitaires.SCRUM
Comme l'Extreme Programming, c'est une méthodologie qui se concentre sur la gestion du travail à faire par l'équipe. Sa spécificité c'est d'utiliser la notion de timebox, et les d'itérations qui sont composés de 4 rituels : le sprint planning, les réunions quotidiennes (ou daily meeting), la sprint review et la rétrospéctiveDynamic Systems Development Method ou DSDM
DSDM ou Dynamic Systems Development Method est une méthode qui s'appuie sur 9 principes de base :- Implication des utilisateurs durant tout le cycle de développement. Ils sont considérés comme des membres à part entière de l'équipe projet ;
- Autonomie. L'équipe projet doit avoir un pouvoir de prise de décision concernant l'évolution des besoins ;
- Visibilité du résultat. L'application doit être livrée le plus souvent possible afin de permettre un feed-back rapide. Les délais entre les livraisons doivent être le plus court possible ;
- Adéquation. L'objectif est de livrer une application en adéquation avec le besoin métier du client ;
- Développement itératif et incrémental. L'évolution du développement est basée sur le feed-back des utilisateurs ;
- Réversibilité. Toute modification effectuée durant le développement doit être réversible ;
- Synthèse. Un schéma directeur défini de manière préalable fixe les grandes lignes du projet, notamment son périmètre ;
- Tests. Les tests sont continus durant tout le développement. Ils permettent de garantir le bon fonctionnement de l'application, à chaque étape du développement ;
- Coopération. Les acteurs du projet doivent faire preuves de souplesse concernant les modifications des fonctionnalités demandées.
Adaptive Software Development ou ASD
L'Adaptive Software Development ou ASD est plus une pratique qu'une méthodologie. Une façon d'industrialiser la production de logiciels.Crystal
Crystal est une méthode de gestion de projet pour les petites équipes.Une équipe respectant la méthode peut être décrite comme suit :
- Un architecte et de 2 à 7 développeurs…
- colocalisés dans une grande salle ou occupant des salles adjacentes…
- utilisant des tableaux blancs ou des paperboards…
- ayant un accès facile aux utilisateurs experts…
- éloignés des distractions,
- livrent fréquemment aux utilisateurs du code testé et utilisable
- tous les mois ou tous les deux mois (3 mois au pire)
- adaptant leurs propres conventions de travail régulièrement.
D'après l'article concernant DSDM sur Wikipedia.
Feature-Driven Development
Feature Driven Development est une approche du développement logiciel basée sur la découpe en fonctionnalités importantes d'un grand projet et la livraison selon un cycle itératif de ces fonctionnalités là. Les étapes importantes du projets sont appelés milestones.Pragmatic Programming
Pragrmatic Programming n'est pas vraiment une méthodologie, mais une liste de bonnes pratiques et de bons conseils pour les programmeurs. Elle est la mise en pratique des bonnes pratiques recensées dans le livre "The Pragmatic Programmer" de Andrew Hunt et David Thomas. Le livre contient de petites allégories de la vie réel pour illustrer les bonnes pratiques, tel que la théorie de la fenêtre brisée, la fable de la grouille, ou bien le parabole de la pierre à soupe.L'ouvrage "The Pragmatic Programmer" est disponible ici.
Lean Development
Lean est un une méthode de production logiciel qui est centré sur l'amélioration continue du produit et l'élimination des gaspillages.Pour lire un peu plus sur Lean, voir cette article Wikipedia.
Commentaires
Enregistrer un commentaire