SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
Samra Siddiqui
 Extreme Programming Practices
 Adaptive Software Development
 Lean Development
•XP
•XP Corner Stones
•XP Practices
3
Principle or Practice Description
Incremental Planning Requirements are recorded on story cards and
stories to be included in a release are determined by
the time available and their relative priority.The
developers break these stories into ‘tasks’
Small Releases The minimal useful set of functionality that provides
business value is developed first. Releases of the
system are frequent and incrementally add
functionality to the first release.
Simple Design Enough design is carried out to meet the current
requirements.
Test-First Development An automated unit test framework is used to write
tests for a new piece of functionality before that
functionality is implemented.
Refactoring All developers are expected to refactor the code as
soon as possible code improvements are found.This
keeps the code simple and maintainable.
Pair Programming Developers work in pairs, checking each other’s
work and providing support for a good job 4
Principle Description
Collective Ownership The pairs of developers work on all areas
of system so that no island of expertise
develop and all the developers own all
the code.
Continuous Integration As soon as work on a task is complete, it
is integrated to make whole system
complete.
Sustainable pace Large amount of overtime is not
considered acceptable as total effect is to
reduce code quality.
On-siteCustomer A representation of end user of the
system should be available full time for
XP team. In XP, customer is a member of
development team.
5
 Adaptive Software Development has evolved from
RAD practices.
 Adaptive Software Development is cyclical like the
Evolutionary model, with the phase names reflecting
the unpredictability in the complex systems.
 The phases in theAdaptive
development life cycle are
 Speculate
 Collaborate
 Learn
 During speculation, the project is initiated and
adaptive cycle planning is conducted.
 Uses project initiation information—the customer’s
mission statement, project constraints (e.g., delivery
dates or user descriptions), and basic requirements to
define the set of release cycles (software increments)
that will be required for the project.
 Speculate encourages exploration and
experimentation.
 Iterations with short cycles are encouraged.
 Complex applications are not built, they evolve.
 Requirement of a large volume of information to be collected,
analyzed, and applied to the problem
 Require the ability to work jointly to produce results, share
knowledge or make decisions.
 Portrays a balance between managing with traditional
management techniques and creating and maintaining the
collaborative environment needed for emergence
8
 Vital for the success of the project. Team has to enhance their knowledge
constantly, using practices such as −
 Technical Reviews (After each iteration)
 People and Process Review (Retrospectives)
 Customer Focus Group
 Learn Cycles are based on the short iterations with design, build and
testing.
 During these iterations the knowledge is gathered by making small
mistakes based on false assumptions and correcting those mistakes, thus
leading to greater experience and eventually mastery in the problem
domain.
9
• Introduction
• Lean Principles
10
 Lean is an Agile methodology which can also be seen as a philosophy
 The core idea is to maximize customer value while minimizing waste. Simply,
lean means creating more value for customers with fewer resources.
 Eliminating waste along entire value streams, instead of at isolated points,
creates processes that need less human effort, less space, less capital, and less
time to make products and services at far less costs and with much fewer
defects, compared with traditional business systems.
11
 EliminatingWaste
 Everything not adding value to the customer is considered to be waste.This includes:
▪ unnecessary code and functionality
▪ delay in the software development process
▪ unclear requirements
▪ insufficient testing, leading to avoidable process repetition
▪ slow internal communication
▪ Defects and lower quality are waste
▪ Partially done coding eventually abandoned during the development process is waste
▪ Extra processes and features not often used by customers are waste.
 So one should point out sources of waste and eliminate them.
12
 Amplify Learning
 Software development is a continuous learning process. The best approach
for improving a software development environment is to amplify learning.
 The accumulation of defects should be prevented by running tests as soon as
the code is written.
 The process of user requirements gathering could be simplified by presenting
screens to the end-users and getting their input.
 Increasing feedback via short feedback sessions with customers helps when
determining the current phase of development and adjusting efforts for future
improvements.
13

Contenu connexe

Tendances

Agile software development
Agile software developmentAgile software development
Agile software developmentRajesh Piryani
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme ProgrammingNaresh Jain
 
Agile software development methodology
Agile software development methodologyAgile software development methodology
Agile software development methodologyjustinleague0819
 
Agile Software Development Introduction
Agile Software Development IntroductionAgile Software Development Introduction
Agile Software Development IntroductionTu BUI
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingMr SMAK
 
