Up

XP Process

When I was reading the XP books I found it useful to summarise the process.  This table demonstrates how I think it works.  The people primarily responsible for a task have a tick (ü) next to them.  Some tasks are repeated (*).   Step 3   Coach staff and 4   Resource the project are in parallel with Step 2 Build a release.  

Activity within a release 

 

1.      Scope the project / Make the Big Plan 

Outcome: Answer the question “Should we invest more?” 

1-5d 

           

1.1.   Talk about the system 

   

ü

 

?

   

1.2.   Write big stories 

   

ü

 

?

   

1.3.   Write any necessary prototypes 

  ü    

?

   

1.4.   Estimate stories in months with plenty of padding 

  ü    

?

   

2.      Build a release *

 

           

2.1.   Explore possibilities 

Outcome: Customer is confident there is enough material on the story to make a good release. Programmers are confident that they can’t estimate any better without actually implementing the system.  

  ü          

2.1.1.      Write stories 

Outcome: Programmers can confidently estimate the effort required by the story 

   

ü

       

2.1.2.      Explore technology 

1-2w

           

2.1.2.1.Build 3-4 alternative architectures 

 

ü

         

2.1.2.2.Experiment with performance limits of technology

 

ü

         

2.1.2.3.Classify technological risks 

 

ü

         

2.1.2.4.Practice estimating your tasks 

 

ü

         

2.1.2.5.Record estimates 

       

ü

   

2.2.   Plan Release (also when replanning release) 

Outcome: Customers and programmers can confidently agree on a date by which the smallest, most valuable set of stories will be done. 

1-2d

ü

ü

       

2.2.1.      Identify business value of each story

   

ü

       

2.2.2.      Estimate each story in ideal weeks (up to the length of an iteration each) 

 

ü

         

2.2.3.      Record estimates 

       

ü

   

2.2.4.      Estimate the velocity of story implementation 

       

ü

   

2.2.5.      Choose stories to implement for current and next iterations 

   

ü

       

2.3.   If new to XP, then do a Zero-functionality iteration (run it the same as a normal iteration but with additional outcomes/activities) 

1-3w

           

2.3.1.      Rearrange the office to facilitate XP 

 

ü

         

2.3.2.      Get the testing framework working 

 

ü

         

2.3.3.      Get the automated build structure working 

 

ü

         

2.3.4.      Get the network up and running with all the appropriate permissions 

 

ü

         

2.3.5.      Get the basic install scripts set up 

 

ü

         

2.4.   Build an iteration * 

Outcome: Fully tested, production-ready system including a new set of stories.  

1-3w

           

2.4.1.      Prepare for iteration planning meeting 

             

2.4.1.1.Define each story by doing some or all of … 

   

ü

       

2.4.1.1.1.      Think up short talk 

   

ü

       

2.4.1.1.2.      Write description (up to 4 pages) 

   

ü

       

2.4.1.1.3.      Write full acceptance tests 

   

ü

       

2.4.1.2.Choose stories to implement for next iteration, unless already done so (always exactly 1 iteration ahead)  

   

ü

       

2.4.2.      Iteration Planning Meeting 

             

2.4.2.1.Brainstorm a list of tasks (general categories are: programming, user documentation, graphic design) 

 

ü

         

2.4.2.2.Sign up for stories 

 

ü

         

2.4.2.3.Sign up for tasks (preferably 

2.4.2.4.within the same story) 

 

ü

         

2.4.2.5.Advise on estimates (using history, velocity stats, etc) 

       

ü

   

2.4.2.6.Estimate your tasks in ideal days (aiming for 1-3 days each) 

 

ü

         

2.4.2.7.Rebalance task assignments 

 

ü

ü

       

2.4.2.8.Record estimates 

       

ü

   

2.4.3.      Implement each task 

             

2.4.3.1.Write unit tests for story 

 

ü

         

2.4.3.2.Write code 

 

ü

         

2.4.3.3.Integrate code 

 

ü

         

2.4.3.4.Run all unit tests 

 

ü

         

2.4.3.5.Record “Done” and “To Do” metrics on daily basis 

       

ü 

   

2.4.4.      Test each story (acceptance testing)

             

2.4.4.1.Write functional tests 

   

ü 

ü

     

2.4.4.2.Run all functional tests 

   

ü

ü

     

2.4.4.3.Log functional test scores

 

 

 

 

ü

 

 

2.4.4.4.Maintain defect log

 

 

 

 

ü

 

 

2.4.4.5.Sign off story as complete

 

 

ü

 

 

 

 

2.4.5.      Daily stand up meeting

 

ü

 

ü

ü

ü

 

2.4.6.      Track progress against iteration plan & organise corrections

 

 

 

 

 

 

 

2.4.6.1.Check Iteration progress (how many days done? how left to do?)

 

 

 

 

ü

 

 

2.4.6.2.Respond to progress problems

 

ü

ü

 

 

 

 

2.4.6.3.Report / Graph project progress and other metrics

 

 

 

 

ü

 

 

2.4.7.      Share the glory / Demo the work

 

 

ü

 

 

 

 

2.4.8.      Little party

 

ü

ü

ü

ü

ü

ü

2.5.   Track progress against release plan & organise corrections

 

 

 

 

ü

 

 

2.6.   Productionizing

 

 

 

 

 

 

 

2.6.1.      Performance tuning

 

ü

 

 

 

 

 

2.6.2.      Big party

 

ü

ü

ü

ü

ü

ü

3.      Coach staff

 

 

 

 

 

ü

 

4.      Resource the project

 

 

 

 

 

 

ü

 

Home ] Work ] War ] Food ] Balagan? ] Contact ] Search ]

Copyright © 2001 - 2008 Steven Thomas | Contact Me