CN110750258A - 一种基于xml的可重用监控软件设计方法 - Google Patents

一种基于xml的可重用监控软件设计方法 Download PDF

Info

Publication number
CN110750258A
CN110750258A CN201911025747.1A CN201911025747A CN110750258A CN 110750258 A CN110750258 A CN 110750258A CN 201911025747 A CN201911025747 A CN 201911025747A CN 110750258 A CN110750258 A CN 110750258A
Authority
CN
China
Prior art keywords
monitoring software
data
xml
modeling
design method
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.)
Pending
Application number
CN201911025747.1A
Other languages
English (en)
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.)
Chengdu Spaceon Technology Co Ltd
Original Assignee
Chengdu Spaceon Technology Co 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 Chengdu Spaceon Technology Co Ltd filed Critical Chengdu Spaceon Technology Co Ltd
Priority to CN201911025747.1A priority Critical patent/CN110750258A/zh
Publication of CN110750258A publication Critical patent/CN110750258A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提出了一种基于XML的可重用监控软件设计方法,将应用程序分割为任务、接口事件、驱动函数、处理过程、数据文件并采用XML语言进行监控软件的功能建模,通过预定的编译程序编译建模后生成的应用程序模型文件、数据表模型文件和驱动函数模型文件,在内存中生成以多叉树的数据结构存储的模型数据,并生成整个应用程序工程框架,通过多次循环遍历程序任务中的所有节点,为相应的事件创建函数,直到所有任务处理完成,得到监控软件应用程序源代码。本发明采用基于对象的建模方法,提供了一种高效实用的、规范的监控软件开发方法,其模型文件具有可重用和可维护性,尤其针对大量的类似应用开发,可大幅度提高监控软件的开发效率。

Description

