KR20120116629A - Healthcare systems and healthcare service method - Google Patents

Healthcare systems and healthcare service method Download PDF

Info

Publication number
KR20120116629A
KR20120116629A KR1020110034182A KR20110034182A KR20120116629A KR 20120116629 A KR20120116629 A KR 20120116629A KR 1020110034182 A KR1020110034182 A KR 1020110034182A KR 20110034182 A KR20110034182 A KR 20110034182A KR 20120116629 A KR20120116629 A KR 20120116629A
Authority
KR
South Korea
Prior art keywords
data
ocl
biometric data
service
healthcare
Prior art date
Application number
KR1020110034182A
Other languages
Korean (ko)
Other versions
KR101221384B1 (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 KR1020110034182A priority Critical patent/KR101221384B1/en
Publication of KR20120116629A publication Critical patent/KR20120116629A/en
Application granted granted Critical
Publication of KR101221384B1 publication Critical patent/KR101221384B1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H80/00ICT specially adapted for facilitating communication between medical practitioners or patients, e.g. for collaborative diagnosis, therapy or health monitoring

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Biomedical Technology (AREA)
  • Pathology (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

PURPOSE: A health care system and a health care service method thereof are provided to use object constraint language for a module checking a health state and access of a bio signal, thereby rapidly responding contents of a changing service. CONSTITUTION: A feature data extractor extracts feature data by receiving unprocessed bio data. An extensible markup language(XML) conversion engine(220) converts the unprocessed bio data and the feature data into bio data based on meta model. An object constraint language(OCL) code generator(250) generates an OCL code for extracting relation bio data. An OCL interpreter(240) extracts and returns the bio data based on the meta model. [Reference numerals] (201) External interface; (210) PR-interval extracting device; (220) XML conversion engine; (230) XML based body data storing place; (240) OCL interpreter; (250) OCL code generating device; (260-1) First service module; (260-n) N service module; (AA) Non-processed body data; (BB) SOAP message; (CC,EE) Service call; (DD) Query input

Description

헬스케어 시스템 및 헬스케어 서비스 방법{Healthcare Systems and Healthcare Service Method}Health Care Systems and Healthcare Service Method

본 발명은 SOA 기반 헬스케어 시스템 및 헬스케어 서비스 방법에 관한 것이다.The present invention relates to an SOA-based healthcare system and a healthcare service method.

최근 유비쿼터스 컴퓨팅, 클라우드 컴퓨팅의 시대가 도래함에 따라 U-헬스케어(Healthcare) 서비스에 대한 요구가 급증하고 있다. 사용자는 시간과 장소에 구애받지 않고, 언제 어디서나 헬스케어 서비스에 접근하기를 원한다. 이러한 헬스케어 서비스는 사람의 생체로부터 얻어진 생체신호를 기반으로 질병의 조기발견과 예방에 도움을 주는 서비스가 대부분이다. With the advent of ubiquitous computing and cloud computing, the demand for U-Healthcare services is increasing rapidly. Users want to access healthcare services anytime, anywhere, regardless of time and place. Most of these health care services are services that help in early detection and prevention of diseases based on bio signals obtained from a human body.

하지만 현재 개발되어 있는 헬스케어 서비스를 제공하는 시스템들은 고유한 플랫폼, 애플리케이션, 서로 다른 포맷을 사용한 생체데이터의 표현, 전용 단말기의 사용으로 서비스의 이용이 제한적이거나 범용적이지 못하다. 또한 생체신호 측정장치 모듈과 생체신호를 분석하고 건강상태를 평가하는 모듈이 하나의 시스템에 종속적으로 나타남으로써, 사용자는 다양한 헬스케어 서비스에 접근하기 어렵고, 시스템의 상호운용성을 보장하지 못한다. However, currently developed systems that provide healthcare services have limited or no general use of services due to their unique platforms, applications, representation of biometric data using different formats, and the use of dedicated terminals. In addition, since the biosignal measuring device module and the module for analyzing the biosignal and evaluating the health status are dependent on one system, it is difficult for the user to access various healthcare services and does not guarantee the interoperability of the system.

생체신호를 기반으로 건강상태를 체크하고, 질병의 조기 발견과 예방에 도움을 주는 서비스를 제공하는 시스템은 Polar, HoneyWell, Biocom, Laxtha등 다양한 기업들이 참여하고 있다. A variety of companies, including Polar, HoneyWell, Biocom, and Laxtha, are participating in the system that checks health status based on bio signals and provides services to help early detection and prevention of diseases.

Polar사는 아디다스와 공동으로 개발한 세계최초 통합형 트레이닝 시스템을 개발하였고, Honeywell사는 HomMed LifeStream platform이라는 모니터링 시스템을 개발하여 환자의 상태를 모니터링하고, 이상이 있는 환자들에게 방문 간호사를 파견하는 서비스를 하고 있다. Polar has developed the world's first integrated training system, developed jointly with Adidas, and Honeywell has developed a monitoring system called the HomMed LifeStream platform to monitor the condition of patients and dispatch visiting nurses to patients with abnormalities. .

Biocom과 Laxtha는 건강모니터링 시스템을 개발하여 개인의 신체정보를 이용하여 건강을 관리하는 패키지를 판매하고 있다. Biocom and Laxtha have developed a health monitoring system that sells packages that manage personal health information using personal information.

이와 같은 주요 건강관리 서비스 시스템 외에도 IBM, PHILIPS, LG등 많은 업체에서 특정단말기를 생산하거나, 생체신호 측정기기를 통하여 측정된 생체정보를 자체 애플리케이션을 통하여 분석하고, 온라인으로 전송하여 위험요소 관리, 온라인 상담 등의 기능을 제공한다. In addition to such major health care service systems, many companies such as IBM, PHILIPS, and LG produce specific terminals or analyze biometric information measured through biosignal measuring devices through their own applications, and transmit them online to manage risk factors. Provides functions such as counseling.

하지만 이러한 시스템들은 각기 다른 플랫폼 기반의 애플리케이션을 개발하거나 특정단말기기를 사용하고 있다. 또한 시스템마다 다른 생체데이터 포맷을 사용하여 데이터를 저장, 관리하기 때문에 통합된 건강관리 시스템의 구축이 어려우며, 벤더들마다의 특성으로 인하여 통합된 데이터베이스 구축이 어려운 현실이다. However, these systems develop applications based on different platforms or use specific terminal devices. In addition, it is difficult to build an integrated healthcare system because data is stored and managed using different biodata formats for each system, and it is difficult to build an integrated database due to the characteristics of each vendor.

건강을 진단하는 방법에 있어서도 수집된 생체신호 데이터에 종속적인 프로그래밍 언어를 사용하여 건강진단을 정의하고 평가 한다. 이는 하나의 의료기기에서 측정한 생체 데이터와 진단 방법을 다른 의료기기에서 사용할 수 없는 상호운용성 보장이 힘든 시스템이다. In the method of diagnosing health, the diagnosis of health is defined and evaluated using a programming language dependent on the collected biosignal data. This is a system that is difficult to guarantee interoperability in which biometric data and diagnostic methods measured in one medical device cannot be used in another medical device.

따라서 기존의 다양한 건강관리 시스템간의 상호운용성을 보장하고, 다양한 생체신호 측정기기에서 측정된 데이터들을 관리하고, 이를 기반으로 건강상태를 체크할 수 있는 표준화된 건강관리 시스템이 필요하다.Therefore, there is a need for a standardized health care system that can guarantee interoperability among various existing health care systems, manage data measured by various biosignal measuring devices, and check health status based on the data.

소프트웨어 개발 비용을 절감하고 유연한 건강관리 시스템을 개발하기 위해서는 SOA의 기술을 이용하여 개발하는 것이 바람직하다. In order to reduce the cost of software development and develop a flexible healthcare system, it is desirable to develop using the technology of SOA.

SOA(Service Oriented Architecture)는 서비스의 관점에서 소프트웨어 아키텍처 기술이다. SOA를 적용함으로써 애플리케이션 중복 개발로 인한 비용을 감소시키고, 재사용성을 높일 수 있다. 또한 애플리케이션 전체나 일부가 서비스의 개념으로 인식되어, 서비스간의 결합을 통해 새로운 비즈니스 애플리케이션을 신속하고 비교적 쉽게 개발할 수 있다. 다시 말해 SOA는 서비스라 불리는 분할된 애플리케이션 조각들을 단위의 결합으로 연결하여 하나의 완성된 애플리케이션을 개발하기 위한 소프트웨어 아키텍처이다. Service Oriented Architecture (SOA) is a software architecture technology in terms of services. By applying SOA, you can reduce the cost of application redundancy and increase reusability. In addition, all or part of the application is recognized as a service concept, and the combination of services enables new business applications to be developed quickly and relatively easily. In other words, SOA is a software architecture for developing a single complete application by connecting pieces of divided applications called services into a combination of units.

하지만 일반적으로 SOA기반의 응용 프로그램을 구성하는 SOA컴포넌트는 기업의 비즈니스 로직을 표현한다. 그러나 건강관리 시스템을 구성하는 SOA 컴포넌트는 기업의 비즈니스 로직 보다는 생체 데이터를 액세스하고, 그 데이터를 이용하여 신호처리를 수행하는 알고리즘 모듈이 주를 이룬다. In general, however, SOA components that make up an SOA-based application represent the business logic of an enterprise. However, the SOA component of the healthcare system is mainly an algorithm module that accesses biometric data and uses the data to perform signal processing rather than business logic.

또한 기업용 응용프로그램에서 사용하는 데이터 구조와 건강관리 시스템에서 사용하는 데이터 구조는 서로 상이한 구조를 가진다.In addition, the data structure used in enterprise applications and the data structure used in healthcare systems have different structures.

기업용 응용프로그램이 처리하는 데이터는 구조체와 같은 형태로 많은 수의 row들을 가지는 데이터들을 처리하기 때문에 데이터베이스를 이용하여 데이터를 저장, 액세스하는 것이 효율적이다. 반면 생체신호 기반의 건강관리 시스템은 많은 수의 row보다는 하나의 column형식의 데이터를 처리하기 때문에 데이터베이스를 이용하는 것 보다 하나의 블록으로 쓰여진 파일구조를 이용하는 것이 훨씬 효율적이다.Since data processed by an enterprise application processes data having a large number of rows in the form of a structure, it is efficient to store and access the data using a database. On the other hand, biosignal-based healthcare systems process data in a single column rather than a large number of rows, so it is much more efficient to use a file structure written in one block than in a database.

이는 생체신호를 단일화된 파일에 저장하고 액세스 할 수 있는 모듈이 포함되어 있는 SOA기반의 컴포넌트를 설계하는 것이 적합하다고 할 수 있다.It would be appropriate to design an SOA-based component that contains modules that can store and access biosignals in a single file.

하지만 데이터베이스에 저장된 데이터는 시맨틱 정보를 포함하고 있으며, 일관된 query를 통해 데이터에 접근할 수 있지만, 단순 파일 형태로 저장된 데이터는 시맨틱 정보를 표현하기 어려우며, 데이터에 액세스하는 방법 또한 매우 다양하여 일관적이 못하다. 그리고 건강관리 시스템마다 서로 다른 파일 포맷을 사용하기 때문에 다양한 클라이언트 환경에서 동작하는 범용적인 SOA기반의 컴포넌트를 구현하기 어렵다는 단점을 가진다. However, the data stored in the database contains semantic information, and the data can be accessed through a consistent query.However, data stored in the form of a simple file is difficult to express semantic information, and there are various ways to access the data. . In addition, since different health care systems use different file formats, it is difficult to implement general-purpose SOA-based components that operate in various client environments.

본 발명은 전술한 문제를 해결하기 위해 안출된 것으로서, 본 발명의 목적은, 다양한 클라이언트 환경에서 동작하는 범용적인 SOA기반의 헬스케어 시스템 및 헬스케어 서비스 방법을 제공하는 데 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to provide a general-purpose SOA-based healthcare system and healthcare service method operating in various client environments.

전술한 문제를 해결하기 위한 본 발명의 일 실시예에 따른 헬스케어 서비스를 제공하는 헬스케어 시스템은 비가공 생체 데이터를 수신하여 특징 데이터를 추출하는 특징 데이터 추출기; 상기 비가공 생체 데이터 및 특징 데이터를 메타모델 기반 생체 데이터로 변환하는 XML 변환 엔진; 상기 메타모델 기반 생체 데이터를 저장하는 저장소; 미리 결정된 헬스케어 서비스가 요청되면 관련 생체 데이터 추출을 위한 OCL 코드를 생성하는 OCL 코드 생성기; 및 상기 OCL 코드를 해석 및 실행함으로써 상기 메타모델 기반 생체 데이터를 추출하여 리턴하는 OCL 인터프리터를 포함한다. According to an aspect of the present invention, there is provided a healthcare system for providing a healthcare service. The system includes a feature data extractor configured to receive raw biometric data and extract feature data; An XML conversion engine that converts the raw biometric data and feature data into metamodel-based biometric data; A storage for storing the metamodel based biometric data; An OCL code generator for generating an OCL code for extracting relevant biometric data when a predetermined healthcare service is requested; And an OCL interpreter that extracts and returns the metamodel-based biometric data by interpreting and executing the OCL code.

상기 헬스케어 시스템은 상기 미리 결정된 헬스케어 서비스가 요청되면 호출되며, 상기 OCL 코드 생성기에게 생체 데이터 추출을 위한 OCL 코드를 생성하도록 지시하는 하나 이상의 서비스 모듈을 더 포함할 수 있다.The healthcare system may be called when the predetermined healthcare service is requested, and may further include one or more service modules instructing the OCL code generator to generate an OCL code for extracting biometric data.

또한, 본 발명의 다른 실시예에 따른 헬스케어 서비스를 제공하는 헬스케어 시스템은 비가공 생체 데이터를 수신하여 특징 데이터를 추출하는 특징 데이터 추출기; 상기 비가공 생체 데이터 및 특징 데이터를 메타모델 기반 생체 데이터로 변환하는 XML 변환 엔진; 상기 메타모델 기반 생체 데이터를 저장하는 저장소; 미리 결정된 헬스케어 서비스들에 관련된 OCL 코드 문서들을 각각 저장하며, 상기 미리 결정된 헬스케어 서비스가 요청되면 호출되며, 상기 미리 결정된 헬스케어 서비스에 관련된 OCL 코드를 상기 OCL 인터프리터로 제공하는 복수개의 서비스 모듈; 및 상기 OCL 코드를 해석 및 실행함으로써 상기 메타모델 기반 생체 데이터를 추출하여 리턴하는 OCL 인터프리터를 포함한다.In addition, a healthcare system providing a healthcare service according to another embodiment of the present invention includes a feature data extractor for receiving feature biometric data and extracting feature data; An XML conversion engine that converts the raw biometric data and feature data into metamodel-based biometric data; A storage for storing the metamodel based biometric data; A plurality of service modules which respectively store OCL code documents related to predetermined healthcare services, which are called when the predetermined healthcare service is requested, and which provide OCL codes related to the predetermined healthcare service to the OCL interpreter; And an OCL interpreter that extracts and returns the metamodel-based biometric data by interpreting and executing the OCL code.

또한, 본 발명의 또 다른 실시예에 따른 헬스케어 서비스를 제공하는 방법은 비가공 생체 데이터를 수신하여 특징 데이터를 추출하는 단계; 상기 비가공 생체 데이터 및 특징 데이터를 메타모델 기반 생체 데이터로 변환하는 단계; 상기 메타모델 기반 생체 데이터를 저장하는 단계; 미리 결정된 헬스케어 서비스가 요청되면 상기 저장된 생체 데이터 추출을 위한 OCL 코드를 생성하는 단계; 및 OCL 인터프리터를 이용하여 상기 생성된 OCL 코드를 해석 및 실행함으로써 상기 메타모델 기반 생체 데이터를 추출하여 리턴하는 단계를 포함한다. In addition, the method for providing a health care service according to another embodiment of the present invention comprises the steps of: extracting feature data by receiving raw biometric data; Converting the raw biometric data and feature data into metamodel-based biometric data; Storing the metamodel based biometric data; Generating an OCL code for extracting the stored biometric data when a predetermined healthcare service is requested; And extracting and returning the metamodel-based biometric data by interpreting and executing the generated OCL code using an OCL interpreter.

상기 비가공 생체 데이터는 호흡 데이터 및 보행 데이터를 포함할 수 있다.The raw biometric data may include respiratory data and gait data.

상기 미리 결정된 헬스케어 서비스는 SOAP 메시지를 이용하여 요청될 수 있다.The predetermined healthcare service may be requested using a SOAP message.

상기 SOAP 메시지는 상기 미리 결정된 헬스케어 서비스에 관련된 파라미터값을 포함할 수 있다.The SOAP message may include a parameter value related to the predetermined healthcare service.

상기 SOAP 메시지는 HTTP를 통해 전송될 수 있다. The SOAP message may be transmitted via HTTP.

본 발명은 헬스케어 서비스의 요구사항을 충족시키기 위해 헬스케어 시스템을 구성하는 요소로 SOA 기반의 서비스를 설계하고 개발하였다. 본 발명에서는 생체신호를 메타모델기반의 XML 문서로 표현하고, 데이터에 질의(query)하거나, 생체신호의 상태를 체크하는 모듈을 OCL을 사용하여 개발하였다. 이것은 결국 표준화된 생체신호의 표현, 표준화된 명세언어를 사용하여 개발함으로써 상호운용성을 확보할 수 있다. The present invention designed and developed an SOA based service as an element constituting a healthcare system to meet the requirements of a healthcare service. In the present invention, a module for expressing a biosignal as a metamodel-based XML document, querying data, or checking the state of the biosignal is developed using OCL. In the end, it is possible to secure interoperability by developing using a standardized representation of a biosignal and a standardized specification language.

또한 생체신호의 액세스와 건강상태를 체크하는 모듈에 프로그래밍 언어를 사용하지 않고, 별도의 텍스트 기반의 명세언어인 OCL을 사용함으로써 급속하게 변화하는 서비스의 콘텐츠에 빠르게 대응하고, 유지보수의 비용을 절감할 수 있다는 장점을 발견하였다. 이러한 SOA구조는 헬스케어 서비스를 제공하는 서비스 컴포넌트 개발에 매우 적합하다고 판단된다. 더불어 SOAP 메시지를 이용하여 서비스를 호출함으로써 어떠한 플랫폼, 어떠한 프로그래밍 언어, 어떠한 단말기(PC, 스마트폰등)에 상관없이 서비스를 이용할 수 있다. In addition, by using OCL, which is a separate text-based specification language, instead of using a programming language in the module that checks the access and health status of biological signals, it responds quickly to the contents of rapidly changing services and reduces maintenance costs. I found the advantage of doing it. This SOA structure is considered to be very suitable for developing service components that provide healthcare services. In addition, by invoking a service using a SOAP message, the service can be used regardless of any platform, any programming language, or any terminal (PC, smartphone, etc.).

도 1은 본 발명의 바람직한 실시예에 따른 헬스케어 시스템의 블록 구성도를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따라 비가공 생체 데이터가 XML로 변환되는 일 예를 모식적으로 나타낸 도면이다
도 3은 본 발명에 따른 생체 신호 데이터와 생체 신호 데이터에 접근하기 위한 OCL 코드 문서 사이의 관계를 나타낸 도면이다.
도 4는 본 발명에 다른 헬스케어 시스템의 제어 흐름을 나타낸 도면이다
도 5는 도 4의 제어 흐름을 모식적으로 나타낸 도면이다.
도 6은 클라이언트가 헬스케어 시스템에 대하여 헬스케어 서비스 요청이 발생한 경우에 서버와 클라이언트 간의 메시지 흐름을 나타낸 도면이다.
도 7은 서버와 클라이언트 간에 송수신되는 SOAP 메시지들을 나타낸 도면이다.
1 is a block diagram of a healthcare system according to a preferred embodiment of the present invention.
2 is a diagram schematically showing an example in which raw biometric data is converted into XML according to an embodiment of the present invention.
3 is a diagram illustrating a relationship between biosignal data and an OCL code document for accessing biosignal data according to the present invention.
4 is a view showing a control flow of a healthcare system according to the present invention.
FIG. 5 is a diagram schematically illustrating the control flow of FIG. 4.
6 is a diagram illustrating a message flow between a server and a client when a client requests a healthcare service to the healthcare system.
7 illustrates SOAP messages transmitted and received between a server and a client.

이하에서는 첨부한 도면을 참조하여 바람직한 일 실시형태에 따른 UGR 감소용 조명 부재에 대해서 상세히 설명한다. 다만, 실시형태를 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략한다.Hereinafter, with reference to the accompanying drawings will be described in detail with respect to the UGR reducing illumination member according to one embodiment. In the following description, well-known functions or constructions are not described in detail to avoid unnecessarily obscuring the subject matter of the present invention.

또한, 도면에서의 각 구성요소들의 크기는 설명을 위하여 과장될 수 있으며, 실제로 적용되는 크기를 의미하는 것은 아니다.In addition, the size of each component in the drawings may be exaggerated for the sake of explanation and does not mean a size actually applied.

도 1은 본 발명의 바람직한 실시예에 따른 헬스케어 시스템의 블록 구성도를 나타낸 도면이다. 1 is a block diagram of a healthcare system according to a preferred embodiment of the present invention.

도 1을 참조하면, 헬스케어 시스템은 외부 인터페이스(201), RR-간격 추출기(210), XML(eXtensible Markup Languag) 변환 엔진(220), XML 기반 생체 데이터 저장소(230), OCL 인터프리터(240), OCL 코드 생성기(250), 제1 서비스 모듈(260-1) 내지 제n 서비스 모듈(260-n)을 포함한한다. Referring to FIG. 1, the healthcare system includes an external interface 201, an RR-interval extractor 210, an eXtensible Markup Languag (XML) transformation engine 220, an XML-based biodata store 230, and an OCL interpreter 240. , The OCL code generator 250, the first service module 260-1 to the n-th service module 260-n.

먼저, RR-간격 추출기(210)는 외부 인터페이스(201)를 통해 비가공 생체 데이터를 수신할 수 있다. 이 경우 외부 인터페이스(201)는 SOAP 메시지의 형태를 갖는 비가공 생체 데이터를 수신한다. SOAP(Simple Object Access Protocol)은 XML기반의 메시지를 네트워크상에서 교환하는 형태의 프로토콜이다. W3C XML Protocol Working Group에서 표준화 작업을 하고 있으며, 웹 서비스에 액세스하기 위해 가장 많이 사용되는 메시지 교환 프로토콜이다. SOAP 메시지는 텍스트 기반의 XML로 작성되므로 플랫폼이나 개발 언어에 독립적이며, 그 활용성이 이미 검증되었다. First, the RR-spacing extractor 210 may receive raw biometric data via the external interface 201. In this case the external interface 201 receives raw biometric data in the form of a SOAP message. Simple Object Access Protocol (SOAP) is a protocol that exchanges XML-based messages over a network. The W3C XML Protocol Working Group is working on standardization and is the most widely used message exchange protocol for accessing Web services. SOAP messages are written in text-based XML, so they are platform- and development-independent, and their usefulness has already been proven.

한편, RR-간격 추출기(210)에 의해 수신된 비가공 생체 데이터는 생체 신호 측정 기기에 의해 측정된 데이터로서, 특히 여러 가지 측정 가능한 생체신호를 포함할 수 있다. 이러한 생체 신호중 하나는 심전도(ECG; Electrocardiograph)로서, 데이터 건강 상태를 체크하기 위한 좋은 데이터로 활용된다. Meanwhile, the raw biometric data received by the RR-interval extractor 210 is data measured by the biosignal measuring device, and may include various measurable biosignals. One such biosignal is an electrocardiogram (ECG), which is used as good data for checking data health.

구체적으로, 심전도(ECG) 측정기기 또는 심전도(ECG) 신호를 저장하고 있는 장치로부터 헬스케어 시스템으로 전송되는 ECG 비가공 데이터는 다양한 클라이언트(platform independent)에서 작성 가능하도록 SOAP 메시지로 만들어 전송한다. SOAP 메시지는 텍스트기반의 문서이므로 문자열 처리가 가능한 어떠한 프로그래밍 언어로도 작성할 수 있다. In detail, ECG raw data transmitted to an healthcare system from an ECG measuring device or a device storing an ECG signal is transmitted as a SOAP message to be written by various clients. SOAP messages are text-based documents that can be written in any programming language that can handle strings.

한편, 본 실시예에서는 비가공 생체 데이터로서 ECG 비가공 데이터를 이용하지만, 본 발명은 이에 한정되지 않는다. 비가공 생체 데이터는 인간의 몸에서 측정 가능한 어떠한 생체 신호도 포함한다. In the present embodiment, the ECG raw data is used as the raw biometric data, but the present invention is not limited thereto. Raw biometric data includes any biosignal measurable in the human body.

그에 따라, 본 실시예에서는 비가공 생체 데이터로부터 RR-간격을 추출하지만, 본 발명은 이에 한정되지 않는다. 즉, RR-간격 추출기(210)는 생체 신호로부터 특징 데이터를 추출하는 특징 데이터 추출기의 일 예이다. 그러므로, 특징 데이터 추출기로서 예컨대, 비가공 생체 데이터로부터 당업자에게 가능한 어떠한 형태의 특징 데이터를 추출할 수 있는 어떠한 장치 및 수단이 가능함은 당업자에게 자명하다. 따라서, 특징 데이터는 심전도(ECG) 신호로부터 추출된 RR-간격 및 HRV, 그리고, 호흡 신호로부터 추출된 들숨과 날숨 간의 간격, 보행 데이터로부터 추출된 발자국 사이의 간격 등을 포함할 수 있다. Accordingly, in this embodiment, the RR-spacing is extracted from the raw biometric data, but the present invention is not limited thereto. That is, the RR-interval extractor 210 is an example of a feature data extractor that extracts feature data from a biosignal. Therefore, it will be apparent to those skilled in the art that any feature and means capable of extracting any form of feature data possible to those skilled in the art, for example, from feature biometric data extractors, are possible. Thus, the feature data may include an RR-interval and HRV extracted from an electrocardiogram (ECG) signal, an interval between inspiration and exhalation extracted from a breathing signal, a distance between a footprint extracted from walking data, and the like.

요약하면, 헬스케어 시스템으로 전송되어진 비가공 생체 데이터, 예컨대 심전도 신호, 호흡 신호 또는 보행 신호는 예컨대, HRV 추출 모듈 또는 RR-간격 추출 모듈, 보행 신호 처리 모듈 등의 특징 데이터 추출기에 제공되어, 특징 데이터가 획득될 수 있다. 본 실시예에서, RR-간격 추출기(210)는 예컨대, 심전도로부터 RR-간격을 추출하여 XML 변환 엔진(220)으로 출력한다. In summary, raw biometric data, such as an ECG signal, a respiratory signal or a walking signal, transmitted to a healthcare system is provided to a feature data extractor such as, for example, an HRV extraction module or an RR-interval extraction module, a walking signal processing module, and the like. Data can be obtained. In the present embodiment, the RR-spacing extractor 210 extracts the RR-spacing from, for example, an electrocardiogram and outputs it to the XML transformation engine 220.

XML 변환 엔진(220)은 생체신호를 HL7 표준 메타모델기반의 XML로 표현함으로써 단순파일형태가 가지는 단점을 보완하고 상호운용성을 확보할 수 있으며 일관된 데이터 액세스 방법을 지원한다. 다시 말해, XML 변환 엔진(220)은 RR-간격과 같은 생체 신호 데이터를 메타모델기반의 XML로 변환한다. The XML conversion engine 220 compensates for the shortcomings of the simple file format, secures interoperability, and supports a consistent data access method by expressing a biosignal in XML based on the HL7 standard metamodel. In other words, the XML transformation engine 220 converts biosignal data such as RR-spacing into metamodel-based XML.

또한, XML 변환 엔진(220)은 외부 인터페이스(201)를 통해 제공되는 비가공(raw) 생체 데이터를 수신할 수 있다. 이 경우에도, XML 변환 엔진(220)은 비가공 생체 데이터를 메타기반 XML로 변환한다. 다음으로, XML 변환 엔진(220)은 메타기반 XML을 XML 기반 생체 데이터 저장소(230)에 저장하거나 OCL 인터프리터(240)로 출력할 수 있다.In addition, the XML transformation engine 220 may receive raw biometric data provided through the external interface 201. Even in this case, the XML conversion engine 220 converts the raw biometric data into meta-based XML. Next, the XML transformation engine 220 may store the meta-based XML in the XML-based biometric data store 230 or output the meta-based XML to the OCL interpreter 240.

이러한, 비가공 생체 데이터가 XML로 변환되는 프로세스는 도 2에 모식적으로 나타내었다. This process of converting raw biometric data into XML is shown schematically in FIG. 2.

도 2는 본 발명의 일 실시예에 따라 비가공 생체 데이터가 XML로 변환되는 일 예를 모식적으로 나타낸 도면이다. 도 2에서는 비가공 생체 데이터가 심전도 비가공 데이터인 예를 설명한다.2 is a diagram schematically showing an example in which raw biometric data is converted into XML according to an embodiment of the present invention. 2 illustrates an example in which the raw biometric data is electrocardiogram raw data.

도 2를 참조하면, 생체신호 측정기기 예컨대, 심전도 측정 기기에서 EH 5의 a)와 같은 심전도(ECG) 파형이 측정되면, 이 심전도(ECG) 파형으로부터 생체 데이터 예컨대, 도 2의 b)와 같은 형태로 심전도 데이터가 획득될 수 있다. 생체신호 측정기기로부터 얻어진 이러한 심전도 데이터는 비가공 데이터(raw data)로서 심전도의 모든 파형을 나타낸다. 본 발명에 따라, XML 변환 엔진(220)을 통해 메타모델 기반 심전도 데이터 예컨대, 도 2의 d)와 같은 메타모델 기반 심전도 데이터 즉, XML 문서로 변환된다. Referring to FIG. 2, when an electrocardiogram (ECG) waveform such as a) of EH 5 is measured in a biosignal measuring device such as an electrocardiogram measuring device, the biosignal data (eg, b) of FIG. 2 is measured from the electrocardiogram (ECG) waveform. ECG data can be obtained in the form. This electrocardiogram data obtained from the biosignal measuring instrument represents all waveforms of the electrocardiogram as raw data. According to the present invention, the metamodel-based electrocardiogram data, for example, metamodel-based electrocardiogram data such as d) of FIG.

