背靠背测试
背靠背测试方式是指同一功能分别由两组人员在互不交流的情况执行测试工作,是保证测试质量的有效手段。
程序编译
程序在编译的过程中,包含了词法分析、语法分析和语义分析等阶段
其中词法分析从左到右逐字符读入源程序,识别出一个个单词符号,常见的词法错误有输入的关键字错误等;
语法分析是在词法分析的基础上将单词符号序列分解成各类,诸如“程序”、“语句”、“表达式”等语法单位;语义分析是审查源程序有无语义错误,为代码生成阶段收集类型信息,这个阶段常见的错误有死循环和除数为0。
其中词法错误和语法错误都可以在编译程序时,检查出,而动态语义错误需要运行程序,所以无法在编译程序时检查出,而要等到程序执行时,才能发现
传值与传引用
此题答案选B,按照我的理解是
x = 3 传入t()函数中
a = 8
f(3,8)
进入f()函数中
此时r = x =3 , s = a = 8 带入函数得
x = 7 , s = 21 , r = 14
又因为在C中,
采用传值方式时,是将实际参数的值传递给形式参数,对形式参数值的修改不会影响实际参数。
采用引用方式时,是将实际参数的地址传递给形式参数,对形式参数进行修改,等同于是对实际参数进行修改。
所以t函数中return a+x
因为第一个参数x是传值,所以进入了f函数改变的值也是形参,不会影响实参,所以此时x=3
但是第二个参数 a = 8 进入f()中采用的是传引用的方式,所以等于修改形参的同时对实际参数的也进行了修改(直接对实参的地址进行修改导致实参变化)所以a传入f函数时被修改的值对应的是s,所以s的最终的值与a的值相等,所以a = 21
再看t函数得,a+x = 21+3 =24
基本路径测试法
计算程序环路的复杂性
程序的环路复杂性给出程序基本路径集合中的独立路径条数
确保程序中每个可执行语句至少执行一次所必须测试用例数目的上界
程序环路复杂性的三种计算方法:
1.程序控制流图中的区域数
2.程序控制流图的边数 - 程序控制流图的节点数+2
3.程序控制流图中的判定结点数+1
由此题可见,边-节点数+2 = 6
面向对象分析模型
UML 2.0支持13种图,它们可以分成两大类:结构图和行为图。
结构图包括类图、组合结构图、构件图、部署图、对象图和包图;
行为图包括活动图、交互图、用例图和状态图,其中交互图是顺序图、通信图、交互概览图和时序图的统称。
概念设计说明书
概要设计说明书的评测内容如下:
可追溯性:分析该软件的系统结构、子系统结构,确认该软件设计是否覆盖了所有已确定的软件需求,软件每一成分是否可追溯到某一项需求。
接口:分析软件各部分之间的联系,确认该软件的内部接口与外部接口是否已
经明确定义,模块是否满足高内聚和低祸合的要求,模块作用范围是否在其控
制范围之内。
风险:确认该软件设计在现有技术条件下和预算范围内是否能按时实现。
实用性:确认该软件设计对于需求的解决方案是否实用。
技术清晰度:确认该软件设计是否以一种易于翻译成代码的形式表达。
可维护性:从软件维护的角度出发,确认该软件设计是否考虑了方便未来的维护。
质量:确认该软件设计是否表现出良好的质量特征。
各种选择方案:看是否考虑过其他方案,比较各种选择方案的标准是什么。
限制:评估对该软件的限制是否现实,是否与需求一致。