第1章 软件工程概述
《软件工程》教学教案

《软件工程》教学教案一、第一章:软件工程概述1. 教学目标了解软件工程的定义、目的和重要性,掌握软件开发的基本过程和原则。
2. 教学内容软件工程的定义和重要性;软件开发的基本过程;软件工程的原则和方法。
3. 教学方法采用讲授法,结合案例分析,让学生了解和掌握软件工程的基本概念和原则。
4. 教学资源教材、课件、案例分析。
5. 教学评价通过课堂提问和案例分析,评估学生对软件工程的理解和应用能力。
二、第二章:软件需求分析1. 教学目标掌握软件需求分析的基本概念、方法和过程,能够运用需求分析工具进行需求收集和分析。
2. 教学内容软件需求分析的基本概念;需求分析的方法和过程;需求分析工具的使用。
3. 教学方法采用讲授法和实例分析,让学生了解和掌握需求分析的方法和过程。
4. 教学资源教材、课件、实例分析。
5. 教学评价通过课堂提问和实例分析,评估学生对需求分析的理解和应用能力。
三、第三章:软件设计1. 教学目标掌握软件设计的基本概念、方法和过程,能够运用设计工具进行软件架构和详细设计。
2. 教学内容软件设计的基本概念;设计方法和过程;设计工具的使用。
3. 教学方法采用讲授法和实例分析,让学生了解和掌握软件设计的方法和过程。
4. 教学资源教材、课件、实例分析。
5. 教学评价通过课堂提问和实例分析,评估学生对软件设计的理解和应用能力。
四、第四章:软件实现1. 教学目标掌握软件实现的基本概念、方法和过程,能够运用编程语言进行软件编码和测试。
2. 教学内容软件实现的基本概念;实现方法和过程;编程语言和测试工具的使用。
3. 教学方法采用讲授法和编程实践,让学生了解和掌握软件实现的方法和过程。
4. 教学资源教材、课件、编程环境和测试工具。
5. 教学评价通过编程实践和测试结果,评估学生对软件实现的理解和应用能力。
五、第五章:软件维护1. 教学目标掌握软件维护的基本概念、方法和过程,能够进行软件维护和优化。
2. 教学内容软件维护的基本概念;维护方法和过程;软件优化技巧。
软件工程导论第六版课后习题答案完整版

软件工程导论第六版课后习题答案完整版首先,感谢您对软件工程导论课后习题答案的需求。
以下是软件工程导论第六版课后习题的完整答案。
第一章:软件工程概述1.1 问题1. 什么是软件工程?答:软件工程是一种应用工程原理、方法和工具来开发和维护高质量软件的学科。
1.2 问题1. 什么是软件?答:软件是一系列按照特定顺序组织的计算机数据和指令。
第二章:软件过程模型2.1 问题1. 软件过程模型有哪些类型?答:常见的软件过程模型包括瀑布模型、迭代模型、螺旋模型和敏捷开发模型等。
2.2 问题1. 瀑布模型的特点是什么?答:瀑布模型是一种线性顺序模型,以阶段划分为基础,每个阶段的任务在进入下一个阶段前必须完成。
第三章:需求分析与规格说明3.1 问题1. 软件需求描述包括哪些方面的内容?答:软件需求描述需要包括功能性需求、非功能性需求、用户需求和系统需求等。
3.2 问题1. 什么是需求跟踪?答:需求跟踪是指在软件开发过程中,通过建立需求和软件项目中其他相关工件之间的关联,确保需求的准确实现和变更的有效管理。
第四章:软件设计4.1 问题1. 软件设计的目标是什么?答:软件设计的目标是通过确定软件的整体结构和组成部分,确保软件满足需求并具有良好的可维护性和可重用性。
第五章:软件测试与维护5.1 问题1. 什么是软件测试?答:软件测试是一种评估和改进软件质量的过程,目的是发现错误并提高软件的可靠性和可用性。
5.2 问题1. 什么是软件维护?答:软件维护是指在软件交付后的整个生命周期中对软件进行修改和改进,以满足用户需求和修复错误。
第六章:软件配置管理6.1 问题1. 软件配置管理的目标是什么?答:软件配置管理的目标是确保软件在开发和维护过程中的可控性和可追踪性,以及保持软件配置的稳定性和一致性。
6.2 问题1. 软件版本控制是什么?答:软件版本控制是指对软件的不同版本进行管理,包括版本的创建、检出、合并和更新等操作。
至此,我们完成了软件工程导论第六版课后习题的完整答案。
软件工程基础实践手册

