La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Be prepared for changes! Hortis GRC SA -

Présentations similaires


Présentation au sujet: "Be prepared for changes! Hortis GRC SA -"— Transcription de la présentation:

1 Be prepared for changes! Hortis GRC SA - www.hortis.ch
Abstract: Most software developments—if not all of them—are delivered late. Between the times one discovers that a deadline is slipping and the date of the actual delivery life turn to hell, both for developers and for the customer. Recently many new methodologies have been proposed to address this problem: Scrum, Agile, ASD, FDD, DSDM, and most of all eXtreme Programming (XP). XP is based on a handful of common sense tenets. In this talk I am going to discuss the XP methodology and its 8 tenets. I am going to spend time illustrating some of these with practical examples. Introduction à XP Hortis GRC SA -

2 eXtreme Programming, une introduction
Par Didier Besset Hortis GRC SA -

3 Coût du développement software
But de XP Barry W. Boehm , Software Engineering Economics, Prentice Hall PTR, 1981; ISBN: Introduction à XP Hortis GRC SA -

4 eXtreme Programming: principes
Développement itératifs, Plannification adaptable, pas rigide, Architecture évolutive, non-contraignante, Des tests, des tests, et encore des tests, Be prepared for changes! Introduction à XP Hortis GRC SA -

5 Héritées des gros systèmes
La Métaphore du Cycle Méthodologies Héritées des gros systèmes eXtreme Programming Rapid Application Development

6 Historical Perspective
Méthodologies Héritées des gros systèmes eXtreme Programming Rapid Application Development

7 Perspective littéraire
Voltaire ( ), Dictionaire Philosophique : “ Le bon sens est la chose du monde la mieux partagée, car chacun pense en être bien pourvu.” Introduction à XP Hortis GRC SA -

8 eXtreme Programming en quelques mots
Utilisation du bon sens, Faire les choses simplement, Priviliégier la communication, Interagir de près avec le client; Faire tout cela à 100%, Sans compromis! Be prepared for changes! Introduction à XP Hortis GRC SA -

9 Perspective littéraire
René Descartes ( ), Discours de la méthode : “ ... La seconde, de diviser chacune des difficultés que j’examinerais, en autant de parcelles qu’il se pourrait, et qui serait requis pour les mieux résoudre.” (page 47 de l’édition G.F. 1966) Introduction à XP Hortis GRC SA -

10 Méthodologie “Cascade”
Années Analyse Design Code Test Analyse dépassée! Introduction à XP Hortis GRC SA -

11 Application de la 2ème méthode de Descartes
Analyse Design Code Test Fonctions Analyse Design Code Test Tâches Projet Analyse Design Code Test Années Jours Semaines Introduction à XP Hortis GRC SA -

12 Plannification à la SCRUM
Client et développeurs écrivent ensembles les fonctionalités sur un support (cartes ou JIRA): User stories; Le client donne des priorités à chaque fonctionalités , Les développeurs fractionnent chaque fonctionalité en tâches, Les développeurs attribuent “une mesure de complexité” à chaque tâche. Introduction à XP Hortis GRC SA -

13 Plannification à la SCRUM
La mesure de complexité peut se convertir en temps de réalisation, vélocité (auto-calibrée!); La complexité de chaque fonctionalité est calculée comme la somme des complexités de chaque tâche, Le client décide alors de la prochaine livraison du système. Introduction à XP Hortis GRC SA -

14 Plannification à la SCRUM
Si une date de livraison est en passe d’être dépassée... ... on signale le probléme au client... ... qui décidera des fonctionalités a retirer pour conserver la date de livraison; Après une “bonne” livraison, le client décide de la mise en service. Introduction à XP Hortis GRC SA -

15 Structure en itérations et livraisons
Acceptance Sénarios de test User Stories Architecture Plannifi- cation Requirements Structure New user stories Bugs Iteration Release plan Livraison Recette client Latest version Estimation de la vélocité Introduction à XP Hortis GRC SA -

16 Les 8 chemins vers XP Sépar. métier et technique Simplicité Test
Programmer en paires Intégration continue Code à tous Livraisons fréquentes Refactoring Introduction à XP Hortis GRC SA -

17 Séparation métier et technique
Le client connait son métier, Les développeurs connaissent leurs outils, Le client définit les priorités, Les développeurs définissent les délais. Introduction à XP Hortis GRC SA -

