还剩4页未读,继续阅读
文本内容:
软件工程概论课程教学大纲课程名称软件工程概论英文名称Introduction toSoftware Engineering课程编号x2050741学时数48其中实验(实训)学时数0课外学时数0学分数
3.0适用专业软件工程、软件工程(金融方向)、软件工程(物流方向)
一、课程的性质和任务软件工程概论是软件工程、软件工程(金融方向)、软件工程(物流方向)专业的专业基础课它的任务是培养学生计算机软件开发与应用的综合能力介绍软件的基本概念和软件工程的目标,通过对面向对象的软件开发方法的介绍,使学生掌握开发高质量软件的方法;通过对软件开发过程和过程管理技术的学习,使学生了解如何进行软件度量和管理,怎样进行质量保证活动,从而能够有效地策划和管理软件开发活动为今后从事软件开发和应用打下良好的基础本次大纲的修订,结合传统教学内容要注重新技术、新知识的介绍,扩充知识面,引导学生走向求新、创新的境界弱化了面向过程的内容,加强了面向对象开发方法和补充了面向架构的内容
二、课程教学内容的基本要求、重点和难点
1.绪论掌握软件、软件危机、软件工程的概念;软件工程的内容、目标;软件工程三要素;软件工程三维全景模型;理解软件产品的特点;软件危机产生及表现;软件工程产生的背景;难点软件与程序、编程与软件开发、基础课程与专业工程区别和联系
2.软件过程熟练掌握软件过程、生命周期的概念;掌握软件过程的活动集合;基本生存周期模型;四个古典模型;理解软件过程的作用;生存周期划分阶段的目的;当今流行的RUP、XP开发模型重点软件过程、生命周期的概念;软件过程的活动集合;基本生存周期模型;四个古典模型;难点软件开发方法学中的分阶段、评审、控制、基线、里程碑、循环往复、演进叠代、重叠、风险控制等思想的体现;软件过程与生命周期区别和联系;软件工程与软件过程的区别和联系
3.软件计划熟练掌握软件计划阶段的主要活动和目标;可行性研究的目的、任务、方法和工具;三个可行性概念;掌握技术可行性研究的步骤,经济可行性中开发费用的估算;了解项目从“问题定义”开始;理解项目前期工作;软件计划的作用、内容、方法和步骤;重点软件计划阶段的主要活动和目标;可行性研究的目的、任务、方法和工具;三个可行性概念;技术可行性研究的步骤,经济可行性中开发费用的估算难点问题定义与可行性研究的区别和联系
4.需求分析概述熟练掌握需求分析的必要性,任务,步骤,原则;理解需求规格说明书的作用与组成,评审标准和过程重点需求分析的必要性,任务,步骤,原则难点需求工程与需求分析;需求的层次;需求分析的抽象、分层、分解的思想原则;
5.软件设计基础—掌握软件设计基本思想软件设计过程、抽象与逐步求精、模块化与信息隐臧的概念;理解模块的独立性准则高内聚,松耦合;了解模块结构的一些术语模块的作用域与控制域;模块的扇入/扇出;模块的可见域与连通域;模块化划分的优化准则;重点软件设计基本思想;模块的独立性准则;难点模块化高内聚与松耦合、抽象与求精的辩证统一思想
6.面向过程从分析到设计掌握在需求分析的基础上,把系统的概念模型转换成系统结构,用特定的图形工具表达系统的总体结构,为详细设计奠定基础理解以数据流图为基础,把灰变换成软件结构的两种映射方法变换型和事务型重点在需求分析的基础上,把系统的概念模型转换成系统结构,用特定的图形工具表达系统的总体结构,为详细设计奠定基础难点需求模型到设计模型的过渡是逐步求精的体现;
7.面向对象从分析到设计熟练掌握面向对象概念;面向对象的分析建立业务模型与概念模型;面向对象的设计体系结构设计和类的设计;UML建模方法和工具;了解面向对象比面向过程有什么样的进步;还存在什么难题;重点面向对象概念;面向对象的分析建立业务模型与概念模型;面向对象的设计体系结构设计和类的设计;UML建模方法和工具;难点体系结构设计;UML建模逻辑模型;
8.面向架构从分析到设计掌握软件架构;熟练掌握软件架构在企业级软件开发中起的作用;架构的组件与容器;架构的分层;MVC设计模式概念;面向架构的分析和设计过程;理解架构分层与MVC分层的统一;Web层结构和组件,DAO层的结构和组件;;重点软件架构;软件架构在企业级软件开发中起的作用;架构的组件与容器;架构的分层;MVC设计模式概念;面向架构的分析和设计过程;难点体系结构设计与架构的区别和联系;基于MVC的正交设计方法;
9.软件测试掌握白盒测试与黑盒测试的方法;了解软件测试的基本知识;理解软件测试过程(单元测试、集成测试、系统测试);理解软件的调试与测试工具;重点白盒测试与黑盒测试的方法;难点测试的用例设计;测试计划、测试记录、测试报告的文档的建立;
10.软件维护掌握维护的作用;维护的分类;维护过程;维护管理;理解结构化维护;维护与开发的关系;软件的变更与版本控制;重点维护的作用;维护的分类;维护过程;维护管理;难点配置管理原理,配置管理工具的使用
11.软件项目管理熟练掌握项目管理基本活动;估算与度量;软件计划;理解项目管理与软件过程的关系;估算与度量的关系;估算与计划的关系;规模与成本估算模型;进度计划;人力资源与团队管理;质量认证体系与CMM;重点项目管理基本活动;估算与度量;软件计划;难点各种成本估算模型的掌握;三教学方式及学时分配教学方式可以灵活采用,如讲授、研讨、案例实训等方式相结合这里的教学方式仅供参考序号主要内容教学方式学时分配辅导答疑比例1软件工程概述讲授3212软件过程讲授3213软件计划讲授2214需求分析概述讲授5215软件设计基础讲授5216面向过程从分析到设计讲授2217面向对象从分析到设计讲授10218面向架构从分析到设计讲授69软件测试讲授42110软件维护讲授22111项目管理讲授621
四、课程其他教学环节要求
(一)作业建议教师安排一个综合的设计题目,随着课程的进行,逐渐完善
(1)选题每人一题,自己拟定题目采用面向对象的开发过程(OOA-OOD-OOP)
(2)内容以Rose或Visio为建模工具,用UML建模语言建立系统的00A模型;进一步进行00D;正向工程完成OOP(代码框架);由实体类模型完成数据映射(OR)和数据库物理设计;日常作业根据选用的教材不同自行确定,作业的题型为选择题、问答题、概述题,分析设计题分章选题时根据教学要求的掌握程度选做作业的数量和难度根据授课进度,布置作业,每章讲授结束后,收一次作业,批改后做集体答疑,讲解作业中出现的问题
(二)课外软件工程课内容多,知识面宽厚,完全依靠课内有限的学时难以掌握,因此要求学生必须加强课后的自学课后自学除了要参阅一些教材以外,还可以利用网上资源尤其可以加入一些论坛或访问一些博客网页,在这些网页里,一些有实际工程经验的专家会谈论他们对软件工程的理解,初学者会受益匪浅
五、本课程与其它课程的联系本课程的先修课程是C++程序设计、数据结构、算法分析与程序设计、数据库原理等;后续课程是培养计划中的专业课程,如软件体系机构,软件测试,人机交互等
六、教学参考书目
1.《软件工程导论(第5版)》张海藩编著清华大学出版社
2008.n
2.《软件工程(原书第8版)》(英)萨默维尔(SommeZlle,I.)著,程成,陈霞译,机械工业出版社,2007-4-
13.《软件工程——实践者的研究方法(原文版第6版)》(美)Roger S.pressman著郑人杰等译机械工业出版社
2007.
14.面向对象与传统软件工程(原文版第五版)》(美)Stephen R.schach著韩松邓迎春李萍译机械工业出版社
2003.
95.《软件工程过程》(加)Pierre N.Robillard,Philippe Kruchten,Patrick dAstous著施平安译清华大学出版社
2003.8。