软件需求工程R 第三、四章

第三章 需求工程过程
1.需求分析的目的是保证需求的(完整性和一致性)。
2.系统需求开发的结果最终会写入( 系统需求规格说明)。
3.比较容易发现的涉众称为初始涉众,又称为( 涉众基线),通常包括客户、管理者和相关的投资者。
4.( 统计报表)属于定量硬数据。
5.需求分析活动的一个重要任务是进行( 需求细化),明确用户需求的隐含信息,展开为明确的对软件系统的行为期望,即系统需求。
6.项目的前景和范围文档、用户需求文档都被视为属于( 用户文档),重点都是用户的现实世界。
7.系统需求规格说明文档、软件需求规格说明文档、硬件需求规格说明文档、接口需求规格说明文档和人机交互文档一起被用于系统开发的目的,都被认为是(开发文档)。
8.( 销售商)不是需求规格说明文档的读者。
9.需求工程过程实践方法是需求工程(工作方式与行为方法)。
10.需求开发过程包括需求获取、需求分析、需求规格说明及(需求验证)。
11.传统的需求分析方法都是从设计领域转入分析领域的。
12.需求工程是所有需求处理活动的总和,它收集信息、分析问题、整合观点、记录需 求并验证其正确性,终反映软件被应用后与其环境互动形成的期望效应。
13.软件需求开发用来确定系统需求中应该由软件满足的部分,将其映射为软件行为,产生软件需求规格说明。
14.优秀的需求应该具备 7 个特性,即完整性、正确性、精确性、可行性、必要性、无歧义和可验证。
15.所有对软件系统的开发和应用具有发言权和决定权的人统称为涉众。
16.在需求工程中,主要产生三类重要的文档:项目前景和范围文档、用户需求文档以及需求规格说明。
17.需求获取得到的信息和需求开发应该建立的软件系统解决方案之间有着很大的差距。需求分析就是用来解决这个差距的需求工程活动。
18.需求分析的根本任务是:建立分析模型并创建解决方案。
19.需求协商活动既包括对目标冲突的处理,也包括对需求细节冲突的处理。
20.【判断题】需求验证是需求工程中最后一个活动。×
21.【判断题】软件系统能够与问题域进行交互和相互影响的原因在于,软件系统中的某些部分对问题域中的某些部分具有模拟特性。√
22.【判断题】规格说明是问题域为满足用户需求而提供的解决方案,规定了解系统的行为特征。×
23.【判断题】业务需求具有明显的目的性和较高的抽象性,经过明确和细化的处理,可以直接转化为系统需求。×
24.【判断题】需求开发的一些特性决定了需求开发过程只能是一个简单的线性增量过程。×
25.【判断题】对于需求不确定性比较小的项目,用户参与可以取得比较好的效果,但对于需求不确定性比较大的项目,用户参与反而可能带来阻碍作用。×
26.【判断题】如果选择的开发方法是实验式或者探索式开发方法,应该尽量花费最小的代价,争取最快的速度,忽略或简化不重要的功能处理。×
27.【判断题】由于文档是来自于当前计算机或手工系统的产物,因此它是正确的,也正是客户所需要的。×
28.【判断题】对系统的现状和背景进行分析往往能够发现重要的目标,得到一些明确的问题和缺陷,它们的反面就是系统需要实现的目标。√
29.【判断题】软件需求规格说明文档是对部分系统功能分配给软件部分的详细描述。×
30.【名词解释】基线
基线是软件工程活动从一个环节转入另外一个环节时对阶段产品或组件的标识。因为软件规模的膨胀和分工的细化,软件开发过程变得越来越复杂,每个阶段可能由不同类型的角色和人员来完成,因此有必要清晰标识上一阶段完成的成果和下阶段开始工作的基础。这种标识活动就是建立基线。
31.【名词解释】需求基线
需求基线是被明确和固定的需求集合,是项目团队的需要在某一特定产品版本中实现的特征和需求集合。
第四章 需求获取概述
用户潜在知识的解决:

1.应用民族志方法,分析用户的环境和行为,挖掘用户的潜在知识;
2.在有限理解的基础上设计初始原型,然后结合用户的反馈逐步修正解决方案,逐步接近用户的真实意图;
3.选择主动“创造”需求,为每个潜在的可能情况都创造可选需求,并为其设计相应的解决方案,然后分析用户对方案的反馈,确定合理的需求,其实质为原型法。
需求获取的来源:

1.涉众
 用户
 客户
 领域专家
 市场人员、
 销售人员等
 其他用户替代源
2.相关产品
 原有系统
 竞争产品
 协作产品
 和解系统存在接口的
 其他软件系统
3.硬数据
 登记表格、单据、报表等定量文档
 备忘录、日志等定性文档
4.重要文档
 原有系统的规格说明
 竞争产品的规格说明
 协作产品的规格说明
 客户的需求文档(委托开发的规格说明、招标书)
5.相关技术标准和法规
 相关法律、法规及规章制度
 行业规范、行业标准
需求获取的方法:

1.传统方法
 传统方法在需求获取中起着基础的作用。
 问卷调查、面谈、硬数据分析、文档检查、需求剥离等
2.集体获取方法
 将很多涉众有机、有效组织在一起,通过讨论发现需求
 头脑风暴(Brainstorming)发挥各自的聪明才智及想象力
 专题讨论会(Workshop)主题要明确,有目的、计划组织领域专家及有关人员参加
 JAD联合应用开发、JRP联合需求计划等
3.原型
 在需求模糊和不确定性的情况下,可利用原型方法使问题清晰、明确和有效。原型方法在此阶段起着重要的作用。
 原型方法:如低保真、高保真等原型
4.模型驱动方法
 首先定义一个明确的模型,模型定义了所要收集的信息类型。
 模型建立和完善的过程就是进行需求获取的过程。
 面向目标的方法(goal-oriented methods)
 基于场景的方法(scenario-based methods)
 基于用例的方法(use case-based methods)
5.认知方法
 知识获取:获取被开发系统领域的相关知识及背景知识
 潜在的知识:以认知的方式获取用户无法表达的知识
 任务分析(Task Analysis)
 协议分析(Protocol Analysis)等
6.基于上下文的方法
重视用户在一定环境下表现出来的行为,通过分析用户行为得到信息。常用的方法有:
 观察:利用需求工程师们所具备的知识,发挥其洞察力的能力
 民族志(Ethnography),开会集中、主题讨论、举手表决等形式。
 话语分析(Conversation Analysis),分析领域专家及专业涉众等有关提出的问题和解决方案等

1.获取活动当中,其实质步骤主要是以下几点:确定待获取的内容,确定待获取信息的来源,确定应采取的获取方法,执行获取,记录成果。
2.需求工程需要获取的内容主要有:需求,问题域描述,环境与约束。
3.需求获取的来源:涉众,相关产品,硬数据,重要文档,相关技术标准和法规。
4.需求获取的方法有:面谈,调查问卷,原型,观察和文档分析。
5.【判断题】需求获取就是进行需求收集的一个活动,它从人员、资料和环境中得到系统开发所需求的相关信息。√

你可能感兴趣的:(#,需求工程,需求分析)