KEMBAR78
Skills Week / Mark Stringer / Introduction to Agile Methods | PPT
Introduction to Agile Methods Mark Stringer: mark@agilelab.co.uk
Have you ever?
Agile is dealing with change Software Changes Requirements Change Technology Changes Staff Changes Changes in the Weather
Agile Manifesto “ The problem isn’t change because change will happen, the problem is our inability to cope with change.” - Kent Beck, Extreme Programming
Industrial Making “ The stated, accepted philosophy for systems development is that the development process is a well understood approach that can be planned, estimated, and successfully completed. This has proven incorrect in practice.” - Ken Schwaber Big Design Up-Front
“ Writing software is a creative process, like painting or writing or architecture”  “ Categorizing the systems development methods as empirical is critical to the effective management of the systems development process.” - Ken Schwaber Empirical and Artistic Making
Agile Manifesto Individuals and interactions  over processes and tools Working software  over comprehensive documentation Customer collaboration  over contract negotiation Responding to change  over following a plan
Agile  Development Process   Plan in terms of Stories Work in Short Iterations Prioritise your stories Calculate your capacity Negotiate in Terms of Scope Get customer feedback
Plan in Terms of Stories Stories are short descriptions of customer-visible functionality
Generate Stories Book a hotel Purchase ticket Review itineraries Show hotel availability Find lowest fare Cancel itinerary Show hotels Offer sophisticated hotel search Do simple customer profile Show available flights Sort available flights by convenience Stories for a travel website
Estimate Effort for Stories Show available flights - 2 Show hotels - 3 Show hotel availability - 2 Book a hotel - 1 Purchase ticket - 2 Review itineraries - 2 Find lowest fare - 3 Cancel itinerary - 2 Offer sophisticated hotel search - 3 Do simple customer profile - 2 Sort available flights by convenience - 3
Prioritise Stories Show available flights - 2 -*** Show hotels - 3 -*** Show hotel availability - 2-*** Book a hotel - 1-** Purchase ticket - 2-** Review itineraries - 2-** Find lowest fare - 3-** Cancel itinerary - 2 -** Offer sophisticated hotel search - 3 - * Do simple customer profile - 2 - * Sort available flights by convenience - 3 -*
Work in Short Iterations
Identify an Iteration Show available flights - 2 -*** Show hotels - 3 -*** Show hotel availability - 2-*** Book a hotel - 1-** Purchase ticket - 2-** Review itineraries - 2-** Find lowest fare - 3-** Cancel itinerary - 2 -** Offer sophisticated hotel search - 3 - * Do simple customer profile - 2 - * Sort available flights by convenience - 3 - * Iteration 1
? ? Know your capacity
Calculate your capacity and velocity Show available flights:  estimated 2  -  actual 3 Show hotels:  estimated 3  -  actual 5 Show hotel availability:  estimated 2 -  actual 3 Book a hotel:  estimated 1 Purchase ticket:  estimated 2 Team Capacity is: 2+3+2 = 7 points per week Team Velocity is:  7  = 0.64 11
Plan your next iteration
Get Feedback - Demo the iteration Show available flights Show hotels Show hotel availability
Get Feedback - Prioritise Stories Book a hotel - 1-** Purchase ticket - 2-** Review itineraries - 2-** Find lowest fare - 3-** Cancel itinerary - 2 -** Offer sophisticated hotel search - 3 - * Do simple customer profile - 2 - * Sort available flights by convenience - 3 -* Deal with change Show images of hotel rooms - 2 - *** Iteration 2
What happens when the time/money runs out?
Negotiate in terms of scope “ Write contracts for software development that fix time costs and quality but call for an ongoing negotiation of the precise scope” Kent Beck, Extreme Programming Not Quality
 
 
Test First
Pair Programming
Refactoring
What can Agile methods do for you? A project management method designed to deal with change Delivery on time and to budget Create a humane work environment Develop a relationship of trust with your clients (internal or external) Specific Practices that will improve the quality of your software
Agile Lab Training Nuts and Bolts Crawl Before you Leap
Agile Lab Training Crawl before you Leap (1 Day) Introduction to essential Agile Concepts Extended Exercise/Case Study Guide to the different flavours of Agile - XP, Scrum, Lean and DSDM First steps to introducing Agile into your organisation Course running November 27th and Jan 2008
Agile Lab Training Agile Nuts and Bolts (1 Day) Introduction to Pair Programming  Introduction to Refactoring Introduction to Test-First Development Course delegates work through integrated examples demonstrating all three concepts Courses running in January 2008
Mark Stringer [email_address] 07736 807 604 Or see me after the show... ???

