在后续的生命周期中,减少需求变更的可能性。
减少由于需求造成的软件缺陷。
提高客户满意度。
2 Objective
2目的
Requirements elicitation (RE) is the base building block for a software project and has very high impact on subsequent design and build phases as well. If done properly, RE can help in reducing requirement changes and rework. Additionally the quality of requirements elicitation decides the correctness of customer‘s feedback on completeness and validity of requirements. Due to the criticality and impact of this phase, it is very important to perform the requirements elicitation is performed in no less than a perfect manner.
需求捕获是软件项目的基础部分,对后继的分析设计及开发实施有重大影响。如果做的好,会减少需求变更和返工。此外,需求捕获过程的质量也将决定客户对需求的完整性、正确性的认可。因为这个阶段的困难性和影响力,按一个理想的模式来完成需求捕获过程就非常重要。
The main purpose of this document is to aid the Requirements Elicitation in a software development life cycle. These guidelines are compiled based on the learning from the previous RE assignments and best practices of RE in the industry.
这份文档的主要目的是帮助增强软件开发生命周期中的需求捕获过程。对以前实际的需求捕获任务和行业中需求捕获的最佳实践进行研究后,汇编了这份指南。
The guidelines in this document will only aid in eliciting of requirements. For analysis and modelling of requirements, methodologies such as Influx, Rational Unified Process should be used.
这份文档中的指导方针只是有助于捕获需求。而对于分析和建立需求模型,将采用Influx或RUP这样的方法论。
3 Requirements Elicitation in Software Engineering
3软件工程中的需求捕获
Requirements engineering consists of activities like requirements elicitation, specification and validation.
需求工程包括的活动有需求捕获,需求定义和需求验证。
A requirement is a “function” or characteristic of a system that is necessary… the quantifiable and verifiable behaviours that a system must possess and the constraints t