또한, RR-간격 추출기(210)를 통해 비가공 심전도 데이터로부터 생체 신호의 특징 데이터, 예컨대, 도 2의 c)와 같은 RR-간격이 추출될 수 있다. RR-간격은 XML 변환 엔진(220)을 통해 도 2의 d)와 같은 메타모델 기반 심전도 데이터, 즉 XML 문서로 변환된다.In addition, the RR-spacing extractor 210 may extract the characteristic data of the biosignal, such as the RR-spacing of c) of FIG. 2, from the raw ECG data. The RR-spacing is converted into metamodel based ECG data, i.e., an XML document, such as d) of FIG.

이와 같이, 본 발명에 따라, 비가공 생체 데이터로부터 특징 데이터가 추출되어 특징 데이터가 메타모델 기반 심전도 데이터로 변환되거나, 비가공 생체 데이터가 메타모델 기반 심전도 데이터로 변환된다. As described above, according to the present invention, feature data is extracted from raw biometric data and the feature data is converted into metamodel-based electrocardiogram data, or the raw biometric data is converted into metamodel-based electrocardiogram data.

다시 도 1을 참조하면, XML 기반 생체 데이터 저장소(230)에는 전술한 바와 같이 메타모델 기반 생체 데이터가 저장된다. 이와 같이 저장된 메타모델 기반 생체 데이터에 접근하여 원하는 데이터를 추출하고 건강상태를 체크할 수 있어야 한다. 이를 위해, 본 발명은 XML 기반 생체 데이터 저장소(230)에 저장된 메타모델 기반 생체 데이터에 접근하기 위해 OCL(Object Constraint Language)을 이용한다. Referring back to FIG. 1, the meta-based biometric data is stored in the XML-based biometric data store 230 as described above. As such, the stored metamodel-based biometric data can be accessed to extract the desired data and check the health status. To this end, the present invention uses an object constraint language (OCL) to access metamodel-based biometric data stored in the XML-based biometric data repository 230.