Skills Week / Mark Stringer / Introduction to Agile Methods

  • 1.
    Introduction to AgileMethods Mark Stringer: mark@agilelab.co.uk
  • 2.
  • 3.
    Agile is dealingwith change Software Changes Requirements Change Technology Changes Staff Changes Changes in the Weather
  • 4.
    Agile Manifesto “The problem isn’t change because change will happen, the problem is our inability to cope with change.” - Kent Beck, Extreme Programming
  • 5.
    Industrial Making “The stated, accepted philosophy for systems development is that the development process is a well understood approach that can be planned, estimated, and successfully completed. This has proven incorrect in practice.” - Ken Schwaber Big Design Up-Front
  • 6.
    “ Writing softwareis a creative process, like painting or writing or architecture” “ Categorizing the systems development methods as empirical is critical to the effective management of the systems development process.” - Ken Schwaber Empirical and Artistic Making
  • 7.
    Agile Manifesto Individualsand interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
  • 8.
    Agile DevelopmentProcess Plan in terms of Stories Work in Short Iterations Prioritise your stories Calculate your capacity Negotiate in Terms of Scope Get customer feedback
  • 9.
    Plan in Termsof Stories Stories are short descriptions of customer-visible functionality
  • 10.
    Generate Stories Booka hotel Purchase ticket Review itineraries Show hotel availability Find lowest fare Cancel itinerary Show hotels Offer sophisticated hotel search Do simple customer profile Show available flights Sort available flights by convenience Stories for a travel website
  • 11.
    Estimate Effort forStories Show available flights - 2 Show hotels - 3 Show hotel availability - 2 Book a hotel - 1 Purchase ticket - 2 Review itineraries - 2 Find lowest fare - 3 Cancel itinerary - 2 Offer sophisticated hotel search - 3 Do simple customer profile - 2 Sort available flights by convenience - 3
  • 12.
    Prioritise Stories Showavailable flights - 2 -*** Show hotels - 3 -*** Show hotel availability - 2-*** Book a hotel - 1-** Purchase ticket - 2-** Review itineraries - 2-** Find lowest fare - 3-** Cancel itinerary - 2 -** Offer sophisticated hotel search - 3 - * Do simple customer profile - 2 - * Sort available flights by convenience - 3 -*
  • 13.
    Work in ShortIterations
  • 14.
    Identify an IterationShow available flights - 2 -*** Show hotels - 3 -*** Show hotel availability - 2-*** Book a hotel - 1-** Purchase ticket - 2-** Review itineraries - 2-** Find lowest fare - 3-** Cancel itinerary - 2 -** Offer sophisticated hotel search - 3 - * Do simple customer profile - 2 - * Sort available flights by convenience - 3 - * Iteration 1
  • 15.
    ? ? Knowyour capacity
  • 16.
    Calculate your capacityand velocity Show available flights: estimated 2 - actual 3 Show hotels: estimated 3 - actual 5 Show hotel availability: estimated 2 - actual 3 Book a hotel: estimated 1 Purchase ticket: estimated 2 Team Capacity is: 2+3+2 = 7 points per week Team Velocity is: 7 = 0.64 11
  • 17.
    Plan your nextiteration
  • 18.
    Get Feedback -Demo the iteration Show available flights Show hotels Show hotel availability
  • 19.
    Get Feedback -Prioritise Stories Book a hotel - 1-** Purchase ticket - 2-** Review itineraries - 2-** Find lowest fare - 3-** Cancel itinerary - 2 -** Offer sophisticated hotel search - 3 - * Do simple customer profile - 2 - * Sort available flights by convenience - 3 -* Deal with change Show images of hotel rooms - 2 - *** Iteration 2
  • 20.
    What happens whenthe time/money runs out?
  • 21.
    Negotiate in termsof scope “ Write contracts for software development that fix time costs and quality but call for an ongoing negotiation of the precise scope” Kent Beck, Extreme Programming Not Quality
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
    What can Agilemethods do for you? A project management method designed to deal with change Delivery on time and to budget Create a humane work environment Develop a relationship of trust with your clients (internal or external) Specific Practices that will improve the quality of your software
  • 28.
    Agile Lab TrainingNuts and Bolts Crawl Before you Leap
  • 29.
    Agile Lab TrainingCrawl before you Leap (1 Day) Introduction to essential Agile Concepts Extended Exercise/Case Study Guide to the different flavours of Agile - XP, Scrum, Lean and DSDM First steps to introducing Agile into your organisation Course running November 27th and Jan 2008
  • 30.
    Agile Lab TrainingAgile Nuts and Bolts (1 Day) Introduction to Pair Programming Introduction to Refactoring Introduction to Test-First Development Course delegates work through integrated examples demonstrating all three concepts Courses running in January 2008
  • 31.
    Mark Stringer [email_address]07736 807 604 Or see me after the show... ???