KR101319299B1 - Device for handling korean variable message format message and method thereof - Google Patents

Device for handling korean variable message format message and method thereof Download PDF

Info

Publication number
KR101319299B1
KR101319299B1 KR1020110112921A KR20110112921A KR101319299B1 KR 101319299 B1 KR101319299 B1 KR 101319299B1 KR 1020110112921 A KR1020110112921 A KR 1020110112921A KR 20110112921 A KR20110112921 A KR 20110112921A KR 101319299 B1 KR101319299 B1 KR 101319299B1
Authority
KR
South Korea
Prior art keywords
variable
format message
field
file
variable format
Prior art date
Application number
KR1020110112921A
Other languages
Korean (ko)
Other versions
KR20130048025A (en
Inventor
임원기
구성모
김형권
Original Assignee
국방과학연구소
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 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020110112921A priority Critical patent/KR101319299B1/en
Publication of KR20130048025A publication Critical patent/KR20130048025A/en
Application granted granted Critical
Publication of KR101319299B1 publication Critical patent/KR101319299B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 한국형 지상전술데이터링크(KVMF; Korean Variable Message Format) 통합 데이터베이스에 기록된 가변포맷 메시지의 구조 및 제약사항을 포함하는 MD(message description) 파일을 생성하고, 가변포맷 메시지를 처리할 수 있는 가변포맷 메시지 처리 코드를 상기 MD 파일을 통해 생성하는 가변포맷 메시지 처리장치를 제공하기 위한 것이다. 이를 위해, 본 명세서에 개시된 일 실시 예에 따른 가변포맷 메시지 처리장치는, 통합 데이터베이스의 테이블 구조를 분석하여 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 포함하는 파일을 생성하는 파일 생성부; 및 상기 파일에 포함된 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 토큰 단위로 파싱(parsing)하여 토큰 정보를 저장하고, 상기 저장된 토큰 정보를 필드 별로 처리하여 가변포맷 메시지 처리를 수행하는 코드를 생성하는 코드 생성부를 포함하는 것을 특징으로 한다.The present invention can generate a message description (MD) file that contains the structure and constraints of a variable-format message recorded in the Korean Variable Message Format (KVMF) integrated database, and can process a variable-format message. A variable format message processing apparatus for generating a variable format message processing code through the MD file. To this end, the variable-format message processing apparatus according to an embodiment of the present disclosure, a file generation unit for analyzing a table structure of the integrated database to generate a file containing the structure information and constraint information for one or more variable-format message ; And parsing structure information and constraint information of one or more variable format messages included in the file in token units to store token information, and processing the stored token information by fields to perform variable format message processing. It characterized in that it comprises a code generating unit for generating a code.

Description

가변포맷 메시지 처리장치 및 그 방법{DEVICE FOR HANDLING KOREAN VARIABLE MESSAGE FORMAT MESSAGE AND METHOD THEREOF}Variable Format Message Processing Device and Method therefor {DEVICE FOR HANDLING KOREAN VARIABLE MESSAGE FORMAT MESSAGE AND METHOD THEREOF}

본 발명은 한국형 지상전술데이터링크(KVMF; Korean Variable Message Format)와 같은 가변포맷 메시지 처리장치에 관한 것으로, 더욱 상세하게는 KVMF 통합 데이터베이스에 기록된 가변포맷 메시지의 구조 및 제약사항을 포함하는 MD(message description) 파일을 생성하고, 가변포맷 메시지를 처리할 수 있는 가변포맷 메시지 처리 코드를 상기 MD 파일을 통해 생성하는 가변포맷 메시지 처리장치 및 그 방법에 관한 것이다.The present invention relates to a variable-format message processing device such as Korean Variable Message Format (KVMF), and more particularly, to an MD (including the structure and constraints of a variable-format message recorded in a KVMF integrated database). message description) The present invention relates to a variable format message processing apparatus and a method for generating a variable format message processing code capable of processing a variable format message through the MD file.

미래 전장에서의 네트워크 중심전(NCW:Network Centric Warfare)을 구현하기 위해, 한국형 지상전술데이터링크(KVMF; Korean Variable Message Format) 프로토콜을 사용하며, 이 프로토콜에 사용되는 가변포맷 메시지는 전술 무기체계에서 사용되는 다양한 형태의 전술정보를 실시간으로 교환하고, 무기체계간 정보 유통을 통한 연동 및 상호 운용성을 확보하며, 무기체계에서 사용되는 다양한 형태의 전술정보를 실시간으로 교환하기 위해 비트단위의 전술정보 교환용 가변데이터로 구성된다. In order to implement Network Centric Warfare (NCW) in the future battlefields, the Korean Variable Message Format (KVMF) protocol is used, and the variable format messages used in this protocol are used in tactical weapon systems. To exchange tactical information of various types used in real time, secure interlocking and interoperability through the distribution of information between weapon systems, and exchange bit tactical information in real time for various types of tactical information used in weapon systems It consists of variable data.

이러한 가변포맷 메시지는 군 전술환경에서 존재할 수 있는 데이터들을 모두 포함하며, 가변포맷 메시지를 처리하기 위해, 가변포맷 메시지처리 소프트웨어 모듈을 탑재한 소프트웨어가 개발 및 사용된다. 이러한 가변포맷 메시지처리 소프트웨어는 센서, 시스템 체계 및 기타 연동 장비 등과 연결되어 시그널 프로세싱을 수행하는 실시간 처리 프로세싱 모듈 또는 유닛으로써, 연동되는 장비에 따라 각 장비에서 사용되는 가변포맷 메시지 처리를 수행하게 된다. Such a variable format message includes all data that may exist in a military tactical environment. In order to process a variable format message, software equipped with a variable format message processing software module is developed and used. The variable format message processing software is a real-time processing processing module or unit that is connected to sensors, system systems, and other interworking equipment to perform signal processing, and performs the variable format message processing used in each device according to the interworking equipment.

다수 체계가 사용하는 표준 네트워크 프로토콜 상에서는 사용되는 메시지들이 하나의 표준 관리 대상이다. 가변포맷 메시지는 표준의 변경에 따라 계속적으로 진화되고 있으므로, 변화되는 표준 메시지를 KVMF 통합 데이터베이스(KVID)에 기록하여 관리하게 된다. 가변포맷 메시지처리기는 표준 규약에 따라 정해진 메시지 내용을 비트열로 변환(인코딩) 및 검사하고, 수신한 비트열 데이터를 의미를 갖는 메시지 내용으로 다시 변환(디코딩) 및 검사하는 역할을 수행한다. On standard network protocols used by many systems, the messages used are a standard target of management. Variable format messages continue to evolve with changes in the standard, so that standard message changes are recorded and managed in the KVMF Integration Database (KVID). The variable format message processor converts (encodes) and checks message contents determined according to standard protocols into bit strings, and converts (decodes) and checks the received bit string data into meaningful message contents.

이러한 환경에서 가변포맷 메시지 표준에 대한 변경이 발생하는 경우, 가변포맷 메시지 표준을 적용하여야 하며, 배포된 모든 가변포맷 메시지처리기들은 관련 표준을 다시 따를 수 있도록 가변포맷 메시지 처리 코드가 수정되고 재컴파일 되어야 한다. In such circumstances, if a change is made to the variable-format message standard, the variable-format message standard must be applied, and all distributed-format message handlers must be modified and recompiled so that they can follow the relevant standard again. do.

