软件工程复习大纲.pptx
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
调查 组织概况 组织的业务活动 存在问题、约束条件
10 需求获取技术
访谈与会议
书面调查法
观察用户工作流程
用户和开发人员共同组成联合小组
数据流图(DFD)
数据流图描绘系统的逻辑模型,图中没有任何具体 的物理元素,只是描绘信息在系统中流动和处理的 情况。
主要包括四种基本成分:
数据源点/终点 数据流
问题定义 可行性研究 开发: 需求分析 设计 编码 测试 运行 维护 注意:各个阶段产生的文档资料的名称。(13份)
各个阶段结束标志(文档的内容) 软件生命周期的定义 软件工程的产生
5 问题定义
要解决的问题是什么?可行性研究 可行性分析
对于上一阶段确定的问题有行得通的解决方法吗? (可行性分析的目的)
软件工程的基本目标
软件工程的七条原理
用分阶段的生命周期计划严格管理
坚持进行阶段评审
实行严格的产品控制
采用现代程序设计技术
结果应能清楚地审查
开发小组的人员应少而精
承认不断改进软件工程实践的必要性
三种软件开发模型(瀑布、渐增、快速原型化)的优缺点机 4 适用范围。
软件生命周期的经典模型——瀑布模型 计划:
第一章 软件工程概述
1
软件:
软件的概念
严格说来,软件是计算机系统中与硬件相互依存的另 一部分,它是包括程序、数据及其相关文档的完整集合。
软件的特点(分类、发展)
软件是一种具有抽象特性的逻辑实体
软件的生产、开发无明显的制造过程,容易复制
软件的使用、运行期间无机械磨损……(8)
软件危机
(1)软件开发的进度和开发成本估计不准,用户不满意;
(1)货币的时间价值
7
(2)投资回收期
通常用投资回收期衡量一项开发工程的价值。 所谓投资回收期就是使累计的经济效益等于最初 投资所需要的时间。显然,投资回收期越短就能 越快获得利润,因此这项工程也就越值得投资。
例如,修改库存清单系统两年以后可以节省 4225.12元,比最初的投资(5000元)还少774.88 元,第三年以后将再节省1779.45元。 774.88/1779.45=0.44,因此,投资回收期是 2.44年。
输入 1
输出 1
加工
系统
数据存储/文件 基本系统模型
输入 2
输出 2
11 下图是一个飞机机票预定系统的基本系统模型
订票单
机票预定 系统
机票 帐单
12 下图是机票预定系统的DFD
订票单 旅行社
预定机 票
航班
源自文库费用
航班目录
记帐
机票准 备
机票
帐单
旅客
记帐文件
13
DFD图各成分的作用和注意事项: 数据流 由一组数据项组成
投资回收期仅仅是一项经济指标;为了衡量一 项开发工程的价值,还应该考虑其他经济指标。
8
(3)纯收入
衡量工程价值的另一项经济指标是工程的纯收 入,也就是在整个生命周期之内系统的累计经济效 益(折合成现在值)与投资之差。这相当于比较投资 开发一个软件系统和把钱存在银行中(或贷给其他 企业)这两种方案的优劣。如果纯收入为零,则工 程的预期效益和在银行存款一样,但是开发一个系 统要冒风险,因此从经济观点看这项工程可能是不 值得投资的。如果纯收入小于零,那么这项工程显 然不值得投资。
这个系统的经济效益能超过它的开发成本吗? 对以后的行动方针提出建议
6 例如,修改一个已有的库存清单系统,使它能在每天送 给采购员一份定货报表。修改已有的库存清单程序并且编 写产生报表的程序,估计共需5000元;系统修改后能及 时定货将消除零件短缺问题,估计因此每年可以节省 2500元,五年共可节省12500元。但是,不能简单地把 5000元和12500元相比较,因为前者是现在投资的钱, 后者是若干年以后节省的钱。假定年利率为12%,利用上 面计算货币现在价值的公式可以算出修改库存清单系统后 每年预计节省的钱的现在价值,如表所示。
在软件开发和维护过程中所产生的一系列严重问题的现 象,统称为软件危机。
软件工程:
3
概念:
是采用工程的概念、原理、技术和方法来开发、维护软件, 是开发与维护软件的规范化系统方法,它将完善的工程原理 应用于经济地生产既可靠、又能在实际机器上有效运行的软 件。
其核心内容就是“以工程化的方式组织软件的开发”,涉及 软件计划、开发和维护各个阶段。
年 将来值 1 2500 2 2500 3 2500 4 2500 5 2500
(1 i)n
1.12 1.25 1.40 1.57 1.76
现在值 累计现在值 2232.14 2232.14 1992.98 4225.12 1779.45 6004.57 1588.80 7593.37 1418.57 9011.94
进一步分析和澄清问题定义 探索若干种可能的解法 Operational feasibility,操作可行性
系统的操作方式在这个用户组织内行得通? Technical feasibility,技术可行性
使用现有的技术能实现这个系统吗? Economic feasibility,经济可行性
(2)软件质量不可靠;
(3)软件维护困难;
(4)软件不容易使用和管理,缺乏文档资料;
(5)软件的开发跟不上硬件的发展和用户要求的日益增长;
(6)缺乏高素质的软件开发人员。
2
产生软件危机的原因: (1)软件本身的问题 (2)软件人员本身的问题 (3)软件生命期中的管理问题
解决软件危机的办法: (1)开发新型的计算机系统,使用新的监督与控制机制; (2)总结和吸取前人的经验和教训,使用成熟的开发方法; (3)消除错误思想和观念,探索新的方法; (4)使用良好的开发工具和环境,提高开发效率; (5)进行严格的组织和管理,采取有效的监督。 软件危机的含义:
例如,上述修改库存清单系统,工程的纯收入预 计是
9011.94-5000=4011.94(元)
9 需求分析
所谓软件需求是指用户对目标软件系统在功能、行为、 性能、设计约束等方面的期望。
具体任务 确定对系统的综合要求 分析系统的数据要求 需求分析的本质就是对数据和加工进行分析。 导出系统的逻辑模型 通常用数据流图、数据字典和主要的处理算法描 述这个逻辑模型 修正系统开发计划 开发原型系统 (可选)
10 需求获取技术
访谈与会议
书面调查法
观察用户工作流程
用户和开发人员共同组成联合小组
数据流图(DFD)
数据流图描绘系统的逻辑模型,图中没有任何具体 的物理元素,只是描绘信息在系统中流动和处理的 情况。
主要包括四种基本成分:
数据源点/终点 数据流
问题定义 可行性研究 开发: 需求分析 设计 编码 测试 运行 维护 注意:各个阶段产生的文档资料的名称。(13份)
各个阶段结束标志(文档的内容) 软件生命周期的定义 软件工程的产生
5 问题定义
要解决的问题是什么?可行性研究 可行性分析
对于上一阶段确定的问题有行得通的解决方法吗? (可行性分析的目的)
软件工程的基本目标
软件工程的七条原理
用分阶段的生命周期计划严格管理
坚持进行阶段评审
实行严格的产品控制
采用现代程序设计技术
结果应能清楚地审查
开发小组的人员应少而精
承认不断改进软件工程实践的必要性
三种软件开发模型(瀑布、渐增、快速原型化)的优缺点机 4 适用范围。
软件生命周期的经典模型——瀑布模型 计划:
第一章 软件工程概述
1
软件:
软件的概念
严格说来,软件是计算机系统中与硬件相互依存的另 一部分,它是包括程序、数据及其相关文档的完整集合。
软件的特点(分类、发展)
软件是一种具有抽象特性的逻辑实体
软件的生产、开发无明显的制造过程,容易复制
软件的使用、运行期间无机械磨损……(8)
软件危机
(1)软件开发的进度和开发成本估计不准,用户不满意;
(1)货币的时间价值
7
(2)投资回收期
通常用投资回收期衡量一项开发工程的价值。 所谓投资回收期就是使累计的经济效益等于最初 投资所需要的时间。显然,投资回收期越短就能 越快获得利润,因此这项工程也就越值得投资。
例如,修改库存清单系统两年以后可以节省 4225.12元,比最初的投资(5000元)还少774.88 元,第三年以后将再节省1779.45元。 774.88/1779.45=0.44,因此,投资回收期是 2.44年。
输入 1
输出 1
加工
系统
数据存储/文件 基本系统模型
输入 2
输出 2
11 下图是一个飞机机票预定系统的基本系统模型
订票单
机票预定 系统
机票 帐单
12 下图是机票预定系统的DFD
订票单 旅行社
预定机 票
航班
源自文库费用
航班目录
记帐
机票准 备
机票
帐单
旅客
记帐文件
13
DFD图各成分的作用和注意事项: 数据流 由一组数据项组成
投资回收期仅仅是一项经济指标;为了衡量一 项开发工程的价值,还应该考虑其他经济指标。
8
(3)纯收入
衡量工程价值的另一项经济指标是工程的纯收 入,也就是在整个生命周期之内系统的累计经济效 益(折合成现在值)与投资之差。这相当于比较投资 开发一个软件系统和把钱存在银行中(或贷给其他 企业)这两种方案的优劣。如果纯收入为零,则工 程的预期效益和在银行存款一样,但是开发一个系 统要冒风险,因此从经济观点看这项工程可能是不 值得投资的。如果纯收入小于零,那么这项工程显 然不值得投资。
这个系统的经济效益能超过它的开发成本吗? 对以后的行动方针提出建议
6 例如,修改一个已有的库存清单系统,使它能在每天送 给采购员一份定货报表。修改已有的库存清单程序并且编 写产生报表的程序,估计共需5000元;系统修改后能及 时定货将消除零件短缺问题,估计因此每年可以节省 2500元,五年共可节省12500元。但是,不能简单地把 5000元和12500元相比较,因为前者是现在投资的钱, 后者是若干年以后节省的钱。假定年利率为12%,利用上 面计算货币现在价值的公式可以算出修改库存清单系统后 每年预计节省的钱的现在价值,如表所示。
在软件开发和维护过程中所产生的一系列严重问题的现 象,统称为软件危机。
软件工程:
3
概念:
是采用工程的概念、原理、技术和方法来开发、维护软件, 是开发与维护软件的规范化系统方法,它将完善的工程原理 应用于经济地生产既可靠、又能在实际机器上有效运行的软 件。
其核心内容就是“以工程化的方式组织软件的开发”,涉及 软件计划、开发和维护各个阶段。
年 将来值 1 2500 2 2500 3 2500 4 2500 5 2500
(1 i)n
1.12 1.25 1.40 1.57 1.76
现在值 累计现在值 2232.14 2232.14 1992.98 4225.12 1779.45 6004.57 1588.80 7593.37 1418.57 9011.94
进一步分析和澄清问题定义 探索若干种可能的解法 Operational feasibility,操作可行性
系统的操作方式在这个用户组织内行得通? Technical feasibility,技术可行性
使用现有的技术能实现这个系统吗? Economic feasibility,经济可行性
(2)软件质量不可靠;
(3)软件维护困难;
(4)软件不容易使用和管理,缺乏文档资料;
(5)软件的开发跟不上硬件的发展和用户要求的日益增长;
(6)缺乏高素质的软件开发人员。
2
产生软件危机的原因: (1)软件本身的问题 (2)软件人员本身的问题 (3)软件生命期中的管理问题
解决软件危机的办法: (1)开发新型的计算机系统,使用新的监督与控制机制; (2)总结和吸取前人的经验和教训,使用成熟的开发方法; (3)消除错误思想和观念,探索新的方法; (4)使用良好的开发工具和环境,提高开发效率; (5)进行严格的组织和管理,采取有效的监督。 软件危机的含义:
例如,上述修改库存清单系统,工程的纯收入预 计是
9011.94-5000=4011.94(元)
9 需求分析
所谓软件需求是指用户对目标软件系统在功能、行为、 性能、设计约束等方面的期望。
具体任务 确定对系统的综合要求 分析系统的数据要求 需求分析的本质就是对数据和加工进行分析。 导出系统的逻辑模型 通常用数据流图、数据字典和主要的处理算法描 述这个逻辑模型 修正系统开发计划 开发原型系统 (可选)