[理学]软件工程技术与应用.pptVIP

  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文档。上传文档
查看更多
[理学]软件工程技术与应用

第1章 绪 论 1.1 软件与软件工程 1.2 软件工程的研究内容 1.3 软件开发模型 第1章 绪 论 由于软件的发展,使计算机应用逐步渗透到社会生活的各个角落,使各行各业都发生很大的变化。 对软件的品种、数量、功能和质量等提出了越来越高的要求。 软件开发过程、方法、工具和环境的研究,软件工程应运而生。 本章介绍软件和软件工程的基本概念,包括软件、软件危机、软件工程学以及软件开发模型等内容。 1.1 软件与软件工程 从20世纪60年代以来,软件也从规模、功能等方面得到了很大的发展,人们对软件质量的要求也越来越高。 什么是软件,软件有哪些特征呢? 1.1.1 软件 1. 软件的定义 有些初学者认为软件就是程序,这个理解是不完全的。 美国著名的软件工程专家R.S.Pressman的定义:“软件是能够完成预定功能和性能的可执行的计算机程序和使程序正常执行所需要的数据,加上描述程序的操作和使用的文档。” 可以简明地表述,“软件 = 程序 + 数据 + 文档”。 软件被划分为系统软件、应用软件和介于这两者之间的中间件。 2. 软件的特征 软件开发不同于硬件设计 软件生产不同于硬件制造 软件维护不同于硬件维修 3. 软件危机 出现软件危机的原因。 软件危机,使许多产业界人士认识到必须把软件生产从个人化方式改变为工程化方式,从而导致了软件工程的诞生。 1.1.2 软件工程 1.软件工程的概念 软件工程的基本理念是“按工程的概念、原理、技术和方法开发与维护计算机软件”。 “软件工程”一词,首先是1968年北大西洋公约组织(NATO)在联邦德国召开的一次会议上提出的。 人们从不同的角度,给软件工程下过各种定义。但是不论有多少种说法,它的中心思想,是把软件当作一种工业产品,要求“采用工程化的原理与方法对软件进行计划、开发和维护”。 2.软件工程的基本原则 1983年,B.W.Boehm提出了著名的软件工程七条基本原理。 软件工程围绕工程设计、工程支持以及工程管理,提出了以下四项基本原则: 第一,选取适宜开发范型。 第二,采用合适的设计方法。 第三,提供高质量的工程支持。 第四,重视开发过程的管理。 1.2 软件工程的研究内容 软件工程学主要有两个分支:软件开发技术和软件工程管理。 本节主要介绍软件开发技术的相关内容。 1.2.1 软件开发过程 软件开发过程是指开发一个最终能满足需求且达到目标的软件产品所需要的步骤。 1.2.2 软件开发方法 早期的程序设计基本上属于个人活动性质,程序员各行其是,并无统一的方法可循; 这时的软件开发方法称为个性化软件开发(Individualized Software Development)。 1.2.2 软件开发方法 20世纪 60年代后期兴起的结构化开发方法。 随后,人们又认识到编写程序仅是软件开发过程中的一个环节。 有效的开发应该包括“需求分析”、“软件设计”、“编码”等多个阶段。 结构化的思想扩展到分析阶段和设计阶段,于是形成了 “结构化分析” 与“结构化设计”等结构化软件开发(Structured Software Development)。 1.2.2 软件开发方法 80年代以后出现的C++、Java等语言,促进了面向对象程序设计的广泛流行。 仅仅使用面向对象程序设计不会产生最好的效果。只有在软件开发的早期乃至全过程都采用面向对象技术,才能更好地发挥该技术的固有优势。 于是,形成了包括“面向对象需求分析—面向对象设计—面向对象编码”在内的面向对象软件开发(Object Oriented Software Development)方法。 1.2.3 软件开发工具 1. 软件工具 编译程序、编辑程序、连接程序以及支持它们的计算机操作系统,都属于软件工具。 例如:编码阶段常用的C和VB。 2. 软件工程环境 方法与工具相结合,再加上配套的软、硬件支持就形成环境。 软件工程环境 (software engineering environment, 简称SE2) 1.3 软件开发模型 1.3.1 线性模型 1.3.2 原型模型 1.3.3 演化模型 增量模型 螺旋模型 1.3.4 基于构件的模型 1.3.5 形式化模型 转换模型 净室模型 螺旋模型 螺旋模型将瀑布模型与演化模型结合起来,并且加入两种模型均忽略了的风险分析。 螺旋模型沿着螺线旋转,自内向外每旋转一圈便开发出更完善的一个新版本。 制定计划 确定软件目标,选定实施方案,弄清项目开发的限制条件; 风险分析 分析所选方案,考虑如何识别和消除风险; 实施工程 实施软件开发; 客户评估 评价开发,提出修正建议。 软件开发模型小结: 每一种模型都适用于软件开发的某类问题,它们各有优缺点。 软件开发组织应该选择适合于本组织及其管理、

文档评论(0)

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

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

1亿VIP精品文档

相关文档