01软件工程引论

01软件工程引论

ID:20475708

大小:1.06 MB

页数:55页

时间:2018-10-10

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

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

1、软件工程软件工程引论1.1软件产品的概念与特征1.2软件危机1.3软件工程的产生及其发展9/7/20212对于软件的一种公认的解释是:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序、数据及其相关文档的完整集合。其中,程序是为实现设计的功能和性能要求而编写的指令序列;数据是使指令能够正常操纵信息的数据结构;文档是与程序开发、维护和使用有关的图文资料。1.1软件产品的概念与特征9/7/20213表1.1根据规模进行软件分类软件规模类别参加人员数开发期限产品规模(源代码行数)微型11~4周0.5 k小型11~6月1~2 k中型

2、2~51~2年5~50 k大型5~202~3年50~100 k甚大型100~10004~5年1 M极大型2000~50005~10年1~10 M9/7/20214表1.2计算机软件发展的三个阶段及其特点阶段特点程序设计程序系统软件工程软件所指程序程序及说明书程序、文档、数据主要程序设计语言汇编及机器语言高级语言软件语言*软件工作范围程序编写设计和测试整个软件生命周期需求者程序设计者本人少数用户市场用户开发软件的组织个人开发小组开发小组及大、中型开发机构软件规模小型中、小型大、中、小型9/7/20215阶段特点程序设计程序系统软件工

3、程决定质量的因素个人技术小组技术水平技术与管理水平开发技术和手段子程序、程序库结构化程序设计数据库、开发工具、集成开发环境、工程化开发方法、标准和规范、网络及分布式开发、面向对象技术、计算机辅助软件工程维护责任者程序设计者开发小组专职维护人员硬件的特征高价、存储量小、可靠性差降价,速度、容量和可靠性明显提高向超高速、大容量、网络化、微型化方向发展软件的特征完全不受重视软件的技术发展不能满足需求,出现软件危机开发技术有进步,但仍未完全摆脱软件危机表1.2计算机软件发展的三个阶段及其特点9/7/202161.2软件危机1.2.1软件危

4、机及其表现1968年,北大西洋公约组织的计算机科学家们在联邦德国召开的国际会议上讨论了软件危机问题,提出了“软件工程”这个名词。简单地说,所谓软件危机,就是指在软件开发和软件维护过程中所存在的一系列严重问题。具体地说,软件危机具有如下一些表现:9/7/20217(1)软件开发没有真正的计划性,对软件开发进度和软件开发成本的估计常常很不准确,计划的制定带有很大的盲目因素,因此工期超出、成本失控的现象经常困扰着软件开发者。(2)对于软件需求信息的获取常常不充分,软件产品往往不能真正地满足用户的实际需求。(3)缺乏良好的软件质量评测手段

5、,从而导致软件产品的质量常常得不到保证。9/7/20218(4)对于软件的可理解性、可维护性认识不够;软件的可复用性、可维护性不如人意。有些软件因为过于“个性化”,甚至是难以理解的,更谈不上进行维护。缺乏可复用性引起的大量重复性劳动极大地降低了软件的开发效率。(5)软件开发过程没有实现“规范化”,缺乏必要的文档资料或者文档资料不合格、不准确,难以进行专业维护。9/7/20219(6)软件开发的人力成本持续上升,如美国在1995年的软件开发成本已经占到了计算机系统成本的90%(如图1.2所示)。(7)缺乏自动化的软件开发技术,软件开

6、发的生产率依然低下,远远满足不了急剧增长的软件需求。9/7/202110六十年代末期,美国的一位著名计算机专家的评论:“我估计,即使细心地编写程序,每200条到300条指令中必定有一个错误。”由于美国当时缺乏软件人员,计算机公司大量招聘程序员,甚至公共汽车司机也被招去,因此粗制滥造软件大量涌向市场。1968年,有人在一次计算机软件学术会上说:“整个事业是建立在一个大骗局上”。可见,软件危机已发展到何种程度,它已明显地影响到社会的发展。计算机科学在软件危机中挣扎,社会在为软件危机付出沉重的代价。9/7/202111例:IBM公司在1

7、963-1966年开发的IBM360机的操作系统,花了5000人-年工作量,最多时有1000人投入开发工作,写出了近100万行源程序,结果每次发行的新版本都是从前一版本中找出1000个程序错误而修正的。9/7/2021121.2.2产生软件危机的原因1、客观上,软件具有明显的“不可视”特征,这就导致在完成编码并且上机运行之前,对于软件开发过程的进展情况较难衡量,软件产品的质量也较难进行先期评价,因此,对于开发软件的过程进行管理和控制比较困难。在客观上造成了软件难以维护的结果。2、主观上:可以归于早期软件开发的“个体化”特点,主要表

8、现为忽视软件需求分析的重要性、忽视软件的可理解性、文档不完备、轻视软件的可维护性、过分强调编码技巧等等方面。9/7/202113一般来说,软件产品从策划、定义、开发、使用与维护直到最后废弃,要经过一个漫长的时期,通常把这个时期称为软件的“生命周期”

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

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

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