Xp exterme-programming-model
Xp exterme-programming-modelXp exterme-programming-model
Xp exterme-programming-modelAli MasudianPour
 
Agile development introduction
Agile development introductionAgile development introduction
Agile development introductionbeforeach
 
Agile successful practices
Agile successful practicesAgile successful practices
Agile successful practicesixor
 

Tendances (19)

Agile method
Agile methodAgile method
Agile method
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 
Agile versus waterfall
Agile versus waterfallAgile versus waterfall
Agile versus waterfall
 
Agile method
Agile methodAgile method
Agile method
 
Agile
Agile Agile
Agile
 
Dev ops
Dev opsDev ops
Dev ops
 
Agile software development methodology
Agile software development methodologyAgile software development methodology
Agile software development methodology
 
Agile Software Development Introduction
Agile Software Development IntroductionAgile Software Development Introduction
Agile Software Development Introduction
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Xp exterme-programming-model
Xp exterme-programming-modelXp exterme-programming-model
Xp exterme-programming-model
 
Sdlc plan
Sdlc planSdlc plan
Sdlc plan
 
Agile Model for Beginner’s
Agile Model for Beginner’sAgile Model for Beginner’s
Agile Model for Beginner’s
 
Agile development introduction
Agile development introductionAgile development introduction
Agile development introduction
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Agile successful practices
Agile successful practicesAgile successful practices
Agile successful practices
 

Similaire à XP, ASD and Lean Development Practices

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
Project Requriement Management Vs Agile software development
Project Requriement Management Vs  Agile software developmentProject Requriement Management Vs  Agile software development
Project Requriement Management Vs Agile software developmentbizpresenter
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashedlivgeni
 
XP vs Lean vs FDD
XP vs Lean vs FDDXP vs Lean vs FDD
XP vs Lean vs FDDSuman Guha
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development ProcessSoftware Park Thailand
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSibel Kuzgun AKIN
 
Agile software development
Agile software developmentAgile software development
Agile software developmentpradeeppatelpmp
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.pptMohan Late
 
Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsNicole Gomez
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resourcesAnwar Sadat
 

Similaire à XP, ASD and Lean Development Practices (20)

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Project Requriement Management Vs Agile software development
Project Requriement Management Vs  Agile software developmentProject Requriement Management Vs  Agile software development
Project Requriement Management Vs Agile software development
 
4. ch 3-agile process
4. ch 3-agile process4. ch 3-agile process
4. ch 3-agile process
 
Agile Methodologies & Key Principles
Agile Methodologies & Key Principles Agile Methodologies & Key Principles
Agile Methodologies & Key Principles
 
Agiel sw development
Agiel sw developmentAgiel sw development
Agiel sw development
 
Agile Development unleashed
Agile Development unleashedAgile Development unleashed
Agile Development unleashed
 
Ch17
Ch17Ch17
Ch17
 
XP vs Lean vs FDD
XP vs Lean vs FDDXP vs Lean vs FDD
XP vs Lean vs FDD
 
Dev ops lpi-701
Dev ops lpi-701Dev ops lpi-701
Dev ops lpi-701
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Agile software process
Agile software processAgile software process
Agile software process
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
module I.pptx
module I.pptxmodule I.pptx
module I.pptx
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming Teams
 
Agile intro resources
Agile intro resourcesAgile intro resources
Agile intro resources
 

Plus de Sulman Ahmed

Entrepreneurial Strategy Generating and Exploiting new entries
Entrepreneurial Strategy Generating and Exploiting new entriesEntrepreneurial Strategy Generating and Exploiting new entries
Entrepreneurial Strategy Generating and Exploiting new entriesSulman Ahmed
 
Entrepreneurial Intentions and corporate entrepreneurship
Entrepreneurial Intentions and corporate entrepreneurshipEntrepreneurial Intentions and corporate entrepreneurship
Entrepreneurial Intentions and corporate entrepreneurshipSulman Ahmed
 
Entrepreneurship main concepts and description
Entrepreneurship main concepts and descriptionEntrepreneurship main concepts and description
Entrepreneurship main concepts and descriptionSulman Ahmed
 
Run time Verification using formal methods
Run time Verification using formal methodsRun time Verification using formal methods
Run time Verification using formal methodsSulman Ahmed
 
Use of Formal Methods at Amazon Web Services
Use of Formal Methods at Amazon Web ServicesUse of Formal Methods at Amazon Web Services
Use of Formal Methods at Amazon Web ServicesSulman Ahmed
 
