SlideShare a Scribd company logo
1 of 19
Download to read offline
Submitted in fulfilment of the
                  requirements for the award of the degree
                                     of
                          Bachelor of Technology
                                     in
                     COMPUTER ENGINEERING

Submitted To:                                    Submitted by:
MS. Poonam Gera                                  HIMANSHU MUNJAL
HOD , C.S.                                      VIII SEM , C.S.
   INTRODUCTION
   AGILE METHODOLOGIES
   EXTREME PROGRAMMING(XP)
   XP WORKFLOW
   XP VALUES
   XP PRACTICES
   ADVANTAGE & DISADVANTAGE
   XP PROGRAMMING EXAMPLE
   An agile development methodology

   Created by Kent Beck in the mid 1990’s

   A set of 12 key practices taken to their ―extremes‖

   A mindset for developers and customers
   A methodology is a formalized process or set of practices for
    creating software.

   An early methodology was the waterfall model.

   PROBLEMS:
    ◦ It assumes that there will be no unforeseen difficulties in the
      software development.

    ◦ It assumes that the customers know (and can specify) what they
      want, in extreme detail.
   Agile programming methodologies assume:

    ◦ Customers can best discover what software meets their needs
      via frequent iterations

    ◦ Requirements will need to be revised, probably multiple times,
      during software development.
XP has nothing new, yet it has something new
 XP is a specific instantiation of an agile process
 XP combines best practices in a different way
 XP is a different approach to development which
  provides-
      Incremental planning
      Flexible implementation
      Automatic tests
extreme programming
    Short description of what customer wants the software
    to do.
   Written by the customer in the customer terminology
    without techno-syntax.
    Used to create time estimates for the release planning
    meeting.
    Used instead of a large requirements document.
extreme programming
◦ Pair Programming
   Teams of two people
◦ Test Driven Development
   Writing lots of tests, and writing them early
◦ Continuous Integration
   Putting code together as you write it, not at the last minute
◦ Coding Standards
   Learn and follow well-established conventions
◦ Collective Code Ownership
   You are responsible for your partner’s code
◦ Simple Design
   Project Structure

    ◦ Project: Customized an existing Labor Collection System.

    ◦ Primary User: Human resource

    ◦ Project Team: Programer1, Programer2, Senior Programmer,
      DBA, Project Manager.
User                  R
      P1, P2, P3   Program
      R and Data   manager




                               P2
                                           Senior Pro.
                     Pro 2

     Prog1



                                                     P3



P1
                      DBA




                               CONVENTIONAL APPROACH

                        Data
P1, P2, P3
 R and Data
                             User




                     Pro 2
                                    PROGRAMMING WITH
                                            XP
Prog1




              Pro
              Lead
   Built-In Quality

   Overall Simplicity

   Programmer Power

   Customer Power
   Hard to do

   constant involvement of the customer

   Informal, little, or no documentation

   Misconception on the cost of change
   Light-weight: discipline without bureaucracy

   Under stress, people do what is easiest
    ◦ All XP practices have short-term benefits as well as long-term
      benefits

   Development as a Conversation

   The code is the documentation
   Not on very large projects

   Not for embedded software if the hardware is frozen

   Not with data-driven apps – RAD for these

   Not with ―Old Economy‖ management
   Work as closely as you can with your partner

   Don’t just ―contribute‖ your share of the code—also review your partner’s
    code, checking for problems.

   You can use all the Java you know, if your partner also understands it

   Don’t:
    ◦ Depend on your partner to do it all
    ◦ Take off and do it all yourself
extreme programming

More Related Content

What's hot

eXtreme programming (XP) - An Overview
eXtreme programming (XP) - An OvervieweXtreme programming (XP) - An Overview
eXtreme programming (XP) - An OverviewGurtej Pal Singh
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingaaina_katyal
 
Introduction To Extreme Programming
Introduction To Extreme ProgrammingIntroduction To Extreme Programming
Introduction To Extreme ProgrammingJoe Drumgoole
 
Xp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentationXp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentationMuaazZubairi
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme ProgrammingNaresh Jain
 
Agile Software Development with XP
Agile Software Development with XPAgile Software Development with XP
Agile Software Development with XPVashira Ravipanich
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingMr SMAK
 
XP Explained
XP ExplainedXP Explained
XP Explainedvineet
 
Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !Vinit Kumar Singh
 
