烟台大学《软件工程复习题带答案》期末考试复习题及参考答案_第1页
烟台大学《软件工程复习题带答案》期末考试复习题及参考答案_第2页
烟台大学《软件工程复习题带答案》期末考试复习题及参考答案_第3页
烟台大学《软件工程复习题带答案》期末考试复习题及参考答案_第4页
烟台大学《软件工程复习题带答案》期末考试复习题及参考答案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

一、多选题

1.从下列叙述中选出5条关于好的程序设计风格的正确叙述。

A.使用括号以改善表达式的涓晰性。

B.对递归定义的数据结构不要使用递归过程。

C.尽可能对程序代码进行优化。

D.不要修补不好的程序,要重新写。

E.不要进行浮点数的相等比较。

F.应尽可能多地输出中间结果。

G.利用数据类型对数据值进行防范。

H.用计数方法而不是用文件结束符或输入序列结束符来判别输入的结束。

I.程序中的注释是可有可无的。

J.使用有意义的标识符。

2.从下列叙述中选出5条关于软件测试的正确叙述。

A.为了使得软件容易测试,应该使用高级的程序设计语言编制程序。

B.程序测试是一个程序的执行过程,目的是为了发现软件中隐戴的错误。

C.如果程序中连锁式连接了8个判定(IF)结构,则程序中总的路径数达28。

D.白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。

E.为了快速完成集成测试,采用一次性集成方式是适宜的。

F.对•批模块进行测试,发现错误多的模块中残留的错误将比其它的模块少。

G.好的测试用例应能证明软件是正确的。

H.边界值分析方法是取输入/输出等价类的边界值做为测试用例。

L等价类划分方法考虑了各等价类之间取值的组合情况下可能的结果。

J.判定覆盖法可能查不出在判定中逻辑运算符使用有误时产生的错误。

3.从下列叙述中选出5条有利于软件可维护性的正确叙述。

A.在进行需求分析时需同时考虑如何实现可维护性问题。

B.完成测试作业后,为了缩短源程序的长度应删去程序中的注解

C.尽可能在软件生产过程中保证各阶段文档的正确性。

D.编程时应尽可能使用全局变量。

E.选择时间效率和空间效率尽可能高的算法。

F.尽可能利用硬件的特点。

G.重视程序结构的设计,使程序具有较好的层次结构。

H.使用维护工具或支撑环境。

L在进行概要设计时应加强模块间的联系。

J.提高程序的可读性,尽可能使用高级语言编写程序。

K.为了加快软件维护作'业的进度,应尽可能增加维护人员的数目。

4.在下面关于标准和文档的叙述中,选出5条正确的叙述。

A.国家标准是由政府或国家级机构制定或批准,适用于全国的标准。这些标准都是强制性的,相关产

品必须严格执行标准。

B.IS09001是设计/开发、生产、安装和服务中的质量保证模式,IS09000-3是使IS09001适合于软件

的质量保证指南。

C.软件工程标准化可提高软件的生产率。

D.软件质量保证体系是贯穿于整个软件生存期集成化过程体系,而不仅仅体现在最后产品的检验r.o

E.IS09000-3与具体的开发模式有关。它将软件全过程工序从管理角度、合同角度和工程角度划分为三

大类。

F.软件测试计划始于需求分析阶段,完成于软件设计阶段。

G任何一个文档都应是完整的、独立的,它应自成体系。

H.在新文档取代旧文档后,管理人员不应注销旧文档。

I.软件开发机构应保存一份完整的主文档,并允许开发人员可以保存主文档中的部分主文档,有自己的

活动空间。

J.软件需求分析报告是给开发人员使用的,不是给其它人员,如维护人员,用户等使用的。

第1题正确答案为ADEGJ

第2题正确答案为ABCDH

第3题正确答案为CEGHJ

第4题正确答案为BCDFG

二、单选题

1.()软件维护的四类维护活动是:

A.改正性维护,适应性维护,完善性维护和预防性维护。

B.适应性维护,完善性维护,抢救性维护和辅助性维护。

C.改正性维护,适应性维护,完善性维护和辅助性维护。

D.适应性维护,完善性维护,抢救性维护和预防性维护。

2.具有风险分析的软件生存周期模型是()。

