第1章 软件工程概述PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
参考资料
第一章 软件工程概述
6
1.1 软件工程的背景
1. 软件 Software = Program + Data + Document
软件(software)是计算机系统中与硬件 (hardware)相互依存的另一部分,
它包括程序(program)、 相关数据(data)及其 说明文档(document)。
20
软件工程: 一种层次化技术
Software engineering layers
Software depression (软件萧条) Software affliction (软件困扰) “慢性的苦恼”
10
软件危机主要有以下表现:
• 对软件开发成本和进度的估计常常不准 确。
• 开发软件不能满足用户要求。 • 软件产品质量低。Bug一大堆,Patch一
个接一个。 • 开发的软件可维护性差。 • 软件通常没有适当的文档资料。 • 软件的成本不断提高。 • 软件开发生产率的提高赶不上硬件的发
18
总之: 软件工程涉及计算机学科、工程学科、
管理学科和数学学科。 软件工程是用工程科学的知识和技术
原理来定义、开发和维护软件的一 门学科。
19
软件工程是一门交叉学科
软件工程学一般包括
软件开发技术:软件开发方法学 软件开发过程 软件工具ห้องสมุดไป่ตู้软件工程环境
软件工程管理:软件工程管理学 软件工程经济学 软件工程心理学
7
软件的发展
程序设计阶段 •个体手工 •通用性有限 •低级语言 •不重视程序设计 方法 •无说明文档
软件设计阶段 •小组合作 •应别人要求 •高级语言 •结构化方法
软件工程时代 •工程化生产方式 •嵌入“智能” •低成本硬件 •消费者的影响
20世纪50~60年代
20世纪60~70年代
8
2、软件危机
展和人们需求的增长。
11
软件危机的原因
● 一方面是与软件本身的特点 有关
● 另一方面是由软件开发和维 护的方法不正确有关
12
3、消除软件危机的途径
• 对计算机软件有一个正确的认识 (软件≠程序)
• 必须充分认识到软件开发不是某 种个体劳动的神秘技巧,而应该 是一种组织良好、管理严密、各 类人员协同配合、共同完成的工 程项目。
软件工程是:(1)把系统的、规范的、 可度量的途径应用于软件开发、运行和 维护过程,也就是把工程应用于软件; (2)研究(1)中提到的途径。
17
Software engineering (3)
• SEI software engineering definition from 1990
SEI Report on Undergraduate Software Engineering Education (CMU/SEI-90-TR-003):
• 推广使用在实践中总结出来的开 发软件的成功技术和方法。
• 开发和使用更好的软件工具。
13
1.2 软件工程知识体系
1.软件工程 ---- Software Engineering
于1968年 NATO 组织在 德国召开的一次会议上提出
是把软件当作一种工业产品,要求 “采用工程化的 原理与方法对软件进行计划、开发和维护 ”。
Engineering is the systematic application of scientific knowledge in creating and building cost-effective solutions to practical problems in the service of mankind. Software engineering is that form of engineering that applies the principles of computer science and mathematics to achieving cost-effective solutions to software problems.
软件工程就是为了经济地获得可 靠的且能在实际机器上高效运行 的软件,而建立和使用完善的工 程原理。
16
软件工程定义(2)
• Software engineering. (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1).(IEEE Std 610-1990.)
14
• 软件工程是为了有效的控制软 件危机的发生而提出。
• 中心目标是把软件作为一种物 理的工业产品来开发。逐步实 现软件开发和维护的自动化。
15
2、软件工程定义(1)
• The establishment and use of sound engineering principles (methods) in order to obtain economically software that is reliable and works on real machines.(1968- Fritz Bauer)
软件工程概论
zhangli1005@imau.edu.cn
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
● 为什么需要软件工程? ● 什么是软件工程?
3
韩万江 姜立新 编著
软件工程案例教程 (第3版)
过去几十年的大型软件系统的开发就犹如这 样一个焦油坑,很多大型和强壮的动物在其 中剧烈地挣扎。
软件危机指的是计算机软件开发和维护过程中所遇到的一系列严重问题。
9
软件危机包含两方面问题:
–-如何开发软件,以满足不断增长,日趋复杂的需求; –-如何维护数量不断膨胀的软件产品。
鉴于软件危机的长期性和症状不明显的特点,近年 来有人建议将软件危机更名为: