CN105824684B - 一种多模式大数据软件模拟器的实现方法 - Google Patents

一种多模式大数据软件模拟器的实现方法 Download PDF

Info

Publication number
CN105824684B
CN105824684B CN201610028911.4A CN201610028911A CN105824684B CN 105824684 B CN105824684 B CN 105824684B CN 201610028911 A CN201610028911 A CN 201610028911A CN 105824684 B CN105824684 B CN 105824684B
Authority
CN
China
Prior art keywords
control
xml file
interface
mode
data
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.)
Expired - Fee Related
Application number
CN201610028911.4A
Other languages
English (en)
Other versions
CN105824684A (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.)
63686 Troops Of Pla
Original Assignee
63686 Troops Of Pla
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 63686 Troops Of Pla filed Critical 63686 Troops Of Pla
Priority to CN201610028911.4A priority Critical patent/CN105824684B/zh
Publication of CN105824684A publication Critical patent/CN105824684A/zh
Application granted granted Critical
Publication of CN105824684B publication Critical patent/CN105824684B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种多模式大数据软件模拟器的实现方法,所述方法包括以下步骤:步骤一、通过设计表征模式信息的XML文件,利用菜单内容按照关键字查找方式生成所需调用表征设备参数信息的XML文件字典;步骤二、通过多种自定义控件的设计,并以顺序布局面板(FlowLayoutPanel)控件为容器,实现界面元素的结构化自动生成;步骤三、通过界面控件与XML文件并行判读的方式,实现界面参数数据变化时的自动组帧。采用本发明的方法,对于多模式的逻辑关系通过关联设计简单实现,对于大数据通过分别编制XML文件并依赖多模式逻辑关系实现调用,对于界面生成通过软件界面自动生成技术便利实现,大大提高了工作效率,降低了工作强度。

Description

