软件需求分析第5章确定项目的前景和范围.ppt

上传人:b****2 文档编号:2209987 上传时间:2022-10-27 格式:PPT 页数:34 大小:332KB
下载 相关 举报
软件需求分析第5章确定项目的前景和范围.ppt_第1页
第1页 / 共34页
软件需求分析第5章确定项目的前景和范围.ppt_第2页
第2页 / 共34页
软件需求分析第5章确定项目的前景和范围.ppt_第3页
第3页 / 共34页
软件需求分析第5章确定项目的前景和范围.ppt_第4页
第4页 / 共34页
软件需求分析第5章确定项目的前景和范围.ppt_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

软件需求分析第5章确定项目的前景和范围.ppt

《软件需求分析第5章确定项目的前景和范围.ppt》由会员分享,可在线阅读,更多相关《软件需求分析第5章确定项目的前景和范围.ppt(34页珍藏版)》请在冰豆网上搜索。

软件需求分析第5章确定项目的前景和范围.ppt

第5章.确定项目的前景和范围主要内容1.确定项目前景和范围的活动2.问题分析3.建立系统边界4.项目前景和范围文档1.确定项目前景和范围的活动为什么要确定项目的前景和范围n在看待现实世界时q世界是复杂的n从不同的角度观察,会看到不同的内容q例如,对桌子,木匠、商人、考古学家、工艺学家观察到的内容是不一样的n因此q如何保证项目涉众以符合项目需要的角度描述现实世界?

q描述哪些事物和事件才会尽可能的符合项目的需要?

n方法是q定义项目前景n所有的涉众都从共同认同的项目前景出发,理解和描述问题域及需求q定义项目范围n范围内的事物和事件是描述的目标1.确定项目前景和范围的活动确定项目前景和范围的位置和作用1.确定项目前景和范围的活动确定项目前景和范围的关键n定义业务需求和能够满足需求的高层解决方案,包括:

q业务目标、目的q高层业务功能q每个高层业务功能所关联的高层数据q每个功能相关的项目涉众q等等n如果存在不同业务需求之间的冲突,那么在确定项目前景和范围阶段必须予以解决1.确定项目前景和范围的活动业务需求冲突示例n对一个配有嵌入式软件的售货机而言:

q销售机开发者的业务目标:

n向零售商出售或出租售货机,并由此获利。

n通过售货机向顾客销售消费品。

n吸引客户对商品的兴趣。

n生产出多种类型的售货机。

q零售商的业务目标:

n将单位营业面积的收益最大化。

n吸引更多的顾客来商店购买。

n用售货机替代人工,带来销量和利润的增长。

n可能产生的矛盾:

q开发者重技术、零售商要求简单可直接投入使用、顾客希望方便和功能性1.确定项目前景和范围的活动过程描述主要内容1.确定项目前景和范围的活动2.问题分析1.明确问题2.发现业务需求3.定义解决方案及系统特性3.建立系统边界4.项目前景和范围文档2.1明确问题n一、对问题达成共识n二、收集背景资料,判断问题的明确性n三、分析不明确问题,发现问题背后的问题2.1明确问题一、对问题达成共识n描述问题q在涉众之间取得认同元素内容ID问题涉众影响解决问题标识问题描述受问题影响的风险承担人问题对风险承担人和业务活动的影响指出可能的解决方案及主要优点2.1明确问题二、判断问题的明确性n问题的明确性要求它们具备一下两点:

q易于理解;nP1.图书管理员:

图书总是无法上架。

nP2.图书管理员:

图书的内容分类不合适,无法分类上架图书上架的工作太繁杂,导致来不及上架。

图书的借阅不遵守章程,不能保证上架。

q能指明解决的方向nP3.决策者:

生产的废品过多。

2.1明确问题三、发现问题背后的问题n对于不明确的问题q直接咨询涉众是第一选择q利用收集的资料和业务数据是第二选择q必要时需要使用一些简单的问题分析技巧2.1明确问题发现深层问题的示例n当前问题:

产生了太多的废品n进一步问题:

产生太多废品的原因?

