软件开发方法二软件工程.pptxVIP

  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章软件开发方法

(二)软件工程

计算机教学实验中心

第2|94页

问题的提出

什么是软件工程?

为什么提出软件工程?

主要研究哪些问题?

软件工程的目标、原理

软件开发活动

……

第3|94页

1.了解软件工程的基本概念、基本原则

2.理解软件工程的主要定义

3.理解软件过程及模型

4.了解软件工程方法学

软件工程概述

第4|94页

什么是软件工程?

为什么要学习软件工程?

软件工程包括哪些内容?

……

软件工程?

“软件工程是一种描述规范。”

MichaelJackson

第*|94页

著名软件工程专家B.W.Boehm为软件工程的定义是:

运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

软件工程专家Boehm定义

第*|94页

1983年IEEE给出的定义为:

以优质、高效、低成本为目标,研究开发、运行和维护软件以及使之退役的系统方法。

其中,“软件”的定义为:计算机程序、方法、规则、相关的文档资料以及在计算机上运行时所必需的数据。

IEEE给出的定义

关于软件工程学

第8|94页

软件工程是一门交叉学科,涉及到计算机科学、管理科学、工程学和数学。

软件工程的理论、方法、技术都是建立在计算机科学的基础上;

它是用管理学的原理、方法进行软件生产管理;

用工程学的观点进行费用估算、制定进度和实施方案;

用数学方法建立软件可靠性模型以及分析各种算法。

软件工程的目标

第*|94页

提高软件的生产效率;

满足应用的功能需要;

降低软件开发成本。

开发生产尽可能多的软件产品;

功能强、系统则复杂,难于开发和维护;

注重发挥硬件功能,则可移植性差;

快速开发,则可能影响质量;

……

但是,目标与实现过程是矛盾的:

软件工程关注于大型程序的构造

软件工程的中心课题是控制复杂度

软件经常变化

开发软件的效率非常重要

和谐地合作是开发软件的关键

软件必须有效地支持它的用户

在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品

01

02

软件工程的本质特征

A

自1968年提出“软件工程”的概念以来,专家学者又陆续提出了100多条关于软件工程的准则。

著名软件工程专家于1983年发表的一篇论文中提出了软件工程的七条基本原理。他认为这七条原理是确保软件产品质量和开发效率的最小准则集合。

B

软件工程原理

用分阶段的生命周期计划严格管理

坚持进行阶段评审

实行严格的产品控制

采用现代程序设计技术

结果应能清楚地审查

开发小组人员少而精

承认不断改进软件工程实践的必要性

01

02

软件工程七条基本原理

据统计发现:不成功软件项目中半数是因计划不周造成的。

在软件的整个生命周期中应该制定并严格执行六类计划:项目概要、项目进度表、项目控制、产品控制、验证及运行维护计划。

不同层次的管理人员必须严格按照计划各尽其职地去管理软件开发与维护工作,绝不能受客户或上级的影响而擅自背离预定计划。

①用分阶段生命周期计划严格管理

②坚持进行阶段评审

第14|94页

软件的质量保证工作不能等到编码阶段结束之后再进行。这是因为:

大部分错误是在编码之前造成的(根据Boehm统计,设计错误占软件错误的63%,编码错误占37%)。

错误发现与改正得越晚,所付出的代价也越高。

因此,在每个阶段进行严格的评审,尽早发现并修正各个阶段中所犯的错误是一条必须遵循的重要原则。

示意图关于阶段评审作用

在软件开发过程中不应随意改变需求,但不能禁止更改需求。当必须修改时,为了保持软件各配置成分的一致性,必须实行严格的产品控制。

一切有关修改软件的建议都必须按照严格的规程进行评审,获准后才能实施修改。

绝对不能谁想修改就随意进行修改的行为。

③实行严格的产品控制

以前的结构化程序设计技术,如今的面向对象程序设计技术都被实践证明是各个不同历史阶段的优秀程序设计技术和方法。

采用先进的技术既可以提高软件开发的效率,又可以提高软件维护的效率。

④采用现代程序设计技术

软件产品是看不见、摸不着的逻辑产品,软件开发人员的工作进展情况可见性差。

为了提高开发过程的可见性,应根据软件开发项目中的目标完成期限,规定开发组织的责任和产品标准,使得到的结果能够清楚的审查。

1

2

⑤结果应能清楚地审查

开发小组成员的素质应该高,人员不宜过多。人员素质和数量是影响产品质量和开发效率的重要因素。

素质高的人开发效率比低的人高几倍甚至几十倍,而错误则明显得少;

人数增加,管理难度也增加。

⑥开发小组人员少而精

01

要积极主动地采纳新的软件技术,要不断总结经验;不能自以为是,固步自封,唯我独好。

大千世界,错综复杂,只有不断学习,才能不断进取,不断进步。

02

⑦承认不断改进软件工程实践的必要性

软件工程过程是由一系列软件工程的阶

文档评论(0)

SYWL2019 + 关注
官方认证
文档贡献者

权威、专业、丰富

认证主体四川尚阅网络信息科技有限公司
IP属地四川
统一社会信用代码/组织机构代码
91510100MA6716HC2Y

1亿VIP精品文档

相关文档