Understanding Requirements Gathering
Why do we need to gather requirements before starting the development of a new system?
- Foundation of System Design: Requirements gathering is the first step in the system development lifecycle, providing a clear understanding of what the system must achieve.
- Stakeholder Alignment: Ensures that the needs and expectations of all stakeholders are considered, reducing the risk of project failure.
- Cost and Time Efficiency: Identifying requirements early helps prevent costly changes and delays later in the development process.
- Gathering requirements is not a one-time activity.
- It is an iterative process that involves continuous communication and collaboration with stakeholders.
Ways of Gathering Requirements
| Method | Description | Advantages | Disadvantages | Use When |
|---|---|---|---|---|
| Interviews | One-on-one or group discussions with stakeholders | In-depth insights, clarifies complex needs | Time-consuming, may reflect personal bias | Detailed understanding is needed from specific individuals |
| Surveys/Questionnaires | Structured forms with open or closed questions | Reaches many people quickly, easy to analyze (quantitative) | May lack depth, low response rates | Gathering broad input across many users |
| Direct Observation | Watching stakeholders perform tasks in their environment | Reveals real-world processes and inefficiencies | May be intrusive, limited by observer interpretation | Understanding actual workflow and behaviour |
| Reading Documentation | Reviewing existing system manuals, reports, or records | Provides historical/system context, saves time | May be outdated, doesn't capture future needs | Understanding legacy systems or gathering baseline info |
Techniques of Gathering Requirements
| Technique | Description | Advantages | Disadvantages | Use When |
|---|---|---|---|---|
| Examining Current Systems | Analyze how the existing system operates, including its strengths and weaknesses | Identifies real-world issues, provides concrete starting point | May inherit existing flaws or outdated practices | Replacing or improving an existing solution |
| Studying Competing Products | Investigate features, performance, and user feedback of rival systems or software | Offers inspiration and benchmarking, reveals industry standards | Copying without innovation, violating IP rights, may lack internal relevance | Seeking best practices or innovative ideas |
| Assessing Organizational Capabilities | Analyze company resources, skills, budget, and infrastructure | Ensures realistic, feasible solutions tailored to the organisation | May limit ambition or innovation | Aligning the solution with internal strengths and limits |
| Literature Searches | Review academic papers, case studies, white papers, or technical documentation | Provides theoretical background and evidence-based insights | May lack practical relevance or be outdated | Exploring new approaches or understanding broader context |
Always use a combination of methods and techniques to ensure a comprehensive understanding of stakeholder requirements.
Privacy and Ethical Considerations
When collecting data from stakeholders, do not forget about:
- Data Privacy: Ensure that all data collected is stored securely and used only for its intended purpose.
- Informed Consent: Stakeholders should be aware of how their information will be used and have the option to opt out.
- Anonymity: When possible, anonymise data to protect stakeholder identities.