需求工程小黑指北-习题集(带答案和解析)(下)

《软件需求工程》习题集  

六、案例分析题 

2、   在下面的描述中,辨识参与者(ACTOR)和用例(USE CASE),并画出一个用例图。 

在医生的办公室里,接待员、护士和医生使用病人记录和计划安排系统。当病人第一次来这里看病时,接待员使用该系统来输入病人信息,并且他们安排所有的预约。护士使用系统来跟踪病人每次看病的结果并输入护理病人的信息,如医疗和诊断。护士也可访问这些信息以打印病人诊断结果或病人看病历史。医生主要用这个系统来查看病人的病史,偶尔也输入病人医疗信息,但通常他让护士输入这些信息。  

解答:  

 

3、   从下面的事件中,你可以替 Jeannine 总结出哪些教训?  

投资经理 Jeannine 对一个新的投资跟踪系统具有强烈的需求。她需要做出快速决策来考虑可能进行的投资和撤销投资,耽误一个小时就可能给公司造成几千美元的损失。  

后她放弃了使用公司的信息系统,因为公司的信息系统没有给予她的请求足够高的服务优先级。她找到软件开发商,购买了一套看似可以满足她要求的软件。但高层管理人员不同意使用,而且还遇到了其他一些问题。  

首先,财务审计员重新评估了公司的投资策略和投资政策。Jeannine 并不知道这一点,于是新的系统没有计人正在被考虑的新政策。  

她自己的职员抵制这个系统产生的有关投资和撤销投资的建议。虽然新系统使用了公司信息系统现有的文件结构,但她却发现她的职员两年前就放弃使用那些文件了,因为那些文件没有包括全面分析可选替代投资方案所需的数据。她的职员也批评新系统的设计,说很小的操作错误就会把系统带入“混乱”状态,而且很难恢复过来。  

她的一些下级经理坚持要有图形形式的报告,而新系统无法产生这些报告。  

后的问题是,Jeannine 不能确定新系统是否可以进行适当的修改(数据库结构修改和程序修改)以满足新的需求而不用重写所有的程序。而且她的老板也不能肯定是否会出资请一位顾问来解决这些问题。  

解答:  

(1)她没有仔细认真地分析问题:  

(2)她没有及时跟相关人员交流信息,没能把握住有价值信息:  

(3)她没能及时跟公司员工交流,引用过时的文件结构;  

(4)她没有仔细研究分析新引进的系统的性能需求是否满足:  

(5)她没有仔细研究新引进的系统的功能需求是否满足;  

(6)她没有仔细研究引进的系统的质量属性,对外接口是否满足。  

4、 根据下列描述,说明新的直接销售和财务处理系统的业务需求有哪些?  

Especially for You Jewelers 是大学城的一个小珠宝零售商。在过去的两年里,EspeciaIly for You 在它的商业方面经历了极大的发展,可是,它的财务业绩却与它的发展不同步。现在的事务处理系统部分手动、部分自动,不能有效地追踪客户账单和收据,Especially for

You 难以确定为什么它的成本这么高。此外,Especially for You 频繁地实行特价以吸引顾客。它不知道这些特价是否有利可图,是否带来其他的销售。Especially for You 也想增加回头客,

所以它需要一个客户数据库。Especially for You 想按照一个新的直接销售和财务处理系统以帮助解决这些问题。  

解答:业务需求如 BR。  

  BRl:实现客户账单和收据的有效追踪;  

  BR2:实现产品特价时的利润和相关销售情况检查;  

  BR3:实现一个客户数据库。  

5、   你被任命为替换学生财务资助项目的项目经理。你想开发一个工作陈述来定义项目范围并降低范围蔓延的风险。财务资助部门的主管坚持要你 15 个月、600 000 美元的预算内替换他现有的系统就可以了。他说这就是你需要知道的全部,不需要浪费时间开发一个工作陈述了。省略工作陈述的风险是什么?你将如何说服主管?  

解答:  

省略工作陈述的风险是不能明确项目的前景和范围。如果省略了工作陈述的话,你就不能和用户进行很好的沟通与交流,这样,项目的问题也就不能明确,即,开发人员无法与涉众对问题达成共识;无法明确问题,也就无法发现正确的业务需求,无法定义良好的解决

方案及系统特性,继而无法明确项目的前景和范围,这样就会造成项目的不稳定甚至失败!  