이는 가변포맷 메시지 표준의 변경이 빈번할수록, 그리고 탑재 대상 체계의 수가 많을수록 많은 개발 인력, 개발 시간적 노력이 투입되어야 한다. 또한, 가변포맷 메시지 표준을 적용한 소프트웨어 통합 시, 개발자들의 실수로 인해 디버깅 시간, 재시험 시간이 비약적으로 증가할 가능성이 매우 높다. 종래에는 가변포맷 메시지 표준 변경이 KVID에 반영된 경우, 각 체계별 소프트웨어 개발자는 갱신된 표준 메시지를 처리하기 위해, KVID를 통해 가변포맷 메시지를 분석하여, 신규 또는 변경된 내용을 가변포맷 메시지처리기 소프트웨어 코드로 반영하여야만 했다. This means that the more frequently the variable format message standard is changed, and the larger the number of target systems are installed, the more development manpower and development time effort should be invested. In addition, when integrating software using the variable-format message standard, it is very likely that developers will make a significant increase in debugging time and retest time due to mistakes. Conventionally, when the change of the variable format message standard is reflected in the KVID, the software developer for each system analyzes the variable format message through the KVID to process the updated standard message, and converts the new or changed content into the variable format message processor software code. Had to reflect.

또한, 코드로의 반영 이후, 수정된 코드를 재컴파일하여 실행 파일을 만들고 올바르게 개발되었는지를 확인하기 위해 제3의 소프트웨어(예를 들어, 시뮬레이터 등)를 이용한 시험 및 비교 분석을 진행하여야만 했다. 이 과정에서 코드 변경 사항의 경중에 따라 많은 시험 및 디버깅 시간이 소요되었다. 이런 시간 소요는 가변포맷 메시지 표준의 변경이 있을 때마다 필연적으로 발생하며 가변포맷 메시지처리기를 탑재하는 체계가 많아질수록 그 시간이 증가할 수 밖에 없다. 이와 같은 종래의 가변포맷 메시지처리기 갱신 기술은 개발시작부터 개발종료시점까지 개발자에 의해 주도되므로 개발자의 역량 및 투입 인원 수에 따라 그 품질이 좌우되며 많은 시간이 소요된다. In addition, after reflection into the code, tests and comparative analysis with third-party software (eg, simulators, etc.) had to be conducted to recompile the modified code to create an executable file and verify that it was developed correctly. This took a lot of testing and debugging time, depending on how serious the code changes were. This time lapse inevitably occurs whenever there is a change in the variable-format message standard, and as time goes by, more and more systems are equipped with variable-format message handlers. This conventional variable format message processor update technology is led by the developer from the beginning of development to the end of development, so the quality depends on the developer's capability and the number of inputs and takes a lot of time.

이와 같이, 종래기술에 따라 가변포맷 메시지처리기를 개발할 경우, 투입되는 개발자 수, 개발자 역량, 그리고 변경되는 소프트웨어의 규모에 따라 예상 개발 시간이 많이 좌우된다. 그리고 수정 소요가 발생할 시, 많은 개발 오류를 동반할 것이며 향후 소프트웨어 통합 작업에 있어서 많은 디버깅 시간이 소모될 수 밖에 없다. As described above, when the variable format message processor is developed according to the related art, the expected development time depends a lot on the number of developers, developer capacity, and the size of software to be changed. And when modifications take place, it will be accompanied by a lot of development errors, and a lot of debugging time will be consumed in future software integration work.

이에, 이러한 개발시간의 소모적인 요소를 제거하고, 수작업에 의한 개발 오류를 감소하기 위해 KVID의 수정만으로 가변포맷 메시지처리기 소프트웨어가 자동으로 생성되는 기술의 개발이 요구되고 있다.Accordingly, in order to remove such a waste of development time and reduce development errors by manual operation, there is a demand for the development of a technology in which variable format message processor software is automatically generated only by modifying KVID.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 한국형 지상전술데이터링크(KVMF; Korean Variable Message Format) 통합 데이터베이스에 기록된 가변포맷 메시지의 구조 및 제약사항을 포함하는 MD(message description) 파일을 생성하고, 가변포맷 메시지를 처리할 수 있는 가변포맷 메시지 처리 코드를 상기 MD 파일을 통해 생성하는 가변포맷 메시지 처리장치를 제공하는 것을 목적으로 한다.The present invention is to solve the above problems, generating a message description (MD) file containing the structure and constraints of a variable-format message recorded in the Korean ground message data link (KVMF) integrated database An object of the present invention is to provide a variable format message processing apparatus for generating a variable format message processing code capable of processing a variable format message through the MD file.

본 명세서에 개시된 일 실시 예에 따른 가변포맷 메시지 처리장치는, 통합 데이터베이스의 테이블 구조를 분석하여 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 포함하는 파일을 생성하는 파일 생성부; 및 상기 파일에 포함된 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 토큰 단위로 파싱(parsing)하여 토큰 정보를 저장하고, 상기 저장된 토큰 정보를 필드 별로 처리하여 가변포맷 메시지 처리를 수행하는 코드를 생성하는 코드 생성부를 포함하는 것을 특징으로 한다.According to an embodiment of the present disclosure, an apparatus for processing a variable format message may include: a file generator configured to analyze a table structure of an integrated database and generate a file including structure information and constraint information about one or more variable format messages; And parsing structure information and constraint information of one or more variable format messages included in the file in token units to store token information, and processing the stored token information by fields to perform variable format message processing. It characterized in that it comprises a code generating unit for generating a code.

본 발명의 가변포맷 메시지 처리장치에 따르면, 가변포맷 메시지 데이터를 저장하는 KVID(KVMF 통합 데이터베이스)로부터 중간 매개체 역할을 하는 MD 파일을 생성하고 상기 MD 파일로부터 가변포맷 메시지처리기 소프트웨어를 자동으로 생성함으로써, 가변포맷 메시지 처리 관련 소프트웨어 개발 인력을 최소한으로 유지할 수 있고, 개발 인력의 수작업으로 인한 인위적 개발 오류를 감소시킬 수 있는 효과를 얻을 수 있다.According to the variable format message processing apparatus of the present invention, by generating an MD file serving as an intermediate medium from a KVID (KVMF integrated database) storing variable format message data, and automatically generating the variable format message processor software from the MD file, Software development personnel related to variable-format message processing can be kept to a minimum, and the artificial development errors caused by manual development personnel can be reduced.

도 1은 본 발명의 일실시예에 따른 가변포맷 메시지 처리장치의 구성을 도시한 블록도이다.
도 2는 본 발명의 일실시예에 따라 KVMF 통합 데이터베이스로부터 가변포맷 메시지 구조 데이터를 추출하여 MD 파일을 생성하는 원리를 도시한 도면이다.
도 3은 본 발명의 일실시예에 따른 KVMF 통합 데이터베이스로부터 가변포맷 메시지 제약사항의 추출하여 MD 파일을 생성하는 원리를 도시한 도면이다.
도 4는 본 발명의 일실시예에 따른 MD 파일 생성 방법의 흐름을 도시한 순서도이다.
도 5는 본 발명의 일실시예에 따른 가변포맷 메시지 처리 코드 생성 방법의 흐름을 도시한 순서도이다.
도 6은 본 발명의 일실시예에 따른 가변포맷 메시지 처리 코드 생성에 대한 알고리즘의 흐름을 도시한 순서도이다.
도 7은 도 6에 도시된 메시지 구조체 및 구조체 반복 뎁스(Depth)를 구성하는 단계(S300)의 상세한 흐름을 도시한 순서도이다.
도 8은 도 6에 도시된 메시지 구조체 및 구조체 반복 처리 우선 순위를 결정하는 단계(S400)의 상세한 흐름을 도시한 순서도이다.
도 9는 도 6에 도시된 헤더파일과 소스파일을 생성하는 단계(S500)의 상세한 흐름을 도시한 순서도이다.
1 is a block diagram showing the configuration of a variable-format message processing apparatus according to an embodiment of the present invention.
2 is a diagram illustrating a principle of generating an MD file by extracting variable format message structure data from a KVMF integrated database according to an embodiment of the present invention.
3 is a diagram illustrating a principle of generating an MD file by extracting variable format message constraints from a KVMF integrated database according to an embodiment of the present invention.
4 is a flow chart showing the flow of the MD file generation method according to an embodiment of the present invention.
5 is a flowchart illustrating a flow of a method for generating a variable format message processing code according to an embodiment of the present invention.
6 is a flow chart illustrating an algorithm flow for generating a variable format message processing code according to an embodiment of the present invention.
FIG. 7 is a flowchart illustrating a detailed flow of configuring a message structure and a structure repetition depth illustrated in FIG. 6 (S300).
FIG. 8 is a flowchart illustrating a detailed flow of the step S400 of determining the message structure and structure repetition processing priority shown in FIG. 6.
FIG. 9 is a flowchart illustrating a detailed flow of generating a header file and a source file shown in FIG. 6 (S500).

