第五章 软的件工程.ppt

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

第五章 软件工程 主讲:乔志会 软件工程 随着软件规模和复杂程度的不断提高,软件从早期的程序发展为复杂的软件系统,参与软件系统开发的人员越来越多,使得软件开发面临诸多问题,如软件开发的规范化管理、软件质量管理、开发成本控制、开发方法和技术研究等。软件工程是为了适应软件产业化发展的需要而发展起来的一门软件项目开发的工程方法学。 软件工程 1.软件工程概述 软件工程是从管理和技术两方面研究如何更好地开发和维护计算机软件的工程学科,它采用工程的概念、原理、技术和方法来管理和控制软件开发的各个阶段,把经过时间证明正确的管理技术和最新的技术方法相结合,实现大型软件开发的正确性、易用性、易维护性和可重用性等目标。 主要内容 软件发展与软件危机 软件过程与软件生存周期 软件开发模型 1.软件工程概述 软件发展与软件危机 主要内容: (1)软件技术的发展 (2)软件危机 (3)软件工程的概念 1.软件工程概述 软件发展与软件危机 (1)软件技术的发展 ① 程序设计阶段:软件由使用者为特定目的而自编自用,没有通用的方法和统一的标准,软件开发围绕硬件进行,工程规模小,没有软件文档。 ② 程序系统阶段:多道程序设计和多用户系统引入了人机交互的概念,出现了软件产品和软件作坊。但由于程序设计的个性化特征突出,使得软件维护修改十分困难,出现了软件危机。 ③ 软件工程阶段(结构化方法):以软件的产品化、系列化、工程化、标准化为特征的软件产业迅速发展,建立了软件工程化的设计原则、方法和标准,结构化设计方法得以发展和完善。 ④ 软件工程阶段(面象对象方法):计算机体系结构迅速从集中的主机环境发展为分布式网络环境,计算机科学正朝着社会信息化和软件产业化方向发展,面向对象的开发方法和其它新的技术方法已在软件工程中表现出强大的生命力。 1.软件工程概述 软件发展与软件危机 (2)软件危机 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题,例如软件开发成本高、质量低、开发周期难控制、软件可靠性差、生产率低等状况。软件危机包含两方面的问题:一是如何开发软件,怎样满足用户对软件的日益增长的需求;二是如何维护数量不断膨胀的已有软件。具体来说,软件危机主要表现以下方面: ① 软件开发成本和进度无法控制。 ② 软件质量难以保证。 ③ 软件不可维护或维护程度非常低。 ④ 软件产品没有适当的文档数据。 ⑤ 软件的成本不断提高。 ⑥ 软件开发生产率的提高赶不上硬件的发展和应用需求的增长。 总之,可以将软件危机归结为成本、质量、生产率等问题。 1.软件工程概述 软件发展与软件危机 (3)软件工程的概念 软件工程是把系统化、规范化、可度量的方法应用于软件开发、运行和维护过程,即将工程化方法应用于软件方法研究中。软件开发方法、工具和过程构成了软件工程的三要素。软件工程的技术特点是强调规范化和文档化,目的是生产正确可用、开销合宜的软件产品。 1.软件工程概述 软件过程与软件生存周期 主要内容: (1)软件过程 (2)软件生存周期 1.软件工程概述 软件过程与软件生存周期 (1)软件过程 软件过程是为了获得高质量软件所需要实施的一系列过程、活动和任务的框架,其中包含了软件开发中需要制订的工作步骤。软件工程过程没有统一的模式,但一般情况下,软件过程应包含以下基本任务或过程: ① 软件定义:根据用户需求,进行软件规格和使用限制的定义。 ② 软件开发:根据软件规格定义,开发出合格的软件产品。 ③ 软件验收:通过验收确认软件能够满足用户提出的要求。 ④ 软件维护:根据用户需求变化对软件进行更新,修正软件缺陷,维护软件正常运行。 1.软件工程概述 软件过程与软件生存周期 (1)软件生存周期 软件从计划开发开始,到废弃不用为止,称为计算机软件的生存周期。一般来说,软件生存周期包括计划、开发、运行三个时期,六个阶段。 ① 制订计划:确定软件开发目标,给出软件功能、性能、可靠性以及接口等方面的要求;研究完成该项软件任务的可行性,探讨解决问题的可能方案;制订完成开发任务的实施计划,连同可行性研究报告提交管理部门审查。 ② 需求分析和定义:在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段做得好,将为整个软件开发项目的成功打下良好的基础。 ③ 软件设计:把已确定

文档评论(0)

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

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

1亿VIP精品文档

相关文档