REQUIREMENT ELICITATION TECHNIQUES
what is Elicitation?
Elicitation is a procedure to bring out the intelligence information from people as part of human intelligence Elicitation Technique.
There are different elicitation techniques to gather requirements or to collect the information. There are different types of Requirement Elicitation Techniques as follow
2. Document analysis
3. Focus groups
4. Reverse engineering
Brain storming: It is a creative technique to find a solution or to understand the need or requirement by a group of people. As a BA, by using brainstorming, we can gather the ideas and can creative solutions for problems in short time.
The steps involved in brainstorming
1. Prepare for brainstorming: start a clear and concise objective for the session. Generate as many ideas as possible and don’t limit the creative ideas instead limit the time for session. Decide who all are going to included in session and their role like participant or facilitator.
2. Conduct brainstorming session: Share new ideas without any discussion, criticism or evaluation. Record or note down all ideas.
3. Wrap up the brainstorming: once the time limit is reached create a list of ideas and eliminate the duplicates. Rate the ideas and prioritize the ideas using voting and distribute the final list of ideas.
• Generate innovative ideas in a short time • Risk of having bad session
• Efficient way for user or stakeholders to define their requirements • Some people fear sharing ideas because they might get criticized
Document analysis: If the project is getting upgraded then the project has a document for previous system which helps in getting inputs for new system requirements. The documents such as interface details, user manuals, software vendor manuals.
Steps involved in Document analysis:
1. Prepare for document analysis: Evaluate whether the existing system and business documentation are appropriate to studied
2. Analyze the documents: study the material and identify relevant business details. Document business details as well as questions for follow up with subject matter experts.
3. Post document analysis wrap-up: Review and confirm the selected details with subject matter experts.
• Could be a lot of information and easy to transfer to a new system requirements document • Time consuming, conflicts, not found what the real figures are
Focus groups: A focus group is gathering of people who are customers or users’ representatives for a product to gain its feedback. The feedback can be collected about opportunities, need and problems to determine requirements or it can be collected to refine and validate the already elicited requirements.
• Refine and validate the already elicited requirements • Least productive, dominant participates may influence group disproportionately
Reverse engineering: if the existing system has outdated documentation and it is necessary to understand what the system does, then reverse engineering is an elicitation technique that can extract implemented requirement from the software.
There are two categories of reverse engineering
Black box reverse engineering: The system is studied without examining its internal studies
White box reverse engineering: The inner workings of the system are studied.
Observations: it is method where collecting requirement by observing the people doing their normal work. When the user is unable explain their expected requirements from the new product and problems with existing system then this method is used to get additional requirements.
It is more practical Few observations make an end conclusion
The changes, reports and findings are true The observer or viewers own perception
Workshop: workshops can be users or stakeholders, working together to identify requirements workshops will briefly repeated in order to clarify or obtain further details.
Steps involved in workshops:
1. Prepare for the requirements workshops: clarify the stakeholders need and purpose of the workshop. Send materials in advance to prepare the attendees and increase productivity at the meeting.
2. Conduct the requirement workshop: ask the right questions, analyze the information being provided at he sessions. Elicit, analyze and document requirements.
3. Wrap-up workshop: follow up on any open action that were recorded at the workshop. Complete the documentation and distribute it to the workshop attendees and the sponsor.
• Faster than group interviews for obtain requirements • More preparation is needed
JAD (Joint application Development): This method is more organized and structured than a brainstorming session where the involved parties get together to document requirements.
Steps involved in JAD sessions:
1. Define sessions: define the purpose, scope and objectives of JAD session
2. Research product: Become more familiar with the product or service, gather preliminary information, obtaining any models.
3. Prepare: prepare the meeting room and participants.
4. Conduct session: follow agenda not gather and document the project needs and requirements.
5. Draft the documents: prepare the formal documents. The information captured in the JAD sessions is further refined through analysis efforts.
• Group stays in meeting room till the session objectives are completed • Takes time to build, costlier to build
• Documented and agreed • False sense of security
Interview: an interview is a systematic approach to elicit information from a person or group of people in an informal or formal setting by talking to the person.
• It is easy because need minimal preparation • the question involved in interview might be preconceived ideas
• Involves a smaller number of people and clarify more in detail • Conflicts and consistencies between stakeholder
Prototyping: in this approach you can gather the requirements that you use to build initial version of the solution. There is repetitive process of cycle involved until the product meets the critical business need.
• Prototypes can be ideal reduce design risk • Takes time to build, costlier to build
• It is more practical, screen mockups, using animation tools provides an understanding of functionality. • False sense of security.
Questionnaire: this is more informal to gather requirements from stake holders in remote locations. Questionnaires also useful when there is lot of information to gather from hundreds of people.
• Less cost, reach large number of people • Difficult filling of users
• The responses are gathered in a standardized way • Participants may forget important issues.
Very well Narrated Mohammed Imran. Could you tell us which are the elicitation techniques that we use the most in the real time scenario.
There is nothing like most used techniques in real time scenarios. That depends on what type situation what type of inputs or information needed from different kind people(stakeholders, customers, client, developers, testing people)
According to my experience i was involved in JAD sessions, Brainstorming sessions when i worked as developer. If BA wants something from DEV team and testing team then mostly brainstorming, JAD sessions helps. Brainstorming, interviews kind will help BA from Client interaction (Not typical interview, questions asked in BA manner). But again that depends on the project, project people and how the project is , where the project is, why it is there, depending on the what type of information you need.
Thanks For your comment Sudhamanohar, I hope this helps.