extreme programming

Articles

The Marriage of Lean, Scrum and Extreme Programming (XP)

Many flavors of Agile have emerged: Scrum, Lean, Feature Driven Development (FDD), and Extreme Programming just to name a few. These methods have numerous complementary and distinguishing features, but the gamut of choices can be confusing and disorienting - as if being told to choose the best from 31 flavors of ice cream. Return on Investment (ROI) is important to me, so Lean must be the answer. But wait, I also want to be agile with my business priorities so I’ll choose Scrum. We are left wanting a simple question answered: “Which Agile method should I choose for my organization?”

Geoffrey Bourne's picture Geoffrey Bourne
Agile Developer’s Journal: A Day in the Life

People are creatures of habit, particularly programmers: We seek consistency, whether it is the tried-and-true waterfall/SDLC method or our morning routine of reading the newspaper with a hot cup of coffee. Companies or projects looking to adopt an agile process neglect the fundamental concern of an individual developer: "What will my day to day look like working in an agile environment?"

Geoffrey Bourne's picture Geoffrey Bourne
Telling Better User Stories

While the idea of a user story is simple on the surface, there are challenges to working with them. User story mapping is a useful way to organize, decompose, and prioritize user stories.

Jeff Patton's picture Jeff Patton
Testing Lessons Learned from Extreme Programmers

One of the things testers often notice about Extreme Programming (XP) is that there is no defined role for testers on the team. Yet XP teams describe themselves as "test infected." They practice Test-Driven Development (TDD), writing executable unit tests before writing the code to be tested. Many teams practice Acceptance Test-Driven Development (ATDD), writing executable acceptance tests before implementing a feature. They use continuous integration to give them rapid feedback about the effects of changes. They practice pair programming, a technique that results in all code being peer reviewed before it's checked in. In short, XP teams test continuously from the very first moment of any given project. You could even call them "test obsessed." That obsession helps explain why Elisabeth Hendrickson, author of Test Obsessed, likes XP teams so much.

Elisabeth Hendrickson, Quality Tree Software, Inc.
Is ''Agile'' Distracting You?

If a process tool or service claims to be agile it must be good, right? Not necessarily. The term "agile" has become abused and, since we don't have a standard dictionary definition, it is open to interpretation. So, let's look beyond the label to what really matters—value.

Jonathan Kohl's picture Jonathan Kohl
Testing Lessons Learned from Extreme Programmers
Video

One of the things testers often notice about Extreme Programming (XP) is that there is no defined role for testers on the team. Yet XP teams describe themselves as “test infected.” They practice Test-Driven Development (TDD), writing executable unit tests before writing the code...

Elisabeth Hendrickson, Quality Tree Software
Managing Offshore XP Teams: Organizational Models and Tools

The essence of Extreme Programming (XP) is making the customer a part of the team who works very closely with the developers, ideally communicating on a daily basis. However, what about a situation where your development team is offshore? Is it possible to have the best of both worlds, realizing the gains of offshoring without losing the benefits of XP? How do you keep the momentum and the communication flow going, at the same time ensuring seamless integration of the deliverables into the customer's production environment at the XP pace?

Peter Vaihansky's picture Peter Vaihansky
Agile SCM: It’s All Related

In this article, the authors the use of basic patterns that can help build a software configuration management process that works well with your agile development environment. They discuss how codeline policy, private work spaces, smoke tests, private system builds, integration building, unit testing, and regression testing all work together to enable you to maintain an active development line.

Feature-Driven Development: An Agile Alternative to Extreme Programming

Feature-driven development (FDD) has the more traditional progression of a systems-engineering life cycle mode as compared to agile methods. It uses distinct phases in its iterations while still being highly iterative and collaborative. FDD does conduct up-front planning, design and documentation and relies very heavily upon domain modeling.

Brad Appleton's picture Brad Appleton
Twelve-Step Program for a Better Test Process

We can't make software better by testing the quality into it. However, if we manage our testing processes and educate the rest of the team about what it takes to make better software, we can make a difference. First, we have to get the testing world under control and work to reasonable expectations; then, we can spread the word to the rest of the organization. Judy McKay describes how to gain control of the test process-while still getting the real work done-and shares ways to educate the rest of the team about quality awareness. Using Judy's twelve-step program, test managers and testers will regain their sanity as they take control of the testing workflow and share it with the project team. By allowing developers to become part of your world, quality assurance can become a reality in your organization.

Judy McKay, Test & Automation Consulting LLC

Pages

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.