软件工程教学大纲版.docx

上传人:b****7 文档编号:10552306 上传时间:2023-02-21 格式:DOCX 页数:18 大小:24.17KB
下载 相关 举报
软件工程教学大纲版.docx_第1页
第1页 / 共18页
软件工程教学大纲版.docx_第2页
第2页 / 共18页
软件工程教学大纲版.docx_第3页
第3页 / 共18页
软件工程教学大纲版.docx_第4页
第4页 / 共18页
软件工程教学大纲版.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

软件工程教学大纲版.docx

《软件工程教学大纲版.docx》由会员分享,可在线阅读,更多相关《软件工程教学大纲版.docx(18页珍藏版)》请在冰豆网上搜索。

软件工程教学大纲版.docx

软件工程教学大纲版

《软件工程》课程教学大纲

一、课程名称

课程编号

课程名称

学时

学分

开课专业方向

课程类别

198121

软件工程

SoftwareEngineering

54

3

计算机科学与技术(师范汉、蒙)

限选

计算机科学与技术(非师范)

限选

二、课程性质

(一)修读对象

计算机科学与技术(师范、非师范)相关专业的本科学生。

授课语言:

汉语。

(二)课程特点

软件工程是20世纪60年代末期为解决“软件危机”而产生的,并迅速发展起来的新兴学科,现在已经与计算机科学、计算机工程、信息系统、信息技术并列成为计算学科下的独立学科。

《软件工程》课程从传统软件工程入手,介绍软件工程的概念、技术和方法,包括软件的开发模型、软件项目管理、软件质量度量、可行性分析、需求分析、软件设计、编码、测试、维护;面向数据流的分析与设计方法、面向对象的分析与设计方法;对软件重用、快速原型技术作简要的介绍。

本课程属于计算机科学与技术专业课程体系的核心课程。

(三)与其它课程关系

1先修课程

计算机程序设计基础、数据结构、数据库原理

2后续课程

软件工程课程设计、专业实习、毕业设计等

三、课程教学目的

(一)课程目标

1知识目标

通过本课程的学习,使学生了解软件项目开发和维护的一般过程,掌握软件开发的传统方法和最新方法,使学生对软件系统生产工程化的具体思想、基本要求和先进方法均有较全面的了解。

为更深入地学习和今后从事软件工程实践打下良好的基础。

2能力目标

通过整个教学过程,从工程实施的角度培养学生对已学知识的综合运用能力,养成良好的软件开发风格,具备从事软件系统开发、测试与项目管理的基本能力。

3情感目标

培养学生的系统意识,较好的团队合作精神等工程素养。

(二)教学模块目标

教学模块(章)

教学目标

一软件工程概述

1、了解软件危机产生的原因;

2、掌握软件工程的基本概念;

3、了解软件生命周期的概念,掌握生命周期各阶段的划分及各阶段的任务;

4、了解软件工程方法学的概念及其演化。

二软件过程

1、了解软件过程概念;

2、了解各软件过程模型的内容以及特点;

3、了解支持软件过程的CASE技术。

三项目管理

1、了解软件规模和工作量估算的技术和方法;

2、了解人员组织原则和组织方式,能以小组为单位对简单项目进行人员组织;

3、了解和熟悉软件质量的概念,了解软件质量的保证措施;

4、了解软件能力成熟度模型的基本内容。

四需求分析基础

1、理解需求分析的重要性、需求含义的多样性;

2、了解需求工程过程的主要活动及其之间的关系;

3、了解需求分析的任务,熟悉需求获取的方法;

4、了解需求规格说明书的体系结构。

五结构化分析方法

1、掌握结构化分析建模的方法;

2、理解面向数据流分析中数据流图(DFD)、数据字典(DD)、实体关系图(ERD)、状态转换图(STD)等建模元素,能进行简单系统的需求分析。

六面向对象分析方法

1、了解面向对象分析的基本过程;

2、了解和熟悉面向对象的需求陈述基本方法;

3、熟悉和掌握三种模型建立的过程及方法,用例图、类图、动态图的绘制。

七软件设计基础

1、理解软件设计的目标、任务和过程;理解总体设计和详细设计的划分意义;

2、理解软件设计要遵循的原则。

八结构化设计方法

1、掌握模块独立原则、面向数据流的设计方法;

2、理解表示总体设计结果的软件结构工具、表达详细设计结果的过程设计工具;

3、理解软件编码实现及对软件质量的影响。

