软件工程导论(第1章)概要精编版_第1页
软件工程导论(第1章)概要精编版_第2页
软件工程导论(第1章)概要精编版_第3页
软件工程导论(第1章)概要精编版_第4页
软件工程导论(第1章)概要精编版_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程学时分配课程学时分配1.1.1 软件危机的介绍软件危机的介绍软件危机的典型表现:软件危机的典型表现:1)软件本身特点造成;)软件本身特点造成;程序规模庞大;程序规模庞大;程序复杂性随着程序规模的增加而呈指数上程序复杂性随着程序规模的增加而呈指数上升。升。2)软件开发与维护的方法不正确。)软件开发与维护的方法不正确。主要表现:主要表现: (a)忽视软件需求分析;)忽视软件需求分析; (b)认为软件开发就是写程序并使之运行;)认为软件开发就是写程序并使之运行; (c)轻视软件维护;)轻视软件维护;高高中中低低早期早期中期中期后期后期软件开发时期软件开发时期代价代价引入同一修改的代价随时间变化的

2、趋势引入同一修改的代价随时间变化的趋势1.1.3 解决软件危机的途径解决软件危机的途径1968年年NATO会议:软件工程就是为了经济地获会议:软件工程就是为了经济地获得可靠的且能在实际机器上有效地运行的软件,得可靠的且能在实际机器上有效地运行的软件,而建立和使用完善的工程原理。而建立和使用完善的工程原理。1993年年IEEE:软件工程是(:软件工程是(1)把系统的、规范)把系统的、规范的、可度量的途径应用于软件开发、运行和维护的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;(过程,也就是把工程应用于软件;(2)研究()研究(1)中提到的途径。中提到的途径。软件工程的本质

3、特性:软件工程的本质特性:1. 用分阶段的生命周期计划严格管理;用分阶段的生命周期计划严格管理;2. 坚持进行阶段评审;坚持进行阶段评审;3. 实行严格的产品控制;实行严格的产品控制;4. 采用现代程序设计技术;采用现代程序设计技术;5. 结果能清楚地审查;结果能清楚地审查;6. 开发小组的人员应该少而精;开发小组的人员应该少而精;7. 承认不断改进软件工程实践的必要性。承认不断改进软件工程实践的必要性。文档是通信的工具,它们清楚准确地说明了到这个时候为止,关于该项工程已经知道了什么,同时确立了下一步工作的基础。此外,文档也起备忘录的作用,在完成生命周期每个阶段的任务时,应该采用适合该阶段任务

4、特点的系统化的技术方法结构分析或结构设计技术。三三. 其他开发方法其他开发方法 软件生命周期软件生命周期:指软件从提出到最终被淘汰的这个存在期。指软件从提出到最终被淘汰的这个存在期。软件生命周期由软件生命周期由软件定义软件定义、软件开发软件开发和和运行运行维护维护三个时期组成,每个时期又划分若干个三个时期组成,每个时期又划分若干个阶段。阶段。 软件定义软件定义软件开发软件开发运行维护运行维护表表1.1结构分析设计过程小结结构分析设计过程小结 阶段阶段关键问题关键问题结束标准结束标准问题定义问题是什么?关于规模和目标的报告书可行性研究有可行的解吗?系统的高层逻辑模型:数据流图、成本效益分析需求分

5、析系统必须做什么?系统的逻辑模型:数据流图、数据字典、算法描述总体设计概括地说,应该如何解决这个问题?可能的解法: 系统流程图、成本/效益分析推荐的系统结构:层次图或结构图详细设计怎样具体地实现这个系统?编码规格说明:HIPO图或 PDL编码/单元测试 正确的程序模块源程序清单;单元测试方案和结果综合测试符合要求的软件综合测试方案和结果;完整一致的软件配置维护持久地满足用户需要的软件完整准确的维护记录传统瀑布型模型开发软传统瀑布型模型开发软件的三大特点:件的三大特点:1. 阶段间具有顺序性和阶段间具有顺序性和依赖性依赖性2. 推迟实现的观点推迟实现的观点3.质量保证的观点质量保证的观点优点优点

6、:采用规范的方法;:采用规范的方法;严格规定每个阶段提交的严格规定每个阶段提交的文档;要求每个阶段交出文档;要求每个阶段交出的产品必须经过验证。的产品必须经过验证。缺点:缺点:由文档驱动的,在由文档驱动的,在软件交付给用户之前,用软件交付给用户之前,用户只能通过文档来了解产户只能通过文档来了解产品,这样导致用户很难全品,这样导致用户很难全面认识软件产品,导致开面认识软件产品,导致开发出的产品不能真正满足发出的产品不能真正满足用户的需要用户的需要1.4.3 增量模型增量模型增量模型开发软件时把软件产品作为一系列增量构件来设计、编码、集成和测试。增量模型开发软件时把软件产品作为一系列增量构件来设计

7、、编码、集成和测试。优点优点:能较短时间内提交可完成部分工作的产品;逐步增加产品功能可以使用户有充裕的:能较短时间内提交可完成部分工作的产品;逐步增加产品功能可以使用户有充裕的时间学习和适应新产品。时间学习和适应新产品。缺点:把每个构件集成到现有软件体系结构中时,必须不破坏已经开发出来的产品,必须缺点:把每个构件集成到现有软件体系结构中时,必须不破坏已经开发出来的产品,必须在软件体系结构设计得便于按照这种方式进行扩充。即:软件系统是开放的在软件体系结构设计得便于按照这种方式进行扩充。即:软件系统是开放的 典型的面向对象软件典型的面向对象软件开发过程模型之一。开发过程模型之一。优点:优点:由于整个开发过由于整个开发过程中都是围绕对象组成程中都是围绕对象组成的,所以在生命周期的的,所以在生命周期的各个阶段区分不明显,各个阶段区分不明显,在各个开发步骤反复迭在各个开发步骤反复迭代,每次反复都会增加代,每次反复都会增加或明确一些目标系统的或明确一些目标系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论