Software Engineering (2160701)

BE | Semester-6   Summer-2019 | 10-05-2019

Q5) (C)

Write a short note on Requirement Engineering

·       Tasks and techniques that lead to an understanding of requirements is called requirement engineering.

·       Requirement engineering provides the appropriate mechanism for understanding

o   What customer wants

o   Analyzing needs

o   Assessing feasibility

o   Negotiating a reasonable solution

o   Specifying solution unambiguously

o   Validating the specification

o   Managing requirements

·       Requirements generally fall into two types:

o   Functional requirements   

o   Non-Functional requirements

·       A functional requirement will describe a particular behaviour of function of the system when certain conditions are met, for example: “Send email when a new customer signs up” or “Open a new account”.

·       A non-functional requirement will describe how a system should behave and what limits there are on its functionality.

Requirement Engineering Tasks

Inception

·       Roughly define scope

·       A basic understanding of a problem, people who want a solution, the nature of solution desired

Elicitation (Requirement Gathering)

·       Define requirements

·       The practice of collecting the requirements of a system from users, customers and other stakeholders

Elaboration

·       Further define requirements

·       Expand and refine requirements obtained from inception & elicitation

·       Creation of User scenarios, extract analysis class and business domain entities

Negotiation

·       Reconcile conflicts

·       Agree on a deliverable system that is realistic for developers and customers

Specification

·       Create analysis model

·       It may be written document, set of graphical models, formal mathematical model, collection of user scenarios, prototype or collection of these

·       SRS (Software Requirement Specification) is a document that is created when a detailed description of all aspects of software to build must be specified before starting of project

Validation

·       Ensure quality of requirements

·       Review the requirements specification for errors, ambiguities, omissions (absence) and conflicts

Requirements Management

·       Activities to identify, control & trace requirements (Umbrella Activities)