【软考软件评测师】2018年下案例分析历年真题

news/2025/3/19 23:42:30/

【软考软件评测师】2018年下案例分析历年真题

2018下案例分析历年真题

    • 【软考软件评测师】2018年下案例分析历年真题
      • 2018下案例分析历年真题第一题(15分)
      • 2018下案例分析历年真题第二题(20分)
      • 2018下案例分析历年真题第三题(20分)
      • 2018下案例分析历年真题第四题(20分)
      • 2018下案例分析历年真题第五题(20分)

2018下案例分析历年真题第一题(15分)

第一题
在这里插入图片描述
【问题1】(3分)
请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。
【问题2】(8分)
请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
【问题3】(4分)
请给出问题2中控制流图的线性无关路径。

【问题1标准答案】
i<ncycle;
i>=ncycle;
j<cyclelen;
j>=cyclelen;
pos>=panonopt;
pos<panonopt;
【问题2标准答案】
在这里插入图片描述
V(g)=4
【问题3标准答案】
1、2、8
1、2、3、4、2…
1、2、3、4、5、6、4…
1、2、3、4、5、7、4…

【解题思路】
问题一求判定覆盖,应该先找出涉及判定相关的语句。三个判定语句,判定是与否算上的话,所需的逻辑条件就是6个。
控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。
控制流程图的环路复杂性 V(G)等于:
(1)控制流程图中的区域个数。
(2)边数-结点数+2。
(3)判定数+1。
V(g)=4
线性无关路径是指包括一组以前没有处理的语句或条件的一条路径。从控制流图来看,一条线性无关路径是至少包含有一条在其他线性无关路径中从未有过的边的路径:

2018下案例分析历年真题第二题(20分)

某连锁酒店集团实行积分奖励计划,会员每次入住集团旗下酒店均可以获得一定积分,积分由欢迎积分加消费积分构成。其中欢迎积分跟酒店等级有关,具体标准如表2-1所示;消费积分跟每次入住消费金额有关,具体标准为每消费1元获得2积分(不足1元的部分不给分)。此外,集团会员分为优先会员、金会员、白金会员三个级别,金会员和白金会员在入住酒店时可获得消费积分的额外奖励,奖励规则如表2-2所示。
表2-1 集团不同等级酒店的欢迎积分标准

表2-2 额外积分奖励规则
在这里插入图片描述
该酒店集团开发了一个程序来计算会员每次入住后所累积的积分,程序的输入包括会员级别L、酒店等级C和消费金额A(单位:元),程序的输出为本次积分S。其中,L为单个字母且大小写不敏感,C为取值1到6的整数,A为正浮点数且最多保留两位小数,S为整数。
【问题1】(7分)
采用等价类划分法对该程序进行测试,等价类表如表2-3所示,请补充表2-3中空(1)-(7)。
表2-3 等价类
在这里插入图片描述
【问题2】(13分)
根据以上等价类表设计的测试用例如下表所示,请补充表2-4中空(1)-(13)。
表2-4 测试用例
在这里插入图片描述

【问题1我的解答】
1)P
2)1
3)4,5
4)两位小数的正浮点数
5)单个字母(MGP之外)
6)整数0
7)负符点数
【问题2我的解答】
1)100+2100=300
2)(550-250)/1.5
2=100
3)3,6,8
4)x+10021.0=1000;x=800,酒店等级6
5)非字母
6)非单个字母
7)N/A
8)非整数
9)1,8,13
10)大于6的整数
11)非浮点数
12)负的浮点数
13)多于两位小数的浮点数
【问题1标准答案】
1.P
2.1
3.4、5
4.最多带2位小数的正浮点数
5.MGP以外的单个字母
6.小于1的整数
7.最多两位小数的负浮点数