다시 말해, 메타모델 기반 생체 데이터에 접근하기 위해, OCL 코드 생성기(250)는 OCL을 이용하여 생체신호 데이터를 추출하고, 건강상태를 체크하기 위한 OCL 코드 문서를 생성한다. OCL(Object Constraint Language)은 OMG(Object Management Group)에서 표준으로 제정하고 UML(Unified Modeling Language)에서 모델의 구조적 제약 사항을 체계적으로 기술하기 위한 정형적 명세언어이다. UML 다이어그램에서 특정 요소에 대한 제약사항을 invariant, condition을 이용하여 나타낼 수 있으며, 기존 모델에서 누락된 요소를 함수로 정의하여 사용할 수 있다. 이러한 장점 때문에 OCL은 모델검증과 테스트케이스 생성과 같은 문제를 해결하기 위하여 사용한다. 보다 상세한 개념으로 설명하면 OCL은 객체에 대한 상태를 정의하거나, 객체가 가져야 할 제약조건과 같은 사항을 명세하는 수학적 명세언어이다. 또한 OCL은 메타모델 기반으로 작성된 데이터 모델에 적용하여, 객체의 상태를 추출하거나, 그 객체가 가져야 할 제약조건을 명시하는데 사용한다. In other words, to access the metamodel-based biometric data, the OCL code generator 250 extracts biosignal data using the OCL and generates an OCL code document for checking a health state. The Object Constraint Language (OCL) is a formal specification language established by the Object Management Group (OMG) as a standard and systematically describing structural constraints of models in the Unified Modeling Language (UML). Constraints on specific elements in UML diagrams can be expressed using invariant and condition, and elements missing from the existing model can be defined and used as functions. Because of these advantages, OCL is used to solve problems such as model validation and test case generation. In more detail, OCL is a mathematical specification language that defines the state of an object or specifies things such as constraints that an object must have. In addition, OCL is applied to a data model based on metamodels to extract the state of an object or to specify constraints that the object must have.