student learning App
student learning Appstudent learning App
student learning AppSulman Ahmed
 
Software Engineering Economics Life Cycle.
Software Engineering Economics  Life Cycle.Software Engineering Economics  Life Cycle.
Software Engineering Economics Life Cycle.Sulman Ahmed
 
Data mining Techniques
Data mining TechniquesData mining Techniques
Data mining TechniquesSulman Ahmed
 
Rules of data mining
Rules of data miningRules of data mining
Rules of data miningSulman Ahmed
 
Rules of data mining
Rules of data miningRules of data mining
Rules of data miningSulman Ahmed
 
Classification in data mining
Classification in data mining Classification in data mining
Classification in data mining Sulman Ahmed
 
Data mining Basics and complete description
Data mining Basics and complete description Data mining Basics and complete description
Data mining Basics and complete description Sulman Ahmed
 
Data mining Basics and complete description onword
Data mining Basics and complete description onwordData mining Basics and complete description onword
Data mining Basics and complete description onwordSulman Ahmed
 
Dwh lecture-07-denormalization
Dwh lecture-07-denormalizationDwh lecture-07-denormalization
Dwh lecture-07-denormalizationSulman Ahmed
 
Dwh lecture-06-normalization
Dwh lecture-06-normalizationDwh lecture-06-normalization
Dwh lecture-06-normalizationSulman Ahmed
 
Dwh lecture 13-process dm
Dwh  lecture 13-process dmDwh  lecture 13-process dm
Dwh lecture 13-process dmSulman Ahmed
 
Dwh lecture 11-molap
Dwh  lecture 11-molapDwh  lecture 11-molap
Dwh lecture 11-molapSulman Ahmed
 
Dwh lecture 10-olap
Dwh   lecture 10-olapDwh   lecture 10-olap
Dwh lecture 10-olapSulman Ahmed
 
Dwh lecture 08-denormalization tech
Dwh   lecture 08-denormalization techDwh   lecture 08-denormalization tech
Dwh lecture 08-denormalization techSulman Ahmed
 

Plus de Sulman Ahmed (20)

Entrepreneurial Strategy Generating and Exploiting new entries
Entrepreneurial Strategy Generating and Exploiting new entriesEntrepreneurial Strategy Generating and Exploiting new entries
Entrepreneurial Strategy Generating and Exploiting new entries
 
Entrepreneurial Intentions and corporate entrepreneurship
Entrepreneurial Intentions and corporate entrepreneurshipEntrepreneurial Intentions and corporate entrepreneurship
Entrepreneurial Intentions and corporate entrepreneurship
 
Entrepreneurship main concepts and description
Entrepreneurship main concepts and descriptionEntrepreneurship main concepts and description
Entrepreneurship main concepts and description
 
Run time Verification using formal methods
Run time Verification using formal methodsRun time Verification using formal methods
Run time Verification using formal methods
 
Use of Formal Methods at Amazon Web Services
Use of Formal Methods at Amazon Web ServicesUse of Formal Methods at Amazon Web Services
Use of Formal Methods at Amazon Web Services
 
student learning App
student learning Appstudent learning App
student learning App
 
Software Engineering Economics Life Cycle.
Software Engineering Economics  Life Cycle.Software Engineering Economics  Life Cycle.
Software Engineering Economics Life Cycle.
 
Data mining Techniques
Data mining TechniquesData mining Techniques
Data mining Techniques
 
Rules of data mining
Rules of data miningRules of data mining
Rules of data mining
 
Rules of data mining
Rules of data miningRules of data mining
Rules of data mining
 
Classification in data mining
Classification in data mining Classification in data mining
Classification in data mining
 
Data mining Basics and complete description
Data mining Basics and complete description Data mining Basics and complete description
Data mining Basics and complete description
 
Data mining Basics and complete description onword
Data mining Basics and complete description onwordData mining Basics and complete description onword
Data mining Basics and complete description onword
 
Dwh lecture-07-denormalization
Dwh lecture-07-denormalizationDwh lecture-07-denormalization
Dwh lecture-07-denormalization
 
Dwh lecture-06-normalization
Dwh lecture-06-normalizationDwh lecture-06-normalization
Dwh lecture-06-normalization
 
Dwh lecture 12-dm
Dwh lecture 12-dmDwh lecture 12-dm
Dwh lecture 12-dm
 