이하에서는 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시 예에 따른 가변포맷 메시지 처리장치(100)의 블록도이다. 1 is a block diagram of a variable-format message processing apparatus 100 according to an embodiment of the present invention.

본 발명의 일 실시 예에 따르면, 가변포맷 메시지 처리장치(100)는 한국형 지상전술데이터링크(KVMF; Korean Variable Message Format) 통합 데이터베이스(110), MD 파일 생성부(120), 및 가변포맷 메시지 처리 코드 생성부(130)를 포함한다. KVMF 통합 데이터베이스(110)는 가변포맷 메시지 처리장치(100)의 일부 구성으로 구현될 수도 있고, 가변포맷 메시지 처리장치(100)와는 별도의 외부 구성으로 구현될 수도 있다. 예를 들어, KVMF 통합 데이터베이스(110)는 네트워크를 통해 가변포맷 메시지 처리장치(100)와 연결될 수 있다. 이 경우에, 가변포맷 메시지 처리시스템은 KVMF 통합 데이터베이스(110)와 가변포맷 메시지 처리장치를 포함한다.According to an embodiment of the present invention, the variable format message processing apparatus 100 may include a Korean terrestrial data link (KVMF) integrated database 110, an MD file generator 120, and a variable format message processing. The code generator 130 is included. The KVMF integrated database 110 may be implemented in some components of the variable format message processing apparatus 100 or may be implemented in an external configuration separate from the variable format message processing apparatus 100. For example, the KVMF integration database 110 may be connected to the variable format message processing apparatus 100 through a network. In this case, the variable format message processing system includes a KVMF integrated database 110 and a variable format message processing apparatus.

MD 파일 생성부(120)는 KVMF 통합 데이터베이스(110)의 테이블 구조를 분석하여, 상기 KVMF 통합 데이터베이스가 유지하는 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 각각 포함하는 MD(message description) 파일을 생성한다. MD 파일 생성부(120)는 상기 MD 파일을 상기 가변포맷 메시지 처리 코드 생성부(130)의 파싱이 가능하도록 선정된(predetermined) 스크립트 언어로 생성할 수 있다.MD file generation unit 120 analyzes the table structure of the KVMF integrated database 110, each of the MD (message description) including the structural information and constraint information for one or more variable-format messages maintained by the KVMF integrated database Create a file. The MD file generator 120 may generate the MD file in a script language that is predetermined to be parsed by the variable format message processing code generator 130.

MD 파일 생성부(120)는 가변포맷 메시지에 대한 구조 정보로 가변포맷 메시지의 번호, 가변포맷 메시지의 이름, 가변포맷 메시지의 설명, 필드 인덱스 번호, 필드 이름, 필드 비트(bit) 크기, 및 필드 유효 값 중 적어도 하나를 생성할 수 있다.The MD file generating unit 120 is a structure information on the variable format message, the number of the variable format message, the name of the variable format message, the description of the variable format message, the field index number, the field name, the field bit size, and the field. At least one of the valid values may be generated.

