- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 计算机软件技术基础.ppt
第六章 计算机软件技术基础 软件工程基础 一、软件工程基本概念 二、结构化分析 三 、软件开发 四、软件测试 五 、程序的调试 一、软件工程基本概念 软件工程的概念起源于20世纪60年代末期出现的“软件危机”。软件危机提高了人们对软件开发重要性的认识。随着社会对软件需求的增长,计算机软件专家加强了对软件开发和维护的规律性、理论、方法和技术的研究,从而形成了一门介于软件科学、系统工程和工程管理学之间的边缘性学科,称之为软件工程学。软件的工程化生产也逐步形成软件产业。 1.软件开发经历的三个阶段 (1)程序设计时期(1946年~20世纪60年代中期) 程序员个人独立进行软件设计,该时期称为程序设计时期,其生产方式为个体手工方式,程序设计被视为某个人的神秘技巧。凭个人经验和编程技术单独进行。在这个阶段中,只有程序,没有软件的概念。 (2)软件时期(20世纪60年代中期~20世纪70年代中期) 随着计算机技术的发展,需要多人分工合作来开发软件,出现了“软件作坊”,产生了“软件”概念。由于软件生产在质量和数量上的高要求,软件的日趋庞大、日趋复杂,与软件工作者手工作坊式的生产方式之间,产生了深刻的矛盾,使得许多软件产品不可维护,最终导致出现了严重的“软件危机”。这个时期,称为程序系统时期。 (3)软件工程时期(1970年至今) 这个时期软件产业已经兴起,软件作坊已经发展为软件公司,甚至是跨国公司。软件的开发不再是“个体化”或“手工作坊”式的开发方式,而是以工程化的思想作指导,用工程化的原则、方法和标准来开发和维护软件。软件开发的成功率大大提高,软件的质量也有了很大的保证。软件也已经产品化、系列化、标准化、工程化。这个时期,称为软件工程时期。 2、软件危机及其原因 软件危机指的是在计算机软件的开发和维护过程中所遇到的一系列严重问题。 软件危机的原因,一方面是与软件本身的特点有关;另一方面是由软件开发和维护的方法不正确有关。 软件危机表现 ①软件的复杂性越来越高,“手工作坊”式的软件开发方式已无法满足要求。 ②对软件成本和进度统计不准,费用实际超过预算。 ③开发周期过长。 ④软件质量难以保证,常被怀疑。 ⑤缺乏良好的软件文档。 ⑥现有的软件极难维护。 ⑦软件开发效率远跟不上计算机发展的需求。 ⑧用户往往对软件不满意。 为摆脱软件危机,北大西洋公约组织成员国在1968年和1969年两度召开会议,商讨解决“软件危机”的对策。会议总结了软件开发中失败的经验与教训,吸收了机械工程和土木工程设计中成熟而严密的工程设计思想,首次提出了“软件工程”的概念,认为计算机软件的开发,也应像工程设计一样,进行规范性的开发,走“工程化”的道路。 3、软件工程学概述 (1)软件工程学的研究对象 软件工程学研究如何应用一些科学理论和工程技术来指导软件系统的开发与维护,使其成为一门严格的工程学科。 (2)软件工程学的基本目标 软件工程学的基本目标在于研究一套科学的工程方法,设计一套方便实用的工具系统,以达到在软件研制生产中投资少、效率高、质量优的目的。 (3)软件工程学的三要素 软件工程学的三个基本要素是方法、工具和管理。 (4)软件生命周期(Software Life Cycle) 一个软件项目从问题提出、定义、开发、使用、维护,直至被废弃,要经历一个漫长的时期,通常把这个时期称为软件生命周期。 4 软件定义 软件定义,又称为系统分析。这个时期的任务,是确定软件开发的总目标,确定软件开发工程的可行性,确定实现工程目标应该采用的策略和必须完成的功能,估计完成该项工程需要的资源和成本,制定出工程进度表。 软件定义,可进一步划分为三个阶段,即问题定义、可行性研究和需求分析。 (1)问题定义 问题定义阶段必须考虑的问题是“做什么”。 正确理解用户的真正需求,是系统开发成功的必要条件。软件开发人员与用户之间的沟通,写出对问题的理解,并在有用户参加的会议上认真讨论,澄清含糊不清的地方,改正理解不正确的地方,最后得到一份双方都认可的文档。问题定义阶段是软件生命周期中最短的阶段,一般不超过3天。 (2)可行性研究 可行性研究要研究问题的范围,并探索这个问题是否值得去解决,以及是否有可行的解决办法,可行性研究的结果是使用部门负责人做出是否继续这项工程决定的重要依据。 (3)需求分析 需求分析即系统分析,通常采用系统模型定义系统。在可行性分析的基础上,需求分析的主要任务是:明确用户要求软件系统必须满足的所有功
原创力文档


文档评论(0)