APP下载

UML建模技术在轨道交通CTCS-3级列车控制系统测试案例生成中的应用*

2012-07-05王倩倩

城市轨道交通研究 2012年3期
关键词:级列控系统车载

王倩倩 张 勇

(1.中铁第四勘察设计院集团有限公司,430063,武汉;2.北京交通大学轨道交通控制与安全国家重点实验室,100044,北京∥第一作者,助理工程师)

CTCS-3(Chinese Train Control System Level 3)级列车控制系统(以下简为列控系统)基于无线通信系统(GSM-R)实现了车、地之间双向的大容量通信,是满足客运专线和高速铁路安全、高效的高需求列车运行控制系统。CTCS-3级列控系统需要经过一系列全面的测试来验证系统是否满足《CTCS-3级列控系统系统需求规范(SRS)》和《CTCS-3级列控系统总体技术方案》的要求。测试案例是实验室仿真测试、现场试验及联调联试的基础性文件,通过将测试案例串联成不同的测试序列而应用到被测系统,以完成对列控系统的功能性测试。

1 CTCS-3级列控系统测试

CTCS-3级列控系统包括地面子系统和车载子系统两部分。地面子系统由无线闭塞中心(RBC)、列控中心(TCC)、ZPW-2000(UM)系列轨道电路、应答器(含地面电子单元LEU)、GSM-R通信接口设备等组成。车载子系统由车载安全计算机(VC)、GSM-R无线通信单元(RTM)、轨道电路信息接收单元(TCR)、应答器信息接收模块(BTM)、司法记录单元(JRU)、人机界面(DMI)、列车接口单元(TIU)等组成。车地间通过GSM-R网络来完成大容量的双向通信。CTCS-3级列控系统结构框图如图1所示。

CTCS-3级列控系统需要通过一系列全面的测试,以实现对系统进行互联互通测试的目的,从而验证系统是否满足《CTCS-3级列控系统系统需求规范(SRS)》。对列控系统的测试,是在外部标准接口上对列控系统进行功能测试,验证列控系统满足《CTCS-3级列控系统系统需求规范(SRS)》的程度。列控系统完成测试的步骤是:从系统需求规范生成测试案例作为测试的依据,根据测试案例串联成不同的测试序列;将测试序列应用到被测试系统上,得到实际输出;比较期望输出和实际输出,得到测试报告。最后根据测试报告,判断被测试系统是否满足《CTCS-3级列控系统系统需求规范(SRS)》。

图1 CTCS-3级列控系统结构框图

2 应用UML建模技术的优势

UML(Unified Modeling Language)是一种功能强大的、面向对象的可视化系统分析的建模语言。它采用一整套成熟的建模技术,广泛地适用于各个应用领域。UML是一种图形化的设计语言。它使用不同类型的图从不同的角度和抽象层次来描述系统模型。在使用UML进行软件设计建模时,设计者必须根据所需要描述的对象和系统动作选择适当的UML图,以达到设计效果。

UML的主要内容可以归为静态建模机制和动态建模机制两类。UML的静态建模机制包括用例图、类图、对象图、组件图和配置图等5个图形,用于描述需求并根据需求建立系统的静态模型,以构造系统的结构。UML的动态建模机制包括状态图、活动图、顺序图和协作图等4个图形,用于描述系统的行为。UML组成结构如图2所示。

CTCS-3级列控系统测试案例的生成是从对系统需求规范的分析开始,对每个功能需求进行提取、简化。最终生成的测试案例是为了完成对这些功能的测试,需完成从需求分析到系统内部行为描述的全过程。因此,CTCS-3级列控系统测试案例的生成需要大量的人力、物力的参与,而且人工生成的案例会出现反复修改的问题。在分析UML建模机制以后,发现UML提供了测试案例生成所需的从需求分析到系统内部行为描述的功能,因此可以利用UML静态建模机制与动态建模机制的相互配合来优化测试案例的生成。

图2 UML组成结构示意图

3 测试案例生成的总体思路

3.1 从规范中提取功能特征

