软件工程试题与答案(17)

合集下载

软件工程练习题&答案

软件工程练习题&答案

软件工程练习题一. 选择题(单选或多选)(1)需求分析阶段最重要的技术文档是( C )。

A)项目开发计划B) 设计说明书C)需求规格说明书D) 可行性分析报告(2)在软件工程中,白盒测试法可用于测试程序的内部结构。

此方法将程序看作是(A )A) 路径的集合B) 循环的集合C) 目标的集合 D) 地址的集合(3)在以下模块耦合性类型中,模块之间独立性最差的类型是( D )A) 非直接耦合B) 标记耦合C)控制耦合D)内容耦合(4)软件详细设计的主要任务是对(A)进行的详细设计。

A) 算法和数据结构B) 外部接口C)软件编码D)功能(5)Jackson方法是一种面向(C)的结构化方法。

A) 数据流B) 对象C)数据结构D)控制流(6)一个成功的测试可以( D )。

A) 表明程序没有错误B) 发现所有错误C)提高软件可靠性D)发现尚未发现的错误(7)下述陈述中,哪一个不是软件健壮性的度量指标?(C )。

A)失败后重新启动所需的时间B)引起失败的时间所占的百分比C)失败前的平均工作时间D)在一次失败中数据恶化的概率(8)黑盒技术设计测试用例的方法之一为( A )。

A)因果图B)逻辑覆盖C)循环覆盖D)基本路径测试(9)CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是(D )。

A)工作无序,项目进行过程中经常放弃当初的计划B)建立了项目级的管理制度C)建立了企业级的管理制度D)软件过程中活动的生产率和质量是可度量的(10)在面向数据流的软件设计方法中,一般将信息流分为( A )。

A)变换流和事务流B)变换流和控制流C)事务流和控制流D)数据流和控制流(11)软件设计中一般将用到图形工具,下述哪种工具可用作设计的图形工具。

( ABCDEF )A)结构图B)实体关系图C)IPO图D)流程图E) N-S图F) 判定树(12)软件需求分析阶段建立原型的主要目地是( C )。

A)确定系统的性能要求B)确定系统的运行要求C)确定系统是否满足用户需要D)确定系统是否满足开发人员需要(13)要显示描绘软件开发项目各作业的依赖关系,应选择(B )。

软件工程学试题及答案

软件工程学试题及答案

软件工程学试题及答案一、单项选择题(每题2分,共10分)1. 软件工程的目的是()。

A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 下列哪项不是软件需求分析的任务?()。

A. 确定软件的功能需求B. 确定软件的性能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:D3. 软件生命周期中,()阶段是确定软件需求的阶段。

A. 需求分析B. 系统设计C. 编码D. 测试答案:A4. 软件测试的目的是()。

A. 证明软件是正确的B. 证明软件存在错误C. 发现软件中的错误D. 证明软件不存在错误答案:C5. 软件危机主要表现在()。

A. 软件成本B. 软件质量C. 软件进度D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件工程的基本原理包括()。

A. 用分阶段的生命周期计划严格管理B. 强调开发过程的迭代性质C. 采用合适的编程规范D. 强调软件工具的使用答案:ABD2. 软件需求分析的常用方法包括()。

A. 数据流图B. 用例图C. 状态转换图D. 流程图答案:ABC3. 软件测试的类型包括()。

A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD4. 软件维护的类型包括()。

A. 校正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:ABCD5. 软件工程中常用的设计模式包括()。

A. 单例模式B. 工厂模式C. 观察者模式D. 策略模式答案:ABCD三、简答题(每题5分,共20分)1. 简述软件工程中的模块化设计原则。

答案:模块化设计原则要求将系统分解成若干个模块,每个模块具有高内聚、低耦合的特点,以便于系统的开发、测试、维护和理解。

2. 描述软件需求分析的重要性。

答案:软件需求分析是软件开发过程中的关键步骤,它确保了开发团队对用户需求有清晰的理解,有助于避免开发出不符合用户需求的软件,减少返工和成本。

软件工程试题及答案

软件工程试题及答案

