« Some Recent Essays | Main | "Dialog Boxes are so 1999..." »

October 22, 2007

Actively Engaging with Requirements

At the start of many client engagements, I am faced with the task of wading through some type of requirements documentation. It can be a deadly boring task. And I know I'm not alone in feeling this way. Often I find the only person who really understands the requirements document is the person who authored it. Other team members either skim requirements or don't bother to really read them at all. I have come into projects were the client flat-out admits their developers don't read requirements.

The problem with written requirements is that people want to visualize how a system will work. Written descriptions of functionally pose the barrier of abstraction. It's difficult to make the leap from the written page to what users will actually experience. Sometimes, we are brought in simply to bring the requirements to life--turn them into screen flows that team members can review and discuss.

So what do you do when you are faced with some requirements tome? When you need to understand and internalize the functionality defined in the document? In this situation, I turn to mind-mapping.

Mind-mapping is handy for many things, but I find it particularly useful for capturing requirements in a more visual presentation. Mind-mapping allows you to pull out key elements and themes and visually draw connections between them. It's an important step to internalize the requirements--to understand the big picture of what the system is trying to achieve.

Below is a simplified mind-map (click image to view larger). Each branch contains a topic. Some topics have a notes icon indicated, which means additional text and/or graphic annotation is available for them.

Picture 3-1

I start building a requirements mind-map by adding “floating topics”--topics that aren't connected yet to another topic. Often, I'll add notes--pasting in key bits of text from the requirements document or writing my own description/observation. Gradually, as the system comes into view, I'll start making associations between topics. Sometimes, topics stay “floating” because associations aren't yet clear.

The key is that I am actively engaging with the requirements--not simply reading through them. It forces me to think about what's written and how concepts potentially connect to one another. You could do something similar with a white board and post-it notes. The advantage of using mind-mapping software is the ability to easily capture more detailed notes.

The mind-mapping software I use is MindManager 7. There is a Lite version for the PC for $99 that lacks the MS Office integration (including Visio export) contained in the $349 Pro version. What I like about MindManager 7 (PC version) is the ability to insert images into the notes for a topic. This can be handy when wanting to include screen captures or screen illustrations in topic notes. MindManager 7 is the only mind-mapping tool I've seen where you can insert images into notes.

There is a Mac version of MindManager 7 ($129) but, you can't insert images into notes as you can in the PC version. The Mac version also lacks any integration with MS Office (which may change with the release of Office 2008).

The requirements mind-map is intended for my use only. Rarely, I'll show it to clients just so they can see how I'm approaching requirements analysis. I certainly don't want them to review it as I'm not constructing it for an audience other than me.

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/t/trackback/7229/22654036

Listed below are links to weblogs that reference Actively Engaging with Requirements:

Comments

There is an opensource alternative for Mindmapping software. It's called Freemind (http://freemind.sourceforge.net/). I used it for 2 things :

- the first briefing meeting (collecting all informations as nodes)
- make the sitemap

One time I bring up to a client the sitemap and they ask me how I did it and at the next meeting they've done a huge sitemap on 4 paper sheets ! :)

In opposition, I think it's a great thing for client to see how the website would look-like in terms of pages, for example with the sitemap. It perfectly justify some quotes aspects.
For requirements analysis I agree to don't show all your work.

Great and interesting blog ! ;)

Post a comment

Comments are moderated, and will not appear on this weblog until the author has approved them.

If you have a TypeKey or TypePad account, please Sign In