一种基于XML的可重用监控软件设计方法
技术领域
本发明涉及软件设计开发领域,尤其涉及一种基于XML的可重用监控软件设计方法。
背景技术
当使用VC++及QT等软件进行监控系统的开发时,监控软件不同于普通的应用软件,要与外部设备进行大量的数据交互。由于监控系统的复杂性,处理内容多种多样,接口类型也包括异步串口、同步串口、并行接口或混合接口等类型。目前,监控软件开发质量和周期,很大程度上取决于开发人员的技术水平和需求掌握程度。在这种情况下是,由于程序员的水平参差不齐,造成有些监控软件的开发效率较低及软件可靠性低。
目前在软件开发领域比较多用的建模语言是Unified Modeling Language(UML),是一种统一建模语言或标准建模语言,是一种支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。但是目前在需要与硬件进行交互的监控软件开发领域使用该方法建模存在缺陷和不足,尤其是不利于实现监控软件中的事件处理环节。
发明内容
本发明的目的在于,针对上述问题,提出一种基于XML的可重用监控软件设计方法,实现高效、规范的监控软件开发。
一种基于XML的可重用监控软件设计方法:
S1:将监控软件设计目标进行分类,得到多种类型的对象;
S2:对EXCEL数据表文件及驱动函数文件进行语言建模,生成数据表模型文件、驱动函数模型文件,然后分别对步骤S1中所述的对象进行建模,生成应用程序模型文件;
S3:对步骤S2中三种模型文件进行编译,生成监控软件程序框架和源代码。
本申请中,一种基于XML的可重用监控软件设计方法,所述对象包括任务、接口事件、驱动函数、处理过程和数据文件。
本申请中,一种基于XML的可重用监控软件设计方法,所述任务包括多个监控软件独立的子功能,分别对监控软件实现的多个功能进行描述。
本申请中,一种基于XML的可重用监控软件设计方法,所述的接口事件是监控软件的响应事件,包括接收数据、发送数据、异常及中断事件。
本申请中,一种基于XML的可重用监控软件设计方法,所述的驱动函数是监控软件用于驱动硬件的程序。
本申请中,一种基于XML的可重用监控软件设计方法,所诉的处理过程是监控软件在处理中使用的实现数据处理、分析、转换、存储以及显示的基本功能。
本申请中,一种基于XML的可重用监控软件设计方法,所述的数据文件根据监控软件接受的用户需求,进行数据格式的转换并存档。
本申请中,一种基于XML的可重用监控软件设计方法,所述的语言建模采用MSML建模语言,所述MSML建模语言基于XML1.0标准,对各种对象、对象之间的关系以及监控软件进行描述。
本申请中,一种基于XML的可重用监控软件设计方法,所述的编译是通过对模型文件的解析,在内存中生成以多叉树的数据结构存储的模型数据,并生成整个应用程序框架,直到对多叉树的遍历结束,完成编译。
本发明的有益效果:本设计方法相对于程序员直接进行编程的方法具有规范和高效的优点,程序员只需要使用对应开发工具的框架,加入建模编译后的源代码就可以实现功能;模型文件具有可重用性和可维护性,尤其针对大量的类似应用开发,可大幅提高监控软件的开发效率。
附图说明
图1是一种基于XML的可重用监控软件设计方法总体示意图;
图2是一种基于XML的可重用监控软件设计方法应用程序模型文件结构图;
图3是一种基于XML的可重用监控软件设计方法编译程序设计流程图。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式。
本实施例中,一种基于XML的可重用监控软件设计方法,将监控软件设计目标分类为任务、接口事件、驱动函数、处理过程、数据文件5种对象,然后分别对5种对象进行建模,生成图1所示应用程序模型文件1,并对EXCEL数据表文件及监控程序驱动函数文件进行建模,生成EXCEL数据表模型文件2、监控程序驱动函数模型文件3。
所述的应用程序模型文件的结构为图2中5种监控软件设计目标分类对象,该5种设计目标分类对象均使用XML语言严格按照相应的格式进行建模,并采用通用的XML语言编辑工具,依照模板进行有效性检查;
进一步的,监控软件设计使用在XML1.0标准的基础上,定义的一种监控软件建模语言MSML(Monitor And Control Software Modeling Langurage)进行建模,使用MSML对以上各种对象及对象之间的关系,以及监控软件进行描述;
进一步的,该监控软件建模语言MSML具有可重用性,可在类似模型文件的基础上进行修改,也可在软件升级的情况下,对已有模型进行修改,以满足用户的新需求。
数据文件指的是监控软件接受到数据后存储数据的方式,根据监控软件接受的用户需求,依照预先设定好的模板进行数据格式的转换并将其按特定的方式存放为.txt、.dat等类型。
任务指所构建的监控软件所具备的部分功能,包括多个监控软件独立的子功能,所述任务可分别对监控软件实现的多个功能进行描述,例如数据采集,在混杂多类数据的信息中提取符合该软件需求的某类数据;数据分析、波形处理则是指将接收到的有效数据进行特定的处理,以满足使用者的观测需求;数据发送则是将指令或数据按照规定的格式发送给其他的接收机。
接口事件是监控软件的响应事件,指监控软件在搭建完成后具备对观测接口的功能,其事件包括接收数据、发送数据、异常及中断事件。
驱动函数能实现监控软件的驱动通信,是监控软件用于驱动硬件的程序,该模块预制常用的通信协议,程序员在使用时可根据需求直接调用。
处理过程部分列出监控软件在处理中需要使用的所有过程,这些过程能实现相应的一些功能,包括数据处理、分析、转换、存储以及显示的基本功能,例如计算接收到的某种数据的平均值或对某类数据进行加密解密、将数据以某种方式显示在软件界面上。
在建模步骤完成后,运用事先编译好的编译程序进行编译处理,如图1所述编译程序4对应用程序模型文件1、EXCEL数据表模型文件2、监控程序驱动函数模型文件3进行分析处理,生成监控软件应用程序源代码5,其中编译程序4设计流程如图3所述,首先将模型文件读入内存,进而生成XML应用程序模型树、数据表树、及驱动函数树,在内存中生成以多叉树的数据结构存储的模型数据,根据数据表树、驱动函数树生成一个空的工程框架。在此基础下,循环遍历应用程序任务的所有节点,生成应用程序函数文件和对应头文件,为相应的事件创建函数,使得系统逐步具备预期的功能,当所有任务处理完成时,得到监控软件应用程序源代码。
本方案采用一种基于任务、接口事件、驱动函数、处理过程、数据文件等5种对象的监控软件建模方法,采用图的数据结构对模型进行解析而得到结构合理、满足系统要求的监控软件源代码,相对于程序员直接进行编程的方法具有规范和高效的优点,使得开发者只需要使用对应开发工具的框架,加入建模编译后的源代码就可以实现功能;模型文件具有可重用性和可维护性,尤其针对大量的类似应用开发,可大幅提高监控软件的开发效率。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书界定。

Claims (9)

1.一种基于XML的可重用监控软件设计方法,其特征在于:
S1:将监控软件设计目标进行分类,得到多种类型的对象;
S2:对EXCEL数据表文件及驱动函数文件进行语言建模,生成数据表模型文件、驱动函数模型文件,然后分别对步骤S1中所述的对象进行建模,生成应用程序模型文件;
S3:对步骤S2中三种模型文件进行编译,生成监控软件程序框架和源代码。
2.根据权利要求1所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述对象包括任务、接口事件、驱动函数、处理过程和数据文件。
3.根据权利要求2所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述任务包括多个监控软件独立的子功能,分别对监控软件实现的多个功能进行描述。
4.根据权利要求2所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述的接口事件是监控软件的响应事件,包括接收数据、发送数据、异常及中断事件。
5.根据权利要求2所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述的驱动函数是监控软件用于驱动硬件的程序。
6.根据权利要求2所述的一种基于XML的可重用监控软件设计方法,其特征在于,所诉的处理过程是监控软件在处理中使用的实现数据处理、分析、转换、存储以及显示的基本功能。
7.根据权利要求2所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述的数据文件根据监控软件接受的用户需求,进行数据格式的转换并存档。
8.根据权利要求1所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述的语言建模采用MSML建模语言,所述MSML建模语言基于XML1.0标准,对各种对象、对象之间的关系以及监控软件进行描述。
9.根据权利要求1所述的一种基于XML的可重用监控软件设计方法,其特征在于,所述的编译是通过对模型文件的解析,在内存中生成以多叉树的数据结构存储的模型数据,并生成整个应用程序框架,直到对多叉树的遍历结束,完成编译。
CN201911025747.1A 2019-10-25 2019-10-25 一种基于xml的可重用监控软件设计方法 Pending CN110750258A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911025747.1A CN110750258A (zh) 2019-10-25 2019-10-25 一种基于xml的可重用监控软件设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911025747.1A CN110750258A (zh) 2019-10-25 2019-10-25 一种基于xml的可重用监控软件设计方法