软件⼯程试题及答案1. 软件⽣命期各阶段的任务是什么?答:软件⽣命期分为7个阶段:1、问题定义:要解决的问题是什么2、可⾏性研究:确定问题是否值得解,技术可⾏性、经济可⾏性、操作可⾏性3、需求分析:系统必须做什么4、总体设计:系统如何实现,包括系统设计和结构设计5、详细设计:具体实现设计的系统6、实现:编码和测试7、运⾏维护:保证软件正常运⾏。

2、软件重⽤的效益是什么?答:1、软件重⽤可以显著地改善软件的质量和可靠性。

2、软件重⽤可以极⼤地提⾼软件开发的效率。

3、节省软件开发的成本,避免不必要的重复劳动和⼈⼒、财⼒的浪费。

3、⾃顶⽽下渐增测试与⾃底⽽上渐增测试各有何优、缺点?答:①⾃顶⽽下渐增测试优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,⽽且能够尽早发现上层模块的接⼝错误。

缺点:需要存根程序,底层错误发现较晚。

②⾃底⽽上渐增测试优点与缺点和⾃顶⽽下渐增测试相反。

4 、提⾼可维护性的⽅法有哪些?答:在软件⼯程的每⼀阶段都应该努⼒提⾼系统的可维护性,在每个阶段结束前的审查和复审中,应着重对可维护性进⾏复审。

在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。

在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界⾯。

在软件设计的复审中,因从便于修改、模块化和功能独⽴的⽬标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。

在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。

在软件系统交付使⽤前的每⼀测试步骤中都应给出需要进⾏预防性维护部分的提⽰。

在完成每项维护⼯作后,都应对软件维护本⾝进⾏仔细认真的复审。

为了从根本上提⾼软件系统的可维护性,⼈们正试图通过直接维护软件规格说明来维护软件,同时也在⼤⼒发展软件重⽤技术。

简述软件测试要经过哪⼏个步骤,每个步骤与什么⽂档有关。

【解答】测试过程按4 个步骤进⾏,即单元测试(模块测试)、集成测试(⼦系统测试和系统测试)、确认测试(验收测试)和平⾏运⾏。

软件工程试卷及参考答案

软件工程试卷及参考答案

试卷(一)1、在结构化设计(SD)方法中全面指导模块划分的最重要的原则是( )A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性2、软件维护产生的副作用,是指( )A、开辟时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作3、软件详细设计的主要任务是确定每一个模块的( )A、算法和使用的数据结构B、外部接口C、功能D、编程4、为了提高模块的独立性,模块内部最好是( )A、逻辑内聚B、时间内聚5、软件是一种( )A、程序B、数据C、功能内聚C、逻辑产品D、通信内聚D、物理产品6、因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )A、纠正性维护B、适应性维护C、完善性维护D、预防性维护7、惟独单重继承的类层次结构是( )层次结构。

A、网状型B、星型C、树型D、环型8、下列属于维护阶段的文档是( )A、软件规格说明B、用户操作手册C、软件问题报告D、软件测试分析报告9、不适合作为科学工程计算的语言是( )A 、Pascal B、 C C、Fortran D、 Prolog10、研究开辟所需要的成本和资源是属于可行性研究中的( )研究的一方面。

A. 技术可行性B. 经济可行性C. 社会可行性D. 法律可行性11、中级结构性成本模型 COCOMO 是一个( )A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型12、PAD 图为( )提供了有力的工具。

A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件13、下列关于JSP 方法不正确的说法是( )A、JSP 方法主要用于规模不大的数据处理系统B 、JSP 方法不明确的划分软件概要设计和详细设计的两个阶段C、JSP 方法合用于输入数据和输出数据之间有对应关系的问题求解D、JSP 方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。

因此它只适用于详细设计阶段14、在详细设计阶段,时常采用的工具有( )A 、PADB 、SA C、SCD 、DFD15、确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于( )A、集成测试B、恢复测试C、验收测试D、单元测试16、盒图(N-S 图)为( )提供了有力的工具。

软件工程试题与答案-(17)1

软件工程试题与答案-(17)1

1234123412软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。

