数据图像处理 两份试题加知识点总结.pdf_第1页
数据图像处理 两份试题加知识点总结.pdf_第2页
数据图像处理 两份试题加知识点总结.pdf_第3页
数据图像处理 两份试题加知识点总结.pdf_第4页
数据图像处理 两份试题加知识点总结.pdf_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 瀑布模型把软件生命周期划分为八个阶段 问题的定义 可行性研究 软件需求分析 系统 总体设计 详细设计 编码 测试和运行 维护 八个阶段又可归纳为三个大的阶段 计划阶 段 开发阶段和 C A 详细计划 B 可行性分析 C 运行阶段 D 测试与排错 2 从结构化的瀑布模型看 在它的生命周期中的八个阶段中 下面的几个选项中哪个环节出错 对软件的影响最大 C A 详细设计阶段 B 概要设计阶段 C 需求分析阶段 D 测试和运行阶段 3 在结构化的瀑布模型中 哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标 A A 需求分析阶段 B 详细设计阶段 C 概要设计阶段 D 可行性研究阶段 4 软件工程的出现主要是由于 C A 程序设计方法学的影响 B 其它工程科学的影响 C 软件危机的出现 D 计算机的发展 5 软件工程方法学的目的是 使软件生产规范化和工程化 而软件工程方法得以实施的主要保 证是 C A 硬件环境 B 软件开发的环境 C 软件开发工具和软件开发的环境 D 开发人员的素质 6 软件开发常使用的两种基本方法是结构化和原型化方法 在实际的应用中 它们之间的关系 表现为 B A 相互排斥 B 相互补充 C 独立使用 D 交替使用 7 UML 是软件开发中的一个重要工具 它主要应用于哪种软件开发方法 C A 基于瀑布模型的结构化方法 B 基于需求动态定义的原型化方法 C 基于对象的面向对象的方法 D 基于数据的数据流开发方法 8 在下面的软件开发方法中 哪一个对软件设计和开发人员的开发要求最高 B A 结构化方法 B 原型化方法 C 面向对象的方法 D 控制流方法 9 结构化分析方法是一种预先严格定义需求的方法 它在实施时强调的是分析对象的 B A 控制流 B 数据流 C 程序流 D 指令流 10 软件开发的结构化生命周期方法将软件生命周期划分成 A A 计划阶段 开发阶段 运行阶段 B 计划阶段 编程阶段 测试阶段 C 总体设计 详细设计 编程调试 D 需求分析 功能定义 系统设计 11 软件开发中常采用的结构化生命周期方法 由于其特征而一般称其为 A A 瀑布模型 B 对象模型 C 螺旋模型 D 层次模型 12 软件开发的瀑布模型 一般都将开发过程划分为 分析 设计 编码和测试等阶段 一般 认为可能占用人员最多的阶段是 C A 分析阶段 B 设计阶段 C 编码阶段 D 测试阶段 21 系统流程图是描述物理模型的传统工具 用图形符号表示系统中各个元素表达了系统中各 种元素之间的 信息流动 情况 解析 系统流程图是描述物理系统的传统工具 用图形符号表示系统中的各个元素 如人工处理 数据处理 数据库 文件 设备等 表达了元素之间的信息流动的情况 22 成本效益分析的目的是从 经济 角度评价开发一个项目是否可行 解析 成本效益分析首先是估算将要开发的系统的开发成本 然后与可能取 得的效益进行比较和权衡 其目的是从经济角度评价开发一个新的软件项目是否可行 23 自顶向下结合的渐增式测试法 在组合模块时有两种组合策略 深度优先策略和 宽度优 先策略 解析 渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法 其中自顶 向下集成是构造程序结构的一种增量式方式 不需要编写驱动模块 只需要编写桩模块 它从 主控模块开始 按照软件的控制层次结构 以深度优先或宽度优先的策略 逐步把各个模块集 成在一起 24 独立路径是指包括一组以前没有处理的语句或条件的一条路径 从程序图来看 一条 独立路径是至少包含有一条 在其他独立路径中未有过 的边的路径 解析 在基本路径测试中 以详细设计或源程序为基础 导出控制流程图的拓扑结构 程序图 在计算了程序图的环路复杂性之后 确定只包含独立路径的基本路径图 其中独 立路径是包括一组以前没有处理的语句或条件的一条路径 从程序图来看 一条独立路径是至 少包含有一条在其他独立路径中未有过的边的路径 25 汇编语言是面向 机器 的 可以完成高级语言无法完成的特殊功能 如与外部设 备之间的一些接口工作 解析 汇编语言属于低级语言 是一种面向机器的语言 它与高级语言相比有许多优 越性 如操作灵活 可以直接作用到硬件的最下层 完成与外部设备的接口工作等 是能够利 用计算机硬件特性直接控制硬件设备的唯一语言 26 在 JSP 方法中解决结构冲突的具体办法是 中间数据结构或中间文件 解析 JSP 方法是面向数据结构的设计方法 它定义了一组以数据结构为指导的映射 过程 根据输入 输出的数据结构 按一定的规则映射成软件的过程描述 在 JSP 方法中解决 结构冲突的具体办法是引入中间数据结构或中间文件 将冲突部分分隔开来 建立多个程序结 构 再利用中间文件把它们联系起来 构成一个系统的整体 27 详细设计的任务是确定每个模块的内部特性 即模块的算法 使用的数据 解析 详细设计的基本任务是为每个模块进行详细的算法设计 为模块内的数据结构 进行设计 确定每个模块的内部特性 包括模块的算法和使用的数据 对数据库进行物理设计 等 28 所有软件维护申请报告要按规定方式提出 该报告也称 软件问题 报告 解析 在软件维护的流程中 第一步就是制定维护申请报告 也称为软件问题报告 它是维护阶段的一种文档 由申请维护的用户填写 29 有两类维护技术 在开发阶段使用来减少错误 提高软件可维护性的面向维护的技术 在维护阶段用来提高维护的效率和质量的 维护支援 技术 解析 面向维护的技术涉及软件开发的所有阶段 能够减少软件错误 提高软件的可 维护性 而维护支援技术则包含信息收集 错误原因分析 维护方案评价等项 是在软件维护 阶段用来提高维护效率和质量的技术 30 科学工程计算需要大量的标准库函数 以便处理复杂的数值计算 可供选择的语言有 FORTRAN 语言 PASCAL 语言 C 语言和 PL 1 语言 解析 计算机语言根据不同行业的需求 使用的侧重点也不尽相同 在办公管理方面 一些数据库语言如 FOXPRO ORICAL 有很多的应用 在工程行业 计算机语言的科学计算能 力就显得格外重要 如 MATLAB PL 1 FORTRAN 语言都是工程计算中常用的语言 三 判断 1 软件的开发与运行经常受到硬件的限制和制约 2 模块内的高内聚往往意味着模块间的松耦合 3 Jackson 图只能表达程序结构 不能表达数据结构 X 上述数据流图表示数据 A 和 B 同时输入变换成 C X 5 软件的质量好坏主要由验收人员负责 其他开发人员不必关心 X 6 判定覆盖不一定包含条件覆盖 条件覆盖也不一定包含判定覆盖 7 应该尽量使用机器语言编写代码 提高程序运行效率 而减少高级语言的使用 X 8 UML 只能应用于软件系统模型的建立 X 9 容错就是每个程序采用两种不同的算法编写 X 10 软件测试的目的是为了无一遗漏的找出所有的错误 X 四四 名词解释题 名词解释题 本大题共本大题共 5 小题 每小小题 每小题题 3 分 共分 共 15 分分 31 软件开发环境 32 错误推测法 33 黑盒测试法 34 软件质量保证 35 瀑布模型 31 经济可行性 解 进行开发成本的估算以及了解取得效益的评估 确定要开发的项目是否值得投资 开发 解析 对于一个系统所必须要衡量的是经济上是否合算 经济可行性的范围很广 包 括效益分析 潜在市场前景等 32 社会可行性 解 要开发的项目是否存在任何侵犯 妨碍等责任问题 要开发项目目的运行方式在 用户组织内是否行得通 现有管理制度 人员素质 操作方式是否可行 解析 社会可行性包括合同 责任 侵权等技术人员不甚了解的诸多问题 33 投资回收期 解 投资回收期就是使累计的经济效益等于最初的投资费用所需的时间 解析 通常我们用投资回收期来衡量一个开发项目的价值 投资回收期越短 就越快 获得利润 34 对应关系 解 即有直接因果关系在程序中可以同时处理 解析 对应关系是指数据单元在数据内容上 数量上和顺序上有直接的因果关系 对 于重复的数据单元 重复的次序和次数都相同才有对应关系 35 结构冲突 解 输入数据与输出数据结构找不到对应关系的情况 称为结构冲突 解析 使用 JSP 方法时会遇到此类结构冲突问题 对此 Jackson 提出了引入中间数据 结构或中间文件的办法 将冲突部分分隔开来 建立多个程序结构 再利用中间文件把它们联 系起来 构成一个系统的整体 五 图 a 中 模块 G 为判定 判断涉及到模块 B F G 请指出设计中的错误 再根据 改进模 块图的基本原则 画出 1 2 个改进方案 不改变模块 G 的判断关系 并说明是按照 哪条基本 原则进行改进的 解 图 b 为一个改进方案 将模块 G 的位置提高 使其作用范围为控制范围的子集 减 少模块 之间的联系 40 请使用 PAD 图和 PDL 语言描述在数组 A 1 A 10 中找最大数的算法 解 PDL 语言 N 1 WHILE N 10 DO IF A N SC 软件结构图 模块的过程性描述 PDL 等 Jackson 方法 面向数据结构 数据结构 程序结构 程序的过程性描述 伪代码等 程序复杂程度的定量度量 1 1 程序图 流图 程序图 流图 用任何方法表示的详细设计结果都可以变换成程序图 流程图中的各种处理框均简化成一个结点 2 2 环域复杂度环域复杂度 程序的结构复杂度可用强连通的有向图中线性无关环的个数来度量 V V GG 判定结点数判定结点数 1 1 Unit6 编码 也称实现 任务 把模块的过程性描述翻译为用该语言书写的源程序把模块的过程性描述翻译为用该语言书写的源程序 或源代码 编码的风格 1 程序要清晰直观 不要过于巧妙 2 用一定的原则指导控制结构的使用 避免使用容易引起混淆的结构和语句 3 有规律地使用 GOTO 语句 不得不把效率的考虑放在首位的时候 而结构化程序又不能满足时间要求时 就可用 GOTO 语句来减 少重复的代码段 4 实现源程序的文档化 软件 程序 文档 Unit7 软件测试 定义 程序测试是为了发现错误发现错误而执行程序执行程序的过程 纠错 调试 纠错 调试 是为了确定错误的性质 并且加以纠正 软件测试包括机器测试机器测试 动态测试 黑盒测试增加新的应用范围 为 了将来的维护工作 维护分为以下几类 改正性维护 适应性维护 完善性维护 预防性维护 未涵盖进来的内容 需求分析目的 确定目标系统必须具备哪些功能 总体设计的主要任务 一 制定几种可能的实现方案 二 设计程序的体系结构 详细设计 模块设计 任务 设计出程序的详细规格说明 集成测试集成测试和验收测试验收测试 集成测试 组装测试 根据设计的软件结构 验收测试 按照规格说明书的规定 由用户参与下对目标系统进行验收的测试 通过对软件测试结果对软件测试结果的分析分析可以预测软件的可靠性可靠性 传统软件工程方法学的软件过程 可以用瀑布模型来描述 瀑布模型的特点 阶段间具有顺序性和依赖性 推迟实现的观点 清楚地区分逻辑设计与物理设计 尽可能推迟程序的物理实现 瀑布模型带反馈环 发现前面阶段的错误时 沿反馈线回头修改 快速原型模型不带反馈环 软件产品开发是线性顺序进行的 用途是获知用户的需求 增量模型增量模型 渐增模型 把软件产品分解成增量构件 原则 当把新构件集成到原有构件时 所形成的产 品必须是可测试的 它能在较短时间内向用户提交可完成部分工作的产品 要求开始实现各个构件前就全部完成的需求分析 规格说明 总体设计 螺旋模型的基本思想 使用原形及其他方法来尽量降低风险 可以看作每个阶段前都加了风险分析的快 速原型模型 螺旋模型是风险驱动型的 喷泉模型体现了面向对象开发过程迭代和无缝的特性 采用先行顺序的开发方法不可能开发出当今客户需要的大型复杂系统 构件 功能清晰的模块或子系统 模型 对事物的无歧义的书面描述 RUP 强调采用迭代和渐增的方式来开发软件 重复一系列组成软件生命周期的循环 面向对象方法 对象 类 继承 用消息通信 可行性分析中导出供选择的解法的最简单途径 是从技术角度出发考虑解决问题的不同方案 系统流程图是概括地描绘物理系统的工具 表达数据在系统各部件之间的流动情况 而非对数据加工处 理 数据流图 DFD 描绘信息流和数据从输入移动到输出的过程中所经受的变换 描绘数据在软件中流动 和被处理的逻辑过程 设计时只考虑系统必须完成的基本逻辑功能 画数据流图的基本目的 利用它作为交流信息的工具 作为分析和设计的工具 符号符号 数据源点 数据源点 终点 变换数据的处理 数据存储 数据流终点 变换数据的处理 数据存储 数据流 数据存储是处于静止状态的数据流 数据流是处于运动中的数据 数据字典是关于数据的信息的集合 即对数据流图中包含的所有元素的定义的集合 数据字典包含内容 数据流 数据流分量 数据存储 处理数据字典包含内容 数据流 数据流分量 数据存储 处理 数据字典用途 分析阶段的工具 逆向需求说明软件系统不应该做什么 分析系统常用图形工具 层次方框图 Warnier 图 需求分析时要把数据结构规范化 结构化分析方法结构化分析方法就是面向数据流自顶向下逐步求精进行需求分析的方法 把分析过程中分析过程中得到的有关数据元素记录在数据字典中 对算法的简明描述记录在 IPO 图中 快速建立软件原型是最好的需求分析技术 为快速构建和修改原型 使用三种工具和方法 第四代技术 可重用的软件构件 形式化规格说明和原型环境 概念性数据模型概念性数据模型是一种面向问题面向问题的数据模型 是按照用户的观点用户的观点对数据建立的模型 数据对象数据对象是软件必须理解的复合信息的抽象 用 范式范式 定义消除数据冗余的程度 第一范式冗余最大 状态是任何可被观察到的系统行为模式 一个状态代表系统的一种行为模式 状态图的活动表中经常使用 entry exit do 三种标准事件 IPO 图是输入 处理 输出图 处理框中列出处理的次序暗示了执行的顺序 验证软件需求的正确性 一致性 完整性 现实性 有效性 结构设计是总体设计阶段的任务 过程设计是详细设计阶段的任务 软件结构 即由模块组成的层次系统 可以用层次图或结构图描绘 在软件开发的早期阶段考虑测试问题 可以促使软件开发者设计时注意提高软件的可测试性 随着模块数增加 设计模块间接口所需工作量也增加 逐步求精是规格说明技术 设计和实现技术的基础 逐步求精定义 为了能集中精力解决主要问题而尽量推迟对问题细节的考虑 模块独立的概念是模块化 抽象 信息隐藏和局部化概念的直接结果 耦合强弱取决于模块接口的复杂程度 进入或访问一个模块的点 以及通过接口的数据 模块间的耦合程度耦合程度影响系统的可理解性 可测试性 可靠性和可维护性 内聚比耦合更重要 深度表示软件结构中控制的层数 能粗略标识系统大小 宽度是软件结构内同一层次上的模块总数的最大值 扇出过大意味着模块过分复杂 扇入越大则共享该模块的上级模块越多 好 好的软件结构通常顶层扇出高 中层扇出较少 底层模块有高扇入 面向数据流的设计方法把信息流映射成软件结构 信息流的类型 变换流 事务流 决定映射方法 经典程序设计 只允许使用顺序 IF THEN ELSE DO WHILE 扩展的结构程序设计 外加 DO CASE DO UNTIL 修改的结构程序设计 外加 BREAK 系统响应时间的两个属性 长度 易变性 用户界面设计是一个迭代过程 过程涉及工具 程序流程图 盒图 PAD 图 判定表 判定树 过程设计语言 PDL 程序复杂度定量度量 1 McCabe 方法 流图 也叫程序图 流图中的区域数 环形复杂度 判定节点数 1 程序的环形复杂度取决于程序控制流的复杂程度 即取决于程序结构的复杂程度 所以它是对测试难度 的定量度量 也能对软件可靠性预测 2 Halstead 方法 根据程序中运算符和操作数总数来度量 编码和测试统称为实现 程序的质量主要取决于软件设计的质量 测试测试的目的 发现软件中的错误 根本任务 保证软件质量 调试调试的目的 诊断并改正测试中发现的错误 效率主要指处理机时间和存储器容量两方面 用户角度 最严重的错误是导致程序不能满足用户需求的错误 一旦完成了需求模型就可以着手制定测试计划 建立了设计模型之后就可以立即开始设计详细的测试方建立了设计模型之后就可以立即开始设计详细的测试方 案 案 最佳测试效果 最佳测试效果 有最大可能性发现错误的测试 模块组装测试模块组装测试两种方法 非渐增式测试 分别测试每个模块 渐增式测试 把下一个要测试的同已经测 好的结合起来测试 渐增方式分 自顶向下集成和自底向上集成 为了保证加入模块没有引进新的错误 可能需要进行回归测试 自顶向下测试方法主要优点 不需要测试驱动程序 能够在测试阶段的早期发现接口错误 回归测试 重新执行已经做过的测试的某个子集 它用于保证由于调试或其他原因引起的变化 不会导 致非预期的软件行为或额外错误 确认测试的目的 验证软件的有效性 如果软件的功能和性能如同用户期望的 就是有效的 确认测试以用户为主 重要内容是复查软件配置 条件测试的目的不仅是检测程序条件中的错误 而且是检测程序中的其他错误 在一段程序中已经发现的错误数往往和尚未发现的错误数成正比 等价划分法和边界值分析法都只孤立地考虑各个输入数据的测试功效 而未考虑多个输入数据的组合效 应 软件可靠性 程序在给定的时间间隔内 按照规格说明书的规定成功运行的概率 错误 由开发人员造成的 bug 故障 由错误引起的软件的不正确行为 软件可用性 程序在给定的时间点 按照规格说明书上的规定 成功地运行的概率 预防性维护 为了改进未来的可维护性或可靠性 软件维护分为 非结构化维护和结构化维护 维护事件流的最后一个事件是复审 它再次检验软件配置的有效性 并保证事实上满足了维护要求表中 的要求 软件的可维护性 维护人员理解 改正 改动或改进这个软件的难易程度 提高软件维护性是支配软件 工程方法学所有步骤的关键目标 决定软件可维护性因素 可理解性 可测试性 可修改性 可移植性 可重用性 用户文档包括 功能描述 安装文档 使用手册 参考手册 操作员指南 面向对象方法用对象分解取代了传统方法的功能分解 对象彼此之间仅通过消息传递相互联系 面向对象 对象 类 继承 消息传递通信 如果仅用对象和消息 则称为基于对象的方法 而非面向对象的方法 如果进一步要求把所有对象都划分成类 则称为基于类的方法 仍非面向对象的方法 只有同时使用以上4点 才是面向对象的 OOD 不同于面向过程设计 其思想是 使用现实世界的概念抽象地思考问题而自然的解决问题 重要 的是应用模型 人在认识和解决复杂问题时最有力的思维工具是抽象 传统的软件开发方法以算法为核心 开发过程基于功能分析和分解 面向对象方法基于构造问题领域的对象模型 以对象为中心构造软件系统 对象 描述属性的数据 对数据施加的操作 对象是具有相同状态的一组操作的集合 从 OOD 看对象 对象是对问题域中某个东西的抽象 这种抽象反映了系统保存有关这个东西的能力与他交互的能力 从 信息模拟看对象 对象 以数据为中心的 主动的 实现了数据封装 本质上具有并行性 模块独立性好 一个对象类型也可以看成是一种抽象数据类型 类 对具有相同数据和相同操作的一组相似对象的定义 消息具有 接受消息的对象 消息选择符 消息名 变元 属性是对客观世界实体所具有的性质的抽象 继承分但继承和多重继承 多个父类 使用多重继承是要注意避免二义性 继承中 底层的性质将屏蔽 高层的同名性质 多态性通过虚函数实现 虚函数 实现动态联编 函数重载通过静态联编实现 OO 3models 描述 系统数据结构 对象模型 描述 系统控制结构 动态模型 描述 系统功能计算 功能模型 典型的软件系统使用数据结构 对象模型 执行操作 动态模型 并且完成数据值的变化 功能模型 聚集表示类与类之间的关系是整体与部分的关系 泛化即继承 动态模型表示瞬时的 行为化的系统的 控制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论