Five development practices compose the core of Extreme Programming (XP)—automating the build for continuously integrating software as it is written, collaborating with team members through pair programming, practicing agile design skills that enable testability, using test first development to drive design, and refactoring code to reduce technical debt. Together, these five technical disciplines are proving to be essential for sustained success with agile development. However, many teams haven’t been exposed to the benefits of these practices or understand how to use them effectively. David Bernstein explores these engineering practices and their use in reducing risk and building quality in at every level of the development process. He makes the business case for these practices by showing how they address the inherent risks and challenges of building software. David then examines how XP practices address the core issues of software development by helping us “build the right thing” and “build the thing right.”
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽❤️🧑🏻 89...
AT2 Five XP Practices for Agile Development
1. AT2
Agile Techniques
6/8/2017 10:00:00 AM
AT2 Five XP Practices for Agile
Development
Presented by:
David Bernstein
To Be Agile
Brought to you by:
350 Corporate Way, Suite 400, Orange Park, FL 32073
888-‐268-‐8770 ·∙ 904-‐278-‐0524 - info@techwell.com - https://www.techwell.com/
2. David Bernstein
To Be Agile
David Bernstein is the author of Beyond Legacy Code: Nine Practices to Extend
the Life (and Value) of Your Software. It's an insider's view of the software
industry drawn from his decades of hands-on experience as a software
developer, trainer, and consultant to some of the biggest players in the business.
David's continuing passion for software design and construction has led him to
train more than 8,000 developers since 1990 at hundreds of companies
worldwide including Amazon, Yahoo, and Microsoft. His consulting firm, To Be
Agile, helps developers adopt Extreme Programming practices such as test-driven
development, continuous integration, and refactoring.
4. 1/30/2017
2
3
Nine Essential Practices
1. Say What, Why, and for Whom before How: With a Product Owner defining the next most
important features to build, the need for upfront requirements goes away.
2. Build in Small Batches: Building incrementally increases feedback, helps simplify the
construction of complex systems, and reduces risks.
3. Integrate Continuously: Sets up the infrastructure for incremental development.
4. Collaborate: Spiking, pairing, and swarming as a team to solve problems and radiate
knowledge throughout an organization.
5. Create CLEAN Code: Share standards and practices for building software with code qualities
that support testability.
6. Write the Test First: Drops the cost of building and maintaining software dramatically.
7. Specify Behaviors with Tests: Uses tests to define and document behaviors.
8. Implement the Design Last: Paying technical debt can pay back dividends in the short term as
well as the long term.
9. Refactor Legacy Code: Incorporate learning and pay off technical debt.
Integrate Continuously
Practice 3
13. 1/30/2017
11
Create CLEAN Code
We can infer good development principles and
practices through five key code qualities:
Cohesive
Loosely Coupled
Encapsulated
Assertive
Nonredundant
Practice 5
Quality Code is Cohesive
26. 1/30/2017
24
Do it Right the Second Time
48
Thank You!
We have just scratched the surface, to learn more:
– Read my blog: http://ToBeAgile.com/blog
– Sign up for my newsletter: http://ToBeAgile.com/signup
– Follow me on Twitter (@ToBeAgile)
– Read my book:
– Beyond Legacy Code: Nine Practices to Extend the Life (and Value) of
Your Software (available from http://BeyondLegacyCode.com)
– Attend my one of my Certified Scrum Developer trainings
– See http://ToBeAgile.com/training for my public class schedule
– Or contact me to arrange a private class for your organization
– Visit http://ToBeAgile.com for more information