CTCS-3级列控系统测试案例是依据《CTCS-3级列控系统系统需求规范(SRS)》和《CTCS-3级列控系统总体技术方案》进行编制。从系统需求规范中提炼出一些精简的、必要的功能实体,称为功能特征。一个功能特征是一组需求的集合。它能通过系统既有的接口进行测试。测试案例实现对功能特征的测试。为了完整地测试一个功能特征,需要一个或多个测试案例。系统需求规范、功能特征和测试案例之间的关系如图3所示。

图3 系统需求规范、功能特征和测试案例之间的关系

为了便于测试案例的管理和执行,功能特征应具有以下两个属性:

1)可测性。能够在被测对象上通过施加直接的激励而产生响应,以便在既有接口上对被测对象进行测试。响应是指在既有接口上可直接测量的输出。

2)独立性。功能特征的测试应具有独立性,即功能特征能够单独执行而不需要考虑其它功能特征的执行情况。

在提取功能特征时,可根据被测系统的外部可见接口(从运营商或用户的角度),通过运营条件来划分成安全防护、模式和等级三类,然后逐步细化,直到功能特征成为不可分割的原子单位。

3.2 借助于UML从功能特征生成测试案例

针对每一个功能特征,设计若干测试案例对其进行测试,从而对系统需求规范中的需求进行验证。按照黑盒测试的原则生成测试案例,对被测对象的测试是基于可见接口的。每个测试案例必须确定的内容有:被测对象(车载或地面设备)、测试步骤、起始条件和结束条件等。

UML是一种通用的建模语言,可创建系统的静态结构和动态行为等多种结构模型,具有可扩展性和通用性,适合为各种多变的系统建模。列控系统测试案例的生成是基于系统需求规范进行需求分析,进而对系统内部的行为进行描述。第一步描述系统的需求,通过建立用例图来实现;第二步描述系统的行为,通过动态模型图来实现,包括状态图和顺序图。

用例图显示多个外部参与者以及他们与系统提供的用例之间的连接。用例是系统中的一个可以描述参与者与系统之间交互作用的功能单元。用例图用于需求分析阶段,描述了待开发系统的功能需求,并驱动了需求分析之后各阶段的开发工作,从而影响到开发工作的各阶段和UML的其他图形。状态图通过对对象的生存周期建立模型来描述对象随时间变化的动态行为,由对象的各个状态和连接这些状态的转换组成。每个状态对一个对象在其生命周期中满足某种条件的一个时间段建模。事件的发生会触发状态间的转换,导致对象从一个状态转换到另一个新的状态。顺序图显示对象之间发送消息的时间顺序,更进一步显示出随着时间的变化对象之间是如何通信的;顺序图的关键思想是对象之间的交互是按照特定的顺序发生的,这些按特定顺序发生的交互序列从开始到结束需要一定的时间。

4 利用UML建模技术生成测试案例的过程

针对每一个功能特征,根据《CTCS-3级列控系统系统需求规范(SRS)》和《CTCS-3级列控系统总体技术方案》进行UML建模、辅助测试案例的生成。

4.1 静态建模分析

将每个功能特征看作一个系统,通过建立用例图中参与者与用例及它们之间的关系可以知道该功能特征包括几个测试案例、测试案例的功能和被测设备等。现以功能特征143——“列车进入CTCS-3级区域,与RBC建立无线通信会话”来说明整个建模过程。图4是功能特征143的用例图。

图4 功能特征143的用例图

由图4用例图中所包含的用例可知该功能特征的功能需求,由不同用例所对应的参与者可知不同测试案例的被测对象等。由图4可得出功能特征143包含的测试案例有:

1)案例1(测车载设备)。在CTCS-3级区域外,车载设备接收到根据指定的RBC编号和电话号码与RBC建立无线通信会话的命令,车载设备与指定RBC建立无线通信会话。

2)案例2(测车载设备)。在CTCS-3级区域外,车载设备接收到根据指定的RBC编号和电话号码与RBC建立无线通信会话的命令,车载设备与RBC建立无线通信会话。如果进路没有通向RBC区域且车载设备收到终止无线通信会话的命令,车载设备终止无线通信会话。

