第01章软件工程概述

第01章软件工程概述

ID:40186062

大小:542.50 KB

页数:36页

时间:2019-07-24

第01章软件工程概述_第1页
第01章软件工程概述_第2页
第01章软件工程概述_第3页
第01章软件工程概述_第4页
第01章软件工程概述_第5页
资源描述:

《第01章软件工程概述》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第1章第1章软件与软件工程导读:·软件工程产生;·软件工程的定义、内容、目标、原则和原理;·软件、软件生命周期基本概念;·软件开发模型。§1软件工程的产生和发展§1软件工程的产生和发展软件工程(SoftwareEngineering)是在克服20世纪60年代末所出现的“软件危机”的过程中逐渐形成与发展的。在不到40年的时间里,在软件工程的理论和实践两方面都取得了长足的进步。软件工程是一门指导计算机软件系统开发和维护的工程学科,是一门新兴的边缘学科,它涉及到计算机科学、工程科学、管理科学、数学等多学科,研究的范围广,主要研究如何应用软件开发的科学理论和工程技术来指导大型软件系统的开发。

2、例如,现代操作系统的开发,如果不采用软件工程的方法是不可能的。在我国加入WTO后,大力推广、应用软件工程的开发技术及管理技术,提高软件工程的应用水平,对促进我国软件产业与国际接轨,推动我国软件产业的迅速发展起着十分重要的关键作用。1软件工程的发展过程§1软件工程的产生和发展自从第一台计算机诞生以来,就开始了软件的生产,到目前为止,软件发展经历了三个阶段:1.程序设计时代(1946-1956年)采用“个体生产方式”,即软件开发完全依赖于程序员个人的能力水平。2.程序系统时代(1956-1968年)由于软件应用范围及规模的不断扩大,个体生产已经不能够满足软件生产的需要,一个软件需要由几个

3、人协同完成,采用“生产作坊方式”。该阶段的后期,随着软件需求量、规模及复杂度的增大,生产作坊的方式已经不能够适应软件生产的需要,出现所谓“软件危机”。3.软件工程时代(1968年至今)这阶段的主要任务是为了克服软件危机,适应软件发展的需要,而采用“工程化的生产”方式。软件工程的产生和发展是与软件的发展紧密相关的。2软件危机20世纪60年代末70年代初,西方工业发达国家曾出现过软件危机事件,所谓软件危机是指在软件开发和维护过程中所遇到的一系列严重问题。“软件危机”(Softwarecrisis)的出现是由于软件的规模越来越大,复杂度不断增加,软件需求量增大。而软件开发过程是一种高密集度

4、的脑力劳动,软件开发的模式及技术不能适应软件发展的需要。致使大量质量低劣的软件涌向市场,有的花费大量人力财力,而在开发过程中就夭折。例如:IBM公司的OS/360,共约100万条指令,花费了5000个人年;经费达数亿美元,而结果却令人沮丧,错误多达2000个以上,系统根本无法正常运行。OS/360系统的负责人Brooks这样描述开发过程的困难和混乱:“…像巨兽在泥潭中作垂死挣扎,挣扎得越猛,泥浆就沾得越多,最后没有一个野兽能够逃脱淹没在泥潭中的命运。…”1963年,美国飞往火星的火箭因为一个软件错误而爆炸。1967年8月23日,原苏联”结盟一号”载人宇宙飞船也因软件错误烧毁。2软件危

5、机2软件危机“软件危机”主要表现在两个方面:(1)软件产品质量低劣,甚至开发过程就夭折;(2)软件生产率低,不能满足需要。具体:·对软件开发成本和进度的估计不准确;·用户对“完成的”软件系统不满意;·软件产品质量不稳定;·软件常常不可维护;·软件没有文档或文档不足;·软件成本逐年上升;·软件供不应求;·软件本身十分复杂。结论:(1)如何开发新的软件,以满足对软件日益增长的需求;(2)如何维护数量不断膨胀的软件。○软件工程的定义1968年北大西洋公约组织在联邦德国的一次学术会议上,首次提出软件工程的概念,从而形成一门新兴的学科-软件工程学,从此软件生产开始了一个新的飞跃。自从提出软件工

6、程这个术语,对于软件工程就有了各种各样的定义,但是它们的基本思想都是强调在软件开发过程中应用工程化原则的重要性。Boehm曾为软件工程下了定义:“运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料”。这里的“设计”应包括软件的需求分析和对软件修改时所进行的再设计活动。Fairley认为:“软件工程学是为在成本限定以内按时完成开发和修改软件产品所需的系统生产以及维护的技术和管理的科学”。FritzBauer则给出一个软件工程学的定义:“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。1983年IEEE

7、的定义:“软件工程是开发、运行、维护和修复软件的系统方法”。1993年IEEE又有进一步的定义:“(1)把系统化的、规范化的、可度量的途径应用于软件开发、运行和维护的过程,也就是把工程化应用于软件中;(2)研究(1)中提到的途径。”3软件工程的定义○软件工程研究的内容软件工程是一门新兴的边缘学科,涉及的学科多,研究的范围广。归结起来软件工程研究的主要内容有以下几方面:软件质量、软件工程的过程、软件开发方法和技术;软件开发工具及环境;软件管理技术;软件规范(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。