课程大纲
|
第一章 软件工程概论
1.1 软件工程发展历史
1.2 软件的特点
1.3 软件开发技术面临的问题
1.4 中国软件产业:挑战与机遇
1.5 软件工程
1.6 软件生存周期
1.7 软件过程模型
小结:软件工程在计算机软件的开发中集成了过程、方法和工具。本章讲解了软件危机的形成、软件的生命周期及中国软件业的挑战与机遇。并给出了若干不同的软件工程过程模型,每一个都有优点和弱点,但都有一段共同的一般阶段:过程的原则、概念和方法。
第二章软件项目管理的内容和学时 (6学时)
2.1 项目管理的概念
2.2 过程和项目领域的度量
2.3 软件项目计划
2.4 风 险 管 理
2.5 项目进度安排及跟踪
小结:软件项目管理是软件工程的保护性活动贯穿于整个软件的定义、开发和维护之中。三个P(人员、问题和过程)有本质的影响。组建高效的小组。采用一个合适的软件工程范型。在项目管理中正确采用合理的项目度量、估算;跟踪风险;制定开发计划,跟踪进度并协调开发过程中存在的问题。保证项目按需求按时完成。
第三章 系统分析 (2学时)
3.1问题定义
3.2可行性研究的任务
3.3 可行性研究的步骤
2.4可行性研究的目的
2.5可行性研究报告编写提示
小结:高技术系统包括一系列的构件:软件、硬件、人员、数据库、文档和过程。系统分析从“整体视图”开始,分析业务域,确定经济、技术、法律、操作和管理的可行性。评估项目的开发价值,确定项目的范围,写出可行性研究报告。
第四章 软件需求分析(8学时)
4.1 需求分析概论
4.2 需求分析的任务
4.3 需求获取
4.4 需求分析的步骤
4.5 分析建摸
4.6 数据流图
4.7 数据字典
4.8 数据流条目
4.9 结构化语言
4.10 加工条目
4.11 需求验证
4.12 需求规格说明书(SRS)
小结:需求分析是软件工程过程的第一个技术步骤,关注于问题的信息、功能和行为域。必需理解需求,从而创建模型、划分问题,用结构化分析方法按分析的结果去描述开发的细节,写出文档供下级过程使用。
第五章软件设计
5.1 软件设计概论
5.2 软件设计的目标和任务
5.3 软件设计基础
5.4 模块的独立性
5.5 结构设计中的图形工具
5.6 概要设计的方法
5.7 详细设计的描述方法
小结:设计是软件工程的技术核心,在设计时,对数据结构、程序体系结构、接口和过程细节进行逐步求精、复审和文档描述。设计的原则是指导工程师开展工作,使程序和数据模块化、抽象化,提供表示连续层次功能细节的机制,用数据流映射程序结构:变换映射和事务映射。立足于使程序员易于翻译成代码。
第六章 原型开发 (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 程序复杂度的度量
6.14 代码审查
小结:本章第一部分介绍原型化实现技术随建立原型的目的的不同分为: (1)抛弃式原型开发; (2)演化式原型开发; (3)递增式原型开发,原型模型需工具支持,否则开发工作量大,原型模型只能缩短用户与软件需求定义间的距离,并不能消灭这个距离。并且实时系统不适应原型化开发。第二部分编码选择好语言,采用结构化编码方法。掌握程序设计风格的规则和程序编码结构要求
第七章人-机界面设计内容和学时(6学时)
7.1 概论
7.2 用户友好性设计
7.3 用户分析
7.4 界面的设计原则
7.5 人-机界面的交互方式
7.6 界面的开发
7.7 数据输入界面设计
7.8 数据显示界面设计
小结:按照以为用户中心主义的观点,软件设计的核心内容,不是软件本身的功能、性能,也就是说,不是技术上的东西。软件设计的核心应该是用户,应该是这个软件能够为用户提供什么样的功能和怎样提供这些功能。软件是否成功,不是由技术专家使用专业的标准来评判,而是由用户来评判,由用户是否认可、是否喜欢来评判。掌握界面的设计原则:实现界面的可操作性、健壮性、易学习性、可扩展性
第八章软件测试内容和学时(8学时)
8.1 软件测试概述
8.2 基本概念
8.3 黑盒测试与白盒测试
8.4 白盒测试的测试用例设计
8.5 黑盒测试的测试用例设计
8.6 针对专门环境和应用的测试
8.7 软件测试的步骤
8.8 调试(纠错技术)
小结:软件测试用例设计的主要目标是导出有可能发现错误的测试集。测试方法有两类:黑盒测试与白盒测试,黑盒测试发现功能需求错误;白盒测试重于程序控制结构。合理设计测试用例尽可能多的发现错误。
第九章软件维护与软件再工程(4学时)
9.1 软件维护的概念
9.2 软件维护的特点
9.3 软件的维护任务
9.4 软件维护的实施
9.5 软件可维护性
9.6 提高可维护性的方法
9.7 预防性维护
9.8 软件再工程
小结:衡量软件质量的几个主要质量特性:可维护性、可使用性、可靠性。软件可维护性则是指纠正软件系统出现的错误和缺陷,以及为满足新的要求进行修改、扩充或压缩的容易程度。
软件再工程发生在两个不同的层次:业务和软件。有六个过程模型:代码重构、数据重构、正向工程、库存目录、分析文档重构、逆向工程
第十章面向对象开发方法内容和学时(8学时)
10.1 面向对象方法的产生与发展
10.2 面向对象基本概念
10.3 OO方法的开发过程
10.4 面向对象分析与模型化
10.5 面向对象分析应用过程
10.6 建立对象模型
10.7 面向对象设计(OOD)
10.8 面向对象实现与面向对象测试
小结:面向对象方法使软件工程师能够通过对对象、属性和操作的表示来对问题建模。OOA过程定义使用实例(场景)开始建立分析模型,它包含:对象模型: 描述静态结构, 定义做事情的实体;功能模型: 描述处理(数据变换), 指明系统应“做什么”;动态模型: 描述交互过程, 规定什么时候做。
OOD是将设计模型扩展到可执行域,使用OO程序设计语言将类、属性、操作、和消息转换为可被机器执行的形势。
|