记录该书的第二部分:需求获取
需求获取即进行需求收集的一个活动,它从人员、资料、环境中得到系统开发所需要的相关信息。需求获取中存在困难,常见的困难有用户和开发人员的背景不同,立场不同(知识理解的困难,默认的知识现象),普通用户缺乏概括性、综合性的表述能力、用户存在认知困境、用户越俎代庖、缺乏用户参与(用户数量多,选择困难、用户认识不足,不愿参与、用户情绪抵制,消极参与、没有明确用户);
在需求获取活动中,实质步骤是1、确定带获取信息的内容2、确定带获取信息的来源3、确定应采用的获取方法4、执行获取5、记录成果,并且需求工程需要获取的内容主要有三种1、需求2、问题域描述3、环境与约束,在获取信息的过程中要注意在整体上制定组织方案,注意维护项目的前景和范围,注意接受需求的不稳定性,注意控制探索性工作等等,这些都是需要注意的。
获取信息的方法:(1)传统方法。传统方法开发使用的很多数据收集机制均数此类,它们在现在的需求获取中仍然起着非常基础的作用。(2)集体获取方法。该类方法将很多涉众集中在一起,通过与涉众的讨论发现需求,并在讨论中达成需求的一直,同时它还可以有效的利用时间。(3)原型。该类方法在系统的很多开发阶段都起着很重要的作用,其中包括需求获取。(4)模型驱动方法。该类方法都有一个定义方式确定了所有需要收集的信息类型,模型建立和完善的过程就是进行需求获取的过程。(5)认知方法。该方法起源于知识系统中的知识获取方法,以认知的方式获取用户无法表达的潜在知识。(6)基于上下文的方法。该方法更加注重用户在一定环境下表现出来的行为,通过分析用户的行为得到信息。在开展需求活动时,要注意以下事项:(1)在整体上制定组织方案(2)维护项目的前景和范围(3)接受需求的不稳定性(4)控制探索性工作。在实践中的需求获取活动主要关注的是项目目标、项目范围、用户参与、交流问题、获取方法的使用。在需求获取的信息内容(需求、问题域描述、环境与约束)中,问题域描述、环境和约束有很多的渠道来源,但是需求却基本都是来自于涉众,尤其是用户。所以,用户的参与对需求获取的成功具有举足轻重的作用。