- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程 Software Engineering
1
第一章 绪论
什么是工程
什么是软件
软件的特点
软件的分类
软件危机
什么是软件工程
软件工程基本内容
软件开发模型
2
什么是工程(Engineering)
The American Engineers Council for Professional Development has defined engineering as:
The creative application of scientific principles to design or develop structures, machines, apparatus, or manufacturing processes, or works utilizing them singly or in combination; or to construct or operate the same with full cognizance of their design; or to forecast their behavior under specific operating conditions; all as respects an intended function, economics of operation or safety to life and property.
3
什么是工程(Engineering)
工程是将自然科学原理应用到工农业生产部门中去而形成各学科的总称。
4
建筑工程
电气工程
航天工程
什么是软件(Software)
5
程序能处理的具有一定数据结构的信息
完成特定功能而编制的一组指令集
与程序开发、维护和使用相关的图文资料
计算机程序
软件
文档
数据
软件组成
软件的特点
无法直接观察软件的物理形态
软件产品包含了大量的脑力劳动
软件不存在磨损和老化现象
软件具有可复用性
软件依赖于特定的计算机系统环境
6
软件分类
7
应用软件
支撑软件
系统软件
地理信息系统软件
航空售票软件
MES、ERP
数据库管理系统
中间件
操作系统
为特定的领域或服务开发的针对性较强的软件。
协调用户进行软件开发,对应用软件进行维护。
与计算机硬件结合最紧密的软件。
按照功能分类:
软件分类
8
通用软件
定制软件
操作系统
办公软件
飞机导航系统
MES
面向市场
面向特定的用户需求
按照服务对象分类:
软件分类
9
小型软件
实时软件
中型软件
大型软件
分时软件
交互式软件
批处理软件
按照软件
产品规模
按照工作方式
软件工程主要方面
个体软件过程
一种可用于控制、管理和改进个人工作方式的自我持续改进过程,是一个包括软件开发表格、指南和规程的结构化框架。
团队软件过程
为开发软件产品的开发团队提供指导
软件过程管理
是提高软件生产率和保证软件质量的一个重要的方法
业界公认最好的能力成熟度模型(CMM)
10
Watts S. Humphrey -- 沃茨· 汉弗雷
Introduction to the Personal Software Process (1997)
Managing the Software Process (1989)
Introduction to the Team Software Process (2002)
11
曾长期在IBM公司担任高级软件开发经理,获得了大量的软件开发过程方面的经验,是卡内基梅隆大学软件工程研究所的研究员
软件危机
12
软件危机爆发于20世纪60年代中期
落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现的一系列严重问题的现象。
软件危机的主要表现
13
软件产品不能完全满足用户的需求。
软件产品的质量难以得到保证。
软件产品的开发周期或经费大大超出预期。
软件产品不能灵活适应环境的改变。
软件文档不完备。
软件危机的原因
14
软件开发是一项复杂的工程
没有完善的质量保证体系
软件开发人员对这个产业认识不充分、缺乏经验
软件独有的特点也给软件开发和维护带来困难(抽象、脑力劳动)
软件文档的重要性没有得到软件开发人员和用户的足够重视
什么是软件工程
15
软件工程是解决软件危机的方法。
指应用计算机科学技术、数学和管理学原理,运用工程科学的理论、方法和技术,研究和指导软件开发和演化的一门交叉学科。
软件工程的目标
16
使软件产品的功能和性能满足用户需求
提高软件产品的质量
使软件开发的成本能控制在预计的合理范围内
使软件产品的开发周期能控制在预计的合理时间范围内
使软件产品易于移植、维护、升级和使用
提高软件产品的可靠性,可用性
可用性
17
MDT (平均修复时间) =Mea
文档评论(0)