eXtreme Development - British Computer Society

Download Report

Transcript eXtreme Development - British Computer Society

eXtreme Programming Development
Adrian Williamson
People, Technology and People and
Technology Consultant
Real eXtreme Programming
• Why?
• What?
• Who?
• When?
• So what …
• Summary
Why? (1 of 2)
• GT-X7 started in 1999
• 500,000 lines of Java
by 2005
• Modular but not refactored
• Tested but not TDD
Why? (2 of 2)
Support 2004
Support 2005
Neil decided to do something about it …
What? (1 of 9)
Stop the world I want to get off!
Transformation required!
What? (2 of 9)
Read the books, browse the web
What? (3 of 9)
XP Practices
The Planning Process (Planning Game)
XP "customer” defines business value of features, cost estimates from programmers.
Metaphor
A common "system of names" and description that guides development.
Simple Design
The simplest program for current requirements. Little building "for the future”.
Testing
Constant Software Validation: Test Driven development; Customer acceptance tests.
Refactoring
Keep software clean: without duplication, high communication, simple, yet complete.
Pair Programming
Two programmers working together at one machine.
What? (4 of 9)
XP Practices
Collective Ownership
All the code belongs to all the programmers. Changes without delay.
Continuous Integration
XP teams integrate and build the software system multiple times per day.
40-hour Week
Tired programmers make more mistakes. Stay fresh, healthy, and effective.
On-site Customer
The dedicated individual empowered to set requirements, priorities, and answer
questions.
Coding Standard
All the programmers need to write the code in the same way.
What? (5 of 9)
XP Principles - Fundamental
•Rapid Feedback
•Assume Simplicity
•Incremental Change
•Embracing Change
•Quality Work
What? (6 of 9)
XP Principles - Further
•Teach Learning
•Small Initial Investment
•Play to Win
•Concrete Experiments
•Open, honest Communication
•Work with people's instincts
•Accepted Responsibility
•Local Adaptation
•Travel Light
•Honest Measurement
What? (7 of 9)
Phone the consultants
What? (8 of 9)
Build a business case
• Support costs
• Lost development opportunity
• Product Quality
• Company and Product image
• Staff
• Predictability
• Method
What? (9 of 9)
Implementation Plan
Pilot
.NET ciboodle Mobile Client
Prepare
Train team leads
Workshops for team leads
Choose a date
Train developers
Start!
When
Happenstance
• Business Quiet
• Projects Quiet and Within Envelope
• Team Building Complete
• Team Stable
• Test Team Established
• Support team LEAN Kaizen
September 2005!
So What? (1 of 5)
eXtreme Programming
So What? (2 of 5)
September 2005!
So What? (3 of 5)
Operation
Planning
6 week cycles
Teams
Support, Core, Point, New Features,
Strategic, Test, Docs
Reporting
Velocities, test coverage, defect rates
Balanced Scorecard
Waiting …
So What? (4 of 5)
Prizes !!
BCS Awards 2006
• Best young developer medal– Mobile team
• Project medal – BASCO mobile livestock
tracking
So What? (5 of 5)
eXtreme Ironing!
Thank You! - Any Questions?
Adrian Williamson