Skip to main content

I say XP, you say Product Management; I say Scrum, you say Project Management

Chances are you've heard about Agile before but you don't know what the heck it is - even if you think you do.

Chances are:
  • if I say "Agile", you think "methodology"
  • if I say "Agile process", you think "Scrum"
  • if I say "Scrum", you think "daily standup meetings"
  • if I say "XP", you think "Pair Programming
  • if I say "Requirements", you think "PRD"
The problem with the above word/phrase associations is that they establish an incorrect image in your mind about the essence of XP, Scrum and Agile. It is this image that determines in the end whether you succeed or fail when you attempt any Agile method; in fact, it is this image that decides if you'll ever seriously attempt to use an Agile method to build software.

No wonder that Agile methods often get such a bad rap from smart, well-intentioned, successful software developers, engineering leads, and product managers. Their exposure to Agile is through other people who are equally ignorant about it. It doesn't help that - unfortunately for a lot of people - the first step they take towards learning about Agile is the "ScrumMaster" training. Did you know that all it takes to become a ScrumMaster is about $1500 $800 and 2 days of your time?

Yet, managing software product lifecycle from requirements, to release planning, to development & QA, to repeating the process all over again, week after week, iteration after iteration, is one of the toughest jobs you can do in a software organization - worthy of a few graduate level courses, if not an entire Master's degree.

What you can't learn in 2-days of ScrumMaster training, you certainly can't learn in one blog post from me. But I'll give you the right way to think about it, as you research articles, books, courses, or better yet, as you attempt to actually apply "Agile" principles in a project within your organization.

  • when I say XP, think Product Management process
  • when I say XP, think Software Development process
  • when I say Scrum, think Project Management process
In essence,

"XP is a better process for Product Managers to manage requirements, a better process for Programmers to convert these requirements to code, and the only process that strives to satisfy them both, simultaneously."

"Scrum is a better process for Project Managers balancing Work that must be completed and Resources that are available to them, in a fixed amount of time - and works best when used with XP."


Popular posts from this blog

Splitting User Stories vs. Rally's "split" feature (that has nothing to do with it!)

Agile tool Rally has a "split" feature it recommends to handle "unfinished work" in a Scrum Sprint:

Manage Unfinished Work - Split user stories (new link)

Below are my observations on the "Split" feature in Rally (followed by a few excellent articles on Splitting User Stories):
This "split" feature in Rally has numerous problems: 1. Nothing to do with Splitting User Stories It has nothing to do with "Splitting a User Story" which is an advanced but fairly well-understood field in Agile, and a tool for Product Managers to use in one of the two scenarios: The Product Manager does it before an Iteration commences (i.e. during backlog creation or release planning) to create User Stories by business value that are right-sized, i.e. they can be comfortably implemented inside an iteration; The Product Manager does it in Iteration Planning or in the middle of an Iteration to reduce scope by removing/simplifying acceptance criteria, in response to t…

User Stories: you're not Agile without them

Failure to effectively transition to Agile development is often based on a fundamental failure to understand what a User Story is.

Allow me to explain.

The most important aspect of a User Story is that it's an independently *schedulable* unit of requirement (feature). The key to achieving the "independently schedulable" characteristic of a user story is that you express it in terms of how a "user" would use it. This leads you to a unit of functionality that's implemented end-to-end (UI to backend) that a user can actually interact with.

Not surprisingly, because of the focus on how a user would think about a feature, a user stories are highly readable - and could very well be written by the users themselves. However, the other important and less obvious aspect of a User Story is the emphasis on communication with the end-user and getting confirmation on the acceptance criteria.

Describing all the requirements as User Stories for a decent sized product is rigoro…

To dream or not to dream? How about keeping your mouth shut?

Here's a really nice quote from one of my dear friends in response to one of my dreams.
Between the bigger things you cannot do,and the smaller things you don't want to do,you may end up doing nothing The problem with quotes and analogies is that they are almost always approximately appropriate, but rarely if ever exactly applicable . A quote is by definition a generalization. Also, we are by nature biased with our prejudices, biased by our own very personal and unique experiences, and biased, by nature, against those who are near and dear to us. While we want them to succeed and would eventually be happy if they succeed big, our natural instinct is to "help" them "stay grounded".

I disagree with this helping nature, of course. I can - and will- expound on the virtue of dreaming big and having a big mouth. But that will be another day.

Today I'm going to present a few quotes on the flip-side of my friend's quote. Feel free to add yours to the list…