Extreme programming (xp) | David Tzemach
Extreme programming (xp) | David TzemachExtreme programming (xp) | David Tzemach
Extreme programming (xp) | David TzemachDavid Tzemach
 
ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)Amardeep Vishwakarma
 
Going extreme-with-extreme-programming
Going extreme-with-extreme-programmingGoing extreme-with-extreme-programming
Going extreme-with-extreme-programmingMichael Green
 
Extreme Programming (XP)
Extreme Programming (XP)Extreme Programming (XP)
Extreme Programming (XP)dcsunu
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) ModelDamian T. Gordon
 
optimizing code in compilers using parallel genetic algorithm
optimizing code in compilers using parallel genetic algorithm optimizing code in compilers using parallel genetic algorithm
optimizing code in compilers using parallel genetic algorithm Fatemeh Karimi
 
Extreme Programming (XP) Project Process Flow Chart
Extreme Programming (XP)  Project Process Flow ChartExtreme Programming (XP)  Project Process Flow Chart
Extreme Programming (XP) Project Process Flow Chartcarbrac
 

What's hot (20)

Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
eXtreme programming (XP) - An Overview
eXtreme programming (XP) - An OvervieweXtreme programming (XP) - An Overview
eXtreme programming (XP) - An Overview
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Introduction To Extreme Programming
Introduction To Extreme ProgrammingIntroduction To Extreme Programming
Introduction To Extreme Programming
 
Xp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentationXp(Xtreme Programming) presentation
Xp(Xtreme Programming) presentation
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 
Extreme Programming ppt
Extreme Programming pptExtreme Programming ppt
Extreme Programming ppt
 
Agile Software Development with XP
Agile Software Development with XPAgile Software Development with XP
Agile Software Development with XP
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
XP Explained
XP ExplainedXP Explained
XP Explained
 
Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !Extreme programming - a quick and agile overview !
Extreme programming - a quick and agile overview !
 
Extreme programming (xp)
Extreme programming (xp)Extreme programming (xp)
Extreme programming (xp)
 
Extreme programming (xp) | David Tzemach
Extreme programming (xp) | David TzemachExtreme programming (xp) | David Tzemach
Extreme programming (xp) | David Tzemach
 
ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)ABC of Agile (Scrum & Extreme Programming)
ABC of Agile (Scrum & Extreme Programming)
 
Going extreme-with-extreme-programming
Going extreme-with-extreme-programmingGoing extreme-with-extreme-programming
Going extreme-with-extreme-programming
 
Extreme Programming (XP)
Extreme Programming (XP)Extreme Programming (XP)
Extreme Programming (XP)
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
optimizing code in compilers using parallel genetic algorithm
optimizing code in compilers using parallel genetic algorithm optimizing code in compilers using parallel genetic algorithm
optimizing code in compilers using parallel genetic algorithm
 
Extreme Programming (XP) Project Process Flow Chart
Extreme Programming (XP)  Project Process Flow ChartExtreme Programming (XP)  Project Process Flow Chart
Extreme Programming (XP) Project Process Flow Chart
 
Xtreme Programming
Xtreme ProgrammingXtreme Programming
Xtreme Programming
 

Similar to extreme programming

Agile software development
Agile software development Agile software development
Agile software development saurabh goel
 
Raymond_Matel_Software_Engineer
Raymond_Matel_Software_EngineerRaymond_Matel_Software_Engineer
Raymond_Matel_Software_EngineerRaymond Matel
 
Software cost estimation project
Software  cost estimation projectSoftware  cost estimation project
Software cost estimation projectShashank Puppala
 
Anand madhab c linux
Anand madhab c linuxAnand madhab c linux
Anand madhab c linuxAnand Madhab
 
Agile Software Development - making programming fun again
Agile Software Development - making programming fun againAgile Software Development - making programming fun again
Agile Software Development - making programming fun againcalenlegaspi
 
Introduction to Software Cost Estimation
Introduction to Software Cost EstimationIntroduction to Software Cost Estimation
Introduction to Software Cost EstimationHemanth Raj
 
PSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWARE
PSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWAREPSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWARE
PSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWAREFranklin Parrales Bravo
 
Agile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainAgile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainCalen Legaspi
 
Agile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainAgile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainOrange and Bronze Software Labs
 
Project management - kickoff - opensource erp
Project management - kickoff - opensource erpProject management - kickoff - opensource erp
Project management - kickoff - opensource erpThanh Nguyen
 