一种多模式大数据软件模拟器的实现方法
技术领域
本发明涉及一种多模式大数据软件模拟器的实现方法。属于软件工程技术领域。
背景技术
在软件工程技术中,特别是需要进行信息交互的软件工程设计中,开发人员往往是脱离实际运行环境,按照需求规格说明书和任务书要求进行开发,程序编制完成后进行现场调试工作。对于复杂功能的这种软件开发,为保证工程软件的功能和性能指标,开发人员一般设计一个软件模拟器,来“真实”仿真需要交互信息设备的状态,从而构成闭环测试系统来对工程软件进行测试。而对于软件模拟器的开发,必须坚持“时间短、费用低、实效好”的基本原则,保证以最小的代价、最真实的效果完成设计。
在某型以C#2010为编译环境的远程监视系统中,需要完成对远端多套设备状态的监视,但是监视软件设计的难点为:设备种类多,且最少包含一个备份设备,最多多达8个;设备工作模式多,最多有4中工作模式,且不同模式设备间有联动关系;设备信息量大,每个设备需要监视大量的信息,最多监视参数达200个左右,且又分为快变和慢变数据。如此复杂的监控软件设计要求,给软件编制人员带来极大挑战,在实验室完成软件基本框架后,为验证工程软件,必须设计模拟设备真实状态的模拟器来构成测试环境。如用常规的软件设计方法,无疑是一个超大工作量的设计,反而得不偿失。
本发明综合多项技术设计了一种多模式大数据软件模拟器的设计方法,为解决这一问题提供一种实用、简便的方法。
发明内容
本发明所要解决的技术问题是针对上述工程软件设计问题提供一种多模式大数据软件模拟器的实现方法,对于多模式的逻辑关系通过关联设计简单实现,对于大数据通过分别编制XML文件并依赖多模式逻辑关系实现调用,对于界面生成通过软件界面自动生成技术便利实现,大大提高了工作效率,降低了工作强度。
本发明解决上述问题所采用的技术方案为:一种多模式大数据软件模拟器的实现方法,所述方法包括以下步骤:
步骤一、通过设计表征模式信息的XML文件,利用菜单内容按照关键字查找方式生成所需调用表征设备参数信息的XML文件字典
(1)设计表征模式信息的XML文件
表征模式信息的XML文件,简称模XML,在文件中设计两个包含逻辑关系的元素,分别为设备加电信息和设备模式信息,这两个元素又包含以每个设备相关信息为属性的多个子元素,这些设备信息包括子系统名称和模式名称;
(2)设计表征设备参数信息的XML文件
表征设备参数信息的XML文件,简称数XML,这类文件分为快变和慢变文件,均包含以每个设备相关参数为属性的元素,对于多字节数据表示为元素,对于少字节数据通过组合为元素(少字节数据为其中的子元素);
(3)依赖菜单项生成两者间的关联关系
采用主菜单方式,菜单名称为系统名,其下拉菜单项的文本内容为模式控制+分系统名称(与模XML设备模式信息元素中的各个子元素的“描述”属性对应),下拉菜单项个数为分系统数+1。通过加电信息决定相关菜单项的使能,通过模式信息对相关菜单项文本内容进行修改,修改后的菜单项文本就包含了关键字(模式),进而生成需要形成数据帧的数XML文件字典,包括快、慢两种字典,字典中的主键为修改后菜单项的文本内容,值为数XML目录,也就是通过菜单这个“桥梁”实现了模式与数XML文件的关联;
步骤二、通过多种自定义控件的设计,并以顺序布局面板(FlowLayoutPanel)控件为容器,实现界面元素的结构化自动生成
(1)自定义多种功能的用户控件
构建文本框、选择框、指示灯和空显示用户控件,这些控制直接用于与用户进行数据交互,其中文本框控件由文本框和2个标签控件组成,选择框控件由选择框和2个标签控件组成,空显示控件无需添加控件;
(2)结构化的界面自动生成
正是因为菜单项将模式信息和参数信息(数XML)进行了关联,在点击菜单项时,通过对应字典的主键可以得到XML文件,遍历XML文件,按照元素相关属性完成界面自动生成;
步骤三、通过界面控件与XML文件并行判读的方式,实现界面参数数据变化时的自动组帧
程序要求在改变参数或模式时,需要将改变参数的值组帧发出,这里使用了一种控件与数/模XML文件并读方式,它是基于控件值来源于对应XML文件,在控件值变化时,XML文件内容并未改变,正是基于这一特性实现了变化数据的判断与组帧。
优选地,所述步骤一中的逻辑关系通过菜单来关联,步骤二中的组合多种形式控件完成界面结构化自动生成,步骤三中的界面控件与XML文件并行判读方式。
与现有技术相比,本发明的优点在于:
(1)本发明适用于一些中小型软件开发工作,可以大幅减少软件开发工作量。
(2)本发明同时适用于软件中间件的软件开发工作,可以减少软件升级所产生工作量。
(3)本发明兼顾考虑了界面美观的设计问题。
附图说明
图1为本发明一种多模式大数据软件模拟器的实现方法的流程图。
图2为本发明一种多模式大数据软件模拟器的实现方法中模XML文件书写格式图。
图3为本发明一种多模式大数据软件模拟器的实现方法中数XML文件书写格式图。
图4为本发明一种多模式大数据软件模拟器的实现方法中菜单项定义图。
图5为本发明一种多模式大数据软件模拟器的实现方法中菜单的关联处理流程图。
图6为本发明一种多模式大数据软件模拟器的实现方法中用户控件设计图。
图7为本发明一种多模式大数据软件模拟器的实现方法中界面自动生成流程图。
图8为本发明一种多模式大数据软件模拟器的实现方法中并读处理流程图。
图9为本发明一种多模式大数据软件模拟器的实现方法中实例运行图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明涉及一种多模式大数据软件模拟器的实现方法,如图1所示,具体过程为:
第一步、通过设计表征模式信息的XML文件,利用菜单内容按照关键字查找方式生成所需调用表征设备参数信息的XML文件字典
(1)设计表征模式信息的XML文件
表征模式信息的XML文件,简称模XML文件,结构形式如图2所示,在文件中设计两个包含逻辑关系的元素,分别为设备加电信息和设备模式信息,这两个元素又包含以每个设备相关信息为属性的多个子元素,这些设备信息包括子系统名称和模式名称;
设备加电信息元素属性包含控件名、描述、数据类型、值4个,对应界面控件为文本框控件,“控件名”用于界面控件的名称属性赋值,即文本框控件名为“控件名”的内容;“描述”用于界面控件的文本赋值,使得用户直观了解参数属性;“数据类型”用于程序中的数据处理;“值”用于对文本框控件进行赋值。它又包含多个子元素,子元素的属性包含控件名、描述、控件类型、值、起始位、长度6个,“控件名”为界面控件的名称;“描述”为界面控制文本内容;“控件类型”为界面控件类型;“值”为界面控件值;“起始位”、“长度”用于程序中,进行相关数据处理。
设备模式信息元素属性包含控件名、描述、数据类型、值4个,含义同设备加电信息元素属性,它的子元素的属性包含控件名、描述、控件类型、值、起始位、长度、模式、单位8个,其中“描述”内容为下拉框的选项,通过“;”进行分隔,便于处理填充下拉框内容;“单位”为该参数的数值单位,便于用户理解数据类型。
(2)设计表征设备参数信息的XML文件
设备参数信息的XML文件,简称数XML文件,结构形式如图3所示,这类文件分为快变和慢变形式,均包含以每个设备相关参数为属性的元素,对于多字节数据表示为元素,对于少字节数据通过组合为元素。
快变和慢变形式的数XML书写格式相同,均分为含子元素的元素和无子元素的元素,含子元素的元素包含控件名、描述、数据类型、数据值4个属性,含义同设备加电信息元素,其子元素的属性描述包含三种,分别对应Button、ComboBox、TextBox控件类型,Button、TextBox控件类型包含控件名、描述、控件类型、值、起始位、长度6个属性,含义同上;ComboBox控件类型包含控件名、描述、控件类型、值、起始位、长度、选项、单位8个属性,含义同上;无子元素的元素描述包含三种,分别对应Button、ComboBox、TextBox控件类型,Button、TextBox控件类型包含控件名、描述、控件类型、数据类型、值5个属性,ComboBox控件类型包含控件名、描述、控件类型、数据类型、值、选项6个属性。
(3)依赖菜单项生成两者间的关联关系
采用主菜单方式,菜单名称为系统名,其下拉菜单项的文本内容为模式控制+分系统名称(与模XML设备模式信息元素中的各个子元素的“描述”属性对应),下拉菜单项个数为分系统数+1。通过加电信息决定相关菜单项的使能,通过模式信息对相关菜单项文本内容进行修改,修改后的菜单项文本就包含了关键字(模式),进而生成需要形成数据帧的数XML文件字典,包括快、慢两种字典,字典中的主键为修改后菜单项的文本内容,值为数XML目录,也就是通过菜单这个“桥梁”实现了模式与数XML的关联。
软件界面设计初,根据设备模式信息元素的子元素的“描述”属性生成各个菜单的文本内容,如图4左侧所示。菜单的关联处理流程如图5所示,程序中通过读取指定表征模式信息的XML文件,按照遍历规则一个一个元素进行处理,当元素的“控件名”属性为Sys_WkMd(包含模式信息)或Sys_ChnPwr(包含加电信息),进入子元素轮询,在与菜单项的文本标识相同时,依据加电信息子元素的“值”属性进行使能操作(0不使能,1使能),依据模式信息子元素的“值”属性内容对“模式”属性内容进行处理,得到子系统模式,对应菜单项添加模式文本,直到循环结束,菜单变化如图4右侧所示。
在完成菜单关联处理后,由于菜单项内容已经包含了模式和加电状态,很方便就可以实现数据帧的XML文件字典。特别是在模式和加电状态时,通过上面方法即可简单实现模式与数XML的关联。
第二步、通过多种自定义控件的设计,并以FlowLayoutPanel控件为容器,实现界面元素的结构化自动生成
(1)多种用户控件组合
多种用户控件,如图6所示;
文本框控件
在C#中,选择添加用户控件,命名为TextBoxCon,放置一个TextBox和两个Label控件,TextBox用于显示数据值,一个Label用于显示数据属性,另一个Label用于显示数据单位。
TextBoxCon控件属性定义包括TextBox控件的Text属性、forecolor属性,以及两个Label控件的Text属性的输入输出,TextBox控件forecolor属性用于区分是否具备子元素。
选择框控件
在C#中,选择添加用户控件,命名为ComboBoxCon,放置一个ComboBox和一个Label控件,ComboBox用于显示可选择数据。
ComboBoxCon控件属性定义包括ComboBox控件的items属性、forecolor属性,以及Label控件的Text属性的输入输出,ComboBox控件forecolor属性用于区分是否具备子元素。
指示灯控件
在C#中,选择添加用户控件,命名为LedCon,放置一个Button、imageList和Label控件,imageList用于放置交错显示的2张图片,Button控件的imageindex属性与imageList的关联,Label用于显示数据属性。
LedCon控件属性定义包括Button控件的imageindex属性,以及Label控件的Text属性的输入输出。
空显示控件
在C#中,选择添加用户控件,命名为BaseCon,设置控件大小属性,用于对有子元素和无子元素数据进行隔离,增加数据的可读性,实现界面布局与数XML文件的结构化。
(2)界面自动生成
程序界面布置FlowLayoutPanel控件,设置ScrollBars属性为Vertical和FlowDirection属性为TopDown,以及其它个人喜好的框体形式等。通过点击菜单项,按照字典主键(即菜单项的文本描述)来查找所需调用的数XML文件,其流程如图7所示。遍历数XML文件的元素,如元素不包含子元素,则根据元素的devType属性,进行自选控件的生成;根据dataType属性是否包含“-”字符,来决定对Value属性内容数据处理方法,这里采用取反思路,象int类型常规为十进制,而int-类型为十六进制;如元素包含子元素,则先产生空显示控件,再产生文本框控件用于显示元素属性内容,后遍历子元素,处理方法同元素处理方法。
第三步,通过界面控件与XML文件并行判读的方式,实现界面参数数据变化时的自动组帧
程序要求在改变参数值时,需要将改变参数的值组帧发出,这里使用了一种控件与XML文件并读方式,它是基于控件值来源于XML文件,在控件值变化时,XML文件内容并未改变,正是基于这一特性实现了变化数据的判断与组帧,其流程如图8所示。读取每个节点或子节点的控件名属性,按照数据类型属性对数据值属性完成类型转换,得到界面显示控件所需的数据值,然后在XML规定的界面容器中按照控件类型进行查找,如果控件名和控件类型相同,则按照控件类型进行赋值,再准备下一次查找,直到读完XML文件最后一个节点。
实例:
下面以某一种用于远程监视系统的软件模拟器设计为例,展示本发明在实际中的应用过程。按照发明步骤,依次实现,程序运行界面如图9所示。
除上述实施例外,本发明还包括有其他实施方式,凡采用等同变换或者等效替换方式形成的技术方案,均应落入本发明权利要求的保护范围之内。

