KR101888792B1 - Method for data communication and system comprising the same - Google Patents

Method for data communication and system comprising the same Download PDF

Info

Publication number
KR101888792B1
KR101888792B1 KR1020170049493A KR20170049493A KR101888792B1 KR 101888792 B1 KR101888792 B1 KR 101888792B1 KR 1020170049493 A KR1020170049493 A KR 1020170049493A KR 20170049493 A KR20170049493 A KR 20170049493A KR 101888792 B1 KR101888792 B1 KR 101888792B1
Authority
KR
South Korea
Prior art keywords
data
application
data communication
communication
client
Prior art date
Application number
KR1020170049493A
Other languages
Korean (ko)
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 KR1020170049493A priority Critical patent/KR101888792B1/en
Application granted granted Critical
Publication of KR101888792B1 publication Critical patent/KR101888792B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • H04L67/2823
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content

Abstract

The present invention relates to a data communication method and a system including the same. According to an embodiment of the present invention, the data communication system, which includes a server and a client using different operation systems or different development languages, includes an application which performs data communication with the server; a client which includes an adapter generating a source code for the data communication and providing the generated source code for the application based on the operation system of the client and the development language of the application; a proxy which communicates with the application through the adapter by using predetermined data communication rules; and the server which communicates with the client through the proxy. The application performs data communication with the proxy by using the source code provided from the adapter. The present invention enables data communication between different power systems regardless of the operation systems and development languages of applications.

Description

데이터 통신 방법 및 이를 포함하는 시스템{Method for data communication and system comprising the same}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data communication method,

본 발명은 데이터 통신 방법 및 이를 포함하는 시스템에 관한 것이다.The present invention relates to a data communication method and a system including the same.

프로그램 언어는 C 언어를 필두로 하여 비약적으로 발전해 왔으며, 최근 사용되고 있는 프로그램 언어에는 C, API, C++, MFC, C#, Java 등이 있으며, 프로그램 언어의 범위를 웹 개발과 모바일까지 확장하면 프로그램 언어의 개수는 폭발적으로 증가하게 된다.The program language has developed rapidly with the C language as the starting point and the recently used programming languages include C, API, C ++, MFC, C #, Java and the like. The number will increase explosively.

프로그램 언어는 종류마다 특징이 분명하고 명령어의 사용방식과 설계 방식도 다양하다. 이에 프로그램 개발자는 각 언어의 특징을 학습하여 실제 사용을 하는데 적지 않은 학습시간 및 노력을 할애한다.The program language has distinct features for each type, and there are various ways of using and designing commands. The program developer learns the characteristics of each language and devotes a considerable amount of time and effort to actual use.

또한, 프로그램 개발은 최종 결과물 구현과 매서드(method)를 조합하여 문법적 오류를 최소화하는데 많은 시간과 노력이 요구되는 작업이다. 언어의 다양화로 개발의 한계가 사라지고 있으나 반복적인 코딩과 설계 로직의 문법적 오류를 최소화하는데 많이 시간과 노력이 소비되는 되는 것이 현실이다.In addition, program development requires a lot of time and effort in minimizing grammatical errors by combining final product implementation and methods. However, it is a reality that it takes much time and effort to minimize the grammatical errors of repetitive coding and design logic.

즉, 시간과 노동력의 중요성이 대두 되고 있는 시대에 많은 프로그램 언어의 학습과 개발과정의 문법적 오류를 최소화하는 작업은 시간 낭비와 생산성 저하의 원인으로 작용하고 있다.In other words, the task of minimizing the grammatical errors of the learning and development process of many programming languages in the age of the importance of time and labor is a cause of waste of time and productivity.

종래에는 서로 다른 시스템간 데이터 통신을 하기 위하여, 시스템의 운영 체제와 어플리케이션의 개발 언어가 다른 경우, 각각의 운영 체제와 개발 언어에 따라 동일한 기능을 수행하는 데이터 통신 소프트웨어를 중복적으로 구비해야 하는 불편함이 있었다.Conventionally, in order to perform data communication between different systems, when the operating system of the system is different from the development language of the application, the inconvenience of redundantly providing data communication software performing the same function according to each operating system and development language There was.

또한, 종래에는 어플리케이션과 통신 기능이 밀접하게 결합되어 있어 통신 기능의 확장이나 유지 보수로 인해 어플리케이션 코드에 영향을 미칠 수 있어, 결함이 발생하거나 품질 비용이 증가하는 등 유지 보수의 어려움이 있었다.In addition, conventionally, applications and communication functions are tightly coupled, which can affect application codes due to expansion and maintenance of communication functions, resulting in defects or increase in quality costs.

본 발명은 전력 시스템간 상호 운용을 지원하기 위하여, 데이터 통신의 대상이 되는 어플리케이션의 실행 운영 체제 및 개발 언어에 관계없이 서로 다른 전력 시스템간에 데이터 통신 방법을 제공하는 것을 목적으로 한다.It is an object of the present invention to provide a data communication method between different power systems regardless of the execution operating system and the development language of an application which is the object of data communication in order to support interoperability between the power systems.

본 발명은 어플리케이션의 실행 운영 체제 및 개발 언어에 따라 자동으로 소스 코드가 생성되어 운영 체제 및 개발 언어에 독립적인 데이터 통신 시스템을 제공하는 것을 목적으로 한다. It is an object of the present invention to provide a data communication system in which source code is automatically generated according to an execution operating system and a development language of an application, thereby being independent of an operating system and a development language.

본 발명의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects and advantages of the present invention which are not mentioned can be understood by the following description and more clearly understood by the embodiments of the present invention. It will also be readily apparent that the objects and advantages of the invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.

상기의 목적을 달성하기 위해 본 발명의 데이터 통신 시스템은 서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 클라이언트와 서버를 포함하는 데이터 통신 시스템에 있어서, 상기 서버와 데이터 통신을 수행하는 어플리케이션과, 상기 클라이언트의 운영 체제 및 상기 어플리케이션의 개발 언어를 기초로, 상기 데이터 통신을 위한 소스 코드를 생성하여 상기 어플리케이션에 제공하는 어댑터를 포함하는 클라이언트, 미리 결정된 데이터 통신 규칙을 이용하여 상기 어댑터를 통해 상기 어플리케이션과 통신하는 프록시, 및 상기 프록시를 통하여 상기 클라이언트와 통신하는 서버를 포함하되, 상기 어플리케이션은, 상기 어댑터에서 제공하는 상기 소스 코드를 이용하여 상기 프록시와 데이터 통신을 수행한다.According to an aspect of the present invention, there is provided a data communication system including a client and a server using different operating systems or different development languages, the data communication system including an application for performing data communication with the server, A client including an adapter for generating source code for the data communication and providing the source code to the application based on an operating system of the application and a development language of the application; a client communicating with the application via the adapter using a predetermined data communication rule; And a server for communicating with the client through the proxy, wherein the application performs data communication with the proxy using the source code provided by the adapter.

또한, 상기 어댑터는, 데이터 디자이너를 포함하고, 상기 데이터 디자이너는, 상기 데이터 통신을 위하여, 미리 결정된 데이터 포맷 규칙에 따라 상기 어플리케이션이 필요로 하는 통신 데이터를 생성하고, 상기 생성된 통신 데이터를 논리적 데이터 구조로 변환할 수 있다.The adapter includes a data designer, and the data designer generates communication data required by the application according to a predetermined data format rule for the data communication, and transmits the generated communication data to the logical data Structure.

또한, 상기 어댑터는, 서로 다른 개발 언어 또는 서로 다른 운영 체제에 대한 탬플릿을 미리 저장하고, 상기 탬플릿과 상기 통신 데이터를 기초로, 상기 소스 코드를 생성하는 자동 코드 생성 모듈을 더 포함할 수 있다.The adapter may further include an automatic code generation module for preliminarily storing templates for different development languages or different operating systems and for generating the source code based on the template and the communication data.

또한, 상기 클라이언트는, 서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 복수의 클라이언트를 포함하고, 상기 프록시는, 상기 복수의 클라이언트 중 적어도 하나에 포함되거나, 상기 서버에 포함될 수 있다.Further, the client may include a plurality of clients using different operating systems or different development languages, and the proxy may be included in at least one of the plurality of clients, or included in the server.

또한, 상기 소스 코드는, 상기 어플리케이션에 컴파일 또는 빌드되어 상기 데이터 통신을 수행할 수 있다.In addition, the source code may be compiled or built into the application to perform the data communication.

또한, 상기 어댑터는, 상기 어플리케이션에 소프트웨어적으로 결합되어 상기 어플리케이션에 포함되거나, 상기 클라이언트에 물리적으로 연결되어 상기 어플리케이션과 데이터를 주고 받을 수 있다.The adapter may be software-coupled to the application and included in the application, or physically connected to the client to exchange data with the application.

