SlideShare a Scribd company logo
Extreme Programming
Practices
About Me
• Kapil Raj Nakhwa Shrestha
• Co-founder of Jyaasa Technologies Pvt ltd.
• 9 years experience working with Ruby and Ruby and rails
• kapil@jyaasa.com
Origins
•March 6th, 1996,
Chrysler
Comprehensive
Compensation System
( C3) .
•Kent Beck
Kent Beck when he was young ( Not me )
• Instead of delivering everything you could possible want
on some date in future, Xp delivers the software as you
want it.
• Simple yet effective environment for enabling teams to
become highly productive.
• Improves the way we develop software in 5 key aspects.
Xp Project
Heartbeat
Type to enter a caption.
XP values
• Communication
• Simplicity
• Feedback
• Respect
• Courage
Xp Rules ( Practices)
• Planning
• Managing
• Designing
• Coding
• Testing
Planning
• User Stories
• Release Plan
• Iteration Plan
Planning
Managing
• Sustainable Pace
• Daily Stand up
• Measure Project Velocity
• Move people around
• Fix Xp when It breaks
Designing
• Simplicity ( TUBE )
• Choose a system metaphor
• CRC cards for system design
• Use Spike to reduce risk
• YAGNI
• Refactor Mercilessly
Coding
• Customer is always available
• Write code to agreed standard
• Write unit tests first
• Pair Program
• Sequential Integration
• Collective Ownership
Customer is always available
Testing
• All code must have unit tests
• All tests must pass before production
• When bug is found , Create a test
• Acceptance tests are run often and metrics provided to the
team.
XP FlowChart
Iteration FlowChart
FeedBack Loops in XP
The paradox of a process
If you do not use your process, It will not help
you. If your process does not help you, You
would not use it.
Want to discuss more on
XP?
• kapil@jyaasa.com
• twitter: xecutioner303

More Related Content

Similar to Extreme programming practices ( xp )

Agile and Scrum 101 –PMI Central Indiana Chapter - Michael Nir - Slide deck
Agile and Scrum 101 –PMI Central Indiana Chapter -  Michael Nir - Slide deckAgile and Scrum 101 –PMI Central Indiana Chapter -  Michael Nir - Slide deck
Agile and Scrum 101 –PMI Central Indiana Chapter - Michael Nir - Slide deck
Michael Nir Business Agility Speaker and Coach
 
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
Mike Harris
 
More XP-rience
More XP-rienceMore XP-rience
More XP-rience
ESUG
 
XP should be dead. Here is why!
XP should be dead. Here is why!XP should be dead. Here is why!
XP should be dead. Here is why!
why innovation!
 
22-AnOverviewOfScrum.pptx
22-AnOverviewOfScrum.pptx22-AnOverviewOfScrum.pptx
22-AnOverviewOfScrum.pptx
HelenCandy2
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4
Marvin Heery
 
What Is XP
What Is XPWhat Is XP
What Is XP
Chris Saylor
 
Kanban VS Scrum
Kanban VS ScrumKanban VS Scrum
Kanban VS Scrum
Mikalai Alimenkou
 
Extreme Programming (XP): Revisted
Extreme Programming (XP): RevistedExtreme Programming (XP): Revisted
Extreme Programming (XP): Revisted
Mike Harris
 
Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017
Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017
Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017
AgileNZ Conference
 
Executing for Every Screen: Build, launch and sustain products for your custo...
Executing for Every Screen: Build, launch and sustain products for your custo...Executing for Every Screen: Build, launch and sustain products for your custo...
Executing for Every Screen: Build, launch and sustain products for your custo...
Steven Hoober
 
Farhan's CV - Final
Farhan's CV - FinalFarhan's CV - Final
Farhan's CV - Final
Syed Farhan Shah
 
Software architecture : From project management to deployment
Software architecture : From project management to deploymentSoftware architecture : From project management to deployment
Software architecture : From project management to deployment
Foyzul Karim
 
Intro to Scrum - Balance Internet
Intro to Scrum - Balance InternetIntro to Scrum - Balance Internet
Intro to Scrum - Balance Internet
Hoang Nguyen
 
Crash Course Scrum - handout
Crash Course Scrum - handoutCrash Course Scrum - handout
Crash Course Scrum - handout
Arjan Franzen
 
