Ten Requirements Gathering Techniques


The BABoK (Business Analyst Body of Knowledge) lists 10 techniques for gathering requirements. Here’s an overview of each one. For more details, check out the latest Guide to the BABoK.

  1. Brainstorming
  2. Document Analysis
  3. Focus Group
  4. Interface Analysis
  5. Interview
  6. Observation
  7. Prototyping
  8. Requirements Workshop
  9. Reverse Engineering
  10. Survey

1. Brainstorming

Brainstorming is used in requirements elicitation to get as many ideas as possible from a group of people. Generally used to identify possible solutions to problems, and clarify details of opportunities. Brainstorming casts a wide net, identifying many different possibilities. Prioritization of those possibilities is important to finding the needles in the haystack.

2. Document Analysis

Reviewing the documentation of an existing system can help when creating AS-IS process documents, as well as driving gap analysis for scoping of migration projects. In an ideal world, we would even be reviewing the requirements that drove creation of the existing system – a starting point for documenting current requirements. Nuggets of information are often buried in existing documents that help us ask questions as part of validating requirement completeness.

3. Focus Group

A focus group is a gathering of people who are representative of the users or customers of a product to get feedback. The feedback can be gathered about needs / opportunities / problems to identify requirements, or can be gathered to validate and refine already elicited requirements. This form of market research is distinct from brainstorming in that it is a managed process with specific participants. There is danger in “following the crowd”, and some people believe focus groups are at best ineffective. One risk is that we end up with the lowest common denominator features.

4. Interface Analysis

Interfaces for a software product can be human or machine. Integration with external systems and devices is just another interface. User centric design approaches are very effective at making sure that we create usable software. Interface analysis – reviewing the touch points with other external systems – is important to make sure we don’t overlook requirements that aren’t immediately visible to users.

5. Interview

Interviews of stakeholders and users are critical to creating the great software. Without understanding the goals and expectations of the users and stakeholders, we are very unlikely to satisfy them. We also have to recognize the perspective of each interviewee, so that we can properly weigh and address their inputs. Like a great reporter, listening is the skill that helps a great analyst to get more value from an interview than an average analyst.

6. Observation

The study of users in their natural habitats is what observation is about. By observing users, an analyst can identify a process flow, awkward steps, pain points and opportunities for improvement. Observation can be passive or active (asking questions while observing). Passive observation is better for getting feedback on a prototype (to refine requirements), where active observation is more effective at getting an understanding of an existing business process. Either approach can be used to uncover implicit requirements that otherwise might go overlooked.

7. Prototyping

Prototypes can be very effective at gathering feedback. Low fidelity prototypes can be used as an active listening tool. Often, when people can not articulate a particular need in the abstract, they can quickly assess if a design approach would address the need. Prototypes are most efficiently done with quick sketches of interfaces and storyboards. Prototypes are even being used as the “official requirements” in some situations.

8. Requirements Workshop

More commonly known as a joint application design (JAD) session, workshops can be very effective for gathering requirements. More structured than a brainstorming session, involved parties collaborate to document requirements. One way to capture the collaboration is with creation of domain-model artifacts (like static diagrams, activity diagrams). A workshop will be more effective with two analysts than with one, where a facilitator and a scribe work together.

9. Reverse Engineering

Is this a starting point or a last resort? When a migration project does not have access to sufficient documentation of the existing system, reverse engineering will identify what the system does. It will not identify what the system should do, and will not identify when the system does the wrong thing.

10. Survey

When collecting information from many people – too many to interview with budget and time constraints – a survey or questionnaire can be used. The survey can force users to select from choices, rate something (“Agree Strongly, Agree…”), or have open ended questions allowing free-form responses. Survey design is hard – questions can bias the respondents. Don’t assume that you can create a survey on your own, and get meaningful insight from the results. I would expect that a well designed survey would provide qualitative guidance for characterizing the market. It should not be used for prioritization of features or requirements.

Post to Twitter Post to Facebook

This article was published on Tuesday, November 21st, 2006 at 8:34 pm and is filed under Business Analysis, IIBA, Lists, Organizations, Requirements, Requirements gathering.
You can leave a comment on this post

6 Comments

  1. Great list. While business rules are not the same as requirements, I do think almost all these techniques can be used effectively.
    Check out http://www.edmblog.com/weblog/2006/11/gathering_requi.html

  2. Hi

    I came across you site via Squidoo – so it’s working for you.

    Thanks for the list.

    It’s a neat concise article I can share with junior BAs to get them thinking about ways to elicit requirements. Naturally each of these topics could also fill a chapter in a book.

    Or a page on the new BA wiki that I have just started;

    http://businessanalyst.wikia.com

    As a wikia product it’s free to access and I hope you and your readers use and contribute to to it. It’s a baby today but i am hopeful it will be a robust resource in the future.

    Also have you noticed the groundswell of business analyst blogs, services and so on at the moment? I am sure it’s the IIBA and their accreditation that is behind it. Congrats to them for the initiative.

  3. Hey Craig, thanks a lot for reading and commenting – and welcome to Tyner Blain!

    I’ll definitely check out the wiki too.

    Thanks,
    Scott

  4. There are many types of requirements and the elicitation techniques greatly vary from one another!

    The requirement gathering techniques explained are generic and cannot be considered universal. What if people do a brain storing without having subject knowledge?

  5. Hi there! I could have sworn I’ve been to this site before but after browsing through some of the post I
    realized it’s new to me. Nonetheless, I’m
    definitely delighted I found it and I’ll be bookmarking
    and checking back often!

  6. I do not even understand how I stopped up right here, but I believed this submit
    was once great. I don’t know who you might be however definitely you are going to a well-known blogger in the event
    you are not already. Cheers!

    my blog: black hairstyles (blackhairstylesguide.net)

