还剩4页未读,继续阅读
文本内容:
《软件工程概论》课程标准
(一)课程性质与任务《软件工程概论》是计算机科学与技术专业的基础必修课程它是在具有一定程序设计语言的基础上,系统学习软件__过程的原理、方法与技术的一门综合性很强的专业基础课本课程重点讲授软件工程的原理、方法与应用课程内容的理论性、技术性、实践性都比较强,因此,传授软件工程原理、方法与技术的同时,应注重设计技能与实践能力的训练
(二)课程教学目标1.知识目标从软件工程的基本原理与方法着手,对软件工程过程的各个步骤进行讲解,包括详细的概括与分析、先进的设计、__技术与管理方法,对软件生存期的整个过程进行控制和管理让学生全面理解软件作为一种产品,在__的各个阶段都是受控制的,必须将软件工程的思想贯穿__过程的始终,以保证软件产品的质量和可靠性为今后从事软件项目工作与科研__打下坚实的基础2.能力目标使学生具有分析软件__过程整体流程的能力,具备软件__需求、设计和实现的能力提高学生动手实践、理论__实际以及协同创新的能力,同时也为本专业后续课程的学习打下基础3.素质目标使学生建立面向对象分析与设计的能力,同时能够很好的理解软件__过程,在__过程中应用所学的软件工程知识和技术具有良好的专业意识、创新意识与团队合作精神,善于了解计算机发展的动态和新技术
(三)参考学时本课程课堂教学64学时,实验0学时,共64学时
(四)课程学分3学分
(五)课程内容和要求
(六)教学建议
1.教学方法利用多媒体、课程__、BB教学平台、视频动画演示等相结合的立体化教学手段,根据因材施教的原则,在传统的课堂教学中,引入灵活的互动式、启发式和引导式教学方法,充分激发学生求知的潜能和学习的主体作用培养学生的学习兴趣和实践动手能力,从而激发创造力,从实践环节上保证课程体系的完整性
2.评价方法本课程为考试课期末笔试占总成绩的70%,平时作业、课堂表现占总成绩的30%笔试和作业成绩都合格才能获得学分
3.教学条件多媒体教室,满足课堂教学与实践教学的需求
4.教材编选
4.教材编选1教材张海潘等著《软件工程导论》,清华大学出版社,2013年10月该教材全面系统地讲述了软件工程的概念、原理和典型的方法学,并介绍了软件项目的管理技术本书正文共13章,第1章是概述,第2~8章顺序讲述软件生命周期各阶段的任务、过程、结构化方法和工具,第9~12章分别讲述面向对象方法学引论、面向对象分析、面向对象设计和面向对象实现,第13章介绍软件项目管理附录讲述了用面向对象方法__软件的过程,对读者深入理解软件工程学很有帮助,也是上机实习的好材料2参考教材《软件工程》清华大学出版社2010叶俊民主编《实用软件工程》清华大学出版社2006陆惠恩张成姝主编《实用软件工程》清华大学出版社1997郑人杰殷人昆陶永雷主编《软件工程——原理、方法与应用》水利水电出版社2005肖孟强主编《面向对象与传统软件工程》机械工业出版社2003StephenR.Schach著,韩松译《UML用户指南》机械工业出版社2002GBooch等著,邵维忠等译序号教学项目教学内容与教学要求活动设计建议参考课时1软件工程学概述软件的特征,软件危机,软件工程的概念及产生软件危机的原因,软件生命周期中各阶段的基本任务,软件工程中的五种软件开发模式掌握软件的特点,软件生产发展的三个阶段,各阶段的特点,软件危机的产生及其表现形式初步了解软件的生存周期模型理解软件工程的定义及特点,软件生存期各阶段的特点和内容深刻理解软件危机产生的原因掌握软件生命周期中各阶段的基本任务
(1)案例引领教学
(2)注重介绍软件工程特性
(3)着重让学生理解软件工程学42可行性研究软件的可行性分析,软件计划及成本估算,可行性分析的基础和主要任务,可行性研究的方法和步骤深刻理解可行性研究的必要性,掌握可行性研究的任务及可行性研究的具体步骤,了解系统流程图的作用及符号表示,掌握数据流图的画法及数据字典的编写
(1)注重介绍数据流图
(2)着重让学生理解可行性研究23需求分析需求分析的任务和步骤,结构化分析方法及原型化分析方法,结构化分析方法的指导原则,数据流图、数据词典和加工说明等描述手段,需求分析文档建立和复审的方式深刻理解需要分析阶段的概念及任务,熟练掌握数据流图的细化方法,掌握常用图形工具的使用方法
(1)注重需求分析和结构化分析方法
(2)着重让学生理解数据流图的细化方法64形式化说明技术非形式化方法的缺点,形式化方法的优点和应用形式化方法的准则,有穷状态机,Petri网和Z语言要求了解形式化方法和非形式化方法的优缺点,了解有穷状态机、Petri网和Z语言的使用方法
(1)注重理解非形式化方法
(2)着重让学生理解有穷自动机45总体设计结构化设计方法,面向数据结构的设计方法,结构设计的目标和任务,结构化设计的概念和原理,结构化设计的步骤以及相关方法要求了解总体设计的过程,深刻理解软件总体设计的基本任务,软件设计的基本原理,理解模块化,抽象,信息隐蔽,模块独立性等概念,明确度量模块独立性的校准---耦合性及内聚性,熟练掌握结构化设计方法,能划分数据流的类型,将其能换成软件结构图,并能根据优化准则将其优化
(1)注重理解结构化方法的设计理念
(2)着重让学生理解耦合性和内聚性66详细设计详细设计方法采用的结构化程序设计的思想和原理,常用的算法过程的描述工具,算法的复杂性评价问题要求明确详细设计阶段的主要任务,掌握算法复杂性的度量方法,能熟练的使用详细设计描述工具来设计模块中的算法及程序的逻辑结构,理解Jackson方法的概念及程序复杂度的度量方法,学会使用Jackson方法设计输入输出数据结构和程序结构
(1)注重理解算法的相关概念
(2)着重让学生理解Jacson的数据流方法67实现程序设计语言的概念以及编码应当遵循的原则,编码设计的目标与任务,编码使用的程序设计语言的特性以及程序设计风格的重要性,软件测试的概念与主要任务,软件的排错技术和软件可靠性的评测方法,软件测试的目标、原则以及测试方案的建立和测试过程,测试实例的构造方法了解几种常见的程序设计语言的特点,领会程序设计中应注意的问题,注意培养良好的编程风格,掌握测试阶段的内容,测试方法及测试步骤,深刻理解测试过程中单元测试,集成测试,验收测试的任务及使用的方法,深刻理解白盒,黑盒测试技术,能针对某一问题采用白盒法或黑盒法进行测试用例的设计,掌握调试程序的方法
(1)注重理解程序设计语言
(2)着重让学生理解程序设计语言和相关软件的测试方法68维护软件维护的类型、软件的可维护性以及软件的维护方法,软件维护的目标与任务,软件维护的特殊性以及软件维护的管理流程了解软件维护的各种困难,软件维护的特点,软件维护的文档,理解软件维护的内容,维护任务的实施,深刻理解如何提高软件的维护性
(1)注重理解程序设计的维护
(2)着重让学生理解维护的重要性39面向对象方法学引论面向对象的概念,包括对象和类、对象的属性和操作,以及对象之间的关系,面向对象程序设计的特性,如封装、继承和多态性,面向对象的建模,包括对象模型、动态模型和功能模型的概念深刻理解对象、类、类的层次结构、方法和消息的实质以及对象之间的关系,深刻理解面向对象程序设计的特性,深刻理解面向对象建模的概念
(1)注重理解面向对象思想
(2)着重让学生理解对象、类等面向对象概念310面向对象分析面向对象分析的基本过程,建立对象模型、动态模型和功能模型的方法,确定对象、确定属性、定义操作、对象间通信理解对象分析的基本过程,深刻理解对象模型、动态模型、功能模型的元素、结构和构造方法,掌握画对象图、画状态图、画数据流程图;确定对象类、确定关联、确定属性,识别继承
(1)注重理解面向对象的分析方法
(2)着重让学生理解对象模型、动态模型等模型概念511面向对象设计面向对象设计的准则,面向对象设计所用启发性规则、软件重用、系统分解等方法,设计问题域、人机交互、管理等子系统,设计优化掌握面向对象设计的准则,掌握面向对象设计所用启发性规则、软件重用、系统分解等方法,了解设计问题域、人机交互、管理等子系统;设计优化
(1)注重理解面向对象的相关过程、步骤
(2)着重让学生理解启发式规则和软件重用等概念612面向对象实现面向对象程序设计语言,面向对象程序设计风格,面向对象测试了解面向对象程序设计风格,了解面向对象测试
(1)注重理解面向对象语言
(2)着重让学生理解面向对象语言的编程方法513软件项目管理软件开发成本结算,软件项目进度安排,软件项目计划内容,软件质量的定义、质量保证了解软件开发成本结算,了解软件项目进度安排,了解软件项目计划内容,了解软件质量的定义、质量保证的基本概念
(1)注重理解软件开发过程
(2)着重让学生理解软件项目进度和控制概念514软件工程的最新进展结合软件工程学科的最新发展,以专题形式介绍软件工程的前沿技术,涉及形式化方法、模型驱动的软件开发、基于构件的软件开发、软件过程改进等方面了解软件工程领域的前沿技术和最新发展状况
(1)注重理解软件工程领域的新概念和技术3。