[教育学]第一章 软件导论.ppt

  1. 1、本文档共79页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[教育学]第一章 软件导论

软件工程导论 李艳 第1章 软件工程学概述 软件工程 软件危机 软件生命周期 软件工程 小结 1.1软件、软件危机 软件   第一个写软件的人是Ada (Augusta Ada Lovelace),在1860 年代他尝试为Babbage(Charles Babbage)的机械式计算机写软件。 尽管他们的努力失败了,但他们的名 字永远载入了计算机发展的史册。 爱达·奥古斯塔·拉芙拉斯 1815-1852 伟大诗人拜伦的女儿 爱达的手迹 爱达短暂的一生 出生五周,父母离异仅37岁,因多病而早逝。为纪念她,1979年美国国防部的一种编程语言命名为Ada语言。 爱达的主要贡献 1、指出分析机可以编程,发现编程的基本要素(如循环、子程序),被誉为世界上第一位程序员。 2、建议分析机用二进制存储。 3、预言分析机能唱歌、绘画。 1.1.1 软件危机 在1950年,软件伴随着第一台电子计算机的问世诞生了。以写软件为职业的人也开始出现,他们多是经过训练的数学家和电子工程师。1960年代美国大学里开始出现授予计算机专业的学位,教人们写软件。 本世纪中叶软件产业从零开始起步,在短短的50年的时间里迅速发展成为推动人类社会发展的龙头产业,并造就了一批百万、亿万富翁。随着信息产业的发展,软件对人类社会性越来越重要。    从60年代中期到70年代中期是计算机系统发展的第二个时期,在这一时期软件开始作为一种产品被广泛使用,出现了“软件作坊” ,应别人的需求写软件。这一软件开发的方法基本上仍然沿用早期的个体化软件开发方式,但软件的数量急剧膨胀,软件需求日趋复杂,维护的难度越来越大,开发成本令人吃惊地高,而失败的软件开发项目却屡见不鲜。“软件危机”就这样开始了!    具体地说,软件危机主要有以下表现: (1)对软件开发成本和进度的估计常常不准确。开发成本超出预算,实际进度比预定计划一再拖延的现象并不罕见。 (2)用户对“已完成”系统不满意的现象经常发生。软件开发人员和用户之间的信息交流往往很不充分,”闭门造车”必然导致最终的产品不符合用户的实际需要. (3)软件产品的质量往往靠不住。软件质量保证技术(审查、复审、程序正确性证明和测试)还没有坚持不懈的应用到软件开发的全过程中,这些都导致软件产品发生质量问题。    (4)软件常常是不可维护的。很多程序中的错误是非常难改正的,实际上不可能使这些程序适应新的硬件环境,也不能根据用户的需要在原有程序中增加一些新的功能. “ 可重用的软件”还是一个没有完全做到的、正在努力追求的目标,人们仍然在重复开发类似的或基本类似的软件。 (5)软件通常没有适当的文档资料。文档资料应该是在软件开发过程中产生出来的,而且应该是“必威体育精装版式的”。软件开发组织的管理人员可以使用这些文档资料来管理和评价软件开发工程的进展状况。  (6)软件的成本不断提高。软件成本大约已占计算机系统总成本的90%    (7)软件开发生产率的提高赶不上硬件的发展和人们需求的增长。 1.1.2 软件危机产生的原因 软件工程研究结果表明,软件危机的原因主要有两方面: ①与软件本身的特点有关。 软件不同于硬件,它是计算机系统中的逻辑部件而 不是物理部件;软件不会因使用时间过长而“老化”或“用 坏”;运行中发现了错误,很可能是遇到了一个在开发时 期引入的在测试阶段没能检测出来的错误.这样,软件维 护通常意味着改正或修改原来的设计,这就在客观上使 得软件较难维护.    ②危机原因来自于软件开发人员的如下弱点: 其一,软件产品是人的思维结果,因此软件生产水平最 终在相当程度上取决于软件人员的教育、训练和经验的 积累; 其二,对于大型软件往往需要许多人合作开发,甚至要 求软件开发人员深入应用领域的问题研究,这样就需要 在用户与软件人员之间以及软件开发人员之间相互通 讯,在此过程中难免发生理解的差异,从而导致后续错 误的设计或实现,而要消除这些误解和错误往往需要付 出巨大的代价;   其三,由于计算机技术和应用发展迅速,知识更新周期加快,软件开发人员经常处在变化之中,不仅需要适应硬件更新的变化,而且还要涉及日益扩大的应用领域问题研究;软件开发人员所进行的每一项软件开发几乎都必须调整自身的知识结构以适应新的问题求解的需要,而这种调整是人所固有的学习行为,难以用工具来代替。     软件维护通常意味着改正或修改原来的设计,这就在客观上使得软件较难维护.与软件开发和维护有关的许多错误认识和作法的形成,可以归因于在计算机系统发展的早期阶段软件开发的个体化特

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档