Pragmatic extreme programming

2,962 views
2,793 views

Published on

Published in: Software, Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,962
On SlideShare
0
From Embeds
0
Number of Embeds
2,191
Actions
Shares
0
Downloads
10
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Pragmatic extreme programming

  1. 1. Scrum startupcoding knowledge leadership story challenge desire UX planning Efficiency UX think skills qualities leaning set desire needs energy members wants manager done Efficiency Agile qualities planning leadership needs manager energy think wants LearningTeamrequired Practice pair testing required workshop Designer Programmer economic Change internet reform reconfiguration reform reform ux leadership economic economic think reform reform Designer Designer needs coding leadership Team lean think qualities manager manager manager Reconfiguration Set reconfiguration Programmer scrum Scrum Scrum Skills People desireUX think qualities Agile Wants needs reform UX workshop energy Designer Wants Design think done Design Wants SetReconfiguration Scrum startup coding knowledge leadership story challenge desire planning Efficiency UX think skills energy leaning set desire needs energy members wants manager done Agile qualities planning leadership needs manager energy think wants LearningTeamproduct Practice pair testing required workshop Designer Programmer economic Change internet reform reconfiguration reform reform ux leadership economic economic think reform reform Designer Designer needs leadership Team lean set wants manager manager manager Reconfiguration Set reconfiguration Programmer scrum Scrum scrum Skills People desire UX think qualities Agile Wants needs reform UXworkshop energy Designer Wants Design think done Design Wants SetReconfiguration Set agile wants think knowledge wants skills plan pair think done Scrum Set reform Agile lean Pragmatic  Extreme  Programming Juven  Xu  许晓斌
  2. 2. Regional Scrum Gathering® Shanghai 2014 @juvenxu! http://www.juvenxu.com Programmer & Agile Coach
  3. 3. Extreme Programming (XP) is 
 a software development methodology which 
 is intended to improve software quality and responsiveness to changing customer requirements. Regional Scrum Gathering® Shanghai 2014
  4. 4. Regional Scrum Gathering® Shanghai 2014
  5. 5. Kent Beck! Martin Fowler! James Shore! Ron Jeffries! … Regional Scrum Gathering® Shanghai 2014
  6. 6. Do You Remember The Values? Regional Scrum Gathering® Shanghai 2014
  7. 7. simplicity respect feedback communication courage Values Regional Scrum Gathering® Shanghai 2014
  8. 8. feedback feedback feedback feedback feedback simplicity simplicity simplicity courage courage respect respect communication communication communication communication communication communication simplicity respect feedback communication courage Regional Scrum Gathering® Shanghai 2014 respect
  9. 9. How Do We Follow The Values? Here is our story… Regional Scrum Gathering® Shanghai 2014
  10. 10. A product supporting alibaba.com & aliexpress.com Regional Scrum Gathering® Shanghai 2014
  11. 11. 5000 query per second & 500MB network traffic at peak Regional Scrum Gathering® Shanghai 2014
  12. 12. • We have 3 people for all business analysis, architecture, coding, testing work, and some operation work.! ! • High availability is a must, our service down almost means sites down.! ! • Business keeps growing, which means new requirements coming and users growing. Challenges Regional Scrum Gathering® Shanghai 2014
  13. 13. simplicity ( ̄口 ̄)!! ! 19 svn repositories for 1 project? ! Are you serious? Regional Scrum Gathering® Shanghai 2014
  14. 14. simplicity Let’s follow the industry standard. Regional Scrum Gathering® Shanghai 2014
  15. 15. • Much less learning costs 
 — imagine when programmers grows 2x in 1 year! ! • No need to invest on customizing tools ! ! • Much easier to use open source tools Follow The Convention, Keep It Simple Regional Scrum Gathering® Shanghai 2014
  16. 16. We need streamed file download support! In 2 weeks! The Way Requirements Usually Comes: Regional Scrum Gathering® Shanghai 2014
  17. 17. The Way We Usually React: Ok, let’s do it. (god knows how much time it takes) Ok, let’s do it, but we need 2 months. Sorry, don’t you see I’m already very busy? Regional Scrum Gathering® Shanghai 2014
  18. 18. communication Why you need streamed file download support? We need to play audios and videos. In what scenario you need this feature? We have mobile users, they want to send audios and videos. Mobiles users, hmm… what is the size of the audios/videos? Let me think, … 5mb at most, usually no more than 2 mb. Then you don’t need streamed file download, just download it and play it locally. Regional Scrum Gathering® Shanghai 2014 respect our customers
  19. 19. • Think code as the last way to solve a problem
 
 more code == more code to maintain
 more feature == more complex
 more complex == less stable
 more complex == harder to change
 simplicity Regional Scrum Gathering® Shanghai 2014
  20. 20. Regional Scrum Gathering® Shanghai 2014
  21. 21. Regional Scrum Gathering® Shanghai 2014
  22. 22. Regional Scrum Gathering® Shanghai 2014 • TDD, CI, ATDD/BDD, Pair are great for getting feedback.! ! • But we need more, mainly from Ops point of view.
 

  23. 23. Regional Scrum Gathering® Shanghai 2014 user’s behaviour
  24. 24. Regional Scrum Gathering® Shanghai 2014 availability of our dependency
  25. 25. Regional Scrum Gathering® Shanghai 2014 img cluster img-compress cluster fileserver2-content cluster task: merge 2 clusters • For saving network traffic (>3GB/s) and machines (>30 4core VM)! • Legacy code with 100+ apache regex url rewrite rules! • Service must not get down during migration.
  26. 26. Regional Scrum Gathering® Shanghai 2014 courage LETS DO IT! We have the because: • We believe it’s valuable.! • We spend days parsing real access log and from which make many test cases.! • We use canary deployment to minimize risks. respect our users
  27. 27. simplicity respect feedback communication courage Values Regional Scrum Gathering® Shanghai 2014
  28. 28. Scrum startupcoding knowledge leadership story challenge desire UX planning Efficiency UX think skills qualities leaning set desire needs energy members wants manager done Efficiency Agile qualities planning leadership needs manager energy think wants LearningTeamrequired Practice pair testing required workshop Designer Programmer economic Change internet reform reconfiguration reform reform ux leadership economic economic think reform reform Designer Designer needs coding leadership Team lean think qualities manager manager manager Reconfiguration Set reconfiguration Programmer scrum Scrum Scrum Skills People desireUX think qualities Agile Wants needs reform UX workshop energy Designer Wants Design think done Design Wants SetReconfiguration Scrum startup coding knowledge leadership story challenge desire planning Efficiency UX think skills energy leaning set desire needs energy members wants manager done Agile qualities planning leadership needs manager energy think wants LearningTeamproduct Practice pair testing required workshop Designer Programmer economic Change internet reform reconfiguration reform reform ux leadership economic economic think reform reform Designer Designer needs leadership Team lean set wants manager manager manager Reconfiguration Set reconfiguration Programmer scrum Scrum scrum Skills People desire UX think qualities Agile Wants needs reform UXworkshop energy Designer Wants Design think done Design Wants SetReconfiguration Set agile wants think knowledge wants skills plan pair think done Scrum Set reform Agile lean Thank  You Juven  Xu  许晓斌

×