软件工程教案.docx
- 文档编号:10954132
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:14
- 大小:19.88KB
软件工程教案.docx
《软件工程教案.docx》由会员分享,可在线阅读,更多相关《软件工程教案.docx(14页珍藏版)》请在冰豆网上搜索。
软件工程教案
《软件工程》教案
第1章绪论
一.教学目的
本章的教学目的是达到以下三条:
1.为什么要采用工程化方法开发软件?
牢固树立工程化开发软件的思想
2.什么是软件工程?
3.软件工程化的基本步骤。
二.教学内容
4.软件开发技术发展的几个基本阶段
5.软件开发中遇到的若干问题
6.什么是软件工程
7.软件生产过程——生命周期模型(瀑布模型)
8.不确定因素多的软件系统开发模型——渐增型模型、螺线型模型
三.教学重点与难点
重点:
软件开发工程化的建立;软件开发的生产过程模型——生命周期模型及模型的变异。
难点:
模型概念的建立;变异模型的引入与不同类别软件有关;本章仅建立基本概念。
四.教学方法
采用提问式启发教学方法
五.教学步骤
讲授
六.教具准备
第1章PPT
七.时间分配
4学时
八.拟向学生提问
9.已写过什么类型的程序?
程序的规模有多大?
10.你的程序按什么步骤开发出来的?
11.开发中遇到过什么问题?
九.复习题
12.什么是软件工程?
13.软件开发的基本步骤是什么?
第2章软件质量评价
一.教学目的
本章从定性与定量角度介绍软件质量评价标准,教学目的有以下两点:
14.什么是“好”软件?
从用户与软件开发人员角度有不同标准。
15.在“好”软件准则下,随后的软件开发方法讨论中让学生理解为提高软件质量所应遵循的理论,采用的技术、方法和措施,以提高学生对不同软件开发方法的深入理解。
二.教学内容
16.好软件的定性标准(用户与开发者)
定性标准:
软件构架;单元划分原则;单元耦合度;单元内聚度
17.好软件的定量标准,开发者角度
定量标准:
软件复杂度定量度量;软件正确性估测;软件成本与工作量计算方法等。
三.教学重点与难点
根据软件生产过程及产品特点,以软件的定性标准为讲授重点。
定量评测是难点,可放到软件管理部分进一步讲授。
四.教学方法
采用启发式教学方法,首先让学生讨论什么是“好”软件。
通过学生的讨论归纳“好”软件应有的特征,从而“好”软件应具备的定性、定量标准就明了了。
五.教学步骤
先讨论后讲授
六.教具准备
第2章PPT;小软件实例
七.时间分配
2-3学时
八.拟向学生提问
18.从用户角度什么是好质量的软件?
19.从软件开发者角度如何评价软件优劣?
九.复习题
20.在你的软件开发过程中,如何对待软件质量?
21.采用了什么样的技术措施?
第3章软件计划
一.教学目的
软件计划是软件开发的依据,无论是委托开发的软件产品(或项目),或是软件公司自行确定的软件产品,开发前都要做好详细的软件开发计划,以控制软件的生产。
本章的教学目的是让学生弄清楚什么是软件计划?
如何制定软件计划?
软件开发进度、软件成本及可行性分析等。
这是软件工程师所应具备的基本知识。
二.教学内容
22.什么是软件计划?
23.软件项目(产品)的可行性分析
(1)技术可行性;
(2)经济可行性;(3)技术队伍;(4)开发时间;(5)法律可行性等及相关风险分析。
24.软件计划内容
软件计划内容包括:
目的、客观需求(功能)、性能、运行环境等;经费概算、开发流程及进度安排、项目目标及考核指标等。
软件计划是初步的软件需求分析文档。
三.教学重点与难点
重点:
1.软件规模估算及成本估算;
2.开发周期及进度安排
难点:
软件的风险分析
四.教学方法
以某个中型软件项目为实例讲授相关内容,并给出软件计划和可行性分析的标准文档。
五.教学步骤
先讲授相关内容,再给出实例
六.教具准备
第3章PPT;实例;国家软件计划标准
七.时间分配
讲授3学时+实验6学时
八.拟向学生提问
25.学习有没有计划?
有计划和没有计划有什么不同?
26.当你的学习计划没完成时如何处理?
27.软件计划与学习计划有何异同?
九.复习题
按小组写出所选软件项目的开发计划
十.参考资料
软件计划范例;软件计划国标
第4章软件需求分析
一.教学目的
本章的教学目的为:
28.为什么要做需求分析?
需求分析规格说明书在软件开发中的作用。
29.熟悉便学会使用SA技术,特别是数据流图DFD的画法。
30.需求分析规格说明书的规范。
二.教学内容
31.什么是需求分析,获取用户需求的方法。
32.需求分析的内容:
软件系统的功能需求、性能需求、软件运行环境需求及约束。
33.什么是SA方法?
34.结构分析技术及需求工程的实施过程。
35.需求规格说明书的规范。
三.教学重点与难点
重点、难点:
SA技术;DFD的推导方法
四.教学方法
与实例相结合,基本概念的教学贯穿于实例之中,提高学生写需求分析文档的动手能力。
五.教学步骤
讲授基本概念+实例+练习+分析总结
六.教具准备
第4章PPT;实例;国家需求分析文档规范
七.时间分配
6学时+每个小组所选项目的实践时间12学时
八.拟向学生提问
36.你在软件(程序设计)实践中做过需求分析没有?
37.若不做需求分析,在软件开发中会遇到什么问题?
九.复习题
分组完成所选项目的需求分析规格说明书(需求分析文档)。
第5章传统软件设计方法
一.教学目的
使学生熟练掌握SD(结构化设计)方法,并分析面向数据的设计方法和快速原型等几种设计方法的优缺点,使学生具有初步概要设计能力和熟练的单元详细设计能力。
二.教学内容
38.软件设计的基本准则
39.什么是SD设计?
40.如何从不同类别的DFD导出软件体系结构?
41.软件体系结构文档的规范描述
42.面向数据的软件设计方法
43.快速原型法
44.不同设计方法优缺点比较
45.详细设计的几种描述语言
46.结构化程序设计的重要性与方法
三.教学重点与难点
重点、难点:
分析不同类别的DFD,从DFD导出软件体系结构,让学生理解什么是良体系结构。
四.教学方法
理论知识讲授与实际相结合,讲授过程中尽可能引入实例说明相关概念。
五.教学步骤
理论知识讲授;实践;分析与总结
六.教具准备
第5章PPT;实际题目的设计文档;软件设计规范文档。
七.时间分配
教学8学时;实践16学时。
八.拟向学生提问
47.什么类型的软件系统都可结构化吗?
48.结构化的基本原则?
单元划分的基本原则?
九.复习题
完成所选项目的概要设计与详细设计。
第6章面向对象技术
一.教学目的
本章的教学目的是:
引入面向对象概念,让学生明了面向对象概念的引入是人类解决复杂系统问题的另一种思维模式。
结构化方法与面向对象方法相比,前者采用的是抽象思维模式,后者采用的是从局部到全局的思维模式,而且采用通俗的概念,有利于建构者与使用者的交流,是一种更自然的认知客观世界的方法。
二.教学内容
49.面向对象相关概念的引入:
对象、类、继承性(多继承);方法;消息与消息发送;多态;封装与信息隐藏
50.各种概念的实例与其在软件系统中的应用
51.面向对象概念在程序设计语言中表示方式——几种典型面向对象语言
52.结构化方法与面向对象方法相关概念的比较
53.面向对象软件开发模型及特征:
分析与设计由底向上,实现由顶向下
三.教学重点与难点
重点、难点:
面向对象的认知过程,结构化方法的缺陷与面向对象方法的处理模式(思路)
四.教学方法
从实例引入概念,强调概念的内涵,两个主流方法相关概念的比较。
五.教学步骤
讲授+实例的分析比较
六.教具准备
第6章PPT;两种主流方法相关概念的实例
七.时间分配
讲授8学时
八.拟向学生提问
54.采用结构化方法在软件开发过程中遇到过什么问题?
55.当一个复杂系统摆在你面前并想弄清楚该系统时,你头脑中会想到如何认识它?
九.复习题
给出实际(可以离散)小例子,用对象方法相关概念定义之。
第7章面向对象的软件工程
一.教学目的
本章的教学目的是:
通过RM、AM、DM、IM、TM模型引导学生了解开发面向对象软件系统的方法(思路)和实施步骤。
二.教学内容
通过单一实例贯穿RM、AM、DM、IM、TM对象式软件开发全过程的讲授,让学生基本弄清楚对象式软件工程方法的基本思路、方法和相关技术。
三.教学重点与难点
重点、难点:
RM、AM、DM、IM、TM模型的表示方法、作用及意义。
四.教学方法
以单一实例贯穿对象式软件开发全过程,即从RMAMDMIMTM,给学生对象式软件开发的全貌,以提高学生对象式方法的思维模式下控制软件开发的能力。
五.教学步骤
以实例逐步引导五个模型的讲授
六.教具准备
第9章PPT;简单UML;实例
七.时间分配
讲授6学时,练习12学时
八.拟向学生提问
56.不同模式产生的结果与SA/SD的对应
57.SA/SD与OOSE有哪些不同?
九.复习题
选一个小型实际题,让学生分别构造五个基本模型。
第8章软件编码
一.教学目的
软件支撑环境与开发工具是提高软件项目开发效率和质量的重要基础,本章的教学目的是:
根据软件特点如何选择开发工具,如何写“好”程序。
二.教学内容
58.“良”或“好”程序设计风格
59.程序设计语言的理论基础及不同语言的特点
60.软件特点分析与开发工具(或环境)的选择
61.结构化编码技术
三.教学重点与难点
重点、难点:
软件特点分析与相关开发环境选择,涉及软件项目自身的特点、用户使用的熟悉程度与习惯,与原有系统的融合、系统的维护性等方面的因素。
四.教学方法
讲授为主
五.教学步骤
从学生已有程序设计经验与遇到的问题出发,启发式讨论编码的原则问题,结构化编程方法。
六.教具准备
第10章PPT;良程序实例;代码标准
七.时间分配
讲授2学时
八.拟向学生提问
62.在以往的编码中,你如何选择编程工具?
63.从开发者角度什么是好程序?
64.从用户角度什么是好程序?
九.复习题
按“好”程序标准,评测学生自己以往编写的程序的优劣。
第9章软件测试
一.教学目的
测试是提高软件正确性和相关质量的重要环节,本章是本课程的重要内容之一。
通过不同测试原理、方法和测试步骤的讨论,培养学生在软件开发全过程中树立随时测试软件的思想,掌握如何测试软件的方法。
二.教学内容
65.静态测试、动态测试
66.静态测试与动态测试用例选择方法
67.测试模型:
单元测试、联合测试、有效性测试、系统测试
68.白盒测试、黑盒测试步骤
69.错误分析方法
70.测试计划的制定与测试文档
71.对象式软件测试的相关问题
三.教学重点与难点
重点、难点:
72.测试用例的选择原则与方法
73.测试计划的制定
74.测试步骤与测试准备(测试用例选择)
四.教学方法
以实例贯穿测试章节的讨论,避免单纯的概念讲授。
五.教学步骤
75.用实例引入测试的相关问题
76.针对测试的相关问题引入测试方法和步骤的讨论
六.教具准备
第11章PPT;实例;软件计划与测试报告规范
七.时间分配
课堂讲授8学时;实践12学时
八.拟向学生提问
77.在以往的程序设计中是怎么测试程序的?
78.测试能保证程序正确吗?
79.测试只能以执行程序的方式进行吗?
九.复习题
完成所选项目的测试计划与测试报告。
第10章软件维护
一.教学目的
本章的教学目的是让学生懂得软件维护的意义和方法,有生命力的软件是在不断维护中逐渐成熟的。
二.教学内容
80.为什么有软件维护阶段?
81.软件维护的类别
82.如何构造可维护的软件结构
83.软件维护模型
84.软件维护的副作用与如何防止副作用
85.文档维护的困难与副作用
三.教学重点与难点
重点、难点:
软件维护与软件结构的关系;如何构造可维护的软件系统;软件维护的步骤与方法;软件维护副作用的防止。
四.教学方法
讲授为主,建立学生软件维护的思想
五.教学步骤
讲授+课后实践
六.教具准备
第12章PPT;让学生做维护的小程序;维护文档规范
七.时间分配
讲授2学时
八.拟向学生提问
86.你实际维护过你的所写的程序没有?
因为什么原因进行维护?
87.修改程序遇到过什么问题?
为什么出现意想不到的问题?
88.什么样的软件系统结构适合于完善性维护?
九.复习题
用准备的程序实例让学生做不同类别的维护。
第11章软件管理
一.教学目的
本章的教学目的是:
建立软件管理理念,为学生走向项目经理奠定基础。
二.教学内容
89.软件项目(产品)的特殊性造成生产管理难度
90.软件生产管理内容(工作量核算、计划、成本、生产进度、技术与质量、人员、设备、生产过程文档等)
91.定性管理与定量管理
92.管理人员的素质
三.教学重点与难点
重点、难点:
知识产品的量化管理;成本核算与质量;进度控制
四.教学方法
以实例分析管理的各个层面
五.教学步骤
讲授;学生在实践项目中的角色扮演
六.教具准备
第13章PPT;项目实例
七.时间分配
讲授4学时
八.拟向学生提问
93.软件产品有何特点?
94.软件生产的因素?
有哪些定性因素和定量因素?
95.你认为如何控制定性因素?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 教案