상기의 목적을 달성하기 위해 본 발명의 데이터 통신 방법은 서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 클라이언트 및 서버의 데이터 통신 방법에 있어서, 데이터 디자이너에서 사용자로부터 데이터 통신을 위한 통신 기능 정보를 수신하는 단계, 상기 데이터 디자이너에서 상기 통신 기능 정보를 이용하여 미리 결정된 데이터 포맷 규칙에 따른 통신 데이터를 생성하는 단계, 자동 코드 생성 모듈에서 어플리케이션이 설치된 상기 클라이언트의 운영 체제 및 상기 어플리케이션의 개발 언어에 대한 탬플릿과 상기 통신 데이터를 이용하여, 상기 통신 기능 정보를 포함하는 소스 코드를 생성하는 단계, 및 상기 생성된 소스 코드를 상기 어플리케이션에 컴파일 또는 빌드하는 단계를 포함한다.According to another aspect of the present invention, there is provided a data communication method for a client and a server using different operating systems or different development languages, the method comprising: receiving, at a data designer, Generating communication data according to a predetermined data format rule by using the communication function information in the data designer, generating a template for a development language of the client and an operating system of the client in which the application is installed in the automatic code generation module, Generating the source code including the communication function information using the communication data, and compiling or building the generated source code into the application.

또한, 상기 어플리케이션이 상기 소스 코드를 이용하여, 상기 어플리케이션과 서버 사이의 데이터 통신을 연결하는 프록시를 통해 상기 데이터 통신을 수행하는 단계를 더 포함하되, 상기 프록시는, 미리 결정된 데이터 통신 규칙을 이용하여 상기 어플리케이션과 통신할 수 있다.The method of claim 1, further comprising the step of the application using the source code to perform the data communication through a proxy connecting data communication between the application and the server, wherein the proxy uses a predetermined data communication rule And can communicate with the application.

또한, 상기 통신 기능 정보를 수신하는 단계는, 상기 어플리케이션에 결합된 상기 데이터 디자이너를 이용하여 수신하는 것을 포함하고, 상기 데이터 디자이너는, 상기 생성된 통신 데이터를 XML(extensible markup language) 언어를 이용하는 논리적 데이터 구조로 변환하는 것을 더 포함할 수 있다.In addition, the step of receiving the communication function information may include receiving the communication data using the data designer coupled to the application, and the data designer may transmit the generated communication data to a logical (logical) Lt; RTI ID = 0.0 > data structure. ≪ / RTI >

또한, 상기 소스 코드를 생성하는 단계는, 상기 자동 코드 생성 모듈이 서로 다른 개발 언어 또는 서로 다른 운영 체제에 대한 상기 탬플릿을 미리 저장하고 있는 것을 포함할 수 있다.In addition, the step of generating the source code may include that the automatic code generation module pre-stores the template for different development languages or different operating systems.

전술한 바와 같은 본 발명의 데이터 통신 시스템에 의하면, 운영 체제 및 개발 언어별로 중복 개발해야 하는 비용을 절감하고, 통신 기능의 변경 및 확장이 용이한 장점이 있다.According to the data communication system of the present invention as described above, there is an advantage that it is possible to reduce the cost of duplicate development for each operating system and development language, and to easily change and expand the communication function.

본 발명의 데이터 통신 방법은 데이터 통신을 제공하는 어플리케이션이 운영 체제 및 개발 언어가 다양한 경우뿐만 아니라, 외부 시스템의 어플리케이션이 운영 체제 및 개발 언어를 현 시점에서 알 수 없는 경우에도 활용 가능한 장점이 있다.The data communication method of the present invention is advantageous not only when an application providing data communication has various operating systems and languages, but also when an application of an external system can not know an operating system and a development language at the present time.

본 발명의 데이터 통신 시스템은 시스템의 유지 보수 및 관리가 용이해지며, 시스템을 관리하는데 필요한 여러 가지 자원 및 비용을 감소시킬 수 있다.The data communication system of the present invention facilitates maintenance and management of the system, and can reduce various resources and costs required to manage the system.

상술한 효과와 더불어 본 발명의 구체적인 효과는 이하 발명을 실시하기 위한 구체적인 사항을 설명하면서 함께 기술한다. The above and other objects, features and advantages of the present invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.

도 1은 본 발명의 몇몇 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다.
도 3은 도 1에 포함된 어댑터를 나타내는 블럭도이다.
도 4는 본 발명의 일 실시예에 따른 데이터 통신 방법을 나타내는 순서도이다.
도 5는 본 발명의 다른 실시예에 따른 데이터 통신 방법을 나타내는 순서도이다.
도 6은 본 발명의 다른 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다.
도 7은 본 발명의 또 다른 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다.
1 is a diagram illustrating a data communication system in accordance with some embodiments of the present invention.
2 is a diagram illustrating a data communication system according to an embodiment of the present invention.
Figure 3 is a block diagram illustrating the adapter included in Figure 1;
4 is a flowchart illustrating a data communication method according to an embodiment of the present invention.
5 is a flowchart showing a data communication method according to another embodiment of the present invention.
6 is a diagram illustrating a data communication system according to another embodiment of the present invention.
7 is a diagram illustrating a data communication system according to another embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

비록 제1, 제2 등이 다양한 구성 요소들을 서술하기 위해서 사용되나, 이들 구성 요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성 요소를 다른 구성 요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성 요소는 본 발명의 기술적 사상 내에서 제2 구성 요소 일 수도 있음은 물론이다.Although the first, second, etc. are used to describe various components, it goes without saying that these components are not limited by these terms. These terms are used only to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may be the second component within the technical scope of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise.

이하에서, 도 1 내지 도 7을 참조하여 본 발명의 몇몇 실시예에 따른 데이터 통신 방법 및 이를 포함하는 시스템에 대해 설명하도록 한다.Hereinafter, a data communication method and a system including the data communication method according to some embodiments of the present invention will be described with reference to FIG. 1 through FIG.

도 1은 본 발명의 몇몇 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다. 도 1에 도시된 구성요소들이 필수적인 것은 아니어서, 그보다 많은 구성요소들을 갖거나 그보다 적은 구성요소들을 갖는 데이터 통신 시스템이 구현될 수 있다.1 is a diagram illustrating a data communication system in accordance with some embodiments of the present invention. The components shown in FIG. 1 are not essential, and a data communication system having components with fewer or fewer components can be implemented.

도 1을 참조하면, 본 발명의 몇몇 실시예에 따른 데이터 통신 시스템은 어플리케이션(100), 어댑터(200), 프록시(300), 서버 저장부(400), 클라이언트(500), 및 서버(600)를 포함한다.1, a data communication system according to some embodiments of the present invention includes an application 100, an adapter 200, a proxy 300, a server storage 400, a client 500, and a server 600, .

클라이언트(500)는 네트워크로 연결된 서버(600)로부터 정보를 제공받는 컴퓨터 또는 프로그램을 포함한다. 또한, 서버(600)는 클라이언트(500)에게 네트워크를 통해 정보를 제공하는 컴퓨터 또는 프로그램을 포함할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.The client 500 includes a computer or a program that receives information from the server 600 connected to the network. In addition, the server 600 may include a computer or a program that provides information to the client 500 via the network, but the present invention is not limited thereto.

클라이언트(500) 및 서버(600)는 전력 시스템, 산업 제어 시스템 또는 일반적인 형태의 TCP/IP 통신을 필요로 하는 시스템에서 사용되는 클라이언트(500) 및 서버(600)를 포함할 수 있다. 예를 들어, 에너지 관리 시스템(Energy Management System, EMS), 전력 관리 시스템(Power Management System, PMS), PAS(Power Automation System), 송배전 시스템(Transmission and Distribution Systems), 발전 시스템(Generation System), 고급 배전 관리 시스템(Advanced Distribution Management Systems, ADMS), 배전 관리 시스템(Distribution Management Systems, DMS), 모니터링 및 제어를 위한 감시 제어 및 데이터 취득 시스템(Supervisory Control And Data Acquisition, SCADA)을 포함할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The client 500 and the server 600 may include a client 500 and a server 600 used in a power system, an industrial control system, or a system that requires a general type of TCP / IP communication. For example, it is possible to use the energy management system (EMS), power management system (PMS), power automation system (PAS), transmission and distribution system, generation system, (ADMS), Distribution Management Systems (DMS), and Supervisory Control and Data Acquisition (SCADA) for monitoring and control. However, the present invention is not limited thereto.

클라이언트(500)는 서버(600)와 데이터 통신을 하기 위하여 어플리케이션(100) 및 어댑터(200)를 포함할 수 있다.The client 500 may include an application 100 and an adapter 200 for data communication with the server 600.

어플리케이션(100)은 서로 다른 클라이언트(500) 또는 서버(600)간 데이터 통신을 제공하기 위하여 통신 기능을 수행하는 프로그램, 모듈 또는 소프트웨어를 포함할 수 있다.The application 100 may include a program, module, or software that performs communication functions to provide data communication between different clients 500 or servers 600.

어플리케이션(100)은 전술한 전력 시스템, 산업 제어 시스템 또는 일반적인 형태의 TCP/IP(Transmission Control Protocol/Internet Protocol) 통신을 필요로 하는 시스템에서 사용되는 프로그램 모듈 또는 소프트웨어를 포함할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The application 100 may include a program module or software used in a system that requires the above-described power system, industrial control system, or a general form of TCP / IP (Transmission Control Protocol / Internet Protocol) communication. However, the present invention is not limited thereto.