九面向对象设计方法

1、了解面向对象设计的准则和启发规则;

2、了解软件重用的概念及实现重用的途径;

3、了解使用划分子系统的方式进行系统分解的方法,了解子系统间交互的方式,了解系统的组织方式;

4、了解和熟悉问题域子系统、人机交互子系统、任务管理子系统、数据管理子系统设计的内容;

5、熟悉设计类服务的方法

6、了解实现关联的方法,理解设计关联的意义

7、了解优化设计的几个途径。

十软件测试基础

1、了解软件测试的基本概念,特别是测试的方法和步骤;

2、了解单元测试、集成测试、验收测试的内容和过程;

3、了解软件调试的经验;

4、了解软件测试文档。

十一结构化软件测试技术

熟悉和掌握黑盒测试和白盒测试技术,能进行简单目标系统的测试

十二面向对象测试技术

了解面向对象测试策略、测试用例设计。

十三软件维护与进化

1、了解和熟悉软件维护的定义及特点;

2、了解和熟悉软件维护的过程;

3、了解软件的可维护性的决定因素;

4、了解预防性维护及再工程的基本内容。

四、课程教学原则与教学方法

本课程概念较多,因此教学形式以讲授方式为主。

重点:

系统分析、系统设计、系统实现、系统维护

难点:

需求分析、软件测试

在教学过程中,可采用多媒体教学、案例教学、课堂讲授、课堂讨论、写设计论文等多种形式结合进行教学。

为加强和落实动手能力的培养,可采用协作式、激励式教学,组织学生成立项目小组,鼓励发扬协作精神,鼓励以学生团队参加校内外组织的各项活动,小组成员相互交流,碰撞思维火花,有助于学生巩固知识,培养学生的自主创新能力和工程素养。

五、课程总学时

课程教学总学时数为54学时,学分为3学分。

六、课程教学内容要点及建议学时分配

教学模块(章)

知识单元(节)

主要知识点(目)

建议学时

一软件工程概述

软件与软件危机

软件的定义、特征、分类、演化过程

4

软件危机的表现、产生原因、解决途径

软件工程

软件工程定义

软件工程的目标、研究内容、基本原理

二软件过程

软件过程

软件过程定义、基本活动

4

软件生命周期

软件生命周期的定义、阶段、基本任务

软件过程模型

瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型、基于组件的开发模型

计算机辅助软件工程(CASE)

CASE定义、分类

软件工程方法学

结构化方法学出现的历史背景、特点

面向对象方法学优点及方法演化的必然性

三项目管理

概述

项目管理的目标、对象、活动、原则

4

人员组织与管理

人员组织原则及形式、团队建设

软件项目规划

软件规模估算、软件成本估算

软件项目计划

制定步骤、原则、格式说明

进度管理

进度计划、活动网络

风险管理

风险识别、分析、应对计划、监控

软件配置管理

软件配置基本概念、管理活动、管理工具

四需求分析基础

软件需求概述

软件需求的定义、层次、种类及关系

2

需求工程过程

需求获取、需求分析、需求规格说明、需求验证、需求管理

需求获取技术

面谈、问卷调查法、会议讨论法、界面原型法、可运行原型系统法

五结构化分析方法

概述

结构化分析建模的指导思想及原则、模型的种类、面向数据流的分析方法

6

数据流图(DFD)

元素的种类、图形符号及含义、分层、绘图步骤

数据字典(DD)

条目的种类、符号及含义、加工条目的描述方式:

结构化语言、判定表、判定树

实体关系图(ERD)

元素的种类、符号及含义

状态转换图(STD)

元素的种类、符号及含义

实例分析

教材购销系统的数据流图及数据字典的建立

六面向对象分析方法

概述

面向对象分析需求建模的5个基本原则、目标及任务、流行的方法、3种模型及5个层次、分析过程基本流程(步骤)

6

领域分析

复用类库及领域分析、分析过程及模型描述元素:

类、属性、关系、行为操作、通信事件、变迁事件及时序

面向对象分析过程

用例分析及创建方法、用例分析实例、类-责任-协作者建模(CRC)、定义结构和层次、定义主题和子系统

对象关系模型

对象关系分析及标识、关系的导出步骤

对象行为模型

基于用例标识事件、状态的表示

UML及用例图

UML的历史、目标、概念域、视图、用例视图

七软件设计基础

概述

软件设计的目标、任务、过程及层次划分、规格说明

