Managers,
developers, customers are all part of a single team. You will need to
assign a customer or product manager to work with your team full time.
You need that close daily connection to the business to produce the
best
product you can.
User
stories are the heart of
planning in Extreme Programming (XP). User stories can be printed or
hand written on cards.
The project scope and plan is simply and quickly created by
manipulating the cards by hand. You will create three levels of plans.
One which looks a few months into the future and groups stories into
larger deployments. Another plan for stories in the next iteration. And
finally a break down of stories into tasks with developer sign up for
the current iteration.
Plans
are considered temporary artifacts in XP. You will be expected to
re-create your plans before they expire. Every time the customer gains
insight you will make a new plan. Every time you slip or get ahead of
your schedule you will make a new plan.
Architectural
spikes or prototypes are used to create a simple overall
design also known as the system metaphor. CRC Cards, a simple groupware
design technique, encourages all team members to understand and
contribute to the design. XP uses test driven development (TDD) and
refactoring to help uncover the most
effective design.
High
code
quality is essential on an XP project. Rules which enhance
quality include pair programming, refactoring, a sustainable pace, and
full test coverage at two different levels.
Good
unit test and acceptance test
coverage are the hallmarks of an XP project.
An
Extreme Programming has intense feedback loops.
XP
project
takes the
attitude that developers are responsible for proving to their customers
that the code works correctly, not customers proving the code is broken.
Throughout
the project you will be getting intense feedback in many ways, at many
levels. Getting working software into
the customer's hands will drive
the project's iterations with a steady heartbeat and release of
valuable
software for money spent so far. Changes in requirements will be part
of that feedback and gladly accepted.
Developers
receive feedback constantly by working in pairs and testing code as it
is written. Managers get feedback on progress and obstacles at the
daily stand up meeting. Customers get feedback on progress with
acceptance test scores and demonstrations every iteration.
Continue
to follow the little XP logos at the bottom of the pages to
finish your quick guided tour or take some time to explore the
individual
rules
next.
XP rules