도 2에 도시된 바와 같이, MD 파일 생성부(120)는 KVMF 통합 데이터베이스(110)의 테이블 구조로부터 가변포맷 메시지에 대하여 인덱스(201)를 생성하고, 필드(202)를 생성하며, 필드 크기(203)를 생성하고, 그룹(204)을 생성하며, 필드별 유효값(205)을 검색하여 생성하여, 선정된 스크립트 언어로 MD 파일을 구현할 수 있다. As shown in FIG. 2, the MD file generation unit 120 generates an index 201 for a variable format message, generates a field 202 from a table structure of the KVMF integrated database 110, and generates a field size ( 203, a group 204, and a valid value 205 for each field may be searched and generated to implement an MD file in a selected scripting language.

또한, MD 파일 생성부(120)는 가변포맷 메시지 제약사항 정보로 사례(case) 정보, 조건(condition) 정보, 기본값(default) 정보, 서비스 제한(service restriction) 정보, 예상 응답(expected response) 정보, 특별 고려사항(special consideration) 정보, 및 사례 단계의 최소구현(case level minimum implementation) 정보 중 어느 하나 이상을 생성할 수 있다. In addition, the MD file generation unit 120 includes case information, condition information, default information, service restriction information, and expected response information as variable format message constraint information. , One or more of special consideration information, and case level minimum implementation information.

도 3에 도시된 바와 같이, MD 파일 생성부(120)는 KVMF 통합 데이터베이스(110)의 테이블 구조로부터 제약번호(301)를 생성하고, 인덱스(302)를 생성하며, 연산자(303)를 생성하고, 제약사항 유효 값(304)을 생성하여, 선정된 스크립트 언어로 MD 파일을 구현할 수 있다. As shown in FIG. 3, the MD file generation unit 120 generates a constraint number 301 from the table structure of the KVMF integrated database 110, generates an index 302, and generates an operator 303. In addition, the constraint valid value 304 may be generated to implement the MD file in the selected scripting language.

도 4는 본 발명의 일실시예에 따른 MD 파일 생성 방법의 흐름을 도시한 순서도이다. 4 is a flow chart showing the flow of the MD file generation method according to an embodiment of the present invention.

본 발명의 일실시예에 따르면, MD 파일 생성부(120)는 KVMF 통합 데이터베이스(110)에 기록된 가변포맷 메시지를 호출하고(S112), 가변포맷 메시지에 대하여 가변포맷 메시지 별 문법 및 처리규칙을 생성하며(S114), 생성된 문법 및 처리규칙을 내부 데이터베이스에 저장할 수 있다(S116). MD 파일 생성부(120)는 상기 데이터베이스로부터 가변포맷 메시지 별 데이터를 검색하고(S122), 상기 검색한 메시지가 마지막 메시지인지 여부를 판단한다(S124). According to an embodiment of the present invention, the MD file generation unit 120 calls the variable format message recorded in the KVMF integrated database 110 (S112), and the grammar and processing rules for the variable format message for the variable format message. In operation S114, the generated grammar and processing rules may be stored in an internal database in operation S116. The MD file generation unit 120 retrieves data for each variable format message from the database (S122), and determines whether the retrieved message is the last message (S124).

제124 단계에서 판단 결과, 상기 메시지가 마지막 메시지가 아닌 경우, MD 파일 생성부(120)는 상기 메시지가 소정의 메시지 구조 데이터(예를 들어, Kxx.x의 메시지 구조 데이터)를 갖는지 여부를 판단한다(S132). 상기 판단 결과 상기 메시지가 소정의 메시지 구조 데이터를 갖는 경우, MD 파일 생성부(120)는 상기 메시지의 구조 데이터를 추출하고(S134), 상기 메시지가 소정의 메시지 제약사항(예를 들어, Kxx.x의 메시지 제약사항)을 갖는지 여부를 판단한다(S136). 상기 메시지가 메시지 제약사항을 갖는 경우, MD 파일 생성부(120)는 상기 메시지 제약사항 데이터를 추출하고(S138), 상기 추출한 메시지 구조 데이터 및 상기 메시지 제약사항 데이터를 소정의 파일명(예를 들어, "Kxx.MD"라는 파일명)으로 저장할 수 있다. As a result of the determination in step 124, if the message is not the last message, the MD file generation unit 120 determines whether the message has predetermined message structure data (eg, message structure data of Kxx.x). (S132). As a result of the determination, when the message has the predetermined message structure data, the MD file generation unit 120 extracts the structure data of the message (S134), and the message has a predetermined message constraint (for example, Kxx. It is determined whether or not the message constraint of x) (S136). When the message has a message constraint, the MD file generation unit 120 extracts the message constraint data (S138), and extracts the extracted message structure data and the message constraint data by a predetermined file name (for example, File name "Kxx.MD".

이 후, MD 파일 생성부(120)는 다시 메시지 별 데이터 검색을 수행하고(S122), 제124 단계에서 해당 메시지가 마지막 메시지인 경우, 메시지 별로 MD 파일을 통합하여 저장함으로써(S150), KVMF 통합 데이터베이스(110)에 기록된 가변포맷 메시지에 대한 MD 파일을 생성할 수 있다. After that, the MD file generation unit 120 performs a data search for each message again (S122), and if the corresponding message is the last message in step 124, by integrating and storing the MD file for each message (S150), KVMF integration The MD file for the variable format message recorded in the database 110 may be generated.

다시 도 1을 참조하면, 가변포맷 메시지 처리 코드 생성부(130)는 상기 MD 파일이 포함하는 상기 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 토큰 단위로 파싱(parsing)하여 토큰 정보를 저장하고, 상기 저장된 토큰 정보를 필드 별로 처리하여 가변포맷 메시지 처리를 수행하는 가변포맷 메시지 처리 코드를 생성한다.Referring back to FIG. 1, the variable format message processing code generation unit 130 parses the structure information and the constraint information of the one or more variable format messages included in the MD file in token units to obtain token information. Stores and processes the stored token information for each field to generate a variable-format message processing code for performing a variable-format message processing.

가변포맷 메시지 처리 코드 생성부(130)는 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 식별자(식별 정보), 인덱스, 필드 이름, 필드 크기, 유효 값, 및 제약사항 정보로 구분되는 토큰 단위로 파싱하여 상기 토큰 정보를 저장할 수 있다. 가변포맷 메시지 처리 코드 생성부(130)는 상기 토큰 정보를 그룹존재지시자(GPI), 필드존재지시자(FPI), 그룹반복지시자(GRI), 및 필드반복지시자(FRI)를 통해 각각 필드 처리할 수 있다. The variable-format message processing code generation unit 130 divides the structure information and the constraint information for the variable-format message into token units that are divided into identifiers (identification information), indexes, field names, field sizes, valid values, and constraint information. The token information may be stored by parsing. The variable format message processing code generation unit 130 may process the token information through a group existence indicator (GPI), a field existence indicator (FPI), a group repeat indicator (GRI), and a field repeat indicator (FRI). have.

도 5는 본 발명의 일실시예에 따른 가변포맷 메시지 처리 코드 생성 방법의 흐름을 도시한 순서도이다. 5 is a flowchart illustrating a flow of a method for generating a variable format message processing code according to an embodiment of the present invention.

본 발명의 일실시예에 따르면, 가변포맷 메시지 처리 코드 생성부(130)는 MD 파일을 수신하고(S210), MD 파일로부터 가변포맷 메시지에 대한 정보를 각각 메시지 별로 읽고(S220), 상기 각 정보를 토큰 단위로 파싱할 수 있다(S232). 가변포맷 메시지 처리 코드 생성부(130)는 토큰 단위의 식별오류를 검사하고(S234), 오류가 없는 경우 상기 각 토큰 단위를 통해 식별자, 인덱스, 필드 이름, 필드 크기, 유효 값 및 제약사항 정보로 구분되는 토큰 정보를 내부 데이터베이스에 저장할 수 있다(S236). According to one embodiment of the invention, the variable-format message processing code generation unit 130 receives the MD file (S210), and reads the information on the variable-format message from the MD file for each message (S220), each of the information Can be parsed in token units (S232). The variable-format message processing code generation unit 130 checks the identification error in token units (S234), and if there is no error, identifies the identifier, index, field name, field size, valid value, and constraint information through the respective token units. Token information that is distinguished may be stored in an internal database (S236).

가변포맷 메시지 처리 코드 생성부(130)는 상기 토큰 정보를 필드 별로 분기한 후(S242), 그룹존재지시자(GPI) 필드, 필드존재지시자(FPI) 필드, 그룹반복지시자(GRI) 필드, 필드반복지시자(FRI) 필드, 및 기타 필드 별로 상기 토큰 정보를 처리할 수 있다. 가변포맷 메시지 처리 코드 생성부(130)는 상기 각 필드 별 처리를 통해 가변포맷 메시지 처리 코드를 생성할 수 있다(S244). The variable format message processing code generation unit 130 branches the token information for each field (S242), a group present indicator (GPI) field, a field present indicator (FPI) field, a group repeat indicator (GRI) field, and field repetition. The token information may be processed according to an indicator (FRI) field and other fields. The variable format message processing code generation unit 130 may generate a variable format message processing code through processing for each field (S244).

본 발명의 일실시예에 따르면, 가변포맷 메시지 처리 코드 생성부(130)는 상기 그룹존재지시자(GPI), 상기 필드존재지시자(FPI), 상기 그룹반복지시자(GRI), 및 상기 필드반복지시자(FRI)의 값에 따른 가변포맷 메시지 구조체 및 구조체 반복 뎁스(depth)를 구성하고, 가변포맷 메시지 구조체 및 구조체 반복 처리 우선순위를 설정한 후, 가변포맷 메시지 처리를 수행하는 헤더파일 및 소스파일의 생성을 통해 상기 가변포맷 메시지 처리를 수행하는 가변포맷 메시지 처리 코드를 생성할 수 있다.According to an embodiment of the present invention, the variable format message processing code generation unit 130 is the group existence indicator (GPI), the field existence indicator (FPI), the group repeat indicator (GRI), and the field repeat indicator ( After constructing the variable format message structure and structure repetition depth according to the value of FRI), setting the priority of the variable format message structure and structure repetition processing, and generating the header file and the source file for processing the variable format message. Through the variable format message processing code for performing the variable format message processing can be generated.

도 6은 본 발명의 일실시예에 따른 가변포맷 메시지 처리 코드 생성에 대한 알고리즘의 흐름을 도시한 순서도이다.6 is a flow chart illustrating an algorithm flow for generating a variable format message processing code according to an embodiment of the present invention.

가변포맷 메시지 처리 코드 생성부(130)는 존재지시자(PI)와 반복지시자(RI)의 값에 따른 메시지 구조체 및 구조체 반복 뎁스(Depth)를 구성하고(S300), 존재지시자(PI)와 반복지시자(RI)의 값에 따른 메시지 구조체 및 구조체 반복 처리 우선 순위를 결정하고(S400), 가변포맷 메시지 처리를 수행하는 헤더파일과 소스파일 생성한다(S500).The variable format message processing code generation unit 130 constructs a message structure and structure repetition depth according to the values of the existence indicator PI and the repetition indicator RI (S300), and the existence indicator PI and the repetition indicator. The message structure and the structure repetition processing priority are determined according to the value of the RI (S400), and a header file and a source file for processing a variable-format message are generated (S500).

도 7은 도 6에 도시된 메시지 구조체 및 구조체 반복 뎁스(Depth)를 구성하는 단계(S300)의 상세한 흐름을 도시한 순서도이다.FIG. 7 is a flowchart illustrating a detailed flow of configuring a message structure and a structure repetition depth illustrated in FIG. 6 (S300).

가변포맷 메시지는 구조체 형식으로 표현될 수 있으며, 지시자들의 증감에 따라 구조체의 뎁스(Depth)와 구조체 뎁스(Depth) 별 반복 회수가 결정된다. 이러한 메시지 구조에 영향을 미치는 지시자들로는 그룹존재지시자(GPI), 필드존재지시자(FPI), 그룹반복지시자(GRI), 필드반복지시자(FRI)가 있다. The variable format message may be expressed in the form of a structure, and the number of repetitions of the depth and the structure depth of the structure is determined according to the increase and decrease of the indicators. Indicators affecting this message structure are group existence indicator (GPI), field existence indicator (FPI), group repetition indicator (GRI), and field repetition indicator (FRI).

그룹존재지시자(GPI)와 필드존재지시자(FPI)의 경우는 해당 가변포맷 메시지 구조(struct) 내부에 또 다른 하부 메시지 구조(sub-struct)를 생성하는 지시자이며, 그룹반복지시자(GRI)와 필드반복지시자(FRI)의 경우는 해당 가변포맷 메시지 구조(struct)에 포함되는 필드 및 하부 메시지 구조(sub-struct)에 대한 반복을 생성하는 지시자이다. In the case of group existence indicators (GPIs) and field existence indicators (FPIs), it is an indicator that creates another sub-struct within the corresponding variable-format message structure, and the group repetition indicator (GRI) and fields. In the case of an FRI, it is an indicator that creates iterations for the sub-structs and fields contained in the variable-format message struct.

그룹존재지시자나 필드존재지시자의 뎁스(Depth)가 증가하게 되면, 증가된 그룹 뎁스(Depth) 만큼의 필드 또는 그 하위 메시지 그룹들을 포함하게 된다. 그리고, 그룹존재지시자나 필드존재지시자의 뎁스(Depth)가 감소하게 되면, 기존의 해당 그룹에 포함되었던 필드 또는 그 하위 메시지 그룹들이 감소된 그룹 뎁스(Depth)만큼 제외된다. If the depth of the group present indicator or the field present indicator increases, the field or subordinate message groups corresponding to the increased group depth are included. When the depth of the group existence indicator or the field existence indicator is decreased, the field or subordinate message groups included in the corresponding group are excluded as much as the reduced group depth.

또한, 그룹반복지시자나 필드반복지시자의 뎁스(Depth)가 증가하게 되면, 증가된 그룹반복 뎁스(Depth) 만큼에 해당되는 필드 또는 그 하위 메시지 그룹들을 그룹반복지시자의 값에 따라 정해진 최대 반복회수만큼 반복하게 된다. 그리고, 그룹반복지시자나 필드반복지시자의 뎁스(Depth)가 감소하게 되면, 감소된 그룹반복 뎁스(Depth)만큼에 해당되는 필드 또는 그 하위 메시지 그룹의 반복을 중지하게 된다. In addition, when the depth of the group repeat indicator or the field repeat indicator increases, the field or subordinate message groups corresponding to the increased group repeat depth may be increased by the maximum number of times determined according to the value of the group repeat indicator. Will repeat. When the Depth of the Group Repeat Instructor or the Field Repeat Instructor decreases, the repetition of the field corresponding to the reduced Group Repeat Depth or a lower message group thereof is stopped.

가변포맷 메시지 구조체의 뎁스(Depth) 결정을 위해 사용되는 알고리즘은 다음과 같다.The algorithm used to determine the depth of the variable format message structure is as follows.

먼저, 가변포맷 메시지 처리 코드 생성부(130)는 DB로부터 수집된 가변포맷 메시지 생성에 필요한데이터를 가변포맷 메시지별로 순차적으로 읽는다(S310). 그리고, 가변포맷 메시지 처리 코드 생성부(130)는 반복그룹(REPEAT_CODE)이 존재하는지 확인한다(S320). 제320 단계에서, 반복그룹이 존재하면, 가변포맷 메시지 처리 코드 생성부(130)는 데이터 사용 식별자명 (DUI_NAME)을 확인하여, 필드반복에 해당되는 반복그룹이면(S332), 필드반복 횟수를 저장한다(S334). 만약, 그룹반복에 해당되는 반복그룹이면(S336), 가변포맷 메시지 처리 코드 생성부(130)는 반복그룹에 해당되는 키워드 중, 'R'의 개수를 검색하여 기존에 저장된 반복그룹 뎁스(Depth)에 대한 개수보다 많으면, 반복그룹 뎁스(Depth)를 증가시킨 후 저장하고, 만일, 기존에 저장된 반복그룹 뎁스(Depth)에 대한 개수보다 작으면, 반복그룹 뎁스(Depth)를 감소시킨 후 저장한다(S338).First, the variable format message processing code generation unit 130 sequentially reads data necessary for generating the variable format message collected from the DB for each variable format message (S310). The variable format message processing code generation unit 130 checks whether a repeating group REPEAT_CODE exists (S320). In step 320, if there is a repeating group, the variable-format message processing code generation unit 130 checks the data use identifier name (DUI_NAME), and if the repeating group corresponds to the field repetition (S332), stores the number of field repetitions. (S334). If the repeating group corresponds to the group repetition (S336), the variable-format message processing code generation unit 130 searches for the number of 'R's among the keywords corresponding to the repeating group and stores the existing repeating group depth (Depth). If the number is greater than the number, the repeat group depth is increased and stored, and if the number is smaller than the number of previously stored repeat group depths, the repeat group depth is decreased and then stored. S338).

가변포맷 메시지 처리 코드 생성부(130)는 소속그룹(GROUP_CODE)이 존재하는지 확인하고(S342), 소속그룹이 존재하면, 소속그룹에 해당되는 키워드 중, 'G'의 개수를 검색하여 기존에 저장된 소속그룹 뎁스(Depth)에 대한 개수보다 많으면, 소속그룹 뎁스(Depth)를 증가시킨 후 저장하고, 만일, 기존에 저장된 소속그룹 뎁스(Depth)에 대한 개수보다 작으면, 소속그룹 뎁스(Depth)를 감소시킨 후 저장한다(S344).The variable-format message processing code generation unit 130 checks whether the belonging group (GROUP_CODE) exists (S342), and if the belonging group exists, search the number of 'G' among the keywords corresponding to the belonging group, and store the previously stored group. If the number is greater than the number of belonging group depths, increase and store the belonging group depth, and if it is smaller than the number of belonging group depths previously stored, the belonging group depth is made. Reduce and store (S344).

가변포맷 메시지 처리 코드 생성부(130)는 반복그룹의 뎁스(Depth)가 기존보다 감소되었으면, 감소된 뎁스(Depth)만큼 반복그룹을 처리하고, 소속그룹의 뎁스(Depth)가 기존보다 감소되었으면, 감소된 뎁스(Depth)만큼 소속그룹을 처리한다(S350).The variable format message processing code generation unit 130 processes the repeating group by the reduced depth if the depth of the repeating group is reduced than before, and if the depth of the belonging group is smaller than the existing depth, The belonging group is processed as much as the reduced depth (S350).

가변포맷 메시지 처리 코드 생성부(130)는 데이터 사용 식별자명(DUI_NAME)을 확인하여, 필드(Field), 필드존재지시자(FPI), 필드반복지시자(FRI), 그룹존재지시자(GPI), 그룹반복지시자(GRI)들 각각에 따른 필요한 처리 수행한다(S360).Variable format message processing code generation unit 130 checks the data use identifier name (DUI_NAME), field (Field), field existence indicator (FPI), field repeat indicator (FRI), group existence indicator (GPI), group repetition The required processing according to each of the indicators GRI is performed (S360).

가변포맷 메시지 처리 코드 생성부(130)는 메시지 구조체의 Depth 결정을 위해서 각 KVMF메시지 생성에 필요한 데이터의 종료시까지(S370) 제320 단계 내지 제360 단계를 반복하여 수행한다.The variable format message processing code generation unit 130 repeats steps 320 to 360 until the end of the data necessary for generating each KVMF message to determine the depth of the message structure (S370).

가변포맷 메시지 처리 코드 생성부(130)는 기타 필요한 처리를 수행하고(S380), 각 가변포맷 메시지에 대한 검증 코드 생성 프로세스를 수행한다(S390).The variable format message processing code generation unit 130 performs other necessary processing (S380), and performs a verification code generation process for each variable format message (S390).

도 8는 도 6에 도시된 메시지 구조체 및 구조체 반복 처리 우선 순위를 결정하는 단계(S400)의 상세한 흐름을 도시한 순서도이다.FIG. 8 is a flowchart illustrating a detailed flow of the step S400 of determining the message structure and structure repetition processing priority shown in FIG. 6.

그룹존재지시자(GPI), 필드존재지시자(FPI), 그룹반복지시자(GRI), 필드반복지시자(FRI)는 가변포맷 메시지 구조체 형식에 있어서 필드 또는 그 하위 그룹에 해당되는 메시지들의 뎁스(Depth)를 결정하는 지시자이며, 이러한 지시자들의 순서와 조합에 따라 가변포맷 메시지 구조체 형식이 결정된다. 다시 말해, 가변포맷 메시지의 구조는 그룹존재지시자(GPI), 필드존재지시자(FPI), 그룹반복지시자(GRI), 필드반복지시자(FRI)의 순서와 조합에 따라 상당히 많이 달라질 수 있다는 의미이다. The group existence indicator (GPI), the field existence indicator (FPI), the group repeat indicator (GRI), and the field repeat indicator (FRI) are used to determine the depth of messages corresponding to a field or subgroup in a variable format message structure format. Determining directives, the order and combination of these directives determine the format of the variable-format message structure. In other words, the structure of the variable format message may vary considerably according to the order and combination of the group existence indicator (GPI), the field existence indicator (FPI), the group repeat indicator (GRI), and the field repeat indicator (FRI).

따라서, 가변포맷 메시지 코드 생성 시, 정확하고 바른 위치에 그룹과 그룹반복에 대한 증가 및 감소를 처리하여야만 올바른 가변포맷 메시지를 구성할 수 있을 것이다. 이를 위하여, 구조체와 구조체 반복을 위해 사용될 스택(Stack)을 하나 생성하고, 해당구조체와 구조체 반복에 대한 처리 우선 순위 결정에 사용되는 알고리즘은 다음과 같다. Therefore, when generating the variable format message code, the correct variable format message may be configured only when the increase and decrease of the group and the group repetition are processed at the correct and correct position. To this end, an algorithm is used to create a stack to be used for structure and structure repetition, and to determine processing priority for the structure and structure repetition as follows.

가변포맷 메시지 처리 코드 생성부(130)는 메시지 구조체 및 구조체 반복 처리 우선 순위 결정을 위해 사용되는 스택(Stack)을 초기화한다(S410). 이때, 스택(Stack)의 시작은 'S'를 Push하여 우선 순위 결정의 시작임을 알린다.The variable format message processing code generation unit 130 initializes a stack used for determining a message structure and structure repetition processing priority (S410). At this time, the start of the stack (Stack) to push the 'S' to inform the start of the priority determination.

가변포맷 메시지 처리 코드 생성부(130)는 DB로부터 수집된 가변포맷 메시지 생성에 필요한 데이터를 순차적으로 읽는다(S420).The variable format message processing code generation unit 130 sequentially reads data necessary for generating the variable format message collected from the DB (S420).

가변포맷 메시지 처리 코드 생성부(130)는 소속그룹(GROUP_CODE)과 반복그룹(REPEAT_CODE)의 개수를 검사하여, 소속그룹 또는 반복그룹이 기존의 개수보다 감소되었고, 스택(Stack)의 현재값이 'S'가 아니면(S432), 해당 스택(Stack)의 값을 읽어 'P'이면 현재의 스택(Stack) 내용('P')을 팝(Pop) 한 후, 스택(Stack) 포인터를 한 단계 감소시키고, 추가적인 뎁스(Depth)의 감소를 조사하기 위해 다시 제432 단계를 수행한다(S436). 만약, 해당 스택(Stack)의 값이 ‘R’이면 현재의 스택(Stack)의 내용('R')을 팝(Pop) 한 후, 스택(Stack) 포인터를 한 단계 감소시키고, 추가적인 뎁스(Depth)의 감소를 조사하기 위해 다시 제432 단계를 수행한다(S438).The variable-format message processing code generation unit 130 checks the number of the belonging group (GROUP_CODE) and the repeating group (REPEAT_CODE), so that the number of belonging groups or repeating groups is smaller than the existing number, and the current value of the stack is' If it is not S '(S432), if the value of the stack is read and' P 'is used, the contents of the current stack (Pop) are popped, and the stack pointer is reduced by one step. In step S432, an operation 432 is performed again to investigate a further decrease in depth. If the value of the corresponding stack is 'R', after popping the contents of the current stack 'R', the stack pointer is decreased by one step, and the additional depth is increased. Step 432 is again performed to investigate the decrease in) (S438).

