Prioritizing Agile Project Requirements

From the Voices on Project Management Blog
by , , , , , , , , , , , , , , ,
Voices on Project Management offers insights, tips, advice and personal stories from project managers in different regions and industries. The goal is to get you thinking, and spark a discussion. So, if you read something that you agree with - or even disagree with - leave a comment.

About this Blog

RSS

View Posts By:

Cameron McGaughy
Marian Haus
Lynda Bourne
Lung-Hung Chou
Bernadine Douglas
Kevin Korterud
Conrado Morlan
Peter Tarhanidis
Mario Trentim
Jen Skrabak
David Wakeman
Roberto Toledo
Cecilia Wong
Vivek Prakash
Cyndee Miller
Shobhna Raghupathy

Recent Posts

Managing for Stakeholders — Not Stakeholder Management

It All Starts With Strategic Clarity, Say Symposium Speakers

Symposium Experts Offer Tips for Winning the Talent War

Organizational Strategic Alignment in Action

PMO of the Year Award Winner Helps Drive Rapid Growth

Email Notifications off: Turn on

Categories: Agile


In Agile project management, we must prioritize a requirements list for release planning, iteration planning and the insertion of new requirements. But there are several techniques to do this.

One of the most popular methods of prioritizing Agile project requirements is the "MoSCoW" approach. This stands for 'Must, Should, Could, Won't.' The only problem with this method is that everything is usually a must -- which doesn't allow proper Agile release planning because the requirements aren't necessarily put in order of priority.

Another method is the Kano model, developed by Professor Noriaki Kano, which strives to fulfill requirements and please customers. This model features four components:

•    Must haves are elements the product cannot ship without.
•    Dissatisfiers are things the product must NOT include.
•    Satisfiers include requirements where the more you have the better the product is perceived. Like a marketing checklist, each feature adds incremental value.
•    Delighters take the product beyond simply meeting the requirements to boosting customer satisfaction and recommendation.

Several prioritization models put together a table weighted by two variables: features and customers. Each feature is weighted by its value to each customer. The sum of the weights multiplied by the scores makes it possible to see which features are most useful overall across the set of demanding customers.  

No matter which technique is used, your list of project requirements must be sorted from most to least valuable.

What techniques do you use to prioritize requirements?
Posted by William Krebs on: April 28, 2011 01:27 PM | Permalink

Comments

Bob Tarne
I took part in the Agile game "Buy a Feature" this week. The Agile CoP is using it to prioritize the products it will offer its members. It's a great way for a group of people to prioritize a list of features.

Scotty Bevill
Bill,

I love you added this approach. All too often do we forget to talk about what the product IS NOT. The word dissatisfier can lead someone to think these are things that must be included or the customer is dissatisfied (covered by MUST HAVEs).

If you find your product team is struggling defining features to be prioritized, flip the context and talk about what it's not. You'll soon find your way into great discussions.

Tuckman says it's natural for us to storm before norming and performing. For this reason, motion can be found in the IS NOT discussion before the team finds it's stride.

Nice job.

Cynthia Canteen-Harbor
Bill – your commentary is spot on.

Requirements prioritization is one of the biggest challenges I face leading Agile/SCRUM teams. It’s a delicate dance because requirements tend to evolve so quickly and could potentially become obsolete even before the project is complete.

Like you said, if one relies solely on the MoSCoW approach, it becomes quite difficult to help organizations during a prioritization exercise. Well said.

Agile ALM
Once there is no priority and everything is must-do, agility is lost and this may lead to more time in completion of each sprints. Irrespective of the models you choose, prioritization is must for requirements management in a software project management process.

Project management girl
I like this MoSCoW approach, this is a new one to me. This is extremely important to prioritize tasks and objectives. I have been using software to set my own tasks with deadlines, which helps me keep track and remind me of things I have to do.

I would definitely recommend software to help everyone who struggles with this.




tural
Requirements definition and prioritization is one of the biggest challenges product owner face leading agile teams.

Requirements tend to evolve so quickly and could potentially become obsolete even before the project is complete.

We classify according to economic, organizational and technical aspects.


Jon Terry
I would recommend the Class of Service concept pioneered by David Anderson in his book, Kanban. A good basic overview can be found here http://www.dennisstevens.com/2010/06/14/kanban-what-are-classes-of-service-and-why-should-you-care.

The general idea is to prioritize those work items where delivering, or failing to deliver by a specific date within the next delivery cycle of the team, has a real financial impact. Push business customers to prioritize based on real, time-bound value not squeaky wheel-ishness.

For example, a first class customer on a lane will get a better drink (champagne whenever they ask) and faster than a coach customer (Coke only at specific times) because failing to do so may cause the first class customer to shift their very lucrative business whereas the coach customer (even if whiny) is almost solely concerned with ticket price.

Tony Bruce
Hi Bill,

Thanks for sharing your thoughts and you are spot on, prioritizing is a huge issue which definitely comes to the fore front when people are transitioning to agile.

One thing I noticed though is that you didn't mention why it's important to prioritize and the need to explain why it needs to be done.

Technique won't help at all if people don't understand why they are doing it.

Explaining why and the benefits from prioritizing may make it more understandable and therefore hopefully easier to do.

Though if you can figure out a easy way to do it please let me know!

Cheers

Tony


Deepali Tendulkar
Hi Bill,

Thanks for sharing your thoughts - your post prompted me to write about my experience of prioritizing requirements during an inception.

Regards,
Deepali



Ira Varshavets
Hi Bill. Thanks for your post.

Indeed requirements prioritization is a crucial issue in agile. In our company's development process we realized such need when we faced a strong client desire to get a lot of features build in short period of time or for small fixed budget.

We found it beneficial to use MoSCoW approach. If you think of the "musts" as something which is really essential for "your application daily living" right now under current circumstances then it's easier to shorten the "musts" list.

Best regards,
Ira


Please Login/Register to leave a comment.

ADVERTISEMENTS

"If at first you don't succeed, try, try again. Then quit. There's no use being a damned fool about it."

- W. C. Fields

ADVERTISEMENT

Sponsors

>