Machine Learning in SurveyMonkey
Machine Learning in SurveyMonkeyMachine Learning in SurveyMonkey
Machine Learning in SurveyMonkey
Da Kuang
 
Going extreme-with-extreme-programming
Going extreme-with-extreme-programmingGoing extreme-with-extreme-programming
Going extreme-with-extreme-programming
Michael Green
 
A Brief Introduction to Kanban
A Brief Introduction to KanbanA Brief Introduction to Kanban
A Brief Introduction to Kanban
Mike Harris
 
"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011
"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011
"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011
Playniac
 
Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009
Marc Bless
 

Similar to Extreme programming practices ( xp ) (20)

Agile and Scrum 101 –PMI Central Indiana Chapter - Michael Nir - Slide deck
Agile and Scrum 101 –PMI Central Indiana Chapter -  Michael Nir - Slide deckAgile and Scrum 101 –PMI Central Indiana Chapter -  Michael Nir - Slide deck
Agile and Scrum 101 –PMI Central Indiana Chapter - Michael Nir - Slide deck
 
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
 
More XP-rience
More XP-rienceMore XP-rience
More XP-rience
 
XP should be dead. Here is why!
XP should be dead. Here is why!XP should be dead. Here is why!
XP should be dead. Here is why!
 
22-AnOverviewOfScrum.pptx
22-AnOverviewOfScrum.pptx22-AnOverviewOfScrum.pptx
22-AnOverviewOfScrum.pptx
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4
 
What Is XP
What Is XPWhat Is XP
What Is XP
 
Kanban VS Scrum
Kanban VS ScrumKanban VS Scrum
Kanban VS Scrum
 
Extreme Programming (XP): Revisted
Extreme Programming (XP): RevistedExtreme Programming (XP): Revisted
Extreme Programming (XP): Revisted
 
Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017
Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017
Scaling Scrum Without Crushing Its Soul - Patricia Kong - Agile NZ 2017
 
Executing for Every Screen: Build, launch and sustain products for your custo...
Executing for Every Screen: Build, launch and sustain products for your custo...Executing for Every Screen: Build, launch and sustain products for your custo...
Executing for Every Screen: Build, launch and sustain products for your custo...
 
Farhan's CV - Final
Farhan's CV - FinalFarhan's CV - Final
Farhan's CV - Final
 
Software architecture : From project management to deployment
Software architecture : From project management to deploymentSoftware architecture : From project management to deployment
Software architecture : From project management to deployment
 
Intro to Scrum - Balance Internet
Intro to Scrum - Balance InternetIntro to Scrum - Balance Internet
Intro to Scrum - Balance Internet
 
Crash Course Scrum - handout
Crash Course Scrum - handoutCrash Course Scrum - handout
Crash Course Scrum - handout
 
Machine Learning in SurveyMonkey
Machine Learning in SurveyMonkeyMachine Learning in SurveyMonkey
Machine Learning in SurveyMonkey
 
Going extreme-with-extreme-programming
Going extreme-with-extreme-programmingGoing extreme-with-extreme-programming
Going extreme-with-extreme-programming
 
A Brief Introduction to Kanban
A Brief Introduction to KanbanA Brief Introduction to Kanban
A Brief Introduction to Kanban
 
"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011
"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011
"How To Race Squirrels" at Develop Conference in Brighton, 21st July 2011
 
Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009Agile Methods - An Overview - Marc Bless - 2009
Agile Methods - An Overview - Marc Bless - 2009
 

More from Jyaasa Technologies

Incident management with jira
Incident management with jiraIncident management with jira
Incident management with jira
Jyaasa Technologies
 
The myth of 'real javascript developer'
The myth of 'real javascript developer'The myth of 'real javascript developer'
The myth of 'real javascript developer'
Jyaasa Technologies
 
Microservices
MicroservicesMicroservices
Microservices
Jyaasa Technologies
 
Facade pattern in rails
Facade pattern in railsFacade pattern in rails
Facade pattern in rails
Jyaasa Technologies
 
Scrum ceromonies
Scrum ceromoniesScrum ceromonies
Scrum ceromonies
Jyaasa Technologies
 
An introduction to bitcoin
An introduction to bitcoinAn introduction to bitcoin
An introduction to bitcoin
Jyaasa Technologies
 
