快捷搜索:  xxx  as  1111


4 Issues in Requirements Elicitation


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.

需求捕获不象是拔牙…但也对照类似。常见的问题是,软件工程师短缺筹备,同时必要该产品的组织或小我短缺兴趣。一样平常大年夜家都邑觉得客户会对产品很感兴趣,由于该产品会办理客户面临的问题。但平日客户盼望开拓职员已经知道相关常识或不乐意消费光阴为软件产品供给根基材料。无疑,这些不雅点是差错的 ,然则客不雅存在的。可以应用需求捕获列表来验证你的项目在需求捕获方面进展若何。在这个列表中,越多问题的谜底是否定的,那么需求捕获掉败的可能性就越高。

Requirements engineering consists of activities like requirements elicitation, specification and validation.


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.


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 over time





Many requirements errors are passed undetected to the later stages of the life cycle and correcting those errors during or after implementation phase is found to be extremely costly.


Problems of RE can be grouped into three categories:。 Problems of scope, in which requirements may address too little or too much information。 Problems of understanding o Users have incomplete understanding of their needs o Analysts have poor knowledge of problem domain o Ease of omitting “obvious” information o Conflicting views of different users o Vague and un-testable requirements e.g. “user friendly” & “robust”

Problems of volatility i.e. changing/evolving nature of requirements






Elicitation techniques need to be broad enough to establish the boundary conditions for the target system, and yet focus on creation of requirements as opposed to design activities. RE must begin with an organizational and contextual analysis to determine the objectives and boundary of the target system. Avoiding contextual issues may result in incomplete, unusable and un-verifiable requirements.


Elicitation must focus on creation of requirements, not design activities in order to adequately address the users‘ concerns. Focus on broader design activities improperly emphasizes developers’ issues over users‘ needs and may result in poor requirements. Requirements in the form of high-level design run the risk of being un-verifiable by the user, as user might not understand the design language. There are at least three broad contexts concerned to RE:


Organization o Submitters of the input to the target system o Users of the output of target system o Ways in which target system will change the organization’s means of doing business


Environment o Hardware and software constraints imposed on the target system o Maturity of target system‘s domain o Certainty of the target system’s interfaces to the larger system o The target system‘s role within a larger system





Project o Attributes of different stakeholders e.g. management style, domain/computer experience o Constraints imposed e.g. cost, quality, timelines, etc.



5 Requirements Elicitation Process


Following process graph shows the “should-be” RE process, which was created during a sample requirements elicitation process study. This gives a bird‘s eye view of the proposed business process model, which is a refined RE process.