软件工程课程教学大纲

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

软件工程课程教学大纲

课程名称:软件工程

英文名称: Software Engineering

课程编号:x2050881

学时数: 48

其中实验学时数:8 课外学时数:

学分数: 3.0

适用专业:软件工程专升本

一、课程的性质、目的和任务

软件工程是软件工程专业的专业必修课。课程的任务是培养学生在软件开发过程中技术方法的综合应用能力。课程介绍软件的基本概念、软件生命周期各时期和阶段的主要任务。并通过介绍传统软件工程、面向对象软件工程,使学生了解软件工程的主要技术和方法。通过对面向对象的软件开发方法的介绍,使学生掌握开发主流软件系统的技术方法;通过对软件测试的学习,使学生了解如何通过白盒测试、黑盒测试的方法对软件进行质量保证。通过对软件工程课程的学习,为学生从事软件开发和管理工作打下良好的基础

二、课程教学内容的基本要求、重点和难点

1、绪论

掌握:软件、软件危机、软件工程的概念;软件工程的内容、目标;软件工程三要素;软件的特点、软件危机产生及表现;

了解:软件工程产生的背景;

重点:软件工程的定义、软件的特点;

难点: 软件与程序、软件危机发生的原因和解决方法。

2、软件过程

掌握:软件过程、生命周期的概念;软件过程的活动集合;基本生存周期模型;四个古典模型;理解:软件过程的作用;生存周期划分阶段的目的;当今流行的RUP、XP开发模型。

重点:软件过程、生命周期的概念与作用;软件生命周期模型;

难点:软件开发方法学中的分阶段、评审、控制、基线、里程碑、循环往复、演进迭代、风险控制等思想的体现;软件过程与生命周期区别和联系;软件工程与软件过程的区别和联系。

3、软件计划时期

掌握:软件计划阶段的主要活动和目标;可行性研究的目的、任务、方法和工具;技术可行性研究的步骤;理解:项目从“问题定义”开始;项目前期工作;软件计划的作用、内容、方法和步骤;

重点:技术可行性研究的步骤和方法;

难点:问题定义与可行性研究的区别和联系。

4、需求分析

掌握:需求分析的必要性、任务、步骤及原则;理解:需求规格说明书的作用与组成,评审标准和过程;

重点:需求分析的必要性、任务、步骤及原则;

难点:需求工程与需求分析;需求的层次;需求分析的抽象、分层、分解的思想原则;

5、软件设计基础

掌握:软件设计基本思想:软件设计过程、抽象与逐步求精、模块化与信息隐藏的概念;理解:模块的独立性准则:高内聚,松耦合。

重点:软件设计过程、抽象与逐步求精、模块化与信息隐藏的基本概念;

难点:模块化高内聚与松耦合、抽象与求精的辩证统一思想;

6、面向过程从分析到设计

掌握:面向过程需求分析的主要技术:DFD和数据字典,并在需求分析的基础上,把系统的概念模型转换成系统结构,为详细设计奠定基础。理解:以数据流图为基础,把DFD图映射成SC图的两种映射方法。

重点:DFD图的绘制方法,结构化需求分析到结构化设计的映射关系;

难点:DFD图映射成SC图的映射方法;

7、面向对象从分析到设计

掌握:面向对象概念;面向对象的分析:建立业务模型与概念模型;面向对象的设计:体系结构设计和类的设计;UML建模方法和工具;理解:面向对象比面向过程有什么样的进步;还存在什么难题;

重点:分析阶段:建立业务模型与概念模型;设计阶段:体系结构设计和类的设计;UML建模方法和工具;

难点:体系结构设计;UML建模逻辑模型;

8、软件测试

掌握:白盒测试与黑盒测试的方法;了解软件测试的基本知识,软件的测试工具;理解软件测试过程(单元测试、集成测试、系统测试);

重点:白盒测试与黑盒测试的方法;

难点:测试的用例设计;测试计划、测试记录、测试报告的文档的建立;

9、软件维护

掌握:维护的作用;维护的分类;维护过程;维护管理;了解:结构化维护;维护与开发的关系;软件的变更与版本控制;

重点:维护的分类;维护过程;维护管理;

难点:配置管理原理,配置管理工具的使用;

三、教学方式及学时

四、课程其他教学环节要求

要求:课前按实验要求认真准备实验内容;课堂及时完成所要求的内容并提交实验结果。

2、作业

作业的题型为:选择题、问答题、概述题、分析设计题。根据教学要求的掌握程度选做作业的数量和难度。根据授课进度,布置作业,每章讲授结束后,收一次作业,批改后做集体答疑,讲解作业中出现的问题。

3、课外

软件工程课内容多,知识面宽厚,完全依靠课内有限的学时难以掌握,因此要求学生必须加强课后的自学。课后自学除了参阅一些教材以外,还要充分利用实验室开放时间使用网络资源。

五、本课程与其它课程的联系

本课程是在数据结构、C++程序设计、数据库原理与设计等课程的基础上开设的专业必修课。该课旨在提高学生对软件工程过程技术和方法的综合应用能力,为各专业课程包括程序设计语言、数据库、设计模式等的融汇贯通提供知识储备,同时该课程也是毕业设计必须应用的主体知识。

六、教学参考书目

1.《软件工程基础与实践教程》沈文轩等编著清华大学出版社 201

2.9

2.《面向对象与传统软件工程(原文版第五版)》,(美)Stephen R.schach 著,

韩松等译,机械工业出版社,2003.9

3.《软件工程》钱乐秋赵文耕编著清华大学出版社 2007.3

4.《软件工程导论(第五版)》张海藩编著清华大学出版社 2008.2

5.《实用软件工程》周丽娟编著电子工业出版社 2008.3

6.《软件工程——原理、方法与应用》史济民等编著高等教育出版社 2013.3

本大纲修改人:李林林

本大纲审查人:田莹

本大纲负责人:吴建胜

相关文档
最新文档