Recommended Requirements Gathering Practices
نویسنده
چکیده
A " requirement " is a necessary attribute in a system, a statement that identifies a capability, characteristic, or quality factor of a system in order for it to have value and utility to a user [1]. According to Steve McConnell in Software Project Survival Guide, " The most difficult part of requirements gathering is not documenting what the users 'want'; it is the effort of helping users figure out what they 'need' that can be successfully provided within the cost and schedule parameters available to the development team. " 1 Each requirement should be necessary, verifiable, attainable, unambiguous, complete , consistent, traceable, concise, implementation free , and have a unique identifier [1]. All of these characteristics of a good requirement should be self-evident, with the possible exception of " implementation-free. " The reason that a requirement should be implementation-free is that requirements specify " what " shall be provided and not " how " – the how is a design aspect rather than a requirement. Documenting the rationale for each requirement (why it is required) is a good technique to reduce the number of requirements. Taking this one step, according to industry requirements consultant Ivy Hooks' experience, can eliminate " up to half " of the stated requirements [2]. Begin by understanding the organiza-tion's " business requirements. " This leads to a " vision and scope " document that describes the background leading to the decision to develop a new or modified system or capability and describes the system to be developed. An agreed upon understanding of the capability is critical to a successful project. Consider having iterative scoping meetings with customers and users. The process of requirements elicitation itself generates more detailed and creative thinking about the problem that in turn can affect the scope. As the possibilities for a solution emerge, there are numerous decision points concerning what should and should not be included within the scope of the system. The next step is to gather the stated requirements of the customers and users of the new capability. An effective requirements practice distinguishes " stated " requirements from " real " requirements [1]. Industry experience has shown that customers and system developers should jointly evaluate stated requirements to ensure that each is a verified need. Part of the requirements process is to prioritize requirements. 2 This is important, because rarely is there enough time and money to …
منابع مشابه
Critical Requirements Engineering Issues & their Solution
The guidelines for Requirements Management have been documented many times formally but the actual problems faced by the software industry are quite different. Through research it is found that most of the software projects fail before they are completed or if they do reach completion their quality is not up to the mark. The aim of this Research study is to identify the loopholes in the require...
متن کاملA Survey of Software Development Practices in the New Zealand Software Industry
We report on the software development techniques used in the New Zealand software industry, paying particular attention to requirements gathering. We surveyed a selection of software companies with a general questionnaire and then conducted in-depth interviews with four companies. Our results show a wide variety in the kinds of companies undertaking software development, employing a wide range ...
متن کاملA Comparison of Questionnaire-Based and GUI-Based Requirements Gathering
Software development includes gathering information about tasks, work practices and design options from users. Traditionally requirements gathering takes two forms. Interviews and Participatory Design (PD) practices gather rich information about the task and the domain but require face-to-face communication between the software engineers and the users. When such communication is not possible tr...
متن کاملSoftware Requirements
This tutorial describes the activities and work products that contribute to the specification and validation of the software requirements of a system. Although requirements practices are closely related to specific software development life cycle models, the general activities described in this paper are common to most process models. The activities of elicitation, analysis, specification, vali...
متن کاملSoftware Security Requirements Gathering Instrument
Security breaches are largely caused by the vulnerable software. Since individuals and organizations mostly depend on softwares, it is important to produce in secured manner. The first step towards producing secured software is through gathering security requirements. This paper describes Software Security Requirements Gathering Instrument (SSRGI) that helps gather security requirements from th...
متن کامل