等价类划分原则:
在输入条件规定了取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类
在输入条件规定了输入值得集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类
在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类
在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确定n个有效等价类和一个无效等价类在规定了输入数据必须遵守的规则的情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)
在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类
本题中:
会员等级L为单个字母且大小写不敏感:结合表2-2,则有效等价类为M、G、P;无效等价类为非字母、非单个字母、MGP以外的单个字母;所以1. 处填写P;5. 处填写MGP以外的单个字母
酒店等级C为1~6的整数,结合表2-1,则有效等价类为 1、(2、3)、(4、5)、6;无效等价类为非整数、小于1的整数、大于6的整数;所以2. 处填写1,3. 处填写4、5,6. 处填写小于1的整数
消费金额为正浮点数且最多保留两位小数,则有效等价类为最多带2位小数的正浮点数;无效等价类为非浮点数,多余两位小数的浮点数、最多两位小数的负浮点数;所以7. 处填写最多两位小数的负浮点数
【问题2标准答案】

  1. 300
  2. 100
  3. 3,6,8
  4. 6
  5. 1(非字母)
  6. FF(非单个字母)
  7. N/A
  8. 2.3(非整数)
  9. 1,13,8
  10. 7(大于6的整数)
  11. a(非浮点数)
  12. -100.12(最多带两位小数的负浮点数)
  13. 100.123(超过两位小数的正浮点数)

2018下案例分析历年真题第三题(20分)

某公司欲开发一套基于Web的房屋中介系统,以有效管理房源和客户,提升成交效率。该系统的主要功能是:
(1)房源管理。员工或客户对客户拟出售/出租的意向房进行登记和管理。
(2)客户管理。员工对客户信息进行管理,支持客户交互。
(3)房源推荐。根据客户的需求和房源情况,进行房源推荐。
(4)交易管理。对租售客户双方进行交易管理,收取中介费,更改客户状态。
【问题1】(6分)
系统前端采用HTML5实现,以使用户可以通过电脑和不同移动设备的浏览器进行访问。请设计兼容性测试矩阵,对系统浏览器兼容性进行测试。
【问题2】(8分)
客户交易时,前端采用表单提交价格(正整数,单位:元)和中介费比例(0到1之间的小数,保留小数点后2位),针对这一功能设计4个测试用例。
**【问题3】(6分) **
采用性能测试工具在对系统性能测试时,采用Apdex(应用性能指数)对用户使用该系统的性能满意度进行度量,系统需要满足的Apdex指数为0.85以上。
Apdex量化时,对应的用户满意度分为三个区间,通过响应时间阈值(Threshold)T来划分,Apdex的用户满意度区间如下:
满意:(0,T],让用户感到很愉快
容忍: (T,4T],慢了一点,但还可以接受,继续这一应用过程
失望:高于4T,太慢了,受不了,用户决定放弃这个应用
Apdex的计算入如下:
Apdex= (满意的样本数+容忍的样本数/2) /总样本数
针对用户功能,本系统设定T=2秒,记录响应时间,统计样本数量,2秒以下记录数4000,2~8秒记录数1000,大于8秒500。
请计算本系统的Apdex指数,并说明本系统是否到达要求。

【问题1标准答案】
在这里插入图片描述
【问题2标准答案】
10000,0.12(整数,0~1之间的小数)
1000.99,0.12(非整数,0~1之间的小数)
10000,1(整数,非小数)
10000,2.12(整数,不在0~1之间的小数)
【问题3标准答案】
不满足要求:Apdex=(4000+1000/2)/(4000+1000+500)=0.82,小于0.85的要求值

2018下案例分析历年真题第四题(20分)

某软件的积分计算模块每天定时根据用户发布的文章数、文章阅读数来统计用户所获取的积分,用户分为普通用户和专家用户,两类用户具有不同的积分系数。
图4-1是该模块的类图,图中属性和操作前的“+”、“#”和“-”分别表示公有成员、保护成员和私有成员。
在这里插入图片描述
图4-1类图
其中:
(1)类Expert重新实现了类User的方法calPoints();
(2)方法calPoints()根据每个用户每天的文章数(articleNum)、文章阅读数(readNum)来计算当天的积分;
(3)类System中的方法statPoints()中首先调用了该类的方法load(),获取本系统用户列表,然后调用了类User中的方法calPoints()。
现拟采用面向对象的方法进行测试。
【问题1】(4分)
(1)图4-1所示的类图中,类System和User之间是什么关系?
(2)类Expert重新实现了类User的方法calPoints(),这是面向对象的什么机制?
【问题2】(6分)
类Expert中的方法calPoints()和getPoints()是否需要重新测试?
【问题3】(10分)
(1)请结合题干说明中的描述,给出测试类User方法calPoints()时的测试序列。
(2)从面向对象多态特性考虑,测试类System中方法statPoints()时应注意什么?
(3)请给出图4-1中各个类的测试顺序