도 3은 본 발명에 따른 생체 신호 데이터와 생체 신호 데이터에 접근하기 위한 OCL 코드 문서 사이의 관계를 나타낸 도면이다.3 is a diagram illustrating a relationship between biosignal data and an OCL code document for accessing biosignal data according to the present invention.

도 3을 참조하면, 도 3의 b)는 메타모델 기반 생체 데이터 예컨대, 도 3의 a)와 같은 XML 문서에 접근하여 RR-간격을 추출하고, 이를 이용하여 최대산소 소모량을 구하는 OCL코드이다. Referring to FIG. 3, b) of FIG. 3 is an OCL code for extracting an RR-interval by accessing a metamodel-based biometric data, for example, an XML document such as a) of FIG. 3, and using the same.

다시 도 1을 참조하면, OCL 코드 생성기(250)는 XML 기반 생체 데이터 저장소(230)에 저장된 생체신호 데이터에 대한 접근이 요구되면 OCL을 이용하여 생체신호 데이터를 추출하고, 건강상태를 체크하기 위한 OCL 코드 문서를 생성한다.Referring back to FIG. 1, when the access to the biosignal data stored in the XML-based biodata store 230 is required, the OCL code generator 250 extracts the biosignal data using the OCL and checks the health state. Create an OCL code document.

