Академический Документы
Профессиональный Документы
Культура Документы
Techniques
Abstract Requirements validation ensures that the 1998 which provides guidelines for documenting
software requirements specification contains complete and software requirements specification.
consistent set of requirements which are according to the
customer needs. This paper provides overview of The requirements for the system are subject to change
requirements validation techniques like requirements due to changing stakeholders needs, changes in
inspections, requirements prototyping, requirements testing environment, change in laws and business plan [1].
and viewpoint-oriented requirements validation. This paper Therefore requirements management facilitates to manage
highlights pros and cons of these requirements validation the changes to the system [1].
techniques. In requirements testing special attention is given
to TCD inspections.
The requirement validation process ensures that the
requirements in software requirements specification are
consistent and complete [1]. The requirements validation
1. INTRODUCTION process attempts to identify the errors in software
requirements specification (SRS) before it is used as a
basis for further system development [1].
According to Sommerville and Kotonya requirements
engineering covers all activities involved in discovering, The final phase of requirements engineering is
documenting and maintaining a set of requirements for requirements validation. Requirements validation
computer based systems [1]. Requirements engineering is identifies the ambiguous requirements and resolves
based on requirements engineering process. requirement conflicts.
Requirements engineering process is a structured set According to [3] 56 percent of all the bugs in software
of activities which are carried out to derive, validate and projects are due to the bugs inserted in the requirements
maintain requirements documents [1]. Requirements phase as shown in Figure 1. Half of these bugs are due to
engineering process is divided into five categories or the incomplete and ambiguous requirements and the other
process activities namely requirements elicitation, half are due to the requirements that are omitted. The cost
requirements analysis & negotiation, requirements of fixing a bug is less in requirements engineering phase
specification, requirements management and requirements because few deliverables have been delivered at this
validation. phase.
In the process of requirements elicitation requirements
engineers discover user requirements from domain
knowledge, system documents and market studies [1].
Requirements engineers usually conduct interviews with
stakeholders or customers to articulate their needs.
During this phase requirements are analyzed in detail
and stakeholders negotiate to decide set of agreed
requirements for the proposed system [1]. This process
helps to resolve conflicts among system stakeholders due
to incomplete information or requirements incompatibility
within the available budget [1].
The agreed requirements are documented in
requirements specification document. This document is
also known as software requirements specification (SRS).
IEEE has defined a standard known as IEEE Std 830- FIGURE 1. DISTRIBUTION OF BUGS [3]
2. RESEARCH QUESTIONS 6. REQUIREMENTS INSPECTIONS
Following research questions will be answered during Inspections were introduced by Fagan in 1976 and
this study on requirements validation. they are considered to be the powerful technique to detect
errors [10]. Literature evidence indicates that 50-90 % of
What are the problems with requirements validation in
defects can be caught using inspections [9]. CMMI and
general?
ISO / IEC 15504 also recommend inspections as a part of
What are various requirements validation techniques development process [11], [12].
proposed in literature?
In requirements inspection process we use inspections
What are the benefits and problems with requirements to detect incomplete or ambiguous requirements in
validation techniques? software requirements specification (SRS).
What is the importance in selection of a particular
requirements validation technique in software
development projects? a. Requirements inspection process
10. DISCUSSION
The area of requirements validation has opened a new [9] O. Laitenberger, T. Beil, T. Schwinn, "An industrial case
horizon for researchers to explore. This will enable study to examine a non-traditional inspection implementation
companies to adopt techniques and develop systems for requirements specifications," presented at Proceedings of the
according to stakeholders needs in cost effective way. In Eighth IEEE Symposium on Software Metrics, Los Alamitos
order to solve the problems with requirements validation CA, 2002.
application of strategy for requirements validation is
required. Requirements prototyping can be easily used by [10] M. E. Fagan, "Design and Code Inspection to Reduce
both small and big companies. While requirements Errors in Program Development," IBM Systems Journal, vol. 15,
1976, pp. 182-211.
inspections and requirements testing are suitable for large
companies as they are performed in teams. On the other
[11] CMMI-PDT, "Capability Maturity Model Integration
hand there is not much research work done in viewpoint- (CMMI), Version 1.1," in CMMI for Systems Engineering,
oriented requirements validation. But viewpoint-oriented Software Engineering, Integrated Product and Process
requirements validation provides possibility to identify Development, and Supplier Sourcing Version 1.1 (CMMI-
conflicting requirements based on viewpoints of various SE/SW/IPPD/SS, V1.1). Pittsburgh, 2002.
stakeholders. These requirements validation techniques
will help to detect errors before they move on to the other [12] ISO/IEC, "Software Process Assessment TR 15504:1998,"
phase of software development life cycle and become vol. 2004. http://www.sei.cmu.edu/iso-15504/ : ISO/IEC, 1998.
amplified.
[13] Tony Gorschek, Nina Dzamashvili Fogelstrm, Test-
13. REFERENCES. case Driven Inspection of Pre-project Requirements-Process
Proposal and Industry Experience Report, in proceedings of the
Requirements Engineering Decision Support Workshop held in
[1] Gerald Kotonya, Ian Sommerville, Requirements conjunction with the 13th IEEE International Conference on
Engineering, John Wiley & Sons, New York, 1998. Requirements Engineering, 2005.
[2] Thayer, R. & Dorfman, M. Software Requirements [14] Carolyn B.Seaman, Qualitative Methods in Empirical
Engineering 2nd Edition, IEEE Computer Society Press, Studies of Software Engineering, IEEE transactions on
California, 1997. Software Engineering, Vol 25, No 4, July/August 1999.
[3] Gary E. Mogyorodi, What is Requirements- Based [15] J.C.S.P. Leite, P.A. Freeman, Requirements validation
Testing?, CROSS TALK The Journal of Defence Software through viewpoint resolution, IEEE Transactions on Software
Engineering, March 2003. Engineering, Vol 17, 1991, pp.1253-1269
[4] Oliver Laitenberger, A Survey of Software Inspection [16] Christian W.Dawson, Projects in Computing and
Technologies, Handbook on Software Engineering and Information Systems, Pearson, 2005, ISBN 0321263553.
Knowledge Engineering, Citeseer, 2002.
[17] L.C. Briand, K. El Emam, B.G. Freimut, O. Laitenberger ,
[5] Steven R. Rakitin. Software Verification and Validation for A comprehensive evaluation of capture-recapture models for
Practitioners and Managers, Artech House Publishers, 2nd estimating software defect content, IEEE Transactions on
edition (August 1, 2001). Software Engineering, Vol 26, No 6, 2000, pp. 518-54
[6] Ackerman, A. F., Buchwald, L. S., and Lewsky, F. H., [18] Dot Tudor, George A. Walter, Using an Agile Approach in
Software Inspections: An Effective Verification Process, a Large, Traditional Organization proceedings of agile 2006
IEEE Software, 1989, pp. 31-36. conference, IEEE, 2006
[7] Ian Sommerville, Pete Sawyer, Requirements Engineering,
John Wiley & Sons, New York, 1997.