가변포맷 메시지 처리 코드 생성부(130)는 데이터 사용 식별자명(DUI_NAME)을 확인하여, 그룹존재지시자(GPI)나 필드존재지시자(FPI)가 존재하면, 스택(Stack) 포인터를 다음으로 이동시키고, GPI나 FPI 출현을 나타내기 위해, 스택(Stack)에 'P'를 푸쉬(Push)한다(S440). The variable format message processing code generation unit 130 checks the data use identifier name (DUI_NAME), and if the group existence indicator (GPI) or the field existence indicator (FPI) exists, moves the stack pointer to the next, In order to indicate the appearance of GPI or FPI, 'P' is pushed to the stack (S440).

가변포맷 메시지 처리 코드 생성부(130)는 데이터 사용 식별자명(DUI_NAME)을 확인하여, 그룹반복지시자(GRI)나 필드반복지시자(FRI)가 존재하면, 스택(Stack) 포인터를 다음으로 이동시키고, GRI나 FRI 출현을 나타내기 위해, 스택(Stack)에 'R'을 푸쉬(Push)한다(S450).The variable format message processing code generation unit 130 checks the data use identifier name DUI_NAME, and if there is a group repeat indicator (GRI) or a field repeat indicator (FRI), the stack pointer is moved to the next, In order to indicate the appearance of GRI or FRI, push 'R' on the stack (S450).