2

软件设计原则

模块及模块化、抽象与逐步求精、信息隐藏与局部化、模块独立:

耦合性和内聚性

八结构化设计方法

结构化总体设计

信息流分类及软件模块结构图映射步骤、变换分析、事务分析、设计优化及启发式规则

6

结构化详细设计

设计任务、标准、模块算法流程描述工具:

程序流程图、盒图、PAD图

结构化编码实现

选择实现语言的要素、编码风格要素、结构化设计实例

九面向对象设计方法

面向对象的系统设计

设计金字塔、模块化设计标准及原则、设计过程的步骤、子系统构件的定义

6

系统设计过程模型

Rambaugh提出的设计步骤及相关设计活动

对象设计过程

对象类的详细设计及描述、类属性的数据结构和操作的算法详细设计

设计模式

设计模式描述、设计模式使用机制

UML模型

模型的概念、用途、层次、内容、含义

UML视图

静态视图、交互视图、状态视图、活动视图、物理视图、模型管理视图、扩展组件、视图的关系

系统设计实例

架构设计、类设计

十软件测试基础

概述

软件检验与有效性验证、软件验证方法

2

软件测试

测试目标、过程及步骤、信息流

软件测试说明书

引言、项目背景、质量目标、资源需求、测试策略、测试计划

十一结构化软件测试技术

白盒测试

定义、逻辑覆盖、基本路径覆盖

4

黑盒测试

定义、等价类法、边界值分析法

十二面向对象测试技术

测试的视角

视角的扩大、应避免的问题

4

测试OOA和OOD模型

模型的正确性、模型的一致性

面向对象测试策略

面向对象语境中单元测试、集成测试、有效性测试

测试用例设计

含义、传统测试用例的可用性、基于故障的测试、编程对测试的影响、测试用例与类层次、基于场景的测试设计、表层结构和深层结构

测试过程

测试内容:

对象、结构、主题、属性和实例关联、服务和消息关联

类的测试方法

随机测试、划分测试

类间测试用例设计

多各类的测试、从行为模型导出的测试

面向对象系统测试

系统测试的目的、测试内容

十三软件维护与进化

遗留系统

存在的问题、系统评估

2

软件变更

软件维护、软件体系结构的转换、软件再工程

习题课

2

合计

54

七、课程的实践教学环节要求

(一)作业要求

每章布置一次书面作业,作业内容视各章情况布置,每次2-4题,紧扣各章要求掌握的内容。

另外,会适当补充课外习题。

(二)实践教学要求

教师在授课之初将学生分成小组(3-5人),每个学生小组选择一个实践项目,按讲课进度逐步完成相关实验大作业,以小组为单位提交,小组成员的成绩相同。

具体要求见《软件工程实验》课程教学大纲。

八、教材和主要教学参考资源

(一)主要教材

孙家广,刘强.软件工程--理论与实践,高等教育出版社,2008.

(二)主要教学参考书

[1]王华,周丽娟.软件工程学习指导与习题解析,清华大学出版社,2012.

[2]张海藩.软件工程导论,第四版,清华大学出版社,2003.

[3]窦万峰.软件工程方法与实践,机械工业出版社,2010.

(三)推荐的相关学习网站

[1](UML软件工程组织)

[2](希赛软件工程专家网)

九、课程考试与评估

本课程采取闭卷考核评价方式,最终成绩按百分制计算,其中平时成绩占40%,期末考试成绩占60%。

课程负责人:

林民课程群负责人:

朝力萌编写日期:

2012.12.12

《软件工程实验》课程教学大纲

一、课程名称

课程编号

课程名称

学时

学分

开课专业方向

课程类别

198604

ExperimentforSoftwareEngineering

9

0.5

计算机科学与技术(师范汉、蒙)

限选

计算机科学与技术(非师范)

限选

二、课程性质

(一)修读对象

计算机科学与技术(师范、非师范)相关专业的本科学生。

授课语言:

汉语。

(二)课程特点

本课程配合《软件工程》课程理论教学,重点介绍软件生存周期各阶段所用到的主流CASE工具,把软件工程的概念和理论知识融入到实验内容中,使学生更加深入地理解软件开发中各阶段的技术、方法和工具的基本使用方法。

实验内容包括软件文档规范与标准、软件分析与建模、软件测试和软件项目管理4个部分,每个实验包括背景知识、实验工具的特点、功能、安装和基本概念与使用方法等部分。