A.瀑布模型B.喷泉模型

C.螺旋模型D.增量模型

3.需求分析中开发人员要从用户那里了解(

A.软件做什么B.用户使用界面

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-10答案:ACADAACBDB

11.下列哪个阶段不屈F软件生存周期的三大阶段()。

A、计划阶段B、开发阶段

C、编码阶段D、维护阶段

12.需求分析是()。

A、软件开发工作的基础B、软件生存周期的开始

C、由系统分析员单独完成的D、由用户自己单独完成的

13.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(

A、明确的需求定义B、完整的生命周期

C、较长的开发时间D、熟练的开发人员

14.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为

()。

A、改正性维护B、适应性维护

C、完善性维护D、预防性维护

15.下列哪个图不是N-S图的构件()o

11-15答案:CABAC

16.在软件生存周期的瀑布模型中一般包括计划、()、设计、编码、测试、维护等阶段。

A可行性分析B需求采集C需求分析D问题定义

17.IS09000是由ISO/TC176制定的关于()和质量保证的国际标准。

A质量控制B质量管理C质量策划D质量改进

18.软件工程的基本要素包括方法、工具和()。

A过程B软件系统C硬件环境D人员

19.软件的曳杂性是(),它引起人员通信困难、开发费用超支、开发时间超时等问题.

A固有的B人为的C可消除的D不可降低的

20.软件需求分析阶段的测试手段一般采用()。

A总结B阶段性报告C需求分析评审D不测试

21.()是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只

能通过有限的接口与对象发生联系。

A多态性B继承C封装D消息

22协作图反映收发消息的对象的结构组织,它与()是同构的.

A用例图B类图C活动图D时序图

23.软件测试是为了()而执行程序的过程。

A纠正错误B发现错误C避免错误D证明正确

24.面向对象分析是对系统进行()的一种方法。

A需求建模B程序设计C设计评审D测试验收

25.在结构化分析方法中,()表达系统内部数据运动的图形化技术。

A数据字典B实体关系图C数据流图D状态转换图

16-25答案:cbaaccdbac

26.()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工

具和过程三个要素。

A软件过程B软件测试C软件生存周期D软件工程

27.IS09000是由ISO/TC176制定的关于()和质量保证的国际标准。

A质量控制B质量管理C质量策划D质量改进

28.CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每个等级都

包含了实现该成熟度等级目标的若干()。

A关键实践B关键过程域C软件过程能力D软件过程

29.在软件开发的各种资源中,()是最重要的资源。

A开发工具B方法C硬件环境D人员

30.软件的复杂性是(),它引起人员通信困难、开发费用超支、开发时间超时等问题。

A固有的B人为的C可消除的D不可降低的

31.在各种不同的软件需求中,()描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本

中予以说明。

A业务需求B功能需求C非功能需求D用户需求

32.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于()系统。

A需求不确定的B需求确定的C管理信息D决策支持

33.()意味着一个操作在不同的类中可以有不同的实现方式。

A多态性B多继承C类的可复用D信息隐蔽

34.时序图反映对象之间发送消息的时间顺序,它与()是同构的。

A用例图B类图C活动图D协作图

35.单元测试的测试用例主要根据()的结果来设计。

A需求分析B源程序C概要设计D详细设计

26-35答案:DBBDABAADB

36.软件需求分析的主要任务是准确地定义出要开发的软件系统是()。

A.如何做B.怎么做

C.做什么D.对谁做

37.软件详细设计的主要任务是确定每个模块的()。

A.算法和使用的数据结构B.外部接口

C.功能D.编程

38.提高测试的有效性非常重要,成功的测试是指().

A.证明了被测试程序正确无误B.说明了被测试程序符合相应的要求

C.未发现被测程序的错误D.发现了至今为止尚未发现的错误

39.若有一个计算类型的程序,它的输入量只有一个X,其范围是[T.0,1.0],现从输入的角度考虑一组测

试用例:T.001,-1.0,1.0,1.301.设计这组测试用例的方法是()。

A.条件覆盖法B.等价分类法

C.边界值分析法D.错误推测法

40.下图是()

A.类图B.用例图

C.活动图D.状态图

模糊查找

41.按软件生命周期方法设计软件的过程中,画数据流图属于哪个阶段的工作()?

A.需求分析B.概要设计

C.详细设计D.软件维护

42.()引入了“风险驱动”的思想,适用于大规模的内部开发项目。

A.增量模型B.喷泉模型

C.原型模型D.嘿旋模型

43.为了进一步改善软件系统的可维护性和可靠性,井为以后的改进奠定基础的软件维护称为()。

A.纠错性维护B.适应性维护

C.改善性维护D.预防性维护

44.为了提高测试的效率,应该()。

A.随机地选取测试数据B.取一切可能的输入数据作为测试数据

C.在完成编码以后制定软件的测试计划

D.选择发现错误可能性大的数据作为测试数据

45.可行性研究要进行一次()需求分析。

A.深入的B.详尽的

C.彻底的D.简化的、压缩了的

36-45答案:CADCBADDDD

三、填空题

1.软件生存周期一般可分为问题定义、可行性研究、需求分析、设计编码、测试、运行

与维护阶段。

2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。

3.可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。

4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。

5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的结构化设计方法,以

数据结构为基础构造模块的jackson方法,以对象、类、继承和通信为基础的面向对象设计方法。

6.数据流图和数据字典共同构成系统的逻辑模型。

7.软件测试的方法有分析方法和非分析方法(即黑盒法)。

8.单元测试一般以白盒测试为主,黑盒测试为辅。

9.成本估计方法主要有自底向上估计、自顶向下估计_____和算法模型估计三种类型。

10.软件设计中划分程序模块通常遵循的原则是使各模块间的耦合尽可能()。三种可能的模

块耦合是:(),例如,一个模块直接引用另一个模块中的数据。(),例如,

一个模块把开关量作为参数传送给另一个模块。(),例如,一个模块通过公共数据结构把数据

传送给另一个模块。其中,()的耦合性最强。

第1个正确答案为弱,第2个正确答案为内容耦合,第3个正确答案为控制耦合,第4个正确答案为公

共耦合,第5个正确答案为内容耦合,

11、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的()

中。(共10分)

1.在学校中,一个导师可以指导多个研究生,一个研究生可以由多个导师指导,那么导师和研究生之间

足()关系。

2.交通工具与卡车之间是()关系。

3.公司与部门之间是()关系。

4.图形与矩形之间是()关系。

5.参数类及其实例类之间是()关系。

1.关联2.泛化3.聚合4.泛化5.实现

12、UML关系包括关联、聚合、泛化、实现、依赖等5种类型,请将合适的关系填写在下列描述的()

中。

①用例及其协作之间是()关系。

②在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是()

关系。

③类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是

()关系。

④在MFC类库中,Window类和DialogBox类之间是()关系。

⑤森林和树木之间是()美系。

①实现②关联③依赖④泛化⑤聚合

四、判断题

1.文档是软件产品的一部分,没有文档的软件就不称其为软件。

2.在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪弊信息。

3.需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。

4.建立用例模型的步躲包括确定角色、确定用例和绘制用例图。

5.数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。

6.软件配置管理是一组标识、组织和控制修改源程序的活动。

7.UML是一种直观化、明确化、构建和文档化软件产物的通用语言。

8.好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

9.边界值分析方法是取输入/输出等价类的边界值作为测试用例。

10.面向对象的分析是面向计算机系统建立软件系统的对象模型。

1、A2、B3、B4、B5、B6、B7、B8、A9、A10、B(A对B错)

11.()在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。

12.()软件错误可能出现在开发过程的早期,越早修改越好。

13.()不完善的系统定义往往是导致软件项目失败的主要原因。

14.()一个成功的项目唯一提交的就是运行程序。

15.()只有质量差的软件产品才需要维护。

16.()UML是一种直观化、明确化、构建和文档化软件产物的通用语言。

17.()一个好的测试用例在于能发现至今未发现的错误。

18.()面向对象的分析是面向计算机系统建立软件系统的对象模型。

19.()软件工作的考虑范围主要是程序设计和实现。

20.()等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的

数据作为测试用例。

11、b12、a13、a14、b15、b16、b17、a18、b19、b20、a(A对B错)

21.开发软件就是编写程序。

22.系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。

23.编程序时应尽可能利用硬件特点以提高程序效率.

24.软件需求分析的任务是建立软件模块结构图。

25.尽可能使用高级语言编写程序

26.以结构化分析方法建立的系统模型就是数据流图。

27.进行总体设计时加强模块间的联系。

28.编码时尽量多用全局变量.

29.用CASE环境或程序自动生成工具来自动生成一部分程序.

30.软件测试是要发现软件中的所有错误。

(X)21、(X)22、(X)23、(X)24、(J)25、(X)26、(X)27、(X)

28、(J)29、(X)30、(J)

31.在软件开发中,采用原形系统策略的主要困难是时间问题。(X)

32.数据流图从数据传递和加工的角度,以图形的方式描述数据流从输入到输出的传输变换过程。(J)

33.内聚是指一个软件结构内各个模块之间互连的度量。(X)

34.对与DFD图的划分,主要依赖设计人员的经验,一切都应该根据设计人员的经验确定。(X)

35.详细设计是在概要设计之后进行的,它利用概要设计的结果,对系统中的每个模块给出足够的过程性

描述。(V)

36.在变更控制中,基线控制可以用来确保由不同用户所执行的并发变更。(X)

五、简答题

1、可复用的软件元素包括(选5种):

项目计划、成本估计、体系结构、需求模型和规格说明、设计、用户文档和技术文档、用户界面、数

据结构、测试用例。

2、传统“瀑布模型”的主要缺陷及其原因:

在项目的早期,用户常常很难清楚地给出所有需求,瀑布模型却要求如此。由丁•瀑布模型的特点,早

期的错误直到开发晚期才能被发现,开发的风险较大。

3原型化方法主要用于解决什么问题?试说明这种方法的主要优缺点。

建立原型的主要原因是为了解决在产品开发的早期阶段需求大确定的问题,用户、经理和其他非技术项

H风险承担者发现在确定和开发产品时,原型可以使他们的想象更具体化。原型在软件开发过程中可以起

到以下主要作用:

(1)明确并完善需求原型作为一种需求工具,它初步实现所理解的系统的一部分。用户对原型的

评价可以指出需求中的许多问题,在你开发真正产品之前,可以最低的费用来解决这些问题。

(2)探索设计选择方案原型作为一种设计工具,用它可以探索不同的用户界面技术,使系统达到

最佳的可用性,并且可以评价可能的技术方案。

(3)发展为最终的产品原型作为一种构造工具,是产品最初子集的完整功能实现,通过一系列小

规模的开发循环,你可以完成整个产品的开发。

4、比较增量模型和螺旋模型的特点,有什么不同和相似的地方?

答:增量模型是瀑布模型的顺序特征与快速原型法的迭代特征相结合的产物。螺旋模型是一种迭代模型,

每迭代一次,螺旋线就前进一周。增量模型每个增量具有高内聚低耦合,高度的独立性。而螺旋模型它在

结合瀑布模型与快速原型的基础上还增加了风险分析。

5、什么是模块独立性?用什么度量?

答:模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。模块

独立的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。

独7性可以从两个方面来度最:模块本身的内聚性(Cohesion)和模块之间的耦合(Coupling)。

6、比较概要设计复审和过程设计复审的评审内容,并说明他们采取的复审方式有何异同。

答:概要设计复审的重点放在系统的总体结构、模块划分、内外结构等方面。例如软件结构是否满足需求?

结构形态是否合理?层次是否清晰?模块的划分是不是符合优化原则?系统的人机界面、内外部接口、以

及出错处理是不是合理等。

过程设计复审的重点放在模块的具体设计上。例如模块设计能否满足其功能与性能要求?选择算法与数据

结构是否合理,是否符合编程语言的特点?设计描述简单、清晰等。

概要设计复审常用的更审方式是正式及审。

7、软件测试的基本任务是什么?测试与纠错有什么不同?

测试的目的是发现程序错误:测试的任务是通过在计算机上执行程序,暴露程序中潜在的错误。

纠错的目的是定位和纠正错误;纠错的任务是软件故障,保证程序的可靠运行。

通常把一次程序执行需要的测试数据成为一个测试用例,每个测试用例产生一个相应的测试结果,如果它

与期望结果不符,便说明程序中存在错误,需要用纠错来改正。

8.怎样理解下面的话所蕴含的意义:“程序测试只能证明错误的存在,但不能证明错误不存在”、“测试是为

了证明程序有错,而不是证明程序无错”

揭示了测试固有的一个重要性质一一不彻底性。彻底测试就是让被测程序在一切可能的输入情况下全部执

行一遍,又称穷举测试。在实际情况中是根本无法实现的。这就注定了一切实际测试都是不彻底的,当然

也就不能保证测试后的程序不存在遗留的错误。

9、纠错和纠错性维护有哪些异同?

答:纠错的目的是定位和纠正错误;纠错的任务是软件故障,保证程序的可靠运行。

纠借性维护是由于软件测试的不彻底性,任何大型软件交付使月后,都会继续发现潜在的错误,对它们进

行诊断和改正。目的在于纠正在开发期间未能发现的遗留错误。

10、什么是软件危机?为什么会产生软件危机?

答:软件危机是指在计算机软件的开发和维护过程中遇到的一系列严重问题。

(1).软件维护费用急剧上升,直接或胁计算机应用的夸大。

⑵.软件生产技术进步缓慢

11、什么是快速原型法?其快速表现在哪里?

答:首先建立一个能够反映用户主要需求的原型,让川户实际看一看未来系统的概貌,以便判断哪些功能是

符合需要的,哪些方面还需要改进。然后将原型改进,最终建立完全符合用户要求的新系统。它的快速表

现在能够缩短开发周期的语言和工具,能在短时间内提供出成品,但不包括成品中的细节,然后让客户进

行对比。

12、自顶而下渐增测试与日底而上渐增测试各有何优,缺点

答:

①自顶而下渐增测试

优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块

的接口错误.

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

②自底而上渐增测试

优点与缺点和白顶而下渐增测试相反.

13、提高可维护性的方法有哪些

答:提高软件的可维护性,最根本的是使每一开发人员懂得维护的重要性,在各个开发阶段都把减少今后的

维护工作量作为努力的目标。

开发时期注意提供完整和一致的文档和采用现代化的开发方法。

在维护时期更要保持程序的可维护性,使之不受损害或破坏。

14、简述软件测试要经过哪几个步骤,每个步骤与什么文档有关?

测试过程按4个步骤进行;即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测

试)和平行运行。

单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明

书.

集成测试把已测试过的模块组装过来,主要对与设计相关的软件体系结构的构造进行测试.与其相关的文档

是集成测试计划和软件需求说明书.

确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全,

正确.与其相关的文档是确认测试计划和软件需求说明书.

平行运行把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试.与其相关的文

档:用户指南,使用手册等.

15、可复用构件库中有哪几种常见的分类模式?

目前最常用的有3种分类模式。

枚举分类:通过定义一个层次结构来对构件进行分类。构件库中的可及用构件按照某种标准被分成了

若干个大类,而每个大类中的构件再被划分成若干个小类,依此类推,这样就形成了•个构件分类的层次

结构。

刻面分类:一个刻面描述构件某一个方面的特征。刻面分类则是从不同的侧面对构件进行分类,每一

种分类方式称为一个刻面:不同的刻面根据其重要性可以设置不同的优先级。

属性-值分类:为领域中的所有构件定义一组属性,然后赋给这组属性一组值。通过属性,查找构件。

16.在软件工程管理中,如何理解人员-时间权衡定律和Brooks定律?

人员-时间权衡定律:开发工作量与开发时间的4次方成反比。

意味着如果将开发时间适当延长,将显著减少开发工作量。反过来,压缩时间或抢进度只能使开发工

作量急剧增加。在时间允许的情况下,适当减少人员会提高工作效率,降低软件开发成本。

Brooks定律:向一个已经延晚的项目追加开发人员,可能使它完成得更晚。Brooks从另一个角度说明

了“时间和人员不能互换”这一原则,当开发人员以算术级数增长时,人员之间的通信将以几何级数增长,

从而可能导致得不偿失的结果。

软件开发宁可时间长一点,人员少一点,这样可以减少人员之间的通信开销,工作效率会更高。

17、螺旋模型和构建集成模型的异同?

螺旋模型在结合瀑布模型与快速原型法的基础上增加了风险分析,但它并要求每一个增量都是可运行

的程序,在早期的迭代中,发布的增量可以是一个纸上的模型或原型,在以后的迭代中产生更加完善的版

本。构件集成模型利用预先封装好的软件构件来构造应用软件系统,融合螺旋模型的很多特征,支持软件

开发的迭代。

18、设有如下程序流程图根据表中的测试数据回答如下问题:

(1)满足点覆盖的最少测试组合是什么?

(2)满足边覆盖的最少测试组合是什么?

(1)2,3,4

(2)1,2,3,4

19、多模块程序测试的策略是什么?每个阶段与什么文档有关?

测试过程按4个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试

(验收测试)和系统测试。

单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设

计说明书。

集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。与其相关

的文档是集成测试计划和软件需求说明书。

确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否

完全、正确。与其相关的文档是确认测试计划和软件需求说明书。

系统测试把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试.与其相

关的文档:用户指南、使用手册等。

20、类和类之间的结构关系有哪些?并举例说明。

聚集和泛化。聚集表类间的整体与部分的关系。例如一个窗口曰标题、外框和显示区组成。泛化表类间的

一般与特殊的关系。例如动物分为飞鸟和走兽。

21、构件必须具有的哪些特征?

构件应具有的特征:(1)通用性⑵可变性⑶易组装性

22、确定和调整包之间的依赖关系遵循的一般原则?

复用价值较高的包不要依赖复用价值较低的包。包应只依赖于同一层及下一层中的包。

包之间的依赖关系最好不要跨层。不要让包直接依赖包含实现子系统接口的系统元素的包。

23、什么是维护的副作用?有哪几种?

所谓副作用是指因修改软件而造成的错误或其它不希望发生的情况,有以下三种副作用:

(1)修改代码的副作用

(2)修改数据的副作用

(3)文档的副作用

24、2个用例A,B之间要建立依赖关系,如果执行A用例时必须执行B用例,则采用哪种关系?如果执行A

用例时不一定执行B用例,则采用哪种关系?分别画图表示。

如果执行A用例时必须执行B用例,则采用包含关系。如果执行A用例时不一定执行B川例,则采用扩展

关系。

AB

AB

六、综合题

1、描述题(7分)

下面是一个程序流程图,试分别用N-S图表示之,并计算其McCabe复杂度。

评分标准:N-S图中每画正确一个步骤得1分,四个步骤共4分。

对应的N-S图如下

评分标准:答对McCabe复杂度得3分。

McCabe复杂度都为3。

2、根据下列条件使用黑盒法设计测试用例。(12分)

某个程序模块的输入是一个字符串,以字母开头,后面由字母和数字任意组合,字符最长

为8个字符。

解:(一)(1)划分等价类并编号,如下表示:(4分)

输入数据有效等价类无效等价类

以字母开头的字符串不以字母开头的字

以字母开头

(1)符串(2)

后面由字母和由字母和数字构成的字包含字母和数字之

数字任意组合符串(3)外的特殊字符的字

符串(4)

字符最长为8个长度为(1-8)的字符串长度为0(6)

字符(5)大于8的字符串(7)

(2)为合理等价类设计测试用例(1分)

T1234567,预期结果:正常运行,输出为…。覆盖(1)(3)(5)

(3)为不合理等价类设计测试用例(3分)

12345678,预期结果:米告输入错误。覆盖(2)

T123S567,预期结果:表告输入错误。覆盖(4),

空字符串,预期结果:报告输入错误。覆盖(6)

T123456789,预期结果:报告输入错误。覆盖(7)

(二)运用边界值法增加的测试用例(4分)

长度为(1-8)的字符串

长度为0的字符串:己有

长度为1的字符串:T,预期结果:正常运行,输出为…。

长度为2的字符串:T1,预期结果:正常运行,输出为…。

长度为7的字符串:T123456,预期结果:正常运行,输出为…。

长度为8的字符串:T1234567,预期结果:正常运行,输出为…。

长度为9的字符串:T12345678,预期结果:报告输入错误。

3.图书管理系统功能性需求说明如下:(12分)

图书管理系统能够为一定数量的借阅者提供服务。

温馨提示

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

最新文档

评论

0/150

提交评论