- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程模型与方法 Models Methods of SE 第三章 系统需求分析与可行性分析 肖丁 dxiao@bupt.edu.cn 本章内容 3.1 基于计算机的系统分析 3.2 可行性分析 3.2.1 经济可行性分析 3.2.2 系统体系结构建模 计算机系统的定义和组成 Webster定义的计算机系统是:元素的集合或排列,这些元素被组织在一起,以便通过处理外部信息完成某些预定的目标 。这些系统元素是: 软件:指程序、数据结构和相关文档。 硬件:指提供计算能力的电子设备和提供外部功能的机电设备。 人员:指使用硬件和软件的用户和其他人员。 文档:指手册、表格和其他表示系统使用和操作的描述性信息。 数据库:指系统所具有的信息模型,是系统中对信息具有存取功能的一个主要部分。 过程:指定义每一种系统元素的特定使用步骤或使用环境。 计算机的系统工程 计算机系统工程是一个问题求解活动,目的是揭示、分析所期望的功能、性能、接口和约束条件,并把它们分配到各个系统元素中去。 计算机的系统工程包括:硬件工程、软件工程、人机工程和数据库工程。 每一项工程的作用就是明确和细化系统的功能和性能的范围和内容,产生一个能与其他系统元素集成的可操作的系统元素。 系统需求识别 系统分析目标 识别用户要求; 进行技术分析并进行评价; 把功能分配给系统元素; 建立成本和进度限制; 生成系统规格说明。 可通过回答以下问题协助完成系统分析过程 系统的总体目标是什么? 系统所期望的功能和性能是什么? 系统的可靠性和质量要求是什么? 成本与进度限制如何? 有无软硬件制造和购买的需求? 有效的技术方案有哪些? 将来系统可能有哪些扩充? 可行性分析 为什么在系统开发之前要进行可行性分析? 其目的在于项目进入实际的开发之前用最小的代价论证该项目是否能做,是否值得做?避免投资损失。 援引柳传志的一段话:“没钱赚的事我们不干;有钱赚但投不起钱的事不干;有钱赚也投得起钱但没有可靠的人选,这样的事也不干。” 影响系统开发的因素有哪些? 时间因素 资源因素 成本和利润的因素 技术条件和能力的因素 可行性分析的任务和步骤 首先,针对项目确定问题域并对问题域进行概要的分析和研究,初步确定项目的规模、约束和限制条件。 其次,针对问题域中的关键和核心问题进行简要的需求分析,抽象出问题域的逻辑结构,并构建逻辑模型。 最后从逻辑模型出发,通过小规模的设计和技术实现论证,探索出若干种可供选择的解决方案,并对每种方案进行可行性方面的论证。 可行性分析主要集中在以下四个方面: 经济可行性分析 技术可行分析 法律可行性分析 实施方案的选择 经济可行性分析 软件开发为何要进行经济方面的分析? 软件开发需要有投资,有投资就需要有收益。 目的是从经济角度评价一个新项目是否可行、是否划算,从而帮助投资人或者用户正确地做出是否投资于这个项目的开发决策。 如何进行经济可行性的分析? 成本/效益分析是对软件的开发成本和可能取得的效益进行权衡比较。 短期/长远利益分析而是从另一种角度来评价成本和效益之间的关系。 软件成本的估算方法 软件开发最终体现为一个软件系统,以及相应的开发过程,为此有以下估算软件成本的方法: 代码行技术 功能点技术 任务分解技术 经验估算模型 COCOMO模型 软件方程式 软件的其他成本估算 软件开发的效益度量 货币的时间价值:由于任何软件项目大都是投资在前,取得效益在后,因此要考虑到货币的时间价值。 设年利率为i,现存入P元,若不计复利则 n年后货币价值为 反之,若n年能收入F元,那么这些钱的现值是 货币的时间价值 假设利用购买的一套软件工具来代替某部门的大部分的人工设计工作,每年估算可节约9.6万元。 若该软件的生命周期为5年,而购买这套软件花费20万元。同时,年利率假设为5%。 软件开发的效益度量 投资回收期:就是使累计的经济效益等于最初的投资费用所需的时间。投资回收期越短,就能越快获得利润。 纯收入:就是在整个生存期之内系统的累计经济效益(折合成现在值)与投资之差。 纯收入 0 说明值得投资 纯收入 = 0 等于把资金存入银行 纯收入 0 说明不值得投资 投资回收率:设想把数量等于投资额的资金存入银行,每年年底从银行回收的钱等于系统每年预期可以获得的效益,在时间等于系统寿命时,正好把在银行中的存款全部取完。这个假想的年利率就等于投资回收率。 P = F1/(1+j) + F2/(1+j)2 + … +Fn/(1+J)n 其中,P是现在的投资额;Fi是第i年年底的效益(i=1,2,…,n);n是系统的使用寿命,j是投资回收率。 技术可行性分析 技术可行性分析主要考虑以下几项内容: 开发风险:在给定的限制范围内,能否设计出系统,并实现必须的功能和性能?
文档评论(0)