(三)与其它课程关系

1先修课程

计算机程序设计基础、数据结构、数据库原理

2后续课程

软件工程课程设计、专业实习、毕业设计等

三、课程教学目的

(一)课程目标

1知识目标

通过本课程的学习,使学生了解软件生存周期各阶段所用到的主流CASE工具的使用知识,加深理解软件开发中各阶段的技术、方法和工具的基本使用方法。

初步掌握软件项目系统分析、编写文档、源码设计与控制、使用工具等基本技能。

2能力目标

通过整个教学过程,从工程实施的角度培养学生对已学知识的综合运用能力,养成良好的软件开发风格,具备从事软件系统开发、测试与项目管理的基本能力。

(二)教学模块目标

教学模块

教学目标

实验1软件项目管理工具MicrosoftProject的基本应用

使用MicrosoftProject2003制定一个具体软件项目进度计划,理解软件项目管理的目的、用途和意义。

实验2软件开发绘图工具MicrosoftVisio的基本应用

使用MicrosoftVisio绘制提交一个与某软件项目有关的程序流程图、数据流图、状态转换图、实体——关系图、网络结构图

实验3数据建模工具PowerDesigner的基本应用

使用PowerDesigner绘制提交一个与某软件项目有关的概念数据模型视图、业务处理模型视图、物理数据模型视图

实验4面向对象建模工具RationalRose的基本应用

使用RationalRose绘制提交一个与某软件项目有关的业务分析模型及设计模型:

用例图、类图、对象图、时序图、协作图、活动图、组件图、配置图,掌握RationalRose的基本操作与建模过程

实验5功能测试工具WinRunner的基本应用

结合应用案例,掌握WinRunner的基本测试流程;了解WinRunner基本测试要点;掌握对象识别和脚本录制;掌握GUIMap对象查找及GUIMap文件的保存及脚本执行及查看结果方法

实验6负载测试工具LoadRunner的基本应用

了解LoadRunner的工作原理和组织架构;掌握脚本录制与回放以及脚本修改方法

实验7自动化测试工具PurifyPlus的基本应用

了解PurifyPlus的应用场景及各测试组件用途、掌握PureCoverage基本测试流程、掌握Purify基本测试流程、掌握Quantify基本测试流程。

实验8软件配置管理工具VisualSourceSafe的基本应用

结合案例掌握VSS工具的基本使用方法;理解软件配置管理的目的、用途和意义

四、课程教学原则与教学方法

以上机实验操作为主,进行验证性实验和设计性实验。

以封闭实验和开放性实验形式展开训练,以相互协作、相互讨论形式组织学习实践。

五、课程总学时

课程教学总学时数为9学时,总学分数为0.5学分。

六、课程教学内容要点及建议学时分配

序号

实验项目名称

建议学时

必开

选开

每套仪器人数

实验类型

1

实验1软件开发绘图工具MicrosoftVisio的基本应用

1

必开

1

综合

2

实验2软件项目管理工具MicrosoftProject的基本应用

1

必开

1

综合

3

实验3数据建模工具PowerDesigner的基本应用

1

必开

1

综合

4

实验4面向对象建模工具RationalRose的基本应用

1

必开

1

综合

5

实验5功能测试工具WinRunner的基本应用

1

必开

1

综合

6

实验6负载测试工具LoadRunner的基本应用

1

必开

1

综合

7

实验7自动化测试工具PurifyPlus的基本应用

1

必开

1

综合

8

实验8软件配置管理工具VisualSourceSafe的基本应用

1

必开

1

综合

9

实验总结

1

合计

9

七、课程的理论教学环节要求

具体要求见《软件工程》课程教学大纲。

八、教材和主要教学参考资源

(一)主要教材

窦万峰主编,《软件工程实验教程》机械工业出版社,2009

(二)主要教学参考书

[1]张虹.软件工程与软件开发工具,清华大学出版社,2004.

[2]孙家广,刘强.软件工程--理论与实践,高等教育出版社,2008.

[3]张海藩.软件工程导论,第四版,清华大学出版社,2003.

[4]窦万峰.软件工程方法与实践,机械工业出版社,2010.

九、课程考试与评估

每次实验环节都必须提交相应的实验报告,以实验报告的质量作为考核的标准。

最终成绩按百分制计算,实验报告成绩占80%,平时成绩占20%组成。

 

课程负责人:

林民课程群负责人:

朝力萌编写日期:

2012.12.17

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1