Requirements Defined

Requirements at the Speed of Thought

What Questions Do You Have About Requirements?

We get a lot of questions about requirements management and elicitation in our forum and on our blog. So, in an effort to provide you with more practical information, we've added "Ask Joy." In each newsletter, we'll feature a new question from our Requirements Defined reader.

Send your requirements questions to us, and Joy Beatty, our VP of Blue Ocean Strategy, will answer it in her next blog post.

Six Requirements Models To Use On Agile Projects

Q: What requirements models do you use on agile projects?

J: When working on any agile project, most people will agree there is still a need to understand requirements. With the quick iterations of these projects, it’s more important than ever, to use visual models to capture the requirements.

When done correctly, easier and quicker to create and understand than a list of written requirements. Selecting the appropriate models will vary by project; however, we can suggest a few common choices that work well.

High Level Models

At the beginning of the project, it is important to get a quick picture of the breadth of the project. This picture will help the team determine where to dive for depth. It is really important that these models are done as broad strokes, with just the bare minimum information. To get a sketch of that big picture, consider these models:

  • Context diagram – This diagram simply sets the landscape of the project, clearly indicating the scope boundaries.
  • Org chart  – This is a model that often already exists in the organization. It can quickly help identify all the possible users or user groups that should be included in the project discussions.
  • Data flow diagram – This is a quick sketch of the key pieces of data flowing through the system, including where it is created, changed and deleted. The data in this diagram should only be data that is important to the users of the system. They will help to identify the most important data and systems to work with.
  • High-level process flow – Let’s start by saying this is nothing fancy or complex. The flow diagram should describe the major obvious steps. Again, the purpose is to sketch it simply, to give the big picture. In no way is it meant to be comprehensive or detailed.

Imagine one of your iterations requires bringing in new users to the team. These four models will give them an opportunity to quickly see the big picture of what this project is and where it is going, without having to read a 200 page spec (since there isn’t one!). You can also use them with your users to prioritize the most important pieces of the system for the iterations.

Models in the Iterations

Once you have prioritized the work for the first iteration, the two most popular models are likely to be:

  • User stories – You can write these for the most important parts of the flow. They will be less detailed than the traditional use cases, supplying just enough depth to be developed.
  • Wireframes – These will be connected to high-risk user stories, when sketching an interface might be a good aid to help the users explain what they need. These should be done in a quick modeling tool, or just by hand.

There will be other models. Sometimes you won’t even use these. The common theme in all of them is to create a visual representation of the requirements because it is faster to create and read.

And with them all, to only do the bare minimum necessary.


Blog Hits

Four Ways To Improve Your Agile Requirements Management Process

By James Hulgan

One of the challenges of Agile projects is ensuring that the requirements remain “Agile”. While requirements are not necessarily neglected on Agile projects, an Agile project may erroneously take a waterfall approach to requirements.

Here are some simple techniques to adapt your requirements management effort to an agile project. The quotes at the beginning of each section are from the “Principles Behind the Agile Manifesto” at http://agilemanifesto.org .

1. Communicate Often and Efficiently

“The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.”

Two problems with email is that it is inefficient and easy to ignore. Email thread discussions can be long, tedious, and annoying.

Despite the advances in emoticons over the past several years, it is also impossible to interpret non-verbal communication in email. Resolutions to discussions around requirements, scope, and implementation will be resolved much quicker and to the satisfaction of more stakeholders through a meeting or hallway conversation.

If moderating a large number of email discussions is part of your current requirements process (for example, after the initial draft of the requirements doc is published), perhaps it’s time to schedule regular meetings at key points during the release cycle. (Read about the other three tips...)






Have a question about requirements? Send it to us.

Seilevel Events

Requirements Visualization Training
July 10-11, 2008
Austin, Texas
Find out more!

Houston IIBA – Agile Requirements At The Speed Of Thought
Mike Alexander, Seilevel  

June 5, 2008
Houston, Texas
Houston IIBA

ProductCampAustin
June 14, 2008
Austin, Texas
ProductCampAustin




Share on Facebook

Seilife

Seilife

Seilife


Seilevel Careers

WANTED: Software Requirements Experts for Seilevel's Global Team
Do you love to travel?

Do you really love writing requirements?

When you use an application do you automatically think about how to make it better?

Do you wish the people you worked with were as fanatical about requirements as you?

Product Managers

WANTED: Recent graduates who want to learn how to design the next Google
Do you love to travel?

Do you want a career that would enable you to be hired as a Product Manager for companies like Google, Amazon, and Yahoo?

Are you excited at the prospect of working in many different industries?

Do you wish you had a chance to use your creativity in your job?

Did you ever wonder who designs all the software that you use?

Do you want to work with people that work hard but that know how to have a good time?
Recent Graduates