Advantages: Can obtain good information, with users / stakeholders not feeling inhibited about what ... Disadvantages: Can be very slow to obtain requirements, both individually and if having to interview a ... bespoke software development.
Requirement Gathering Techniques 1. One-to-one interviews / meetings: i
Interviews and meetings are widely used for requirements gathering. One-to-one interviews require some planning and preparation before the interview and documentation of findings afterwards. Asking different types of questions e.g. open-ended, follow-on, or probing, can help to elucidate user / stakeholder system requirements. Advantages: Can obtain good information, with users / stakeholders not feeling inhibited about what they need or their lack of knowledge in certain areas. Some users are more likely to speak in one-to-one meetings, than in large open forums. Disadvantages: Can be very slow to obtain requirements, both individually and if having to interview a number of users / stakeholders. Sample Interview Questions for “Stakeholders”: What is your proposed system should offer? The system would like to have a better management of the inventory as well as a better relationship with our customers. The vision is to be a market leader in the use of technology to provide the best possible customer service with the broadest range of computer accessories.
What is wrong / fault with the current system? We are currently serving walk in customers only in our shop that located in Mid Valley Mall. And we have received plenty of calls and emails orders from customers to deliver the computer accessories to their door step. Therefore we want to launch an online system to let our customer have a better service experience.
When do you want the new system to be functioning? As our business grows, the system has to be launched and established online by Feb 2016.
2. Questionnaires: Questionnaires can be useful for obtaining limited system requirements details from users / stakeholders, who have a minor input or are geographically remote. The design of the questionnaire (whether off line or web based) and types of questions are important and can influence the answers, so care is needed. Advantages: Can send to many hundreds of users at a low cost. Good for getting input from users who are a long distance away. Receive written replies which can be easier to work with and analyze, and save time typing. Disadvantages: Questionnaires can be slow to create. You may not get a good response, as filling in questionnaires is often a low priority for many people. Recipients may feel ‘left out’ when they really wanted more input Sample Questionnaires for “Users / Stakeholders”:
1) With the implementation of a new online store, does it make it much simpler and easy to use without any hassle? Yes
No
2) Does the implementation of this new online system helps minimize the problems faced by many? Yes No 3) Should the new online store system should replace the current system as soon as possible? Yes
No
3. Use cases: Use cases comprise ‘stories’ which describe how certain processes work e.g. who can do what within the process. They describe the system from the user point of view. The systems requirements are gathered by working through a number of processes / use cases. Advantages: It can be easier for some users to describe what they do and the processes they go through, than specifying requirements. Disadvantages: Processes and stories still need to be analyzed and documented into requirements. Time is taken to go through processes. If the focus is on existing processes, the information may not be so relevant, as processes often change with a new system implementation.
4. Observation / shadowing people: Observing, shadowing users or even doing part of their job, can provide information of existing processes, inputs and outputs. Advantages: Useful if the user is not able to clearly explain what they do or their requirements for the new system. Can see ideas for improving processes or removing unnecessary activities from the new system. Disadvantages: Relatively slow, focused on existing processes rather than the new system processes.
5. Prototyping: Prototyping comprises collecting requirements and using them to build a prototype. It enables users to see a potential solution and get a better feel for what they require. Users then add or amend their requirements, with the prototype being reworked on an iterative basis, until requirements are firmed up. Advantages: Good for exploring how a particular software function requirement could work or a unique / bespoke software development. It can identify problems with requirements and can improve the quality of requirements and hence the ultimate solution. More relevant for the final detailed software selection, when comparing 1 or 2 packaged solutions from software vendors. Disadvantages: It is less useful for the initial requirements identification for a packaged software system. At the initial stage of identifying requirements, there may be up to 10 or 20 potential software systems in the running and it is not practical to prototype this many. Prototyping is not really suitable for large applications. Plus it can be an expensive technique for identifying requirements.
i
N/A. (2015). Requirements Gathering Techniques. Available: http://www.axia-consulting.co.uk/html/requirements_gathering.html. Last accessed 26th Dec 2015.