(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。

A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。

A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。

A.可靠性 B.可重用性C.适应性 D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率 B.规模 C.完整性 D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。

A.结合 B.隐藏C.封装 D.抽象7.软件调试技术包括()A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言 C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模 B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。

软件工程习题及参考答案

软件工程习题及参考答案

软件工程习题及参考答案判断题软件也会磨损和老化。

(某)完善性维护是提高或完善软件的性能。

(√)数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。

(某)软件是指用程序设计语言(如PASCAL,C,VISUALBASIC等)编写的程序,软件开发实际上就是编写程序代码。

(某)软件模块之间的耦合性越弱越好。

(√)如果通过软件测试没有发现错误,则说明软件是正确的。

(某)快速原型模型可以有效地适应用户需求的动态变化。

(√)模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

(√)集成测试主要由用户来完成。

(某)确认测试计划应该在可行性研究阶段制定(某)白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。

(某)软件概要设计包括软件系统结构设计以及数据结构和数据库设计。

(√)软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题进行分解,将软件生存的时期分为若干阶段。

(√)系统流程图表达的是部件的信息流程,还表示对信息进行加工处理的控制过程。

(╳)模块越多,开发成本越小。

(╳)软件测试的目的就是证明软件没有错。

(╳)PAD图在设置了五种基本的控制结构后,还允许递归使用。

(√)在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案。

(某)SA法是面向数据流,建立在数据封闭原则上的需求分析方法。

(√)HIPO法既是需求分析方法,又是软件设计方法。

(√)在面向对象的需求分析方法中,建立动态模型是最主要的任务。

(某)加工小说明是对系统流程图中的加工进行说明。

(某)判定表的优点是容易转换为计算机实现,缺点是不能够描述组合条件。

(某)需求分析的主要方法有SD法、OOA法及HIPO法等。

(某)分层的DFD图可以用于可行性分析阶段,描述系统的物理结构。

(某)信息建模方法是从数据的角度来建立信息模型的,最常用的描述信息模型的方法是E-R图。

软件工程试卷(附答案)

软件工程试卷(附答案)
B.功能模型说明对象模型中操作的含义
C.功能模型说明动态模型中约束的含义
D.功能模型说明对象模型中动作的意义
16、以下说法错误的是(D)
A.面向对象方法不仅支持过程抽象,而且支持数据抽象
B.某些面向对象的程序设计语言还支持参数化抽象
C.信息隐蔽通过对象的封装性来实现
D.在面向对象方法中,类是最基本的模块
确认测试:也称为验收测试,它的目标是验证软件的有效性。
上面这句话中使用了确认(validation)和验证(verification)这样两个不同的术语,为了避免混淆,首先扼要地解释一下这两个术语的含义。通常,验证指的是保证软件正确地实现了某个特定要求的一系列活动,而确认指的是为了保证软件确实满足了用需求而进行的一系列活。
20、以下说法错误的是(A)
A.面向对象分析与面向对象设计的行医没有明显区别
B.在实际的软件开发过程中面向对象分析与面向对象设计的界限是模糊的
C.面向对象分析和面向对象设计活动一个多次迭代的过程
D.从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程
一、多项选择题(每题2分,共20分)
1、软件危机产生的主要原因是(AE)。
4.两个模块通过全程变量相互作用,这种耦合方式称为_____公共耦合______。
5.再详细设计阶段,除了对模块内的算法进行设计,还应对模块内的_____数据结构_____进行设计。
6.子类自动共享父类的属性和操作的机制称为_____继承_____。
7.在UML语言中,利用_____用例图_____来对需求分析中的问题进行描述。
A.可修改性和可理解性
B.可测试性和可理解性
C.效率和可修改性
D.可理解性和可读性
19、以下说法正确的是(C)。

软件工程测验题(附答案)

软件工程测验题(附答案)
A、前景和范围文档
B、需求说明书 C、系统分析说明书D、系统操作手册
2系统功能和边界的描述有用例图和()
A、类图
B、上下文图(或系统关联图)C、部署图
D、业务流程图
3[IEEE1990]对性能的定义:一个系统或者其组成部分在限定的约束下,完成其指定() 的程度。
A、功能
B、性能C、需求
D、目标
多选
13【多选题】软件需求开发包括()阶段。
C、面向问题域分析(PDOA)
D、原型分析
5【多选题】常见的结构化分析技术包括()方法。
A、数据建模(ER图)
B、过程建模(DFD)
C、行为建模(状态图)
D、过程/数据关系建模(功能实体矩阵)
E、信息工程(战略数据规划)我的答案:ABCDE
6【多选题】反映需求分析结果,用于为行为分析建模,描述用户与系统协同工作的细节,
B、用户对软件开发需求的描述不精确,可能有遗漏、有二义性、甚至有错误
C、在软件开发过程中,用户还提出修改软件开发功能、界面、支撑环境等方面的要求
D、软件开发人员对用户需求的理解与用户本来愿望有差异我的答案:ABCD
6【多选题】软件需求可分为(功能需求和非功能需求)
7【多选题】以下属于功能需求的有()
B、接口的命令格式
C、接口标准
D、接口用途
E、接口的输入输出
F、接口的实现算法我的答案:ABCDE
12【多选题】需求获取要获取的内容包括()
A、需求本身
B、业务描述
C、环境
D、约束
我的答案:ABCD
13【多选题】需求获取方法中传统的有
A、面谈法
B、原型法
C、模型驱动法
D、基于上下文的方法
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1234123412软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。

(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。

A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。

A.静态单变量B.动态单变量C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。

A.可靠性B.可重用性C.适应性D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率B.规模C.完整性D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。

A.结合B.隐藏C.封装D.抽象7.软件调试技术包括()A.边界值分析B.演绎法C.循环覆盖D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模B.运行速度C.质量D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C.输入的信息D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。

图反映系统()A.怎么做B.对谁做C.何时做D.做什么18.经济可行性研究的范围包括()A.资源有效性B.管理制度C.效益分析D.开发风险19.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出()的回答。

A.确定B.行或不行C.正确D.无二义20.需求分析阶段的任务是确定()A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能二、填空题(每空2分,共20分)。

21.在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调软件开发,并使混乱减到最低程度。

22.规定功能的软件,在一定程度上对自身错误的作用(软件错误)具有屏蔽能力,则称此软件具有容错功能的软件。

23.McCall提出的软件质量模型包括11个软件质量特性。

24.软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

25.为了便于对照检查,测试用例应由输入数据和预期的输出结果两部分组成。

26.程序设计语言的心理特性主要表现在歧义性、简洁性、传统性、局部性和顺序性。

27.软件结构是以模块为基础而组成的一种控制层次结构。

28.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、判定树。

29.结构化语言是介于自然语言和形式语言之间的一种半形式语言。

30.若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=F/(1+(n*i)。

三、名词解释题每小题3分,共15分。

31.软件生存周期模型描述软件开发过程中各种活动如何执行的模型32.数据字典(DD)数据字典是用来定义数据流图中的各个成分的具体含义的。

它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。

33.内聚性内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量34.JSP方法JSP方法是面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入,输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。

35.多态性指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。

或(不同的对象,收到同一消息可以产生不同的结果。

)四、简答题每小题5分,共20分。

36.简述容错技术的四种主要手段,并解释。

结构冗余:包括静态冗余、动态冗余和混合冗余。

信息冗余:为检测或纠正信息在运算或传输中的错误,须外加一部分信息。

时间冗余:指重复执行指令或程序来消除瞬时错误带来的影响。

冗余附加技术:指为实现上述冗余技术所需的资源和技术。

37.以G.J.Myers的观点,简述对软件测试的目的。

软件测试是(1)为了发现错误而执行程序的过程;(2)一个好的用例能够发现至今尚未发现的错误的测试。

(3)一个成功的测试是发现至今尚未发现的错误的测试。

38.就程序设计语言的工程特性而言,对程序编码有哪些要求?就程序设计语言的工程特性而言,对程序编码有如下要求:(1)可移植性(2)开发工具的可利用性(3)软件的可重用性(4)可维护性39.模块的内聚性包括哪些类型?模块的内聚性包括:(1)偶然内聚(2)逻辑内聚(3)时间内聚(4)通信内聚(5)顺序内聚(6)功能内聚五、应用题第40小题7分,第41小题8分,第42小题10分,共25分。

41.根据下列条件使用等价划分法设计测试用例。

某一8位微机,其十六进制常数定义为:以0x或0X开头的数是十六进制整数,其值的范围是-7f~7f(表示十六进制的大小写字母不加区别),如0X13,0X6A,-0X3c。

解答:等价划分法①划分等价类并编号,如下表所示。

十六进制整型常量输入条件的等价类表软件工程导论预测题一,单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。

1.可行性研究要进行一次_____需求分析。

A.详细的B.全面的C.简化的、压缩的D.彻底的[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。

其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。

因此答案为C。

2.系统流程图用于可行性分析中的_____的描述。

A.当前运行系统B.当前逻辑模型C.目标系统D.新系统[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。

描述的对象是当前正在运行的系统,因此选择A。

3.系统流程图是描述_____的工具。

A.逻辑系统B.程序系统C.体系结构D.物理系统[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。

是描绘物理系统的传统工具。

4._______工具在软件详细设计过程中不采用。

A.判定表B.IPO图C.PDL D.DFD图[解析]详细描述处理过程常用三种工具:图形、表格和语言。

其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。

IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。

PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。

5.程序的三种基本控制结构是A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移[解析]程序的三种基本控制结构是顺序、选择和循环(重复)。

子程序只是程序设计一种方法,递归则是一种算法,都算不上是控制结构。

6.程序的三种基本控制结构的共同特点是A.不能嵌套使用B.只能用来写简单程序C.已经用硬件实现D.只有一个入口和一个出口[解析]程序的特点就是从一个入口开始,最终以一个出口结束,其间可以用顺序,选择和循环方式对程序的流向进行控制。

三种结构可以写出非常复杂的程序,而且选择和循环都可以嵌套设计。

7.产生软件维护的副作用,是指A.开发时的错误B.隐含的错误C.因修改软件而造成的错误D.运行时误操作[解析]因修改软件而造成的错误或其他不希望出现的情况称为维护的副作用,包括编码副作用、数据副作用、文档副作用三种。

只有答案C是正确的表述。

8.维护中,因误删除一个标识符而引起的错误是_________副作用。

A.文档B.数据C.编码D.设计[解析]编码副作用指的是在使用程序设计语言修改源代码时可能引入错误,比如删除或修改一个子程序、一个标号、一个标识符,改变程序代码的时序关系,修改文件的打开或关闭等。

因此本题答案为C。

9.可维护性的特性中相互促进的是A.可理解性和可测试性B.效率和可移植性C.效率和可修改性D.效率和结构好[解析]软件的可维护性可用七个质量特性来衡量,分别是:可理解性、可测试性、可修改性、可靠性、可移植性、可使用性和效率。

对于不同类型的维护,这些特性的侧重点也不相同,有一些可维护特性是可以相互促进的,比如可理解性和可测试性,可理解性和可修改性,另外一些则是相互矛盾的,如答案中的B效率和可移植性、C中的效率和可修改性。

至于D 中的结构好则不属于可维护性的特征。

10.汽车有一个发动机。

汽车和发动机之间的关系是_____关系。

A.一般具体B.整体部分C.分类关系D.主从关系[解析]类有两种主要的结构关系,即一般——具体结构关系和整体——部分结构关系。

前者称为分类结构,用来描述现实世界中的一般化的抽象关系。

后者称为组装结构,用来描述现实世界中的类的组成的抽象关系。

汽车和发动机的关系很明显,应该属于整体——部分关系。

11.在变更控制中,______可以用来确保由不同用户所执行的并发变更。

A.异步控制B.同步控制C.存取控制D.基线控制[解析]变更控制包括建立控制点和建立报告与审查制度,其过程中的“检出”和“登入”处理实现了存取控制和同步控制,存取控制管理各个用户存取和修改一个特定软件配置对象的权限,同步控制可用来确保由不同用户所执行任务的并发变更。

12.变更控制是一项最重要的软件配置任务,其中“检出”和______处理实现了两个重要的变更控制要素,即存取控制和同步控制。

相关文档
最新文档