6、   某大银行的一位银行卡办公室的收账经理 Liz 遇到了一个问题。她每周都收到一份过期未付款的账户名单。这份报告已经从两年前的 250 个账户增加到现在的 1 250 个账户。为了确定那些严重拖欠债务的账户,Liz 需要通读这份报告。严重拖欠债务的账户由几个不同的规则确定,每个规则都要求 Liz 检查客户的一项或几项数据。过去半天的工作量现在增加到了每周三天。即使在确定了严重拖欠债务的账户后,如果没有查阅该账户三年内的历史资料,Liz 也不能做出 后的信用决定(例如严厉的催款电话、断绝信用或将这个账户转给一个收账代理)。另外,Liz 需要报告所有账户中过期未付款的、拖欠债务的、严重拖欠债务的和呆死账的比例。目前的报告中并没有给她提供这个信息。  

假设现在需要你来开发一个软件,解决 Liz 面对的难题。那么你认为 Liz 现在遇到的问题有哪些?你希望新的软件应该达成哪些业务目标?你怎样设计软件的高层解决方案和系统特性?  

解答:  

Liz 现在遇到的问题有:  

(1)工作量的增加;  

(2)客户账户的历史数据;  

(3)问题账户所占比例没有显示… 新的软件应该达成的业务目标有:  

(1)能够快速查询客户账户;  

(2)能够分析一个客户是否为问题账户;  

(3)能够给出一个问题账户的三年内的历史数据:  

(4)能够计算问题账户所占比例… 软件的高层解决方案和系统特性:  

(1)建立一个数据库系统用来存放客户账户信息;  

(2)根据特定的判定问题账户的算法检索辨别出问题账户;  

(3)工作人员能够检查该账户的三年内的历史数据;  

(4)即时显示问题账户所占比例…  7、职工福利和工资顾问遇到了一些问题。她的工作是为雇员提供他们的福利建议。公司刚刚磋商了一个新的医疗保险方案,这个方案要求雇员从 7 个保健组织和首选的供应商方案中进行选择。保健组织和供应商按照雇员的分类、贡献、免赔额、受益人、服务内容和允许的服务提供商而各不相同,目的是尽可能为雇员提供 灵活的福利,用以使公司的花费极小化并控制付给保险商的费用(这将对公司被收取的后续保险费产生一定的影响)。  

这个顾问被请来为雇员选择 合适的保险方案。她目前以手工方式答复这些请求。但目前的选择比新计划中的选择要直接得多。她需要解释新的选择:它们包括什么,不包括什么,它们的费用和可能费用是多少,具有什么优缺点。但是,雇员对新计划不信任,这种情况迫使她需要向雇员提供更多具体的建议和答复。  

她可能不得不为许多雇员逐步建立假定情境——可能的 坏假定情境。这种假定将要根据每个雇员的收入、婚姻和家庭状况、目前的健康风险等进行个人定制。在逐步建立一些样本假定时,她发现:  

①从信息系统部门获得工资和个人数据需要一天时间。  

②雇员数据存储在许多文件夹中,而且并不总是被正确地更新。当冲突数据变得很明显时,除非解决了矛盾,否则就不可能继续她的工作。  

③计算复杂。为一个雇员创建投资和退休假定常常需要花费一整天或更长时间。  

④有些人担心保险计划会被提供给未授权的个人,例如以前的配偶或者非直系亲属。  

⑤计算中可变条件的复杂性导致经常出错,很多错误可能一直未被发现。  

假设现在需要你来开发一个软件,解决职工福利和_T 资顾问的问题。那么你认为她现在遇到的问题有哪些?你希望新的软件应该达成哪些业务目标?你怎样设计软件的高层解决方案和系统特性?解决方案有哪些重要的约束?  

解答:她现在遇到的问题有:  

(1)不能有效地从信息部门获得工资和个人数据:  

(2)雇员数据太过分散,而且不能及时正确地更新;  

(3)计算复杂;  

(4)雇员信息不能得到及时有效正确的更新;  

(5)计算中可变条件的复杂性。  

  新的软件应该达到的业务目标有:  

(1)减少从信息部门获得工资和个人数据的时间;     度量标准(Scale):一次从信息部门获得工资和个人数据的时间:     计量方法(Meter):检查信息部门数据库日志;      理想标准:减少 50%;一般标准:减少 30%; 低标准:减少 20%:  

(2)集中雇员数据,并且正确更新;  

(3)降低计算的复杂性;  

(4)及时有效正确地更新雇员信息:(5)降低计算中可变条件的复杂性。   软件的高层解决方案和系统特性:  

(1)高层解决方案:  

