1、软件工程ISoftware Engineering一、课程基本情况课程类别:专业主干课课程学分:3学分课程总学时:48学时,其中讲课:40学时,实验(含上机):8学时,课外0学时课程性质:选修开课学期:第6学期先修课程:C+程序设计、数据库系统、数据结构适用专业:信息与计算科学教材:史济民、顾春华、郑红编著,软件工程一一原理、方法与应用(第三版),高等教育版社,2009年3月。开课单位:计软院二、课程性质、教学目标和任务软件工程是与软件开发相关的一门应用性很强的学科,是面向我院信息与计算科学专业高 年级学生的一门专业选修课。该课主要讲授软件开发方法学和软件工程管理的基本理论、方法 与技术,要求
2、学生学会运用软件工程学的基本方法与技术,定量分析与管理软件开发及维护等 各个阶段,同时让学生了解软件开发方法学的最新方法和开展动态。三、教学内容和要求第1章绪论(2学时)(1) 了解:软件工程的基本概念和内容,包括软件的定义与特征、软件工程学的范畴等;(2)理解:理解软件危机产生的原因与解决方法;(3)掌握:软件工程法学的范畴涵盖的内容;重点:软件工程法学的范畴涵盖的内容;难点:软件工程法学的范畴涵盖的内容;第2章 软件生存周期与软件过程(6学时)(1)了解:软件生存周期的阶段划分及主要活动,传统软件开发模型与演化,了解形式化 开发方法模型,软件工程的开展阶段划分与应用;(2)理解:软件开发模
3、型的原理与意义;(3)掌握:统一过程、敏捷开发过程;重点:软件的开发模型包括:瀑布模型、快速原型法、增量模型、螺旋模型、变换模型、 净室模型,统一过程、敏捷开发过程;难点:螺旋模型、变换模型、净室模型;第3章 结构化分析与设计(6学时)(1) 了解:SA模型的组成与描述,SD模型的组成与描述。(2)理解:分层数据流图的画法,数据定义与加工策略的方法,需求复审;(3)掌握:结构化设计的步骤,如何将DFD映射成SC图的方法;重点:结构化设计的步骤,如何将DFD映射成SC图的方法难点:结构化设计的步骤,如何将-DFD映射成SC图的方法,变换映射与事务映射;第4章 面向对象与UML (6学时)(1)
4、了解:面向对象的概念,00开发的特征与优点,Rational Rose与StarUML;(2)理解:UML语言的符号组成与特点;(3)掌握:UML语言的应用,静态建模、动态建模以及物理架构建模的方法与技术;重点:UML语言的应用,静态建模、动态建模以及物理架构建模的方法与技术;难点:静态建模、动态建模以及物理架构建模的方法与技术;第5章 需求工程与需求分析(4学时)(1) 了解:软件需求的定义与特征,需求管理的内容、需求管理工具;(2)理解:软件需求分析与建模的方法,需求变更控制的方法;(3)掌握:需求建模与需求描述的方法,需求变更控制的方法;重点:需求建模与需求描述的方法,需求变更控制的方法
5、;难点:需求变更控制的方法;第6章 面向对象分析(6学时+4学时)(1) 了解:面向对象分析的模型;(2)理解:分析类的概念与分类;(3)掌握:识别与确定分析类的方法、建立对象-行为模型与对象-关系模型的方法;重点:识别与确定分析类的方法、建立对象-行为模型与对象-关系模型的方法;难点:识别与确定分析类的方法;第7章 面向对象设计(6学时+2学时)(1)了解:软件设计的概念与任务,模块化设计的内容与方法;(2)理解:面向对象设计的任务与模型,设计模式的概念与应用;(3)掌握:系统架构设计的内容与方法,系统元素设计的内容与方法;重点:系统架构设计的内容与方法,系统元素设计的内容与方法;难点:系统
6、架构设计的内容与方法;第8章 编码与测试(4学时+2学时)(1)了解:编码的风格、编码语言与工具,软件测试的目的与任务;(2)理解:软件测试的特征与分类,软件测试的文档与测试过程;(3)掌握:白盒测试与黑盒测试方法的基本思想与分类,测试用例的设计方法;重点:白盒测试与黑盒测试方法,测试用例的设计方法;难点:白盒测试与黑盒测试方法;四、课程考核(1)作业等:作业:4次,实验报告3篇,课程论文:0篇;(2)考核方式:开卷考试(3)总评成绩计算方式:平时成绩*10% +期末考试成绩*90%五、参考书目(1) Jason T.Roff著,张瑜等翻译,U M L基础教程清华大学出版社,2003.10.(2)布鲁志著,吴丹等译,面向对象的软件工程一一构建复杂且多变的系统,清华大学出 版社,2002年10月(3)汤庸编著,软件工程方法与管理,冶金工业出版社,2002年9月(4)孙家广主编,软件工程一理论、方法与实践,清华大学出版社,2005.7;