Project manager with 10+ years of IT experience.
Project manager with 10+ years of IT experience.Project manager with 10+ years of IT experience.
Project manager with 10+ years of IT experience.Rakesh Chandalia
 

Similar to extreme programming (20)

Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Agile software development
Agile software development Agile software development
Agile software development
 
Ashish_Kumar_Singh_resume
Ashish_Kumar_Singh_resumeAshish_Kumar_Singh_resume
Ashish_Kumar_Singh_resume
 
Raymond_Matel_Software_Engineer
Raymond_Matel_Software_EngineerRaymond_Matel_Software_Engineer
Raymond_Matel_Software_Engineer
 
Software cost estimation project
Software  cost estimation projectSoftware  cost estimation project
Software cost estimation project
 
Anand madhab c linux
Anand madhab c linuxAnand madhab c linux
Anand madhab c linux
 
Srividhya_pm_resume_latest
Srividhya_pm_resume_latestSrividhya_pm_resume_latest
Srividhya_pm_resume_latest
 
Resume (1)
Resume (1)Resume (1)
Resume (1)
 
Resume (1)
Resume (1)Resume (1)
Resume (1)
 
Agile Software Development - making programming fun again
Agile Software Development - making programming fun againAgile Software Development - making programming fun again
Agile Software Development - making programming fun again
 
Introduction to Software Cost Estimation
Introduction to Software Cost EstimationIntroduction to Software Cost Estimation
Introduction to Software Cost Estimation
 
PSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWARE
PSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWAREPSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWARE
PSW Unidad 4 ESTIMACIÓN DE PROYECTOS DE SOFTWARE
 
Agile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainAgile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun Again
 
Agile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun AgainAgile Software Development - Making Programming Fun Again
Agile Software Development - Making Programming Fun Again
 
Yogesh_Kadam
Yogesh_KadamYogesh_Kadam
Yogesh_Kadam
 
Project management - kickoff - opensource erp
Project management - kickoff - opensource erpProject management - kickoff - opensource erp
Project management - kickoff - opensource erp
 
Project manager with 10+ years of IT experience.
Project manager with 10+ years of IT experience.Project manager with 10+ years of IT experience.
Project manager with 10+ years of IT experience.
 
SE Unit 1
SE Unit 1SE Unit 1
SE Unit 1
 
Agile development
Agile developmentAgile development
Agile development
 
SrinivasaVithal_CV
SrinivasaVithal_CVSrinivasaVithal_CV
SrinivasaVithal_CV
 

Recently uploaded

Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxSatishbabu Gunukula
 
20140402 - Smart house demo kit
20140402 - Smart house demo kit20140402 - Smart house demo kit
20140402 - Smart house demo kitJamie (Taka) Wang
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTxtailishbaloch
 
Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...DianaGray10
 
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfQ4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfTejal81
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsDianaGray10
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4DianaGray10
 
The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)IES VE
 
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - TechWebinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - TechProduct School
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdfThe Good Food Institute
 
3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud Data3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud DataEric D. Schabell
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3DianaGray10
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024Brian Pichman
 
Extra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdfExtra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdfInfopole1
 
AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024Brian Pichman
 
Introduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its applicationIntroduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its applicationKnoldus Inc.
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxNeo4j
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FESTBillieHyde
 

Recently uploaded (20)

SheDev 2024
SheDev 2024SheDev 2024
SheDev 2024
 
Oracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptxOracle Database 23c Security New Features.pptx
Oracle Database 23c Security New Features.pptx
 
20140402 - Smart house demo kit
20140402 - Smart house demo kit20140402 - Smart house demo kit
20140402 - Smart house demo kit
 
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENTSIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
SIM INFORMATION SYSTEM: REVOLUTIONIZING DATA MANAGEMENT
 
Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...Explore the UiPath Community and ways you can benefit on your journey to auto...
Explore the UiPath Community and ways you can benefit on your journey to auto...
 
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdfQ4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
Q4 2023 Quarterly Investor Presentation - FINAL - v1.pdf
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Automation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projectsAutomation Ops Series: Session 2 - Governance for UiPath projects
Automation Ops Series: Session 2 - Governance for UiPath projects
 
UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4UiPath Studio Web workshop series - Day 4
UiPath Studio Web workshop series - Day 4
 
The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)The Importance of Indoor Air Quality (English)
The Importance of Indoor Air Quality (English)
 
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - TechWebinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
Webinar: The Art of Prioritizing Your Product Roadmap by AWS Sr PM - Tech
 