어댑터(200)는 서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 클라이언트(500) 또는 서버(600)간 데이터 통신을 제공하기 위하여, 클라이언트(500)에 포함된 어플리케이션(100)에 결합할 수 있다. 예를 들어, 어댑터(200)가 장치인 경우, 어댑터(200)가 어플리케이션(100)을 포함한 클라이언트(500)에 물리적으로 연결 또는 결합할 수 있고, 어댑터(200)가 프로그램인 경우, 어댑터(200)가 어플리케이션(100)을 포함한 클라이언트(500)에 설치된 후, 어플리케이션(100)에 소프트웨어적으로 결합되어 어플리케이션에 포함되어 함께 빌드(프로그램 코드를 실행 가능한 파일로 변환하는 과정)될 수 있다.The adapter 200 may be coupled to the application 100 included in the client 500 to provide data communication between the client 500 or the server 600 using different operating systems or different development languages. For example, if the adapter 200 is a device, the adapter 200 may physically connect or couple to the client 500 including the application 100, and if the adapter 200 is a program, the adapter 200 May be installed in the client 500 including the application 100 and then combined with the application 100 in a software manner so as to be included in the application and be built together (a process of converting the program code into an executable file).

어댑터(200)는 어플리케이션(100)에 프로그램 언어적으로 결합되어 어플리케이션(100)에 포함되거나, 어플리케이션(100)에 물리적으로 연결되어 어플리케이션(100)과 통신할 수 있다.The adapter 200 may be programatically coupled to the application 100 and included in the application 100 or may be physically connected to the application 100 to communicate with the application 100.

운영 체제는 서버(600) 또는 클라이언트(500)의 하드웨어를 관리할 뿐만 아니라 어플리케이션(100) 또는 응용 소프트웨어를 실행하기 위하여 하드웨어 추상화 플랫폼과 공통 시스템 서비스를 제공하는 시스템 소프트웨어를 포함할 수 있다. 예를 들어, 운영 체제는 윈도우(Windows), 리눅스(Linux), 유닉스(Unix), 솔라리스(Solaris)를 포함할 수 있다.The operating system may include system software for managing hardware of the server 600 or the client 500 as well as providing hardware abstraction platform and common system services for executing the application 100 or application software. For example, the operating system may include Windows, Linux, Unix, and Solaris.

개발 언어 즉, 프로그래밍 언어는 클라이언트(500), 서버(600), 컴퓨터 시스템 또는 어플리케이션(100)을 구동시키는 소프트웨어를 작성하기 위한 언어를 포함한다. 예를 들어, 개발 언어는 C++, C#, Java를 포함할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.The development language, that is, the programming language includes a client 500, a server 600, a computer system, or a language for writing software to run the application 100. For example, the development language may include C ++, C #, and Java, but the present invention is not limited thereto.

어댑터(200)는 서버(600) 또는 클라이언트(500)의 운영 체제 및 어플리케이션(100) 개발 언어별로, 미리 결정된 데이터 포맷 규칙에 따라 자동으로 소스 코드를 생성할 수 있다. 예를 들어, Windows 운영 체제에서 실행되는, C++ 개발 언어로 개발된 어플리케이션(100)에 대하여 자동으로 Windows C++ 소스 코드를 생성하여, 생성한 소스 코드를 어플리케이션(100)에 컴파일(프로그램 언어를 컴퓨터 등의 기계가 이해할 수 있는 언어로 변역하는 과정) 및 빌드시킬 수 있다. 구체적으로, 미리 결정된 데이터 포맷 규칙은 사전 정의된 XML(Extensible Markup Language) 포맷 규칙을 포함할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The adapter 200 can automatically generate the source code according to a predetermined data format rule according to the operating system of the server 600 or the client 500 and the development language of the application 100. [ For example, Windows C ++ source code is automatically generated for the application 100 developed in the C ++ development language, which is executed in the Windows operating system, and the generated source code is compiled into the application 100 And translating it into a machine-understandable language). Specifically, the predetermined data format rules may include predefined Extensible Markup Language (XML) format rules. However, the present invention is not limited thereto.

서버(600)는 클라이언트(500)와 데이터 통신을 하기 위하여 프록시(300) 및 서버 저장부(400)를 포함할 수 있다. 또한, 프록시(300)는 클라이언트(500)에 포함된 어댑터(200)와 서버(600)를 전기적으로 연결하고, 어댑터(200)와 서버(600)간 데이터 통신을 수행한다.The server 600 may include a proxy 300 and a server storage 400 for data communication with the client 500. The proxy 300 electrically connects the adapter 200 included in the client 500 and the server 600 and performs data communication between the adapter 200 and the server 600.