가변포맷 메시지 처리 코드 생성부(130)는 구조체와 구조체 반복에 대한 처리 우선 순위 결정을 위해서 가변포맷 메시지 생성에 필요한 데이터의 종료시까지(S460) 제420 단계 내지 제 450 단계를 반복하여 수행한다.The variable format message processing code generating unit 130 repeats steps 420 to 450 until the end of the data required for generating the variable format message in order to determine the processing priority for the structure and the structure repetition (S460).

도 9는 도 6에 도시된 헤더파일과 소스파일을 생성하는 단계(S500)의 상세한 흐름을 도시한 순서도이다.FIG. 9 is a flowchart illustrating a detailed flow of generating a header file and a source file shown in FIG. 6 (S500).

가변포맷 메시지처리 소프트웨어 중, 헤더파일과 소스파일을 자동으로 생성하기 위해서는 앞에서 상술한 단계들을 통해 생성된 가변포맷 메시지 구성 정보를 읽어 들이고, 토큰 단위로 구분한 후, 필요한 형태의 내부 데이터베이스를 생성하고, 생성된 내부 데이터베이스를 이용하여 헤더파일 및 소스파일을 생성하도록 하며, 그 알고리즘은 다음과 같다. In the variable format message processing software, in order to automatically generate the header file and the source file, the variable format message configuration information generated through the above-described steps is read, divided into token units, and then an internal database is created. In addition, the header file and the source file are generated by using the generated internal database. The algorithm is as follows.