3)案例3(测地面设备)。在CTCS-3级区域外,地面设备给出呼叫指定RBC的命令。

4)案例4(测地面设备)。在CTCS-3级区域外的调车区域,地面设备不提供呼叫RBC的命令。

5)案例5(测地面设备)。地面设备检测到刚建立无线通信会话的列车没有驶入RBC控制区域(列车返回或列车进路不是通向RBC区域),则向车载设备发送终止会话的命令。

6)案例6(测车载设备)。车载设备接收到根据指定的RBC编号和电话号码与RBC建立无线通信会话的命令,在SH(调车)模式下,车载设备不建立无线通信会话。

4.2 动态建模分析

为了进一步了解每个测试案例的具体内容,对于每个测试案例,要采用动态模型图来对其进行建模,以了解其内部的流程及状态。

对系统进行动态建模可以有效地分析系统内部的动作和行为,这里采用了状态图和顺序图来描述。顺序图能够体现参加交互的对象及这些对象之间先后的交互次序等情况,而状态图详细地描述了这些对象在交互前后的状态变化。利用状态图正好可以弥补顺序图不能详细描述对象的状态信息的不足,从而可以生成信息完整的测试案例。现用顺序图来举例说明动态建模的过程,例如测试案例1的顺序图如图5所示。

图5 测试案例1的顺序图

上述举例的测试案例1涉及到的对象是车载设备、应答器组和RBC。这些对象之间按照一定的时间顺序完成彼此之间的交互,对象之间的交互包括应答组与车载设备之间的信息传递和车载设备与RBC两者间的信息传递。即,测试案例1中涉及到的测试步骤,经过一系列的信息交互,最终车载设备与RBC建立无线通信会话。

利用顺序图来进行动态建模,可以对本测试案例涉及到的测试对象和彼此之间的交互进行分析,从而得到测试过程中被测对象之间的消息传递顺序和内容,明确整个测试的步骤。

5 结语

测试案例是对列控系统进行功能测试的依据,在测试案例的生成中有效地利用UML建模技术,可以提高生成的效率和保证案例的质量。本文提出的在测试案例生成中应用UML建模技术,可根据需要完成不同模型的建立,来辅助分析和设计测试案例,并且在测试案例的进一步完善中可以利用UML模型图来对案例进行优化。今后将对UML模型图进行进一步的研究,以优化测试案例的生成。

[1]铁道部科学技术局,铁道部运输局.CTCS-3级列控系统系统需求规范(SRS)(V1.0)第二册[M].北京:中国铁道出版社,2008.

[2]张曙光.CTCS-3级列控系统技术创新总体方案[M].北京:中国铁道出版社,2008.

[3]科技运[2009]59号.CTCS-3级列控系统测试案例(第三册)[S].2009.

[4]ERTMS/ETCS:SUBSET 076-3.Methodology of testing[EB/OL].(2005- 11).http:∥www.era.europa.eu/core/ertms/Pages/Approved_Documents_List_of_informative_specifications.aspx.

[5]季学胜,李开成,张勇,等.CTCS-3级列控系统测试案例生成方法的研究[J].铁道通信信号,2009,45(10):1.

[6]章慧,张勇.CTCS-3级列控系统车载设备测试方法研究[J].铁路计算机应用,2008,17(14):23.

[7]蔡敏,徐慧慧,黄炳强.UML基础与Rose建模教程[M].北京:人民邮电出版社,2006.

猜你喜欢

级列控系统车载
一种车载可折叠宿营住房
关于DALI灯控系统的问答精选
联调联试中列控系统兼容性问题探讨
CTCS-2级列控系统反向运行的相关问题探讨
高速磁浮车载运行控制系统综述
探讨CTCS-3级列控系统对STP系统的指导作用
CTCS-3级列控系统RBC外部接口故障处理
基于ITCS的CTCS-4级列控系统关键技术研究
智能互联势不可挡 车载存储需求爆发
一种新型列控系统方案探讨