《软件工程PPT课件第2章 需求分析》由会员分享,可在线阅读,更多相关《软件工程PPT课件第2章 需求分析(32页珍藏版)》请在金锄头文库上搜索。
1、1,第二章 系统分析,2.1问题定义 弄清用户需要计算机解决的问题根本所在,及项目所需的资源和经费。,2,问题定义阶段的主要任务,在向用户调查的基础上,编写项目任务说明书,作为下一步工作可行性分析的依据。,3,2.2可行性研究的目的和任务,“说明该软件开发项目的实现在技术上、经济上和社会条件上的可行性;评述为合理地达到开发目标可能选择的各种方案”。 ( GB 8567-88 计算机软件产品开发文件编制指南 ),可行性研究的目的,4,可行性研究的任务,GB 8566-88 计算机软件开发规范中指出: 可行性研究的主要任务是“了解客户的要求及现实环境,从技术、经济和社会因素等三方面研究并论证本软件
2、项目的可行性,编写可行性研究报告,制定初步项目开发计划。”,5,可行性研究的目的不是解决问题,而是确定问题是否值得去解决。 可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程。,可行性研究的任务,6,可行性研究最根本的任务是对以后的行动方针提出建议。 如果问题没有可行的解,分析员应该建议停止这项开发工程,以避免时间、资源、人力和金钱的浪费; 如果问题值得解,分析员应该推荐一个较好的解决方案,并且为工程制定一个初步的计划。 可行性研究可行性研究需要的时间长短取决于工程的规模。一般说来,可行性研究的成本只是预期的工程总成本的
3、5%10%。,7,首先需要进一步分析和澄清问题定义。 在澄清了问题定义之后,分析员应该导出系统的逻辑模型。 然后从系统逻辑模型出发,探索若干种可供选择的主要解法(即系统实现方案)。对每种解法都应该仔细研究它的可行性,一般说来,至少应该从下述三方面研究每种解法的可行性:,8,可行性研究的内容,技术可行性:使用现有的技术能实现这个系统吗? 经济可行性:这个系统的经济效益能超过它的开发成本吗? 操作可行性:系统的操作方式在这个用户组织内行得通吗? 必要时还应该从法律、社会效益等更广泛的方面研究每种解法的可行性。,9,技术可行性,度量一个特定技术信息系统解决方案的实用性及技术资源的可用性 考虑的问题
4、(1)开发风险 (2)资源有效性 (3)相关技术的发展,10,经济可行性,度量系统解决方案的性能价格比 考虑的问题 成本/效益分析 有形成本、效益 无形成本、效益 价值和成本的关系 质量与价值、成本的关系 价值/成本的均衡,11,经济可行性考虑的问题,成本和效益的估算 开发成本的估算 开发效益的估算 运行成本的估算 运行效益的估算,12,系统开发和每年运行费用举例,1.系统开发费用(一次) 人员: 2名系统分析员(450小时/名,45美元/小时) $40,500 5名系统开发人员(275小时/名,36美元/小时)49,500 1名数据通讯专家(60小时/名,42美元/小时) 2,400 1名数
5、据库管理员(30小时/名,42美元/小时) 1,260 2名技术写作者(120小时/名,25美元/小时) 6,000 1名秘书(160小时/名,15美元/小时) 2,400 2名数据输入人员 (40小时/名,12美元/小时) 9,600,13,系统开发和每年运行费用举例,培训: 三天的开发人员内部培训课程 7,000 30个用户,三天的内部培训课程 10,000 物资: 复印 500 磁盘、纸张等消耗品 650 打印消耗品(色带、色合、硒鼓等),14,系统开发和每年运行费用举例,购买硬件、软件: 20台工作站Windows软件 1,000 20台工作站内存升级 8,000 网络软件 17,50
6、0 20台工作站办公软件产品 20,000 系统开发总费用 $161,670,15,系统开发和每年运行费用举例,2.年运行费用(每年)人员: 维护程序员/分析员(250小时/年,42美元/小时) $10,500 网络管理员(300小时/年,50美元/小时) 15,000 购买硬件、软件升级: 硬件 5,000 软件 6,000 物资和杂项 3,500 每年总运行费用 $40,000,16,操作可行性,1.建立一个项目范围,该范围在管理级及技术级均是无二义性的和可理解的。 2.项目计划的目标提供一个框架,使项目的结果限定在这一个合理的范围内。 3.正确接受用户的建议,满足用户的要求、操作规程简便
7、。容易获得结果,法律可行性,考察该项目是否侵权 考察该项目是否违法 经费使用是否正确,17,2.3 可行性研究的步骤和过程,(1)复查确认系统目标、规模 (2)研究正使用系统工作流程 (3)导出新系统高层逻辑模型 (4)重新定义问题 (5)导出和评价供选择的方案 (6)推荐行动方针 (7)草拟开发计划 (8)书写文档,送审,18,典型的可行性研究过程有下述一些步骤。 1. 复查系统规模和目标 分析员对问题定义阶段书写的关于规模和目标的报告书进一步复查确认,改正含糊或不确切的叙述,清晰地描述对目标系统的一切限制和约束。,19,2.研究目前正在使用的系统 现有的系统是信息的重要来源,新的目标系统必
8、须也能完成它的基本功能。 另一方面,现有的系统必然有某些缺点,新系统必须能解决旧系统中存在的问题。 此外,运行使用旧系统所需要的费用是一个重要的经济指标,如果新系统不能增加收入或减少使用费用,那么从经济角度看新系统就不如旧系统。,20,应该注意了解现有系统可以做什么,为什么这样做,还要了解使用这个系统的代价。 千万不要花费太多时间去了解和描绘现有系统的实现细节。 应该注意了解并记录现有系统和其他系统之间的接口情况,这是设计新系统时的重要约束条件。,21,3. 导出新系统的高层逻辑模型 优秀的设计过程通常总是从现有的物理系统出发,导出现有系统的逻辑模型,再参考现有系统的逻辑模型,设想目标系统的逻
9、辑模型,最后根据目标系统的逻辑模型建造新的物理系统。,22,4. 进一步定义问题 新系统的逻辑模型实质上表达了分析员对新系统必须做什么的看法。分析员应该和用户一起再次复查问题定义、工程规模和目标。 可行性研究的前4个步骤实质上构成一个循环。分析员定义问题,分析这个问题,导出一个试探性的解;在此基础上再次定义问题,再一次分析这个问题,修改这个解;继续这个循环过程,直到提出的逻辑模型完全符合系统目标。,23,5. 导出和评价供选择的解法 分析员应该从他建议的系统逻辑模型出发,导出若干个较高层次的(较抽象的)物理解法供比较和选择。 导出供选择的解法的最简单的途径,是从技术角度出发考虑解决问题的不同方
10、案。,24,6. 推荐行动方针 根据可行性研究结果应该做出的一个关键性决定是,是否继续进行这项开发工程。 如果分析员认为值得继续进行这项开发工程,那么他应该选择一种最好的解法,并且说明选择这个解决方案的理由。 通常使用部门的负责人主要根据经济上是否划算决定是否投资于一项开发工程,因此分析员对于所推荐的系统必须进行比较仔细的成本/效益分析。,25,7. 草拟开发计划 分析员应该为所推荐的方案草拟一份开发计划,除了制定工程进度表之外还应该估计对各类开发人员和各种资源的需要情况,应该指明什么时候使用以及使用多长时间。 此外还应该估计系统生命周期每个阶段的成本。 最后应该给出下一个阶段(需求分析)的详
11、细进度表和成本估计。,26,8. 书写文档提交审查 应该把上述可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析员推荐的方案。,27,2.3 可行性研究的步骤,(1)复查确认系统目标、规模 (2)研究正使用系统工作流程 (3)导出新系统高层逻辑模型 (4)重新定义问题 (5)导出和评价供选择的方案 (6)推荐行动方针 (7)草拟开发计划 (8)书写文档,送审,28,2.4 可行性研究报告的编写提示GB 8567-88 计算机软件产品开发文件编制指南 ,1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料 2
12、 可行性研究的前提 2.1 要求 2.2 目标 2.3 条件、假定和限制 2.4 进行可行性研究的方法 2.5 评价尺度,29,可行性研究报告的编写提示,3 对现有系统的分析 3.1 数据流程和处理流程 3.2 工作负荷 3.3 费用开支 3.4 人员 3.5 设备 3.6 局限性,30,可行性研究报告的编写提示,4 所建议的系统 4.1 对所建议系统的说明 4.2 数据流程和处理流程 4.3 改进之处 4.4 影响 4.5 局限性 4.6 技术条件方面的可行性,31,可行性研究报告的编写提示,5 可选择的其它系统方案 5.1 可选择的其它系统1 5.2 可选择的其它系统2 .,32,可行性研究报告的编写提示,6 投资及收益分析 6.1 支出 6.2 收益 6.3 收益/投资比 6.4 投资回收周期 6.5 敏感性分析 7 社会条件方面的可行性 7.1 法律方面的可行性 7.2 使用方面的可行性,