暂无课程简介!
暨南大学
软件工程 教学大纲
课程英文名:Software Engineering
课程性质:专业课
课程类别:必修课
先修课程:数据结构、离散数学、高级语言程序设计
学 分:3
总学时数:54
周学时数:3
适用专业:计算机科学与技术、软件工程、网络工程
开课单位:信息科学技术学院计算机科学系
教学目标及教学要求
软件工程导论是计算机相关专业的一门重要的专业基础课,它对于培养学生的软件素质,提高学生的软件开发能力与软件项目管理能力具有重要的意义。通过本课程的学习,要求学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展方向;如何用工程化的方法开发软件项目,以及开发过程中应遵循的流程、准则、标准和规范。
这是一门实践性很强的课程,教师在讲述课程的过程中,应结合实际的软件项目或案例的进行讲解并组织学生进行课堂讨论,以加深学生对理论知识的理解。
二、本课程的重点和难点
本课程的重点主要有面向数据流的系统分析、面向对象的系统分析、设计及实现。教学中具体的难点分布在各个章节如:需求分析的中需求建模、面向数据流的软件结构设计、逻辑覆盖及软件测试用例的设计、UML统一建模语言等。
三、主要实践性教学环节及要求
本课程没有安排专门的实验教学环节,教师在课堂讲授理论知识时,可以结合实际的软件项目或案例的进行讲解并组织课堂讨论。
四.采用的教学手段和方法
主要利用多媒体课室课堂讲授软件工程的基本理论知识,其中安排几次大作业和习题课。在讲述软件生命周期的各个阶段时结合实际的软件项目案例进行分析和讨论。在讲述软件工程文档时,主要介绍软件文档的国家标准。
五、教材与主要参考文献
教 材:
[1] 张海藩. 软件工程导论(第四版),北京:清华大学出版社,2003.
主要参考文献:
[1] 史济民. 软件工程--原理方法与应用.北京:高等教育出版社,1990.
[2] 郑人杰,殷人昆,陶永雷. 实用软件工程(第二版).北京:清华大学出版社,1997.
[3] Roger S. Pressman著.梅宏译. 软件工程--实践者的研究方法(第五版).北京:机械工业出版社,2002.
六、考核形式与成绩计算
闭卷考试。平时占30%~40%,期末考试占60%~70%。
七、基本教学内容
软件危机及软件工程
了解软件的特点,软件生产发展的三个阶段,各阶段的特点,软件危机的产生及其表现形式;初步了解软件的生存周期模型;理解软件工程的定义及特点,软件生存期各阶段的特点和内容;深刻理解软件危机产生的原因。
可行性研究
深刻理解可行性研究的必要性,掌握可行性研究的任务及可行性研究的具体步骤;了解系统流程图的作用及符号表示,重点掌握数据流图的画法及数据字典的编写。
需求分析
深刻理解需要分析阶段的概念及任务,熟练掌握数据流图的细化及ER图,IOP图的画法。
总体设计
深刻理解软件总体设计的基本任务,软件设计的基本原理。理解模块化、抽象、信息隐蔽、模块独立性等概念,明确度量模块独立性的准则---偶和性及内聚性。熟练掌握结构化设计方法(要求能划分数据流的类型,将其能换成软件结构图,并能根据优化准则将其优化)。
详细设计
能熟练的使用详细设计描述工具来设计模块中的算法及程序的逻辑结构。理解Jackson方法的概念及程序复杂度的度量方法,学会使用Jackson方法设计输入输出数据结构和程序结构。
编 码
了解几种常见的程序设计语言的特点,领会程序设计中应注意的问题,注意培养良好的编程风格。
软件测试
总的要求是掌握测试阶段的内容,测试方法及测试步骤;深刻理解白盒,黑盒测试技术。深刻理解测试过程中单元测试,集成测试,验收测试的任务及使用的方法;掌握调试程序的方法;熟练掌握的技能是:能针对某一问题采用白盒法或黑盒法进行测试用例的设计。
维护
本章总的要求是:掌握软件维护的内容、特点、方法、技术、文档;了解软件维护的各种困难,软件维护的特点,软件维护的文档;理解软件维护的内容,维护任务的实施;深刻理解如何提高软件的维护性。
面向对象方法学
掌握面向对象的概念与面向对象分析的基本思想、UML 概述(语言机制)、基于UML的软件开发过程、基于UML的需求分析(步骤及语言机制详解)。
管理技术
总的要求是了解软件开发成本结算、软件项目进度安排、软件项目计划内容及软件质量的定义、质量保证的基本概念。深入理解软件项目计划的重要性及各个环节之间的联系。