Claims (2)

1.一种多模式大数据软件模拟器的实现方法,其特征在于:所述方法包括以下步骤:
步骤一、通过设计表征模式信息的XML文件,利用菜单内容按照关键字查找方式生成所需调用表征设备参数信息的XML文件字典
(1)设计模XML文件
在模XML文件中包含两个逻辑关系的元素,分别为设备加电信息和设备模式信息,这两个元素又包含以每个设备相关信息为属性的多个子元素,这些设备信息包括子系统名称和模式名称;
(2)设计数XML文件
数XML文件分为快变和慢变文件,均包含以每个设备相关参数为属性的元素,对于多字节数据表示为元素,对于少字节数据通过组合为元素;
(3)按照菜单项生成模XML文件和数XML文件的关联关系
采用主菜单方式,菜单名称为系统名,其下拉菜单项的文本内容为模式控制+分系统名称,下拉菜单项个数为分系统数+1,通过加电信息决定相关菜单项的使能,通过模式信息对相关菜单项文本内容进行修改,修改后的菜单项文本就包含了关键字,进而生成需要形成数据帧的数XML文件字典,包括快、慢两种字典,字典中的主键为修改后菜单项的文本内容,值为数XML文件目录,通过菜单实现模式与数据的关联;
步骤二、通过多种自定义控件的设计,并以顺序布局面板控件为容器,实现界面元素的结构化自动生成
(1)自定义多种功能的用户控件
构建文本框、选择框、指示灯和空显示用户控件,这些控件直接用于与用户进行数据交互,其中文本框控件由文本框和2个标签控件组成,选择框控件由选择框和2个标签控件组成,空显示控件无需基本控件;
(2)结构化的界面自动生成
在点击菜单项时,通过对应XML文件字典的主键可以读取数XML文件,遍历数XML文件,按照元素相关属性完成界面自动生成;
步骤三、通过界面控件与数XML文件并行判读的方式,实现界面参数数据变化时的自动组帧
通过遍历步骤二的数XML文件,读取每个节点或子节点的控件名属性,按照数据类型属性对数据值属性完成类型转换,得到界面显示控件所需的数据值,然后在XML规定的界面容器中按照控件类型进行查找,如果控件名和控件类型相同,则按照控件类型进行赋值,再准备下一次查找,直到读完数XML文件最后一个节点。
2.根据权利要求1所述的一种多模式大数据软件模拟器的实现方法,其特征在于:所述步骤一中的逻辑关系通过菜单来关联,步骤二中的组合多种形式控件完成界面结构化自动生成,步骤三中的界面控件与数XML文件采用并读方式。
CN201610028911.4A 2016-01-08 2016-01-08 一种多模式大数据软件模拟器的实现方法 Expired - Fee Related CN105824684B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610028911.4A CN105824684B (zh) 2016-01-08 2016-01-08 一种多模式大数据软件模拟器的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610028911.4A CN105824684B (zh) 2016-01-08 2016-01-08 一种多模式大数据软件模拟器的实现方法