软件工程基础实践手册第一章软件工程概述 (2)1.1 软件工程的定义与目标 (2)1.2 软件工程的发展历程 (2)1.3 软件工程的基本原则 (3)第二章需求分析 (4)2.1 需求收集与识别 (4)2.2 需求分析与建模 (4)2.3 需求确认与验证 (4)第三章软件设计 (4)3.1 软件设计的基本原则 (4)3.2 软件架构设计 (5)3.3 软件详细设计 (5)第四章编码实践 (6)4.1 编程语言与工具选择 (6)4.2 编码规范与技巧 (6)4.3 代码审查与重构 (7)第五章测试与调试 (7)5.1 软件测试基本概念 (8)5.2 测试策略与过程 (8)5.3 调试技巧与方法 (8)第六章软件项目管理 (9)6.1 项目管理基本理论 (9)6.1.1 项目定义 (9)6.1.2 项目生命周期 (9)6.1.3 项目组织结构 (9)6.1.4 项目管理知识体系 (9)6.2 项目计划与执行 (10)6.2.1 项目计划 (10)6.2.2 项目执行 (10)6.3 项目监控与评估 (10)6.3.1 项目监控 (10)6.3.2 项目评估 (11)第七章软件维护与演化 (11)7.1 软件维护的类型与策略 (11)7.2 软件演化与升级 (11)7.3 软件退役与替换 (12)第八章软件质量保证 (13)8.1 软件质量标准与模型 (13)8.2 质量管理过程与方法 (13)8.3 质量评估与改进 (13)第九章软件工程伦理与法律 (14)9.1 软件工程伦理原则 (14)9.1.1 尊重用户权益 (14)9.1.2 保障软件质量 (14)9.1.3 促进公平竞争 (14)9.1.4 提升行业形象 (14)9.2 软件版权与知识产权 (14)9.2.1 软件版权 (14)9.2.2 知识产权 (15)9.3 法律法规与合规性 (15)9.3.1 法律法规 (15)9.3.2 合规性 (15)第十章软件工程实践案例分析 (15)10.1 项目案例分析 (15)10.2 团队协作与沟通 (16)10.3 实践经验总结与展望 (16)第一章软件工程概述1.1 软件工程的定义与目标软件工程作为一门跨学科领域,旨在通过系统化的方法、技术和工具,研究和解决软件开发过程中的各种问题。
软件工程导论复习重点总结很全第六版

第1章软件工程学概述1.1 软件危机1.1.1 软件危机旳简介软件危机(软件萧条、软件困扰): 是指在计算机软件旳开发和维护过程中所碰到旳一系列严重问题。
软件危机包括下述两方面旳问题:怎样开发软件, 满足对软件日益增长旳需求;怎样维护数量不停膨胀旳已经有软件。
软件危机旳经典体现:(1)对软件开发成本和进度旳估计常常很不精确;(2)顾客对“已完毕旳”软件系统不满意旳现象常常发生;(3)软件产品旳质量往往靠不住;(4)软件常常是不可维护旳;(5)软件一般没有合适旳文档资料;(6)软件成本在计算机系统总成本中所占旳比例逐年上升;(7)软件开发生产率提高旳速度, 远远跟不上计算机应用迅速普及深入旳趋势。
1.1.2 产生软件危机旳原因(1)与软件自身旳特点有关(2)与软件开发与维护旳措施不对旳有关1.1.3 消除软件危机旳途径对计算机软件有对旳旳认识。
认识到软件开发是一种组织良好、管理严密、各类人员协同配合、共同完毕旳工程项目。
应当推广使用在实践中总结出来旳开发软件旳成功技术和措施, 并继续研究探索。
应当开发和使用更好旳软件工具。
总之, 为了处理软件危机, 既要有技术措施(措施和工具), 又要有必要旳组织管理措施。
1.21.2.1 软件工程旳简介软件工程: 是指导计算机软件开发和维护旳一门工程学科。
采用工程旳概念、原理、技术和措施来开发与维护软件, 把通过时间考验而证明对旳旳管理技术和目前可以得到旳最佳旳技术措施结合起来, 以经济地开发出高质量旳软件并有效地维护它, 这就是软件工程。
(期中考)软件工程旳本质特性:软件工程关注于大型程序旳构造软件工程旳中心课题是控制复杂性软件常常变化开发软件旳效率非常重要友好地合作是开发软件旳关键软件必须有效地支持它旳顾客在软件工程领域中是由具有一种文化背景旳人替具有另一种文化背景旳人发明产品1.2.2 软件工程旳基本原理用分阶段旳生命周期计划严格管理坚持进行阶段评审实行严格旳产品控制采用现代程序设计技术成果应能清晰地审查开发小组旳人员应当少而精承认不停改善软件工程实践旳必要性1.2.3 软件工程措施学软件工程包括技术和管理两方面旳内容。
第1章软件工程概述

