Presentation is loading. Please wait.

Presentation is loading. Please wait.

© ThoughtWorks, 2008 Improving Productivity and Quality With Agile Patrick Kua.

Similar presentations


Presentation on theme: "© ThoughtWorks, 2008 Improving Productivity and Quality With Agile Patrick Kua."— Presentation transcript:

1 © ThoughtWorks, 2008 Improving Productivity and Quality With Agile Patrick Kua

2 © ThoughtWorks, 2008 The Software Development Crisis…

3 © ThoughtWorks, 2008 Who’s happy with:

4 Requirements not met

5 Software taking too long before it can be used

6 Unhappy Users

7 Unhappy Developers

8 What’s working to fix this?

9 © ThoughtWorks, 2008 Agile

10 © ThoughtWorks, 2008 What is Agile?

11 XP Scrum Lean DSDM Crystal …

12 © ThoughtWorks, 2008 A guiding manifesto…

13 © ThoughtWorks, 2008 The Agile Manifesto

14 © ThoughtWorks, 2008 The Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: – Individuals and interactions over processes and tools – Working software over comprehensive documentation – Customer collaboration over contract negotiation – Responding to change over following a plan. That is, while there is value in the items on the right, we value the items on the left (bold) more.

15 © ThoughtWorks, 2008 What leads to poor productivity? Poor Communication Too much planning (no delivery) Constant Handover Priorities changing

16 © ThoughtWorks, 2008 How does agile help? Poor Communication Too much planning (no delivery) Constant Handover Priorities changing Timeboxed iterations Constant feedback Daily stand ups Customer involvement Iteration Showcases Iteration planning games Release planning Pair programming Cross functional teams Iteration planning games

17 © ThoughtWorks, 2008 What leads to poor quality? Late Testing Overcomplicated designs No process improvement Delaying Integration No knowledge transfer Lack of Standards

18 © ThoughtWorks, 2008 How does agile help? Late Testing Overcomplicated designs No process improvement Delaying Integration No knowledge transfer Lack of Standards Code standards Collective Ownership Continuous Integration Frequent Releases Refactoring YAGNI Test Driven Development Automated acceptance tests Unit tests Daily stand ups Pair programming Behaviour driven development Retrospectives Informative Workspaces Pair programming

19 © ThoughtWorks, 2008 Example practices

20 © ThoughtWorks, 2008 Continuous Integration

21

22 © ThoughtWorks, 2008 Testing

23 © ThoughtWorks, 2008 Customer acceptance tests Unit tests supports... “TDD produced code that passed between 18 and 50 percent more external test cases than code produced by control groups not using TDD.” IEEE Article: Software Architecture Improvement through TestDriven Development by David S. Janzen

24 © ThoughtWorks, 2008 Refactoring

25 © ThoughtWorks, 2008 Pair Programming Constant code reviewing Very efficient – second person prevents drift – X hours longer vs. 15X hours bug fixing (source: http://www.pairprogramming.com)

26 © ThoughtWorks, 2008 Reinforcing Practices

27 © ThoughtWorks, 2008 WARNING!

28 Only following practices…

29 Coach

30 © ThoughtWorks, 2008 Summary Agile Discipline Quality Speed Productivity

31 © ThoughtWorks, 2008 Questions?


Download ppt "© ThoughtWorks, 2008 Improving Productivity and Quality With Agile Patrick Kua."

Similar presentations


Ads by Google