XP _ Final

Preview:

Citation preview

Extreme Programming

What is SDLC ? Splitting development into distinct phases

Development ProcessCore Models Methods Tools

Requirements

Design

Construction

Testing

Debugging

Deployment

Waterfall

Prototyping

V-Model

Agile

Spiral

Cleanroom

TSP

XP

Scrum

Compiler

Profiler

Release Automation

Why XP?

Frequent releases in short cycle.

Productivity improvement.

Checkpoints for Requirements of customer.

Kent BeckUniversity of OregonSoftware Engineer

Method goalsmultiple short development cycles, rather than a long one.

Any change is accepted, instead of defining a set of stable requirements.

Coding

Testing

ListeningDesigning

Without code, there is no working product.

if a little testing can eliminate a few flaws, a lot of testing can eliminate many more flaws.

Acceptance Test Unit Testwhether a given feature works as intended.Program satisfy the customer's actual requirements.

Programmers must listen to what the customers need the system to do.Communication between the customer and programmer is further addressed in the planning game.

DesigningGood design will avoid lots of dependencies within a system.

this means that changing one part of the system will not affect other parts of the system.

Pair Programming: two programmers work together at one workstation.

Planning Game

The main planning process within extreme programming.

The game is a meeting that occurs once per iteration, typically once a week.

Release Planning focused on determining what requirements are included in

which near-term releases, and when they should be

delivered. The customers and developers are both part of

this.

Iteration Planning This plans the activities and tasks of the developers. In

this process the customer is not involved.

Feedback

From System by writing unit tests, or running

periodic integration tests, the programmers have direct feedback from the state of the system after

implementing changes.

From Customer They will get

concrete feedback about the current

state of their system.

From Team When customers come up with

new requirements in the planning game the team

directly gives an estimation of the time that it will take to

implement.

Other Principles

Courage.

Respect.

Rules.

Stephen Hawking

Recommended