【问题1我的解答】
System类中保存着User的各个实体。他们之间是关联关系中的聚合关系
类Expert重新实现了类User的方法calPoints(),这是面向对象的重载的机制。
【问题1标准答案】
1、关联关系
2、多态
【问题2我的解答】
类Expert中的方法calPoints()需要重新测试;
getPoints()不需要重新测试
【问题2标准答案】
calpoints()需要重新测试
gepoints()无须重新测试
【问题3我的解答】
1)先测试子类的callpoint,然后测试User的CallPoint;
2)应该注意调用statpoint的时候要先get point,不同的多态可能会调用不同的point;
先测试Expert类,然后测试User类,最后测试System类。
【问题3标准答案】
1、users()à setArticlenum()à setReadNum()à calpoints()
2、只需要在原有的测试分析和基础上增加对测试用例中输入数据的类型的考虑;先测试基类,然后再分别依据输入数据设计不同的测试用例。要注意User中calpoints()和Expert中calpoints()的分别调用。
3、load()à users()à setArticlenum()à setReadNum()à User.calpoints()àexpert. calpoints()à statPoints()或者先测试User类和expert类,然测试load(),最后StatPoints。

2018下案例分析历年真题第五题(20分)

某智能家居系统软件设计中,家庭内网节点软件设计包括协调器软件、现场采集/执行器(室内温湿度采集节点、模拟台灯控制节点、模拟雨水窗户监控节点、模拟空调控制节点和火灾监测节点)的软件设计。软件功能组成如图5-1所示。
在这里插入图片描述
图5-1 软件功能组成图
整个系统中,协调器是整个家庭内网的核心和起点,负责管理各个节点设备与PC网关的信息和控制指令的传输。温湿度采集终端将传感器的数据以点播的形式发送给协调器,其他采集/控制节点以广播的形式与协调器进行数据的交换,协调器和PC机采用串口通信协议。协调器软件主要完成以下功能:
(1)创建信道,组建网络;如果失败,则继续创建;
(2)组建网络成功,则进行各层事件扫描;
(3)如果检测到应用层有事件,则转第(4)步,否则反复扫描各层事件;
(4)判断数据类型, 如果是室内环境数据,则经串口发送到网关;如果是控制指令,则向控制节点发送控制指令;如果前面两者均不是,则不处理;
(5)继续扫描各层事件。
【问题1】(4分)
在本软件开发过程中,开发人员使用了基于模型的嵌入式代码生成技术,目前对模型验证最主要的方法是(1)。通过此方法验证后,利用此验证结果可对模型的覆盖率进行分析,模型的覆盖率类型一般包括(2)(至少写出两种类型)。
(1)备选项:
A.评审 B.分析 C.仿真 D.测试
【问题2】(10 分)
为了测试此软件功能,测试人员设计了表5-1所示的测试用例,请填写该表中的空(1) ~ (5)。
表5-1 测试用例
在这里插入图片描述
【问题3】
(6 分)
覆盖率是度量测试完整性和测试有效性的一个指标。在嵌入式软件白盒测试过程中,通常以语句覆盖率、条件覆盖率和MC/DC覆盖率作为度量指标。
在实现第4条功能时,设计人员采用了下列算法:
if (( 数据有效TRUE) && (数据类型室内环境数据))
{ 数据经串口发送到网关; }
if ((数据有效TRUE) && ( 数据类型控制指令))
{ 向控制节点发送控制指令; }
请指出对上述算法达到100%语句覆盖、100%条件覆盖和100%MC/DC覆盖所需的最少测试用例数目,并填写在表5-2的空(1) ~ (3)中。
表5-2 测试覆盖用例统计表
在这里插入图片描述