구체적으로, OCL 코드 생성기(250)는 예컨대, 건강상태를 체크하기 위한 복수개의 헬스케어 서비스 모듈(260-1, …, 260-n)로부터 XML 기반 생체 데이터 저장소(230)에 저장된 생체신호 데이터에 대한 접근 요청을 질의 형태로 수신할 수 있다. 복수개의 헬스케어 서비스 모듈(260-1, …, 260-n)은 외부 인터페이스(201)을 통해 클라이언트들로부터 전송된 미리 정의된 서비스에 대한 요청(request)을 수신할 수 있다. 이 경우, 클라이언트들은 SOAP 메시지를 이용하여 서비스를 호출할 수 있다. 상기 SOAP 메시지는 헬스케어 서비스 모듈을 호출하기 위한 파라미터값들을 포함할 수 있다. 파라미터값은 이름, 나이, 몸무게, 남성인지 여성인지의 여부에 대한 값을 포함한다Specifically, the OCL code generator 250 may store the biosignal data stored in the XML-based biodata store 230 from, for example, the plurality of healthcare service modules 260-1,..., 260-n for checking a health state. The request for access can be received in the form of a query. The plurality of healthcare service modules 260-1,..., 260-n may receive a request for a predefined service transmitted from clients through the external interface 201. In this case, clients can invoke the service using a SOAP message. The SOAP message may include parameter values for invoking a healthcare service module. The parameter value includes the name, age, weight, and whether it is male or female.

외부 인터페이스(201)는 SOAP 메시지를 수신하면 SOAP 메시지에 포함된 파라미터값에 기반하여 복수개의 헬스케어 서비스 모듈(260-1, …, 260-n) 중 하나를 호출할 수 있다. When the external interface 201 receives the SOAP message, the external interface 201 may call one of the plurality of healthcare service modules 260-1,..., 260-n based on a parameter value included in the SOAP message.

일 실시예에 따라, 복수개의 헬스케어 서비스 모듈(260-1, …, 260-n), 즉 제1 내지 제n 서비스 모듈(260-1, …, 260-n)은 외부 인터페이스(201)에 의해 호출되면, 해당 서비스를 제공하기 위한 OCL 코드를 생성하도록 OCL 코드 생성기(250)에 지시할 수 있다. OCL 코드 생성기(250)는 요청된 질의에 대응하여 XML 기반 생체 데이터 저장소(230)에 저장된 생체신호 데이터를 추출하기 위한 OCL 코드를 생성한다. 이 경우, OCL 코드 생성기(250)는 복수개의 미리 결정된 OCL 코드 문서를 저장하고, 특정 생체신호 데이터가 요청되는 경우 이와 관련된 파라미터값만을 미리 결정된 OCL 코드 문서에 삽입하여, OCL 인터프리터(240)에 제공할 수 있다.According to an embodiment, the plurality of healthcare service modules 260-1,..., 260-n, that is, the first to n-th service modules 260-1,..., 260-n are connected to the external interface 201. When called, it may instruct the OCL code generator 250 to generate an OCL code to provide the service. The OCL code generator 250 generates an OCL code for extracting the biosignal data stored in the XML-based biometric data store 230 in response to the requested query. In this case, the OCL code generator 250 stores a plurality of predetermined OCL code documents, and inserts only relevant parameter values into the predetermined OCL code document when the specific biosignal data is requested, and provides them to the OCL interpreter 240. can do.

다른 실시예에 따라, 즉 제1 내지 제n 서비스 모듈(260-1, …, 260-n)은 미리 결정된 헬스케어 서비스에 대한 OCL 코드를 저장하고 있을 수 있다. 이 경우에는 OCL 코드 생성기(250)는 생략될 수 있다. 왜냐하면, 요청된 헬스케어 서비스에 응답하여, 해당 서비스 모듈이 자신에 저장되어 있는 OCL 코드 문서를 OCL 인터프리터로 제공할 수 있기 때문이다. 이와 같이 미리 정의된 서비스에 대한 OCL 코드값은 예컨대, 다음 표 1과 같이 정의될 수 있다.According to another embodiment, that is, the first through n-th service modules 260-1,..., 260-n may store OCL codes for the predetermined healthcare service. In this case, the OCL code generator 250 may be omitted. This is because, in response to the requested healthcare service, the service module can provide the OCL code document stored in the OCL interpreter. As such, the OCL code value for the predefined service may be defined as shown in Table 1 below.

moulemoule namename DescriptionDescription getRRValuesgetRRValues aECG XML Document로부터 R-Peak값을 추출Extract R-Peak value from aECG XML Document getRRAveragegetRRAverage R-Peak값의 평균값 계산Calculation of average value of R-Peak value getHRVmgetHRVm HRVm값HRVm value getPVO2MAXgetPVO2MAX 분당 최대산소 소모량Maximum oxygen consumption per minute getMaleCalgetMaleCal 남성일 경우 칼로리 계산Calorie count for men getFemaleCalgetFemaleCal 여성일 경우 칼로리 계산Calorie count for women

즉, OCL 코드는 메타모델 기반의 XML 데이터에 접근하여 데이터를 추출하는 용도 외에도 대상 모델의 상태를 체크할 수 있다. 비가공 데이터를 메타모델 기반의 XML 데이터로 표현하면 해당 비가공 데이터(raw data)가 가지는 상태를 체크할 수 있다. 본 발명은 예컨대, ECG 데이터를 이용하여 ECG 데이터가 가지는 상태를 체크함으로써 건강상태를 체크하는데 이용한다. 상기 표 1은 소스 코드 모듈들에 대한 설명이다. 프로그래밍언어에 종속적인 건강상태 체크 알고리즘을 사용하지 않고, 소스코드에 독립적인 텍스트기반의 OCL코드를 사용함으로써 유지보수가 쉬우며, 가독성이 높다는 장점을 가진다. That is, the OCL code can check the status of the target model in addition to the purpose of extracting the data by accessing the XML data based on the metamodel. When the raw data is represented as metamodel-based XML data, the state of the raw data can be checked. The present invention is used to check the state of health by, for example, checking the state of the ECG data using the ECG data. Table 1 is a description of the source code modules. It is easy to maintain and readable by using text-based OCL code that is independent of source code.

