Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1 of 63

Le 12 pratiche - Un introduzione a XP (Mini Italian Agile Day)

1

Share

Download to read offline

Una introduzione base ad eXtreme Programming per i nuovi arrivati dell'Agile Day che vogliono cominciare a capire di cosa si tratta e vogliono sapere come viene implementata nelle aziende che la praticano. Alla fine della sessione i partecipanti si saranno fatti un idea di come si fa XP in concreto.

Slide della presentazione fatta al Mini Italian Agile Day di Vimercate - 11 febbraio 2017

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Le 12 pratiche - Un introduzione a XP (Mini Italian Agile Day)

  1. 1. @andreafrancia Le 12 pratiche Un introduzione a XP Andrea Francia mini IAD di Vimercate (11 febbraio 2017)
  2. 2. @andreafrancia Cos’è XP?
  3. 3. @andreafrancia Royce,Winston (1970), "Managing the Development of Large Software Systems" (PDF), Proceedings of IEEE WESCON, 26 (August): 1–9
  4. 4. @andreafrancia
  5. 5. @andreafrancia
  6. 6. @andreafrancia
  7. 7. @andreafrancia Kent Beck. 1999. Extreme Programming Explained: Embrace Change
  8. 8. @andreafrancia What if? Kent Beck. 1999. Extreme Programming Explained: Embrace Change
  9. 9. @andreafrancia Ok ma da dove si comincia?
  10. 10. @andreafrancia Cominciamo dalle pratiche
  11. 11. @andreafrancia Chi sei? Andrea Francia • Programmatore • Appassionato di TDD • Studio Agile da 8 anni • Uso XP quotidianamente da 4 anni • Coordino il TDD Milano
  12. 12. @andreafrancia XP -vs- Scrum
  13. 13. @andreafrancia XP Scrum (about programming) (anything) Iterations Sprints Planning Game Sprint Planning Meeting Stories/Cards Product Backlog Items Not so fixed Fixed Sprint Backlog Engineering Practices See XP Engineering Practices: TDD, Pair Prorgramming, Simple Design, Refactoring
  14. 14. @andreafrancia Le pratiche classiche
  15. 15. @andreafrancia http://ronjeffries.com/xprog/what-is-extreme-programming/
  16. 16. @andreafrancia Quante sono le 12 pratiche?
  17. 17. @andreafrancia Quante sono le pratiche XP? 12!1999
  18. 18. @andreafrancia Quante sono le pratiche XP? 13! 2002
  19. 19. @andreafrancia Quante sono le pratiche XP? 13!
  20. 20. @andreafrancia 24! 2004 Quante sono le pratiche XP?
  21. 21. @andreafrancia un momento… • e la retrospettiva? • … ci sono anche le pratiche Scrum!
  22. 22. @andreafrancia ~50 Le pratiche che possono portare vantaggio ad un team XP sono …
  23. 23. @andreafrancia Questo libro le spiega quasi tutte:
  24. 24. @andreafrancia Pratiche “Business”
  25. 25. @andreafrancia Small Releases
  26. 26. @andreafrancia Small Releases “Every release should be as small as possible, containing the most valuable business requirements”
  27. 27. @andreafrancia Planning Game
  28. 28. @andreafrancia Planning Game • Quickly determine the scope of the next release by combining business priorities and technical estimates. As reality overtakes the plan, update the plan.
  29. 29. @andreafrancia Acceptance Tests
  30. 30. @andreafrancia Acceptance Tests “The details about the user stories are captured in the form of acceptance tests specified by the customer.”
  31. 31. @andreafrancia Customer On-Site
  32. 32. @andreafrancia Customer On-Site “A real customer (*) must sit with the team, available full-time to answer questions.”
  33. 33. @andreafrancia Le pratiche “di team”
  34. 34. @andreafrancia Sustainable Pace
  35. 35. @andreafrancia Sustainable Pace • “In order to finish quickly, the team must run at a sustainable pace.” • “A team is not allowed to work overtime"
  36. 36. @andreafrancia GitLab incident
  37. 37. @andreafrancia work long hour
  38. 38. @andreafrancia Collective Code Ownership
  39. 39. @andreafrancia Collective Code Ownership • “Anyone can change any code anywhere in the system at any time.”
  40. 40. @andreafrancia Coding Standards
  41. 41. @andreafrancia Coding Standards • Programmers write all code in accordance with rules emphasizing communication through the code.
  42. 42. @andreafrancia Pair Programming
  43. 43. @andreafrancia Pair Programming • “All production code is written by pairs of programmers working on same workstation.” https://it.wikipedia.org/wiki/File:Pair_programming_1.jpg Author: Lisamarie Babik
  44. 44. @andreafrancia Pair Programming • Cosa succede quando non si fa pair?
  45. 45. @andreafrancia Continuous Integration
  46. 46. @andreafrancia Continuous Integration Definizione: • “Integrate and build the system many times a day, every time a task is completed.”
  47. 47. @andreafrancia Pratiche di design
  48. 48. @andreafrancia
  49. 49. @andreafrancia Metaphor
  50. 50. @andreafrancia Metaphor • “Guide all development with a simple shared story of how the whole system works.”
  51. 51. @andreafrancia Test-Driven Development
  52. 52. @andreafrancia Test-Driven Development Definizione: • “Any program feature without an automated test simply doesn’t exists”
  53. 53. @andreafrancia Refactoring aka Incremental Design
  54. 54. @andreafrancia Refactoring • Programmers restructure the system without changing its behavior to remove duplication, improve communication, simplify, or add flexibility.
  55. 55. @andreafrancia Refactoring? • Ok ma a cosa serve?
  56. 56. @andreafrancia
  57. 57. @andreafrancia
  58. 58. @andreafrancia Simple Design
  59. 59. @andreafrancia Simple Design Un pezzo di codice è semplice quando:
 1. Fa passare tutti i test 2. Non contiene duplicazione 3. È chiaro ed esprime l’intento per cui è scritto 4. Non contiene parti superflue
  60. 60. @andreafrancia Per approfondire
  61. 61. @andreafrancia
  62. 62. @andreafrancia TDD Milano https://www.meetup.com/it-IT/TDD-Milano/
  63. 63. @andreafrancia Grazie Andrea Francia

×