Course Structure

Learn about this course’s intended audiences, how it differs from other courses on Agile practices, and about its high-level structure.

Who this course is for

This course is for C-level executives, VPs, Directors, managers, and other leaders of software teams and organizations who want to ensure effective Agile adoptions. If you have a technical background but do not have deep experience in modern Agile practices, this course is for you. If you have a nontechnical background and just want a working knowledge of Agile practices, this course is also for you (it’s OK to skip the technical parts). And if you learned a lot about Agile practices 10–15 years ago but haven’t updated your knowledge of modern Agile since then, this course is for you.

Most important, if your organization has adopted Agile development and you are not satisfied with the results, this course is for you.

How this course is different from other Agile courses

This course is not about how to do Agile “correctly”—it’s about how to get the most value from the Agile practices that make sense for your business.

This course addresses the topics that businesses care about but that Agile purists often neglect: common challenges with Agile implementations, how to implement Agile in only part of your organization, Agile’s support for predictability, the best ways to use Agile on geographically distributed teams and using Agile in regulated industries, just to name a few of the neglected topics this course describes.

Most courses about Agile development are written by evangelists. They’re advocating a specific Agile practice, or they’re promoting Agile overall. I am not an Agile evangelist. I’m an advocate for “things that work,” and I’m an opponent of “things that over-promise with no evidence.” This course does not treat Agile as a movement that requires an elevated state of consciousness but as a collection of specific management and technical practices whose effects and interactions can be understood in business and technical terms.

I could not have written this course in the early 2000s because the software world had not accumulated enough on-the-ground experience with Agile development to know with any confidence what was working and what wasn’t. Today, we have learned that some of the practices that were the most publicized then did not turn out to be very effective, while other practices that were less publicized then have emerged as the reliable workhorses of effective modern Agile implementations. This course sorts out which is which.

Agile enthusiasts might criticize this course as not representing the leading edge of Agile development, but that is precisely the point—this course focuses on practices that have proven to work. The history of Agile development is rich with ideas that one or two enthusiasts used successfully in a handful of organizations, but that were ultimately not found to be generally useful. This course does not dwell on those limited-use practices.

This course provides a roadmap to modern Agile practices that work—and a few cautions about Agile practices and ideas to avoid. This course is not an Agile tutorial but a guide to help software leaders separate the signal from the noise.

How this course is organized

This course begins with background and context, moves to individuals and teams, then to the work practices used by the individuals and teams, then to the organizations within which the teams employ the work practices, and last to summary and perspective.