18 Séparation métier et technique
Le client doit les développeurs pas! décider des enchainements (workflow), définir les champs, les menus et les boutons, choisir une charte graphique; Les développeurs doivent le client pas! décider d’une architecture, choisir leurs outils (langage, data base, etc...), définir les classes et les interfaces. a le dernier mot pour ont le dernier mot pour Introduction à XP Hortis GRC SA -

19 Hortis GRC SA - www.hortis.ch
Tests Test Driven Design: Écrire un test avant de coder; Tests unitaires écrits par les développeurs: Tester tout ce qui peut “foirer”, utiliser les valeurs limites; Tests d’acceptance écrits par le client: Vérification des requirements, Bon départ pour la documentation; Be prepared for changes! Introduction à XP Hortis GRC SA -

20 Hortis GRC SA - www.hortis.ch
Intégration Continue Chaque changement est immédiatement inclus dans un système déployé, Le déploiement fait partie du développement, Un système utilisable existe en permanence, les développeurs peuvent essayer le système, le client aussi! Be prepared for changes! Introduction à XP Hortis GRC SA -

21 Livraisons fréquentes
Conséquence directe du principe d’intégration continue, Le client a le système en main le plus tôt possible, Cela lui donne l’occasion de réagir avant qu’il ne soit trop tard, Choc des nouvelles fonctionnalités atténué, Be prepared for changes! Introduction à XP Hortis GRC SA -

22 Hortis GRC SA - www.hortis.ch
Simplicité Écrire du code lisible (pas de virtuosité), Les autres doivent pouvoir le lire, vous aussi, après quelques semaines! Les intentions doivent être claires: Utiliser des standards (format, coding), Éviter les abbréviations, Éviter les commentaires; Ne pas prévoir le futur (vous n’êtes pas devin): C’est une perte de temps pour aujourd’hui, Ce sera une perte de temps demain! Introduction à XP Hortis GRC SA -

23 Programmation par paires
2 personnes font plus que le double de travail, “One types while the other thinks,” Une variation des paires est le meilleur moyen de faire circuler l’information, Les nouveaux venus sont promptement intégrés, Les juniors apprennent beaucoup plus vite... … et donc, contribuent beaucoup plus vite! Introduction à XP Hortis GRC SA -

24 Le code appartient à tous
Chaque développeur doit savoir tout faire, Pas de chasse gardée, pas de “prima donna”, Personne ne doit être indispensable, Donc, le projet ne s’arrêtera pas si quelqu’un s’absente, Le principe de simplicité est un pré-requis. Introduction à XP Hortis GRC SA -

25 Hortis GRC SA - www.hortis.ch
Refactoring Amélioration continue qui fait partie du développement, Architecture évolutive, qui s’adapte: “This skill helps develop software that stays soft, and allows more focus on features and less on infrastructure, delivering more value without risking the long term.” (Ron Jeffries) Be prepared for changes! Introduction à XP Hortis GRC SA -

26 Conséquences sur le code
Coder dans l’ordre suivant: “Make it run ” Créer un cas test, le faire passer, “Make it good ” Refactorer le code pour en améliorer la lisibilité et l’architecture, “Make it fast ” Si besoin est, optimiser l’exécution; “Say things once and once only! ” Ne rien duplifier “extract method” au lieu de “cut&paste”. Introduction à XP Hortis GRC SA -

27 Les 8 chemins vers XP (conclusion)
Sépar. métier et technique Customers know their business, Developer team knows how to use the tools. Simplicité Clearly stated code, no duplicated logic, fewest number of objects. Test Automated tests ensure that a change does not create new errors. Business test cases. Programmer en paires “One types, the other thinks”. This ensures the best communication within the team. Intégration continue Customers can always see a working version. Full control over development. Code à tous Anyone would can contribute to the code will. Customers get the best of our developers. Livraisons fréquentes Customers make their product evolve with the market. Changes are possible on the fly. Refactoring When adding a new feature, existing code is adapted if needed, ensuring code reuse. Introduction à XP Hortis GRC SA -

28 Hortis GRC SA - www.hortis.ch
Questions ? Introduction à XP Hortis GRC SA -


Télécharger ppt "Be prepared for changes! Hortis GRC SA -"

Présentations similaires


Annonces Google