1 / 29

Waterfall and Agile Quality Techniques

Waterfall and Agile Quality Techniques. Latha Karri EECS 814 December 9th, 2009. Outline. Agile Methodology XP- What is Extreme About It? Agile Methods: Twelve Facets of XP Waterfall – Quality Techniques Agile – Quality Techniques Summary. Outline. Agile Methodology

Download Presentation

Waterfall and Agile Quality Techniques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Waterfall and Agile Quality Techniques Latha Karri EECS 814 December 9th, 2009

  2. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  3. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  4. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  5. Agile Methods • Agility defined: • “marked by ready ability to move with quick easy grace” • “having a quick resourceful and adaptable character” • Emphasis on flexibility in producing software quickly and capably

  6. Agile Methods (continued) • Agile manifesto Source: http://agilemanifesto.org/

  7. Examples of Agile Methods • Extreme Programming • Scrum • Adaptive Software Development • Lean Development • Evolutionary Project Management • Unified Process • Crystal • Lean Development • Dynamic System Development Method • Feature Driven Development

  8. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  9. XP- What is Extreme About It? • If code review is good, we’ll review code all the time -Pair programming • If testing is good, every body will test all the time -Unit testing by developers, functional testing by customers • If simplicity is good, we’ll make it part of the system with simplest design that supports its current functionality – Simple design • If short iterations are good, we’ll make the iterations really, really short - Small iterations and the planning game

  10. XP- What is Extreme About It?(continued) • If integration testing is important, then we’ll integrate and test several times a day – Continuous integration • If design is good, we’ll make it part of everybody’s daily business –Refactoring • If architecture is important, everybody will work defining and refining the architecture all the time - Metaphor

  11. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  12. Agile Methods: Twelve Facets of XP • The Planning Game (customer defines value) • Small Release • Writing Tests First • On-site Customer • Pair Programming • Sustainable Pace (40 hours/week)

  13. Agile Methods: Twelve Facets of XP (continued) • Collective Ownership • Continuous Integration (small increments) • Simple Design • Coding Standard • Metaphor (common vision, common names) • Refactoring

  14. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  15. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  16. Waterfall – Quality Techniques • Below screenshot displays the quality techniques employed by waterfall model Source: Completed Waterfall Process Model (Huo et al. 2004)

  17. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  18. Agile – XP Quality Techniques • On-site Customer • real, live user on the team, available full-time to answer questions • reduces the amount of hard copy documentation • and the high cost associated with its creation and maintenance • reduces the delay in response time

  19. Agile – XP Quality Techniques(continued) • Pair Programming • two programmers continuously working on the same code -widely recognized as continuous code inspection • improves design quality • reduces defects • helps to learn from other person • coding becomes funs • resolution time for some critical problems is much faster

  20. Agile – XP Quality Techniques(continued) • Pair Programming Source: Costs and Benefits of Pair Programming by Cockburn & Williams

  21. Agile – XP Quality Techniques (continued) • Continuous Integration • integrate and build the system several times a day, every time a talk is completed. • reduces compatibility issues • reduces time in finding the bugs • reduces the risk and helps you understand what works and what does not work early on

  22. Agile – XP Quality Techniques(continued) • Test Driven Development • programmers write tests first based on user stories (requirements) • reduces defects • helps to ensure that the application is written for testability • improves design quality • ensures that tests for every feature will be written • gives confidence to the developers

  23. Agile – XP Quality Techniques(continued) • Sustainable Pace \ 40 hr work week • programmers work 40-45 hr per week • helps to produce high quality code in less time • helps the programmers to be healthy and happy

  24. Outline • Agile Methodology • XP- What is Extreme About It? • Agile Methods: Twelve Facets of XP • Waterfall – Quality Techniques • Agile – Quality Techniques • Summary

  25. Summary • Agile methods generally promote a disciplined project management process that encourages frequent inspection and breaks tasks into small increments with minimal planning • XP took common practices to the an extreme level by doing them more frequently

  26. Summary (continued) • Moving forward, we discussed the quality aspects of waterfall model • Finally, concluded with the agile quality techniques as addressed by test driven development, on-site customer, continuous integration, pair programming and sustainable pace

  27. References • http://www.agiledeveloper.com/presentations/AgileMethodologies.pdf • Huo, M., Verner, J., Zhu, L., & Babar, M. A. (2004), “Software Quality and Agile Methods”, Proceedings of the 28th IEEE Annual International Computer Software and Applications Conference, pp. 520-525 Washington, DC • http://aswec07.cs.latrobe.edu.au/12.pdf

  28. References (continued) • http://aswec07.cs.latrobe.edu.au/12.pdf • http://people.eecs.ku.edu/~saiedian/Teaching/Fa08/810/Lectures/PA-ch02.pdf • http://collaboration.csc.ncsu.edu/laurie/Papers/XPSardinia.PDF • Discipline vs Agility report by Jason Cradit • http://www.orlandojug.org/XP_Methodology_overview_v3a.ppt#276,31,XP > Pros

  29. Questions ?

More Related