【问题1我的解答】(4分)
A.评审
语句覆盖和条件覆盖
【问题1标准答案】
对模型采取的验证方法包括评审、分析和仿真。
评审和分析都是静态的验证方法,而仿真是属于动态验证方法。
通过动态仿真模型,可以发现模型动态运行过程中的一些问题。仿真完成后,可以根据动态仿真的结果分析模型的覆盖率,而静态验证方法评审和分析的结果就不能作为模型覆盖率分析的基础。所以问题1的模型验证最主要的方法是仿真
模型的覆盖率类型:条件、判定、MC/DC
【问题2我的解答】
1)创建新道
2)室内温湿度数据
3)将火宅检测数据发送到网关
4)协调器软件
5)模拟空调控制指令
【问题2标准答案】
1.各层扫描
2.室内环境数据
3.模拟雨水窗户监控节点发送控制指令
4.台灯
5.空调控制指令
【问题3我的解答】
1)2
2)4
3)8
【问题3标准答案】
2
2
4
本题中两个if语句为顺序结构,当第1组数据类型为室内环境为真时,第2组数据类型为控制指令就会出现假。
对于语句覆盖,选择 :数据类型有效为真和一个数据类型为室内环境;数据类型有效为真和一个数据类型为控制指令。
条件覆盖,选择 :数据类型有效为真和一个数据类型为室内环境为真;数据类型有效为假和一个数据类型为控制指令为真;
MC/DC, 1个数据有效条件为假并1个数据类型等于室内环境数据 , 1个数据有效条件为假并1个数据类型等于控制指令,数据类型有效为真并1个数据类型等于室内环境数据,数据类型有效为真并1个数据类型等于控制指令,所以参考答案为4。


http://www.ppmy.cn/news/903980.html

相关文章

GARP和GVRP的简介

文章目录 1.简介及其应用2.封包结构、类型和差异3.属性注册和注销的过程4.三个定时器及其作用5.收到event的行为6.两个状态机&#xff08;Applicant和Register&#xff09;7.三种注册模式Normal文章说明 1.简介及其应用 GARP(General Attribute Register Protocol)&#xff0c…

R语言作图:坐标轴设置

要绘制一张赏心悦目的统计图表&#xff0c;坐标轴的设置至关重要。在R语言底层作图中&#xff0c;对坐标轴的调整主要通过调整plot函数、axis函数和title函数的一系列参数完成。 plot(x,y, ...) axis(side,at NULL, labels TRUE, tick TRUE, line NA, pos NA, outer FAL…

pnpm:简介

一、概念 performant npm &#xff0c;意味“高性能的 npm”。pnpm由npm/yarn衍生而来&#xff0c;解决了npm/yarn内部潜在的bug&#xff0c;极大的优化了性能&#xff0c;扩展了使用场景。被誉为“最先进的包管理工具” 二、特点&#xff1a; 速度快、节约磁盘空间、支持mo…

PMC简介

一、PMC介绍 1.1、PMC含义 PMC Production Material Control&#xff08;生产及物料控制&#xff09;&#xff0c; 通常分为两部分&#xff1a; 1、PC 生产控制 或生产管制&#xff0c; 职能是生产的计划与生产的进度控制。 2、MC 物料控制 俗称物控&#xff0c; 职能是物料…

GaitSet学习笔记(不包括三元数损失,仅含主干网络)

论文 1 Introduction 1.1 旧方法 ​ ① 将步态轮廓压缩为一张图&#xff08;损失了时序信息与细粒度系信息&#xff09; ​ ② 直接从原始步态轮廓序列中提取特征&#xff08;极易受到外部条件影响&#xff09; ​ 1.2 我们提出的方法 ​ 步态序列可以看做一个周期&…

英国24所顶尖大学撤销禁令,更新AI使用规定!

自从ChatGPT展现了其高超的AI技术后&#xff0c;备受全球年轻人的喜爱。ChatGPT功能多样化&#xff0c;可以节省查阅复杂文献的时间、编写简单的Python代码、辅助学生理解知识点... 同时&#xff0c;ChatGPT引发的学术不诚信问题也让各大院校头疼不已。 连续数月以来&#xff…

什么是pnpm

什么是 pnpm ? pnpm 的官方文档是这样说的: Fast, disk space efficient package manager 因此&#xff0c;pnpm 本质上就是一个包管理器&#xff0c;这一点跟 npm/yarn 没有区别&#xff0c;但它作为杀手锏的两个优势在于: 包安装速度极快&#xff1b;磁盘空间利用非常高效…

pnpm简介

pnpm简介 pnpm是什么 和npm&#xff0c;yarn一样&#xff0c;pnpm是一个包管理工具。不一样的是&#xff0c;pnpm解决了npm和yarn一直都没有解决的痛点。在许多方面比npm和yarn更优秀。 pnpm对比npm/yarn的优点 更快速的依赖下载更高效的利用磁盘空间更优秀的依赖管理 更快…