일반적으로 심전도(ECG) 신호를 기반으로 진단 가능한 공지된(wellknown) 지표로는 최대산소 소모량을 계산하여 예측가능한 칼로리 소모량, LF(Low Frequency)/HF(High Frequency)를 이용하여 예측가능한 자율신경계 반응 정도가 있다. 따라서, 서비스 모듈(260-1, …, 260-n)은 예컨대, 칼로리 소모량을 예측하는 서비스 모듈을 제공할 수 있다. 이 서비스 모듈은 ECG 신호에서 HRV(Heart rate variability)를 추출하여 운동상태에 따른 분당 최대산소 소모량을 구하고, 나이와 성별에 따라 분당 필요한 최대 산소소모량을 구한다. 즉, 해당 서비스 모듈은 예컨대, 다음 [수학식 1]과 같은 계산식으로 칼로리 소모량을 예측한다. In general, a well-known indicator that can be diagnosed based on an ECG signal is a predictable autonomic nervous system response using a predictable calorie consumption, low frequency (LF) / high frequency (HF) by calculating the maximum oxygen consumption. There is a degree. Accordingly, the service module 260-1,..., 260-n may provide a service module for predicting calorie consumption, for example. The service module extracts heart rate variability (HRV) from ECG signals to find the maximum oxygen consumption per minute according to exercise status and the maximum oxygen consumption per minute according to age and gender. That is, the service module predicts calorie consumption by, for example, the following formula (1).

Figure pat00001
Figure pat00001

상기 수학식 1에서, CAL은 칼로리 소모량을 나타내며, 남성에 해당하는 칼로리 소모량는 Male로 나타내며, 여성에 해당하는 칼로리 소모량은 Female로 나타낸다. %VO2max는 분당 최대 산호 소모량(Maximal Oxygen consumption per minute)을 나타내고, HRV는 평균 HRV(Average HRV)를 나타낸다. HRVR은 나이 그룹에 따른 평균 HRV(Average HRV according to age group)를 나타내며, HRVR은 나이 그룹에 따른 최대 HRV(Average HRV according to age group)를 나타낸다.In Equation 1, CAL represents a calorie consumption, a calorie consumption corresponding to a male is represented by a male, and a calorie consumption corresponding to a female is represented by a female. % VO2 max represents Maximum Oxygen consumption per minute and HRV represents Average HRV. HRV R represents average HRV according to age group, and HRV R represents maximum HRV according to age group.

제1 내지 제n 서비스 모듈(260-1, …, 260-n)은 해당 헬스케어 서비스에 대한 OCL 코드를 OCL 인터프리터(240)로 제공한다. The first through n-th service modules 260-1,..., 260-n provide an OCL code for the healthcare service to the OCL interpreter 240.

OCL 인터프리터(240)는 OCL 코드 문서를 수신하면 OCL 코드 문서를 해석 및 실행하여 XML 기반 생체 데이터 저장소(230)에 저장된 생체신호 데이터를 추출하고, 추출된 생체신호 데이터를 제1 내지 제n 서비스 모듈(260-1, …, 260-n)중 해당 서비스 모듈에 리턴한다.When the OCL interpreter 240 receives the OCL code document, the OCL code document interprets and executes the OCL code document to extract the biosignal data stored in the XML-based biometric data store 230, and extracts the extracted biosignal data from the first to n-th service modules. Return to the service module (260-1, ..., 260-n).

해당 서비스 모듈은 해당 코드 실행 결과를 수신하면 외부 인터페이스(201)에 제공한다. 외부 인터페이스(201)는 응답 SOAP 메시지에 헬스케어 서비스 요청에 대한 결과를 포함시켜 클라이언트로 전송할 수 있다.When the service module receives the result of executing the code, the service module provides the external interface 201. The external interface 201 can include the result of the healthcare service request in the response SOAP message and send it to the client.

이와 같이, 본 발명은 수학적 명세언어인 OCL을 사용하여 건강상태를 체크하는 서비스 모듈을 정의함으로써 언제든 변화 가능하고 새로운 건강상태를 체크하기 위한 모듈을 추가하기가 용이하다. 또한 프로그래밍언어를 이용한 정의보다 가독성이 높으며, 추가 및 삭제가 용이하고 재컴파일 등의 추가적인 작업이 필요하지 않다는 장점이 있다.As described above, the present invention is easy to add a module for checking a new health state, which is changeable at any time by defining a service module for checking health state using OCL, which is a mathematical specification language. In addition, it is more readable than definition using programming language, it is easy to add and delete, and does not require additional work such as recompilation.

도 4는 본 발명에 다른 헬스케어 시스템의 제어 흐름을 나타낸 도면이고, 도 5는 도 4의 제어 흐름을 모식적으로 나타낸 도면이다. 4 is a diagram illustrating a control flow of another healthcare system according to the present invention, and FIG. 5 is a diagram schematically illustrating the control flow of FIG. 4.

도 4 및 도 5를 참조하면, 헬스케어 시스템은 먼저 단계 310에서 비가공 생체 데이터가 입력되는 지를 판단한다. 전술한 바와 같이, 비가공 생체 데이터는 비가공 심전도 데이터가 될 수 있다. 비가공 생체 데이터는 전술한 바와 같이, SOAP 메시지의 형태로 헬스케어 시스템에 입력되는 것이 바람직하다. 헬스케어 시스템은 비가공 생체 데이터가 입력되면, 단계 320에서 비가공 생체 데이터로부터 특징 데이터를 추출한다. 본 실시예에서는 비가공 생체 데이터로서 비가공 심전도 데이터가 사용되며, 그에 따라 비가공 심전도 데이터로부터 추출되는 특징 데이터는 RR-간격을 포함하며, HRV(Heart rate variability)을 포함할 수 있다.4 and 5, the healthcare system first determines whether raw biometric data is input in step 310. As described above, the raw biometric data may be raw ECG data. The raw biometric data is preferably entered into the healthcare system in the form of a SOAP message, as described above. When the biometric data is input, the healthcare system extracts feature data from the raw biometric data in step 320. In the present embodiment, raw electrocardiogram data is used as raw biometric data, and thus feature data extracted from raw electrocardiogram data includes an RR-interval and may include HRV (Heart rate variability).

이어서, 헬스케어 시스템은 단계 330에서 비가공 생체 데이터로부터 추출된 특징 데이터 예컨대, RR 데이터 및 비가공 생체 데이터를 메타모델 기반 XML 데이터, 즉 XML 문서로 변환하여, 단계 340에서 메타모델 기반 XML 문서를 예컨대, XML 기반 생체 데이터 저장소에 저장한다. In step 330, the healthcare system converts the feature data extracted from the raw biometric data, for example, the RR data and the raw biometric data into metamodel-based XML data, that is, an XML document, and converts the metamodel-based XML document in step 340. For example, it stores in an XML-based biometric data store.

이후, 헬스케어 시스템은 단계 350에서 XML 기반 생체 데이터 저장소에 저장된 메타모델 기반 생체 데이터에 대한 접근 요청이 있는 지를 판단한다. 전술한 바와 같이, 클라이언트가 헬스케어 서비스를 요청한 경우, 클라이언트In step 350, the healthcare system determines whether there is a request for access to metamodel-based biometric data stored in the XML-based biometric data store. As described above, if a client requests a healthcare service, the client

관련된 생체 데이터에 대한 접근 요구가 발생할 수 있다. 그러면, 헬스케어 시스템은 단계 360에서 생체 데이터 추출을 위한 OCL 코드를 생성할 수 있다. 다른 실시예에 따르면, 헬스케어 시스템은 해당 헬스케어 서비스에 대응한 OCL 코드 문서를 호출할 수 있다. A request for access to relevant biometric data may arise. The healthcare system may then generate an OCL code for extracting biometric data at step 360. According to another embodiment, the healthcare system may call an OCL code document corresponding to the healthcare service.

헬스케어 시스템은 단계 370에서 OCL 코드 문서를 OCL 인터프리터를 이용하여 해석 및 실행하여 XML 기반 생체 데이터 저장소에 저장된 생체 데이터를 추출하고, 단계 380에서 해당 생체 데이터를 클라이언트로 전송한다.The healthcare system interprets and executes the OCL code document using the OCL interpreter in step 370 to extract the biometric data stored in the XML-based biometric data store, and transmits the biometric data to the client in step 380.

이어서, 도 6 및 도 7을 참조하여, 클라이언트가 헬스케어 시스템에 대하여 헬스케어 서비스 요청이 발생한 경우에 서버와 클라이언트 간의 메시지 흐름을 설명한다.6 and 7, the flow of messages between the server and the client when the client makes a healthcare service request to the healthcare system will be described.

