试 题 库
软件工程专业
1
软件工程导论部分
一、选择题
1.软件产品的开发主要是(研制)。
2.作坊式小团体合作生产方式的时代是( 程序系统)时代。
3.软件工程与计算机科学性质不同,软件工程着重于( 建造软件系统)。 4.将每个模块的控制结构转换成计算机可接受的程序代码是( 编码)阶
段的任务。
5.SA方法用DFD描述( 系统的功能) 。
6.进行需求分析可使用多种工具,但( C )是不适用的。 A. 数据流图(DFD) B. 判定表 C. PAD图 D. 数据字典 7.结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述是常用的说明工具,其中便于对加工出现的组合条件的说明工具是( A )。a.结构化语言;b.判定树;c.判定表。 A. b和c B. a,b和c C. a和c D. a和b 8.软件概要设计结束后得到( 优化后的软件结构图 )。 9.软件设计阶段一般又可分为 ( 概要设计与详细设计 )。 10.软件设计中划分模块的一个准则是(高内聚低耦合)。 11.PDL是软件开发过程中用于(详细设计)阶段的描述工具。 12.下列语言中哪个语言是低级语言( D )
A. PASCAL B.VISUAL BASIC C. C++ D.汇编语言 13.软件测试的目的是( 发现软件错误)。
2
14.软件测试,白盒法通过分析程序的( 内部逻辑)来设计测试用例的。 15.黑盒法是根据程序的( 功能)来设计测试用例的。 16.下面的逻辑测试覆盖中,测试覆盖最弱的是( C )
A.条件覆盖 B.条件组合覆盖 C.语句覆盖 D.条件及判定覆盖 17.把一组具有相似特性的对象组合在一起,称之为(类 )。
18.面向对象的主要特征除对象唯一性、封装、继承外,还有( A ) A、多态性 B、完整性 C、可移植性 D、兼容 19.下列模型属于成本估算方法的有(COCOMO模型) 20.软件生存周期中时间最长的是(维护)阶段。
21.与计算机科学的理论研究不同,软件工程是一门( 工程性 )学科。 22.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的
几个选项中哪个环节出错,对软件的影响最大( C )。 A、详细设计阶段 B、概要设计阶段 C、 需求分析阶段 D、 测试和运行阶段
23. 程序的三种基本控制结构共同特点是只有一个入口和一个出口)。 24.软件工程的出现主要是由于( 软件危机的出现)。
25.在软件工程项目中,不随参与人数的增加而使软件的生产率增加的
主要问题是(参与人员之间的通信困难) 26. SA方法的基本思想是( 自顶向下逐步分解).
27.判定表和判定树是数据流图中用以描述加工的工具,它常描述的对
象是(组合条件)
28.软件需求说明书是软件需求分析阶段的重要文件,下述哪个(些)是
3
其应包含的内容( D ) a.数据描述 b.功能描述 c.模块描述 d.性能描述 A. b B. c和d C. a,b和c D. a,b和d
29.软件结构图中,模块框之间若有直线连接,表示它们之间存在着( 调用)关系。
30.软件设计中一般将用到图形工具,下列哪种(些)可用作设计的图形工具( C)结构图 .实体联系图 c.IPO图 .层次图
A、 a和b B、 c和d C、 a,c,d D、 全部 31. 程序设计语言一般简单来说,可划分为低级语言和高级语言两大类,与高级语言相比,用低级语言开发的程序,具有如下哪种特点( 运行效率高,开发效率低).
32. 下面的叙述哪些是正确的( C )
1)在软件开发过程中,编程作业的代价最高。2)良好的程序设计风格应以缩小程序占用的存储空间和提高程序的运行速度为原则。3)为了提高程序的运行速度,有时采用以存储空间换取运行速度的方法。4)对同一算法,用高级语言编写的程序比用低级语言编写的程序运行速度快。5)COBOL是一种非过程型语言。6)LISP是一种逻辑型程序设计语言。 A、 (1)、(3)、(5) B、 (2)、(3)、(4)C、 (3) D、 (4)、(6) 33、为了提高软件测试的效率,应该(选择发现错误可能性较大的数据
作为测试用例)。
34. 与设计测试用例无关的文档是(项目开发计划)。
35. 使用白箱测试方法时确定测试数据应根据( 程序的内部逻辑)和指
定的覆盖标准。
4
36. 软件部件内部实现与外部可访问性的分离,是指软件的(封装性 )。 37、一个面向对象系统的体系结构通过它的成分对象和对象间的关系确定,与传统的面向数据流的结构化开发方法相比,它具有的优点是(设计稳定) .
38、软件管理的主要职能包括( 人员管理、计划管理,标准化管理、
配置管理)
39、任何项目都必须精心做好项目管理工作,最常用的计划管理工具
是( PERT图)
40. 软件工程方法学目的是:使软件生产规范化和工程化,软件工程
方法得以实施的主要保证是(软件开发工具和软件开发的环境 ) 41. 在下面的软件开发方法中,哪一个对软件设计和开发人员的开发
要求最高( B ) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法
42. 软件开发中常采用的结构化生命周期方法,由于其特征而一般称
其为( 瀑布模型 )
43. 对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流
同父图相应加工的输入、输出数据流(必须一致 )。
44. 软件需求分析阶段的工作,可以分为四个方面:对问题的识别.
分析与综合.编写需求分析文档以及(需求分析评审)
45.在结构化分析方法中,用以表达系统内数据的运动情况的工具有
( 数据字典)
46. 为了提高模块的独立性,模块内部最好是(功能内聚)。
5
47. 面向数据流的设计方法把(控制结构 )映射成软件结构。 48. .数据流图是常用的进行软件需求分析的图形工具,其基本图形符
号是( 加工.数据流.数据存储和外部实体) 49. 软件结构使用的图形工具,一般采用( SC )图。
50. 在面向数据流的软件设计方法中,一般将信息流分为(变换流和事务流)
51. 程序的三种基本控制结构是( 顺序、选择和重复)。 52. 白箱测试方法重视( 测试覆盖率)的度量。
53、软件的集成测试工作最好由( 不属于该软件开发组的软件设计人
员)承担,以提高集成测试的效果。
54. 据国家标准GB8566-8计算机软件开发规定,软件开发和维护划分
为八个阶段,组装测试的计划是在( 概要设计 )阶段完成的? 55. 软件生命周期的最后的一个阶段是(软件维护)
56. McCall提出了表明软件质量的11个质量特性。它们是正确性、可靠性、可使用性、完整性、( 可维护性、灵活性) 、可移植性、可复用性、效率、可测试性、互联性。
57、每个对象可用它自己的一组属性和它可以执行的一组(操作)来
表征。
58、面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以由父亲,下层可以有子类,这种层次结构系统的一个重要性质是(继承性),一个类获得其父亲的全部描述(数据和操作)
6
59、软件开发在需求分析、设计、编码、测试这几个阶段所需不同层
次的技术人员大致是( 高级、中高级、初级、中高级) 60、软件重用的单位是( 软件模块)。
61、下列不属于软件工程方法学三要素的是( D ): A、方法 B、工具 C、过程 D、操作
62、软件开发中大约要付出( 40 )%的工作量进行测试和排错。 63、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 (相互补充 ) 64、系统分析员是(用户和软件人员的中间人)
65、结构化分析SA方法以数据流图、(数据字典)和加工说明等描述工具,即用直观的图和简洁的语言来描述软系统模型。
66、制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是(规划与调度)
67、在E-R 模型中,包含以下基本成分(实体、联系、属性)。 68、结构设计是一种应用最广泛的系统设计方法,是以(数据流)为基础、自顶向下、逐步求精和模块化的过程。
69、如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为(时间内聚)。
70、初步用户手册在( 需求分析)阶段编写。
71、在软件结构化设计中,好的软件结构设计应该力求做到(顶层扇出较高,中间层扇出较少,底层模块高扇入)。
72、结构图(SC)和层次方框图是不同的,前者 (描述程序的层次特性)。
7
73、软件详细设计主要采用的方法是(结构化程序设计)。 74、程序的三种基本控制结构是(顺序、选择和循环)
75、软件设计将涉及软件的构造、过程和模块的设计,其中软件过程是指(模块的操作细节)
76、软件测试的手段有多种,通过人工来评审文档或程序,借以发现其中错误,该手段是(静态测试)。
77、黑盒测试在设计测试用例时,主要需要研究(需求规格说明与概要设计说明) 。
78、在整个软件维护阶段所花费的全部工作中,(完善性维护) 所占比例最大。
79、下列哪个改变不属于软件维护中的副作用?( C ) A.修改代码 B.修改数据 C.修改需求分析 D.修改文档
80.因计算机硬件和软件环境的变化而作出的修改软件的过程称为(完善性维护 ).
81.作坊式小团体合作生产方式的时代是( 程序系统 )时代。
82.软件需求分析阶段的工作,可以分为以下4个方面:对问题的识别、
分析与综合、编写需求分析文档以及(需求分析评审)。
83.在结构化分析方法中,用以表达系统内数据的运动情况的工具有
(数据流图)。
84.若软件是给许多客户使用的,大多数软件厂商要使用几种测试过程来发现那些可能只有最终用户才能发现的错误,(α)测试是由一个用户在开发者的场所来进行的.测试的目的是寻找错误的原因并改正之。 85.来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件
8
称为软件开发工具,通常也称为(CASE)工具。
86. 螺旋模型综合了(瀑布模型和演化模型)的优点,增加了风险分析。 87.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后( 获
得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型)。
88. 在软件需求规范中,下述哪些要求可以归类为过程要求( A ) A. 执行要求 B. 效率要求 C. 可靠性要求 D. 可移植性要求 89. 数据流图是常用的进行软件需求分析的图形工具,其基本图形符
号是(加工.数据流.数据存储和外部实体) 90. 设计软件结构一般不确定( 模块内的局部数据)。
91. 模块的独立性是由内聚性和耦合性来度量的,其中内聚性是( 模
块的功能强度)
92. Jackson方法实现从(数据结构)导出( 程序结构 )。 93.下列语言中哪个语言是低级语言( D )
A、 PASCAL B、 VISUAL BASIC C、 C++ D、 汇编语言 94、PAD图的控制执行流程为( 自上而下、从左到右)
95. 程序设计语言的心理特性在语言中表现不应包括(保密性 )。 96. 在软件工程中,白箱测试方法可用于测试程序的内部结构。此方
法将程序可作为(路径的集合)
97.集成测试的主要方法有两个,一个是渐增式测试方法_一个是非渐
增式测试方法
98、软件维护工作的最主要部分是(完善性维护)
9
99、软件产品质量是生产者和用户都十分关心的问题,质量管理只看到产品的质量,近年来质量管理向( 过程质量的控制)发展,重要的基本假设是过程的质量直接影响产品的质量。
100.结构分析方法就是面向(数据流)自顶向下逐步求精进行需求分析的方法。 软件是一种(逻辑)产品。
102. 瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(运行阶段)。
103. 结构化分析方法是一种预先严格定义需求的方法,它在实施时强
调的是分析对象的(数据流 )
104. 在软件的可行性研究中,可以从不同的角度对软件的可行性进行
研究,其中是从软件的功能可行性角度考虑的是( 技术可行性) 105. 需求规格说明书的内容还应包括对( 算法的详细过程)描述。 106、系统测试是将软件系统与硬件、外设和网络等其他因素结合,
对整个软件系统进行测试。( 路径测试)不是系统测试 的内容。 107、在结构化分析方法中,数据字典是重要的文档。对加工的描述
是数据字典的组成内容之一,常用的加工描述方法(有结构化语言、判定树和判定表)。
108、项目管理工具中,将网络方法用于工作计划安排的评审和检查
的是(Gantt图)。
109、软件设计的主要任务是设计软件的结构、过程和模块,其中软
10
件结构设计的主要任务是要确定(模块间的组成关系)。 110、下述任务中,不属于软件工程需求分析阶段的是( D ) 。 A.分析软件系统的数据要求 B.确定软件系统的功能需求 C.确定软件系统的性能要求 D.确定软件系统的运行平台 111. 加工是对数据流图中不能再分解的基本加工的精确说明,下述哪
个是加工的最核心( 加工逻辑)
112. 为了提高模块的独立性,模块内部最好是( 功能内聚)。 113. PDL是软件开发过程中用于(详细设计 )阶段的描述工具。 114、适合在互联网上编写程序可供不同平台上运行的面向对象程序
设计语言是( JAVA )
115. 软件测试是软件质量保证的主要手段之一,测试的费用已超过
(软件开发费用 )的30%以上,因此提高测试的有效性非常重要。 116. 在软件测试中,逻辑覆盖标准主要用于(白箱测试方法) 117. 在软件维护工作中进行的最少的部分是(预防性维护) 118、火车是一种陆上交通工具,火车和陆上交通工具之间的关系是
( 一般具体)关系。
119、动态模型的描述工具是(状态图)。
120、McCall提出的软件质量的11个质量特性分为三组,下面哪一个不
属于这三组(产品需求)
121.瀑布模型的存在问题是(缺乏灵活性)
122.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(软件危机 )
11
123.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是(数据、标记、控制、公共)
124.在SD方法中全面指导模块划分的最重要的原则是(模块独立性) 125在设计测试用例,(等价类划分)是用得最多的一种黑盒测试方法。 126 需求分析最终结果是产生(项目开发计划)。
127 Jackson图中,模块框之间若有直线连接,表示它们之间存在( B )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 128 软件详细设计的主要任务是确定每个模块的( C )。
A. 功能 B. 外部接口 C. 算法和使用的数据结构 D. 编程 129.为了提高软件的可维护性,在编码阶段应注意(D) A.保存测试用例和数据 C.文档的副作用
B.提高模块的独立性 D.养成好的程序设计风格
130.在多层次的结构图中,其模块的层次数称为结构图的(深度)。 131.设年利率为i,现存入p元,若计复利,n年后可得钱数为( B ) A.p﹡(1+i﹡n) B.p﹡(i+1)nC.p﹡(1+i)﹡n D.p﹡(i+n)
132.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是(状态图)。
133. 对象实现了数据和操作的结合,使数据和操作(封装)于对象的统
一体中。
134.具有风险分析的软件生存周期模型是(螺旋模型 ) 135.软件生命周期中所花费用最多的阶段是(软件维护)
12
136. 在详细设计阶段,经常采用的工具有(PAD)。
137.模块(作用域)定义为受该模块内一个判断影响所有模块集合。 138.指出PDL是下列哪种语言(伪码)。
139.在对数据流的分析中,主要是找到中心变换,这是从(数据流
图)导出结构图的关键。
140. 研究开发所需要的成本和资源是属于可行性研究中的(经济可行性)研究的一方面。
141. 研究开发所需要的成本和资源是属于可行性研究中的(经济可行性)研究的一方面。
142.快速原型模型的主要特点之一是(及早提供工作软件) 143.模块的内聚性最低的是(偶然内聚 )
144.通过(功能分解)可以完成数据流图的细化。 145.Jackson方法是面向(数据结构)的设计方法。
146.在考察系统的一些涉及时序和改变的状态时,要用对象-行为模型来表示。动态模型着重于系统的控制逻辑,它包括三个图:一个是事件轨迹图和事件流图,另一个是(状态转换图)。 二、填空题:
1、软件是 数据 、 计算机程序 及其说明程序的 各种文档 。 2、概要设计主要是把各项 功能需求 转换成系统的 体系结构 。 3、面向对象开发方法包括 OOA 、OOD 、 OOP 三部分。 4、结构化设计中以数据流图为基础的两种具体分析设计方法是变换分析、事物分析设计。
5、在单元测试时,需要为被测模块设计 驱动模块 和 桩模块 。 6、CMM把软件过程从无序到有序的进化分成5个阶段,排序而形成5个逐层提高的等级,分别是初始级、可重复级 、已定义级、 已管理
13
级 和可优化级。
7.子类自动共享父类的 属性 和 操作 的机制称为继承。
8. 软件工程管理的具体内容包括对开发人员、组织机构、 用户 、 文档资料 等方面的管理。
9、可行性研究的三个方面是 技术可行性、社会可行性和经济可行性。 10、在软件概要设计阶段,建立软件结构后,还应为每个模块写一份 处理说明和接口说明。
11、在画分层的DFD时,父图与子图的输入输出数据流要平衡。 12、在详细设计阶段,除了对模块内的算法进行设计,还应对模块内的数据结构进行设计。 对象的抽象是类。
14. 基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。因此,基线可以作为项目的一个检查点。 15. 软件工程包括软件开发技术和软件工程管理两大部分内容。 16、开发过程管理包括项目计划、控制和任务管理等。
17、CASE是多年来在软件开发管理、软件开发方法、软件开发环境和软件工具等方面研究和发展的产物。
18、数据字典中有四类条目,分别是数据流 、数据项、 数据存储 、基本加工。
19、用于描述基本加工的小说明的三种描述工具是结构化语言 、 判定表 、 判定树_。
20、子类只继承一个父类的属性和操作,这称为单重继承。 21、 McCabe复杂性度量又称环路度量。
14
22、喷泉模型是一种以用户需求为动力,以对象为驱动的模型。 23、Jackson图不仅可表示程序结构,还可表示数据结构。
24、详细设计的任务是确定每个模块的内部特性,即模块的 算法 和 数据结构 。
25、UML提供的构建系统动态模型的机制有动态视图(包括顺序图和协作图)、静态视图、功能视图。
26、软件质量管理由软件质量保证、软件质量规划和 软件质量控制 三方面活动组成。
27、用等价类划分法设计一个测试用例时,使其覆盖尽可能多的尚未被覆盖的合理等价类; 覆盖一个不合理等价类。
28、需求分析阶段产生的最重要的文档是需求规格说明书_。 29、两个模块都使用同一张表,模块的这种耦合称为公共耦合。 30、被测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手段称为静态测试。
31、采用手工方法开发软件只有程序而无文档,维护困难,这是一种非结构化维护。
32、结构化方法是一种面向数据流的开发方法。由结构化分析、结构化方法、结构化程序设计构成。
33、 对象之间进行通信的构造叫做消息。
34、 按软件服务对象的范围可以把软件划分为项目软件和产品软件。 35、瀑布模型将软件生命期划分为若干阶段,各个阶段之间是通过 文档实现过渡的。
15
36、概要设计主要是把各项功能需求转换成系统的体系结构。 37、详细设计的任务是确定每个模块的内部特性,即模块的数据结构 和算法。
38、结构化程序设计方法提倡开发人员的组织形式是主程序员组。 40、类具有操作,它是对象行为 的抽象。 41、产品管理包括版本管理和配置管理。
42、集成测试中的具体方法是渐增式和非渐增式测试方法。 43、增量模型适合软件需求不明确、设计方案有一定风险的软件项目。 45、可行性研究实质上是要在较高层次上以较抽象的方式进行需求分析和设计的过程。
46、衡量模块独立性的两个定性标准是耦合性与内聚性。 47、Jackson方法是一种面向数据结构的设计方法。 49、继承性是子类自动共享其父类的数据结构和方法机制。 50、在面向对象方法中,人们常用状态图描述类中对象的动态行为。 51、规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为容错软件。
52.软件工程包括3个要素,即方法、工具、过程。
53.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、可行性研究,需求分析,总体设计, 详细设计 ,_编码_,测试,维护活动,可以将这些活动以适当方式分配到不同阶段去完成
54.数据流图中的箭头表数据。软件结构图中的箭头方向表模块调用。
16
55.可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
56.数据流图仅反映系统必须完成的逻辑功能,它是一种功能模型。 三、简答题
1、什么是软件工程?它目标和内容是什么?
软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。 软件工程内容:包括开发技术和开发管理两个方面。
2、软件开发中有哪几种过程模型?哪些适用面向对象的软件开发? 软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。其中喷泉模型、统一软件过程适用于面向对象的软件开发。
4、什么是软件概要设计?该阶段的基本任务是什么?
把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。
称为概要设计或结构设计。
基本任务:⑴设计软件系统结构⑵进行数据结构及数据库的设计⑶编写概要设计的文档 ⑷评审
6、软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系?(答案不是很好,书本上的V模型,画出V模型)
软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测
17
试。单元测试对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计文档。集成测试是为了检查与设计相关的软件体系结构的有关问题,也就是检查概要设计是否合理有效。确认测试主要是检查已实现的软件是否满足需求规格说明书中确定了的各种需求。系统测试是把已确认的软件与其他系统元素(如硬件、其他支持软件、数据、人工等)结合在一起进行测试。以确定软件是否可以支付使用。
7、什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。
8、衡量模块独立性的两个标准是什么?各表示什么含义? 内聚和耦合。 内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。
10、什么是需求分析?需求分析阶段的基本任务是什么?
需求分析:开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格说明的过程。基本任务:⑴问题识别⑵分析与综合,导出软件的逻辑模型⑶编写文档
18
12、单元测试有哪些内容?单元测试主要针对模块的以下五个基本特征进行测试:(1)模块接口 (2)局部数据结构 (3)重要的执行路径(4)错误处理(5)边界条件
14、软件设计的基本原理包括哪些内容?⑴模块化:模块是软件的组成部分,是具有独立功能且可命名的一段程序,所有模块组成整体,可以满足问题的要求。⑵抽象:认识复杂现象过程所使用权的工具,只考虑事物本质的共同特性,忽略细节和其它因素。通过抽象确定组成软件的过程实体。 ⑶信息隐蔽:将模块实现自身功能的细节与数据\"隐蔽\"起来。模块间仅交换为完成系统功能所必须的信息。⑷模块独立性:每个模块只完成系统要求的独立的子功能。 21、说明面向对象的特征?(答案错误,自己去整理答案) 面向对象的特征是:(1)对象唯一性。每个对象都有自身唯一的标识,在对象生存期中,其标识不变,不同的对象不能有不同的标识。 (2)分类性。是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类 (3)继承性。是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。 (4)多态性。是指相同的操作或函数过程可以作用于多种类型的对象上并获得不同的结果。
24、简述黑盒测试和白盒测试有何区别,黑盒测试有哪些常用方法? 黑盒测试和白盒测试的区别:前者基于功能,后者基于结构;黑盒测试常用方法有:边界值、等价类、因果图、错误推测法等。 26、CMM全称是什么?分为哪几个级别? CMM全称是软件能力成熟
度模型;从无序到有序的进化分成5个级别,分别为:1 初始级;
19
2 可重复级;3 已定义级;4 已管理级;5 优化级。 28、软件生命周期划分为哪几个阶段?
软件生命周期分为三个时期八个阶段:软件定义:问题定义、可行性研究;软件开发:需求分析、概要设计、详细设计、编码、测试;软件运行:软件维护 四、应用题
1.某培训中心要研制一个计算机管理系统。它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。要求:1)对以上问题画出数据流程图。2)画出该培训管理的软件结构图。 解答:(1)数据流图
20
(2)软件体系结构
2.建立窗口系统的对象模型,问题陈述如下:“窗口分为对话窗、图形窗、滚动窗三种。对话窗中有若干对话项,由唯一的项名字来确定;对话项分为按钮、选择项和正文项三种,选择项中有若干选择项入口。图形窗中有若干形状元素,形状元素分为一维形状和二维形状。一维形状又分为直线、圆弧、折线;二维形状分为圆、椭圆、矩形、多边形,其中折线与多边形由若干有序顶点组成。正文窗是滚动窗的一种,而图形滚动窗既是图形窗又是滚动窗。” 解答:(泛化关系)
3.假设某航空公司规定,乘客可以免费托运行李的重量不超过30公斤。当
21
行李的重量超出30公斤时 ,对一般舱的国内乘客超重部分每公斤收费4元,对头等舱的国内乘客超重部分每公斤收费6元。对国外乘客 超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。试画出相应判定表。
4.下图描述了某个子程序的处理流程,根据判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等五种覆盖标准,从供选择的答案中分别找出满足相应标准的最小的测试数据组。
(1) a=5 b=1 (2) a=5 b=-1 (3) a=5 b=1 (4) a=5 b=1
a=-5 b=-1 a=0 b=-1 (5) a=5 b=-1 (6) a=5 b=1 a=-5 b=1 a=0 b=0 a=-5 b=-1 a=-5 b=-1 (7) a=5 b=1 (8) a=5 b=1 a=0 b=1 a=0 b=-1 a=0 b=-1 a=-5 b=1 a=-5 b=1 a=-5 b=-1 流程图如下:
22
解答:达到判定覆盖为(4);达到条件覆盖为(3);达到判定/条件覆盖为(6);达到条件组合覆盖为(8);达到路径覆盖为(7)。
7.某银行计算机储蓄系统的工作流程大致如下:储户填写的存款单或取款单由业务员键入系统,如果是存款则系统记录存款人的姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可选)等信息,并印出存款单给储户;如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并画出系统的E-R图。
解答:DFD图:
ER图:
23
8.请对下列子程序进行测试:
procedure example(y,z: real; var x: real) begin if (y>1) and (z=0) then x:=x/y; if (y=2) or (x=l) then x:=x+l; end.
该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。 要求:(1)画出程序流程图。(2)依据条件组合覆盖标准设计测试用例。 (1)程序流程图
(2)条件组合覆盖设计测试用例① y=2, z=0, x=4; ② y=2, z=1, x=1; ③ y=1, z=0, x=2; ④ y=1, z=1, x=1.
9.自学考试报名过程中有个“记录报名单”的加工。该加工主要是根据报名表(姓名、 性别、身份证号、课程名)和开考课程(课程名、开考时间)、经校核,编号、填写、输出准考证给报 名者, 同时记录到考生名册中(准考证号、姓名、课程)。请绘制该加工的DFD图,并写出数据词典中的数据流条目。解答:(1)DFD图:
24
(2)数据流词典
报名单 = 姓名 + 性别 + 身份证号 + 课程名 开考课程 = 课程名 + 开考时间 考生名册 = 准考证号 + 姓名 + 课程
12.某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。请用等价类划分法设计测试用例。解答;划分等价类:
计测试用例:
17.某校制定了教师的讲课课时津贴标准。对于各种性质的讲座,无论教师是什么职称,每课时津贴一律是50元;而对于一般的授课,
25
则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。请用判定表描述上述问题。 解答:判定表:
教授 副教授 讲师 助教 讲座 50 30 25 20 15 1 T ╳ 2 T F F F F ╳ 3 F T F F F ╳ 4 F F T F F ╳ 5 F F F T F ╳
26
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sceh.cn 版权所有 湘ICP备2023017654号-4
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务