Introduction to Xtreme Programming

Download Report

Transcript Introduction to Xtreme Programming

Extreme programming overview

Agenda





Extreme programming goals
Extreme programming values
Extreme programming practices
The Extreme programming team
The Extreme programmer
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming goals
Extreme programming Values

Values





Communication
Simplicity
Feedback
Courage
Respect
Planning approach of XP

Principles











Humanity
Economics
Mutual benefit
Continuous Improvement/Reflection
Diversity
Flow
Redundancy
Opportunity/Failure
Quality
Small steps
Accepted responsibility
XP Practices - Primary












Sit together
Whole team (cross functional team)
Informative workspace
Energized work
Pair programming
Stories
Weekly cycle
Quarterly cycle
Slack
quick build
Continuous integration
Test first programming, Incremental design
XP Practices - Secondary








Real customer involvement
Incremental deployment
Team continuity
Root Cause analysis
Shared code
Remove extra documentation – tests should
be the documentation
Single code base
Negotiated scope contract
The Extreme programming team

Testers


Architects


Instead of manual testing, they write automated
test programs
Apply design incrementally, look for design
refactoring opportunities; but also implement
stories just like other programmers
Project Manager

Handles the outside world; packages the team's
achievements for the world; keeps a view of the
big picture
The extreme programming team

Product Manager


Sometimes referred to as the customer. Chooses
features to implement.
Programmers

Estimate stories, break stories into tasks, write
tests, implement the code and continuously
improve it.
The extreme programmer



Very passionate about programming
Likes to communicate
Very good understanding of design, design
patterns