- 软件是程序、数据和文档的集合。
- 计算机软件是由程序、数据及相关文档构成的完整集合。程序是指软件开发人员依据用户需求开发的、用某种程序设计语言描述的、能够在计算机中执行的语句序列。数据是使程序能够正常操纵信息的数据结构。文档是指与程序开发、维护和使用有关的资料。
- 软件工程包含方法、工具和过程三个要素。
- 软件生命周期可分为定义阶段、开发阶段和维护阶段。定义阶段包括问题定义、可行性研究和需求分析;开发阶段包括概要设计、详细设计、实现和测试;维护阶段包括使用和维护。
- 软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。
- 需求分析阶段的工作可以分为4个方面:需求获取、需求分析、需求规格说明书编写和需求评审。
- DFD图(数据流程图)是需求分析阶段使用的工具。数据流图中的主要图形元素
- 在程序流程图中,构成程序流程图的最基本图符及含义:方框表示一个加工步骤,菱形表示一个逻辑条件;箭头表示控制流。
- 数据存储之间不应有数据流。
- 软件需求规格说明书要涵盖用户对系统的所有需求,包括功能要求、性能要求、接口要求、设计约束等。
- 需求分析的任务是发现需求、求精、建模和定义需求的过程,确定软件系统的功能。
软件系统总体结构图:
- 没有从属节点的模块是原子模块。
- 结构图是描述软件系统结构的图形工具。
- 扇入指调用一个给定模块的模块个数。
- 扇出指由一个模块直接调用的其他模块个数。
- 深度指控制的层数。
- 宽度指最大模块数的层的控制跨度(横向最大模块数)。
- DFD图〈(数据流程图)是需求分析阶段使用的工具。
- 软件详细设计阶段任务是模块实现的算法设计。
- 软件概要设计阶段任务是概要设计文档评审。
- 软件设计中模块划分应遵循的准则是高内聚低耦合。
- 与信息隐蔽概念直接有关的概念是模块的独立性。
- 结构图不支持详细设计。
- 软件设计阶段提交评审的文档有概要设计说明书、详细设计说明书和测试计划初稿。
- 软件设计通常分为概要设计和详细设计两个阶段。概要设计(又称结构设计)将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式;详细设计确立每个模块的实现算法和局部数据结构,用适当方法表示算法和数据结构的细节。
- 黑盒测试技术依据的是软件功能的描述。
- 软件测试是发现程序中的错误,程序调试是改正程序中的错误。
- 黑盒测试方法和技术有等价类划分法、边界值分析法、错误推测法和因果图等。白盒测试的主要技术有逻辑覆盖测试、基本路径测试,其中逻辑覆盖测试包括语句覆盖、路径覆盖、判定覆盖、条件覆盖、判断-条件覆盖。
- 软件测试的实施过程主要有4个步骤:单元测试、集成测试、确认测试(验收测试)和系统测试。
- 白盒测试根据程序的内部逻辑来设计测试用例。
- 黑盒测试根据程序的外部功能来设计测试用例。
- 确认测试的依据是需求规格说明书。
- 集成测试的依据是概要设计说明书。
- 单元测试的依据是编码(源程序)和详细设计说明书。
- 单元测试不涉及的内容是模块的执行路径。
- 软件集成测试不采用迭代式组装。