C、 模块低耦合 D、 模块独立性
21、 软件可维护性的特性中相互矛盾的是( C )。
A、 可修改性和可理解性 B、 可测试性和可理解性 C、 效率和可修改性 D、 可理解性和可读性 22、软件维护产生的副作用,是指( C )。 A、 开发时的错误 B、 隐含的错误 C、 因修改软件而造成的错误 D、 运行时误操作 23、 用黑盒技术设计测试用例的方法之一为( A )。 A、 边界值分析 B、 逻辑覆盖 C、 循环覆盖 D、 基本路径测试 24、软件测试方法中的( D )属于静态测试方法。
A、 黑盒法 B、 路径覆盖 C、 错误推测 D、 人工检测
25、 Ada语言是在Pascal语言基础上开发出来的,适用于( C )项目的应用领域。 A、 科学工程计算 B、 数据库应用 C、 实时处理 D、 人工智能 26、程序设计语言的工程特性之一为(A )。
A、 软件的可重用性 B、 数据结构的描述性 C、 抽象类型的描述性 D、 数据库的易操作性 27、软件详细设计的主要任务是确定每个模块的( A )。
A、 算法和使用的数据结构 B、 外部接口 C、 功能 D、 编程 28、PAD图为( B )提供了有力的工具。
A、 系统分析 B、 软件的自动化生成 C、 自动分析数据 D、 测试软件 29、软件结构图的形态特征能反映程序复用率的是(C )。
A、 深度 B、 宽度 C、 扇入 D、 扇出
30、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( B )。
A、 可用性 B、 可靠性 C、 正确性 D、 完整性 31、为了提高模块的独立性,模块内部最好是( C )。
A、 逻辑内聚 B、 时间内聚 C、 功能内聚 D、 通信内聚 32、 软件结构图中,模块框之间若有直线连接,表示它们之间存在( A )。 A、 调用关系 B、 组成关系 C、 链接关系 D、 顺序执行关系 33、 需求分析最终结果是产生( B )。
A、 项目开发计划 B、 需求规格说明书 C、 设计说明书 D、 可行性分析报告 34、可行性研究要进行一次( D )需求分析。 A、 深入的 B、 详尽的 C、 彻底的 D、 简化的、压缩了的 35、软件是一种( C )。
A、 程序 B、 数据 C、 逻辑产品 D、 物理产品 36、单元测试的测试对象是(B). A. 系统
B. 程序模块. C. 模块接口 D. 系统功能
37、软件总体设计是指软件总体结构设计和数据设计,该阶段的主要任务不包括(D).
A、设计软件的模块结构 B、定义接口并建立数据结构 C、生成概要设计规格说明和组装测试计划 D、模块设计 38、软件工程的原则有抽象,信息隐藏,模块化和其他那些内容 A、局部化 B、一致性 C、完全性 D、可验证性
39、常用的软件项目的估算方法主要有哪4种
A、自顶向下的估算方法 B、自底向上的估算方法 C、差别估算法 D、根据经验估算公式 40、软件可行性研究一般不考虑(D)
A、是否有足够的人员和相关的技术来支持系统开发 B、是否有足够的工具和相关的技术来支持系统开发 C、待开发软件是否有市场、经济上是否合算 D、待开发的软件是否会有质量问题
41、软件维护的副作用主要有以下哪几种(C) A、编码副作用、数据副作用、测试副作用 B、编码副作用、数据副作用、调试副作用 C、编码副作用、数据副作用、文档副作用 D、编码副作用、文档副作用、测试副作用
42、软件项目计划一般不包括以下哪项内容(D) A、培训计划B、人员安排
C、进度安排D、软件开发标准的选择和制定
43、以下哪种测试方法不属于白盒测试技术(B) A、基本路径测试 B、边界值分析测试 C、循环覆盖测试 D、逻辑覆盖测试 43、(D)是以提高软件质量为目的的技术活动。 A、技术创新 B、测试 C、技术创造 D、技术评审
44、使用白盒测试方法时,确定测试数据应根据 (A)和指定的覆盖标准。 A、程序的内部逻辑 B、程序的复杂结构 C、使用说明书 D、程序的功能
45、对在数据流图中每一个命令的图形元素均给以定义是(B) A、条目定义 B、数据字典 C、数据定义 D、数据说明
46、软件的可行性研究中不包括(D) A、法律可行性 B、技术可行性 C、经济可行性 D、政治可行性
47、根据用户在软件使用过程中提出的建设性意见而进行的维护活动称为(C)。 A、纠错性维护 B、适应性维护 C、改善性维护 D、预防性维护
48、人机界面的风格大致经过了(B)代的演变。
A、三 B、四 C、五 D、六 49、以下不属于白盒测试技术的是(D) A、逻辑覆盖 B、基本路径测试 C、循环覆盖测试 D、等价类划分
50、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。 A、纠错性维护 B、适应性维护
C、改善性维护 D、预防性维护
51、在设计测试用例时,应当包括(C)
A、合理的输入条件 B、不合理的输入条件 C、合理的和不合理的输入条件 D、部分条件 52、下列各项中不属于逻辑覆盖的是(D) A、语句覆盖 B、判定覆盖 C、判定——条件覆盖 D、全部覆盖
53、高级语言通常被分成三类,其中不包括(D) A、通用高级语言 B、面向对象的语言 C、专用语言 D、自然语言
54、耦合度也可以分为七级:其中最松散的耦合是(A)。 A、非直接耦合 B、数据耦合 C、特征耦合 D、控制耦合
55、判定表由四部分组成:左上部列出(B)。
A、条件组合与动作之间的对应关系 B、所有条件
C、所有可能的动作 D、可能的条件组合
填空题
? 软件=( 程序 )+( 文档 )。 ? 软件工程的基本原则包括( 分解 )、( 独立性 )、一致性和( 确定
性 )。
? 需求分析的基本任务是准确的回答( 系统必须做什么 )。 ? 数据字典的内容包括六项:数据流、( 数据项 )、数据结构、( 数据存
储 )、( 处理逻辑 )、外部实体。 ? 模块独立的概念是( 模块化 )、( 抽象 )、( 信息隐蔽 )
和局部化概念的直接结果。
? 设计出软件的初步结构以后,应该进一步分解或合并模块,力求降低( 耦
合 )提高( 内聚 )。
? 软件的维护一般经过( 分析和理解程序 )、( 修改程
序 )、( 重新验证程序 )三个步骤。
? 假设使用代码行技术进行费用估计,某软件中共3000行程序,每行平均成本25元,则
该软件的成本为( 75000元 )。
? 软件开发需要的资源包括( 软件工具 )、( 硬件工具 )和
( 人 ),其中( 人 )是最基本的资源。
? 程序的效率是指( 程序的执行速度 )和( 程序占用的
存储空间 )。 ? 软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清\做什么 ? 成本效益分析的目的是从( 经济 )角度评价开发一个项目是否可行。
? 汇编语言是面向(机器 ) 的,可以完成高级语言无法完成的特殊功能,如与外部设
备之间的一些接口工作。
? ? ? ? ? ? ? ? ? ? ? ? ?
?
? 可行性研究的目的是用最小的代价,在尽可能短的时间内,确定该项目是否能够开发。 ? 程序设计时代的生产方式是个体手工,程序系统时代的生产方式是作坊式小团体,软件
工程时代的生产方式是工程化。
? 喷泉模型是一种以需求分析为动力,以对象为驱动的模型。
? 需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功能需求。 ? 可行性研究需要从以下三个方面分析研究每种解决方法的可行性:技术可行性、经济可
行性、社会可行性。
? 可行性研究的目的不是去开发一个软件项目,而是研究这个软件项目是否值得开发,其
中的问题能否解决。
? 判定树较判定表直观易读,判定表进行逻辑验证较严格,能把所有的可能性全部都考虑
到。可将两种工具结合起来,先用判定表做底稿,在此基础上产生判定树。 ? 环境集成主要有数据集成、界面集成、控制集成、平台集成、过程集成。 ? 可行性研究实质上是进行一项简化、压缩了的需求分析、设计过程。
? 结构化方法有结构化分析、结构化设计、结构化程序设计构成,它是一种面向数据流的
开发方法。
? 投资回收期就是累计的经济效益等于最初的项目投资所需的时间。 ? 详细描述处理过程常用三种描述工具:图形、表格和语言。 ? 数据流图中,每个加工至少有一个输入流和一个输出流。 ? 结构化设计以数据流为基础映射成软件结构。
? 当数据流图中某个加工的一组动作存在着多个条件复杂组合的判断时,使用判定表或判
定树较好。
? 由于运用原型的目的和方式不同,在使用原型时也采取不同的策略,有抛弃策略和附加
策略。
? 有两类维护技术:在开发阶段是用来减少错误、提高软件可维护性面向维护的技术,在
维护阶段用来提高维护的效率和质量的维护支援技术。
详细设计的任务是确定每个模块的内部特性,即模块的算法、( 使用的数据 )。 软件工程由(方法),工具和过程三部分组成,称软件工程的三要素. 基于计算机系统的软件要素中的软部件由程序,数据和(文档)组成.
数据流图就是用来刻画数据流和转换的信息系统建模技术.它用简单的图形记号分别表示数据流,转换,(数据源)以及外部实体.
流程图也称为程序框图是最常用的一种表示法,它有顺序,分支和(循环)三个基本控制构件.
机器语言和汇编语言,也称为(低级语)言.
软件测试是执行程序发现并排除程序中潜伏的(错误)的过程. 动态测试有两种测试方法:黑盒测试和(白盒)测试.
软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误,改进性能等属性,适应环境变化等方面工作的(难易)程度 第三代语言也称为(高级)语言。 软件测试是软件投入运行(前),对软件需求分析、设计、实现的强有力的最终审查。 黑盒测试主要是测试软件是否满足(功能)需求。
(调试)的目的是确定错误的位置和引起错误的原因,并加以改正。因此,又称为排错或纠错。
软件工程由方法、工具和(过程)三部分组成,称软件工程的三要素。
? ? ? ? ? ? ? ? ?
? ? ? ? ? ?
? ?
? ? ? ? ? ? ? ? ? ? ? ? ?
软件开发中原型是软件的一个早期可运行的版本,它反映了最终系统的重要特性。 产品管理包括版本管理和配置管理。
任何程序都可由顺序、选择、重复三种基本控制结构构造。
测试用例应有输入数据和预期的输出数据两部分组成。这样便于对照检查。 需求分析阶段产生的最重要的文档之一是需求规格说明书。 项目开发计划是一个管理性文档。
软件配置管理,简称SCM,软件配置项简称SCI。
在算法描述工具中,PAD图可自动生成程序。由机器自动通过走树的办法生成相应的源代码,大大提高软件的生产率。
在CASE集成中,控制集成支持工作台或环境中一个工具对系统中其它工具的访问。过程集成是指CASE系统嵌入了关于过程活动、阶段、约束和支持这些活动所需的工具的知识。
解决一个复杂问题,往往采取的策略是分解。 效益分析有有形效益和无形效益两种。
两个模块都是用同一张表,这种耦合称为公共耦合。
一个模块把数值作为参数传送给另一个模块,这种耦合方式称为数据耦合。 一个模块内部各程序段都在同一张表上操作,这个模块的内聚性称为通信内聚。 在SA方法的需求描述工具中,数据流图描述系统的分解,即描述系统有哪几部分组成,各部分之间有什么联系等等。数据字典定义了数据流图中每一个图形元素;结构化语言、判定表或判定树则详细描述数据流图中不能被再分解的每一个加工。
IDEF图是一种功能模型,表示系统功能的图形称为活动图形,连方框上的箭头有四种类型,他们分别是输入、输出、控制、机制。 软件项目计划是可行性研究阶段的结果产品。但由于可行性研究是在高层次进行系统分析,未能考虑软件系统开发的细节情节,因此软件项目计划一般在需求分析阶段完成后才定稿的。
信息隐蔽指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其它模块来说,是不能访问的。
同一个类中的共享是指同一个类中的对象有着相同的数据结构和相同的行为特征。 通过抽象,可以确定组成软件的过程实体。通过信息隐蔽,可以定义和实施对模块的过程细节和局部数据结构的存取限制。
IPO图描述分层图中一个模块的输入、输出和处理内容。 软件是一种逻辑产品,它与物质产品有很大区别。 数据流图中的箭头表示数据流。
软件测试时需要三类信息:软件配置、测试配置、测试工具。
基于IDEF0图的设计也是结构化设计技术之一,它以系统的功能模型和信息结构为基础设计软件结构。
系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素,表达了系统中各种元素之间的信息流动情况。
桩模块是用来代替被测试模块所调用的模块,它的作用是返回被测模块所需的信息。 建立数据字典一般的两种形式是手工建立和利用计算机辅助建立并维护。 汇编语言是面向机器的,可以完成高级语言无法满足要求的特殊功能,如与外部设备之间的一些接口操作。 黑盒测试是功能测试,因此设计测试用例时,需要研究需求规格说明书和概要设计说明书中有关程序功能或输入、输出之间的关系等信息,从而与测试后的结果进行分析比较。