25 Trackbacks

  1. By 3 Great Posts On How To Gather Requirements on May 9, 2007 at 2:01 pm

    [...] Ten Requirement Gathering Techniques [...]

  2. By vignesh waran on July 25, 2011 at 6:31 pm

    By @sehlhorst: Ten Requirements Gathering Techniques http://t.co/VvWHlXk

  3. By Husain Alotaibi on August 29, 2011 at 2:54 am

    Ten Requirements Gathering Techniques.
    http://t.co/xzltBqD

    #projectmanagement #pmp #Business

  4. By Mosget Design on September 30, 2011 at 12:31 pm

    Mosget.com Presents: Ten Requirements Gathering Techniques | Tyner Blain: http://t.co/cB27ypHW

  5. By Blogging Tweets on September 30, 2011 at 5:45 pm

    Ten Requirements Gathering Techniques http://t.co/yj3gJC2r

  6. By A Prototype is Worth a Thousand Lines of Code on October 31, 2011 at 5:17 am

    [...]  Back in 2006, I wrote about prototype fidelity as part of exploring ways to use this insight in requirements gathering.  Prototyping, in particular, is a great way to elicit implicit requirements – those [...]

  7. By Diya Sharma on May 24, 2012 at 2:53 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/JbUf0lVV

  8. By Rich Mironov on May 27, 2012 at 8:38 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/q6XlWeFL

  9. By Rich Mironov on May 27, 2012 at 8:38 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/q6XlWeFL #prodmgmt

  10. By Startup Monkey on May 27, 2012 at 9:13 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/q6XlWeFL #prodmgmt

  11. By Ken Evans on May 27, 2012 at 9:13 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/q6XlWeFL #prodmgmt

  12. By peter scharnell on May 27, 2012 at 9:19 pm

    Nice post by @sehlhorst: Ten Requirements Gathering Techniques http://t.co/9u7aK7KP #prodmgmt

  13. By ProductCamp Boston on May 28, 2012 at 12:26 am

    Nice post by @sehlhorst: Ten Requirements Gathering Techniques http://t.co/9u7aK7KP #prodmgmt

  14. By Siddhartha Oza on May 28, 2012 at 5:29 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/q6XlWeFL #prodmgmt

  15. By Alex Sherman on May 28, 2012 at 11:48 pm

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/q6XlWeFL #prodmgmt

  16. By IT Requirements Primer | INFO 563 on May 29, 2012 at 3:36 pm

    [...] out the original post here for all the [...]

  17. By mymy on June 4, 2012 at 3:01 pm

    By @sehlhorst: Ten Requirements Gathering Techniques http://t.co/9yDGOqq6

  18. By Wanjiru on August 15, 2012 at 9:10 am

    RT @sehlhorst: Ten Requirements Gathering Techniques http://t.co/8VJNf0w1

  19. By Anonymous on August 15, 2012 at 2:39 pm

    RT @chrissyshiru: Ten Requirements Gathering Techniques http://t.co/eRiU2yMW thx! #prodmgmt #baot

  20. By Dave Taylor on August 15, 2012 at 2:46 pm

    RT @chrissyshiru: Ten Requirements Gathering Techniques http://t.co/eRiU2yMW thx! #prodmgmt #baot

  21. By SolutionsIQ on August 22, 2012 at 2:50 pm

    10 Requirements-Gathering Techniques http://t.co/DKU9Nx6K Some approaches to try

  22. By Manish Gupta on November 10, 2012 at 9:10 am

    By @sehlhorst: Ten Requirements Gathering Techniques http://t.co/8VVuPVSk

  23. [...] which one, and how to understand whether you’re making good designs.  It’s good to do customer requirement gathering before you start your design, and then evaluate your design afterwards – even if you’re [...]

  24. [...] When collecting information from many people – too many to interview with budget and time constraints – a survey or questionnaire can be used. The survey can force users to select from choices, rate something (“Agree Strongly, Agree…”), or have open ended questions allowing free-form responses. Survey design is hard – questions can bias the respondents. Don’t assume that you can create a survey on your own, and get meaningful insight from the results. I would expect that a well designed survey would provide qualitative guidance for characterizing the market. It should not be used for prioritization of features or requirements.” Source: http://tynerblain.com/blog/2006/11/21/ten-requirements-gathering-techniques/ [...]

  25. [...] are multiple ways to gather requirements and identify pain points. One option is to conduct a brainstorming session in which you invite a group of key individuals [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>