Publications (1)

Publication Number Publication Date
CN110750258A true CN110750258A (zh) 2020-02-04

Family

ID=69280100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911025747.1A Pending CN110750258A (zh) 2019-10-25 2019-10-25 一种基于xml的可重用监控软件设计方法

Country Status (1)

Country Link
CN (1) CN110750258A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360134A (zh) * 2020-03-06 2021-09-07 武汉斗鱼网络科技有限公司 安全验证程序的生成方法、装置、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495916A (zh) * 2011-11-07 2012-06-13 中国南方电网有限责任公司 一种基于对象匹配的多应用系统全景建模方法
US20120254842A1 (en) * 2011-03-31 2012-10-04 Coral Networks, Inc. System and method for the structuring and interpretation of organic computer programs
CN104268428A (zh) * 2014-10-14 2015-01-07 国家电网公司 一种用于指标计算的可视化配置方法
CN105573763A (zh) * 2015-12-23 2016-05-11 电子科技大学 一种支持rtos的嵌入式系统建模方法
CN109814844A (zh) * 2019-01-16 2019-05-28 武汉科技大学 一种集成的支持元建模的开发和运行系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120254842A1 (en) * 2011-03-31 2012-10-04 Coral Networks, Inc. System and method for the structuring and interpretation of organic computer programs
CN102495916A (zh) * 2011-11-07 2012-06-13 中国南方电网有限责任公司 一种基于对象匹配的多应用系统全景建模方法
CN104268428A (zh) * 2014-10-14 2015-01-07 国家电网公司 一种用于指标计算的可视化配置方法
CN105573763A (zh) * 2015-12-23 2016-05-11 电子科技大学 一种支持rtos的嵌入式系统建模方法
CN109814844A (zh) * 2019-01-16 2019-05-28 武汉科技大学 一种集成的支持元建模的开发和运行系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360134A (zh) * 2020-03-06 2021-09-07 武汉斗鱼网络科技有限公司 安全验证程序的生成方法、装置、设备和存储介质
CN113360134B (zh) * 2020-03-06 2022-06-17 武汉斗鱼网络科技有限公司 安全验证程序的生成方法、装置、设备和存储介质

Similar Documents

Publication Publication Date Title
Kazman et al. View extraction and view fusion in architectural understanding
US6877155B1 (en) System and method for generating target language code utilizing an object oriented code generator
US20190129734A1 (en) Data collection workflow extension
CN111459889B (zh) 一种用于物联网平台的设备数据模型生成方法和装置
US8839198B2 (en) Automated analysis of composite applications
EP1576439A2 (en) A method, a language and a system for the definition and implementation of software solutions
CN104778124A (zh) 一种软件应用自动化测试方法
CN109032577B (zh) 一种数据仿真方法
CN111880784B (zh) 一种面向simscript语言的离散事件仿真图形化建模方法
CN102968372B (zh) 具有程序分析功能的程序调试系统
Đukić et al. Model execution: An approach based on extending domain-specific modeling with action reports
Medvidovic et al. Stemming Architectural Erosion by Coupling Architectural Discovery and Recovery.
CN110750258A (zh) 一种基于xml的可重用监控软件设计方法
US6330527B1 (en) Apparatus and method for modeling frameworks via use of object-oriented analysis information
CN105700934A (zh) 一种智能编译方法和智能编译系统
US20230041718A1 (en) Automated code generation based on pseudo-code
Jelly et al. Software engineering for parallel systems
CN1316359C (zh) 用户指导的程序半自动并行化方法
Badica et al. Integrating role activity diagrams and hybrid IDEF for business process modeling using MDA
US8694293B2 (en) Simulation support method, computer-readable storage medium storing simulation support program, and simulation support apparatus
Canfora et al. Data flow diagrams: reverse engineering production and animation
Diertens A process algebra software engineering environment
Mrayyan et al. Debugging of Parallel Programs using Distributed Cooperating Components
EP4231204A1 (en) System for developing and running applications in hybrid quantum computing networks
Lüders et al. Adopting a component-based software architecture for an industrial control system–a case study

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200204