①由软件从信息部门的数据库中检索出工资和个人数据,减少所需信息获取的时间;  

    ②由软件来分析雇员数据的各种特征,及早识别出数据所在位置;或由软件集     中处理雇员数据,及早识别出不准确的或没有及时更新的数据,提交人工处     理或自行更新;  

    ③由软件来处理投资和退休假定的计算的复杂过程;  

    ④由软件来分析个人数据的准确性,及早识别出不准确的个人信息,提交人工     处理;或定时更新数,提高数据的准确性;  

    ⑤由软件来处理计算中可变条件的复杂性,降低出错率。  

(2)系统特性:  

     ①根据信息部门提供的数据库查询工资和个人数据;  

     ②根据原始数据重新整理数据并更新;  

     ③提交查询信息;  

     ④创建投资和退休假定的计算过程;  

     ⑤通过公司的内联网访问系统,根据个人情况更新信息;  

     ⑥模拟计算中可变条件的变化;  

     ⑦提供 灵活的福利方案。  

  重要的约束有:  

8、 为下面的每一个涉众描述选项试举一例,说明对这些选项进行描述的必要性和忽略这些选项描述可能造成的风险:个人特征、工作特征、地理和社会特征、关注点和兴趣、目标期望、被影响程度、力量程度。  

解答:  

(1)  涉众个人特征和工作特征的描述可以帮助更好的确定功能需求:  

(2)  涉众的输赢条件和受影响程度可以帮助解决涉众之间的需求冲突;  

(3)  涉众的重要性、影响力、关注点和兴趣取向可以用来发现项目的潜在风险:  

9、        Phil Ittup 是系统分析员团队中的一员,他受委任去与组织成员面谈,为系统研究收集材料。企业称为 Fall Back 工业,它有 5 个管理层人员。此外,生产、会计、营销、系统、物流和高层管理是将受到所建议的系统影响的职能区域。每个阶层大约有 40 人。生产层共有 80 人,会计层有 35 人,营销层有 42 人,系统层有 10 人,物流层有 28 人。高层管理有 5 人。Phil 应该怎样选择面谈对象?为什么?  

解答:  

(1)    选择面谈对象的时候采用随机抽样,从 5 个阶层以及生产、会计、营销、系统、物流各选择 2-3 名客户参与面谈。高层管理均要参加面谈。因为在选择面谈的时候要力争均衡的收集用户的需求,因此要涉及各方面受系统影响的人。  

采样的规则:控制人数(4~8)。  

(2)    高层管理的人 先面谈。然后是系统层。其余层的面谈对象根据实际情况可以先    后安排面谈的时间,不一定要分先后顺序。  

跟高层管理人员进行面谈,采用漏斗结构,因为各个高层管理人员对各自管理    的层次从大体上有准确的把握,有助于开发人员首先获取对项目的广度方面的认识,也能获取一些较为详细的信息。跟具体部门人员进行面谈,采用菱形(必要时,金字塔)结构,因为这种面谈较为具体,问题常为封闭式问题,这样有助于分析人员获得深度认识。  

基本规则:  

(1)先业务需求,后用户需求,所以先领导后普通;  

(2)开始漏斗,领导漏斗  

(3)普通用户菱形,必要时金字塔面谈结构及其特点:见教材。  

10、     Maverick 公司是一家有 15 年历史的国内货物运输公司,假设你的小组担当

Maverick 公司的系统分析与设计团队,为 Maverick 公司的所有业务设计一个计算机化或者增强设计计算机化的项目。Maverick 主要进行卡车零运,管理人员按照实时处理(Just In Time)原则工作。在这个原则指导下,他们建立了包括发货人、收货人和承运公司的伙伴关系,目的是准时运输和交付牛产线上需要的材料。Mavetrick 主张用 626 台拖拉机托运货物,它拥有 45  

000 平方英尺的仓库和 21 000 平方英尺的办公场地。  

(1)    制定分析:Maverick 公司的信息需求时,应当收集的硬数据列表。(提示:想象一下该公司要开展的工作,应该会有哪些登记表格)。  

(2)    设计一种采样机制,使得小组在不必查看这家公司 15 年来产生的所有文档的情况下,形成对该公司的清晰认识。  

解答:  

(1)      描述发货人、收货人和承运公司的伙伴关系的表     发货及收货的时间表  

    货物的中转表     拖拉机和仓库的使用情况表      参考硬数据的类型:见教材。  

(2)      将这 15 年公司的情况用图表表达出来,形成对 15 年以来公司状况的认识,获取    生产情况的时候将大致相同的年份列出来,采样时候只需要在大致相同的年份中抽取一份作为样本。  

参考采样规则:见教材。 11、在重新浏览面谈日程的时候,你发现有几个问题看上去不合适。下面是准备问 Sampson 纸产品公司销售经理的原问题。这家公司想把它的一些销售信息放到 Web 上去,以便经理们可以交互地评论它,从而优化他们的销售方案。用更合适的方式,重新写下面的问题。  

