第一章__软件工程学概述

第一章__软件工程学概述

ID:18548351

大小:371.00 KB

页数:21页

时间:2018-09-18

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

《第一章__软件工程学概述》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第一章软件工程学概述一、软件及其特点软件:是程序、数据和相关文档的完整集合。程序是为了解决某一问题、按事先设计的功能和性能要求、用程序设计语言描述的适合计算机执行的语句序列;数据是使程序能正常操纵信息的数据结构;文档是描述程序、数据和系统开发及使用的各种图文资料。文档的作用是:①记录软件开发活动和阶段成果,具有永久性,可供人或机器阅读;②用于专业人员和用户之间的通信和交流;③控制软件生产过程;④管理、维护、介绍软件产品。软件的特点:软件是逻辑产品,而不是物理产品(如硬件)。其特点为:(1)具有抽象性(缺乏可见性),可以记录在纸上,存储器中,可以运行,但无

2、法看到它的形态。(2)软件本身是复杂的。软件的复杂性可能来自它所反映的实际问题的复杂性,也可能来自程序逻辑结构的复杂性。(3)软件中存在潜伏的错误,不像硬件错误那样比较容易发现和一般都能被排除。必须对软件开发过程进行质量控制,减少出错。(4)软件开发更依赖于开发人员的业务素质、智力、人员的组织、合作和管理。(5)软件开发设计几乎都是从头开始,工作量大、成本高、进度难以估计。(6)软件开发成功后,可以对原版进行复制,因此存在知识产权问题。(7)软件不会磨损和老化,但会退化、过时,必须要多次修改(维护)软件。软件在使用过程中的维护是复杂:a.纠错性维护---

3、-改正运行期间发现的潜伏错误;b.完善性维护----提高或完善软件的性能;c.适应性维护----修改软件,以适应软硬件环境的变化;d.预防性维护----改进软件未来的可维护性和可靠性。软件具有生命周期,一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生命周期。(8)相当多的软件工作涉及到社会因素。许多软件的开发和运行涉及机构、体制及管理方式等问题,甚至涉及到人的观念和人们的心理。社会因素直接影响到项目的成败。二、软件发展的四个阶段第一阶段----20世纪60年代中期以前,软件通常只是规模较小的程序

4、;软件开发处于个体化生产状态;软件设计通常是人们头脑里进行的一个隐含的过程;除了程序清单之外,没有其他的文档资料被保存下来。在这一阶段中,软件还没有系统化的开发方法;目标主要集中在如何提高时空效率上。第二阶段----从20世纪60年代中期到70年代末期。软件开发已进入了作坊式生产方式,即出现了“软件作坊”;软件开发开始形成产品;基本沿用前面的开发方法。因此,从20世纪60年代末开始,出现了逐步比较严重的“软件危机”,“软件工程”被提出。第三阶段----从20世纪70年代中期到20世纪80年代末期。软件开发进入了产业化生产,即出现了众多大型的“软件公司”。

5、在这一阶段,软件开发开始采用了“软件工程”的方法,软件产品急剧增加,质量也有了很大的提高。第四阶段----从20世纪80年代末期开始的。这是一个软件产业大发展的时期。也是软件工程大发展的时期,人们开始采用面向对象的技术和可视化的集成开发环境。迄今为止,我们仍然没有彻底摆脱“软件危机”的困扰,软件已经成为限制计算机系统发展的瓶颈。为了更有效地开发与维护软件,软件工作者在20世纪60年代后期开始认真研究消除软件危机的途径,从而逐渐形成了一门新兴的工程学科----计算机软件工程学(通常简称为软件工程)。三、软件危机1、什么是软件危机----软件危机是指在计算机

6、软件开发、使用与维护过程中遇到的一系列严重问题和难题。它包括两方面:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断增长的已有软件。2、软件危机的典型表现P2,P9~12(1)对软件开发成本和进度的估计常常很不准确。常常出现实际成本比估算成本高出一个数量级、实际进度比计划进度拖延几个月甚至几年的现象。而为了赶进度和节约成本所采取的一些权宜之计又往往损害了软件产品的质量。这些都降低了开发商的信誉,引起用户不满。(2)用户对已完成的软件不满意的现象时有发生。(3)软件产品的质量往往是靠不住的。(4)软件常常是不可维护的。(5)软件通常没有适当的文档

7、资料。文档资料不全或不合格,必将给软件开发和维护工作带来许多难以想象的困难和难以解决的问题。软件开发中文档的作用:P2,P11(6)软件成本、软件维护费在计算机系统总成本中所占比例逐年上升。(7)开发生产率提高的速度远跟不上计算机应用普及的需求。3、产生软件危机的原因(1)来自软件自身的特点P3,P14~15(2)软件开发与维护的方法不当P3~4,P17~24a.对软件缺乏正确的认识,认为“软件就是程序,软件开发就是编写程序并使之运行”;b.忽视问题定义、可行性研究和需求分析等;c.缺乏有力的方法学的指导和有效的开发工具的支持。软件开发过多地依靠程序员的

8、“技巧”,从而加剧了软件产品的个性化;d.只重视程序,而忽视软件的完整配置;e.

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

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

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