Publications (2)

Publication Number Publication Date
CN105824684A CN105824684A (zh) 2016-08-03
CN105824684B true CN105824684B (zh) 2019-04-19

Family

ID=56986885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610028911.4A Expired - Fee Related CN105824684B (zh) 2016-01-08 2016-01-08 一种多模式大数据软件模拟器的实现方法

Country Status (1)

Country Link
CN (1) CN105824684B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110362465A (zh) * 2018-10-22 2019-10-22 江苏艾科半导体有限公司 一种使用xml文件保存测试程序相关信息的方法
CN112631585B (zh) * 2020-12-22 2023-03-31 中国航空工业集团公司西安航空计算技术研究所 基于xml的快速参数界面配置方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7178149B2 (en) * 2002-04-17 2007-02-13 Axeda Corporation XML scripting of soap commands
CN102087611B (zh) * 2011-02-14 2015-01-28 中兴通讯股份有限公司 一种描述嵌入式设备的模拟设备属性的方法及模拟设备
CN104573287B (zh) * 2015-02-06 2017-09-26 成都能通科技有限公司 基于界面绑定统一模型的数字仿真框架设计方法
CN104731584B (zh) * 2015-02-26 2018-10-02 武汉爱科唯自动化科技有限公司 一种开放式数控系统人机界面可定制的组态设计方法

