第2章--软件工程概论

第2章--软件工程概论

ID:15715120

大小:20.77 MB

页数:24页

时间:2018-08-05

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

《第2章--软件工程概论》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、··29··第2章软件工程概论软件也许根本不同于历史上已经出现的任何产品。故而,软件实践不能、也不应完全参照传统实践进行。——MichealMahoneyMichealMahoney(1939–2008)是美国普林斯顿(Princeton)大学科学史教授,对软件工程学科有独到研究。他的个人网址是:http://www.princeton.edu/~hos/Mahoney/。.科学史研究专家MichealMahoney认为,软件是一类崭新的产品,具有不同于已有所有产品的独特之处。因此,软件工程是人类的又一次创新

2、,软件开发不能、也不应完全参照传统产品开发模式进行。软件工程研究者和实践者只有通过不断创新和实践,才能建立起属于软件工程学科的真正知识体系。目前,这一体系已经基本建成,以2004年由IEEE发布的“软件工程知识体指南”(SWEBOK)为标志性里程碑。本章接续上一章关于软件的介绍,阐述软件工程及其学科特征,帮助读者形成初步的软件工程概念。本章的内容分为三大块:首先,聚焦软件危机,介绍其含义,并列举若干实证数据,同时分析它存在原因。其次,讲述软件工程的定义、核心问题、“魔鬼四角”、四大挑战及四方满意度“天平”。最

3、后,关注软件工程学科,审定它的学科性质,简介其发展史,描述它的学科知识体系和核心知识形态。带着问题去阅读(1)软件危机真的存在吗?如果存在,又是为什么呢?对此,软件工程师为什么总是熟视无睹呢?(2)什么是软件工程?它要解决的核心问题是什么?目前有足够好的解决策略吗?(3)软件工程实践面临哪些巨大挑战?为什么会存在这些挑战?就目前业界实践而言,这些挑战是否已经得到有效处理?(4)软件工程真是一门工程学科吗?它又有什么区别于一般工程学科的特征?(5)软件工程学科的核心知识形态有哪些?如何裁定某项知识是否属于核心知

4、识?软件工程师为什么需要重点学习和熟练掌握软件工程核心知识?(6)如何学习软件工程核心知识?.··30··第2章软件工程概论2.1引言在上世纪四五十年代,程序/软件的规模都很小,主要用于解决一些科学计算问题。当时的程序员俗称“黑客”(Hacker),其群体规模很小,热衷于编程且具有卓越的编程技能。当时的外部环境对编程..非...常宽..容..:能够容忍持续很长时间的编程工作,且一般不计较编程成本(主要是程序员薪资)Ê。进入60年代,“程序”渐渐改称为“软件”,所要解决的科学计算和商业问题日趋复杂,规模因而迅速

5、增长。此时,社会各行各业对软件的需求迅猛增长,都要求快速开发出高可靠的软件产品。但是,当时的软件人才极其紧缺,大批涌入软件业的就业者缺乏扎实的编程功底和工程技能,无法高效地完成软件开发工作。计算机学界察觉到这种现象,开始探讨“如..何.....提高.....软件..开....发...效率..”这一关键问题。这其中的一个标志性事件就是1968年在德国小镇Garmisch举行的北大西洋公约组织(NATO,简称北约)的科学专委会议。在该会议上,“软件危机”和“软件工程”作为全新概念被首次正式提出并受到广泛讨论(两者

6、的定义参见第30和34页)。这个会议也因此正式开启了之后几十年的学科发展历程。接下来的两小节就围绕这两个概念展开,之后再讨论软件工程的学科特征。2.2软件危机2.2.1什么是软件危机?在1968年的北约科学专委会议上,学界先驱FriedrichBauer(鲍尔)Ë首次提出了软件危机(SoftwareCrisis)概念,以描述当时...低下..的..软..件....生...产效..率..难....以...满足..日..益..快.....速增..长..的..计..算.....需求..的..现....象。从那以后,

7、“软件危机”就一直被频繁使用,其含义也不断被扩充,最终成为了各行业人员批评和谴责软件工程行业的所有理由的总代名词。定义2.1(软件危机)软件危机原指低下的软件生产率难以满足快速增长的现实需要的现象,后泛指以下“令人不满意”的常见现象:软件生产率低、成本高、质量低、风险高和失败率高等。.从上世纪60年代至今,软件危机一直普遍存在于软件业,至今也没有明显消减迹象,甚至在某些方面还呈现出愈演愈烈之势。如下列举的实证数据就充分说明了这一现象。Ê注意,并不是当时的程序员薪资低到可以“不计较”的程度,而是因为当时的硬件成

8、本过于高昂。相比于几十倍或上百倍于自身的硬件成本,编程成本就几乎可以“不计较”。ËFriedrichBauer(鲍尔)是一位广受尊敬的计算机科学研究前辈。他曾获1988年IEEE计算机先驱奖。2.2.软件危机··31··2.2.2危机存在的实证美国著名的IT调查机构Standish发布了一系列的针对全球(主要是北美)软件项目的Chaos调查报告,其中的一些重要数据如表2.1所示。典型的:在1995年

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

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

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