北京理工大学现代远程教学PPT课件

  • 格式:ppt
  • 大小:524.50 KB
  • 文档页数:57

下载文档原格式

  / 57
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件工程 — 一种层次化技术
质量焦点:支持软件工程的根基就在于对质 量的关注。
过程:软件工程的过程将技术层结合在一起 ,使计算机软件合理和及时开发出来。
方法:涵盖一系列的任务:需求分析、设计 、编程、测试和维护。
工具:对过程、方法提供自动或半自动的支 持。例CASE集成软件、硬件或一个软件工 程数据库。
硬件、软件生命周期的比较

命 初 期 故
磨 损 后


由于副作用造成 的故障率提高
故 障 率
修 改
实际曲线 理想曲线
时间
硬件故障率曲线
时间
软件实际故障率曲线
软件构件 软件构件要求:
标准构件(components) 可复用性(Reusability) 集成化软件开发环境(ISEE)
软件生产过程
应用 系统
失败的根本原因:
开发人员写出的软件达不到用户要求: 人的能力问题. 当前技术发展问题 系统平台问题
1.2中国软件产业:挑战与机遇
挑战: 外国软件打入 软件侵权行为 软件开发投资力度不足 软件人才结构不合理,缺乏高级
系统程序员和项目负责人。 软件人员缺乏软件工程化的概念。
软件工程 (software engineering)
软件生产率 OO技术(软件IC)
软件危机的主要特征
软件开发周期大大超过规定日期; 软件系统开发成本高,周期长,质量差,满 足不了市场需求;
软件质量无保证 软件系统开发人员数量少,质量低. 软件系统维护难度大. 软件开发缺乏合适的工具和方法 软件的版权问题得不到保证
改正一个问题需付出的代价
改正2000 一个1000 问题 的估 计费 200 用
软件生产过程
领域 1
领域 2
应用 构件库
应用构件 提取车间
应用 系统
软件生产过程
领域
1
1
领域 2
2
应用
应用
3
系统
构件库
应用构件 提取车间
4 构件生 1基础构件,2功能构件 产车间 3接口构件,4用户界面构件
软件生产过程
领域
1
1
领域 2
2
...
应用
应用
3
系统
构件库
组装
应用构件 提取车间
4
构件库 车间
•软件产品 •消费者的影响 •人工神经网络
•并行计算
•网络计算机
1950 1960
1970
1980
1990
2000
软件的特点
软件是一个逻辑的而不是物理的产 品。
软件具有与硬件不同的特点: 软件是由开发或工程化而形成的, 而不是传统意义上的制造产生的; 软件不会“磨损”; 大多数软件是自定义的,而不是通 过已有构件组装的。 维护不同.
Evolution of software
早期 第二阶段
•面向批处理 •多用户 •有限的分布 •实时 •自定义软件 •数据库
•软件产品
1950 1960
1970
1980
Evolution of software
早期 第二阶段 第三阶段
•面向批处理 •多用户 •分布式系统
•有限的分布 •实时
•嵌入“智能”
课 名:软件工程
教材: 软件工程导论
参考教材:
1 计算机软件工程规范国家标准汇编(2000) 2 软件工程Java语言实现 3 软件工程实践者的研究方法
教学方式:授课+课程设计 课时: 60
第一章
软件工程概论
1.1软件工程发展历史
软件工程”术语首次出现:1968年德国照开的 NATO会议上 软件工程:是采用工程的概念、原理、技术和 方法来开发与维护软件,把经过时间考验而 证明正确的管理技术和当前能够得到的最好 的技术方法结合起来。
软件工程的目标:是应用计算机科 学、数学及管理科学等原理开发软件 的工程。它借鉴传统工程的原则、方 法,以提高质量,降低成本为目的。
软件工程实施原则:经济地获得可 靠的和能在实际机器上高效运行的软 件而建立合适的、使用效果好的工程 原则规范。
软件工程 — 一种层次化技术
工具 方法 过程
质量焦点
Software engineering layers
程 过
重视软件工程的管理
原则
“软件工程”课程的教学与实践
与其它软件专业课的区别:
(1) 立足于系统的整体。 (2) 讲授系统分析、系统需求、
系统设计、系统实现、系统测试 及维护的理论和方法。 (3) 运用所学软件和技术构筑一 理想的系统。
“软件工程”课程的教学与实践
对软件的认识:
上升
程序
ຫໍສະໝຸດ Baidu
系统
思维定式:
5.0 改正
2.5 一个 问题
估计
0.5
的工 作量
(美元)20
需 结详 编集 系 现 求 构细 码成 统 场 分 设设 测 测 析 计计 试 试
0.05(人天)
yet, Success Hasnt Come Easily
53%
16%
31% (成功) (挑战) (失败)
成功的标准:
用户在使用 用户使用软件很容易做完要做的事
? 件工程是一门交叉学科
软 软件开发模型
件 工
软件开发方法

软件立项到终止的全过程

软件开发工具
主 要
软件开发环境

计算机辅助软件工程(CASE)

软件工程管理


软件工程经济学
软件工程框架
目标
性性 性
用 确算

可 正合
支织
持过 选取适宜的开发模型 基 过 程 采用合适的设计方法 本 程

提供高质量的工程支持 程
1.1软件工程发展历史
软件是一个担任双重任务的产品: 1. 它是一个有价值的商品 2. 它是一个开发和运行产品的载体
软件从设计、实现、维护和传统工程有 相同的基础
软件的发展可用下面几个阶段来描述:
Evolution of software
早期
•面向批处理 •有限的分布 •自定义软件
1950 1960
上升
程序员
系统工程师
(系统分析员)
系统分析员的地位
用户
分析员
程序员
“一个好的工业,应有一套 良好的标准来配套”
•自定义软件 •数据库 •低成本硬件
•软件产品 •消费者的影响
1950 1960
1970
1980
1990
Evolution of software
早期 第二阶段 第三阶段 第四阶段
•面向批处理 •多用户 •分布式系统 •强大的桌面系统
•有限的分布 •实时 术
•嵌入“智能” •面向对象技
•自定义软件 •数据库 •低成本硬件 •专家系统
构件生 1基础构件,2功能构件 产车间 3接口构件,4用户界面构件
软件技术面临的问题:
软件复杂性 例:1 Windows95程序超过1000万行 例: 2 WWMCCS(军事和控制)花费3500多人拖
了几年,交付后发显出100个错误。最后失 败。 例: 3 城市银行出纳机程序7.8万行,150人年