가변포맷 메시지 처리 코드 생성부(130)는 제300 단계 및 제400 단계를 통해 생성된 가변포맷 메시지 구성 정보를 순차적으로 읽는다(S510). 가변포맷 메시지 처리 코드 생성부(130)는 데이터의 종류에 따라 필요한 정보를 저장할 내부 가변포맷 메시지 데이터베이스를 생성한다(S522).The variable format message processing code generation unit 130 sequentially reads variable format message configuration information generated through steps 300 and 400 (S510). The variable format message processing code generation unit 130 generates an internal variable format message database for storing necessary information according to the type of data (S522).

가변포맷 메시지 처리 코드 생성부(130)는 읽은 정보에 대해 의미를 가지는 토큰 단위로 데이터 분리한다(S524).The variable format message processing code generation unit 130 separates data in units of tokens having a meaning with respect to the read information (S524).

가변포맷 메시지 처리 코드 생성부(130)는 제524 단계에서 분리된 토큰을 인식 및 식별하고, 내부 메시지 데이터베이스에 단위별로 저장한다(S526).The variable format message processing code generation unit 130 recognizes and identifies the token separated in operation 524 and stores the token in units in an internal message database (S526).

가변포맷 메시지 처리 코드 생성부(130)는 메시지처리 검증 토큰을 만날 때까지(S528), 제524 단계 및 제526 단계를 반복적으로 수행한다.The variable format message processing code generation unit 130 repeatedly performs steps 524 and 526 until it encounters a message processing verification token (S528).

메시지처리 검증 토큰을 만나면, 가변포맷 메시지 처리 코드 생성부(130)는 데이터의 종류에 따라 필요한 정보를 저장할 내부 검증 조건 데이터베이스 생성한다(S532)When meeting the message processing verification token, the variable-format message processing code generation unit 130 generates an internal verification condition database to store necessary information according to the type of data (S532).

가변포맷 메시지 처리 코드 생성부(130)는 읽은 검증 조건 정보에 대해 의미를 가지는 토큰 단위로 조건 분리한다(S534).The variable format message processing code generation unit 130 separates the conditions into token units having meanings for the read verification condition information (S534).

가변포맷 메시지 처리 코드 생성부(130)는 제534 단계에서 분리된 토큰을 인식 및 식별하고, 해당 조건 종류에 따라 내부 검증 조건 데이터베이스에 단위별로 저장한다(S536)The variable format message processing code generating unit 130 recognizes and identifies the token separated in operation 534 and stores the unit token in the internal verification condition database according to the type of the condition (S536).

가변포맷 메시지 처리 코드 생성부(130)는 메시지 검증 종료 요소를 만날 때까지(S538), 제534 단계 및 제536 단계를 반복적으로 수행한다.The variable format message processing code generation unit 130 repeatedly performs steps 534 and 536 until it encounters a message verification termination element (S538).

각 가변포맷 메시지 종료를 만나면, 가변포맷 메시지 처리 코드 생성부(130)는 내부 메시지 데이터베이스 및 내부 조건 데이터베이스 내용을 읽으면서, 정해진 코드 생성 알고리즘에 따라 헤더파일과 소스파일을 생성한다(S540).When the variable format message ends, the variable format message processing code generation unit 130 reads the contents of the internal message database and the internal condition database, and generates a header file and a source file according to a predetermined code generation algorithm (S540).

이러한 본 발명의 가변포맷 메시지 처리장치에 따르면, MD 파일을 생성하여 MD 파일을 바탕으로 가변포맷 메시지 처리 코드를 생성함으로써, 가변포맷 메시지를 사용하는 각 체계마다 가변포맷 메시지처리기 개발로 인한 개발 시간을 대폭 단축하고, 개발자들의 개발 오류 발생을 미연에 방지하는 효과를 기대할 수 있다. 또한, 가변포맷 메시지 표준 변경 시, 본 발명 기술 및 도구를 이용하여, 변경된 가변포맷 메시지에 대한 처리 코드를 빠르고 손쉽게 적용할 수 있고, 시간적인 편의를 도울 수 있는 소프트웨어로써의 효용성이 높다.According to the variable-format message processing apparatus of the present invention, by generating an MD file and generating a variable-format message processing code based on the MD file, the development time due to the development of the variable-format message processor for each scheme using the variable-format message It can be greatly shortened and the effect of preventing development errors from developers can be expected. In addition, when changing the variable format message standard, using the present technology and tools, it is possible to quickly and easily apply the processing code for the changed variable format message, high utility as a software that can help in time convenience.

