Requirements are needs of stakeholder. It can simply statements given by the stakeholders regarding what they think they require in order to solve a particular business problem they are facing with.
Types of Requirements
- Business Requirements
These are high-level descriptions of the goals and objectives of the business users. These includes the organizational level needs and changes required.
- Stakeholder Requirements
These are individualistic requirements or requirements belonging to a particular group of stakeholders. This will be more details oriented compared to the high-level business requirement.
- Solution Requirement
This describes the capabilities and characteristics of the solution in order to meet the business requirements. The development team will be using this in further stages of SDLC. It can be of two types
- Functional Requirement
This particularly describes the capabilities of the system. It mainly describes what features the system provides to its users, that is what the system of software do
- Non- Functional Requirement
These are environmental and behavioural conditions of the system including scalability, maintenance, performance, etc.
- Transition Requirements
These are one-time installations at client side in order for the system to make the transition from current state to future state.
Different Requirement Elicitation Techniques
Requirement’s elicitation techniques include methods to gather information from the stakeholder regarding their needs. You can either communicate with the stakeholders directly or go with some research techniques. You can develop the perfect solution only if you know what the customer really needs. There are various number of elicitation techniques out there.
- Document Analysis
This is one of the most effective ways to understand the current process. It includes going through the existing product/process/project documentation in order to gain understanding of the current flow. The documents can include product features, process flow documents, knowledge base etc.
You can use this technique when you are dealing with a competitive product in the market. While reviewing the documents you can identify the gaps and variations in the As Is process.
- Reverse Engineering
This can be helpful in migration projects. It involves decomposing the product components and analyse to derive conclusions. You can use it when your documentation is not up to date.
- Focus groups
This includes a interactive session with a targeted user group of the product in order to obtain valuable feedbacks about the product, or its service. This can be conducted before or after the software launch
This including the shadowing process in order to decipher how a user is performing their daily activities. This can be useful when constant monitoring is required in the current process.
This is a very structured and facilitated approach in order to reach insights regarding the scope, priority and closure on requirements. This includes interactive sessions with meetings and discussions
Join Application Development- Here we conduct collaborative discussions between the development team and users in order to avoid error and high-risk factors. We can also conduct JAD sessions when there is high knowledge gap in requirements between development team and business users.
This is one of the most common approaches in elicitation where the important questions regarding software are asked and the responses will be recorded and documented. The interviewer can ask relevant questions to stakeholders to the stakeholders. If its predefined format it is called structured approach. If its random unformatted questions then its unstructured.
These are very much helpful when deriving the exact requirements from the stakeholder. Here we create prototypes or look alike of the end product in order to help the stakeholder to reach a conclusion regarding what is required and what is not
These can be used for the stakeholders who are remotely located and have so little input with regards to the product. You can give a set of relevant questions to the stakeholder in order to understand their needs. It can be either open ended questions where the stakeholder can answer according to their wish or close ended questions where the response is selected from the given answers.
This will be helpful when generating new ideas. It can be done individually or as a group to find out new ideas or solutions to existing business problems. It promotes creative thinking, collaboration among stakeholder
- Use case Specs
This includes diagrams to describe the functional description of the system. It includes actors, use case, use case diagram.