Dwh lecture 13-process dm
Dwh  lecture 13-process dmDwh  lecture 13-process dm
Dwh lecture 13-process dm
 
Dwh lecture 11-molap
Dwh  lecture 11-molapDwh  lecture 11-molap
Dwh lecture 11-molap
 
Dwh lecture 10-olap
Dwh   lecture 10-olapDwh   lecture 10-olap
Dwh lecture 10-olap
 
Dwh lecture 08-denormalization tech
Dwh   lecture 08-denormalization techDwh   lecture 08-denormalization tech
Dwh lecture 08-denormalization tech
 

Dernier

Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxDr.Ibrahim Hassaan
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 

Dernier (20)

OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 

XP, ASD and Lean Development Practices

  • 2.  Extreme Programming Practices  Adaptive Software Development  Lean Development
  • 4. Principle or Practice Description Incremental Planning Requirements are recorded on story cards and stories to be included in a release are determined by the time available and their relative priority.The developers break these stories into ‘tasks’ Small Releases The minimal useful set of functionality that provides business value is developed first. Releases of the system are frequent and incrementally add functionality to the first release. Simple Design Enough design is carried out to meet the current requirements. Test-First Development An automated unit test framework is used to write tests for a new piece of functionality before that functionality is implemented. Refactoring All developers are expected to refactor the code as soon as possible code improvements are found.This keeps the code simple and maintainable. Pair Programming Developers work in pairs, checking each other’s work and providing support for a good job 4
  • 5. Principle Description Collective Ownership The pairs of developers work on all areas of system so that no island of expertise develop and all the developers own all the code. Continuous Integration As soon as work on a task is complete, it is integrated to make whole system complete. Sustainable pace Large amount of overtime is not considered acceptable as total effect is to reduce code quality. On-siteCustomer A representation of end user of the system should be available full time for XP team. In XP, customer is a member of development team. 5
  • 6.  Adaptive Software Development has evolved from RAD practices.  Adaptive Software Development is cyclical like the Evolutionary model, with the phase names reflecting the unpredictability in the complex systems.  The phases in theAdaptive development life cycle are  Speculate  Collaborate  Learn
  • 7.  During speculation, the project is initiated and adaptive cycle planning is conducted.  Uses project initiation information—the customer’s mission statement, project constraints (e.g., delivery dates or user descriptions), and basic requirements to define the set of release cycles (software increments) that will be required for the project.  Speculate encourages exploration and experimentation.  Iterations with short cycles are encouraged.
  • 8.  Complex applications are not built, they evolve.  Requirement of a large volume of information to be collected, analyzed, and applied to the problem  Require the ability to work jointly to produce results, share knowledge or make decisions.  Portrays a balance between managing with traditional management techniques and creating and maintaining the collaborative environment needed for emergence 8
  • 9.  Vital for the success of the project. Team has to enhance their knowledge constantly, using practices such as −  Technical Reviews (After each iteration)  People and Process Review (Retrospectives)  Customer Focus Group  Learn Cycles are based on the short iterations with design, build and testing.  During these iterations the knowledge is gathered by making small mistakes based on false assumptions and correcting those mistakes, thus leading to greater experience and eventually mastery in the problem domain. 9
  • 10. • Introduction • Lean Principles 10
  • 11.  Lean is an Agile methodology which can also be seen as a philosophy  The core idea is to maximize customer value while minimizing waste. Simply, lean means creating more value for customers with fewer resources.  Eliminating waste along entire value streams, instead of at isolated points, creates processes that need less human effort, less space, less capital, and less time to make products and services at far less costs and with much fewer defects, compared with traditional business systems. 11
  • 12.  EliminatingWaste  Everything not adding value to the customer is considered to be waste.This includes: ▪ unnecessary code and functionality ▪ delay in the software development process ▪ unclear requirements ▪ insufficient testing, leading to avoidable process repetition ▪ slow internal communication ▪ Defects and lower quality are waste ▪ Partially done coding eventually abandoned during the development process is waste ▪ Extra processes and features not often used by customers are waste.  So one should point out sources of waste and eliminate them. 12
  • 13.  Amplify Learning  Software development is a continuous learning process. The best approach for improving a software development environment is to amplify learning.  The accumulation of defects should be prevented by running tests as soon as the code is written.  The process of user requirements gathering could be simplified by presenting screens to the end-users and getting their input.  Increasing feedback via short feedback sessions with customers helps when determining the current phase of development and adjusting efforts for future improvements. 13