4 Issues in Requirements Elicitation
4、需求捕獲的問題
Eliciting requirements need not be like pulling teeth … but sometimes it is. The problem is lack of preparation by the software engineer and lack of interest by the organization or person requesting the work. One would think that the customer would be very interested, since the software to be built solves a problem that the customer has. But often, the customer expects the developer to "know" and has little interest in spending time doing "computer stuff." A mistake, no doubt, but reality none the less. One can use the Requirements Elicitation Success Measurement checklist to identify where your project stands as far as the success of the requirements elicitation is concerned. For this checklist, the more questions that elicit a negative response, the higher the risk that the requirements elicitation will fail.
需求捕獲不象是拔牙…但也比較類似。常見的問題是,軟件工程師缺乏準(zhǔn)備,同時(shí)需要該產(chǎn)品的組織或個(gè)人缺乏興趣。一般大家都會(huì)認(rèn)為客戶會(huì)對產(chǎn)品很感興趣,因?yàn)樵摦a(chǎn)品會(huì)解決客戶面臨的問題。但通??蛻粝M_發(fā)人員已經(jīng)知道相關(guān)知識(shí)或不愿意耗費(fèi)時(shí)間為軟件產(chǎn)品提供基礎(chǔ)材料。無疑,這些觀點(diǎn)是錯(cuò)誤的 ,但是客觀存在的??梢允褂眯枨蟛东@列表來驗(yàn)證你的項(xiàng)目在需求捕獲方面進(jìn)展如何。在這個(gè)列表中,越多問題的答案是否定的,那么需求捕獲失敗的可能性就越高。
Requirements engineering consists of activities like requirements elicitation, specification and validation.
需求工程包括的活動(dòng)有需求捕獲,需求定義和需求驗(yàn)證。
The hardest single part of building a software system is deciding what to build… … No other part of the work so cripples the resulting system, if done wrong. No other part is more difficult to rectify later.
開發(fā)軟件系統(tǒng)最艱難的部分在于確定要開發(fā)什么。而這一部分又最可能導(dǎo)致系統(tǒng)的失敗,最難以在后繼的工作中加以矯正。
Issues involved in this problem area include:1. Achieving requirements completeness without unnecessarily constraining the system design 2. Analysis and validation difficulty 3 Changing requirements ov