软件工程教学大纲正式版讲课教案.docx
- 文档编号:1681533
- 上传时间:2022-10-23
- 格式:DOCX
- 页数:9
- 大小:21.51KB
软件工程教学大纲正式版讲课教案.docx
《软件工程教学大纲正式版讲课教案.docx》由会员分享,可在线阅读,更多相关《软件工程教学大纲正式版讲课教案.docx(9页珍藏版)》请在冰豆网上搜索。
软件工程教学大纲正式版讲课教案
软件工程教学大纲(正式版)
《软件工程导论》课程教学大纲
一、课程基本信息
课程编号:
英文名称名:
SoftwareEngineering
总学时:
54学时
学分:
3
课程类别:
专业必修课
适用专业:
全校本(专)计算机科学与技术
先修课程:
数据结构,大学数学,离散数学,计算机算法设计。
二、课程性质与目的、要求
《软件工程》是计算机专业的一门工程性基础课程,在软件工程学科人才培养体系中占有重要的地位。
软件开发是建立计算机应用系统的重要环节,人们通过软件工程学把软件开发纳入工程化的轨道,而软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学。
《软件工程》已成为高等学校计算机软件教学体系中的一门核心课程,
本课程以IEEE最新发布的软件工程知识体系为基础构建内容框架,注重贯穿软件开发整个过程的系统性认识和实践性应用,以当前流行的统一开发过程、面向对象技术和UML语言作为核心,密切结合软件开发的先进技术、最佳实践和企业案例,力求从“可实践”软件工程的角度描述需求分析、软件设计、软件测试以及软件开发管理,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。
通过本课程的学习,要求学生能掌握软件工程的基本概念、基本原理、开发软件项目的工程化的方法和技术及在开发过程中应遵循的流程、准则、标准和规范等;学生应能掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为学生参加大型软件开发项目打下坚实的理论基础。
本课程注重培养学生理论应用于实践的能力,课堂上教师向学生讲述软件工程中的相关原理和概念,并通过课程设计,培养学生对整个软件开发过程的能力,让学生能切实体会到软件工程在实践中的指导作用,并按软件工程的要求完成规范的各项软件开发文档。
本课程对提高学生的软件开发能力和项目管理能力有重要的现实意义。
三、教学内容及学时分配
本课程的教学内容共分十三章。
第1章软件工程学概述(2课时)
学习目的与要求:
通过本章的学习,了解和掌握软件工程的基本概念(如软件和软件工程的定义、等),软件危机的表现形式、产生的原因及消除的途径,软件工程的基本原理、方法学,软件的生存期,几种主要的软件开发模型等。
知识点:
①软件危机的产生、典型表现形式、产生的原因及消除的途径;②软件工程的基本原理、包括软件工程的定义、特性、方法学;③二种主要的软件开发方法;④软件生存周期;⑤软件过程、几种主要的开发模型。
1.1软件危机
1.2软件工程
1.3软件生命周期
1.4软件过程
1.5小结
第2章可行性研究(4课时)
学习目的与要求:
深刻理解可行性研究的必要性,掌握可行性研究的任务、过程、成本效益分析以及可行性研究报告的主要内容;掌握系统流程图、数据流程图、数据字典概念以及项目开发计划的基本内容。
知识点:
①可行性研究的任务、具体步骤、成本效益分析、可行性研究报告;②系统流程图;③数据流图;④数据字典。
2.1可行性研究的任务
2.2可行性研究过程
2.3系统流程图
2.4数据流图
2.5数据字典
2.6成本/效益分析
2.7可行性研究报告
2.8 小结
第3章需求分析(6课时)
学习目的与要求:
掌握需求分析的任务,需求获取的方法、分析建模与需求规格说明,掌握数据建模的实体联系图、数据规范化,掌握描述系统行为模型的状态转换图,掌握层次方框图、Warnier图、IPO(HIPO)图。
掌握验证软件需求的必要性、方法。
知识点:
①需求分析的任务,需求获取、分析建模与需求规格说明;②实体联系图与数据规范化;③状态转换图;④层次方框图;⑤Warnier图;⑥IPO(HIPO)图;⑦验证软件需求。
3.1需求分析的任务
3.2与用户沟通获取需求的方法
3.3分析建模与规格说明
3.4数据规范化
3.5验证软件需求
3.6小结
第4章形式化说明技术(2课时)
学习目的与要求:
掌握形式化方法的概念、优点和应用准则,初步掌握有穷状态机、Petri网、Z语言的概念和使用。
知识点:
①形式化方法、非形式化方法、半形式化方法;②形式化方法的应用准则;③有穷状态机;④Petri网;⑤Z语言。
4.1概述
4.2有穷状态机
4.3Petri网
4.4Z语言
4.5小结
第5章总体设计(4课时)
学习目的与要求:
了解软件总体设计的目的、任务,掌握软件总体设计的过程、设计原理和启发规则,掌握描述软件结构的工具以及面向数据流的设计方法。
能够将具体的数据流图的转换为软件的结构图,即变换分析技术和事务分析技术。
知识点:
①总体设计、概要设计、初步设计;②软件总体设计的阶段和过程;③模块化、抽象、逐步求精、信息隐藏、模块独立;④启发规则;⑤层次图、HIPO图、结构图;⑥面向数据流的设计方法(结构化设计方法-SD方法)。
5.1设计过程
5.2设计原理
5.3启发规则
5.4描绘软件结构的图形工具
5.5面向数据流的设计方法
5.6小结
第6章详细设计(4课时)
学习目的与要求:
了解软件详细设计阶段的目的、任务和结构化程序设计的概念,掌握人机界面设计的方法、过程设计的工具以及面向数据结构的设计方法,了解程序复杂程度的定量度量。
知识点:
①结构化程序设计;②人机界面设计的问题、设计方法;③程序流程图、盒图(N-S图)、PAD图、判定表、判定树、过程设计语言;④JACKSON图、JACKSON方法。
6.1结构程序设计
6.2人机界面设计
6.3过程设计的工具
6.4面向数据结构的设计方法
6.5程序复杂程度的定量度量
6.6小结
第7章实现(8课时)
学习目的与要求:
了解如何选择程序设计语言,培养良好的编码风格,掌握软件测试的目标、准则、方法和步骤,掌握单元测试、集成测试、确认测试的方法步骤,掌握白盒测试和黑盒测试技术的概念、方法,掌握调试过程与途径,了解软件可靠性的概念及其计算方法。
能够按照测试的原则和技术,分析确定高效的测试用例。
知识点:
①选择程序设计语言、编码风格;②软件测试基础;③单元测试、集成测试、确认测试;④白盒测试技术和黑盒测试技术;⑤调试;⑥软件可靠性、可用性。
7.1编码
7.2软件测试基础
7.3单元测试
7.4集成测试
7.5确认测试
7.6白盒测试技术
7.7黑盒测试技术
7.8调试
7.9软件可靠性
7.9小结
第8章维护(2课时)
学习目的与要求:
了解软件维护的定义,掌握软件维护的特点和过程,软件的可维护性的定义及提高可维护性的方法。
掌握预防性维护和软件再工程过程的概念、方法。
知识点:
①软件维护;②软件的可维护性;③预防性维护;④软件再工程过程。
8.1软件维护的定义
8.2软件维护的特点
8.3软件维护过程
8.4软件的可维护性
8.5预防性维护
8.6软件再工程过程
8.7小结
第9章面向对象方法学引论(2课时,选讲)
学习目的与要求:
了解面向对象方法学的要点和优点,掌握面向对象的概念、建模,掌握对象模型、动态模型、功能模型以及三种模型的关系。
知识点:
①面向对象方法学的特点;②面向对象;③面向对象建模;④对象模型、动态模型、功能模型。
9.1面向对象方法学概述
9.2面向对象的概念
9.3面向对象建模
9.4对象模型
9.5动态模型
9.6功能模型
9.73种模型之间的关系
9.8小结
第10章面向对象分析(4课时,选讲)
学习目的与要求:
掌握面向对象分析的过程、需求陈述,能够根据具体问题建立对象模型、动态模型、功能模型以及确定对象的服务。
知识点:
①对象模型的层次;②面向对象分析与需求陈述;③建立对象模型;④建立动态模型;⑤建立功能模型;⑥确定服务。
10.1面向对象分析的基本过程
10.2需求陈述
10.3建立对象模型
10.4建立动态模型
10.5建立功能模型
10.6定义服务
10.7小结
第11章面向对象设计(4课时,选讲)
学习目的与要求:
了解面向对象设计的准则和启发规则,掌握软件重用的概念和方法,掌握系统分解的方法,掌握设计问题域子系统、设计人机交互子系统、设计任务管理子系统、设计数据管理子系统、设计类中的服务、设计关联以及设计优化的方法。
知识点:
①面向对象设计的准则、启发规则;②软件重用;③系统分解;④设计问题域子系统;⑤设计人机交互子系统;⑥设计任务管理子系统;⑦设计数据管理子系统;⑧设计类中的服务;⑨设计关联;⑩设计优化。
11.1面向对象设计的准则
11.2启发规则
11.3软件重用
11.4系统分解
11.5设计问题域子系统
11.6设计人机交互子系统
11.7设计任务管理子系统
11.8设计数据管理子系统
11.9设计类中的服务
11.10设计关联
11.11设计优化
11.12小结
补充内容:
UML基础与ROSE建模(8课时,选讲)
学习目的与要求:
掌握UML基础知识,并能画出ROSE建模图,包括UML用例图、类图、对象图、包图、顺序图和合作图、状态图、构件图和部署图。
第12章面向对象实现(2课时,选讲)
学习目的与要求:
掌握面向对象语言的特点以及如何选择面向对象的开发工具,养成良好的程序设计风格,掌握面向对象的软件测试的特点和策略,能够设计测试用例。
知识点:
①面向对象语言;②程序设计风格以及对可重用性、可扩充性、健壮性的影响;③面向对象的单元测试、集成测试、确认测试;④测试类的方法;⑤面向对象的测试用例。
12.1程序设计语言
12.2程序设计风格
12.3测试策略
12.4设计测试用例
12.5小结
第13章软件项目管理(2课时,选讲)
学习目的与要求:
掌握估算软件规模和工作量的技术,能够根据项目制定合理的进度计划,掌握团队组织的基本方法,了解软件的质量指标并掌握软件质量保证的措施,掌握软件配置管理,了解能力成熟度模型。
知识点:
①代码行、功能点估算软件规模的技术;②进度计划中的甘特图、工程网络、关键路径;③团队组织;④软件质量指标、质量保证措施;⑤软件配置、软件配置管理过程;⑥CMM。
13.1估算软件规模
13.2工作量估算
13.3进度计划
13.4人员组织
13.5质量保证
13.6软件配置管理
13.7能力成熟度模型
13.8小结
四、教学方法
教师在课堂上采用多媒体教学手段授课,上课时强调理论与实践的同等重要性,不断积累教学素材指导课堂讨论和实践,以提高学生的学习兴趣。
针对《软件工程》的课程特点,主讲教师根据多年的教学经验总结出了切实可行的教学方法:
案例教学法和项目实践法,以提高教学质量。
案例教学法:
在教学中创造条件引入实例,结合软件工程理论知识给学生讲解实例、介绍具体的开发过程和方法,并提出实际问题,启发学生思考解决的方法及比较方案的优劣。
项目实践法:
为加强实践环节,提高学生学习的主动性,可将学生分组进行项目实践,提高学生的团队合作能力。
方法是让学生利用课外时间相对独立完成一个模拟的科研项目,这些项目都是从实际项目中提炼出来的,具有典型性、客观性和启发性。
教师采用点拔方式或共同探究的方式进行指导。
实验进度可以和课堂教学同步,也可以在课堂教学结束后进行。
这种项目练习以团队操练的方式进行。
项目组根据项目需求,制定项目计划,进行分析、设计、编码和测试,运用本课程学到的各方面知识,分工协同、想办法、查资料、探寻问题的解决方案,同时在研究问题找出规律的过程中创造性地学到了知识,学生的创造能力、应用能力、综合能力和交流合作等大量非智力因素得到充分的发展。
项目完成后,教师要求学生写专题论文,启发他们的思维,表达他们的见
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 教学大纲 正式版 讲课 教案