도 6은 클라이언트가 헬스케어 시스템에 대하여 헬스케어 서비스 요청이 발생한 경우에 서버와 클라이언트 간의 메시지 흐름을 나타낸 도면이다.6 is a diagram illustrating a message flow between a server and a client when a client requests a healthcare service to the healthcare system.

도 6을 참조하면, 먼저 클라이언트(410)는 단계 510에서 헬스케어 서비스가 요청되는 지를 판단한다. 클라이언트(410)는 도 5에 도시된 바와 같이, PC 기반 헬스케어 사용자 단말 및 스마트 기반 헬스케어 시스템 사용자 단말일 수 있다. 전술한 바와 같이, 본 발명의 헬스케어 특정 단말기가 아니라 어떠한 클라이언트 환경(플랫폼, 프로그래밍 언어, 단말기 종류)에서도 서비스를 제공받을 수 있도록 구성된다. Referring to FIG. 6, first, the client 410 determines whether a healthcare service is requested in step 510. As shown in FIG. 5, the client 410 may be a PC-based healthcare user terminal and a smart-based healthcare system user terminal. As described above, the service is configured to be provided in any client environment (platform, programming language, terminal type), not the healthcare specific terminal of the present invention.

클라이언트(410)가 사용자로부터 헬스케어 서비스가 요청되면, 단계 520에서 해당 헬스케어 서비스를 위한 파라미터값을 획득한다. 파라미터값의 예로는 파라미터값은 이름, 나이, 몸무게, 남성인지 여성인지의 여부에 대한 값을 포함할 수 있다. 클라이언트(410)는 미리 정의된 헬스케어 서비스에 필요한 정보 즉, 관련 파라미터값을 사용자로부터 입력받을 수도 있다.When the client 410 requests a healthcare service from the user, the client 410 acquires a parameter value for the healthcare service in step 520. As an example of the parameter value, the parameter value may include a name, age, weight, and a value for whether a male or a female. The client 410 may receive information necessary for a predefined healthcare service, that is, a related parameter value from the user.

클라이언트(410)는 관련 파라미터값을 획득하면 단계 530에서 요청(request) SOAP 메시지를 생성하여 단계 540에서 서버(420)으로 전송한다. 즉, 클라이언트(410)는 SOAP메시지를 작성하여 HTTP를 통해 서버(420)로 전송한다. 이러한 요청 SOAP 메시지가 도 7에 도시되어 있다. When the client 410 obtains the relevant parameter value, the client 410 generates a request SOAP message in step 530 and transmits the request SOAP message to the server 420 in step 540. That is, the client 410 composes a SOAP message and transmits it to the server 420 through HTTP. This request SOAP message is shown in FIG.

도 7은 서버와 클라이언트 간에 송수신되는 SOAP 메시지들을 나타낸 도면이다. 도 7의 a)는 요청 SOAP 메시지이며, 501은 헬스케어 서비스가 제공하는 WSDL(WebService Description Language)의 네임스페이스를 정의한 부분이다. 그리고 502는 헬스케어 서비스에 따라 칼로리 소모량을 얻어오기 위한 OCL 코드 모듈인 ‘getCalorie’ method를 호출하는데 필요한 파라미터의 값을 정의한다. 각각 순서대로 이름, 나이, 몸무게, 남성(0), 여성(1)에 대한 값을 나타낸다. 7 illustrates SOAP messages transmitted and received between a server and a client. FIG. 7A illustrates a request SOAP message, and 501 defines a namespace of a WebService Description Language (WSDL) provided by a healthcare service. In addition, 502 defines a value of a parameter required to call a 'getCalorie' method, an OCL code module for obtaining calorie consumption according to a healthcare service. The values for name, age, weight, male (0) and female (1) are shown in order.

서버(420)는 요청 SOAP 메시지를 수신하면, 해당 단계 550에서 해당 헬스케어 서비스를 호출한다. 이어서, 서버(420)는 단계 560에서 해당 헬스케어 서비스에 대한 결과가 도출되는 지를 판단한다. 서버(420)는 해당 헬스케어 서비스에 대한 결과가 도출되었으면 단계 570에서 응답 SOAP 메시지를 생성하여 단계 580에서 클라이언트로 전송한다. 도 7의 b)는 응답 SOAP 메시지로서, 헬스케어 서비스를 호출한 후의 응답 메시지로서 <result> 엘리먼트에 ‘12’란 값이 리턴되었다. 즉 12 Kcal가 소모되었다. When the server 420 receives the request SOAP message, the server 420 calls the healthcare service in step 550. In operation 560, the server 420 determines whether a result of the healthcare service is derived. If a result of the healthcare service is derived, the server 420 generates a response SOAP message in step 570 and transmits the response SOAP message to the client in step 580. 7B illustrates a response SOAP message, in which a value of '12' is returned in the <result> element as a response message after calling the healthcare service. 12 Kcal was consumed.

본 실시예에서, 서버(420)는 헬스케어 시스템이지만, 서버(420)는 헬스케어 시스템과 구별된 장치일 수 있다. 서버(420)가 별도로 설치된 경우에는 서버(420)는 헬스케어 시스템으로 해당 헬스케어 서비스에 대한 값을 요청할 수도 있다. In this embodiment, server 420 is a healthcare system, but server 420 may be a device distinct from the healthcare system. When the server 420 is separately installed, the server 420 may request a value for the corresponding healthcare service from the healthcare system.

전술한 바와 같은 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였다. 그러나 본 발명의 범주에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능하다. 본 발명의 기술적 사상은 본 발명의 전술한 실시예에 국한되어 정해져서는 안 되며, 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.In the foregoing detailed description of the present invention, specific examples have been described. However, various modifications are possible within the scope of the present invention. The technical spirit of the present invention should not be limited to the above-described embodiments of the present invention, but should be determined by the claims and equivalents thereof.

201: 외부 인터페이스 210: RR-간격 추출기
220: XML 변환 엔진 230: XML 기반 생체 데이터 저장소
240: OCL 인터프리터 250: OCL 코드 생성기
260-1:제1 서비스 모듈 260-n: 제n 서비스 모듈
201: External interface 210: RR-spacing extractor
220: XML conversion engine 230: XML-based biometric data store
240: OCL interpreter 250: OCL code generator
260-1: first service module 260-n: n-th service module

Claims (12)

