论计算机软件技术的发展.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
论计算机软件技术的发展 在计算机系统发展的早期时代 20世纪印年代中期以前 ,通用硬件相当普遍,软件只是为每个具体应用而专门编写的。这时的软件通常是规模较小的程序,人们把程序设计看作是一种任人发挥创造才能的技术领域。当时一般认为,写出的程序只要能在计算机上得出正确的结果,程序的写法可以不受任何约束,而且只有那些通篇充满了程序技巧,使用了许多窍门的程序才是高水平的好程序,尽管这些程序很难为别人看懂。因此对程序设计语言的研究曾一度是软件技术研究的焦点。这时软件编写者和使用者往往是同一个 或同一组 人。这种个体化的软件环境,使得软件设计通常是在人们头脑中进行的一个隐含的过程,除了程序清单之外,设有其他文档资料保存下来 一,软件技术的发展 从20世纪60年代中期到20世纪70年代中期,计算机系统进人了发展的第二个时期。由于软件的广泛使用,出现了“软件作坊” 软件开发小组 。这个阶段可称之为程序系统阶段 程序不再是仅供极小范围使用,而需要较长时间为许多人使用。人们要求所使用的程序能容易看懂、容易使用 并且容易修改和扩充 于是,程序便从个人按自己意图创造的“艺术品”转变为能为广大用户接受的工程化产品,程序设计语言也由低级语言 机器语言、汇编语吉 发展到了高级语言 结构化语言、面向对象语言等等 但是,“软件作坊”基本上仍然沿用早期形成的个体化软件开发方法。 随着计算机的时益普及以及网络的推广应用,软件变得无处不在。井且这时同于一般程序, 一方面,一个显著特点是规模和复杂度骤增。例如,美国四代宇宙飞船的软件规模和复杂度呈指数增长,70年代末穿梭号宇宙飞船的软件包含4000万行目标代码。假设一个人一年可以开发出一个一万行的程序,为了开发一个4000万行的软件,是否集中4000人的力量一年就可以完成呢?绝对做不到! 因为代码长度增加了4000倍,程序复杂程度的增加远远超过4000倍。而且如何保证每个人完成的工作台在一起确实能构成一个高质量的大型软件系统?这更是一个极端复杂、困难的问题,不仅涉及许多技术问题,而且必须有严格而科学的管理;另一方,软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。在写出程序代码并在计算机上试运行之前,软件开发过程的进展情况较难衡量,软件开发的质量也较难评价,因此,管理和控制软件开发过程相当困难;此外,软件在运行过程中不会因为使用时间过长而被“用坏”,如果运行中发现错误,很可能是在开发时期就隐含有故障。软件维护通常意味着改正或修改原来的设计,这在客观上使得软件较难维护 这些在“软件作坊”无法解决的难题使人们意识到:软件技术的发展已经不能满足需要,“软件危机”出现了! 为了从根本上解决在计算机软件的开发和维护过程中所出现的这一系列严重问题 提出了“软件工程”的概念。软件工程即是从管理和技术两方面来研究如何更好地开发和维护计算机软件的一门新兴学科。软件工程学要求在开发与维护软件产品时,采用工程的概念、原理、技术和方法,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,使开发出的软件产品满足软件的本质特性:构造性和演化性。软件的构造性是指软件是客观世界中间题空间的具体描述,也即软件是有结构的。一个好的软件就如同一座设计精良的建筑,层次分明、结构合理.并且符合人们的审美观念、使用习惯、思维方式。软件的演化性是指软件是客观事物的一种反映.是知识的提炼、知识的体现、知识的固化。而客观世界是按照事物发展的普遍规律不断发展、不断变化的,因此,反映客观事物的软件也必须不断地发展,即软件要能随着新需求、新技术的不断出现而不断升级。 软件工程强调使用生存周期方法学和各种结构分析及结构设计技术。生存周期方法学即是从时间角度对软件开发和维护的复杂问题进行分解,把软件生存的漫长周期依次划分为若干阶段,每个阶段有相对独立的任务,然后逐步完成每个阶段的任务。采用软件工程方法论开发软件的时候,从对任务的抽象逻辑分析开始,一个阶段一个阶段地进行开发。前一个阶段任务的完成是开始进行后一个阶段工作的前提和基础,而后一阶段任务的完成通常是使前一阶段提出的解法更进一步具体化,加进了更多的物理细节 每一个阶段的开始和结束都有严格标准,对于任何两个相邻的阶段而言,前一阶段的结束标准就是后一阶段的开始标准。在每一个阶段结束之前都必须进行正式严格的技术审查和管理复审,从技术和管理两方面对这个阶段的开发成果进行检查.通过之后这个阶段才算结束;如果检查通不过,则必须进行必要的返工,并且返工后还要再经过审查。审查的一条主要标准就是每个阶段都应该交出“最新式的”高质量的文档资料,从而保证在软件开发工程结束时有一个完整准确的软件配置交付使用 在完成生存周期每个阶段的任务时,应该采用适合该阶段任务特点的系统化的技术方法— 结构分析或结构设计技术,即

文档评论(0)

80092355km + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档