Accéder au contenu principal

Les différentes pratiques Agiles

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.

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éctive

Dynamic Systems Development Method ou DSDM

DSDM ou Dynamic Systems Development Method est une méthode qui s'appuie sur 9 principes de base :
  1. 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 ;
  2. Autonomie. L'équipe projet doit avoir un pouvoir de prise de décision concernant l'évolution des besoins ;
  3. 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 ;
  4. Adéquation. L'objectif est de livrer une application en adéquation avec le besoin métier du client ;
  5. Développement itératif et incrémental. L'évolution du développement est basée sur le feed-back des utilisateurs ;
  6. Réversibilité. Toute modification effectuée durant le développement doit être réversible ;
  7. Synthèse. Un schéma directeur défini de manière préalable fixe les grandes lignes du projet, notamment son périmètre ;
  8. 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 ;
  9. Coopération. Les acteurs du projet doivent faire preuves de souplesse concernant les modifications des fonctionnalités demandées.
D'après l'article concernant DSDM sur Wikipedia.

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.
Le but de la méthode est que, par l'application des pratiques et principes, une équipe de développement apprenne de son propre fonctionnement et accède à une forme de compréhension d'elle-même (« self-awareness »), condition de son fonctionnement optimal.

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

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

Posts les plus consultés de ce blog

Votre « attention » s’il vous plait !

Votre « attention » s’il vous plait ! Google, Facebook, Youtube, Instagram, Twitter, LinkedIn,.... Qu’est-ce qui ont fait que ces grosses industries sont devenues aussi puissantes ? Un point commun : tous cherchent votre attention ! Un business model basé sur l’économie de l’attention A la base, ces industries font les mêmes choses que les chaînes de télévisions : agrandir le taux d’audience pour proposer des plages de publicités à des entreprises. Mais ils ont quelque chose de plus. Attirer l’attention L’art d’attirer l’attention s’effectue même avant l’inscription à ces plateformes. A travers des contenus sponsorisés, des forums, des buzz, des résultats de recherches, on se retrouve avec des liens, des aperçus, des contenus, qui nous amènent à ces plateformes. Souvenez vous, sur chaque video YouTube, il y a un bouton pour récupérer du HTML pour intégrer la vidéo ailleurs, et Facebook demande si vous voulez que votre profil soit visible via les moteurs de recherches . A ce

Des applications pour gérer ses dépenses

Lorsque j'étais encore sous la charge de mes parents, il ne m'est jamais venu à l'esprit que gérer ses dépenses étaient un casse-tête. Je ne me suis rendu compte qu'après trois années (oui trois années) dans le monde du travail. Comment ne pas s'en rendre compte avant ? Je dirais juste que comme la plupart des jeunes qui commencent à recevoir un salaire, on pense d'abord sur les tas de trucs cools que l'on n'a pas pu se permettre avant faute de budget. Mais très vite on se pose des objectifs, des plans de vie, on voudrait construire des choses, se constituer je dirais son patrimoine. Et comme toute personne qui projette, on se vient à poser des questions sur comment atteindre ces objectifs là et inévitablement, on revient à se dire qu' il faudrait se faire des économies et bien gérer son argent. Alors gérer son argent oui, mais comment faire ?  Comme toute chose, il y a bien une technique qui se cache derrière. On commence par lire des bouqu

L'Agilité, ses forces et ses faiblesses

Ayant travaillé auparavant dans une entreprise dont toutes les procédures devaient suivre un process bien défini alors asculer dans une entreprise qui prônait les valeurs de l'agilité fut une grande découverte. Mais Agilité, quésaco ?  L'Agilité, je dirais, plus qu'une façon de faire, c'est une philosophie, dont le manifeste est Manifeste pour le développement Agile de logiciels Nous découvrons comment mieux développer des logiciels par la pratique et en aidant les autres à le faire. Ces expériences nous ont amenés à valoriser : Les individus et leurs interactions plus que les processus et les outils Des logiciels opérationnels plus qu’une documentation exhaustive La collaboration avec les clients plus que la négociation contractuelle L’adaptation au changement plus que le suivi d’un plan Nous reconnaissons la valeur des seconds éléments, mais privilégions les premiers.  L'article originel sur lequel est publié le manifeste se trouve