软件工程概述 兴 陈天洲
软件工程概述 陈天洲
第一章软件危机与软件工程 软件危机 软件工程 技术审查和管理复审
第一章 软件危机与软件工程 软件危机 软件工程 技术审查和管理复审
软件危机 ◆产生软件危机的原因 ◆解决软件危机的途径
软件危机 产生软件危机的原因 解决软件危机的途径
件危机 ◆软件危机的表现 ◆对软件开发成本和进度的估计常常很不准确 ◆用户对“已完成的”软件系统不满意的现象经常发生 ◆软件产品的质量往往靠不住. ◆软件常常是不可维护的 ◆软件通常没有适当的文档资料 ◆软件成本在计算机系统总成本中所占的比例逐年上升. ◆软件开发生产率提高的速度远远跟不上计算机应用迅 速普及深入的趋势
软 件 危 机 软件危机的表现 对软件开发成本和进度的估计常常很不准确. 用户对“已完成的”软件系统不满意的现象经常发生. 软件产品的质量往往靠不住. 软件常常是不可维护的. 软件通常没有适当的文档资料. 软件成本在计算机系统总成本中所占的比例逐年上升. 软件开发生产率提高的速度,远远跟不上计算机应用迅 速普及深入的趋势
生原因以及解决途径 产生软件危机原因 软件本身的特点 软件开发与维护的方法不正确 概念:软件生命周期 解决软件危机的途径 技术措施 组织管理措施
产 生 原 因 以 及 解 决 途 径 • 产生软件危机原因 – 软件本身的特点 – 软件开发与维护的方法不正确 概念:软件生命周期 • 解决软件危机的途径 – 技术措施 – 组织管理措施
软件工程 ◆软件工程的基本原理 ◆软件工程的传统途径 生命周期各阶段的基本任务 A瀑布模型
软件工程 软件工程的基本原理 软件工程的传统途径 生命周期各阶段的基本任务 瀑布模型
软件工程 ◆软件工程的传统途径 ◆现代软件工程的定义 Boehm:运用现代科学技术知识来设计并构造计算 机程序及为开发、运行和维护这些程序所必需的 相关文件资料 lEEE:软件工程是开发、运行、维护和修复软件 的系统方法 Fritz Bauer:建立并使用完善的工程化原则,以 较经济的手段获得能在实际机器上有效运行的可 靠软件的一系列方法
软 件 工 程 软件工程的传统途径 现代软件工程的定义 –Boehm:运用现代科学技术知识来设计并构造计算 机程序及为开发、运行和维护这些程序所必需的 相关文件资料 – IEEE:软件工程是开发、运行、维护和修复软件 的系统方法 – Fritz Bauer:建立并使用完善的工程化原则,以 较经济的手段获得能在实际机器上有效运行的可 靠软件的一系列方法
生命周期各阶段的基本任务 定又计划 ◆瀑布模型 阶段 需求分析 设计卜 开发阶段 编码 测试卜 维护阶段运行维护
生命周期各阶段的基本任务 瀑布模型
制定计划 ◆确定要开发软件系统的总目标 ◆给出功能、性能、可靠性以及接口等方 面的要求 ◆完成该软件任务的可行性研究 八估计可利用的资源(计算机硬件,软件, 人力等)、成本、效益、开发进度 ◆制定出完成开发任务的实施计划,连同 可行性研究报告,提交管理部门审査
制定计划 确定要开发软件系统的总目标 给出功能、性能、可靠性以及接口等方 面的要求 完成该软件任务的可行性研究 估计可利用的资源(计算机硬件,软件, 人力等)、成本、效益、开发进度 制定出完成开发任务的实施计划,连同 可行性研究报告,提交管理部门审查
需求分析和定义 ◆对待开发软件提出的需求进行分析并给 出详细的定义 ·编写软件需求说明书或系统功能说明书 及初步的系统用户手册 提交管理机构评审
需求分析和定义 对待开发软件提出的需求进行分析并给 出详细的定义 编写软件需求说明书或系统功能说明书 及初步的系统用户手册 提交管理机构评审