在后續(xù)的生命周期中,減少需求變更的可能性。
減少由于需求造成的軟件缺陷。
提高客戶滿意度。
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.
需求捕獲是軟件項目的基礎(chǔ)部分,對后繼的分析設(shè)計及開發(fā)實施有重大影響。如果做的好,會減少需求變更和返工。此外,需求捕獲過程的質(zhì)量也將決定客戶對需求的完整性、正確性的認(rèn)可。因為這個階段的困難性和影響力,按一個理想的模式來完成需求捕獲過程就非常重要。
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.
這份文檔的主要目的是幫助增強(qiáng)軟件開發(fā)生命周期中的需求捕獲過程。對以前實際的需求捕獲任務(wù)和行業(yè)中需求捕獲的最佳實踐進(jìn)行研究后,匯編了這份指南。
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.
這份文檔中的指導(dǎo)方針只是有助于捕獲需求。而對于分析和建立需求模型,將采用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