软件系统开发技术 模拟试题与参考答案Word格式文档下载.docx
《软件系统开发技术 模拟试题与参考答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《软件系统开发技术 模拟试题与参考答案Word格式文档下载.docx(37页珍藏版)》请在冰点文库上搜索。
D.UML仅限于支持面向对象的分析与设计,不支持其它的软件开发过程。
9.以下哪个软件生存周期模型是一种风险驱动的模型( )
A.瀑布模型B.增量模型
C.螺旋模型D.喷泉模型
10.以下哪一项对模块耦合性没有影响( )
A.模块间接口的复杂程度
B.调用模块的方式
C.通过接口的信息
D.模块内部各个元素彼此之间的紧密结合程度
二、填空题
1.数据流图描绘数据在系统中的过程
2.为了便于对照检查,测试用例应由输入数据和预期的两部分组成。
3.面向对象分析的目的是对进行建模。
4.结构化方法总的指导思想是逐层分解。
5.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为。
6.用来模拟被测模块的上级调用模块的模块称为。
7.一个模块的作用域指受该模块内一个_影响的所有模块的集合。
8.在用况图中,是参与者和用况(USECASE)之间的唯一关系。
9.RUP的突出特点是一种以、以体系结构为中心的、迭代增量式开发。
10.在RUP中,规定了四个开发阶段:
、精化阶段、构造阶段和移交阶段。
三、名词解释题
1.软件生存周期模型
2.系统模型
3.白盒测试法
4.信息隐蔽
四、简答题
1.简述演化模型以及可适应的情况,为什么?
2.结构化分析方法为了表达系统模型,给出了几个基本概念?
它们是如何表示的?
3.简述衡量模块独立性的两个标准及其含义。
4.说明用况之间有哪几种关系,说明每种关系的含义。
五、应用题
1.根据下列变换型的数据流图,设计出初始软件结构图。
软件系统开发技术
(二)
1.以下哪个软件生存周期模型是一种风险驱动的模型( )
2.结构化分析建立功能模型的工具是( )
A.DFDB.判定树/判定表
C.DDD.结构化语言
3.模块中所有成分结合起来完成一项任务,该模块的内聚性是( )
A.功能内聚B.顺序内聚
C.通信内聚D.逻辑内聚
4.以下哪一项对模块耦合性没有影响( )
5.检查软件产品是否符合需求定义的过程称为( )
A.确认测试B.集成测试
C.系统测试D.单元测试
6.下面关于详细设计的叙述中,错误的是( )
A.程序流程图可以描述结构化程序B.程序流程图不能描述结构化程序
C.NS图描述的程序一定是结构化的D.PAD图描述的程序一定是结构化的
7.集成测试是为了发现( )
A.接口错误B.编码错误
C.性能、质量不合要求D.功能错误
8.结构化程序设计,主要强调的是( )
A.程序的执行效率B.模块的内聚
C.程序的可理解性D.模块的耦合
9.下面关于文档的叙述,错误的是( )
A.文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节
B.文档是软件产品的一部分,没有文档的软件就不成为软件
C.高质量文档对于转让、变更、修改、扩充和使用有重要的意义
D.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量
10.面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是( )
A.Booch方法B.Coad方法
C.UML语言D.OMT方法
1.为了克服软件危机,1968年北大西洋公约组织的工作会议上首先提出了的概念。
2.变换型数据流图是由输入、和输出三部分组成的。
3.软件产品在交付使用之前一般要经过_、集成测试、确认测试和系统测试。
4.子类自动共享父类数据结构和方法的机制是_,这是类之间的一种关系。
5.G.J.Myers提出:
软件测试是为了发现而执行程序的过程。
6.状态图反映了状态与的关系。
7.两个或两个以上的模块共同引用一个全局数据项,这种耦合被称为。
8.用况之间可以具有三种关系,即泛化、扩展和包含。
泛化是用况之间的
9.RUP的突出特点是一种以用况(UseCase)为驱动的、、迭代增量式开发。
初始阶段、、构造阶段和移交阶段。
1.软件工程
2.软件生存周期
3.用况
4.软件需求分析
1.简述瀑布模型以及可适应的情况,为什么?
2.数据字典的作用是什么,它有哪些条目?
3.简述结构化设计中总体设计的任务,说明实现该任务的基本步骤。
4.简述结构化程序设计方法的基本要点。
1.一个软件公司有许多开发部门,每个部门由部门名字唯一确定。
每个开发部门开发多个软件产品。
开发部门有许多员工,分为经理和开发人员。
每个开发人员可参加多个开发项目,每个开发项目需要多个开发人员,开发人员使用语言开发项目。
每位经理可主持多个开发项目。
请在该公司的对象模型中填入相应的名称。
软件系统开发技术(三)
1.软件生存周期中,准确地确定软件系统必须做什么的阶段是( )
A.可行性分析和项目开发计划B.需求分析
C.概要设计D.详细设计
2.使用数据流图来表示系统逻辑模型的是( )
A.JacksonB.VDM
C.OOAD.SA
3.用于描述结构化分析中数据流加工逻辑的是( )
A.判定树B.ER图
C.状态图D.用例图
4.若一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入,则该模块的内聚性类型是( )
A.时间内聚B.偶然内聚
C.顺序内聚D.功能内聚
5.下列几种耦合类型,耦合性最高的是( )
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.顺序结构
1.结构化分析方法是一种面向的开发方法。
2.过程设计语言是用于描述模块和处理细节的语言。
3.描述加工逻辑一般用以下三种工具:
结构化语言、判定表和。
4.若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径执行,这种特征的DFD称为_的数据流图。
5.测试用例应由输入数据和_两部分组成。
6.测试的模块往往不是独立程序,需要为被测试模块设计若干辅助模块,其中用来模拟被测模块的下级调用模块称为模块。
7.RUP的突出特点是一种以用况(UseCase)为驱动的、以体系结构为中心的、。
8.RUP的迭代增量式开发,是的一个变体
9.在RUP中,规定了四个开发阶段:
初始阶段、精化阶段、和移交阶段。
10.PAD图是日本日立公司提出的一种工具。
三、名词解释
1.软件需求
2.数据字典
3.模块化
4.测试覆盖率
1.简述需求的基本性质
2.以结构化分析方法建立的系统模型由哪些部分组成?
每一部分的基本作用是什么?
3.说明用况之间有哪几种关系,说明每种关系的含义。
4.结构化设计中总体设计和详细设计的目标和任务是什么?
1.根据下列事务型的数据流图,设计出初始软件结构图。
软件系统开发技术试题
(一)答案
一、单项选择题(本大题共10小题,每小题1分,共10分)
1.设计软件结构一般不确定(D)
2.软件结构化设计中,好的软件结构应该力求做到(B)
3.两个模块都使用同一张数据表,模块间的这种耦合称为(A)
4.划分模块时,下列说法正确的是(A)
5.重用率高的模块在软件结构图中的特征是(B)
6.面向对象建模得到的三个模型,其中核心的模型是(A)
7.从结构化的瀑布模型看,在软件生存周期的几个阶段中,对软件的影响最大是(C)
8.对UML的叙述不正确的是(D)
9.以下哪个软件生存周期模型是一种风险驱动的模型( C )
10.以下哪一项对模块耦合性没有影响( D )
二、填空题(本大题共10小题,每空2分,共20分)
1.数据流图描绘数据在系统中___流动和处理_______的过程。
P40
2.为了便于对照检查,测试用例应由输入数据和预期的__输出结果(输出数据)____两部分组成。
P162
3.面向对象分析的目的是对_____目标系统______进行建模。
4.结构化方法总的指导思想是__自顶向下_____逐层分解。
5.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为___偶然内聚_____。
6.用来模拟被测模块的上级调用模块的模块称为__驱动模块_____
7.一个模块的作用域指受该模块内一个__判定____影响的所有模块的集合。
8.在用况图中,关联是参与者和用况(USECASE)之间的唯一关系。
9.RUP的突出特点是一种以用况(UseCase)为驱动的、以体系结构为中心的、迭代增量式开发。
初始阶段、精化阶段、构造阶段和移交阶段。
三、名词解释题(本大题共6小题,每小题3分,共18分)
答:
从概念上来讲,软件生存周期模型是一个包括软件产品开发、运行和维护中有关过程、活动和任务的框架,覆盖了从该系统的需求定义到系统的使用终止。
从应用的角度来说,软件生存周期模型为组织软件开发活动提供了有意义的指导。
简单地说,模型是任一抽象,其中包括所有的基本能力、特性或一些方面,而没有任何冗余的细节。
进一步地说,模型是在特定意图下所确定的角度和抽象层次上对物理系统的描述,通常包含对该系统边界的描述,给出系统内个模型元素以及它们之间的语义关系。
该方法把测试对象看作一个打开的盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检查内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。
白盒法也不可能进行穷举测试。
信息隐蔽是指在每个模块中所包含的信息(包括具有特定语义的数据和处理过程)不允许其他不需要这些信息的模块访问。
5.测试用例
为了发现程序中的故障而专门设计的一组或多组测试数据。
6.类
类是一组具有相同属性、操作、关系和语义的对象的描述。
四、简答题(本大题共5小题,每小题6分,共30分)
简述演化模型如图所示:
演化模型主要是针对事先不能完整定义需求的软件开发。
在用户提出待开发系统的核心需求的基础上,软件开发人员按照这一需求,首先开发一个核心系统,并投入运行,以便用户能够有效地提出反馈,接着,软件开发人员根据用户的反馈,实施开发的迭代过程。
结构化分析方法给出了5个术语:
数据流:
加工,数据存储、数据源、数据潭,
数据流是数据的流动,数据流表示为
加工是对数据进行变换的单元,即它接受输入的数据,对其进行处理,并产生输出。
数据存储是数据的静态结构。
数据源是数据流的起点;
数据潭是数据流的归宿地。
数据源和数据潭是系统之外的实体,可以是人、物或其他软件系统。
表示。
衡量模块的独立性的标准是两个定性的度量标准:
耦合性和内聚性。
(1)耦合性。
也称块间联系。
指软件系统结构中各模块间相互联系紧密程度的一种度量。
模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。
模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。
(2)内聚性。
又称块内联系。
指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
若一个模块内各元素(语句之间、程序段之间)的联系越紧密,则它的内聚性就越高。
耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。
用况之间可以具有三种关系,即泛化、扩展和包含。
泛化:
泛化是用况之间的一般/特殊关系。
USECASEA到USECASEB的泛化,指出A是B的特殊情况。
扩展:
记为《extend》,USECASEA到USECASEB的一个扩展关系,指出了USECASEB的一个实例可以由A说明的行为予以扩展(根据该扩展所说明的特定条件),并依据该扩展点定义的位置,A说明的行为被插入到B中。
包含:
记为《include》,USECASEA到USECASEB的一个包含,指出A的一个实例将包含B说明的行为,即这一行为将包含在A定义的那部分中。
5.结构化设计中总体设计和详细设计的目标和任务是什么?
结构化设计分为总体设计和详细设计。
总体设计的目标是:
建立系统的模块结构,即系统实现所需要的软件模块—系统中可标识的软件成分,以及这些模块之间的调用关系。
总体设计的具体任务是:
将DFD转化为MSD
详细设计的目标是将总体设计阶段所产生的系统高层结构,映射为以这些术语所表达的低层结构,也是系统的最终结构。
详细设计的主要任务是:
给出软件模块结构中各个模块的内部过程描述,也就是模块内部的算法设计。
五、应用题(本大题共2小题,第1小题10分,第2小题12分,共22分)
2.下列是某程序的N-S图
(1)请将其转换成PAD图
(2)请将其转换成伪码表示。
(1)PAD图
(2)
伪码表示:
begin
ifL1then
BeginS1;
whileL2do
beginS2;
ifL3thenS3
elseS4;
end
elseS5;
end;
软件系统开发技术试题
(二)答案
1.以下哪个软件生存周期模型是一种风险驱动的模型( C )
2.结构化分析建立功能模型的工具是( B )
3.模块中所有成分结合起来完成一项任务,该模块的内聚性是( A )
4.以下哪一项对模块耦合性没有影响( D )
5.检查软件产品是否符合需求定义的过程称为( A )
6.下面关于详细设计的叙述中,错误的是( B )
7.集成测试是为了发现( A )
8.结构化程序设计,主要强调的是( C )
9.下面关于文档的叙述,错误的是( A )
10.面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是( C )
二、填空题(本大题共10小题,每小题2分,共20分)
1.为了克服软件危机,1968年北大西洋公约组织的工作会议上首先提出了____软件工程___的概念。
2.变换型数据流图是由输入、_____变换(或处理)________和输出三部分组成的。
3.软件产品在交付使用之前一般要经过______单元测试______、集成测试、确认测试和系统测试。
4.子类自动共享父类数据结构和方法的机制是_____继承性____,这是类之间的一种关系。
软件测试是为了发现__程序错误____而执行程序的过程。
6.状态图反映了状态与_____事件与状态____________的关系。
7.两个或两个以上的模块共同引用一个全局数据项,这种耦合被称为公共耦合。
三、名词解释题(本大题6小题,每小题3分,共18分)
软件工程定义为:
软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科。
软件生存周期是软件产品或系统的一系列相关活动的全周期。
从形成概念开始,历经开发、交付使用、在使用中不断修订和演化,直到最后被淘汰,让位于新的软件产品”。
用况(usecase)是对一组动作序列的描述,系统执行这些动作应产生对特定的参与者有值的、可观察的结果。
4.软件需求分析:
就软件需求分析而言,即为:
系统化地使用问题域术语,给出该问题的模型
5.模块化:
把一个待开发的软件分解成若干简单的、具有高内聚低耦合的模块,这一过程称为模块化。
6.类的操作
操作是服务的一个实现,由该类的任意对象为其行为所要求的。
瀑布模型如图所示:
(1)软件生存周期分为若干规定阶段并规定了各开发阶段的活动,项目的开发依次经过:
需求、设计、编码和单元测试、集成以及维护—这一基本路径。
(2)在每一阶段提交以下产品:
软件需求规约、设计文档、实际代码、测试用例、最终产品等。
工作产品(又称可提交的产品)流经“正向”开发的基本步骤路径。
(3)“反向”步骤流表示对前一个可提交产品的重复变更(又称为“返工”)。
瀑布模型可适应的情况
在开发中,向下、渐进的路径占支配地位。
也就是说,需求已被很好地理解;
过程设计人员也很清楚:
开发组织非常熟悉为实现这一模型所需要的过程(或经过培训后,熟悉什么时候来支持这一项目,以实现这一模型所需要的过程)。
数据字典,主要用来描述数据流程图中的数据流、数据存储、处理过程和和数据源点/终点。
作用:
数据流程图描述了系统的逻辑结构,其中的四个基本图形元素的含义无法在数据流程图中详细说明,因此数据流程图需要与其他工具配合使用,数据字典就是这样的工具之一。
包括的条目:
数据流词条,数据元素词条,数据存储词条,数据加工处理词条,数据源点及终点词条
总体设计的具