第1章软件工程概述软件工程的研究领域包括软件的开发方法、软件周期以及软件工程的实践等。
软件危机与软件工程的起源1. 计算机系统的发展历程20 世纪 60 年代中期以前,是计算机系统发展的早期:软件为每个具体应用而专门编写的。
软件实质为规模较小的程序,编写容易,没有系统化的方法,对软件开发工作更没有进行任何管理。
编写者和使用者为同一个(或同一组)人。
软件设计只是一个模糊的过程,除了程序清单之外,没有其他文档资料。
20 世纪 60 年代中期到 70 年代中期,是计算机发展的第二代:硬件发展:多道程序、多用户系统引入了人机交互的新概念,使硬件和软件的配合上了一个新层次。
实时系统能够从多个信息源收集、分析和转换数据,使得进程控制能以毫秒而不是分钟来进行。
在线存储技术的进步导致了第一代数据库管理系统的出现。
软件发展:软件个体化特性。
软件数量极具膨胀。
在程序运行时发生的错误必须设法改正。
用户有了新的需求时必须相应的修改程序。
硬件或操作系统更新时,通常需要修改程序以适应新的环境。
软件维护工作,以令人吃惊的比例耗费资源,许多程序的个体化特性使得它们最终成为不可维护的。
2. 软件定义:软件是由一个完整的配置组成:程序:能够完成预定功能和性能的可执行的指令序列。
数据:是使程序能够适当地处理信息的数据结构。
文档:是开发、使用和维护程序所需要的图文资料。
1983 年 IEEE 对软件的定义:计算机程序、方法、规则、相关的文档资料、运行程序时所必须的数据。
特点:1) 软件是一种逻辑实体,而不是具体的物理实体。
2) 软件的生产与硬件不同。
在软件开发过程中没有明显的制造过程。
3) 在软件的运行和使用期间,没有硬件那样的机械磨损,老化问题。
4) 软件成本相当高。
3. 软件危机介绍软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
软件危机包含两方面问题:如何开发软件,以满足对软件日益增长的需求;如何维护,数量不断膨胀的已有软件。
软件工程考研大纲

第一章软件工程概述1、1968年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,讨论软件危机问题,在这次会议上正式提出并使用了“软件工程”这个名词,一门新兴的工程学科就此诞生了。
2、软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
3、软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量日益增长的已有软件。
4、产生危机的原因①与软件本身的特点有关②与软件开发与维护的方法不正确有关。
5、软件的生命周期:一个软件从定义、开发、使用、维护,直到被废弃,要经历一个漫长的时期,这就如同人要经过胎儿、儿童、青年、中年、老年,直到最终死亡的漫长周期一样。
通常把软件经历的这个漫长的时期称为生命周期。
6、软件工程定义:软件工程是指导计算机软件开发和维护的一门工程学科。
采用工程的概念、原理、技术和方法来开发和维护软件。
把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效的维护它,这就是软件工程。
7、软件工程7个本质特征:①软件工程关注与大型程序的构造②软件工程的中心课题是控制复杂性③软件经常变化④开发软件的效率非常重要⑤和谐地合作是开发软件的关键⑥软件必须有效的支持它的用户⑦在软件工程领域中通常由具有一种文化背景的人替另一种文化背景的人创造产品8、软件工程的7条基本原理:①用分阶段的生命周期计划严格管理②坚持进行阶段评审③实行严格的产品控制④采用现代程序设计技术⑤结果应能清楚的审查⑥开发小组的人员应该少而精⑦承认不断改进软件工程实践的必要性9、通常把软件周期全过程中使用的一整套技术方法的集合称为方法学,也成为范型。
10、软件工程的方法包含3个要素:方法、工具和过程。
其中方法是完成软件开发的各项任务的技术方法回答“怎样做”的问题;工具是为运用方法而提供的自动或半自动的软件工程支撑环境;过程是为了获得质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
软件工程实践指南

