需求分析考试重点答案汇总.docx
《需求分析考试重点答案汇总.docx》由会员分享,可在线阅读,更多相关《需求分析考试重点答案汇总.docx(13页珍藏版)》请在冰豆网上搜索。
需求分析考试重点答案汇总
第一章
3.需求分析与需求工程之间的关系
那就是需求工程含义更广,包括需求获取、需求分析、需求定义
5.需求工程包含的活动?
为什么重视需求工程?
需求工程包含需求开发和需求管理,而需求开发又包括需求获取、需求分析、需求规格说明、需求验证。
因为计算机应用于现实世界的广泛性,所以软件工程师的工作也具有行业上的广泛性,但是软件工程师不可能了解所有的领域,所以常常需要将工作中的很大一部分用来定义问题,然后再为其设计解决方案,定义问题就是需求工程的任务,开发软件系统最困难的部分就是准确说明开发什么,最为困难的概念性工作便是编写详细技术需求,这包括所有面向用户,面向机器和其他软件系统的接口,同时这也是一旦有错,最终将给系统带来极大损害的部分,并且以后要对他进行修改也极为困难。
第二章
3.解释下列名词,需求,规格说明,问题域特性和约束,并结合他们的含义说明需求工程的主要任务是什么?
需求是用户对问题域中的实体状态或事件的期望描述
规格说明:
规格说明是解系统为满足用户需求而提供的解决方案,规定了解系统的行为特征。
问题域的特性:
在和解系统相互影响的同时,问题域是自治的,它有自己的运行规律,而且这些规律不会因解系统的引入而发生改变,这种自治的规律性称为问题域特性,当这些特性非常明确时称之为约束。
需求工程的主要任务:
1.需求工程必须说明软件系统将应用的环境及目标,说明用来达成这些目标的软件功能,还要说明在设计和实现这些功能时上下文环境对软件完成任务所用的方式、方法所施加的限制和约束。
2需求工程必须将目标、功能和约束反映到软件系统中,映射为可行的软件行为,并对软件行为进行准确的规格说明。
3需求工程还要妥善处理目标、功能和约束随着时间的演化情况。
1、进行需求开发,确定用户的期望效果R
2、研究问题背景,描述问题域特性E
3、构建解系统,描述解系统行为S,使得E,S->R。
5.业务需求、用户需求、系统需求之间的区别与联系?
业务需求:
描述了组织为什么要开发系统,通常来自项目的投资人,购买产品的顾客,实际用户的管理者,市场营销部门等。
用户需求:
就是执行实际工作的用户对系用所能完成的具体任务的期望,描述了系统能够为用户做些什么,主要来自系统的使用者——用户。
系统需求:
一系列系统需求联系在一起可以帮助用户完成任务,达成用户需求,进而满足业务需求。
联系:
业务需求->指导需求获取->用户需求->转化为系统需求
第三章:
一、.需求工程过程的工作基础(即输入)存在哪些?
他的工作成果(即输出)有哪些?
?
答:
需求过程的工作基础是获取用户面临的业务问题,用户期望系统表现出来的各种行为,即需求获取
工作成果:
产生一个能够在用户环境下解决用户业务问题的系统方案,并将其文档化为明确的规格说明。
二.、描述需求工程的各个活动,说明他们各自的工作基础,工作目标和工作成果需求获取:
工作基础:
1.收集背景资料2.定义项目前景和范围3.选择信息的来源4.选择获取方法,执行获取5.记录获取结果
工作目标:
获取用户需求,了解用户在完成任务的时候遇到的问题与期望
工作成果:
业务需求,项目的前景和范围,用户需求以及问题域的特征
需求分析:
工作基础:
1背景分析2.确定系统边界3.需求建模
4.需求细化5.确定优先权6.需求协商
工作目标:
1.通过建模整合各种信息,是人们更好地理解问题
2.定义一个需求集合,能够为问题界定一个游戏的解决方案
工作成果:
产生一个需求的基线集,它指定了系统或当前版本的系统开发需完成的任务
3.需求规格说明:
工作基础1.定制文档模板2.编写文档
工作目标:
为了系统涉众之间交流需求信息
工作成果:
需求规格文档说明
4.需求验证
工作基础1.执行验证2问题修改
工作目标:
为了尽量不给设计实现测试后续开发活动带来不必要的影响。
需求规格说明文档定义必须正确准确地反映用户的意图
工作成果:
验证之后,问题得以修正
需求管理:
工作基础:
1.建立和维护需求基线集2.建立需求跟踪信息3进行变更控制
工作目标:
保证需求作用的持续稳定和有效发挥
工作成果:
需求管理会进变更控制和实现合理的变更请求
拒绝不合理的变更请求,控制变更的成本和影响范围
第四章
3.用户参与不足的原因及解决办法
1,用户数量太多,选择困难。
2,用户认识不足,不愿参与。
3,用户情绪抵制,消极参与。
4,没有明确的用户。
解决办法:
要求开发者在进行需求获取时,能够对系统的用户以及用户的替代源等相关涉众进行分析,了解他们的特征、类别、任务、取向等,并在需求获取时采取对策避免用户参与不足现象的发生。
4.需求获取的内容是什么?
1,需求。
2,问题域描述。
3,环境与约束。
5.需求获取的来源?
1,涉众。
2,硬数据。
3,相关产品。
4,重要文档。
5,相关技术标准和法规。
6.需求获取的常见方法?
1,传统方法,包括问卷调查,面谈,文档分析,文档检查,需求剥离。
2,集体获取方法,常见的有头脑风暴,专题讨论会,jad,jrp。
3,原型。
4,模型驱动方法,有面向目标的方法,基于场景的方法,基于用例的方法。
5,认知方法,常见的有任务分析、协议分析。
6,基于上下文的方法,常见的有观察、民族志和话语分析。
第五章
4.完成前景和业务范围定义所需要执行的任务?
1,明确问题。
2,发现业务需求。
3,定义解决方案及系统特性。
案例题:
1.你被任命为替换学生财务资助项目的项目经理。
你想开发一个工作陈述来定义范围并降低范围蔓延的风险。
财务资助部门的主管坚持要你15个月、600000美元的预算内替换他现有的系统就可以了。
他说这就是你需要知道的全部,不需要浪费时间开发一个工作陈述了。
省略工作陈述的风险是什么?
你将如何说服主管?
解答:
省略工作陈述的风险是不能明确项目的前景和范围。
如果省略了工作陈述的话,我们就不能和用户进行很好的沟通与交流,这样,项目的问题也就不能明确,开发人员无法与涉众对问题达成共识;无法明确问题,也就无法发现正确的业务需求,无法定义良好的解决方案及系统特性,继而无法明确项目的前景和范围,这样就会造成项目的不稳定甚至失败!
2.Lisa问题的解答:
问题:
1、每个月的账户多,任务量大;
2、历史记录不明确,需要重新查找,效率较低;
3、报告中没有账户的所占比例。
达成的业务目标:
1、减少工作量;
2、明确三年内的历史记录
3、可以计算报告中的账户的比例,并明确的显示。
高层解决方案:
1、能够快速的查询并分析账户,找出其中的过期未付款账户;
2、通过软件可以查寻任意一个账户近三年的历史记录;
3、自动计算出问题账户的比例,并显示出来。
系统特性:
1、存储所有账户的近三年内的数据信息;
2、设定特定的判定条件以保证完成所需的操作;
3、维护系统和现有系统的兼容性,以保证能够正确的显示问题
账号的比例。
3.
4.假设现在需要你来开发一个软件,解决职工福利和工资顾问的问题。
那么你认为她现在遇到的问题有哪些?
你希望新的软件应该达成哪些业务目标?
你怎样设计软件的高层解决方案和系统特性?
解决方案有哪些重要的约束?
解答:
她现在遇到的问题有:
(1)不能有效地从信息部门获得工资和个人数据;
(2)雇员数据太过分散,而且不能及时正确地更新;
(3)计算复杂;
(4)雇员信息不能得到及时有效正确的更新;
(5)计算中可变条件的复杂性。
新的软件应该达到的业务目标有:
(1)减少从信息部门获得工资和个人数据的时间;
度量标准(Scale):
一次从信息部门获得工资和个人数据的时间;
计量方法(Meter):
检查信息部门数据库日志;
理想标准:
减少50%;一般标准:
减少30%;最低标准:
减少20%;
(2)
(3)
(4)
(5)集中雇员数据,并且正确更新;降低计算的复杂性;及时有效正确地更新雇员信息;降低计算中可变条件的复杂性。
软件的高层解决方案和系统特性:
(1)高层解决方案:
由软件从信息部门的数据库中检索出工资和个人数据,减少所需信息获取的
时间;
由软件来分析雇员数据的各种特征,及早识别出数据所在位置;或由软件集
中处理雇员数据,及早识别出不准确的或没有及时更新的数据,提交人工处
理或自行更新;
由软件来处理投资和退休假定的计算的复杂过程;
由软件来分析个人数据的准确性,及早识别出不准确的个人信息,提交人工
处理;或定时更新数,提高数据的准确性;
由软件来处理计算中可变条件的复杂性,降低出错率。
(2)系统特性:
根据信息部门提供的数据库查询工资和个人数据;
根据原始数据重新整理数据并更新;
提交查询信息;
创建投资和退休假定的计算过程;
通过公司的内联网访问系统,根据个人情况更新信息;
模拟计算中可变条件的变化;
提供最灵活的福利方案。
第六章
1.什么是涉众?
所有对软件系统的开发和应用具有发言权和决定权的人统称为涉众。
软件系统中常见的涉众类别有用户、客户、开发者、管理者、领域专家、政府力量、市场力量。
4.涉众分析的活动有哪些?
它们的工作基础,工作目标和工作成果分别是什么?
涉众识别、涉众描述、涉众评估、涉众选择。
案例题:
2.说明缺乏涉众的危害性,说服他。
3.于此事的决策可能将由IS部门的上层决定。
你认为此事应该如何处理?
解答:
首先,需要细分涉众类别,这里用户,需求工程师和程序员都属于涉众类别。
需要分析他们各自的赢利条件,以在相互妥协中尽力实现一个共赢的结局。
分析涉众的关注点和兴趣取向。
了解涉众的个人特征和工作特征,以便对软件系统的功能进行合理的调整。
选择合适的代表参与项目的开发。
定期举行讨论会,让用户知道项目的进展情况。
优先级评估,风险评估,共赢分析…
4.
5.选项描述可能造成的风险:
个人特征、工作特征、地理和社会特征、关注点和兴趣、目标期望、被影响程度、力量程度。
解答:
涉众个人特征和工作特征的描述可以帮助更好的确定功能需求;
涉众的输赢条件和受影响程度可以帮助解决涉众之间的需求冲突;
涉众的重要性、影响力、关注点和兴趣取向可以用来发现项目的潜在风险;
6.PhilIttup是系统分析员团队中的一员,他受委任去与组织成员面谈,为系统研究收集材
料。
企业称为FallBack工业,它有5个管理层。
此外,生产、会计、营销、系统、物流和高层管理是将受到所建议的系统影响的职能区域。
每个阶层大约有40人。
生产层共有80人,会计层有35人,营销层有42人,系统层有10人,物流层有28人。
高层管理有5人。
Phil应该怎样选择面谈对象?
为什么?
解答:
(1)选择面谈对象的时候采用随机抽样,从5个阶层以及生产、会计、营销、系统、
物流各选择2-3名客户参与面谈。
高层管理均要参加面谈。
因为在选择面谈的时候要力争均衡的收集用户的需求,因此要涉及各方面受系统影响的人。
采样的规则:
控制人数(4~8),教材上册,P87
(2)高层管理的人最先面谈。
然后是系统层。
其余层的面谈对象根据实际情况可以先
后安排面谈的时间,不一定要分先后顺序。
跟高层管理人员进行面谈,采用漏斗结构,因为各个高层管理人员对各自管理
的层次从大体上有准确的把握,有助于开发人员首先获取对项目的广度方面的认识,也能获取一些较为详细的信息。
跟具体部门人员进行面谈,采用菱形(必要时,金字塔)结构,因为这种面谈较为具体,问题常为封闭式问题,这样有助于分析人员获得深度认识。
基本规则:
(1)先业务需求,后用户需求,所以先领导后普通;
(2)开始漏斗,领导漏斗
(3)普通用户菱形,必要时金字塔
面谈的结构及其特点:
教材上册,P96
7.Maverick公司是一家有15年历史的国内货物运输公司,假设你的小组担当Maverick公
司的系统分析与设计团队,为Maverick公司的所有业务设计一个计算机化或者增强设计计算机化的项目。
Maverick主要进行卡车零运,管理人员按照实时处理(JustInTime)原则工作。
在这个原则指导下,他们建立了包括发货人、收货人和承运公司的伙伴关系,目的是准时运输和交付生产线上需要的材料。
Maverick主张用626台拖拉机拖运货物,它拥有45000平方英尺的仓库和21000平方英尺的办公场地。
1)制定分析Maverick公司的信息需求时,应当收集的硬数据列表。
(提示:
想像一下
该公司要开展的工作,应该会有哪些登记表格)。
2)设计一种采样机制,使得小组在不必查看这家公司15年来产生的所有文档的情况
下,形成对该公司的清晰认识。
~7~
解答:
(1)描述发货人、收货人和承运公司的伙伴关系的表
发货及收货的时间表
货物的中转表
拖拉机和仓库的使用情况表
参考硬数据的类型:
教材上册,P89
(2)将这15年公司的情况用图表表达出来,形成对15年以来公司状况的认识,获取
生产情况的时候将大致相同的年份列出来,采样时候只需要在大致相同的年份中抽取一份作为样本。
参考采样规则:
教材上册,P90
第七章
3.开放式问题有何优缺点?
面谈时何时提开放式问题?
优点:
1,让被会见者感到自在。
2,会见者可以收集被会见者使用的词汇,这能反映他的教育、价值标准、态度和信念。
3,提供丰富的细节。
4,对没采用的进一步的提问有启迪作用。
5,让被会见者更感兴趣。
6,容许更多的自发性。
7,会见者可以在没有太多准备的情况下进行面谈。
缺点:
1,提此类问题时可能会产生太多不相干的细节。
2,面谈可能失控。
3,开放式的回答会花费大量的时间才能获得有用的信息。
4,可能会使会见者看上去没有准备。
在会见者对事实和问题的掌握比较有限,希望被会见者能够提供丰富信息的时候,可以使用开放性问题。
4.封闭式问题?
优点:
1,节省时间。
2,切中要点。
3,保持对面谈的控制。
4,快速探讨大范围问题。
5,得到贴切的数据。
缺点:
1,使得被会见者厌烦。
2,得不到丰富的细节。
3,出于上述原因,失去主要思想。
4,不能建立和面谈者的友好关系。
在会见者对事实和问题的范围比较确定,只是希望被会见者进行选择和确认时,可以使用封闭式问题。
第8章
一、原型的定义
原型是一个系统,他内化了一个更迟系统的本质特征。
二、说明原型在需求获取中的作用和试用情景
因为原型是在最终系统产生之前的一个局部真实表现,所以原型方法可以让人们在系统的开发过程中,就能对一些具体问题进行基于事物有效沟通,从而帮助人们今早解决软件开发过程中存在的各种不确定性。
场景:
产品以前从未存在过,而且难以可视化,这些产品属于创新产品,他们的基本需求是潜在的,有很大的不确定性
产品的用户对相关类别的产品没有经验,而且对将要采用的技术也没有经验。
此时用户无法明确工作的具体细节,产品的细节需求存在着不确定性
用户进行自己的工作已经有一段时间了,但在完成工作的方式上依然存在障碍。
用户清晰说明他们的需求方面存在困难。
在澄清和理解之前,这些需求存在着不确定性
需求的可行性值的怀疑,即具体需求的可满足性存在着不确定性
案例题:
5.
1,原型的目的,原型是为了在最终物件之前,避免特殊性,不是为了投入使用,也不是为了不修改。
2,花费大力气在原型上,时间花费过大。
6.
1,原型的目的是尽早解决系统中的不确定性,拖延原型的完成对系统最终的完成没有任何好处。
2,时间、成本、一些看似实现的功能。
3,确定的需求不要开发原型、整体使用原型开发、使用成本低的静态原型方法。
第9章
第10章
10.用例文档的内容是什么?
作用是什么?
将系统的所有用例都进行文档化,产生的结果被称为用例文档,它是进行项目交流的有效途径。
用例文档通常被用来代替用户需求文档,起到记录,交流领域信息和用户期望的作用。
内容包括1,文档信息。
2,用例图或者用例列表。
3,用例描述。
第十一章
1.需求分析的根本任务是什么?
获取结果(用户的理解,问题的描述)->需求分析(建立分析模型,创建解决方案)->需求开发目标(共同的理解,解决方案的描述)
2.什么是系统模型,他与需求分析和系统设计有什么关系?
系统模型是指以某种确定的形式(如文字、符号、图表、实物、数学公式等),对系统某一方面本质属性的描述。
。
需求分析是挖掘和整理知识的过程,它在已掌握知识的基础上进行。
初步捕获到的需求信息往往处于不同层次,也有一些主观甚至不正确的信息。
而经过必要的需求分析工作之后,需求会更加系统、更加有条理、更加全面。
那么系统分析呢?
如果说,需求分析致力于搞清楚软件系统要“做什么”的话,那么系统分析已经涉及“怎么做”的问题了。
需求捕获、需求分析以及系统分析之间的关系我们必须理解透彻,否则就会影响工作的有效性进行。
同样,在实践中,需求分析和系统分析也常常被混淆。
需求分析致力与搞清软件系统要“做什么”,而系统分析更关注“怎么做”的问题,比如大多数分析方法(如OOA)应该术语系统分析的范畴。
5.结构化分析与信息工程的区别?
信息工程方法是对结构化方法的一种改进。
信息工程主要从信息角度来开发系统,而不像结构化方法那样从功能角度去看待问题。
信息系统是为信息系统的开发定制的,所以有局限性,应用范围是有限的。
信息系统思路向数据建模上转移,建立了功能分解图和过程依赖图两种技术。
数据流图DFD,实体联系图ERD
7.需求分析阶段需要执行哪些活动?
1,问题分析。
2,确定系统边界。
3,需求建模。
4,需求细化。
5,确定需求优先级。
6,需求协商。
第12章:
1.DFD的基本元素有哪些?
外部实体、过程、数据流。
第13章
2.