Xp Slideshow


Published on

Done for a Software eng course in KSU :)

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Xp Slideshow

  1. 1. Extreme Programming Improving software engineering !
  2. 2. Extreme Programming Hello ! My Name is Gilbert :D Any one have an idea what is XP ?
  3. 3. Extreme Programming <ul><li>Software development methodology. </li></ul><ul><li>Focuses on “ The simplest thing that could possibly work” ! </li></ul><ul><li>was created by Kent Beck while he was working on the </li></ul><ul><li>Chrysler Comprehensive Compensation System (C3) Payroll. </li></ul>
  4. 4. WHAT IS XP ?
  5. 5. Extreme Programming IS A SET OF GOOD SOFTWARE ENGINEERING PRACTICES ! XP does ! doesn’t prescribe any engineering practices Changeable during iterations  Once it approved by the customer and start working it never changes !!! Continuous: Planning Game (every Iteration), Release Planning Requirements Gathering (done once at start) XP Other
  6. 6. Practices: <ul><li>Planning </li></ul><ul><li>Refactoring </li></ul><ul><li>Simple Design </li></ul><ul><li>Small Release </li></ul><ul><li>Testing </li></ul><ul><li>Pair Programming </li></ul><ul><li>Collective Ownership </li></ul><ul><li>Continues integration </li></ul><ul><li>On-site Customer </li></ul><ul><li>Coding Standards </li></ul>
  7. 7. Extreme Programming
  8. 8. Practices: <ul><li>Planning: </li></ul><ul><li>Planning is critical; without it, software projects </li></ul><ul><li>can quickly fall apart </li></ul><ul><li>Release programming </li></ul><ul><ul><ul><ul><ul><li>iteration Planning </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Simple Design: </li></ul></ul></ul></ul></ul><ul><li>Developers uses the simplest Designs .. WHY ? </li></ul><ul><ul><li>the reason for this is that the system requirements </li></ul></ul><ul><ul><li>changed dramatically ! </li></ul></ul>
  9. 9. Practices: <ul><li>Pair Programming: </li></ul><ul><li>Is a Software developer technique </li></ul><ul><li>2 programmer work in one station and </li></ul><ul><li>produced the same code </li></ul><ul><li>All significant development is done in pairs </li></ul><ul><li>Process is FASTER !! </li></ul><ul><li>Coding Standards: </li></ul><ul><li>Rules should be used to write the system </li></ul><ul><li>The entire team should agree on using these standards </li></ul><ul><li>The software would be as a single developer wrote the </li></ul><ul><li>code in one session </li></ul>
  10. 10. Practices: <ul><li>Small release: </li></ul><ul><li>development team launched the system quickly to the market with </li></ul><ul><li>the essential requirements (minimum requirements), and then </li></ul><ul><li>they it is updated on a regular basis </li></ul><ul><ul><ul><ul><ul><li>Testing: </li></ul></ul></ul></ul></ul><ul><li>The developers here writes test plan for the system before </li></ul><ul><li>starting in programming phase making </li></ul><ul><li>it easier for the application of the required tests </li></ul><ul><li>this feature makes XP different than others </li></ul><ul><li>Unit Testing </li></ul><ul><ul><ul><ul><ul><li>Acceptance Tests </li></ul></ul></ul></ul></ul>
  11. 11. XP VALUES: <ul><li>Simplicity </li></ul><ul><li>Communication </li></ul><ul><li>Respect </li></ul><ul><li>Feedback </li></ul>
  12. 12. XP VALUES: <ul><li>Simplicity: </li></ul><ul><ul><li>doing what is exactly needed, extra functions </li></ul></ul><ul><ul><li>can be added later. simplicity value causes </li></ul></ul><ul><ul><li>some problems because when the client </li></ul></ul><ul><ul><li>request changes, this frequently leads </li></ul></ul><ul><ul><li>to radical changes in what has already </li></ul></ul><ul><ul><li>been implemented . </li></ul></ul>
  13. 13. XP VALUES: 2.Communication : since threes no documentation in XP, communication is a core value. Every member in the team works together in every step and meets frequently.
  14. 14. XP VALUES: 3.Respect: Team members respect each other, the clients ,and their work by always looking for high quality and seeking for the best design for the solution. 4.feedback: Ensure rapid progress, rapid development, team confidence, and discover bugs early. XP includes three types of feedback
  15. 15. Fundamentals <ul><li>Distinguish between decisions made by business stakeholders and developers. </li></ul><ul><li>Keep design as simple as possible. </li></ul><ul><li>Write automated test code before writing production code and keep all tests running. </li></ul><ul><li>Pair programming </li></ul><ul><li>The code can be changed by anyone. </li></ul>
  16. 16. DRAW BACKS <ul><li>XP have several potential drawbacks including: </li></ul><ul><li>Problems with unstable requirements. </li></ul><ul><li>Working in pair is slow. </li></ul><ul><li>Lack of documentation that addressed by agile modeling. </li></ul><ul><li>Simple design may have faults and omissions. </li></ul>
  17. 17. We Hope you enjoyed Your time !
  18. 18. DONE BY: Ghadah Al-Rabeeah Hessah Al-Rashed Nouf Al-Mobarak Noura Al-Hamid Rawan BaBaier Reem Al-Fayez Sadeem Al-Sudais Shahad Al-Harbi