q用鱼骨图列出所有的可能原因q请用户确认(通常可以解决问题)q如果用户无法确认,则搜集数据进行分析q重新定义新的问题(不准确的销售订单)2.2发现业务需求n每一个明确、一致的问题都意味着涉众存在一些相应的期望目标,即业务需求。

qP3.决策者:

生产的废品过多nBR2:

提供销售订单的准确性,在系统使用后3个月内,减少50%因此而产生的废品。

q注意:

业务目标要具有第二章所述的各种优秀特性,尤其是要有可验证性2.3定义解决方案及系统特性n一、确定高层次的解决方案n二、确定系统特性和解决方案的边界n三、确定解决方案的约束2.3定义解决方案及系统特性一、确定高层次的解决方案n发现各种可行的高层次解决方案,分析不同方案的业务优势和代价,然后通过和涉众的协商,选定其中一个要素内容ID问题标识解决方案方案描述概要描述解决方案业务优势该解决方案所能带来的业务优势代价该解决方案将花费的代价2.3定义解决方案及系统特性确定解决方案示例n背景:

对一个设备制造商的IS系统升级n问题:

改进同经销商之间的通信n涉众:

制造商、经销商n开发人员提出的解决方案:

q提供更好的财务报告、更好的发票和陈述的格式、在线的零件订购以及电子邮件q最终希望能实现公司和经销商间的电子资金转账n客户讨论修正后的方案:

q首要任务是提供电子资金转账q最好能有电子邮件及其它的通信特性2.3定义解决方案及系统特性二、确定问题解决边界n明确该解决方案需要具备的功能特征,即系统特性n分析解决方案需要和周围环境形成的交互作用,定义解决方案的边界q尤其是信息流的输入/输出关系n它需要的信息由谁提供?

n它产生的信息由谁使用?

n谁控制它的执行?

n谁会影响它的执行?

2.3定义解决方案及系统特性三、确定解决方案的约束约束源问题示例经济的有哪些财政或者预算上的约束?

有货物成本和价格上的要求吗?

有任何法律许可问题吗?

行政的有产生影响的内部或外部政治问题吗?

有什么需要部门间协调的问题吗?

技术的在技术的选择上有什么限制吗?

是否必须使用既有的平台和技术进行工作?

对新技术的应用会被禁止吗?

有可能使用COTS软件包吗?

系统的要建立在现有系统基础之上吗?

要维护和现有系统的兼容性吗?

环境的需要支持哪些操作系统和环境?

有环境的约束吗?

其灵活度怎样?

符合法律法规吗?

有安全性需求吗?

可能会被哪些其他标准限制?

进度及资源的进度要求如何?

会被限制在已有资源上吗?

可以使用外部人力吗?

可以暂时或永久的扩展资源吗?

2.3定义解决方案及系统特性三、确定解决方案约束示例n对“新的销售订单系统”的约束约束源约束理由操作性系统技术要求设备预算销售订单数据的一份完全备份必须保存在已有数据库中一年的时间应用在服务器上占用的空间不应该超过20M应用新的面向对象的方法数据丢失的风险太大存储空间有限该技术会增加可靠性主要内容1.确定项目前景和范围的活动2.问题分析3.建立系统边界4.项目前景和范围文档3.建立系统边界n随着问题数量的增加,系统的问题解决方案的复杂性也会增加,这就需要讲各个分散的问题解决方案整合起来,建立解系统的整体解决方案q可以从总体上来理解系统中的业务静态结构和动态行为q确保不同问题的涉众在系统总体上也能达成一致n问题分析仅仅是确保了涉众在具体问题上达成一致n将所有问题的解决方案进行综合,就可以得到整个解系统的功能和边界n系统边界的常用技术描述手段是系统用例图和上下文图3.建立系统边界系统用例图示例3.建立系统边界上下文图示例图55、自助餐厅订餐系统上下文图自助餐厅在线订餐系统顾客工资系统菜单管理人送餐人员自助餐厅工作人员送餐请求从工资中扣除餐费的请求付款要求菜单内容送餐请求付款请求食物订单菜单食物订单食物订购信息注册从工资中扣除餐费自助餐厅库存系统食物订单可提供的食物信息从工资中扣除餐费的响应更新食物状态主要内容1.确定项目前景和范围的活动2.问题分析3.建立系统边界4.项目前景和范围文档4.前景和范围文档n业务需求、高层次解决方案和系统特性都应该被定义到项目前景与范围文档之中n前景与范围文档主要由需求工程师来完成,但文档的负责人一般是项目的投资负责人、执行主管或其他类似角色n文档中记录的应该是清晰、明确的业务需求、高层次解决方案和系统特性n项目合约或抽象的业务用例文档也可以实现类似目的4.前景和范围文档结构4.前景和范围文档示例nAvisionandscopedocument实例分析n在软件开发期间造成很大的麻烦。

