课程介绍
1.软件工程的研究领域和组成要素
2.为什么要学习软件工程
3.软件工程要学习的主要内容
4.软件工程的课程特点
第1部分 软件工程与软件过程
专题1 软件与软件工程
1.1 软件及其特点
1.2 软件危机及其主要的表现和原因
1.3 软件工程及其构成要素
1.4 软件工程的目标和原则
专题2 软件过程模型
2.1 软件过程及为什么要研究软件过程
2.2 软件过程的基本过程活动与特性
2.3 软件的生命周期及其基本任务与软件开发活动
2.4 主要的软件过程模型及其结构和特点
第2部分 软件工程方法学
专题3 传统方法学概述
3.1 传统方法
3.2 常用的方法
专题4 结构化分析与建模
4.1 建模
4.2 需求分析
4.3 结构化分析方法
专题5 结构化设计
5.1 软件设计和结构化设计方法
5.2 软件设计的基本原理
5.3 模块独立性
5.4 数据设计
5.5 数据设计的原则
5.6 文件设计与数据库设计
5.7 软件体系结构
5.8 为什么说软件体系结构很重要
5.9 如何将需求映射到体系结构
5.10 变换分析与变换设计
5.11 事务分析与事务设计
5.12 接口设计
5.13 用户界面设计有哪些主要的问题
5.14 用户界面设计过程有哪几项活动
5.15 界面设计的基本原则
5.16 过程设计
5.17 结构化程序设计
5.18 常用的过程设计描述工具
5.19 SD与SP方法的基本特点
专题6 结构化实现
6.1 编码
6.2 如何选择程序设计语言
6.3 应该具备什么样的编码风格
6.4 为什么要进行软件测试
6.5 软件测试
6.6 软件测试的基本原则
6.7 软件测试的基本流程
6.8 软件测试的方法与技术
6.9 白盒测试法
6.10 黑盒测试法
6.11 软件测试的策略
6.12 软件调试与排错
6.13 软件测试工具
专题7 面向对象方法概述
7.1 面向对象方法及其基本特点
7.2 面向对象方法的思维方式
7.3 面向对象的基本概念
7.4 软件重用
7.5 面向对象方法与传统方法的关键特征
专题8 面向对象分析
8.1 面向对象分析
8.2 面向对象建模
8.3 面向对象分析过程
8.4 统一建模语言
8.5 OOA的基本特点
专题9 面向对象设计
9.1 面向对象设计
9.2 系统设计
9.3 对象设计
9.4 统一OOD方法
9.5 OOD的主要特征
专题10 面向对象实现
10.1 面向对象实现
10.2 怎样选择OO语言和程序设计风格
10.3 面向对象测试
10.4 面向对象测试的基本特征
第3部分 软件项目管理
专题11 软件计划
11.1 软件计划及其主要内容
11.2 软件度量和估算及它们的项目与方法
11.3 软件项目的进度计划及原则和主要的方法、技术
专题12 项目组织
12.1 项目组织及其任务和原则
12.2 项目组织的主要结构模式、项目组的组织方式及如何做好开发人员的组织与分工
专题13 项目控制
13.1 软件项目控制及其主要的工作
13.2 风险管理的任务及如何进行风险的标识、估算和制定处理风险的策略..
13.3 软件质量保证及其主要的措施
13.4 软件配置管理及其主要的任务和过程
专题14 软件工程标准
14.1 软件工程标准、分类和层次,我国已经制定和发布了哪些软件工程标准
14.2 软件项目管理的国际标准及其基本内容
第4部分 软件工程新方法
专题15 软件重用技术
15.1 软件重用及其过程和意义
15.2 软部件库的构造
15.3重用软部件
15.4 为什么说面向对象方法特别适合于软件重用及有哪些主要的软件重用技术
专题16 软件体系结构
16.1 为什么要研究软件体系结构
16.2 软件体系结构问题
16.3 软件体系结构研究的发展与应用现状
专题17 软件设计模式
17.1 设计模式及其组成
17.2 设计模式的适用范围与作用
17.3 设计模式方法的分类及其主要的设计模式
17.4 设计模式目录和元模式及它们的作用
专题18 计算机辅助软件工程
18.1 计算机辅助软件工程
18.2 集成化CASE环境及CASE工具的集成形式
18.3 集成化CASE环境的总体结构
附录一 综合练习题
附录二 综合练习题参考答案
附录三 自测试卷
参考书目