헬스케어 서비스를 제공하는 헬스케어 시스템에 있어서,
비가공 생체 데이터를 수신하여 특징 데이터를 추출하는 특징 데이터 추출기;
상기 비가공 생체 데이터 및 특징 데이터를 메타모델 기반 생체 데이터로 변환하는 XML(eXtensible Markup Languag) 변환 엔진;
상기 메타모델 기반 생체 데이터를 저장하는 저장소;
미리 결정된 헬스케어 서비스가 요청되면 관련 생체 데이터 추출을 위한 OCL(Object Constraint Language) 코드를 생성하는 OCL 코드 생성기; 및
상기 OCL 코드를 해석 및 실행함으로써 상기 메타모델 기반 생체 데이터를 추출하여 리턴하는 OCL 인터프리터를 포함하는 것을 특징으로 하는 헬스케어 시스템.
In a healthcare system that provides healthcare services,
A feature data extractor that receives raw biometric data and extracts feature data;
An eXtensible Markup Languag (XML) transformation engine for converting the raw biometric data and feature data into metamodel-based biometric data;
A storage for storing the metamodel based biometric data;
An OCL code generator configured to generate an object constraint language (OCL) code for extracting relevant biometric data when a predetermined healthcare service is requested; And
And an OCL interpreter that extracts and returns the metamodel-based biometric data by interpreting and executing the OCL code.
제1항에 있어서,
상기 미리 결정된 헬스케어 서비스가 요청되면 호출되며, 상기 OCL 코드 생성기에게 생체 데이터 추출을 위한 OCL 코드를 생성하도록 지시하는 하나 이상의 서비스 모듈을 더 포함하는 것을 특징으로 하는 헬스케어 시스템.
The method of claim 1,
Called when the predetermined healthcare service is requested, the healthcare system further comprises at least one service module for instructing the OCL code generator to generate an OCL code for biometric data extraction.
헬스케어 서비스를 제공하는 헬스케어 시스템에 있어서,
비가공 생체 데이터를 수신하여 특징 데이터를 추출하는 특징 데이터 추출기;
상기 비가공 생체 데이터 및 특징 데이터를 메타모델 기반 생체 데이터로 변환하는 XML(eXtensible Markup Languag) 변환 엔진;
상기 메타모델 기반 생체 데이터를 저장하는 저장소;
미리 결정된 헬스케어 서비스들에 관련된 OCL(Object Constraint Language) 코드 문서들을 각각 저장하며, 상기 미리 결정된 헬스케어 서비스가 요청되면 호출되며, 상기 미리 결정된 헬스케어 서비스에 관련된 OCL 코드를 상기 OCL 인터프리터로 제공하는 복수개의 서비스 모듈; 및
상기 OCL 코드를 해석 및 실행함으로써 상기 메타모델 기반 생체 데이터를 추출하여 리턴하는 OCL 인터프리터를 포함하는 것을 특징으로 하는 헬스케어 시스템.
In a healthcare system that provides healthcare services,
A feature data extractor that receives raw biometric data and extracts feature data;
An eXtensible Markup Languag (XML) transformation engine for converting the raw biometric data and feature data into metamodel-based biometric data;
A storage for storing the metamodel based biometric data;
Storing OCL code documents related to predetermined healthcare services, each called when the predetermined healthcare service is requested, and providing OCL codes related to the predetermined healthcare service to the OCL interpreter. A plurality of service modules; And
And an OCL interpreter that extracts and returns the metamodel-based biometric data by interpreting and executing the OCL code.
제1항 또는 제3항에 있어서,
상기 비가공 생체 데이터는 심전도 데이터, 호흡 데이터 및 보행 데이터를 포함하는 것을 특징으로 하는 헬스케어 시스템.
The method according to claim 1 or 3,
The unprocessed biometric data includes an electrocardiogram data, respiration data, and walking data.
제1항 또는 제3항에 있어서,
상기 미리 결정된 헬스케어 서비스는 클라이언트에 의해 SOAP(Simple Object Access Protocol) 메시지를 이용하여 요청되는 것을 특징으로 하는 헬스케어 시스템.
The method according to claim 1 or 3,
And the predetermined healthcare service is requested by a client using a Simple Object Access Protocol (SOAP) message.
제1항 또는 제3항에 있어서,
상기 SOAP 메시지는 상기 미리 결정된 헬스케어 서비스에 관련된 파라미터값을 포함하는 것을 특징으로 하는 헬스케어 시스템.
The method according to claim 1 or 3,
And the SOAP message comprises a parameter value related to the predetermined healthcare service.
제6항에 있어서,
상기 SOAP 메시지는 HTTP를 통해 전송되는 것을 특징으로 하는 헬스케어 시스템.
The method of claim 6,
And the SOAP message is transmitted over HTTP.
헬스케어 서비스를 제공하는 방법에 있어서,
비가공 생체 데이터를 수신하여 특징 데이터를 추출하는 단계;
상기 비가공 생체 데이터 및 특징 데이터를 메타모델 기반 생체 데이터로 변환하는 단계;
상기 메타모델 기반 생체 데이터를 저장하는 단계;
미리 결정된 헬스케어 서비스가 요청되면 상기 저장된 생체 데이터 추출을 위한 OCL(Object Constraint Language) 코드를 생성하는 단계; 및
OCL 인터프리터를 이용하여 상기 생성된 OCL 코드를 해석 및 실행함으로써 상기 메타모델 기반 생체 데이터를 추출하여 리턴하는 단계를 포함하는 것을 특징으로 하는 헬스케어 서비스 방법.
In the method of providing a healthcare service,
Receiving raw biometric data to extract feature data;
Converting the raw biometric data and feature data into metamodel-based biometric data;
Storing the metamodel based biometric data;
Generating an object constraint language (OCL) code for extracting the stored biometric data when a predetermined healthcare service is requested; And
And extracting and returning the metamodel-based biometric data by interpreting and executing the generated OCL code using an OCL interpreter.
제8항에 있어서,
상기 비가공 생체 데이터는 심전도 데이터, 호흡 데이터 및 보행 데이터를 포함하는 것을 특징으로 하는 헬스케어 서비스 방법.
9. The method of claim 8,
The raw biometric data includes an electrocardiogram data, respiration data and gait data.
제9항에 있어서,
상기 미리 결정된 헬스케어 서비스는 클라이언트에 의해 SOAP 메시지를 이용하여 요청되는 것을 특징으로 하는 헬스케어 서비스 방법.
10. The method of claim 9,
Wherein said predetermined healthcare service is requested by a client using a SOAP message.
제10항에 있어서,
상기 SOAP 메시지는 상기 미리 결정된 헬스케어 서비스에 관련된 파라미터값을 포함하는 것을 특징으로 하는 헬스케어 서비스 방법.
The method of claim 10,
And the SOAP message comprises a parameter value related to the predetermined healthcare service.
제11항에 있어서,
상기 SOAP(Simple Object Access Protocol) 메시지는 HTTP를 통해 전송되는 것을 특징으로 하는 헬스케어 서비스 방법.
The method of claim 11,
The Simple Object Access Protocol (SOAP) message is a healthcare service method, characterized in that transmitted over HTTP.
KR1020110034182A 2011-04-13 2011-04-13 Healthcare Systems and Healthcare Service Method KR101221384B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110034182A KR101221384B1 (en) 2011-04-13 2011-04-13 Healthcare Systems and Healthcare Service Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110034182A KR101221384B1 (en) 2011-04-13 2011-04-13 Healthcare Systems and Healthcare Service Method

Publications (2)

Publication Number Publication Date
KR20120116629A true KR20120116629A (en) 2012-10-23
KR101221384B1 KR101221384B1 (en) 2013-01-11

Family

ID=47284845

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110034182A KR101221384B1 (en) 2011-04-13 2011-04-13 Healthcare Systems and Healthcare Service Method

Country Status (1)

Country Link
KR (1) KR101221384B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101526984B1 (en) * 2012-12-10 2015-06-11 인제대학교 산학협력단 User terminal for healthcare service and healthcare service system and method using the user terminal
CN110890151A (en) * 2019-11-18 2020-03-17 重庆亚德科技股份有限公司 Regional remote medical information system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110012947A (en) * 2009-07-31 2011-02-09 경북대학교 산학협력단 U-healthcare system and service provide method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101526984B1 (en) * 2012-12-10 2015-06-11 인제대학교 산학협력단 User terminal for healthcare service and healthcare service system and method using the user terminal
CN110890151A (en) * 2019-11-18 2020-03-17 重庆亚德科技股份有限公司 Regional remote medical information system

Also Published As

Publication number Publication date
KR101221384B1 (en) 2013-01-11

Similar Documents

Publication Publication Date Title
US11769586B2 (en) Medical cloud platform data sharing system and method based on third-party business
US9641589B2 (en) Extensibility for manipulation of medical data
Fayn et al. Toward a personal health society in cardiology
Lu et al. A study on service-oriented smart medical systems combined with key algorithms in the IoT environment
Trigo et al. Interoperability in digital electrocardiography: harmonization of ISO/IEEE x73-PHD and SCP-ECG
Liang et al. Intelligent and real-time data acquisition for medical monitoring in smart campus
Moreira et al. SAREF4health: IoT Standard-Based Ontology-Driven Healthcare Systems.
KR20160125543A (en) User-oriented healthcare big data service method, computer program and system
Andersen et al. Point-of-care medical devices and systems interoperability: A mapping of ICE and FHIR
Rafe et al. Designing an architectural style for pervasive healthcare systems
Cuevas-González et al. ECG standards and formats for interoperability between mHealth and healthcare information systems: a scoping review
Jumaa et al. An XML-based framework for automating data exchange in healthcare
KR101221384B1 (en) Healthcare Systems and Healthcare Service Method
Gómez-García et al. Platform for healthcare promotion and cardiovascular disease prevention
Martinez et al. Recent innovative advances in telemedicine: standard-based designs for personal health
de Souza et al. Ontology-driven IoT system for monitoring hypertension
Faro et al. A web 2.0 telemedicine system integrating TV-centric services and Personal Health Records
Lin et al. IoT Applications in Healthcare
US20150149205A1 (en) Integrated clinical decision supporting system and method
KR20150144562A (en) System and Method for Biometric Data Analysis
KR101526984B1 (en) User terminal for healthcare service and healthcare service system and method using the user terminal
Villalba Mora et al. Heart failure monitoring system based on wearable and information technologies
Ko et al. Ontology and cdss based intelligent health data management in healthcare server
Kim et al. Service-oriented architecture structure for healthcare systems utilising vital signs
Yu et al. Design and implementation of real-time bio signals management system based on HL7 FHIR for healthcare services

Legal Events

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

Payment date: 20160106

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170102

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180109

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190403

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200213

Year of fee payment: 8