辽工大邱云飞老师需求工程复习资料 - 图文 联系客服

发布时间 : 星期三 文章辽工大邱云飞老师需求工程复习资料 - 图文更新完毕开始阅读

目录

第一部分 绪论 .................................................................................... 2 第2章 需求工程过程 .................................................................. 2 第3章 需求工程过程 .................................................................. 4 第4章 需求获取概述 .................................................................. 5 第二部分 需求获取 ............................................................................ 5 第5章 确定项目的前景和范围 .................................................. 5 第6章 涉众分析与硬数据采样 .................................................. 9 第7章 需求获取方法之面谈 .................................................... 12 第8章 需求获取方法之原型 .................................................... 16 第9章 需求获取方法之观察与文档审查 ................................ 19 第10章 需求组织 ...................................................................... 21 第三部分 需求分析 .......................................................................... 21 第11章 需求分析概述............................................................... 21 第12章 过程建模 ...................................................................... 25 第13章 数据建模 ...................................................................... 28 第14章 面向对象建模 .............................................................. 31 第四部分 需求的文档化和验证 ...................................................... 36 第15章 需求规格说明 .............................................................. 36 第16章 需求验证 ...................................................................... 38

~ 1 ~

第一部分 绪论 第2章 需求工程过程

案例题

1. 从下面的事件当中,你可以替Jeannine总结出哪些教训? 投资经理Jeannine对一个新的投资跟踪系统具有强烈的需求。她需要做出快速决策来考虑可能进行的投资和撤销投资,耽误一个小时就可能给公司造成几千美元的损失。

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

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

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

她的一些下级经理坚持要有图形形式的报告,而新系统无法产生这些报告。 最后的问题是,Jeannine不能确定新的系统是否可以进行适当的修改(数据库结构修改和程序修改)以满足新的需求而不用重写所有的程序。而且她的老板也不能肯定是否会出资请一位顾问来解决这些问题。 解答:

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

(2)她没有及时跟相关人员交流信息,没能把握住有价值信息; (3)她没能及时跟公司员工交流,引用过时的文件结构; (4)她没有仔细研究分析新引进的系统的性能需求是否满足; (5)她没有仔细研究新引进的系统的功能需求是否满足;

(6)她没有仔细研究引进的系统的质量属性,对外接口是否满足。 解答二:业务需求中没有和高层管理人员沟通好;她提出的用户需求没有和用户(自己的职员)沟通好,也没有向开发人员提出可行性、质量属性(可扩展性)等。

解答三:没有获得高层支持;财政部支持;下属抵制使用;信息不流通,文件使用不一致;要求的图形报告没有;不知道是否能修改

2. 根据下列描述,说明新的直接销售和财务处理系统的业务需求有哪些? Especially for You Jewelers是大学城的一个小珠宝零售商。在过去的两年里,Especially for You在它的商业方面经历了极大的发展,可是,它的财务业绩却与它的发展不同步。现在的事务处理系统部分手动、部分自动,不能有效的追踪客户账单和收据,Especially for You难以确定为什么它的成本这么高。此外,Especially for You频繁地实行特价以吸引顾客。它不知道这些特价是否有利可图,~ 2 ~

是否带来其他的销售。Especially for You也想增加回头客,所以它需要一个客户数据库。Especially for You想按照一个新的直接销售和财务处理系统以帮助解决这些问题。

解答:业务需求:保持财务业绩与它的发展同步;有效地追踪客户账单和收据;降低成本;实行特价时能够知道是否有利可图,是否带动去他的销售;增加回头客。

解答:业务需求如BR。

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

BR2:实现产品特价时的利润和相关销售情况检查; BR3:实现一个客户数据库。 3.

解答:

先定义明确的业务需求,获得开发系统的必要性,根据业务需求,协调涉众的立场,限定问题的范围,指导用户需求的获取过程:和涉众沟通(即向业务人员了解相关的业务知识,业务流程;再和销售人员沟通,由于他们的顾客是流动的,不确定的,只能通过销售人员间接获取来自于顾客的用户需求,了解他们的背景和习惯),最后根据业务需求对用户需求进行过滤和选择,得到充分必要用户需求。 4.