프록시(300)는 어플리케이션(100)과 동일한 운영 체제의 클라이언트(500)에 동시에 설치되는 경우, 어댑터(200)와 TCP/IP Local Loop 통신을 한다. 또한, 프록시(300)를 실행하는 운영 체제가 어플리케이션(100)을 실행하는 운영 체제와 다른 경우, 프록시(300)는 어플리케이션(100)과 별도의 클라이언트에 포함되어, 일반적인 TCP/IP 통신을 통해 어댑터(200)와 데이터를 주고 받는다.The proxy 300 performs TCP / IP local loop communication with the adapter 200 when the proxy 300 is simultaneously installed in the client 500 having the same operating system as the application 100. [ In addition, when the operating system executing the proxy 300 is different from the operating system executing the application 100, the proxy 300 is included in a separate client from the application 100, (200).

프록시(300)는 서로 다른 운영 체제 및 개발 언어를 이용하는 어댑터(200)와 통신하기 위하여, 미리 결정된 데이터 통신 규칙을 포함할 수 있다. 구체적으로, 미리 결정된 데이터 통신 규칙은 어댑터(200)의 운영 체제 및 개발 언어와 상관없이 하나의 운영 체제 및 개발 언어로 데이터 통신을 수행할 수 있다. 예를 들어, Windows 운영체제와 C# 개발 언어 또는 Linux 운영 체제와 C++ 개발 언어를 이용하는 어댑터(200)의 경우에도, 동일하게 Windows 운영체제 및 C++ 개발 언어를 이용하는 프록시(300)를 통해 Windows 운영체제 및 C++ 개발 언어를 이용하는 서버(600)와 데이터 통신을 수행할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.Proxy 300 may include predetermined data communication rules to communicate with adapter 200 using different operating systems and development languages. Specifically, the predetermined data communication rules can perform data communication in one operating system and development language regardless of the operating system and the development language of the adapter 200. For example, in the case of an adapter 200 using a Windows operating system and a C # development language or a Linux operating system and a C ++ development language, a Windows operating system and a C ++ development language The present invention is not limited to this.

프록시(300)는 프로그램 개발자가 선호하는 운영 체제 및 개발 언어로 한가지 종류만 개발하여 중복 개발을 방지할 수 있는 효과가 있으며, 어플리케이션(100)에 빌드되는 어댑터(200)를 통해 어플리케이션(100)의 데이터를 어플리케이션(100)이 포함된 클라이언트(500)와 다른 클라이언트 또는 서버(600)로 전달할 수 있다.The proxy 300 has an effect of preventing duplication of development by developing only one kind of operating system and a development language preferred by the program developer. The proxy 300 has an effect of preventing duplication of the application 100 through the adapter 200 built in the application 100. [ Data can be transmitted to the client 500 or another client or server 600 including the application 100. [

또한, 추후 통신 기능 확장 및 변경 시 운영 체제 및 개발 언어별로 복수의 어플리케이션(100)을 수정하지 않고, 프록시(300)만 수정하면 되므로 유지 보수 및 신규 기능 추가가 용이한 장점이 있다.In addition, since only the proxy 300 is modified without modifying the plurality of applications 100 according to the operating system and the development language at the time of future expansion or change of the communication function, it is easy to add maintenance and new functions.

서버 저장부(400)는 전술한 전력 시스템, 산업 제어 시스템 또는 일반적인 형태의 TCP/IP 통신을 필요로 하는 시스템의 데이터를 저장하고, 관리하는 컴퓨터 또는 프로그램을 포함한다.The server storage unit 400 includes a computer or a program that stores and manages data of the above-described power system, industrial control system, or a system requiring a general type of TCP / IP communication.

어댑터(200)와 프록시(300)의 도입으로 인하여, 서로 다른 운영 체제와 개발 언어를 가지고 있는 시스템과 연계하여 전력 시스템 등을 관리 하는 개발자 또는 운영자의 연계 부담이 완화될 수 있다.Due to the introduction of the adapter 200 and the proxy 300, the cooperation burden of a developer or an operator managing the power system or the like in connection with a system having different operating systems and development languages can be alleviated.

프록시(300)는 로깅(logging)을 수행하여, 서로 다른 시스템 또는 클라이언트와 서버간 데이터 통신을 수행할 때 데이터 통신 오류가 발생하는 경우, 데이터 통신 오류에 대한 원인 파악이 간편한 장점이 있다. 구체적으로, 프록시(300)는 프로그램 개발 중 및 완료 후 발생할 수 있는 오류에 대해 디버깅하거나 운영 중인 프로그램 상태를 모니터링 하기 위해 필요한 정보(로그)를 기록하는 것을 포함한다.The proxy 300 has an advantage in that it is easy to grasp the cause of a data communication error when a data communication error occurs when performing data communication between different systems or clients and a server by performing logging. Specifically, the proxy 300 includes logging information (logs) necessary to debug an error that may occur during program development and after completion, or to monitor the status of an active program.

프록시(300)는 잘못된 데이터 통신에 따른 비정상적 상황 방지(예를 들어, DDOS(Distributed DoS) 공격, 해킹 또는 서버 다운)를 위해 데이터 유효화 검사를 수행할 수 있다. 예를 들어, 클라이언트(500)로부터 비정상적 데이터가 서버(600)로 접근하고자 하는 경우, 프록시(300)는 데이터 필터링을 수행하여 서버(600)로 정상적인 데이터만 보낼 수 있다.The proxy 300 may perform a data validation check for abnormal situation prevention (e.g., DDOS (Distributed DoS) attack, hacking or server down) due to erroneous data communication. For example, when abnormal data is to be accessed from the client 500 to the server 600, the proxy 300 may perform data filtering to send only normal data to the server 600.

이하 발명의 설명에서 복수의 클라이언트(501, 502, 503, 504, 505), 복수의 어플리케이션(101, 102, 103, 104), 복수의 어댑터(201, 202, 203, 204), 복수의 프록시(301, 302, 303, 304, 305) 각각에 대한 공통된 설명은 클라이언트(500), 어플리케이션(100), 어댑터(200), 프록시(300)로 설명하도록 한다.In the following description of the present invention, a plurality of clients 501, 502, 503, 504 and 505, a plurality of applications 101, 102, 103 and 104, a plurality of adapters 201, 202, 203 and 204, 301, 302, 303, 304 and 305 will be described as a client 500, an application 100, an adapter 200, and a proxy 300, respectively.

도 2는 본 발명의 일 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다. 설명의 편의를 위하여, 이하에서는 앞서 설명한 실시예와 동일한 사항에 대해서는 중복된 설명을 생략하고 차이점을 중심으로 설명하도록 한다.2 is a diagram illustrating a data communication system according to an embodiment of the present invention. For the sake of convenience of description, the same elements as those of the above-described embodiment will be described below with the exception of duplicate descriptions.

도 2를 참조하면, 본 발명의 일 실시예에 따른 데이터 통신 시스템은 복수의 클라이언트(501, 502, 503, 504), 복수의 어플리케이션(101, 102, 103, 104), 복수의 어댑터(201, 202, 203, 204), 프록시(300), 서버 저장부(400), 및 서버(600)를 포함한다. 참고로, 프록시(300), 서버 저장부(400), 및 서버(600)에 대한 자세한 설명은 전술하였는바 생략하도록 한다.2, a data communication system according to an embodiment of the present invention includes a plurality of clients 501, 502, 503, 504, a plurality of applications 101, 102, 103, 104, a plurality of adapters 201, 202, 203, and 204, a proxy 300, a server storage unit 400, and a server 600. For reference, the proxy 300, the server storage unit 400, and the server 600 will not be described in detail.

도면에서 어플리케이션(100) 및 어댑터(200)를 포함한 클라이언트(500)가 데이터 통신 시스템 내에 네개만 포함되어 있는 것으로 도시하였으나, 본 발명이 이에 한정되는 것은 아니다. Although it is shown that the client 500 including the application 100 and the adapter 200 is included only in the data communication system, the present invention is not limited thereto.

제1 클라이언트(501)는 윈도우(Windows)를 운영 체제로 하여 실행되는 컴퓨터 장치 또는 시스템을 포함하고, 제2 클라이언트(502)는 리눅스(Linux)를 운영 체제로 하여 실행되는 컴퓨터 장치 또는 시스템을 포함하고, 제3 클라이언트(503)는 유닉스(Unix)를 운영 체제로 하여 실행되는 컴퓨터 장치 또는 시스템을 포함하고, 제4 클라이언트(504)는 솔라리스(Solaris)를 운영 체제로 하여 실행되는 컴퓨터 장치 또는 시스템을 포함한다. 다만, 본 발명이 이에 한정되는 것은 아니다.The first client 501 includes a computer apparatus or system that is executed by using Windows as an operating system and the second client 502 includes a computer apparatus or system that is executed by using Linux as an operating system And the third client 503 includes a computer device or system that is executed by using Unix as an operating system and the fourth client 504 includes a computer device or system that is executed by using Solaris as an operating system, . However, the present invention is not limited thereto.

제1 어플리케이션(101)은 Windows 운영 체제에서 실행되고, C# 개발 언어로 작성되어, C# 개발 언어를 이용하여 데이터 통신을 제공하는 프로그램을 포함하고, 제2 어플리케이션(102)은 Linux 운영 체제에서 실행되고, C++ 개발 언어로 작성되어, C++ 개발 언어를 이용하여 데이터 통신을 제공하는 프로그램을 포함하고, 제3 어플리케이션(103)은 Unix 운영 체제에서 실행되고, Java 개발 언어로 작성되어, Java 개발 언어를 이용하여 데이터 통신을 제공하는 프로그램을 포함하고, 제4 어플리케이션(104)은 Solaris 운영 체제에서 실행되고, C++ 개발 언어로 작성되어, C++ 개발 언어를 이용하여 데이터 통신을 제공하는 프로그램을 포함하나, 본 발명이 이에 한정되는 것은 아니다.The first application 101 includes a program running in a Windows operating system, written in a C # development language, and providing data communication using a C # development language, and the second application 102 is executed in a Linux operating system , A program written in a C ++ development language and providing data communication using a C ++ development language and the third application 103 is executed in a Unix operating system and written in a Java development language and using a Java development language And the fourth application 104 includes a program that is executed in the Solaris operating system and written in the C ++ development language and provides data communication using the C ++ development language, But is not limited thereto.

제1 어댑터(201)는 Windows 운영 체제에서 실행되고, C# 개발 언어를 이용하여 C# 소스 코드를 생성하고, 제1 어플리케이션(101)에 빌드되는 프로그램을 포함하고, 제2 어댑터(202)는 Linux 운영 체제에서 실행되고, C++ 개발 언어를 이용하여 C++ 소스 코드를 생성하고, 제2 어플리케이션(102)에 빌드되는 프로그램을 포함하고, 제3 어댑터(203)는 Unix 운영 체제에서 실행되고, Java 개발 언어를 이용하여 Java 소스 코드를 생성하고, 제3 어플리케이션(103)에 빌드되는 프로그램을 포함하고, 제4 어댑터(204)는 Solaris 운영 체제에서 실행되고, C++ 개발 언어를 이용하여 C++ 소스 코드를 생성하고, 제4 어플리케이션(104)에 빌드되는 프로그램을 포함할 수 있다.The first adapter 201 is implemented in a Windows operating system and generates C # source code using the C # development language and includes a program built in the first application 101. The second adapter 202 is a Linux operating system The third adapter 203 is executed in the Unix operating system, and the Java development language is used. The third adapter 203 includes a program that is executed in the system, generates C ++ source code using the C ++ development language and built in the second application 102, And the fourth adapter 204 is executed in the Solaris operating system and generates C ++ source code using the C ++ development language and generates the C ++ source code using the C ++ development language, And a program built in the fourth application 104. [

소스 코드는 어플리케이션(100)에 컴파일 또는 빌드되어 데이터 통신을 수행할 수 있다. 예를 들어, 전술한 바와 같이 제1 어댑터(201)에서 생성된 C# 소스 코드는 제1 어플리케이션(101)에 컴파일 또는 빌드되어 데이터 통신을 수행할 수 있다.The source code may be compiled or built into the application 100 to perform data communication. For example, as described above, the C # source code generated by the first adapter 201 may be compiled or built into the first application 101 to perform data communication.

서버(600)는 서버(600)와 동일한 운영 체제를 이용하고, 미리 결정된 데이터 통신 규칙을 이용하여 어댑터(200)와 통신하는 프록시(300)를 포함하고, 프록시(300)를 이용하여 클라이언트(500)와 통신할 수 있다. 구체적으로, 프록시(300)가 서버(600)와 동일한 운영 체제로 실행되는 경우, 서버(600)에 포함된 한 개의 프록시(300)를 이용하여 복수의 클라이언트(500)에 포함된 어댑터(200)와 데이터 통신을 수행할 수 있다. The server 600 includes a proxy 300 that uses the same operating system as the server 600 and communicates with the adapter 200 using a predetermined data communication rule and uses the proxy 300 to communicate with the client 500 ). ≪ / RTI > Specifically, when the proxy 300 is executed with the same operating system as the server 600, the adapter 200 included in the plurality of clients 500 using one proxy 300 included in the server 600, And data communication can be performed.

도 2에서 서버(600)는 Windows를 운영 체제로 이용하고 있으나, 본 발명이 이에 한정되는 것은 아니다. 예를 들어, 서버(600)는 윈도우(Windows), 리눅스(Linux), 유닉스(Unix), 솔라리스(Solaris)를 운영 체제로 이용할 수 있다.In FIG. 2, the server 600 uses Windows as an operating system, but the present invention is not limited thereto. For example, the server 600 may be used as an operating system for Windows, Linux, Unix, and Solaris.

도 3은 도 1에 포함된 어댑터를 나타내는 블럭도이다.Figure 3 is a block diagram illustrating the adapter included in Figure 1;

도 3을 참조하면, 본 발명의 일 실시예에 따른 어댑터(200)는 데이터 디자이너(210) 및 자동 코드 생성 모듈(220)을 포함한다.Referring to FIG. 3, an adapter 200 according to an embodiment of the present invention includes a data designer 210 and an automatic code generation module 220.

데이터 디자이너(210)는 데이터 모델링(Data modeling)을 수행하는 모듈을 포함한다. 예를 들어, 데이터 디자이너(210)는 어댑터(200)가 설치 또는 결합된 클라이언트(500)의 GUI를 통해 '데이터 디자이너.exe'와 같은 프로그램 형식으로 표현될 수 있으며, 클릭(Click) 또는 드래그(Drag)로 간편하게 데이터를 구조화하고 조직화할 수 있다.The data designer 210 includes a module for performing data modeling. For example, the data designer 210 can be expressed in a program format such as 'data designer .exe' through the GUI of the client 500 in which the adapter 200 is installed or combined, and can be clicked or dragged Drag) makes it easy to structure and organize data.

데이터 모델링은 주어진 개념(예를 들어, 실시간 전력 사용량)으로부터 논리적인 데이터 모델(통신 데이터 예를 들어, XML 데이터)을 구성하는 작업을 포함한다. 다만, 본 발명이 이에 한정되는 것은 아니다.Data modeling involves the task of constructing a logical data model (communication data, e. G., XML data) from a given concept (e. G., Real time power usage). However, the present invention is not limited thereto.

데이터 디자이너(210)는 클라이언트 사용자로부터 어플리케이션(100)이 필요로 하는 데이터 통신 기능 정보를 수신하여, 통신 기능이 정의된 미리 결정된 데이터 포맷 규칙에 따라 어플리케이션(100)이 필요로 하는 통신 데이터를 생성하고, 생성된 통신 데이터를 논리적 데이터 구조로 변환할 수 있다. 구체적으로, 통신 데이터는 데이터를 구조화 할 수 있는 확장성 생성 언어인 XML(extensible markup language) 언어로 작성된 XML 데이터를 포함할 수 있다. 이때, 사용자로부터 수신한 통신 기능 정보에 포함된 통신 기능은 XML 언어로 구조화되어 논리적 데이터 구조로 변환될 수 있다. 예를 들어, 미리 결정된 데이터 포맷 규칙은 XML 포맷 규칙을 포함하고, 통신 기능 정보는 서버(600)와 통신을 하기 위하여 필요한 '실시간 전력 사용량 수신'과 같은 명령을 포함할 수 있다.The data designer 210 receives the data communication function information required by the application 100 from the client user and generates communication data required by the application 100 according to a predetermined data format rule defining the communication function , And convert the generated communication data into a logical data structure. Specifically, the communication data may include XML data written in an extensible markup language (XML) language, which is an extensibility generating language capable of structuring data. At this time, the communication function included in the communication function information received from the user may be structured in XML language and converted into a logical data structure. For example, the predetermined data format rules include XML formatting rules and the communication capability information may include commands such as " Receive Real Time Power Usage " as needed to communicate with the server 600. [

자동 코드 생성 모듈(220)은 서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 클라이언트(500)와 서버(600)간의 데이터 통신을 위한 소스 코드를 생성할 수 있다. 예를 들어, 소스 코드는 Windows 운영 체제에서 C++ 개발 언어로 작성되어, Windows 운영 체제에서 C++ 개발 언어로 작성된 어플리케이션(100)에 컴파일 또는 빌드될 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The automatic code generation module 220 may generate source code for data communication between the client 500 and the server 600 using different operating systems or different development languages. For example, the source code may be written in the C ++ development language on the Windows operating system and compiled or built in the application 100 written in the C ++ development language on the Windows operating system. However, the present invention is not limited thereto.

자동 코드 생성 모듈(220)은 서로 다른 개발 언어 또는 서로 다른 운영 체제에 대한 탬플릿(225)을 미리 저장하고, 상기 탬플릿(225)과 데이터 디자이너(210)에서 생성된 통신 데이터(예를 들어, XML 데이터(215))를 이용하여, 어플리케이션(100)의 운영 체제 및 개발 언어에서 사용자가 정의한 통신 기능을 수행할 수 있는 소스 코드(230)를 생성할 수 있다.The automatic code generation module 220 may store the template 225 for different development languages or different operating systems in advance and store the communication data generated by the template 225 and the data designer 210 Data 215) to generate source code 230 that can perform a user defined communication function in the operating system and development language of the application 100.

데이터 디자이너(210) 및 자동 코드 생성 모듈(220)은 도 2에 도시된 복수의 어댑터(201, 202, 203, 204)에 포함될 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The data designer 210 and the automatic code generation module 220 may be included in the plurality of adapters 201, 202, 203, 204 shown in FIG. However, the present invention is not limited thereto.

도 4는 본 발명의 일 실시예에 따른 데이터 통신 방법을 나타내는 순서도이다.4 is a flowchart illustrating a data communication method according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 데이터 통신 방법은 데이터 디자이너(210)에서 어플리케이션(100)이 필요로 하는 데이터 통신 기능을 정의한다(S100). 구체적으로, 데이터 모델링 모듈이며, 어플리케이션(100)에 결합된 데이터 디자이너(210)가 데이터 통신을 위한 통신 기능 정보를 클라이언트(500)의 사용자로부터 수신한다. 다만, 본 발명이 이에 한정되는 것은 아니다.Referring to FIG. 4, a data communication method according to an embodiment of the present invention defines a data communication function required by an application 100 in a data designer 210 (S100). Specifically, the data modeling module is a data designer 210 coupled to the application 100, and receives communication function information for data communication from a user of the client 500. [ However, the present invention is not limited thereto.

이어서, 통신 기능 스펙이 정의된 XML 데이터를 생성한다(S110). 구체적으로, 데이터 디자이너(210)가 클라이언트(500)의 사용자로부터 수신한 통신 기능 정보를 이용하여 미리 결정된 데이터 포맷 규칙(예를 들어, XML 포맷 규칙)에 따라 어플리케이션(100)이 필요로 하는 통신 데이터를 생성한다. 구체적으로, 통신 데이터(예를 들어, XML 데이터)가 논리적으로 조직될 수 있도록 논리적 데이터 구조로 변환할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.Subsequently, XML data defining the communication function specification is generated (S110). Specifically, the data designer 210 uses the communication function information received from the user of the client 500 to transmit the communication data required by the application 100 according to a predetermined data formatting rule (for example, an XML formatting rule) . Specifically, the communication data (for example, XML data) can be converted into a logical data structure so as to be logically organized, but the present invention is not limited thereto.

이어서, 어댑터(200)가 생성하고자 하는 운영 체제 및 개발 언어에 따라 탬플릿(225)을 선택한다(S120). 구체적으로, 탬플릿(225)은 서로 다른 운영 체제 또는 서로 다른 개발 언어에 대하여 소스 코드(230)를 생성하기 위해 미리 자동 코드 생성 모듈(220)에 저장되어 있을 수 있다. Next, the template 225 is selected according to the operating system and the development language that the adapter 200 wants to generate (S120). Specifically, the template 225 may be stored in the automatic code generation module 220 in advance to generate the source code 230 for different operating systems or different development languages.

이어서, 자동 코드 생성 모듈(220)을 통해 소스 코드(230)를 자동으로 생성한다(S130). 구체적으로, 자동 코드 생성 모듈(220)이 어플리케이션(100)이 설치된 클라이언트(500)의 운영 체제 및 어플리케이션(100)의 개발 언어에 대한 탬플릿(225)과 통신 데이터(예를 들어, XML 데이터(215))를 이용하여, 클라이언트(500)의 사용자가 정의한 통신 기능 정보를 포함하는 소스 코드(230)를 생성할 수 있다. Then, the source code 230 is automatically generated through the automatic code generation module 220 (S130). Specifically, the automatic code generation module 220 generates a template 225 for the development language of the application 100 and the operating system of the client 500 in which the application 100 is installed and communication data (for example, XML data 215 ) To generate the source code 230 including the communication function information defined by the user of the client 500. [

이어서, 소스 코드(230)는 어플리케이션(100)과 통합 된다(S140). 구체적으로, 자동 코드 생성 모듈(220)에서 생성된 소스 코드(230)가 어플리케이션(100)에 컴파일 또는 빌드된다. 다만, 본 발명이 이에 한정되는 것은 아니다.Then, the source code 230 is integrated with the application 100 (S140). Specifically, the source code 230 generated by the automatic code generation module 220 is compiled or built into the application 100. However, the present invention is not limited thereto.

이어서, 프록시(300)를 통해 서버(600)와 통신한다(S150). 구체적으로, 어플리케이션(100)은 미리 결정된 데이터 통신 규칙을 이용하여 어플리케이션(100)과 통신하는 프록시(300)를 이용하여 서버(600)와 통신한다.Then, it communicates with the server 600 through the proxy 300 (S150). Specifically, the application 100 communicates with the server 600 using the proxy 300 that communicates with the application 100 using a predetermined data communication rule.

도 5는 본 발명의 다른 실시예에 따른 데이터 통신 방법을 나타내는 순서도이다. 설명의 편의를 위하여, 이하에서는 앞서 설명한 실시예와 동일한 사항에 대해서는 중복된 설명을 생략하고 차이점을 중심으로 설명하도록 한다.5 is a flowchart showing a data communication method according to another embodiment of the present invention. For the sake of convenience of description, the same elements as those of the above-described embodiment will be described below with the exception of duplicate descriptions.

도 5를 참조하면, 본 발명의 다른 실시예에 따른 데이터 통신 방법은 데이터 디자이너(210)에서 클라이언트(500)의 사용자로부터 통신 기능 정보를 수신한다. 구체적으로 데이터 디자이너(210)는 GUI를 이용하여 사용자로부터 데이터 통신을 위한 통신 기능 정보를 수신할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.Referring to FIG. 5, a data communication method according to another embodiment of the present invention receives communication function information from a user of a client 500 in a data designer 210. Specifically, the data designer 210 can receive communication function information for data communication from a user using a GUI. However, the present invention is not limited thereto.

이어서, 데이터 디자이너(210)는 통신 기능 정보를 포함한 XML 데이터(215)를 생성한다. 구체적으로, 데이터 디자이너(210)는 XML 포맷 규칙에 따라 사용자가 정의한 통신 기능 정보를 포함한 XML 데이터(215)를 생성할 수 있다.Next, the data designer 210 generates XML data 215 including communication function information. Specifically, the data designer 210 can generate XML data 215 including user-defined communication function information according to the XML formatting rule.

이어서, 자동 코드 생성 모듈(220)은 자동 코드 생성 모듈(220)에 미리 저장되어 있는 탬플릿(225)을 선택한다. 구체적으로, 탬플릿(225)은 서로 다른 운영 체제 및 개발 언어에 대응하기 위하여, 통신 기능 정보를 포함한 XML 데이터(215)에 논리적 또는 구조적으로 결합될 수 있도록 미리 작성되어 자동 코드 생성 모듈(220)에 저장될 수 있다. 예를 들어, 탬플릿(225)은 Windows C++ 탬플릿, Linux C++ 탬플릿, Unix C++ 탬플릿, Solaris C++ 탬플릿, Java 탬플릿, Windows C# 탬플릿을 포함할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The automatic code generation module 220 then selects the template 225 previously stored in the automatic code generation module 220. Specifically, in order to correspond to different operating systems and development languages, the template 225 is prepared in advance to be logically or structurally combined with the XML data 215 including the communication function information, and is sent to the automatic code generation module 220 Lt; / RTI > For example, the template 225 may include a Windows C ++ template, a Linux C ++ template, a Unix C ++ template, a Solaris C ++ template, a Java template, and a Windows C # template. However, the present invention is not limited thereto.

이어서, 자동 코드 생성 모듈(220)은 통신 기능 정보를 포함한 XML 데이터(215)와 어플리케이션(100)의 운영 체제와 개발 언어에 따라 동일한 운영 체제와 개발 언어로 작성된 탬플릿(225)을 수신하고, 소스 코드(230)를 생성한다. 구체적으로, 자동 코드 생성 모듈(220)은 서로 다른 개발 언어 또는 서로 다른 운영 체제에 대한 탬플릿(225)을 미리 저장하고, 상기 탬플릿(225)과 데이터 디자이너(210)에서 생성된 통신 데이터(예를 들어, XML 데이터(215))를 이용하여, 어플리케이션(100)의 운영 체제 및 개발 언어에서 사용자가 정의한 통신 기능을 수행할 수 있는 소스 코드(230)를 생성할 수 있다. 예를 들어, 소스 코드(230)는 Windows C++ 소스 코드, Linux C++ 소스 코드, Unix C++ 소스 코드, Solaris C++ 소스 코드, Java 소스 코드, Windows C# 소스 코드를 포함할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The automatic code generation module 220 receives the XML data 215 including the communication function information and the template 225 written in the same operating system and development language according to the operating system and the development language of the application 100, Code 230 is generated. Specifically, the automatic code generation module 220 preliminarily stores the template 225 for different development languages or different operating systems, and generates the communication data (for example, (E.g., XML data 215) to generate source code 230 that can perform user defined communication functions in the operating system and development language of application 100. For example, the source code 230 may include Windows C ++ source code, Linux C ++ source code, Unix C ++ source code, Solaris C ++ source code, Java source code, and Windows C # source code. However, the present invention is not limited thereto.

이어서, 생성된 소스코드(230)가 어플리케이션(100)에 통합 된다(240). 구체적으로, 소스 코드(230)는 어플리케이션(100)에 포함되어 컴파일(프로그램 언어를 컴퓨터 등의 기계가 이해할 수 있는 언어로 변역하는 과정) 및 빌드(프로그램 코드를 실행 가능한 파일로 변환하는 과정)되거나, 별도의 실행 파일로 어플리케이션(100)과 함께 클라이언트(500)에 포함될 수 있다.The generated source code 230 is then integrated into the application 100 (240). Specifically, the source code 230 is included in the application 100 and compiled (a process of converting a program language into a language understood by a machine such as a computer) and a build (a process of converting a program code into an executable file) , And may be included in the client 500 together with the application 100 as a separate executable file.

도 6은 본 발명의 다른 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다. 설명의 편의를 위하여, 이하에서는 앞서 설명한 실시예와 동일한 사항에 대해서는 중복된 설명을 생략하고 차이점을 중심으로 설명하도록 한다.6 is a diagram illustrating a data communication system according to another embodiment of the present invention. For the sake of convenience of description, the same elements as those of the above-described embodiment will be described below with the exception of duplicate descriptions.

도 6을 참조하면, 발명의 다른 실시예에 따른 데이터 통신 시스템은 복수의 클라이언트(501, 502, 503, 504), 복수의 어플리케이션(101, 102, 103, 104), 복수의 어댑터(201, 202, 203, 204), 복수의 프록시(301, 302, 303, 304), 서버 저장부(400), 및 서버(600)를 포함한다. 참고로, 복수의 클라이언트(501, 502, 503, 504), 복수의 어플리케이션(101, 102, 103, 104), 복수의 어댑터(201, 202, 203, 204), 서버 저장부(400), 서버(600)에 대한 자세한 설명은 전술하였는바 생략하도록 한다.Referring to Figure 6, a data communication system according to another embodiment of the present invention includes a plurality of clients 501, 502, 503, and 504, a plurality of applications 101, 102, 103, 104, 203, and 204, a plurality of proxies 301, 302, 303 and 304, a server storage 400, and a server 600. For example, a plurality of clients 501, 502, 503, and 504, a plurality of applications 101, 102, 103 and 104, a plurality of adapters 201, 202, 203 and 204, a server storage 400, (600) is described in detail above.

도면에서 어플리케이션(100), 어댑터(200), 및 프록시(300)를 포함한 클라이언트(500)가 통신 시스템 내에 네개만 포함되어 있는 것으로 도시하였으나, 본 발명이 이에 한정되는 것은 아니다. In the figure, the client 500 including the application 100, the adapter 200, and the proxy 300 is illustrated as being included only in the communication system, but the present invention is not limited thereto.

복수의 프록시(301, 302, 303, 304)는 어플리케이션(100)이 설치된 클라이언트(500)의 운영 체제와 복수의 프록시(301, 302, 303, 304)가 이용하는 운영 체제가 동일한 경우, 어플리케이션(100)이 설치된 클라이언트(500)와 동일한 클라이언트(500)에 동시에 설치될 수 있다.The plurality of the proxies 301, 302, 303 and 304 may be used when the operating system of the client 500 in which the application 100 is installed and the operating systems used by the plurality of the proxies 301, 302, 303, May be installed in the same client 500 as the installed client 500 at the same time.

제1 프록시(301)는 제1 어플리케이션(101)과 동일한 Windows 운영 체제를 이용하며, 제1 어플리케이션(101)과 동일하게 제1 클라이언트(501)에 설치될 수 있다. 또한, 제1 프록시(301)는 제1 어댑터(201)와 서버(600)간 TCP/IP Local Loop 통신을 수행할 수 있다.The first proxy 301 uses the same Windows operating system as the first application 101 and may be installed in the first client 501 in the same manner as the first application 101. Also, the first proxy 301 can perform TCP / IP Local Loop communication between the first adapter 201 and the server 600.

제2 프록시(302)는 제2 어플리케이션(102)과 동일한 Linux 운영 체제를 이용하며, 제2 어플리케이션(102)과 동일하게 제2 클라이언트(502)에 설치될 수 있다. 또한, 제2 프록시(302)는 제2 어댑터(202)와 서버(600)간 TCP/IP Local Loop 통신을 수행할 수 있다.The second proxy 302 uses the same Linux operating system as the second application 102 and can be installed in the second client 502 in the same manner as the second application 102. Also, the second proxy 302 can perform TCP / IP Local Loop communication between the second adapter 202 and the server 600.

제3 프록시(303)는 제3 어플리케이션(103)과 동일한 Unix 운영 체제를 이용하며, 제3 어플리케이션(103)과 동일하게 제3 클라이언트(503)에 설치될 수 있다. 또한, 제3 프록시(303)는 제3 어댑터(203)와 서버(600)간 TCP/IP Local Loop 통신을 수행할 수 있다.The third proxy 303 uses the same Unix operating system as the third application 103 and may be installed in the third client 503 in the same manner as the third application 103. [ Also, the third proxy 303 can perform TCP / IP local loop communication between the third adapter 203 and the server 600.

제4 프록시(304)는 제4 어플리케이션(104)과 동일한 Solaris 운영 체제를 이용하며, 제4 어플리케이션(104)과 동일하게 제4 클라이언트(504)에 설치될 수 있다. 또한, 제4 프록시(304)는 제4 어댑터(204)와 서버(600)간 TCP/IP Local Loop 통신을 수행할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The fourth proxy 304 uses the same Solaris operating system as the fourth application 104 and may be installed in the fourth client 504 in the same manner as the fourth application 104. [ Also, the fourth proxy 304 can perform TCP / IP Local Loop communication between the fourth adapter 204 and the server 600. However, the present invention is not limited thereto.

도 7은 본 발명의 또 다른 실시예에 따른 데이터 통신 시스템을 나타내는 도면이다. 설명의 편의를 위하여, 이하에서는 앞서 설명한 실시예와 동일한 사항에 대해서는 중복된 설명을 생략하고 차이점을 중심으로 설명하도록 한다.7 is a diagram illustrating a data communication system according to another embodiment of the present invention. For the sake of convenience of description, the same elements as those of the above-described embodiment will be described below with the exception of duplicate descriptions.

도 7을 참조하면, 본 발명의 또 다른 실시예에 따른 데이터 통신 시스템은 제2 어플리케이션(102), 제2 어댑터(202), 제5 프록시(305), 서버 저장부(400), 제2 클라이언트(502), 제5 클라이언트(505), 및 서버(600)를 포함한다. 참고로, 서버(600) 및 서버 저장부(400)에 대한 자세한 설명은 전술하였는바 생략하도록 한다.7, a data communication system according to another embodiment of the present invention includes a second application 102, a second adapter 202, a fifth proxy 305, a server storage 400, A second client 502, a fifth client 505, and a server 600. For reference, the server 600 and the server storage unit 400 will not be described in detail.

도면에서 제2 어플리케이션(102) 및 제2 어댑터(202)를 포함한 제2 클라이언트(502)가 제5 클라이언트(505)에 포함된 제5 프록시(305)를 통해 서버(600)와 통신하는 것으로 도시하였으나, 본 발명이 이에 한정되는 것은 아니다. The second client 502 including the second application 102 and the second adapter 202 is shown communicating with the server 600 through the fifth proxy 305 included in the fifth client 505 However, the present invention is not limited thereto.

제2 클라이언트(502)는 Linux를 운영 체제로 하여 실행되며, 제2 어플리케이션(102) 및 제2 어댑터(202)를 포함하는 컴퓨터 장치를 포함한다. 예를 들어, 전력 관리 시스템(PMS)에 포함된 제2 클라이언트(502)는 서버(600)와 통신하기 위하여, 제5 클라이언트(505)에 포함된 프록시(300)를 이용하여 데이터 통신을 수행할 수 있다. 구체적으로, 프록시(300)는 개발 및 유지 보수의 편의성을 고려하여 Windows 운영 체제를 이용할 수 있다.The second client 502 is implemented with Linux as an operating system and includes a computer device including a second application 102 and a second adapter 202. [ For example, the second client 502 included in the power management system (PMS) performs data communication using the proxy 300 included in the fifth client 505 to communicate with the server 600 . Specifically, the proxy 300 can use the Windows operating system in consideration of the convenience of development and maintenance.

제2 어플리케이션(102)은 Linux 운영 체제에서 실행되고, C++ 개발 언어로 작성되어, C++ 개발 언어를 이용하여 데이터 통신을 제공하는 프로그램 또는 모듈을 포함한다. 구체적으로, 제2 클라이언트(502)(운영 체제: Linux)의 사용자는 서버(600)(운영 체제: Windows)와 통신을 하기 위하여, 제2 어댑터(202) 및 제5 프록시(305)를 이용함으로써, 제2 어플리케이션(102)(운영 체제 및 개발 언어: Linux C++)을 그대로 사용할 수 있는 편리함이 있다.The second application 102 includes programs or modules that run in the Linux operating system, written in the C ++ development language, and provide data communication using the C ++ development language. Specifically, the user of the second client 502 (operating system: Linux) uses the second adapter 202 and the fifth proxy 305 to communicate with the server 600 (operating system: Windows) , And the second application 102 (operating system and development language: Linux C ++).

제2 어댑터(202)는 Linux 운영 체제에서 실행되고, C++ 개발 언어를 이용하여 C++ 소스 코드를 생성하고, 제2 어플리케이션(102)에 빌드되는 프로그램 또는 모듈을 포함한다. 구체적으로, 제2 클라이언트(502)의 사용자에게 제공된 제2 어댑터(202)를 제2 어플리케이션(102)에 빌드시킴으로써, 중복 개발 없이 서버(600)와 통신할 수 있는 장점이 있다.The second adapter 202 runs on the Linux operating system and generates C ++ source code using the C ++ development language and includes programs or modules built into the second application 102. Specifically, the second adapter 202 provided to the user of the second client 502 can be built in the second application 102, thereby enabling communication with the server 600 without redundant development.

제5 클라이언트(505)는 Windows를 운영 체제로 하여 실행되며, 프록시(300)를 포함하는 컴퓨터 장치를 포함한다. 예를 들어, 제5 클라이언트(505)는 전력 관리 시스템(PMS) 등을 운영하는 서버 관리자가 서버(600)의 안정성을 위하여, 서버(600)와 물리적으로 분리된 제5 클라이언트(505)를 이용하여 복수의 클라이언트(501, 502, 503, 504)로부터 데이터를 수신하고자 운용할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The fifth client 505 is executed with Windows as an operating system and includes a computer device including a proxy 300. [ For example, the fifth client 505 may use a fifth client 505 physically separated from the server 600 for the stability of the server 600 by a server administrator operating a power management system (PMS) And can operate to receive data from a plurality of clients 501, 502, 503, and 504. However, the present invention is not limited thereto.

제5 프록시(305)는 Windows 운영 체체를 이용하며, 제2 어댑터(202)와 서버(600)간 TCP/IP 통신을 수행할 수 있다.The fifth proxy 305 uses the Windows operating system and can perform TCP / IP communication between the second adapter 202 and the server 600. [

에너지 관리 시스템의 일 객체인 제2 클라이언트(502)는 제2 어플리케이션(102)에 결합된 제2 어댑터(202)를 이용하여, 서버(600)와 통신하고자 하는 통신 기능을 입력하고, 자동으로 생성된 소스 코드가 제2 어플리케이션(102)에 컴파일 또는 빌드됨에 따라, 제5 클라이언트(505)에 포함된 제5 프록시(305)를 이용하여 서버(600)와 데이터 통신을 수행할 수 있다. 다만, 본 발명이 이에 한정되는 것은 아니다.The second client 502, which is one object of the energy management system, uses the second adapter 202 coupled to the second application 102 to input a communication function to communicate with the server 600, The fifth proxy 305 included in the fifth client 505 can be used to perform data communication with the server 600 as the source code is compiled or built into the second application 102. [ However, the present invention is not limited thereto.

상기와 같이 설명된 데이터 통신 방법 및 이를 포함하는 시스템은 상기 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.The above-described data communication method and a system including the same can be applied to a case where the configuration and method of the embodiments described above are not limitedly applied, but the embodiments can be applied to all or a part of each embodiment Or may be selectively combined.

이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, You will understand. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive.

100: 어플리케이션 200: 어댑터
300: 프록시 400: 서버 저장부
500: 클라이언트 600: 서버
100: Application 200: Adapter
300: Proxy 400: Server storage
500: Client 600: Server

Claims (10)

서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 클라이언트와 서버를 포함하는 데이터 통신 시스템에 있어서,
서로 다른 운영 체제 또는 서로 다른 개발 언어를 이용하는 복수의 클라이언트; 및
상기 복수의 클라이언트 중 적어도 하나와 통신하는 서버를 포함하고,
상기 각 클라이언트는 상기 서버와 데이터 통신을 수행하는 어플리케이션과, 상기 클라이언트의 운영 체제 및 상기 어플리케이션의 개발 언어를 기초로, 상기 데이터 통신을 위한 소스 코드를 생성하여 상기 어플리케이션에 제공하는 어댑터를 포함하고,
상기 서버는 미리 결정된 데이터 통신 규칙을 이용하여 상기 어댑터를 통해 상기 어플리케이션과 통신하는 프록시와 연결되며,
상기 어플리케이션은 상기 어댑터에서 제공하는 상기 소스 코드를 이용하여 상기 프록시와 데이터 통신을 수행하고,
상기 어댑터는
상기 데이터 통신을 위하여, 미리 결정된 데이터 포맷 규칙에 따라 상기 어플리케이션이 필요로 하는 통신 데이터를 생성하고, 상기 생성된 통신 데이터를 논리적 데이터 구조로 변환하는 데이터 디자이너; 및
서로 다른 개발 언어 또는 서로 다른 운영 체제에 대한 탬플릿을 미리 저장하고, 상기 탬플릿과 상기 통신 데이터를 기초로, 상기 소스 코드를 생성하는 자동 코드 생성 모듈을 포함하는
데이터 통신 시스템.
1. A data communication system comprising a client and a server using different operating systems or different development languages,
A plurality of clients using different operating systems or different development languages; And
And a server in communication with at least one of the plurality of clients,
Each of the clients includes an adapter for performing data communication with the server and an adapter for generating source code for the data communication based on the operating system of the client and a development language of the application and providing the generated source code to the application,
The server is connected to a proxy communicating with the application via the adapter using a predetermined data communication rule,
Wherein the application performs data communication with the proxy using the source code provided by the adapter,
The adapter
A data designer for generating communication data required by the application according to a predetermined data format rule for the data communication and converting the generated communication data into a logical data structure; And
And an automatic code generation module for preliminarily storing templates for different development languages or different operating systems and for generating the source code based on the template and the communication data
Data communication system.
삭제delete 삭제delete 제1항에 있어서,
상기 프록시는,
상기 복수의 클라이언트 중 적어도 하나에 포함되거나, 상기 서버에 포함되는
데이터 통신 시스템.
The method according to claim 1,
The proxy,
And the client is included in at least one of the plurality of clients,
Data communication system.
제1항에 있어서,
상기 소스 코드는,
상기 어플리케이션에 컴파일 또는 빌드되어 상기 데이터 통신을 수행하는
데이터 통신 시스템.
The method according to claim 1,
The source code comprises:
Compiled or built into the application to perform the data communication
Data communication system.
제1항에 있어서,
상기 어댑터는,
상기 어플리케이션에 소프트웨어적으로 결합되어 상기 어플리케이션에 포함되거나, 상기 클라이언트에 물리적으로 연결되어 상기 어플리케이션과 데이터를 주고 받는
데이터 통신 시스템.
The method according to claim 1,
The adapter includes:
The application is software-coupled to the application and included in the application, or physically connected to the client to exchange data with the application
Data communication system.
제 1 항 및 제 4 항 내지 제 6 항 중 어느 한 항에 따른 데이터 통신 시스템 중 상기 어느 하나의 클라이언트와 상기 서버 간의 데이터 통신 방법에 있어서,
데이터 디자이너에서 사용자로부터 데이터 통신을 위한 통신 기능 정보를 수신하는 단계;
상기 데이터 디자이너에서 상기 통신 기능 정보를 이용하여 미리 결정된 데이터 포맷 규칙에 따른 통신 데이터를 생성하는 단계;
자동 코드 생성 모듈에서 어플리케이션이 설치된 상기 클라이언트의 운영 체제 및 상기 어플리케이션의 개발 언어에 대한 탬플릿과 상기 통신 데이터를 이용하여, 상기 통신 기능 정보를 포함하는 소스 코드를 생성하는 단계; 및
상기 생성된 소스 코드를 상기 어플리케이션에 컴파일 또는 빌드하는 단계를 포함하는
데이터 통신 방법.
A data communication method between any one of the clients and the server of the data communication system according to any one of claims 1 and 4,
Receiving communication function information for data communication from a user in a data designer;
Generating communication data according to a predetermined data format rule using the communication function information in the data designer;
Generating a source code including the communication function information by using an automatic code generation module and an operating system of the client installed with the application and a template for the development language of the application and the communication data; And
And compiling or building the generated source code into the application
Data communication method.
제7항에 있어서,
상기 어플리케이션이 상기 소스 코드를 이용하여, 상기 어플리케이션과 서버 사이의 데이터 통신을 연결하는 프록시를 통해 상기 데이터 통신을 수행하는 단계를 더 포함하는
데이터 통신 방법.
8. The method of claim 7,
The application further comprising the step of performing the data communication via a proxy connecting the data communication between the application and the server using the source code
Data communication method.
제7항에 있어서,
상기 통신 기능 정보를 수신하는 단계는,
상기 어플리케이션에 결합된 상기 데이터 디자이너를 이용하여 수신하는 것을 포함하고,
상기 데이터 디자이너는,
상기 생성된 통신 데이터를 XML(extensible markup language) 언어를 이용하는 논리적 데이터 구조로 변환하는 것을 더 포함하는
데이터 통신 방법.
8. The method of claim 7,
Wherein the step of receiving the communication function information comprises:
Using the data designer associated with the application,
The data designer,
And converting the generated communication data into a logical data structure using an extensible markup language (XML) language
Data communication method.
삭제delete
KR1020170049493A 2017-04-18 2017-04-18 Method for data communication and system comprising the same KR101888792B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170049493A KR101888792B1 (en) 2017-04-18 2017-04-18 Method for data communication and system comprising the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170049493A KR101888792B1 (en) 2017-04-18 2017-04-18 Method for data communication and system comprising the same

Publications (1)

Publication Number Publication Date
KR101888792B1 true KR101888792B1 (en) 2018-08-14

Family

ID=63230323

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170049493A KR101888792B1 (en) 2017-04-18 2017-04-18 Method for data communication and system comprising the same

Country Status (1)

Country Link
KR (1) KR101888792B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060079648A (en) * 2005-01-03 2006-07-06 에스케이 텔레콤주식회사 Integrated browsing system and method thereof
JP2009223366A (en) * 2008-03-13 2009-10-01 Nec Corp Software generation system, source code communalization method, and program for creating software
KR20110098055A (en) * 2010-02-26 2011-09-01 현대제철 주식회사 Control systems interconnection apparatus
KR20110103888A (en) * 2010-03-15 2011-09-21 한국전자통신연구원 System for accessing and sharing user defined contents and method of the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060079648A (en) * 2005-01-03 2006-07-06 에스케이 텔레콤주식회사 Integrated browsing system and method thereof
JP2009223366A (en) * 2008-03-13 2009-10-01 Nec Corp Software generation system, source code communalization method, and program for creating software
KR20110098055A (en) * 2010-02-26 2011-09-01 현대제철 주식회사 Control systems interconnection apparatus
KR20110103888A (en) * 2010-03-15 2011-09-21 한국전자통신연구원 System for accessing and sharing user defined contents and method of the same

Similar Documents

Publication Publication Date Title
US9092230B2 (en) Configuration of componentized software applications
US20030177205A1 (en) Method and apparatus for system lineup and testing
KR101980311B1 (en) Method for data interoperability based on CIM and OPC-UA
CN111010305A (en) Configuration management system and method based on NETCONF protocol
US8060919B2 (en) Automated password tool and method of use
US10608953B2 (en) Platform with multiple execution engines
US8589381B2 (en) Resource management program, resource management process, and resource management apparatus
US20090063395A1 (en) Mapping log sets between different log analysis tools in a problem determination environment
CN101795206A (en) Method and device for realizing SNMP agent on distributed equipment
CN111966465A (en) Method, system, equipment and medium for modifying configuration parameters of host machine in real time
CN113127009A (en) Automatic deployment method and device for big data management platform
US11500690B2 (en) Dynamic load balancing in network centric process control systems
KR101888792B1 (en) Method for data communication and system comprising the same
CN105227407A (en) A kind of protocol debugging method, Apparatus and system
Patolla et al. An architecture for an automatic integration of IO-Link sensors into a system of systems
CN116263764A (en) Database operation and maintenance security audit method based on character operation and maintenance management platform
CN111399824B (en) Component port implementation method and terminal based on hybrid transmission mechanism
JP2008181299A (en) Communication error information output program, communication error information output method, and communication error information output device
CN102141973A (en) Cluster management method and device and cluster management and monitoring system
WO2020056585A1 (en) Program file writing and running processing method, device and system
JP2018502465A (en) Data transmission between at least one secure producer and at least one secure consumer
Ramesh et al. Case Study on Server–Client Protocols of Industrial Controllers
KR20200081657A (en) Platform of Smart Factory
CN114755990B (en) Low-code control system and control method for industrial automation production line
Ramanathan et al. Interoperability vs. Tradition: Benefits and Challenges of Web of Things in Building Automation

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant