Requirements engineering is not at all a simple phase in fact it involves numerous numbers of activities to be performed. To start with process of Requirements engineering is broadly divided into two activities that are:-
1. REQUIREMENTS DEFINITION
2. REQUIREMENTS MANAGEMENT
First let’s focus on “requirements definition”. Requirements definition can again be divided into several activities. They are following:-
- Requirements Elicitation
- Requirements Analysis
- Requirements Documentation
- Requirements Review
Now, we shall look at each and every activity under requirements definition in detail.
First one is Requirements Elicitation.
It can be described as an essential communication process involving different communities. Mostly this activity is performed through meetings and interviews . It is an important part of software development since it is carried out during through the software project life cycle.
New requirements may be proposed during design and implementation and existing requirements may be modified or deleted.
There are mainly 5 tasks in Requirements Elicitation:-
1. Fact finding:-
- It involves the study of the organization in which the target system will operate and defining what the software will do.
- It also includes conduct of technological survey , for later feasibility studies and risk assessment.
- The output of fact finding is “a statement of the problem context and the scope of the proposed system , the overall objectives of the target system and the boundaries and interfaces for the target system.”
2. Requirements gathering:-
- This task consists of creating a wishlist for each user category and classifying wishlists according to functional ,non-functional,environment and design constraints.
- In early stages of requirements elicitation ,it is important to gather as much information as possible from users,developers and customers.
3. Evaluation:-
- The requirements that are gathered need to be evaluated to resolve inconsistencies and to understand why each requirement is important.
- In this task set of reasons are captured by eliciting and documenting issues,positions and arguments through meetings, group discussions and interviews.
- A risk assessment is also performed to address technical ,cost and schedule concerns.
4. Prioritization:-
- In this, requirements are prioritized based on cost, dependency and user needs. The rationale behind each requirement helps in deciding the priority.
- Quality Function and Deployment is an ideal technique for determining critical system features and prioritizing user needs.
5. Consolidation:-
- It is required to put together all the requirements in a way that can be analyzed further.
- It involves validating the requirements that are in agreement with originally stated goals , removing inconsistencies and resolving conflicts.
Thus, above described was Requirements Elicitation and the tasks it involve. Next article will be on requirements elicitation techniques.
19 Comments. Leave new
Your work is very detailed and informative. Well done.
informative!!
very Well Written 😀
well explained with good points
well written
Well presented.
Intriguing
informative and well articulated 🙂
informative and detailed 🙂
Informative 😀
Informative!
Informative.
interesting read
Work well done!!
Good effort.
good, understand the difference well.. 🙂
informative
Informative!
Really good…