Tor network
Tor networkTor network
Tor network
Jyaasa Technologies
 
Collective ownership in agile teams
Collective ownership in agile teamsCollective ownership in agile teams
Collective ownership in agile teams
Jyaasa Technologies
 
Push notification
Push notificationPush notification
Push notification
Jyaasa Technologies
 
The Design Thinking Process
The Design Thinking ProcessThe Design Thinking Process
The Design Thinking Process
Jyaasa Technologies
 
User story
User storyUser story
Design sprint
Design sprintDesign sprint
Design sprint
Jyaasa Technologies
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
Jyaasa Technologies
 
OKRs and Actions Overview
OKRs and Actions OverviewOKRs and Actions Overview
OKRs and Actions Overview
Jyaasa Technologies
 
Vue.js
Vue.jsVue.js
Active record in rails 5
Active record in rails 5Active record in rails 5
Active record in rails 5
Jyaasa Technologies
 
Design Patern::Adaptor pattern
Design Patern::Adaptor patternDesign Patern::Adaptor pattern
Design Patern::Adaptor pattern
Jyaasa Technologies
 
Association in rails
Association in railsAssociation in rails
Association in rails
Jyaasa Technologies
 
Web design layout pattern
Web design layout patternWeb design layout pattern
Web design layout pattern
Jyaasa Technologies
 
Command Pattern in Ruby
Command Pattern in RubyCommand Pattern in Ruby
Command Pattern in Ruby
Jyaasa Technologies
 

More from Jyaasa Technologies (20)

Incident management with jira
Incident management with jiraIncident management with jira
Incident management with jira
 
The myth of 'real javascript developer'
The myth of 'real javascript developer'The myth of 'real javascript developer'
The myth of 'real javascript developer'
 
Microservices
MicroservicesMicroservices
Microservices
 
Facade pattern in rails
Facade pattern in railsFacade pattern in rails
Facade pattern in rails
 
Scrum ceromonies
Scrum ceromoniesScrum ceromonies
Scrum ceromonies
 
An introduction to bitcoin
An introduction to bitcoinAn introduction to bitcoin
An introduction to bitcoin
 
Tor network
Tor networkTor network
Tor network
 
Collective ownership in agile teams
Collective ownership in agile teamsCollective ownership in agile teams
Collective ownership in agile teams
 
Push notification
Push notificationPush notification
Push notification
 
The Design Thinking Process
The Design Thinking ProcessThe Design Thinking Process
The Design Thinking Process
 
User story
User storyUser story
User story
 
Design sprint
Design sprintDesign sprint
Design sprint
 
Data Flow Diagram
Data Flow DiagramData Flow Diagram
Data Flow Diagram
 
OKRs and Actions Overview
OKRs and Actions OverviewOKRs and Actions Overview
OKRs and Actions Overview
 
Vue.js
Vue.jsVue.js
Vue.js
 
Active record in rails 5
Active record in rails 5Active record in rails 5
Active record in rails 5
 
Design Patern::Adaptor pattern
Design Patern::Adaptor patternDesign Patern::Adaptor pattern
Design Patern::Adaptor pattern
 
Association in rails
Association in railsAssociation in rails
Association in rails
 
Web design layout pattern
Web design layout patternWeb design layout pattern
Web design layout pattern
 
Command Pattern in Ruby
Command Pattern in RubyCommand Pattern in Ruby
Command Pattern in Ruby
 

Recently uploaded

Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
Sven Peters
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Julian Hyde
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
Quickdice ERP
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
lorraineandreiamcidl
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
Yara Milbes
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
aymanquadri279
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
Grant Fritchey
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 

Recently uploaded (20)

Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
Microservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we workMicroservice Teams - How the cloud changes the way we work
Microservice Teams - How the cloud changes the way we work
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)Measures in SQL (SIGMOD 2024, Santiago, Chile)
Measures in SQL (SIGMOD 2024, Santiago, Chile)
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesE-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian Companies
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
SMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API ServiceSMS API Integration in Saudi Arabia| Best SMS API Service
SMS API Integration in Saudi Arabia| Best SMS API Service
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
 
Using Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query PerformanceUsing Query Store in Azure PostgreSQL to Understand Query Performance
Using Query Store in Azure PostgreSQL to Understand Query Performance
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 

Extreme programming practices ( xp )