软件工程复习知识要点
- 格式:doc
- 大小:30.22 KB
- 文档页数:7
1 软件与软件工程概念
1. 软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合,程序只是软件的组成部分之一;在软件开发中,编程只是软件开发过程的一个阶段。
2.在结构化程序设计时代,程序最小的单位是函数及子程序,程序与数据是分离的。程序的最小
单位是类。
3.软件的特性:形态特性、智能特性、开发特性、质量特性、生产特性、管理特性、环境特性、维护特性、废弃特性、应用特性。
4.软件的分类:系统软件;应用软件;支撑软件;可复用软件。
5.什么是软件工程?(课后题)
软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
6.可以用功能性、可靠性、易用性、效率、可维护性和可移植性六个特性衡量软件的质量。
功能性是指软件所实现的功能达到它的设计规范和满足用户需求的程度。
可移植性是指软件从某一环境转移到另一环境时所作努力得程度。
7.软件生存期由软件定义、软件开发和运行维护三个时期组成。
开发时期通常由概要设计、详细设计、编码和测试四个阶段组成。
开发过程中的典型文档包括:项目计划、软件测试计划、软件设计说明书、用户手册。
8.需求分析的基本任务?
(1)建立分析模型,了解系统的各种需求细节。
(2)基于分析结果,编写出软件需求规格说明或系统功能规格说明,确认测试计划和初步的系统用户手册,并提交管理机构进行分析评审。
2 软件工程方法与工具
1.面向对象方法的出发点和基本原则,是尽量模拟人类习惯的思维方式,使开发软件的方法和过程尽可能接近人类认识问题和解决问题的方法与过程,从而使描述问题的问题空间与其解空间在结构上尽可能一致。)课后题(形式化方法的主要特点是:
2.
(1) 软件需求规格说明被细化为用数学记号表达的详细的形式化规格说明;
(2) 设计、实现和单元测试等开发过程由一个变换开发过程代替。通过一系列变换将形式的规格说明细化成为程序。
3.面向对象 = 对象 + 类 + 继承 + 消息通信。
4.新类从现有的类中派生的过程,叫做类继承。
5.多态是指一个程序中同名的不同方法共存的情况。
6.UML的特点:统一标准、面向对象、可视化、独立于过程、容易掌握使用、与编程语言的关系。
3 软件需求获取与结构化分析方法
1.结构化分析方法的核心是数据字典,包括在目标系统中使用和生产的所有数据对象。
2.顶层数据流图或称环境图的作用是什么?(*)
顶层数据流图(或称环境图)仅包括一个数据处理过程,也就是要开发的目标系统。其作用如下:
(1) 确定系统在其环境中的位置,与系统有联系的外部实体(包括硬件、软件、组织机构及人)有哪些。
(2) 通过确定系统的输入和输出与外部实体的关系确定系统的边界,也就是要确定哪些功能或处理属于系统范围之内,哪些属于系统范围之外,需要由其他系统处理或人工处理。
3. 在对数据流图进行分解时需要注意哪些问题?(*)
在对数据流图进行分解时,需要注意以下两个问题:
(1)当对数据流图分层细化时必须保持信息连续性,也就是说,当把一个处理分解为一系列处理时,分解前和分解后的输入/输出数据流必须相同。
(2) 注意分层细化时对编号的处理方法。
4.在需求评审的实施过程中可能会遇到得风险包括:
(1)需求评审的参与者选取不当。
(2)评审规模过大。
(3)评审组规模过大。
(4)评审时间过长。
顶层数据流图或称环境图的作用是什么?3.2.
顶层数据流图(或称环境图)仅包括一个数据处理过程,也就是要开发的目标系统。其作用如下:
(1) 确定系统在其环境中的位置,与系统有联系的外部实体(包括硬件、软件、组织机构及人)有哪些。
(2) 通过确定系统的输入和输出与外部实体的关系确定系统的边界,也就是要确定哪些功能或处理属于系统范围之内,哪些属于系统范围之外,需要由其他系统处理或人工处理。
3.3 在对数据流图进行分解时需要注意哪些问题?
在对数据流图进行分解时,需要注意以下两个问题:
(1) 当对数据流图分层细化时必须保持信息连续性,也就是说,当把一个处理分解为一系列处理时,分解前和分解后的输入/输出数据流必须相同。
(2) 注意分层细化时对编号的处理方法。
4结构化设计方法
1.软件设计的五项原则:分而治之、模块独立性、提高抽象层次、复用性设计、灵活性设。
2.耦合是模块之间得相对独立性(互相连接的紧密程度)的度量,内聚是模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量。耦合程度最高的是内容耦合。
3.结构化设计方法得实施要点是:
(1)首先研究、分析和审查数据流图。
(2)然后根据数据流图决定问题的类型。
(3)由数据流图推导出系统的初始结构图。
(4)利用一些启发式原则来改进系统的初始结构图,直到得到符合要求的结构图为止。
(5)根据分析模型中的实体-关系图和数据字典进行数据设计。
(6)在上面设计的基础上,依据分析模型中的加工规格说明、状态转换图及控制规格说明进行过程设计。
(7)制定测试计划。
4.模块结构最普通的形式是树状结构和网状结构。
5.模块结构的层次数称为结构图的深度。
6.扇出表示一个模块直接调用(或控制)的下属模块的数目。
基于数据流方法的设计过程包括:7.
(1)复查并精化数据流图。
(2)确定数据流图中数据流的类型。
(3)导出初始的软件结构图。
(4)逐级分解。
(5)精化软件结构。
(6)导出接口描述和全局数据结构。
8.变换分析方法由:重画数据流图;区分有效(逻辑)输入、有效(逻辑)输出、和中心变换部分;进行