Introduction To Tutorial Software Requirements Engineering
Introduction To Tutorial Software Requirements Engineering
Software requirements engineering is the science ration. This is accomplished through the use of an
and discipline concerned with establishing and docu- iterative process of analysis, design, trade-off studies,
menting software requirements. It consists of: and prototyping.
Software requirements engineering has a similar
• Software requirements elicitation-The definition as the science and discipline concerned with
process through which the customers (buyers analyzing and documenting software requirements. It
and/or users) and the developer (contractor) involves partitioning system requirements into major
of a software system discover, review, ar- subsystems and tasks, then allocating those subsystems
ticulate, and understand the users' needs and or tasks to software. It also transforms allocated sys-
the constraints on the software and the devel- tem requirements into a description of software
opment activity. requirements and performance parameters through the
• Software requirements analysis-The proc- use of an iterative process of analysis, design, trade-off
ess of analyzing the customers' and users' studies, and prototyping.
needs to arrive at a definition of software re- A system can be considered a collection of hard-
quirements ware, software, data, people, facilities, and procedures
organized to accomplish some common objectives. In
• Software requirements specijication-The software engineering, a system is a set of software
development of a document that clearly and
programs that provide the cohesiveness and control of
precisely records each of the requirements of
data that enables the system to solve the problem.
the software system
The major difference between system requirements
• Software requirements verijication-The engineering and software requirements engineering is
process of ensuring that the software re- that the origin of system requirements lies in user
quirements specification is in compliance needs while the origin of software requirements lies in
with the system requirements, conforms to the system requirements and/or specifications. There-
document standards of the requirements fore, the system requirements engineer works with
phase, and is an adequate basis for the archi- users and customers, eliciting their needs, schedules,
tectural (preliminary) design phase and available resources, and must produce documents
• Software requirements management-The understandable by them as well as by management,
planning and controlling of the requirements software requirements engineers, and other system
elicitation, specification, analysis, and verifi- requirements engineers.
cation activities The software requirements engineer works with the
system requirements documents and engineers, trans-
Many of the papers in this tutorial directly support lating system documentation into software require-
this model of requirements (see Table 1). ments which must be understandable by management
In turn, system requirements engineering is the and software designers as well as by software and
science and discipline concerned with analyzing and system requirements engineers. Accurate and timely
documenting system requirements. It involves trans- communication must be ensured all along this chain if
forming an operational need into a system description, the software designers are to begin with a valid set of
system performance parameters, and a system configu- requirements.
1
Table 1: Mode lfor Software Requirements Engineering
Requirements Verification D.R. Wallace and L.M . Ippo lito. " Verifying and Validating Software Requ ire ment s
Speci ficati ons "
J.D . Palmer. 'T raceability"
A. Davis ct aI., "Identifying and Measuring Quality in a Software Requirements
Specification"
Requirements Management R.T. Yeh and P.A. Ng, "So ftware Requirements- A Manage ment Perspective"