본 발명에 대한 효과의 측정을 위해, 가변포맷 메시지처리기를 개발하는 개발자의 평균 코드 생산성이 중급 개발자 기준 1일(8시간 종일 가변포맷 메시지처리기 코드 개발 수행 기준이며, 비슷한 유형의 코드에 대한 빈번한 복사하기 및 붙여 넣기(Copy and Paste)가 발생한다고 가정)당 300라인 이라고 가정할 때, 가변포맷 메시지처리기 코드 생성기를 이용한 개발 시간과의 효율성 비교 자료는 다음의 표1과 같다.In order to measure the effectiveness of the present invention, the average code productivity of developers who develop variable-format message handlers is based on intermediate developers for one day (8 hours all-day variable-format message handler code development, and frequently copies of similar types of code. Assuming 300 lines per copy and paste, the efficiency comparison with development time using the variable format message processor code generator is shown in Table 1 below.

가변포맷 메시지 조건Variable Format Message Condition 133개 가변포맷 메시지(R2 버전)133 variable-format messages (R2 version) 가변포맷 메시지 처리 코드 라인 수Variable Format Message Handling Code Lines 약 547,000 라인(가변포맷 메시지 처리 코드 생성기를 이용한 생성 기준, 개발자에 의해 개발될 경우 라인 수 증가 및 디버깅으로 인한 개발 시간 증가 예측됨)Approx. 547,000 lines (creation criteria using variable-format message handling code generator, if developed by developer, increases number of lines and increases development time due to debugging) 개발자에 의한 개발 시간Development time by the developer 약 1,823일(875,180분) (547,000라인을 300라인으로 나눈 값임)1,823 days (875,180 minutes) (547,000 lines divided by 300 lines) 가변포맷 메시지처리기 코드 생성기를 이용한 개발 시간Development time using variable format message handler code generator 약 5분(시스템의 성능에 따라 약간의 차이 발생 가능)5 minutes (may vary slightly depending on system performance)

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, Modification is possible. Accordingly, the spirit of the present invention should be understood only in accordance with the following claims, and all equivalents or equivalent variations thereof are included in the scope of the present invention.

110: KVMF 통합 데이터베이스
120: MD 파일 생성부
130: 가변포맷 메시지 코드 생성부
110: KVMF Integration Database
120: MD file generation unit
130: variable format message code generation unit

Claims (9)

통합 데이터베이스의 테이블 구조를 분석하여 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 포함하는 파일을 생성하는 파일 생성부; 및
상기 파일에 포함된 하나 이상의 가변포맷 메시지에 대한 구조 정보 및 제약사항 정보를 토큰 단위로 파싱(parsing)하여 토큰 정보를 저장하고, 상기 저장된 토큰 정보를 필드 별로 처리하여 가변포맷 메시지 처리를 수행하는 코드를 생성하는 코드 생성부를 포함하며,
상기 구조 정보는 가변포맷 메시지의 번호, 가변포맷 메시지의 이름, 가변포맷 메시지의 설명, 필드 인덱스 번호, 필드 이름, 필드 비트(bit) 크기, 및 필드 유효 값을 포함하며,
상기 제약사항 정보는, 사례(case), 조건(condition), 기본값(default), 서비스 제한(service restriction), 예상 응답(expected response), 특별 고려사항(special consideration), 및 사례 단계의 최소구현(case level minimum implementation)을 포함하며,
상기 파일 생성부는 상기 코드 생성부가 상기 파일을 파싱할 수 있도록 선정된(predetermined) 스크립트 언어로 상기 파일을 생성하며,
상기 코드 생성부는 상기 구조 정보 및 제약사항 정보를 식별자, 인덱스, 필드 이름, 필드 크기, 필드 유효 값, 및 제약사항으로 구분되는 토큰 단위로 파싱하여 상기 토큰 정보를 저장하는 것을 특징으로 하는 가변포맷 메시지 처리장치.
A file generator for analyzing a table structure of the integrated database and generating a file including structure information and constraint information on one or more variable format messages; And
Code for parsing structure information and constraint information of one or more variable format messages included in the file by token, storing token information, and processing the stored token information for each field to perform variable format message processing It includes a code generator for generating a,
The structure information includes a number of a variable format message, a name of a variable format message, a description of the variable format message, a field index number, a field name, a field bit size, and a field valid value.
The constraint information may include case, condition, default, service restriction, expected response, special consideration, and minimum implementation of the case step ( case level minimum implementation),
The file generation unit generates the file in a script language that is predetermined so that the code generation unit can parse the file.
The code generation unit stores the token information by parsing the structure information and the constraint information in token units classified into an identifier, an index, a field name, a field size, a field valid value, and a constraint. Processing unit.
삭제delete 삭제delete 삭제delete 삭제delete 제 1항에 있어서, 상기 코드 생성부는,
상기 토큰 정보를 그룹존재지시자(GPI; Group Present Indicator), 필드존재지시자(FPI; Field Present Indicator), 그룹반복지시자(GRI; Group Repeat Indicator), 및 필드반복지시자(FRI; Field Repeat Indicator)를 통해 필드 별로 처리하는 것을 특징으로 하는 가변포맷 메시지 처리장치.
The method of claim 1, wherein the code generation unit,
The token information is transmitted through a Group Present Indicator (GPI), a Field Present Indicator (FPI), a Group Repeat Indicator (GRI), and a Field Repeat Indicator (FRI). Variable format message processing apparatus characterized in that the processing for each field.
제 6항에 있어서, 상기 코드 생성부는,
상기 그룹존재지시자(GPI), 상기 필드존재지시자(FPI), 상기 그룹반복지시자(GRI), 및 상기 필드반복지시자(FRI)의 값에 따른 가변포맷 메시지 구조체 및 구조체 반복 뎁스(depth)를 구성하고, 가변포맷 메시지 구조체 및 구조체 반복 처리 우선순위를 설정한 후, 가변포맷 메시지 처리를 수행하는 헤더파일 및 소스파일의 생성을 통해 상기 가변포맷 메시지 처리를 수행하는 코드를 생성하는 것을 특징으로 하는 가변포맷 메시지 처리장치.
The method of claim 6, wherein the code generation unit,
Construct a variable format message structure and structure repetition depth according to values of the group existence indicator (GPI), the field existence indicator (FPI), the group repeat indicator (GRI), and the field repeat indicator (FRI), and And setting a variable format message structure and structure repetition processing priority and generating code for processing the variable format message by generating a header file and a source file for performing the variable format message processing. Message processing unit.
삭제delete 삭제delete
KR1020110112921A 2011-11-01 2011-11-01 Device for handling korean variable message format message and method thereof KR101319299B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110112921A KR101319299B1 (en) 2011-11-01 2011-11-01 Device for handling korean variable message format message and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110112921A KR101319299B1 (en) 2011-11-01 2011-11-01 Device for handling korean variable message format message and method thereof

Publications (2)

Publication Number Publication Date
KR20130048025A KR20130048025A (en) 2013-05-09
KR101319299B1 true KR101319299B1 (en) 2013-10-16

Family

ID=48659258

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110112921A KR101319299B1 (en) 2011-11-01 2011-11-01 Device for handling korean variable message format message and method thereof

Country Status (1)

Country Link
KR (1) KR101319299B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109787888A (en) * 2019-01-25 2019-05-21 上海创景信息科技有限公司 Support more equipment message distribution stocking systems and method and storage medium

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102132237B1 (en) * 2018-12-11 2020-08-05 한화디펜스 주식회사 Apparatus and method for converting message format
KR102433022B1 (en) * 2022-06-20 2022-08-18 한화시스템(주) Kvmf standard message processing system, message handler and method based on standard conversion information
KR102486910B1 (en) * 2022-10-17 2023-01-10 한화시스템(주) Message conversion apparatus and method in system using variable message
KR102662287B1 (en) * 2024-01-23 2024-05-03 한화시스템(주) Asterix decoding commonization module and method for weapon system embedded software

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100008324A (en) * 2008-07-15 2010-01-25 엘지전자 주식회사 Method for bandwidth request with a message in variable formats
KR101022526B1 (en) * 2010-05-26 2011-03-16 삼성탈레스 주식회사 Apparatus and method for converting message format
KR101029787B1 (en) * 2010-12-02 2011-04-19 삼성탈레스 주식회사 Message converting apparatus between x.25/snmp message and common message of variable format for network-management of x.25/snmp agent and method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100008324A (en) * 2008-07-15 2010-01-25 엘지전자 주식회사 Method for bandwidth request with a message in variable formats
KR101022526B1 (en) * 2010-05-26 2011-03-16 삼성탈레스 주식회사 Apparatus and method for converting message format
KR101029787B1 (en) * 2010-12-02 2011-04-19 삼성탈레스 주식회사 Message converting apparatus between x.25/snmp message and common message of variable format for network-management of x.25/snmp agent and method thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문1:한국정보과학회 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109787888A (en) * 2019-01-25 2019-05-21 上海创景信息科技有限公司 Support more equipment message distribution stocking systems and method and storage medium
CN109787888B (en) * 2019-01-25 2021-06-29 上海创景信息科技有限公司 System and method for supporting multi-device message distribution and storage medium

Also Published As

Publication number Publication date
KR20130048025A (en) 2013-05-09

Similar Documents

Publication Publication Date Title
CN100461131C (en) Software traceability management method and apparatus
CN108182215B (en) Structured Query Language (SQL) performance statistics method and device
KR101319299B1 (en) Device for handling korean variable message format message and method thereof
US10892974B2 (en) Automatic protocol test method by reverse engineering from packet traces to extended finite state machine
CN106062751A (en) Managing data profiling operations related to data type
US20160092290A1 (en) Processing data errors for a data processing system
JP2017525039A (en) System information management
CN112287009A (en) Interface calling and interface data warehousing method, device, equipment and storage medium
CN107766353B (en) Method and device for migrating statistical information of database
CN108710662B (en) Language conversion method and device, storage medium, data query system and method
US10339035B2 (en) Test DB data generation apparatus
CN110046155B (en) Method, device and equipment for updating feature database and determining data features
US11086906B2 (en) System and method for reconciliation of data in multiple systems using permutation matching
US20230418951A1 (en) Apparatus and method for analyzing vulnerabilities of smart contract code
CN113138906A (en) Call chain data acquisition method, device, equipment and storage medium
CN112363939A (en) Method, system and equipment for quickly generating fuzzy test network protocol template
US8819645B2 (en) Application analysis device
CN113535461B (en) Visual verification method for interlocking lower computer data based on configuration file
US20220385635A1 (en) Combined machine learning and formal techniques for network traffic analysis
CN111459984B (en) Log data processing system and method based on streaming processing
CN114461193A (en) Method, device, equipment and storage medium for generating communication protocol code
US7844627B2 (en) Program analysis method and apparatus
CN110058858B (en) JSON data processing method and device
CN115470355A (en) Rail transit information query method and device, electronic equipment and storage medium
JP6018538B2 (en) Information processing apparatus, information processing method, and program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191002

Year of fee payment: 7