Also Published As

Publication number Publication date
CN105824684A (zh) 2016-08-03

Similar Documents

Publication Publication Date Title
Bach et al. Promptsource: An integrated development environment and repository for natural language prompts
EP3433732B1 (en) Converting visual diagrams into code
US10198422B2 (en) Information-processing equipment based on a spreadsheet
Wasserman et al. The future of programming
CN102754072B (zh) 规定用户界面元素
CN106557314A (zh) 应用软件开发方法及装置
CN104823158B (zh) 用于简化的知识工程的方法与系统
JP2012523644A (ja) Cpiシミュレーション・システムのフローシートを有するスプレッドシート・ユーザ・インターフェースの利用
CN114424257A (zh) 使用机器学习对表格数据进行自动描绘和提取
CN104915297B (zh) 一种android设备的APP耗电量的自动化测试方法
CN107506190A (zh) 基于Spring框架的XML文件修改方法及装置
CN110688115A (zh) 生成界面的方法和装置
CN105824684B (zh) 一种多模式大数据软件模拟器的实现方法
CN114968228A (zh) 页面搭建方法、装置、电子设备和计算机可读存储介质
CN113919158A (zh) 一种用于飞行控制面板的仿真方法、装置及存储介质
Nowakowski et al. Requirements-level language and tools for capturing software system essence
US7900191B1 (en) System and method of using an active link in a state programming environment to locate an element in a graphical programming environment
CN110222032A (zh) 一种基于软件数据分析的通用事件模型
CN111427760A (zh) 页面测试方法、装置、设备及存储介质
CN114385155A (zh) vue项目可视化工具生成方法、装置、设备及存储介质
CN103488477A (zh) Java接口的可视化编辑系统和可视化编辑方法
Byson et al. Software Architecture and Software Usability: A Comparison of Data Entry Form Designing Configurable Platforms.
Markopoulos et al. Formal aspects of task based design
Li et al. Research on a pattern-based user interface development method
Paternò et al. User task-based development of multi-device service-oriented applications.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190419

Termination date: 20220108

CF01 Termination of patent right due to non-payment of annual fee