大学计算机基础(第6版)(微课版) 课件 第8章 软件工程基础.pptx

大学计算机基础(第6版)(微课版) 课件 第8章 软件工程基础.pptx

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

大学计算机基础

第8章软件工程基础大学计算机基础课程组2022年4月

目录软件工程概述1需求分析及其方法2软件设计及其方法3软件编程4软件测试52软件调试6

8.1软件工程概述8.1.1软件2软件程序数据文档程序是按事先设计的功能和性能要求执行的指令序列数据是使程序能够正确地处理信息的数据结构文档是与程序开发、维护和使用有关的图文资料

8.1软件工程概述8.1.1软件1.软件的特点2软件无明显的制造过程不会磨损和老化是逻辑产品依赖硬件和环境复杂性高、成本昂贵涉及社会因素

8.1软件工程概述8.1.1软件2.软件的分类2系统软件,与计算机硬件紧密结合在一起,管理计算机的软硬件资源,提高计算机的使用效率并为计算机用户提供各种服务的软件。支撑软件,协助用户开发软件的工具性软件。应用软件,为应用于特定领域而开发的软件。

8.1软件工程概述8.1.2软件工程1.软件工程的定义软件工程是用工程科学的知识和技术原理来定义、开发和维护软件的一门学科。IEEE计算机协会将软件工程定义为:(1)将系统化、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件。(2)对(1)中所述方法的研究。2

8.1软件工程概述8.1.2软件工程2.软件工程三要素2过程是为了获得高质量的软件所需要完成的一系列任务的框架。过程对软件开发的过程和方法提供自动或半自动化的支持。工具方法完成软件开发的各项任务的技术方法,为软件开发提供“如何做”的技术。

8.1软件工程概述8.1.2软件工程2.软件工程三要素常见的软件开发过程模型有很多种,传统的有瀑布模型、快速原型模型、增量模型、螺旋模型及喷泉模型,现代的有基于组件的开发模型、统一软件开发过程(RationalUnifiedProcess,RUP)模型等。2

8.1软件工程概述8.1.2软件工程2.软件工程三要素2图8.1统一软件开发过程模型

8.1软件工程概述8.1.3软件生命周期类似于人和其他生物,软件也存在产生、发展和消亡的过程,我们称之为生命周期。2图8.2软件生命周期

8.1软件工程概述8.1.3软件生命周期问题定义。确定要解决什么问题。可行性研究。确定问题是否能解决,因此需要探讨问题不同的解决方案,针对每一个方案从技术、经济、法律和用户操作等方面,研究完成该项软件任务的可行性,制订完成开发任务的实施计划。生成可行性研究报告,提交管理部门进行审查。11

8.1软件工程概述8.1.3软件生命周期需求分析。确定待开发软件能“做什么”。为此,需要对用户要求进行分析,明确目标系统的功能需求和非功能需求,从功能、数据、行为等方面搭建分析模型,描述系统的静态特性和动态特性。这个阶段会产生需求规格说明书,提交管理部门进行审查。12

8.1软件工程概述8.1.3软件生命周期软件设计。本阶段是软件工程的技术核心,确定待开发软件“如何做”。为此,在设计阶段应该制定设计方案,把已经明确的各项需求转换成待开发软件的软件体系结构,这就是概要设计。然后详细描述软件体系结构中各模块所要完成的工作,为源程序的编写打下基础,这就是详细设计。所以设计阶段会产生概要设计说明书和详细设计说明书,并提交管理部门进行审查。13

8.1软件工程概述8.1.3软件生命周期编码实现。本阶段是在软件设计的基础上编写程序。该阶段会生成源代码及用户手册、操作手册等面向用户的文档。软件测试。测试是保证软件质量的重要阶段,本阶段的主要任务就是设计测试用例,检验软件的各个组成部分,找出软件错误,最后产生软件测试报告。运行维护。软件一旦交付使用之后就进入维护阶段,因为软件在实际使用中可能会因为各种原因进行必要且可行的扩充、修改和删除。该阶段产生维护说明。14

8.2需求分析及其方法8.2.1需求分析为了开发出真正满足用户需要的软件产品,明确用户需求是关键。虽然在前期工作中,已经对用户需求有了初步了解,但是很多细节还没有考虑到。可行性研究是评估系统是否值得去开发,而不是对系统需求进行定义。如果说可行性研究是要决定“做还是不做”,那么需求分析就是要回答系统能“做什么”这个问题。需求分析在软件生命周期中是一个非常重要的环节,做好需求分析,能够为后面的软件开发质量打好基础。15

8.2需求分析及其方法8.2.1需求分析需求分析分为需求获取、分析建模、需求描述和需求评审四步。需求获取。需求获取就是收集并明确用户功能需求和非功能需求的过程。①功能需求描述系统应该做什么,即为用户和其他系统完成的功能和提供的服务。在某些情况下,功能需求还必须明确系统不应该做什么。②非功能需求定义了必须遵循的

文档评论(0)

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

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档