01
设计模式是针对常见的设计问题提出的可重复利用的解决方案。
类型
02
常见的设计模式包括创建型模式、结构型模式、行为型模式等。
应用
03
设计模式可以帮助设计者更好地解决设计问题,提高系统的质量和性能。
结构化设计
原理
结构化设计是通过 将系统分解为模块, 确定模块之间的接 口和关系来实测试
语句、分支、路径覆盖等测试
利用工具和脚本 提高效率和准确性
减少人力成本、加快测试进度
提高软件质量
01
确保系统符合需求
验证系统正确性
02
发现系统中的错误、缺陷
保证系统可靠性
03
提高系统稳定性和安全性
软件测试目标
总结
软件测试是确保软件质量的重要环节,通过各种测试方法 可以发现系统中的问题并提高软件的可靠性。黑盒测试、 白盒测试和自动化测试各有优势,综合运用可以更好地保
什么是软件需求?
软件需求是用户对软件系统的期望和要求的描述,是软件 开发的基础。软件需求包括功能需求、非功能需求、用户 需求、系统需求等。需求分析可以采用面向对象分析、数
据流分析等方法。
需求获取
方法
需求可以通过访谈 用户、观察工作流 程、分析文档等方
式获取。
难点
需求获取过程中常 见的困难包括需求 不明确、需求冲突、
结尾
软件质量保障是软件工程中至关重要的一环,通过不断优 化和改进,可以提高软件产品的质量和用户满意度。各种 质量保障方法和工具的应用,能够有效降低软件开发和维
护中的风险,值得开发团队深入研究和实践。
● 06
第六章 总结与展望
软件工程实践的价值
提高软件产品质量
第1章软件工程学概述