由于时间比较紧张,第一稿的业务需求不是很具体,详细。

在开发过程中,技术人员与业务人员通过交流,发现很多业务上的问题,这样就不断修改业务需求,再修改程序,浪费了很多时间。

特别是由于单位领导参与到这次需求之中,提出的需求有的不是很符合系统整体的功能,甚至是超出一户式储存软件的范围业务,可是最终还是添加到业务需求之中。

实例分析n在公司内部,为确定项目的前景和范围,一般通过用户开会,进行摸底。

由于公司的用户一般都是非计算机专业出生,一般对于项目的前景和范围,主要从实际工作出发,提出构想和思路,但是有个明显的问题是,有些构想太过理想化,有些思路又太过细节。

n面临最大的挑战就是:

由于公司业务的快速变更和快速拓展,公司内部员工提出的需求,比较难落到实处,太虚的目标都比较大,细节的需求又太细。

n所以,我们的项目需求收集人员,不仅要能熟悉业务,而且要懂得归纳,懂得演绎,确实存在不少困难。

思考题n你被任命为替换学生财务资助项目的项目经理。

你想开发一个工作陈述来定义范围并降低范围蔓延的风险。

n财务资助部门的主管坚持要你15个月、600000美元的预算内替换他现有的系统就可以了。

他说这就是你需要知道的全部,不需要浪费时间开发一个工作陈述了。

n省略工作陈述的风险是什么?

你将如何说服主管?

思考题n一个需求工程师正在为一个信息系统考虑三个可选的解决方案,所有三个方案都满足了用户的业务需求。

q第一个方案被认为与开发人员的技术知识最一致,q第二个方案被认为是最快的实现方案,q第三个方案是最划算的方案。

n这三个方案中是否有一个可行方案?

如果是这样,你认为需求工程师应该如果做出最后决定?

思考题n某大银行的一位银行卡办公室的收账经理Liz遇到了一个问题。

她每周都收到一份过期未付款的账户名单。

n这份报告已经从两年前的250个账户增加到现在的1250个账户。

为了确定那些严重拖欠债务的账户,Liz需要通读这份报告。

严重拖欠债务的账户由几个不同的规则确定,每个规则都要求Liz检查客户的一项或几项数据。

过去半天的工作量现在增加到了每周三天。

即使在确定了严重拖欠债务的账户后,如果没有查阅该账户三年内的历史资料,Liz也不能做出最后的信用决定(例如严厉的催款电话、断绝信用或将这个账户转给一个收账代理)。

另外,Liz需要报告所有账户中过期未付款的、拖欠债务的、严重拖欠债务的和呆死账的比例。

目前的报告中并没有给她提供这个信息。

n假设现在需要你来开发一个软件,解决Liz面对的难题。

那么你认为Liz现在遇到的问题有哪些?

你希望新的软件应该达成哪些业务目标?

你怎样设计软件的高层解决方案和系统特性?

本章小结n确定项目的前景和范围是需求工程以及整个项目的重要工作,它决定着整个项目后继工作的方向n确定项目的前景和范围要q首先从分析问题着手q然后依据明确的问题发现业务需求q最后再为业务需求定义问题的解决方案依据系统特性n各个单独问题的解决方案整合起来,就是整个解系统的整体解决方案n项目的前景和范围需要以文档的方式明确的固定下来

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1