计算机导论单元7 软件工程基础.pptx

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

1单元?7软件工程基础软件行业富有挑战与创造性,软件开发是复杂系统工程,常遇问题甚至失败,总结失败原因汲取教训对成功至关重要。软件工程因应软件开发与软件危机而生,它传授开发思维而非实操,给出瀑布、快速原型、增量、喷泉等模型。学习软件工程能让编程人员开发更规范,利于软件修改优化,使开发有组织性、更有效,提升效率。它是软件开发核心主线,是高质量、进度与成本可控完成软件生产的支撑,串联需求、设计、开发、测试等环节,高效驱动各环节传递传承。

22软件工程的概念7.1软件体系结构的模型7.27.37.47.57.6目录软件开发模型软件开发方法软件过程和项目管理软件测试

7.1软件工程的概念37.1.1软件工程的概念软件工程是一门研究以工程化方法,开发和维护高质量软件的工程学科。软件工程缺乏一个统一的定义,本书选用的定义如下:软件工程是应用计算机科学、数学、工程科学及管理科学等原理,开发软件的工程,其借鉴传统工程的原则、方法以提高质量、降低成本和改进算法。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于管理计划、资源、质量、成本等。被较为认可的一种对软件工程的定义为:软件工程是研究和应用如何以系统化、规范化、定量化的过程化方法去开发和维护软件,以及如何把经过时间检验而证明正确的管理技术和当前能够得到的最佳技术方法结合起来。7.1.2软件生命周期软件生命周期又称为软件生存周期,是指软件从立项开始,经过开发、使用,直到最后废弃的整个过程。通常将软件的生命周期划分为系统调查、系统分析、系统设计、程序设计、系统测试、运行维护等阶段。概括地说,软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步被划分成若干个阶段。下面简要介绍软件生命周期每个阶段的基本任务。

1.系统调查阶段通过对客户的访问调查,开发者了解现行系统的组织分工、业务流程以及资源,提出新系统的目标,并从技术、经济、社会等方面进行软件开发的可行性研究。2.系统分析阶段开发者对现行系统的业务流程进行分析研究,确定新系统必须具备哪些功能,包括哪些界面,并且建立新系统的逻辑模型,如数据流程图、数据字典和处理过程等。该阶段的主要任务是明确目标系统必须“做什么”。系统分析阶段确定的系统逻辑模型是以后设计和实现目标系统的基础,因此必须准确完整地体现用户的要求。这个阶段的一项重要任务是用正式文档准确地记录目标系统的需求,这份文档通常被称为需求规格说明书。3.系统设计阶段系统设计阶段主要解决“怎么做”的问题,即提出系统的物理模型。系统设计阶段细分为概要设计阶段和详细设计阶段。概要设计阶段又称为总体设计阶段,这个阶段必须回答的关键问题是:“概括地说,应该怎样实现目标系统?”。概要设计阶段以比较抽象的方式提出了解决问题的办法。详细设计阶段的任务就是把解法具体化,也就是回答下面这个关键问题:“应该怎样具体地实现这个系统呢?”。详细设计阶段也称为模块设计阶段,这个阶段将详细地设计每个模块,确定实现模块功能所需要的算法和数据结构。这个阶段的任务还不是编写程序,而是设计出程序的详细规格说明。这种规格说明的作用类似于其他领域中工程师经常使用的工程蓝图,它们应该包含必要的细节,程序员可以根据它们写出实际的程序代码。4

4.程序设计阶段程序设计阶段的关键任务是编写出正确的、容易理解的、容易维护的程序代码。程序员根据目标系统的性质和实际环境,选取一种适当的高级程序设计语言,把详细设计阶段的结果转化成用计算机语言编写的程序,并且仔细测试编写出的每一个程序模块。5.系统测试阶段系统测试阶段的关键任务是通过各种类型的测试以及相应的调试使软件系统达到规定的要求。最基本的测试是集成测试和验收测试。所谓集成测试是根据设计阶段的软件结构,把经过单元测试检验的模块按某种选定的策略装配起来,在装配过程中对程序进行必要的测试。所谓验收测试则是按照需求规格说明书的规定,由用户对目标系统进行验收。必要时还可以再通过现场测试或平行运行等方法对目标系统做进一步测试检验。分析软件测试的结果可以预测软件的可靠性,反之,根据对软件可靠性的要求,也可以决定测试和调试过程的结束时间。开发者应该使用正式的文档资料把测试计划、详细测试方案以及实际测试结果保存下来,作为软件配置的一个组成部分。6.运行维护阶段系统投入运行,开发者需要对软件进行必要的修改和维护。系统维护的关键任务是通过各种必要的维护活动使系统持久满足用户的需要。维护活动通常有4类:改正性维护,也就是诊断和改正软件在使用过程中发现的错误;适应性维护,即修改软件以适应环境的变化;完善性维护,即根据用户的要求改进或扩充软件,使它更完善;预防性维护,即修改软件以为将来的维护活动做准备。5

7.2软件

文档评论(0)

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

中学高级教师 从事一线教育教研15年多

1亿VIP精品文档

相关文档