(1)  你的下属告诉我,你非常渴望有一台计算机。这是真的么?  

(2)  我是这个领域的新手,我有没有忽略什么呢?  

(3)  你在销售计算中 常用的信息资源是什么,使用频度如何?  

(4)  其他销售经理认为,把一些月度销售商品放到 Web 上,然后做趋势分析,将会是一种主要改进,你同意他们的做法吗?  

(5)  没有比你现在使用的陈旧的方法更好的销售方案吗?  

解答:  

(1)  你认为作为一个销售经理,是不是应该拥有一台计算机?(诱导性问题)  

(2)  我是不是还忽略了什么?(上下文无关问题)  

(3)  ①你在销售计算中 常用的信息资源是什么(双筒问题)  

         ②使用频度如何  

(4)  你认为把一些月度销售商品放到 web 上,然后做趋势分析会是一种改进吗

(诱    导性问题)  

(5)  还有比目前方法更好的销售方案吗(上下文无关问题)  

11、   作为系统分析项目的一部分,需要为生产数字钟的 chronos 公司更新自动化会计功能。你将要同首席会计 Harry straiter 面谈。写出 4 到 6 个涉及他所使用的信息资源、信息格式、决策频度、需求的信息性质和决策样式的面谈目标。  

(1)    说明你将如何联系 Harry 以安排一次面谈。  

(2)    说明在这场面谈中你会使用哪种面谈结构?为什么?  

(3)    Harry 有 3 个下属也使用这个系统。你和他们面谈吗?为什么?  

(4)    写出 3 个开放式问题,在面谈前通过电子邮件寄给 Harry。用一句话解释为什么应当由人而不是由电子邮件来指导面谈?  

解答:  

(1)    参考面谈过程的准备阶段:  

打电话或者 E-mail 给 Harry,因为要进行深入面谈,可以先将一些问题通过 E-mail 发给他。      

(2)    采用菱形面谈结构,因为目的是要更新自动化会计功能.也可以考虑使用漏斗结    构。  

(3)    应当面谈,因为下属和领导应该具有不唰的目标,而这些目标是领导不能提供的。     

考察点:涉众的分类  

采用漏斗型。以一般的开放式的问题开始.有助于分析人员取得总体认识。然后再逐步就某些问题展开深入面谈。  

(4)    参考规则:  

①面谈获取信息的类型  

②面谈的优点  

面谈是复杂的过程。可以实现很多的目标,只有依靠人的灵活和主观能动性才能使面谈达到 优效果。 

12、   下面是系统分析团队的一名成员提出的第一份面谈报告:在我看来,面谈进行的很好。我和他就这个问题聊了一个半小时。他告诉我有关公司的所有历史,很有意思。他也提到,自他来到该公司的 16 年间,公司没有任何变化。我们不久将再次举行会面,以及结束这次面谈,因为我们还没有深入研究我准备的问题。”  

(1)      试评论这个面谈报告。假设你要团队成员使用下图提供的报表,那么他漏了什么主要信息?  

(2)      什么信息对面谈报告来说是无关紧要的?  

(3)      如果真的发生了报告中提及的情况,则必须向队友提出哪 3 个建议,以帮助他更好地举行下一次面谈。  

面谈对象:SalDomask               日期:3 月 3 日  

会见者:S.Cabbot                   主题:计算机使用面谈的目标:找出关于计算机使用的态度;获得用户的使用估计;  

看 新建议的系统的观点是否满足目标吗?下次面谈的目标:找出 Sal 怎样看待系统支持部门。  

找出下一个面谈对象的观点。  

面谈的要点:  

Sal 说道:“计算机是我的朋友。”  

“一直”都在用计算机。  

迫不及待地要熟悉新系统。  

会见者的观点:对了解更对有关系统如何促

进工作感兴趣。如果不使用计算机进行工作,会感到枯燥。  

将成为新系统的热情支持者/促进者。  

解答:  

(1)面谈时间稍长,而且控制不佳。遗漏了关于“ 新建议的系统的观点”  

(2)有关公司的所有历史  

(3)参考面谈过程一一面谈主体阶段:  

①控制面谈的过程。面谈开始的时候可以通过例如谈公司历史来酝酿一下交流的气氛,但是不能偏离主题。如果长时间的谈论不相关的信息的时候。需求分析人员就可以委婉的提醒面谈对象。并重新切回正题。  