解答:

UR1:使用户可以根据系统的明确操作提示做出正确的反应; UR2:用户插入银行卡后需要输入密码,得到验证后才可进行有效的具体操作; UR3:在用户进入系统后,可以选择使用查询金额、存取现金、转账的功能; UR4:用户能够正确、安全地退出系统。 5. 解答:

SR1:(1) 系统显示用户插入磁卡的动态图像,正确标明插卡位置; (2)用户根据提示,正确插入磁卡;

(3)系统读取磁卡卡号,界面显示输入密码的提示;

SR2:(1)对用户输入的密码,系统自动进行字符匹配; (2)匹配正确的话,进入具体操作界面;

(3)匹配不正确的话,警告密码不正确,并提示再次输入; SR3:(1)若用户选择查询金额图标和查询金额币种,系统读取银行数据库中

用户对应的信息,反馈在用户界面上;

(2)若用户选择取款图标和金额币种及输入金额数目,系统读取用户请

求,接受金额,修改数据库中该用户对应的信息,并提示成功与否;

(3)若用户选择存款图标和金额币种,系统弹出存款框,用户放入现金,

系统接收现金并辨认真伪,并反馈存入金额数目,得到用户确认后,修改数据库中该用户对应的信息,并提示成功与否;

(4)若用户选择转账图标和金额币种并输入对方账号和转账金额数目,

系统读取用户请求,修改数据库中所涉及到的用户的信息,并提示成功与否;

SR4:(1)用户选择退出图标; (2)系统提示拔卡信息。 6. 解答:

~ 3 ~

性能需求:在用户点击图标后,系统在3s内作出反应。 质量属性:易用、可靠、安全、容错、可恢复、可维护。

约束:当用户输入密码次数等于3次后就不再提示输入密码,并自动锁定银行卡。

第3章 需求工程过程

思考题

1. 除了需求开发的四个活动和需求管理活动之外,需求工程当中还有没有需要

执行的活动?如果有的话,它们是哪些活动?给出你的理由。

解答: 还有其他一些活动,例如:过程管理活动和项目管理活动。过程管理活动是跟踪项目开发过程,记录项目开发过程当中所遇到的问题或者教训等等。项目管理活动是管理项目开发的一系列问题与进度,管理人员配置,以求达到最大效益。

2. 需求开发过程具有迭代特性,但是不是所有项目的需求开发过程都必须是迭代完成的?如果不是,请给出举例和理由。 解答:

不是,在问题域很简单或者非常成熟的情况下不需要迭代完成。

(不是,一般对于业务领域不熟悉的项目,需求是具有迭代性的,需要对业务领域的认知,有一个从认识到知识重构的过程。对于某些固定需求且熟悉的项目,比如学校课程的作业软件工程实践电梯系统,就不需要迭代开发)

(需求获取——>需求分析——>需求规格说明——>需求验证。当然并不是所有项目的需求开发过程是迭代完成的,比如:当某一项目开发过程中,用户需求非常简单,开发人员已经相当明确用户需求,这时,就不需要返回到需求获取阶段以继续用户需求的获取,这样,也就不需要迭代完成。当然,这种情况非常少见。)

3. 需求开发的迭代特性与软件开发过程的迭代式开发有什么关系?它们之间会互相影响吗?如果会,那么有哪些影响? 解答:需求开发的迭代特性只是软件开发过程的迭代式开发的一个子过程,软件开发过程是一个相当庞大的工程,需要在软件开发过程的各个阶段都需要进行开发工作的迭代,当然也包括需求开发中的迭代。它们之间互相影响。如果需求开发中的迭代不能很好地完成需求分析任务,就必将影响到软件开发过程的其他迭代阶段的进行。

需求开发的迭代性指的是对于开发者对知识的认知水平在某一点上,发生重构,使得知识体系复杂性下降,而继续积累知识的过程

软件开发的迭代性指的是在软件生命周期整体开发迭代,针对变更的需求或

~ 4 ~