(3)软件经常变化 (4)开发软件的效率非常重要 (5.) 和谐地合作是开发软件的关键 (6.) 软件必须有效地支持它的用户 开发软件的目的就是支持用户的工作,满足 用户对软件的需求 (7. )在软件工程领域中通常由具有一种文 化背景的人替具有另一种文化背景的人创 造产品
37
软件工程的研究内容
软件是计算机系统中与硬件(hardware)相互依存 的另一部分,与硬件合为一体完成系统功能。 软件定义包括如下几点: (1)功能和性能的指令集(即程序); (2)程序能正常操纵信息的数据结构(即相关数 据); (3)与程序开发维护和使用有关的各种图文数据 (即说明文档)。
16
软件=程序+数据+相关文档
软件的发展主要经历了以下3个发展阶段:
第一阶段(20世纪50年代初期至20世纪60年 代中期) 特点:(1)称为程序设计阶段 (2)软件生产以个体化为主 (3)编写程序的工具只有低级语言 (4)软件规模小,几乎没有系统化的 标准可循
11
(5)软件由软件使用者自己开发和编写,适 合个人应用 (6)没有“软件”概念,对于程序有关的文 档的重要性认识不足,开发主要围绕硬件 进行 (7)工程规模小,使用工具单一,开发者之 间没有明确分工 第二阶段(20世纪60年代中期至70年代末期) 称程序系统阶段
7
ENIAC诞生于二战时期,最初是作为辅助炮兵计 算炮弹轨迹的工具,在盟军登陆西欧前一年开始 制造,但直到1945年停火时还没完成。在冷战初 期军方就发现了ENIAC的大量用途,它的17468 根真空管被用来测试氢弹的早期设计的可行性。 这台计算机每秒能执行5000条指令,在当时的情 况下它的运算速度比电动式计算机快1000倍。当 然,现在iPhone 6每秒能响应250亿条指令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20世纪七十年代 软件=程序+文档+数据
面向对象的程序=对象+消息 面向构件的程序=构件+构架
第1章 软件工程概述
1.1.2 软件的特征:
软件是一个信息变换器; 软件是产品交付使用的载体; 软件是是被开发或设计的,而不是被制造的; 软件不会磨损,但维护困难。性等等
n 告诉人们怎样去开发软件、管理软件
开发软件即需要干哪些“活”,对“开发”两字做 一解析.
如何干活,即有关开发模型和开发方法等技 术问题.
如何管理,即有关CMM等管理问题.
第1章 软件工程概述
n 现代软件开发对人才的要求 系统分析人员、设计人员、软件架构师、
软件集成人员、高层管理人员、 中层项目经理、软件蓝领工人、 实施和维护人员、 软件售前人员、软件营销人员
• 初步了
解
研究软件开发、生产和管理的 工程学科
《 调研、可行性论证、正式立项、需求分析、 项目策划、设计、编程、测试、实施、 试运行、产品发布、用户培训、产品复制、 销售、系统维护、版本升级》.
采用科学的方法指导软件的开发与维护 !
第1章 软件工程概述
•现代软件工程研究的内容:
n 软件开发模型 n 软件开发过程,方法与技术 n 软件开发环境与工具 n 软件管理过程(度量、成本…) n 软件企业文化
开发和维护成本
第1章 软件工程概述
本章小结
•希望认真学习 •主动获取知识
•软件
•软件工程 •的概念
•软件工程的概述
•软件工程 •三要素
•方法 •工具
•软件工程 •的目标
•过程
第1章 软件工程概述
3rew
演讲完毕,谢谢听讲!
再见,see you again
2020/11/25
第1章 软件工程概述
第1章 软件工程概述
1.2 软件工程的概念
1.2.1 软件工程的提出
软件开发失败的例子
1962年6月,美国飞向金星的第1个空间探测器 (水手1号)飞行中偏移了航线,失败了. 原因:飞舱中的导航程序中的一个语句的语义错.
世界上精心设计的并花费巨额投资的美国阿波 罗8号太空飞船登月飞行计划的软件的错误,使 存储器一部分信息丢失;阿波罗14号的飞行10天 中,出现18个软件错误. 原因: 软件的可靠性问题
•软•又 •件•是 •开•一 •发•门 •既•工 •是•程, •一•也 •门•是 •科•一 •学•门 , •艺
•术
第1章 软件工程概述
导读
• 第1章绪论- 提出问题
•第2章 模型- 全局观点 •第3章 项目计划- 管理观点
•第4、5章分析方法,需求分析 -开发第1步最重要
• 第6章 软件设计- 实现的前提 • 第7章 实现 -初始结果
• 第8章 测试 质量保证- 得到可交付的结果 • 第9章 维护 -延长软件生命期
第1章 软件工程概述
•软件工程教材丛书
•软•软件件工工程程
•软件过程系列 •软件项目管理 •方法与技术
•
•
•
•
• •
• • • •
需设实测
求计现试
分系系与
析列列度
系
量
列
系
列
项质 目量 管管 理理 系系 列列
面 建 可前
知识—方法—能力
你们的收获不会仅仅局限 在本课程之内……
•渗 透 •实践 •参考• 资料 •作业 •复习 •课堂教学
• 讲课教书 • 学习读书 • 知识课程
第1章 软件工程概述
考试
•诚信
课堂小考核,占成绩的 10%
完成一个小型软件系统的分析、设计文 档,阶段性成果占成绩的20%
考试成绩占 70%
提高软件产品的质量,降低软件开发的成本.
第1章 软件工程概述
1.4 软件工程的发展
n 传统的软件工程时代 n 过程软件工程时代 n 对象软件工程时代 n 构件软件工程时代 n 发展方向:流水线装配软件工程的方向
发展(流水线生产,网络化, 服务化,全球化)
第1章 软件工程概述
•为了祢补应 用软件与现 实计算环境 之间的距离
•夭折 •磨
率
损
•故 •障
•修改
•率
•实际 •理想
•时间 •硬件故障曲线
•时 •软件故障曲线 间
•图 1-1 硬件软件故障图第1章 软件工程概述
1.1.3 软件的应用
* 系统软件 * 应用软件 * 商业软件 * 工程和科学计算软件 * 嵌入式软件 * 个人计算机软件 * 人工智能软件 * 基于web软件 * 工具包软件
第1章 软件工程概述
➢ 1963~1966年IBM开发OS/360操作系 统,投资几千万美元,工作量5000多人 年,
拖延几年才交付使用,而且每年要发现
近100个错误。
➢ 美国肯尼迪发射的一枚“阿脱拉斯火箭, 当飞地面几十英里高空时,翻转.地面控制 中心被迫下令炸毁,结果损失1850万
美元
原因:飞行计划程序漏掉一个“连”接字 第1章 软件工程概述
向 模 用沿
对 象 技 术 系
语 言 系 列
性 与 复 用 系
论 题 系 列
列
列
第1章 软件工程概述
•中文参考书
史济民等,软件工程-原理、方法与应用
(第二板),高等教育出板社ISBN 7-04-011561-1 •
张海藩,软件工程, 人民邮电出版社
2002年3月第一版
周之英,现代软件工程(上、中、下),
科学出版社 2001年4月第一版
陈明,软件工程学教程,科学出版社
2002年3月第一版
郑人杰,软件工程, 清华大学出版社
第1章 软件工程概述
英文参考书
Software Engineering Theory and Practice(Second Edition) • Author: Shari Lawrence Pfleeger • (软件工程——理论与实践,高等教育出版社) • • Software Engineering A • Practitioner’s Approach • Author: Rogers.Pressman • (软件工程实践者的研究方法 机械工业出版社)
•财富可以通过辛勤劳动获取,
• 也可能由于喜中彩票大奖获得。
•但知识却必须是通过一点一滴
•
努力学习逐渐积累
• 珍惜每一天,每一节课,每一分钟
第1章 软件工程概述
实践作业
分析和设计下列问题之一,并写出文档.
1. 教学管理软件 2. 教学网站 3. 网上售书,网上购物 4. 超市管理 5. 食堂管理 6. 工寓管理 7. 自选
第1章 软件工程概述
➢ IEEE(83) 指出: 软件工程是开发、运行、维护和修
复软件的系统方法。
➢ IEEE(93) 指出: 软件工程是将系统化的、规范的、
可度量的方法应用于软件的开发、运行 和维护的过程,即将工程化的方法应用 于软件开发中。
第1章 软件工程概述
•1.3 软件工程的作用
n 解决60年代出现的软件危机 n 解决软件当前面临的技术问题
• 软件开发风范
• 开发方法
• 支持工具的研究。
•
第1章 软件工程概述
•2) 20世纪80年代以来,随着软件系统规模的增大、 • 复杂性的提高以及在关键领域应用的开展,人 • 们更加关注: • 软件生产技术的研究和实践 • 注重软件工程管理。 • 主要成果包括: • (1)计算机辅助软件工程(CASE) • (2)软件复用:如构件模型、复用机制等 • (3)软件过程概念以及能力成熟度模型(CMM)
科学家在联邦德国的幕尼黑召开的一次计 算机软件国际会议上,对软件开发的方法、 技术进行了广泛的讨论,
首次提出了“软件工程”的概念。
第1章 软件工程概述
1.2.2 软件工程的含义
➢ P.Wegner和B.Boehm认为:
科学知识在设计和构造计算机程
序,以及开发、运作和维护这些程序所需
求的有关文档编制中的实际应用。
•Computer •Function
•Problem
•Software •Engineering
•Tools and
•Techniques to
• Solve Problem
•
第1章 软件工程概述
初步了解 工程? 硬件工程? 软件工程? 计算机工程?
•工程: 利用自然规律,创建一个使一部分
•
人受益的系统.
➢许多软件工程师认为一个“反弹道导弹系统” 只少需要1千万行代码,有人估计代码在1 亿 行左右。 ➢ 通过比较,支持“美国航天飞机”的软件由3 百万行代码组成,包括地面控制发射和飞行 的计算机,航天飞机本身就需10万行代码。
这样一个反导弹软件系统需要测试大量 的代码.此外可靠性约束是不可能测试的。
•应用系统
• 综观 软件技术 的发展
•为屏蔽操作 系统和编程 语言的异构 性,发展了 支撑软件和 中间件
•为屏蔽计 算机硬件 的异构性, 发展了操 作系统
•J2EE/EJB
•支撑软件中间件
•Web Services
•Fortran •Java •语言 •语言
•操作系统
•C/C++ •语言
•.NET/COM
第1章 软件工程概述
基本要求
❖ 理解软件工程的思想和方法 ❖ 掌握软件开发方法和工具 ❖ 学会按照工程化的方法开发和维护软件 ❖ 具有阅读软件工程方面资料的能力 ❖ 为实践及未来的软件开发打基础
第1章 软件工程概述
•如何学习软件工程
听课 复习 阅读 讨论 练习,从知到会 实践,从会到通