2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf2024.03.12 Cost drivers of cultivated meat production.pdf
2024.03.12 Cost drivers of cultivated meat production.pdf
 
3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud Data3 Pitfalls Everyone Should Avoid with Cloud Data
3 Pitfalls Everyone Should Avoid with Cloud Data
 
UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3UiPath Studio Web workshop Series - Day 3
UiPath Studio Web workshop Series - Day 3
 
CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024CyberSecurity - Computers In Libraries 2024
CyberSecurity - Computers In Libraries 2024
 
Extra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdfExtra-120324-Visite-Entreprise-icare.pdf
Extra-120324-Visite-Entreprise-icare.pdf
 
AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024AI Workshops at Computers In Libraries 2024
AI Workshops at Computers In Libraries 2024
 
Introduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its applicationIntroduction to RAG (Retrieval Augmented Generation) and its application
Introduction to RAG (Retrieval Augmented Generation) and its application
 
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptxGraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
GraphSummit Copenhagen 2024 - Neo4j Vision and Roadmap.pptx
 
Technical SEO for Improved Accessibility WTS FEST
Technical SEO for Improved Accessibility  WTS FESTTechnical SEO for Improved Accessibility  WTS FEST
Technical SEO for Improved Accessibility WTS FEST
 

extreme programming

  • 1. Submitted in fulfilment of the requirements for the award of the degree of Bachelor of Technology in COMPUTER ENGINEERING Submitted To: Submitted by: MS. Poonam Gera HIMANSHU MUNJAL HOD , C.S. VIII SEM , C.S.
  • 2. INTRODUCTION  AGILE METHODOLOGIES  EXTREME PROGRAMMING(XP)  XP WORKFLOW  XP VALUES  XP PRACTICES  ADVANTAGE & DISADVANTAGE  XP PROGRAMMING EXAMPLE
  • 3. An agile development methodology  Created by Kent Beck in the mid 1990’s  A set of 12 key practices taken to their ―extremes‖  A mindset for developers and customers
  • 4. A methodology is a formalized process or set of practices for creating software.  An early methodology was the waterfall model.  PROBLEMS: ◦ It assumes that there will be no unforeseen difficulties in the software development. ◦ It assumes that the customers know (and can specify) what they want, in extreme detail.
  • 5. Agile programming methodologies assume: ◦ Customers can best discover what software meets their needs via frequent iterations ◦ Requirements will need to be revised, probably multiple times, during software development.
  • 6. XP has nothing new, yet it has something new  XP is a specific instantiation of an agile process  XP combines best practices in a different way  XP is a different approach to development which provides- Incremental planning Flexible implementation Automatic tests
  • 8. Short description of what customer wants the software to do.  Written by the customer in the customer terminology without techno-syntax.  Used to create time estimates for the release planning meeting.  Used instead of a large requirements document.
  • 10. ◦ Pair Programming  Teams of two people ◦ Test Driven Development  Writing lots of tests, and writing them early ◦ Continuous Integration  Putting code together as you write it, not at the last minute ◦ Coding Standards  Learn and follow well-established conventions ◦ Collective Code Ownership  You are responsible for your partner’s code ◦ Simple Design
  • 11. Project Structure ◦ Project: Customized an existing Labor Collection System. ◦ Primary User: Human resource ◦ Project Team: Programer1, Programer2, Senior Programmer, DBA, Project Manager.
  • 12. User R P1, P2, P3 Program R and Data manager P2 Senior Pro. Pro 2 Prog1 P3 P1 DBA CONVENTIONAL APPROACH Data
  • 13. P1, P2, P3 R and Data User Pro 2 PROGRAMMING WITH XP Prog1 Pro Lead
  • 14. Built-In Quality  Overall Simplicity  Programmer Power  Customer Power
  • 15. Hard to do  constant involvement of the customer  Informal, little, or no documentation  Misconception on the cost of change
  • 16. Light-weight: discipline without bureaucracy  Under stress, people do what is easiest ◦ All XP practices have short-term benefits as well as long-term benefits  Development as a Conversation  The code is the documentation
  • 17. Not on very large projects  Not for embedded software if the hardware is frozen  Not with data-driven apps – RAD for these  Not with ―Old Economy‖ management
  • 18. Work as closely as you can with your partner  Don’t just ―contribute‖ your share of the code—also review your partner’s code, checking for problems.  You can use all the Java you know, if your partner also understands it  Don’t: ◦ Depend on your partner to do it all ◦ Take off and do it all yourself