列表

详情


阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】  
智能家居系统以消费者的使用习惯为依据,利用信息系统和自动化控制系统实现人与家用设备之间的信息交换,也就是说,智能家居是对家庭环境中的各个子系统(家电、水电、窗帘、视频监控、服务机器人等)进行互通控制的一套体系。图1-1为某单位设计的以ZigBee、WiFi及GSM为基础构建的集智能控制、安全监控为一体的智能家居系统示意图,依次是:家庭内部以ZigBee为基础的无线系统、用来进行视频传输的WiFi 网络和用来外部交互的外部交互网络。

图1-1智能家居系统示意图

安全视频监控系统利用WiFi网络同家庭PC主机连接,用户可以通过外网或者内部WiFi连接,实吋监控家庭状态,或者当家庭内部出现紧急事件后,可以通过GSM网络向家庭用户发送短信或彩信。
王工计划为某小区设计一套智能家居系统,利用ZigBee技术的低功耗、自组织、可扩展等特点,组建家庭内部无线传感器网络,网络节点包括室内温湿度采集节点、火灾环境监测节点、模拟空调控制节点、模拟雨水窗户监控节点。王工在开发智能家居系统时采用V开发模型,V开发模型强调软件开发的协作和速度,将软件实现和验证有机结合起来,在保证较高的软件质量情况下缩短开发周期,图1-2为V模型示意图。该模型中,每个开发活动都有对应的验证活动,在进行客户需求分析时,测试人员可以了解产品设计特性、用户真正的需求,确定测试目标,可以准备用例并策划测试活动;在软件需求分析阶段,测试人员可以了解实现的过程、评审需求,设计测试方案和计划,并准备测试环境,设计系统或配置项测试用例;在软件概要设计阶段,测试人员可以评审概要设计,设计软件集成方案和用例;在详细设计阶段,测试人员可以评审详细设计,设计单元测试用例;在编码阶段,测试人员可以评审代码,并执行单元测试。

图1-2  V模型示意图 


【问题1】(4分)
在图1-2所示的V模型中,与开发阶段中概要设计对应的测试阶段称为(1)。在系统或配置项测试阶段应采用(2)方法。
【问题2】(5分)
完成下面对图1-2所示的V模型的论述,将答案填写在答题纸的对应栏中。
1.客户需求分析对应验收测试。在进行需求分析、功能设计的同时,测试人员就可以阅读、审查分析结果,了解产品设计特性、用户真正的需求,从而确定(1)。
2.进行软件需求分析时,测试人员可了解实现的过程、评审需求,可设计(2)、(3)。
3.设计人员做详细设计时,测试人员可参与设计,对设计进行(4),同时(5),并基于用例开发测试脚本。
【问题3】(6分)
ZigBee协调器是整个ZigBee家庭内网的核心,负责管理各个ZigBee节点设备与 PC网关的信息和控制指令的传输。温湿度采集终端将传感器的数据以点播的形式发送给协调器,其他采集/控制节点以广播的形式与ZigBee协调器进行数据的交换,协调器和PC机采用串口通信协议。协调器上电后,首先进行系统初始化,信道扫描、创建信道并组建网络。如果组建网络成功,则进行各层事件扫描;如果失败,则继续创建,如果检测到应用层有事件,则对事件进行处理;否则反复扫描各层事件。当应用层有事件,则检查数据类型,如果是室内环境数据,则经过串口发送到网关;如果不是室内环境数据,则进一步判断是否为控制指令,如果是,则向控制节点发送控制指令。ZigBee协调器软件流程图如图1-3所示。补充图1-3中的(1)〜(4),并将答案填写在答题纸的对应栏中。


图1-3  ZigBee协调器软件流程图

参考答案:

【问题1】4分
(1)集成测试(2)灰盒测试
【问题2】5分
(1)测试目标(2)测试方案和计划(3)系统或配置项测试用例(4)评审(5)设计单元测试用例
【问题3】6分
(1)系统初始化(2)组建网络是否成功(3)对事件进行处理,检查数据类型
(4)向控制节点发送控制指令

详细解析:

本题考查软件工程的基础知识,以及软件设计的基础知识。
从上图所示的V模型中还可以看出,左边是设计和分析,是软件设计实现的过程,同时伴随着质量保证活动——审核的过程,也就是静态的测试过程;右边是对左边结果的验证,是动态测试的过程,即对设计和分析的结果进行测试,以确认是否满足用户的需求。
需求分析和功能设计对应验收测试,说明在做需求分析、产品功能设计的同时,测试人员就可以阅读、审查需求分析的结果,从而了解产品的设计特性、用户的真正需求,确定测试目标,可以准备用例(UseCase)并策划测试活动。
当系统设计人员在做系统设计时,测试人员可以了解系统是如何实现的,基于什么样的平台,这样可以设计系统的测试方案和测试计划,并事先准备系统的测试环境,包括硬件和第三方软件的采购。因为这些准备工作,实际上是要花去很多时间。
当设计人员在做在做详细设计时,测试人员可以参与设计,对设计进行评审,找出设计的缺陷,同时设计功能、新特性等各方面的测试用例,完善测试计划,并基于这些测试用例以开发测试脚本。
在编程的同时,进行单元测试,是一种很有效的办法,可以尽快找出程序中的错误,充分的单元测试可以大幅度提高程序质量、减少成本。
从中可以看出,V模型使我们能清楚地看到质量保证活动和项目同时展开,项目一启动,软件测试的工作也就启动了,避免了瀑布模型所带来的误区——软件测试是在代码完成之后进行。

上一题