②注意保持面谈的主题。针对每个面谈的目标,要在面谈的过程中安排合适的提示。逐一引导面谈对象对各个主题的叙述。  

③总结面谈的要点,注意此次面谈过程的成功和失误,明确下次的目标。以便为下次面谈做充分的准备  

13、   “每当我认为已经获取用户的信息需求时,他们却已经发生了变化。这就像试图射中一个运动目标。在半数时间里,我认为甚至用户自己也不知道需要什么。”Flo Chart 说。他是 2Good 2 Be True 公司的需求工程师,该公司负责为几家制造公司的营销部门调查产品的用途。 

(1)    用一段话向 Flo chart 解释,原型化方法怎样才能帮他更好地定义用户的信息需求。  

(2)    用一段话评论 Flo Chart 的观察:“在半数时间里,我认为甚至用户自己也不知道需要什么。”一定要解释原型化方法怎样才能真正地帮助用户更好地理解和阐明他们自己的信息需求。  

(3)    用一段话向 Flo Chart 建议:一个具备原型特征的交互式 web 站点缘何能解决

Flo 关于捕获用户信息需求的问题。  

解答:  

(1)  答案主题  

    ①根据需要确定原型类型 ②进行原型开发 ③获得用户反馈 ④定义所得需求  

(2)  答案要以“隐含知识”和“用户表述时的主观加工”为主题  

(3)  原型化方法利用直观化的界面来 快程发的得到用户的反馈,通过用户的反

馈来获知其实际的需求。  

14、   “我有一个绝妙的主意!”Bea Kwicke 宣布,他是系统团队的一位新来的需求工程师,“让我们跳过所有的 SDLC 垃圾,直接为一切设计原型。我们的项目会进展的更快,

还可以节省时间和金钱,并且所有的用户会感到我们似乎很在意他们,而不是连续几个月不与他们交谈。”  

(1)      列出你(作为与 Bea 同一个团队的成员)用来劝阻她不要试图放弃 SDLC,而直接为所有项目设计原型的原因。  

(2)      Bea 对你所说的话很失望。为了鼓励她,用一段话向她说明,你认为适用于原型化方法的情形。  

解答:  

(1)    主要原因:原型仪仅是开发当中使用的一种手段,它利用得当可以加速开发的进程,但不能代替软件开发中的所有工作。  

(2)    情形见下表,尤其是其中红字部分。  

废弃型  

演化型  

水平型  

阐明并细化用例和功能性需求  识别遗漏功能研究用户界面方法  

实现核心用例  

根据优先级实现其他用例使得系统适应快速变化的需要  

垂直型  

演示系统可行性  

实现并扩充核心功能实现并扩充核心算法测试并调整性能  

  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
包含需求基础、需求工程过程、需求获取概述、确定项目前景和范围、涉众分析和硬数据采样方面的思考题,还有参考答案。 方案及系统特性,继而无法明确项日的前景和范围,这样就会造成项口的不稳定甚至失败! 某大银行的一位银行卡办公室的收账经珒Li遇到了一个问题。她每周都收到一份过期 未付款的账户名单。这份报告已经从两年前的250个账户增加到现在的1250个账户。 为了确定那些严重拖欠债务的账户,Liz需要通读这份报告。严重拖欠债务的账户由几 个不冋的规则确定,每个规则都要求Lz检查客户的一项或几项数据。过去半天的工作 量现在增加到了每周三天。即使在确定了严重拖欠债务的账户后,如果没有查阓该账户 三年内的历史资料,Li也不能做岀最后的信用决定(例如严厉的催款电话、断绝信甩 或海这个账户转给一个收账代理)。另外,也需要报告所有账户中过期未付款的、拖欠 债务的、严重拖欠债务的和呆死账的比例。目前的报告中并没有给她提供这个信息。 假改现在需要你来开发一个软件,解决Li血对的难翘。那么你认为Liz现在遇到 的问题有哪些?你希望新的软件应该达成哪些业务目标?你怎样设计软件的高层解决 方案和系统特性? 解答:Liz现在遇到的问题有:(1)工作量的増加;(2)客户账户的历史数据;(3)问题账 户所占比例没有显示 新的软件应该达成的业务目标有:(1)能够快速查询客户账户;(2)能够分析一个客户 是否为问题账户;(3)能够给一个问题账户的三年内的历史数据;(4)能够计算问题账户 所占比例 软件的高层解决方案和系统特性:(1)建立一个数据厍系统用来存放客户账户信息 2〕根捃特定的判定问题账户的斧法检索辨别问题账户;(3)工作人员能够 检杳该账户的三年内的历史数据:(4)即时显示问题账户所占比例

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值