XP Explained

Preview:

DESCRIPTION

Vikas's presentation on "XP" at the at the Intro to Agile workshop on 28th June 2008

Citation preview

Agile NCR Workshop

Method OvervieweXtreme Programming

V I K A S H A Z R A T I

June 28' 2008

June 28' 2008 Vikas Hazrati | Impetus Technologies 2

Know your presenter

Practising XP and Scrum for last 3 years

Board member of Agile Software Community of India

Agile Community editor on InfoQ

Published articles on The Server Side, Agile Journal

Personal blog site http://vikashazrati.wordpress.com

June 28' 2008 Vikas Hazrati | Impetus Technologies 3

What is XP?

XP is a mindset change!

XP is a philosophy of software development based on well laid out values, principles and practices.

Goal of XP is outstanding software development at lower cost, with fewer defects, high productivity and much higher return on investment.

June 28' 2008 Vikas Hazrati | Impetus Technologies 4

Why XP?

Another methodology but why?

Social Change- Giving up defences

Based on Excellent programming techniques, clear communication and teamwork

Lightweight – only do whatever adds value to the customer

Addresses constraints in software development

Can work with teams of any size

Adapts to rapidly changing requirements

June 28' 2008 Vikas Hazrati | Impetus Technologies 5

Core Components

ValuesPractices

Principles

June 28' 2008 Vikas Hazrati | Impetus Technologies 6

The Five Core Values of XP

CommunicationCommunication SimplicitySimplicity

FeedbackFeedback CourageCourage

RespectRespect

June 28' 2008 Vikas Hazrati | Impetus Technologies 7

XP Principles

HumanityHumanity

EconomicsEconomics

Mutual Benefit

Mutual Benefit

ImprovementImprovement

OpportunitiesOpportunities

ReflectionReflection

DiversityDiversity

FlowFlow

AcceptedResponsibility

AcceptedResponsibility

BabySteps

BabySteps

FailureFailure

QualityQuality

June 28' 2008 Vikas Hazrati | Impetus Technologies 8

Practices

Primary Corollary

June 28' 2008 Vikas Hazrati | Impetus Technologies 9

Primary Practices

Sit Together Whole Team Informative

workspace Energized work Pair Programming Stories

Weekly Cycle Quarterly Cycle Slack 10 minute build Continuous Integration Test First

Programming Incremental Design

June 28' 2008 Vikas Hazrati | Impetus Technologies 10

Sit Together / Whole Team

June 28' 2008 Vikas Hazrati | Impetus Technologies 11

Sit Together / Whole Team

June 28' 2008 Vikas Hazrati | Impetus Technologies 12

Informative Workspace

June 28' 2008 Vikas Hazrati | Impetus Technologies 13

Informative Workspace

June 28' 2008 Vikas Hazrati | Impetus Technologies 14

Energized work

Work only as many hours as productive Ideally 40 hours a week Programming productivity is seen to be 4-

5 hours a day

June 28' 2008 Vikas Hazrati | Impetus Technologies 15

Pair Programming

June 28' 2008 Vikas Hazrati | Impetus Technologies 16

Pair Programming

June 28' 2008 Vikas Hazrati | Impetus Technologies 17

Stories

Units of customer visible functionality.

Should be on the story wall for everyone to look at.

June 28' 2008 Vikas Hazrati | Impetus Technologies 18

A Story

June 28' 2008 Vikas Hazrati | Impetus Technologies 19

Story Life Cycle

June 28' 2008 Vikas Hazrati | Impetus Technologies 20

Weekly / Quarterly Cycles

June 28' 2008 Vikas Hazrati | Impetus Technologies 21

More...

Slack Ten Minute Build Continuous Integration Test First Programming Incremental Design

Do the simplest thing that can possibly workRefactor

June 28' 2008 Vikas Hazrati | Impetus Technologies 22

The Whole XP Team

Emphasis on the “Whole Team”

Collaboration and collocation

June 28' 2008 Vikas Hazrati | Impetus Technologies 23

The Whole XP Team

Testers

InteractionDesigners

Project Manager

Stakeholders

Users

ArchitectsProduct Manager

Programmers

June 28' 2008 Vikas Hazrati | Impetus Technologies 24

XP Project

June 28' 2008 Vikas Hazrati | Impetus Technologies 25

XP Project Iteration

June 28' 2008 Vikas Hazrati | Impetus Technologies 26

XP Project Development

June 28' 2008 Vikas Hazrati | Impetus Technologies 27

XP Project Coding

June 28' 2008 Vikas Hazrati | Impetus Technologies 28

Questions

June 28' 2008 Vikas Hazrati | Impetus Technologies 29

Contact Me ...

V i k a s H a z r a t i

vhazrati@gmail.com

Recommended