CN108255697B - 基于smt的车载控制器软件半形式化需求验证系统及方法 - Google Patents

基于smt的车载控制器软件半形式化需求验证系统及方法 Download PDF

Info

Publication number
CN108255697B
CN108255697B CN201611250263.3A CN201611250263A CN108255697B CN 108255697 B CN108255697 B CN 108255697B CN 201611250263 A CN201611250263 A CN 201611250263A CN 108255697 B CN108255697 B CN 108255697B
Authority
CN
China
Prior art keywords
requirement
software
semi
constraint condition
formalized
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611250263.3A
Other languages
English (en)
Other versions
CN108255697A (zh
Inventor
陈晓轩
陈硕豪
熊坤鹏
刘锦峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casco Signal Ltd
Original Assignee
Casco Signal Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casco Signal Ltd filed Critical Casco Signal Ltd
Priority to CN201611250263.3A priority Critical patent/CN108255697B/zh
Publication of CN108255697A publication Critical patent/CN108255697A/zh
Application granted granted Critical
Publication of CN108255697B publication Critical patent/CN108255697B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3616Software analysis for verifying properties of programs using software metrics

Abstract

本发明涉及一种基于SMT的车载控制器软件半形式化需求验证系统及方法,包括:半形式化软件需求规范化模块M1,用于对半形式化的车载控制器软件需求进行自动转换,生成能够被SMT求解器识别的合取范式形式输入;约束条件建立模块M2,用于根据上级系统需求和系统设计,抽取、归纳并建立针对软件功能的约束条件;需求验证模块M3,用于对格式转换后的输入软件需求根据约束条件进行求解,验证软件需求的正确性以及与上级需求和设计的一致性。与现有技术相比,本发明具有利用形式化理论工具对半形式化的软件需求进行准确、高效地验证等优点。

Description

基于SMT的车载控制器软件半形式化需求验证系统及方法
技术领域
本发明涉及一种轨道交通车载控制器软件半形式化需求验证系统,尤其是涉及一种基于SMT(可满足性模理论)的车载控制器软件半形式化需求验证系统及方法。
背景技术
随着我国轨道交通行业高速发展,车载控制器软件的功能需求日益复杂,给相关的软件质量保证工作带来很的压力。工业数据显示大约50%的产品缺陷是由于需求的质量不到位造成的,大约80%的返工工作量可以追溯到需求缺陷,尤其是对轨道交通车载控制器这类高可信嵌入式软件而言,其需求规范的缺陷将造成不可估量的财产损失和人员伤亡;另一方面,需求的遗漏和错误往往具有很强的隐蔽性,需求分析阶段的缺陷如果不能得到及时纠正,将在后续阶段造成极大影响,缺陷发现得越晚,修改的代价就越高。
所以,软件需求规范的正确性验证对于整个软件质量保证体系显得尤为重要。目前,高可信嵌入式软件多以状态机、真值表、序列图、流程图为主的半形式化的描述方式,但是相应的需求验证方法主要是文档评审和原型示范等技术,对于验证人员的经验和责任心要求极高。
且此种人工验证需求的方法存在以下不足:(1)由于是人工检查,可能会存在检查不到位、出现遗漏的情况,乃至无法达到预期的验证效果。(2)人工验证本质还是经验行为,对验证人员能力要求极高,同时缺少统一的规范和标准,在质量和效率方面可以提升的空间有限。
因此,如何实现一种能解放验证人员的人力,同时又能高效地对车载控制器软件需求进行自动化的检查和分析方法就变得越来越紧迫。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于SMT的车载控制器软件半形式化需求验证系统及方法,利用形式化理论工具对半形式化的软件需求进行准确、高效地验证。
本发明的目的可以通过以下技术方案来实现:
一种基于SMT的车载控制器软件半形式化需求验证系统,包括:
半形式化软件需求规范化模块M1,用于对半形式化的车载控制器软件需求进行自动转换,生成能够被SMT求解器识别的合取范式形式输入;
约束条件建立模块M2,用于根据上级系统需求和系统设计,抽取、归纳并建立针对软件功能的约束条件;
需求验证模块M3,用于对格式转换后的输入软件需求根据约束条件进行求解,验证软件需求的正确性以及与上级需求和设计的一致性。
所述的约束条件建立模块M2建立的约束条件能够被SMT求解器识别,并通过结合了背景理论的一阶逻辑公式刻画出来,作为SMT求解器的输入。
一种基于SMT的车载控制器软件半形式化需求验证系统的方法,包括以下步骤:
步骤S1:在半形式化软件需求规范化模块中,将半形式化的车载控制器软件需求进行格式上的转换,生成合取范式;
步骤S2:在约束条件建立模块中,对车载控制器软件需求的上级需求和设计进行抽取、归纳后,建立约束条件;
步骤S3:需求验证模块利用SMT求解器,对格式转换后的输入软件需求根据约束条件进行求解,检查软件需求是否能满足约束条件。
所述的步骤S3中:如果车载控制器软件需求经过系统求解满足约束条件,说明与上级需求和设计相符,不存在缺陷;反之,则说明软件需求存在缺陷。
对于没有通过验证的需求,根据得到解的性质,分析需求产生问题的根因,修改后重新放入本发明的验证系统中验证。
与现有技术相比,本发明具有以下优点:
1、以形式化理论为支撑,对轨道交通车载控制器软件半形式化的需求进行自动化验证,真正实现了计算机对需求内容正确性、一致性的实质检查。
2、相较于需求验证的人工检查,该技术方案极大地节约了人力和时间,提高工作效率。
3、实现对半形式化软件需求变更的快速影响分析,从而提早发现软件变更中所隐藏的缺陷,节省大量人力、物力。
4、相对于完全的形式化方法,该技术方案上手简单,便于系统分析、开发和测试人员掌握。
附图说明
图1为本发明的结构示意图;
图2为本发明的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
本实施例中,将基于SMT的轨道交通车载控制器软件半形式化需求验证系统应用于车载软件需求的列车倒溜监控功能模块的验证中。
如图1所示,是本发明基于SMT的轨道交通车载控制器软件半形式化需求验证系统的结构示意图。本实施例中基于SMT的轨道交通车载控制器软件半形式化需求验证系统包括:半形式化软件需求规范化模块M1,约束条件建立模块M2以及需求验证模块M3。
其中,半形式化软件需求规范模块M1是对车载控制器的半形式化软件需求进行自动转换,例如,列车倒溜监控功能模块的半形式化需求转换为合取范式。约束条件建立模块M2是根据车载控制器软件需求的上级设计和谢秋,抽取、归纳并建立能被SMT求解起所识别的约束条件,即,结合了背景理论的一阶逻辑公式。例如,对于列车倒溜监控功能的需求的上级需求和设计归纳出若干约束条件。需求验证模块M3是利用SMT求解器,对合取范式形式的需求根据约束进行求解,验证车载控制器软件需求中倒溜监控功能模块的正确性以及与上级需求的一致性。
如图2所示,本实施例基于SMT的轨道交通车载控制器软件半形式化需求验证系统用于验证车载控制器软件半形式化需求中倒溜监控功能模块的一具体过程,包括以下步骤:
步骤S1,在半形式化软件需求规范化模块M1中,将倒溜监控功能模块需求进行自动转换,生成合取范式形式的SMT求解器输入;
步骤S2,对上级需求和设计归纳、抽取,建立约束条件;例如,在本实施例中,对于倒溜监控功能模块需求的上级需求,提取出一具体约束“列车在如何情况下发生倒溜,距离不能超过Smax”,使用一阶逻辑公式将其刻画出来。
步骤S3,利用模块M3中的SMT求解器,对合取范式形式的倒溜监控功能模块需求,根据步骤S2中建立的约束,进行求解,从而验证输入需求的正确性以及于上级需求的一致性;
其中,在模块M3中,先将合取范式形式的溜监控功能模块需求取反,之后SMT求解器若能得出使得取反后的需求范式满足约束的解,那么输入需求通过了该约束条件下的验证;否则输入需求没有通过验证。
对于没有通过验证的需求,根据得到的解的性质,分析需求产生问题的根因,修改后重新放入本发明的验证系统中验证。
本实施例中,将已经通过人工验证后的一正式版本的车载控制器软件需求作为检测对象,运用本发明基于SMT的轨道交通车载控制器软件半形式化需求系统验证,检测出该软件功能模块的需求还存在2处缺陷。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (4)

1.一种基于SMT的车载控制器软件半形式化需求验证系统,其特征在于,包括:
半形式化软件需求规范化模块M1,用于对半形式化的车载控制器软件需求进行自动转换,生成能够被SMT求解器识别的合取范式形式输入;
约束条件建立模块M2,用于根据上级系统需求和系统设计,抽取、归纳并建立针对软件功能的约束条件;
需求验证模块M3,用于对格式转换后的输入软件需求根据约束条件进行求解,验证软件需求的正确性以及与上级需求和设计的一致性;
所述的约束条件建立模块M2建立的约束条件能够被SMT求解器识别,并通过结合了背景理论的一阶逻辑公式刻画出来,作为SMT求解器的输入。
2.一种采用权利要求1所述的基于SMT的车载控制器软件半形式化需求验证系统的方法,其特征在于,包括以下步骤:
步骤S1:在半形式化软件需求规范化模块中,将半形式化的车载控制器软件需求进行格式上的转换,生成合取范式;
步骤S2:在约束条件建立模块中,对车载控制器软件需求的上级需求和设计进行抽取、归纳后,建立约束条件;
步骤S3:需求验证模块利用SMT求解器,对格式转换后的输入软件需求根据约束条件进行求解,检查软件需求是否能满足约束条件。
3.根据权利要求2所述的方法,其特征在于,所述的步骤S3中:如果车载控制器软件需求经过系统求解满足约束条件,说明与上级需求和设计相符,不存在缺陷;反之,则说明软件需求存在缺陷。
4.根据权利要求2所述的方法,其特征在于,对于没有通过验证的需求,根据得到解的性质,分析需求产生问题的根因,修改后重新放入验证系统中验证。
CN201611250263.3A 2016-12-29 2016-12-29 基于smt的车载控制器软件半形式化需求验证系统及方法 Active CN108255697B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611250263.3A CN108255697B (zh) 2016-12-29 2016-12-29 基于smt的车载控制器软件半形式化需求验证系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611250263.3A CN108255697B (zh) 2016-12-29 2016-12-29 基于smt的车载控制器软件半形式化需求验证系统及方法

Publications (2)

Publication Number Publication Date
CN108255697A CN108255697A (zh) 2018-07-06
CN108255697B true CN108255697B (zh) 2021-05-14

Family

ID=62722013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611250263.3A Active CN108255697B (zh) 2016-12-29 2016-12-29 基于smt的车载控制器软件半形式化需求验证系统及方法

Country Status (1)

Country Link
CN (1) CN108255697B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109583074A (zh) * 2018-11-24 2019-04-05 上海畅赢智能科技有限公司 车载pis控制软件快速配置生成信息处理方法及设备
CN113741385B (zh) * 2020-05-29 2023-07-11 比亚迪汽车工业有限公司 轨道信号测试系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011192073A (ja) * 2010-03-15 2011-09-29 Toyota Infotechnology Center Co Ltd 仕様要求検証装置及び仕様要求検証方法
CN104298525A (zh) * 2014-09-25 2015-01-21 南京航空航天大学 复杂约束条件下多组件软件部署的自动化与自适应方法及其部署管理系统
CN104598619A (zh) * 2015-01-30 2015-05-06 南京邮电大学 一种基于约束求解器的服务组合验证方法
CN104965956A (zh) * 2015-07-16 2015-10-07 北京航空航天大学 一种基于rucm的需求验证方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011192073A (ja) * 2010-03-15 2011-09-29 Toyota Infotechnology Center Co Ltd 仕様要求検証装置及び仕様要求検証方法
CN104298525A (zh) * 2014-09-25 2015-01-21 南京航空航天大学 复杂约束条件下多组件软件部署的自动化与自适应方法及其部署管理系统
CN104598619A (zh) * 2015-01-30 2015-05-06 南京邮电大学 一种基于约束求解器的服务组合验证方法
CN104965956A (zh) * 2015-07-16 2015-10-07 北京航空航天大学 一种基于rucm的需求验证方法

Also Published As

Publication number Publication date
CN108255697A (zh) 2018-07-06

Similar Documents

Publication Publication Date Title
CN105426300B (zh) 一种电力系统cim/e模型的标准符合性测试系统和方法
CN105117335B (zh) 一种用于软件单元的自动化验证及回归测试方法
CN103870384B (zh) 测试用例推定方法及系统
CN107508727B (zh) 一种自动化网卡信息检查方法及装置
US10120785B2 (en) Automatic generation of data coupling and control coupling test conditions
CN108255697B (zh) 基于smt的车载控制器软件半形式化需求验证系统及方法
KR20120072130A (ko) 오토사 메타 파일 기반 기본 소프트웨어 속성값 검사 장치 및 방법
CN104636241A (zh) 基于需求建模的车载控制器日志数据自动分析方法
CN112346987A (zh) 基于Xmind的测试用例生成转换方法及系统
CN109815124B (zh) 基于mbse的联锁功能缺陷分析的方法及装置、联锁系统
CN106933572B (zh) 一种基于llvm中间表示程序切片的度量模型
Brown et al. Guidance for using formal methods in a certification context
CN111611154B (zh) 一种回归测试的方法、装置和设备
CN104182445B (zh) 列车运行监控装置的设备质量检测方法及其装置
CN114326659A (zh) 一种汽车电子控制单元故障诊断系统及方法
CN103218277A (zh) 服务器环境的自动检测方法与装置
CN114661615B (zh) 一种fpga软件测试方法和设备
CN111124809A (zh) 一种服务器传感器系统的测试方法及装置
Hommes Assessment of the ISO 26262 standard, road vehicles—functional safety
CN111858298B (zh) 一种基于3v模型的软件测试方法
CN113282496A (zh) 接口自动测试方法、装置、设备及存储介质
CN108763063B (zh) 一种无需缺陷标注数据的软件缺陷检测方法
WO2015184750A1 (zh) 网元设备数据维护的方法和装置
CN109635480A (zh) 一种基于制图软件的控制逻辑验证和调试方法
CN109815131B (zh) 轨道交通车载软件半形式化需求用的静态检查系统及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1254098

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant