KR102660914B1 - 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버 - Google Patents

대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버 Download PDF

Info

Publication number
KR102660914B1
KR102660914B1 KR1020230152979A KR20230152979A KR102660914B1 KR 102660914 B1 KR102660914 B1 KR 102660914B1 KR 1020230152979 A KR1020230152979 A KR 1020230152979A KR 20230152979 A KR20230152979 A KR 20230152979A KR 102660914 B1 KR102660914 B1 KR 102660914B1
Authority
KR
South Korea
Prior art keywords
code
meta
attribute
codes
data
Prior art date
Application number
KR1020230152979A
Other languages
English (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 KR1020230152979A priority Critical patent/KR102660914B1/ko
Application granted granted Critical
Publication of KR102660914B1 publication Critical patent/KR102660914B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Human Resources & Organizations (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 측면은, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버를 제공한다. 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버는, 적어도 하나의 프로세서(processor) 및 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다. 적어도 하나의 단계는, 메타 시스템에 등록된 메타 코드 또는 수신된 메타 코드에 대한 중복 또는 오류를 검출하여 정비 작업을 수행하는 단계, 현재 상태(as-is) 코드 속성에 대해 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성 명 그룹을 기초로, 프로파일링 할 코드 속성을 선정하여 코드 속성에 대한 표준화 작업을 수행함으로써 속성 코드 정의서를 생성하는 단계, 현재 상태(as-is) 코드 속성에 대한 메타 코드를 매핑하여 속성 코드를 프로파일링함으로써 메타 코드 정의서를 생성하는 단계, 프로파일링 결과가 반영된 모든 메타 코드에 대한 메타 코드 오너십을 지정하는 단계 및 현재 상태(as-is) 코드 정보와 향후(to-be) 코드 정보가 매핑된 메타 코드 매핑 정의서를 생성하는 단계를 포함할 수 있다.

Description

대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버 {SERVER AND METHOD FOR PROVIDING COMMON CODE MAINTENANCE AND REFINEMENT FOR UTINLIZING LARGE AMOUNTS OF DATA}
본 발명은 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버에 관한 것으로, 더욱 상세하게는 전사 시스템에서 공통으로 사용하는 코드에 대한 설계를 제공함으로써, 전사 시스템 품질을 향상시키는 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버에 관한 것이다.
전사(全社) 시스템에서 공통으로 사용하는 코드인 공통 코드는 전사 시스템의 기반이 되는 중요한 요소이다. 전사 차원의 코드 관리에 있어, 동일한 기능 및 의미의 코드임에도 불구하고 개발 및 관리 주체의 상이함, 개별 코드의 필요성에 의한 코드의 변경 및 수정에 따라 전사 시스템 운용의 효율성이 저하되며, 유지 보수 또한 개별적으로 수행해야 하는 필요에 의해 많은 시간과 비용이 소요된다.
특히, 조직의 규모가 확장되고 개발 역사가 충분히 긴 조직의 경우 개별 코드의 수정 또는 변경 이력을 추적하기에도 어려운 면이 있으며 중간 과정에서 생성된 코드의 경우 그 필요성을 알기 어려워 삭제 또는 변경과 같은 정정도 어려운 실정이다.
대규모 조직에서 사용되는 전사 차원의 코드 통합은 현재 다수의 인력이 투입되고 코드의 의미를 파악하고 필요한 영역에 한하여 이를 통합하려는 시도가 있었으나, 이 또한 다수의 인력에 의해 수행되어 일관성을 보장하기 어려우며 현재 상태(as-is) 코드와 향후(to-be) 코드의 상관 관계를 파악하기 어려워 지속적인 유지보수에 한계를 가져온다.
이에 따라, 전사 차원의 코드 관리에서 공통 코드에 대한 표준 정책과 지침을 정의하고, 이에 따라 현재 상태(as-is) 코드의 표준화 및 통합을 통해 향후(to-be) 코드에 매핑하여 효율적인 코드 관리를 수행하기 위헌 공통 코드 설계 및 관리에 대한 연구가 필요한 실정이다.
국내등록특허 제 10-1570980호
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 측면은, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버를 제공한다.
대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버는, 적어도 하나의 프로세서(processor) 및 적어도 하나의 프로세서가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory)를 포함할 수 있다.
적어도 하나의 단계는, 메타 시스템에 등록된 메타 코드 또는 수신된 메타 코드에 대한 중복 또는 오류를 검출하여 정비 작업을 수행하는 단계, 현재 상태(as-is) 코드 속성에 대해 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성 명 그룹을 기초로, 프로파일링 할 코드 속성을 선정하여 코드 속성에 대한 표준화 작업을 수행함으로써 속성 코드 정의서를 생성하는 단계, 현재 상태(as-is) 코드 속성에 대한 메타 코드를 매핑하여 속성 코드를 프로파일링함으로써 메타 코드 정의서를 생성하는 단계, 프로파일링 결과가 반영된 모든 메타 코드에 대한 메타 코드 오너십을 지정하는 단계 및 현재 상태(as-is) 코드 정보와 향후(to-be) 코드 정보가 매핑된 메타 코드 매핑 정의서를 생성하는 단계를 포함할 수 있다.
또한, 메타 코드 매핑 정의서를 생성하는 단계는, 메타 코드 인스턴스를 정비하여 코드 표준화를 진행하되, 메타 코드 인스턴스가 동일한 경우 코드 속성 명을 일치시켜 메타 코드를 통합하고, 메타 코드 인스턴스가 두 개이고 서로 상반된 의미를 갖는 경우 메타 코드에서 삭제하고, 메타 코드 인스턴스가 상이한 적어도 둘 이상의 메타 코드의 코드 속성명이 동일한 경우 적어도 둘 이상의 메타 코드 중 적어도 어느 하나의 메타 코드 명을 변경하여 신규 메타 코드를 생성하고, 공통 코드 외에 개별 개체 메타 코드는 별도 엔터티에서 관리되도록 개별 코드를 생성하는 단계를 포함할 수 있다.
한편, 코드 속성에 대한 표준화 작업을 수행하는 단계는, 동일한 코드 인스턴스를 사용하는 코드에 대한 코드 속성명을 변경하거나 코드 속성 명에 대한 수식어를 더하여 코드 속성명을 변경하여 코드 속성 명을 일치 시키고, 서로 다른 코드가 서로 다른 코드 인스턴스를 가지면서, 코드 속성이 동일한 경우, 서로 다른 코드가 구분되도록 어느 다른 하나의 코드의 코드 속성명을 변경하는 단계를 포함할 수 있다.
이때, 속성 코드를 프로파일링함으로써 메타 코드 정의서를 생성하는 단계는, 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성명 그룹을 "~코드", "~여부", "~유무", "~유형"중 어느 하나로 클러스터링하는 단계 및 적어도 둘 이상의 메타 코드의 코드 인스턴스가 동일한 경우 코드 속성명을 일치시키거나, 또는 상기 메타 코드의 코드 인스턴스가 상이하고 코드 속성명이 동일한 경우 적어도 하나의 상기 메타 코드의 코드 속성명을 변경하는 단계를 포함할 수 있다.
또한, 메타 코드 오너십을 지정하는 단계는, 메타 시스템 내부에서 정의된 메타 코드에 대한 오너십은 코드와 관련된 주 업무 담당 주체에게 내부 코드 오너십을 부여하고, 메타 시스템 외부에서 정의된 메타 코드에 대한 오너십은 외부에서 정의된 메타 코드를 최초로 수신 받은 주체에게 외부 코드 오너십을 부여하는 단계를 포함할 수 있다.
상기와 같은 본 발명에 따른 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버를 이용할 경우에는 전사 시스템에서 공통으로 사용하는 코드에 대한 설계를 수행하여, 공통 코드 값에 대한 표준 정책과 지침을 정의함으로써 시스템 효율성 증대를 제공할 수 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 특정한 바람직한 실시예들의 상기에서 설명한 바와 같은 또한 다른 측면들과, 특징들 및 이득들은 첨부 도면들과 함께 처리되는 하기의 설명으로부터 보다 명백하게 될 것이다.
도 1은 본 발명의 일 실시예에 따른 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버의 구동 환경을 나타낸 예시도이다.
도 2는 코드 구성요소를 설명하기 위한 예시도이다.
도 3은 현재 상태(as-is) 메타 코드 정의서의 일 예를 도시한 예시도이다.
도 4는 공통 코드 표준화 과정의 각 단계를 나타낸 예시적 흐름도이다.
도 5는 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버의 일 예를 도시한 예시도이다.
도 6은 도 1에 따른 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버에 대한 하드웨어 구성도이다.
상기 도면들을 통해, 유사 참조 번호들은 동일한 혹은 유사한 엘리먼트들과, 특징들 및 구조들을 도시하기 위해 사용된다는 것에 유의해야만 한다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 익히 알려져 있고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.
마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
본 발명의 실시예들을 구체적으로 설명함에 있어서, 특정 시스템의 예를 주된 대상으로 할 것이지만, 본 명세서에서 청구하고자 하는 주요한 요지는 유사한 기술적 배경을 가지는 여타의 통신 시스템 및 서비스에도 본 명세서에 개시된 범위를 크게 벗어나지 아니하는 범위에서 적용 가능하며, 이는 당해 기술분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다.
도 1은 본 발명의 일 실시예에 따른 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버의 구동 환경을 나타낸 예시도이다.
도 1을 참조하면, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버(100)(이하, '서버(100)'라고 함)는 외부 데이터베이스(110)로부터 현재 상태(as-is) 코드 정보를 수신하고 메타 코드를 분석하여, 향후(to-be)에 사용할 메타 코드를 도출함으로써 코드 표준화를 수행할 수 있다.
여기서, 메타 코드란 시스템에 등록된 코드 또는 시스템 미존재시 코드 테이블에서 관리되는 코드 정보를 의미할 수 있고, 속성 코드는 코드 속성 중 코드를 관리하는 속성을 의미할 수 있다. 또한, 코드 정보란 개별 코드가 포함하는 데이터 및 그 속성을 포함하는 의미로 해석될 수 있으며, 아래에서 설명되는 바와 같이, 코드 속성명, 코드 값, 코드 값 명, 코드 인스턴스와 같은 코드 구성요소 데이터뿐만 아니라, 코드 속성에 포함되는 코드 번호, DBMS(Database management system) 명, 엔터티 명, 테이블 명, 속성 명, 컬럼명, 속성 순서, 데이터 타입, PK(Primary key)여부, FP(Foreign key)여부, 널(null)여부 등의 세부 정보를 모두 포함할 수 있다.
예컨대, 전사 시스템에서 사용되는 코드는 시스템의 기반을 이루는 요소이나, 공통 코드에 대한 설계가 잘못된 경우 시스템의 품질, 특히, 시스템의 상호 연동성 및 연계성의 문제로 호환성이 떨어지게 되며, 이를 보완하기 위한 보완 시스템의 추가로 유지 및 관리 추가 비용이 발생하는 문제가 있다.
서버(100)는 전사 시스템에서 사용되는 공통 코드의 속성에 대한 정의를 새롭게 부여하여 명확화 함으로써 공통 코드를 전사 시스템에서 일관되게 사용할 수 있도록 할 수 있다.
또한, 서버(100)는 코드 속성을 정비하여 업무 규칙을 포함한 중요 코드 속성을 빠짐없이 도출하고, 코드 속성의 의미를 나타내는 속성 코드의 표준화를 통해 일관된 기준으로 코드를 정비할 수 있다. 또한, 서버(100)는 공통 코드에 대한 오너십(Ownership)을 명확히 규정함으로써 공통 코드의 전사 시스템에서 사용에 있어서의 관리 효율을 증대시킬 수 있다.
또한, 서버(100)는 속성 코드에 대한 중복 코드를 제거하며, 코드간의 불일치나 오류를 도출하고, 메타 코드를 정비하고 이에 따라 속성 코드의 값을 보정함으로써 데이터의 품질을 높일 수 있다.
또한, 서버(100)는 표준화된 공통 코드를 통해 재사용성을 향상시키고, 코드 선택에 대한 시간을 단축시킴으로써 개발 생산성을 향상시킬 수 있으며, 데이터 모델의 일관성을 유지하고, 업무간 불일치 제거하여 생산성 향상시킬 수 있다.
한편, 서버(100)는 현재 상태(as-is) 코드를 분석하는 과정에서 코드의 통합과 분리를 검토하여 유사한 코드가 중복으로 사용되지 않도록 설계할 수 있으며, 공통코드가 아닌 개별 코드나 여부 속성으로 도출할 수 있으며, 이에 제한되지 않고 공통 코드에 대해 참조 코드나 계층 코드로 구현해야 하는지 여부의 리포트를 생성할 수 있다.
또한, 서버(100)는 최종 설계된 메타 코드를 사용하여 현재 상태(as-is) 코드와의 매핑 정의서를 생성하고, 메타 코드와 속성 코드에 대한 향후(to-be) 코드와의 매핑 정의를 생성하여 코드 표준화를 설계할 수 있다.
도 2는 코드 구성요소를 설명하기 위한 예시도이다. 도 1 및 도 2를 참조하면, 코드는 코드를 구별할 수 있는 식별 명칭으로서 '코드 속성명', 실제 코드의 값을 구분하기 위한 대표적인 숫자 또는 문자로 표현되도록 사전에 정의된 '코드 값', 각 코드 값에 대한 실제 의미를 나타내는 '코드 값 명', 코드값과 코드값명을 나타내며 코드 목록으로 일컬어지는 '코드 인스턴스'로 구분하여 표현될 수 있다.
한편, 각 코드 유형에 따라 코드 유형의 실제 코드 유형의 값을 구분하기 위한 대표적인 숫자나 문자로 표현되는 '유형 코드값', 각 유형 코드 값에 대한 실제 의미를 나타내는 '유형 코드값명'으로 구분될 수 있다.
도 3은 현재 상태(as-is) 메타 코드 정의서의 일 예를 도시한 예시도이다. 도 3을 참조하면, 현재 상태(as-is) 메타 코드 정의서에는 유형 코드값, 유형 코드값명, 코드값 및 코드값명이 표시될 수 있다. 앞서 도 2를 참조하여 설명한 바와 같이, 유형 코드값은 각 코드 유형에 따라 코드 유형의 실제 코드 유형의 값을 구분하기 위한 대표적인 숫자나 문자로 표현될 수 있으며, 유형 코드값 "01"은 유형 코드값명 "고객유형코드"에 대응될 수 있고, 이때, 코드값 "A"는 코드값명 "개인"에 대응될 수 있다.
동일하게, 유형 코드값 "02"은 유형 코드값명 "직급종류코드"에 대응될 수 있고, 이때, 코드값 "1"은 코드값명 "대리"에 대응될 수 있다. 서버(100)는 이와 같은 메타 코드 정의서를 기초로 각 코드의 속성과 그 후보 속성에 대해 분석 및 도출함으로써 최종 코드 속성을 도출하는 프로파일링을 수행할 수 있다.
서버(100)는 이와 같이 현재 상태(as-is) 메타 코드를 분석하여 정비하여 향후(to-be) 메타 코드를 제안할 수 있으며, 이때, 코드 정비는 동일 코드를 통합하고 성격이 다른 코드는 분리하는 될 수 있으며, 분석 과정에 따라 코드 오너십이 정의될 수 있다. 또한, 서버(100)는 현재 상태(as-is) 속성 중에서 메타 코드를 사용한 코드 속성을 도출하고, 여부속성을 포함하여 코드 대상을 광범위하게 도출한 후에 대상 속성에 대해 프로파일링을 수행할 수 있다. 이때, 서버(100)는 코드값 도출 후에 널(null)에 해당하는 코드값에 대한 의미를 파악할 수 있다.
그 다음, 서버(100)는 최종적으로 도출된 코드를 사용하여 현재 상태(as-is) 코드와의 매핑 정의를 생성할 수 있다. 매핑 정의는 메타 코드에 대한 매핑과 속성 코드에 대한 매핑으로 구성될 수 있다. 매핑 구성이 완료되면 서버(100)는 구성된 코드 매핑에 기초하여 표준 공통 코드를 설계할 수 있다.
도 4는 공통 코드 표준화 과정의 각 단계를 나타낸 예시적 흐름도이다. 도 1 및 도 4를 참조하면, 서버(100)는 메타 코드 데이터에 대한 분석을 통해 코드의 중복 또는 오류를 검출하여 메타 코드 데이터를 정비할 수 있다.
예를 들어, 서버(100)는 코드 표준화를 수행하기 이전에, 메타 시스템에 등록된 메타 코드 또는 수신된 메타 코드에 대한 중복 또는 오류를 검출하여 정비 작업을 수행할 수 있다. 이때, 메타 시스템이 없는 경우, 코드 테이블에서 관리하는 데이터를 대상으로 정비 작업을 수행할 수 있다.
일 예로, 서버(100)는 코드 인스턴스가 존재하지 않거나, 하나 이하인 경우(예: 모름, 해당 없음, 기타 등의 일반 코드는 제외하고 검토), 코드값명이 없거나 의미 없는 문자인 경우, 동일 유형 메타 코드 내 같은 코드값명이 존재하는 경우, 개별 코드로 등록된 경우 코드 인스턴스가 하나라도 존재하면 인스턴스를 삭제, 코드 속성이 용어에 등록되지 않은 경우, 코드 속성과 메타 코드의 유형명이 다른 경우, 코드 속성과 메타 코드의 데이터 타입이 상이한 경우, 코드 인스턴스의 코드값만 존재하고 코드값명이 존재하지 않는 경우, 개별 코드로 등록된 공통 코드가 존재하는 경우, 공통 코드로 등록된 개별 코드가 존재하는 경우, 개별 코드의 관리를 위한 엔터티가 등록되지 않았거나 잘못 지정된 경우, 코드값 널(null)인 경우, 부모 코드가 지정되지 않은 참조코드, 참조 코드임에 불구하고 부모 코드의 코드값과 상이하거나 존재하지 않는 경우, 동일한 코드 인스턴스인 경우, 하나의 코드 유형에 여러 종류의 코드가 존재하는 경우, 하드 코딩 코드를 도출하는 경우 코드에 대한 정비 작업을 수행할 수 있다. 이를 통해 메타 시스템에 등록된 코드의 오류 또는 중복을 바로 잡을 수 있다.
또한, 서버(100)는 현재 상태(as-is) 코드 속성을 모수로 하여 코드 속성과 그 후보 속성에 대해 분석 및 도출할 수 있다. 이때, 서버(100)는 일부 코드 속성에 대한 표준화 작업을 수행할 수 있으며, 최종 코드 속성으로 도출된 속성에 대해서는 프로파일링을 수행할 수 있다.
예를 들어, 서버(100)는 현재 상태(as-is) 코드 속성에 대해 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성 명 그룹을 기초로, 프로파일링 할 코드 속성을 선정할 수 있다.
일 예로, 서버(100)는 적어도 하나 이상의 기준에 따라 코드 속성을 필터링하여 코드 속성 후보를 분석할 수 있다. 일 예로, 서버(100)는 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성명 그룹을 "~코드", "~여부", "~유무", "~유형"와 같이 클러스터링 할 수 있고, 컬럼명이 "~TY", "~TYPE", "~CD", "~CODE"와 같이 끝나는 속성 명으로 클러스터링함으로써 적어도 하나의 코드 속성명 그룹을 선정할 수 있다.
그 다음, 서버(100)는 프로파일링할 코드 속성을 결정할 수 있다. 예를 들어, 서버(100)는 메타 코드의 코드 인스턴스가 동일한 경우에는 코드 속성 명을 일치시킬 수 있다. 예를 들어, "~여부" 속성명을 "~코드"로 변경하거나 그 반대로 변경함으로써 코드 속성명을 일치시킬 수 있다. 또한, 코드값명을 모르거나 사용하지 않는 경우 통일된 특정 값 예컨대, "OO코드값"으로 변경할 수 있다. 또한, 서버(100)는 동일한 코드 인스턴스를 사용한 두 코드에 대해 '수식어+OO코드'의 형태로 변경하여 프로파일링을 진행할 수 있고, 상태 코드 등의 일반적인 코드 속성명에 대해 수식어를 상세히 추가하여 속성명을 변경함으로써 속성명을 상세화 하고, 메타 코드의 코드 인스턴스가 상이한데, 코드 속성이 같은 경우 어느 하나의 속성명을 변경하여 속성명 불일치를 해소할 수 있다.
이를 통해, 서버(100)는 현재 상태(as-is) 코드 속성에 대해, 메타로 관리하는 공통 코드, Y 또는 N으로 관리하는 여부 속성, 개별 테이블에서 관리하는 식별자 코드 및 코드값명을 사용하지 않고 코드값만 저장하는 경우의 각 상태에 대한 코드 속성을 정리하여, 현재 상태(as-is)의 코드 속성 목록을 작성할 수 있다.
그 다음, 서버(100)는 코드 속성에 대한 메타 코드를 매핑하여 속성 코드를 프로파일링 할 수 있다. 일 예로, 서버(100)는 현재 상태(as-is) 코드에 대해 코드 목록에 대한 "번호", "DBMS명", "엔터티명", "테이블명", "속성명", "컬럼명", "속성순서", "데이터 타입", "PK여부", "FK여부", "null여부", "사용 여부"와 같은 코드 속성을 도출할 수 있다. 또한, 그 다음, 서버(100)는 도출된 각 코드 속성에 대해 현재 상태(as-is) 메타 코드를 매핑할 수 있다. 이를 통해, 서버(100)는 테마 시스템 또는 코드 테이블에 기재된 코드 속성을 메타 코드를 통하여 간편하게 관리할 수 있다.
그 다음, 서버(100)는 최종 코드 속성으로 도출된 속성에 대한 코드 값을 프로파일링 할 수 있다. 예를 들어, 서버(100)는 코드 표준화 전 과정에서 반복적으로 사용되는 기초 데이터인 코드 표준화 기초데이터, 널(null) 값에 해당하는 코드 값에 대해 분석한 널(null)값 분석 결과 및 메타 코드를 상호 반영한 결과를 결합함으로써 코드값을 프로파일링 할 수 있다.
일 예로, 현재 상태(as-is) 코드 정의서에서 널(null) 값이 정의되지 않은 경우, 널(null)을 의미하는 특수문자 또는 미리 정의된 문자(예: 00 또는 99)로 대체할 수 있으며, 향후(to-be) 코드에서 사용하지 않는 코드 값은 이 단계에서 삭제할 수 있다. 또한, 메타 코드가 존재하지 않는 경우에는 향후(to-be) 코드에서 사용하지 않는 코드 값으로서 삭제되는 경우를 제외하고는, 향후(to-be) 메타 코드에 추가하여 코드 값을 프로파일링 할 수 있다.
그 다음, 서버(100)는 메타 코드 정의서를 생성하되, 반복해서 사용된 속성 코드 값에 대해 메타 코드에 반영되지 않은 코드값이 존재하는지 확인하여, 메타 코드 인스턴스에 코드 속성에서 사용된 코드 인스턴스 전체가 포함되도록 할 수 있다. 이를 통해, 메타 코드의 정의를 분명하게 할 수 있으며, 이후 단계인 코드 오너십 정의를 원활하게 완료할 수 있다.
그 다음, 서버(100)는 프로파일링 결과가 반영된 모든 메타 코드에 대해 오너십을 지정하여 관리할 수 있다. 일 예로, 서버(100)는 메타 코드 오너십을 내부 또는 외부로 구분하여 관리할 수 있다. 예를 들어, '내부'로 정의된 메타 코드 오너십은 내부에서 정의한 메타 코드를 의미할 수 있으며, 하나의 메타 코드를 여러 곳에서 변경하지 못하도록 관리 주체(예: 부서, 팀, 주제 영역)를 결정할 수 있다. 이때, 메타 코드에 대한 오너십이 없는 주체(예: 부서, 팀, 주제 영역)는 코드 사용 또는 조회는 가능하지만 변경은 불가능할 수 있으며, 메타 코드 오너십은 선점 등록을 의미하는 것이 아니라, 주 업무를 기준으로 결정될 수 있다. 예컨대, 인사관리부서(HR, Human Resource)에서는 다른 조직의 코드 선점 여부와 무관하게 인사와 관련된 업무에 대한 메타 코드의 오너십을 가질 수 있다.
다른 예로, 서버(100)는 '외부'로 정의된 메타 코드 오너십은 외부에서 수신 받은 데이터(속성) 중에서 코드로서 사용되는 데이터를 메타 코드로 등록할 때, 또는 내부 데이터에 의해 외부의 기준을 코드로서 적용하여 메타 코드로 등록할 때 정의되는 메타 코드를 의미할 수 있다. 이때, 코드 인스턴스는 외부에서 정의된 대로 사용하며, 이를 변경하지 않을 수 있으나, 이에 제한되지 않고 내부 기준에 의해 변경될 수 있다.
또한, '외부'로 정의된 메타 코드 오너십과 관련하여 서버(100)는 외부로부터 수신된 소스(source)를 별도의 출처 표시로서 관리할 수 있다.
이때, 서버(100)는 '외부'로 정의된 메타 코드 오너십은 시스템에서 최초로 해당 코드를 외부로부터 수신한 주체가 가질 수 있다. 이때, 서버(100)는 해당 주체의 오너십 변경 명령에 따라, 최초 오너십을 가진 주체가 지정하는 다른 주체에게 오너십 권한을 부여할 수 있다. 한편, '외부'로 정의된 메타 코드에서 코드 값만 저장하며 코드값명은 사용하지 않거나 알 수 없는 경우, 공통 코드로 정의하지 않고 "~코드값"도메인을 사용하여 관리할 수 있다.
이를 통해, 서버(100)는 일괄적이며 안정적인 코드 오너십 관리를 수행할 수 있다.
또한, 서버(100)는 메타 코드 오너십이 할당되고 나면, 메타 코드 매핑 정의서를 생성할 수 있다. 메타 코드 매핑 정의서는 현재 상태(as-is) 코드값에 대해 메타 코드 인스턴스 정비를 수행함으로써 이뤄질 수 있으며, 현재 상태(as-is) 기준의 코드 정보와 향후(to-be)코드 정보가 매핑된 산출물을 의미할 수 있다.
예를 들어, 서버(100)는 메타 코드의 코드 인스턴스가 동일한 경우에는 코드 속성명을 일치시킴으로써 메타 코드를 통합할 수 있으며(예: 메타 코드 인스턴스가 동일한 경우 어느 하나를 삭제), 메타 코드 인스턴스가 두 개이고 어느 하나가 부(不)의 의미일 때 메타 코드에서 삭제할 수 있고, 불명확한 메타 코드값명은 명확한 메타 코드값명으로 정정하고, 메타 코드의 코드 인스턴스가 상이한데, 코드 속성명이 동일한 경우 신규 메타 코드를 생성할 수 있으며, 코드 인스턴스가 상호 포함관계에 있을 때, 참조 메타 코드로 정의할 수 있고, 코드 인스턴스에 성격이 상이한 코드 유형이 존재하는 경우 하나의 유형을 분리할 수 있다. 또한, 개별 개체 성격의 메타 코드는 별도의 엔터티에서 관리하도록 설계함으로써 개별 코드를 생성할 수 있다.
한편, 서버(100)는 코드값명을 기준으로 메타 코드 인스턴스를 비교함으로써 메타 코드를 분석할 수 있다. 예를 들어, 서버(100)는 코드 인스턴스의 유사도가 미리 정해진 각 범위에 포함되는 경우 코드 통합화, 코드값명 표준화, 참조코드 지정 또는 다른 코드로 지정하여 코드 표준화를 수행할 수 있다.
서버(100)는 코드 인스턴스가 100% 일치하여 완전히 동일한 경우 또는 동일한 것으로 추정할 수 있는 경우, 코드 값 상호가 일치할 경우, 일부 코드 값은 상이하지만 코드값명이 동일한 경우, 코드 인스턴스가 100% 동일하지만 코드 속성 명이 상이한 경우 코드를 통합하여 표준화를 수행할 수 있다.
또한, 코드 인스턴스가 100% 동일한 것은 아니지만, 단순히 코드값명의 표현 방식에 의해 달라진 경우, 코드값명을 표준화함으로써 코드 표준화를 수행할 수 있다. 또한, 서버(100)는 코드 인스턴스가 100% 동일한 것은 아니나 서로 포함관계인 경우, 참조 코드 개념이 존재하는 경우 해당 코드를 참조 코드로 지정하여 코드 표준화를 수행하고, 참조 코드를 허용하지 않는 경우 서로 다른 코드로 정의할 수 있다.
또한, 서버(100)는 코드 인스턴스의 유사도가 50% 이상이면서 상호 포함 관계가 성립되지 않는 경우 상호 다른 코드로 분류하여 표준화를 수행할 수 있다.
이때, 서버(100)는 미리 학습된 데이터 유사성 분석 알고리즘을 기반으로 메타 코드 데이터의 유사성 분석을 수행할 수 있다. 일 예로, 서버(100)는 메타 코드의 유사성 분석을 위해 문자열 비교 알고리즘 또는 자연어 처리 알고리즘 기반의 학습 모델을 사용할 수 있다. 예를 들어, 서버(100)는 Levenshtein 거리 편집 알고리즘을 사용하여, 코드 인스턴스 상호간의 거리가 0인경우 문자열은 동일한 것으로 판단하고, 거리가 멀수록 문자열이 상호 상이한 것으로 판단할 수 있다.
또한, 서버(100)는 TF-IDF(Term Frequency-Inverse Document Frequency) 방법을 사용하여 텍스트의 유사도를 벡터로 표현할 수 있다. 텍스트를 벡터로 변환한 이후 텍스트 사이의 코사인 유사도를 산출함으로써 텍스트 간의 유사도를 확인할 수 있다. 예컨대, 코사인 유사도가 1이면 코드는 동일한 것으로 판단될 수 있으며, 0인경우 완전히 상이한 것임을 의미할 수 있다.
또한, 서버(100)는 Word2Vec, FastText 또는 BERT와 같은 기술을 사용하여 단어나 구문을 벡터로 변환할 수 있다.
이러한 벡터 간의 유사성은 코사인 유사성 또는 기타 거리 측정을 사용하여 계산할 수 있으며, 이는 의미론적 의미를 구분할 수 있으므로 "은행"과 "금융 기관"은 그 텍스트 표현이 상당히 다르더라도 유사 또는 동일한 것으로 간주될 수 있다.
일 예로, 서버(100)는 메타 코드를 분석 및 정비하면서, 텍스트 정규화를 수행할 수 있다. 일 예로, 메타 코드내 텍스트를 모두 동일 언어(예: 한글)로 변환하고, 개별 단어 또는 토큰으로 분할하여 토큰화 할 수 있다. 그 다음, 서버(100)는 의미론적 유사성(예: Word2Vec, FastText 또는 BERT) 분석 알고리즘을 사용하여 미리 학습된 텍스트 학습 모델에 따라 분할된 텍스트 토큰에 대한 벡터를 생성할 수 있다.
그 다음, 서버(100)는 유사성 분석 알고리즘에 따라 산출된 유사성 점수를 미리 정해진 임계값(예: 100%, 70%, 또는 50%)과 비교하여 코드 유사성을 비교할 수 있다.
한편, 서버(100)는 메타 코드 매핑 정의서에서 개별 코드를 도출할 수 있다. 여기서 개별 코드란 표준화를 진행하지 않고 공통코드에서 분리하여 별도의 엔터티에서 관리하도록 설계된 것으로, 예컨대, 서로 다른 직무를 갖는 부서에서 개별적으로 요구되는 코드에 대하여는 표준화에 따른 통합을 진행하지 않고 개별적으로 관리되도록 함으로써, 현재 상태(as-is) 코드 속성 목록에 표기하여 관리할 수 있다. 예컨대, 회사내 개별 부서 코드, 지점 코드 등이 여기에 해당될 수 있다.
개별 코드 도출이 완료되면, 서버(100)는 향후(to-be) 메타 코드 정의서를 생성할 수 있다. 즉, 향후(to-be)에 사용될 코드값, 코드값명을 최종적으로 확정하고, 도출된 향후(to-be) 메타 코드에 대해 오너십을 지정한 이후 향후(to-be) 메타 코드 정의서로 관리할 수 있다. 이때, 확정된 메타 코드에 대해서는 메타 시스템에 등록하여 전사에서 공유될 수 있도록 하고, 오너십의 존재로 인해 권한이 없는 부서에서의 변경 또는 수정을 방지할 수 있다.
또한, 서버(100)는 현재 상태(as-is) 코드 속성에 대해 향후(to-be) 메타 코드에 해당하는 사항을 지정하여 매핑 관계를 관리할 수 있다. 예컨대, 향후(to-be) 메타 코드 부분에 지정된 코드 유형은 향후(to-be) 메타 코드 정의서에 존재하도록 관리할 수 있으며, 서버(100)는 현재 상태(as-is) 코드 인스턴스를 매핑할 수 있다. 다시 말하면, 서버(100)는 현태상태의 코드 인스턴스와 향후(to-be) 메타 코드 인스턴스를 매핑하여 실제 데이터를 상호 관리할 수 있다. 이를 통해, 시스템 관리자는 현재 상태(as-is) 코드와 향후(to-be) 코드를 일괄로 확인할 수 있으며, 관리의 용이성을 확보할 수 있다.
도 5는 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버의 일 예를 도시한 예시도이다. 도 5를 참조하면, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버(500)(이하, '서버(500)'라고 함)는 코드 속성 분석부(510), 메타 코드 관리부(520) 및 코드 매핑부(530)를 포함할 수 있다.
코드 속성 분석부(510)는 코드 표준화를 수행하기 이전에, 메타 시스템에 등록된 메타 코드 또는 수신된 메타 코드에 대한 중복 또는 오류를 검출하여 정비 작업을 수행할 수 있다. 이때, 메타 시스템이 없는 경우, 코드 테이블에서 관리하는 데이터를 대상으로 정비 작업을 수행할 수 있다.
일 예로, 코드 속성 분석부(510)는 코드 인스턴스가 존재하지 않거나, 하나 이하인 경우(예: 모름, 해당 없음, 기타 등의 일반 코드는 제외하고 검토), 코드값명이 없거나 의미 없는 문자인 경우, 동일 유형 메타 코드 내 같은 코드값명이 존재하는 경우, 개별 코드로 등록된 경우 코드 인스턴스가 하나라도 존재하면 인스턴스를 삭제, 코드 속성이 용어에 등록되지 않은 경우, 코드 속성과 메타 코드의 유형명이 다른 경우, 코드 속성과 메타 코드의 데이터 타입이 상이한 경우, 코드 인스턴스의 코드값만 존재하고 코드값명이 존재하지 않는 경우, 개별 코드로 등록된 공통 코드가 존재하는 경우, 공통 코드로 등록된 개별 코드가 존재하는 경우, 개별 코드의 관리를 위한 엔터티가 등록되지 않았거나 잘못 지정된 경우, 코드값 널(null)인 경우, 부모 코드가 지정되지 않은 참조코드, 참조 코드임에 불구하고 부모 코드의 코드값과 상이하거나 존재하지 않는 경우, 동일한 코드 인스턴스인 경우, 하나의 코드 유형에 여러 종류의 코드가 존재하는 경우, 하드 코딩 코드를 도출하는 경우 코드에 대한 정비 작업을 수행할 수 있다. 이를 통해 메타 시스템에 등록된 코드의 오류 또는 중복을 바로 잡을 수 있다.
또한, 코드 속성 분석부(510)는 현재 상태(as-is) 코드 속성을 모수로 하여 코드 속성과 그 후보 속성에 대해 분석 및 도출할 수 있다. 이때, 코드 속성 분석부(510)는 일부 코드 속성에 대한 표준화 작업을 수행할 수 있으며, 최종 코드 속성으로 도출된 속성에 대해서는 프로파일링을 수행할 수 있다.
예를 들어, 코드 속성 분석부(510)는 현재 상태(as-is) 코드 속성에 대해 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성 명 그룹을 기초로, 프로파일링 할 코드 속성을 선정할 수 있다.
일 예로, 코드 속성 분석부(510)는 적어도 하나 이상의 기준에 따라 코드 속성을 필터링하여 코드 속성 후보를 분석할 수 있다. 일 예로, 코드 속성 분석부(510)는 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성명 그룹을 "~코드", "~여부", "~유무", "~유형"와 같이 클러스터링 할 수 있고, 컬럼명이 "~TY", "~TYPE", "~CD", "~CODE"와 같이 끝나는 속성 명으로 클러스터링함으로써 적어도 하나의 코드 속성명 그룹을 선정할 수 있다.
또한, 메타 코드 관리부(520)는 그 다음, 메타 코드 관리부(520)는 프로파일링할 코드 속성을 결정할 수 있다. 예를 들어, 메타 코드 관리부(520)는 메타 코드의 코드 인스턴스가 동일한 경우에는 코드 속성 명을 일치시킬 수 있다. 예를 들어, "~여부" 속성명을 "~코드"로 변경하거나 그 반대로 변경함으로써 코드 속성명을 일치시킬 수 있다. 또한, 코드값명을 모르거나 사용하지 않는 경우 통일된 특정 값 예컨대, "OO코드값"으로 변경할 수 있다.
이를 통해, 메타 코드 관리부(520)는 현재 상태(as-is) 코드 속성에 대해, 메타로 관리하는 공통 코드, Y 또는 N으로 관리하는 여부 속성, 개별 테이블에서 관리하는 식별자 코드 및 코드값명을 사용하지 않고 코드값만 저장하는 경우의 각 상태에 대한 코드 속성을 정리하여, 현재 상태(as-is)의 코드 속성 목록을 작성할 수 있다.
그 다음, 메타 코드 관리부(520)는 코드 속성에 대한 메타 코드를 매핑하여 속성 코드를 프로파일링 할 수 있다. 일 예로, 메타 코드 관리부(520)는 현재 상태(as-is) 코드에 대해 코드 목록에 대한 "번호", "DBMS명", "엔터티명", "테이블명", "속성명", "컬럼명", "속성순서", "데이터 타입", "PK여부", "FK여부", "null여부", "사용 여부"와 같은 코드 속성을 도출할 수 있다. 또한, 그 다음, 메타 코드 관리부(520)는 도출된 각 코드 속성에 대해 현재 상태(as-is) 메타 코드를 매핑할 수 있다. 이를 통해, 메타 코드 관리부(520)는 테마 시스템 또는 코드 테이블에 기재된 코드 속성을 메타 코드를 통하여 간편하게 관리할 수 있다.
그 다음, 메타 코드 관리부(520)는 최종 코드 속성으로 도출된 속성에 대한 코드 값을 프로파일링 할 수 있다. 예를 들어, 메타 코드 관리부(520)는 코드 표준화 전 과정에서 반복적으로 사용되는 기초 데이터인 코드 표준화 기초데이터, 널(null) 값에 해당하는 코드 값에 대해 분석한 널(null)값 분석 결과 및 메타 코드를 상호 반영한 결과를 결합함으로써 코드값을 프로파일링 할 수 있다.
일 예로, 현재 상태(as-is) 코드 정의서에서 널(null) 값이 정의되지 않은 경우, 널(null)을 의미하는 특수문자 또는 미리 정의된 문자(예: 00 또는 99)로 대체할 수 있으며, 향후(to-be) 코드에서 사용하지 않는 코드 값은 이 단계에서 삭제할 수 있다. 또한, 메타 코드가 존재하지 않는 경우에는 향후(to-be) 코드에서 사용하지 않는 코드 값으로서 삭제되는 경우를 제외하고는, 향후(to-be) 메타 코드에 추가하여 코드 값을 프로파일링 할 수 있다.
그 다음, 메타 코드 관리부(520)는 메타 코드 정의서를 생성하되, 반복해서 사용된 속성 코드 값에 대해 메타 코드에 반영되지 않은 코드값이 존재하는지 확인하여, 메타 코드 인스턴스에 코드 속성에서 사용된 코드 인스턴스 전체가 포함되도록 할 수 있다. 이를 통해, 메타 코드의 정의를 분명하게 할 수 있으며, 이후 단계인 코드 오너십 정의를 원활하게 완료할 수 있다.
그 다음, 메타 코드 관리부(520)는 프로파일링 결과가 반영된 모든 메타 코드에 대해 오너십을 지정하여 관리할 수 있다. 일 예로, 메타 코드 관리부(520)는 메타 코드 오너십을 내부 또는 외부로 구분하여 관리할 수 있다. 예를 들어, '내부'로 정의된 메타 코드 오너십은 내부에서 정의한 메타 코드를 의미할 수 있으며, 하나의 메타 코드를 여러 곳에서 변경하지 못하도록 관리 주체(예: 부서, 팀, 주제 영역)를 결정할 수 있다. 이때, 메타 코드에 대한 오너십이 없는 주체(예: 부서, 팀, 주제 영역)는 코드 사용 또는 조회는 가능하지만 변경은 불가능할 수 있으며, 메타 코드 오너십은 선점 등록을 의미하는 것이 아니라, 주 업무를 기준으로 결정될 수 있다. 예컨대, 인사관리부서(HR, Human Resource)에서는 다른 조직의 코드 선점 여부와 무관하게 인사와 관련된 업무에 대한 메타 코드의 오너십을 가질 수 있다.
다른 예로, 메타 코드 관리부(520)는 '외부'로 정의된 메타 코드 오너십은 외부에서 수신 받은 데이터(속성) 중에서 코드로서 사용되는 데이터를 메타 코드로 등록할 때, 또는 내부 데이터에 의해 외부의 기준을 코드로서 적용하여 메타 코드로 등록할 때 정의되는 메타 코드를 의미할 수 있다. 이때, 코드 인스턴스는 외부에서 정의된 대로 사용하며, 이를 변경하지 않을 수 있으나, 이에 제한되지 않고 내부 기준에 의해 변경될 수 있다.
또한, '외부'로 정의된 메타 코드 오너십과 관련하여 메타 코드 관리부(520)는 외부로부터 수신된 소스(source)를 별도의 출처 표시로서 관리할 수 있다.
이때, 메타 코드 관리부(520)는 '외부'로 정의된 메타 코드 오너십은 시스템에서 최초로 해당 코드를 외부로부터 수신한 주체가 가질 수 있다. 이때, 메타 코드 관리부(520)는 해당 주체의 오너십 변경 명령에 따라, 최초 오너십을 가진 주체가 지정하는 다른 주체에게 오너십 권한을 부여할 수 있다. 한편, '외부'로 정의된 메타 코드에서 코드 값만 저장하며 코드값명은 사용하지 않거나 알 수 없는 경우, 공통 코드로 정의하지 않고 "~코드값"도메인을 사용하여 관리할 수 있다.
이를 통해, 메타 코드 관리부(520)는 일괄적이며 안정적인 코드 오너십 관리를 수행할 수 있다.
코드 매핑부(530)는 또한, 코드 매핑부(530)는 메타 코드 오너십이 할당되고 나면, 메타 코드 매핑 정의서를 생성할 수 있다. 메타 코드 매핑 정의서는 현재 상태(as-is) 코드값에 대해 메타 코드 인스턴스 정비를 수행함으로써 이뤄질 수 있으며, 현재 상태(as-is) 기준의 코드 정보와 향후(to-be)코드 정보가 매핑된 산출물을 의미할 수 있다.
예를 들어, 코드 매핑부(530)는 메타 코드의 코드 인스턴스가 동일한 경우에는 코드 속성명을 일치시킴으로써 메타 코드를 통합할 수 있으며(예: 메타 코드 인스턴스가 동일한 경우 어느 하나를 삭제), 메타 코드 인스턴스가 두 개이고 어느 하나가 부(不)의 의미일 때 메타 코드에서 삭제할 수 있고, 불명확한 메타 코드값명은 명확한 메타 코드값명으로 정정하고, 메타 코드의 코드 인스턴스가 상이한데, 코드 속성명이 동일한 경우 신규 메타 코드를 생성할 수 있으며, 코드 인스턴스가 상호 포함관계에 있을 때, 참조 메타 코드로 정의할 수 있고, 코드 인스턴스에 성격이 상이한 코드 유형이 존재하는 경우 하나의 유형을 분리할 수 있다. 또한, 개별 개체 성격의 메타 코드는 별도의 엔터티에서 관리하도록 설계함으로써 개별 코드를 생성할 수 있다.
한편, 코드 매핑부(530)는 코드값명을 기준으로 메타 코드 인스턴스를 비교함으로써 메타 코드를 분석할 수 있다. 예를 들어, 코드 매핑부(530)는 코드 인스턴스가 100% 일치하여 완전히 동일한 경우 또는 동일한 것으로 추정할 수 있는 경우, 코드 값 상호가 일치할 경우, 일부 코드 값은 상이하지만 코드값명이 동일한 경우, 코드 인스턴스가 100% 동일하지만 코드 속성 명이 상이한 경우 코드를 통합하여 표준화를 수행할 수 있다.
또한, 코드 인스턴스가 100% 동일한 것은 아니지만, 단순히 코드값명의 표현 방식에 의해 달라진 경우, 코드값명을 표준화함으로써 코드 표준화를 수행할 수 있다. 또한, 코드 매핑부(530)는 코드 인스턴스가 100% 동일한 것은 아니나 서로 포함관계인 경우, 참조 코드 개념이 존재하는 경우 해당 코드를 참조 코드로 지정하여 코드 표준화를 수행하고, 참조 코드를 허용하지 않는 경우 서로 다른 코드로 정의할 수 있다.
또한, 코드 매핑부(530)는 코드 인스턴스의 유사도가 50% 이상이면서 상호 포함 관계가 성립되지 않는 경우 상호 다른 코드로 분류하여 표준화를 수행할 수 있다.
이때, 코드 매핑부(530)는 미리 학습된 데이터 유사성 분석 알고리즘을 기반으로 메타 코드 데이터의 유사성 분석을 수행할 수 있다. 일 예로, 코드 매핑부(530)는 메타 코드의 유사성 분석을 위해 문자열 비교 알고리즘 또는 자연어 처리 알고리즘 기반의 학습 모델을 사용할 수 있다. 예를 들어, 코드 매핑부(530)는 Levenshtein 거리 편집 알고리즘을 사용하여, 코드 인스턴스 상호간의 거리가 0인경우 문자열은 동일한 것으로 판단하고, 거리가 멀수록 문자열이 상호 상이한 것으로 판단할 수 있다.
또한, 코드 매핑부(530)는 TF-IDF(Term Frequency-Inverse Document Frequency) 방법을 사용하여 텍스트의 유사도를 벡터로 표현할 수 있다. 텍스트를 벡터로 변환한 이후 텍스트 사이의 코사인 유사도를 산출함으로써 텍스트 간의 유사도를 확인할 수 있다. 예컨대, 코사인 유사도가 1이면 코드는 동일한 것으로 판단될 수 있으며, 0인경우 완전히 상이한 것임을 의미할 수 있다.
또한, 코드 매핑부(530)는 Word2Vec, FastText 또는 BERT와 같은 기술을 사용하여 단어나 구문을 벡터로 변환할 수 있다.
이러한 벡터 간의 유사성은 코사인 유사성 또는 기타 거리 측정을 사용하여 계산할 수 있으며, 이는 의미론적 의미를 구분할 수 있으므로 "은행"과 "금융 기관"은 그 텍스트 표현이 상당히 다르더라도 유사 또는 동일한 것으로 간주될 수 있다.
일 예로, 코드 매핑부(530)는 메타 코드를 분석 및 정비하면서, 텍스트 정규화를 수행할 수 있다. 일 예로, 메타 코드내 텍스트를 모두 동일 언어(예: 한글)로 변환하고, 개별 단어 또는 토큰으로 분할하여 토큰화 할 수 있다. 그 다음, 코드 매핑부(530)는 의미론적 유사성(예: Word2Vec, FastText 또는 BERT) 분석 알고리즘을 사용하여 미리 학습된 텍스트 학습 모델에 따라 분할된 텍스트 토큰에 대한 벡터를 생성할 수 있다.
그 다음, 코드 매핑부(530)는 유사성 분석 알고리즘에 따라 산출된 유사선 점수를 미리 정해진 임계값(예: 100%, 70%, 또는 50%)과 비교하여 코드 유사성을 비교할 수 있다.
한편, 코드 매핑부(530)는 메타 코드 매핑 정의서에서 개별 코드를 도출할 수 있다. 여기서 개별 코드란 표준화를 진행하지 않고 공통코드에서 분리하여 별도의 엔터티에서 관리하도록 설계된 것으로, 예컨대, 서로 다른 직무를 갖는 부서에서 개별적으로 요구되는 코드에 대하여는 표준화에 따른 통합을 진행하지 않고 개별적으로 관리되도록 함으로써, 현재 상태(as-is) 코드 속성 목록에 표기하여 관리할 수 있다. 예컨대, 회사내 개별 부서 코드, 지점 코드 등이 여기에 해당될 수 있다.
개별 코드 도출이 완료되면, 코드 매핑부(530)는 향후(to-be) 메타 코드 정의서를 생성할 수 있다. 즉, 향후(to-be)에 사용될 코드값, 코드값명을 최종적으로 확정하고, 도출된 향후(to-be) 메타 코드에 대해 오너십을 지정한 이후 향후(to-be) 메타 코드 정의서로 관리할 수 있다. 이때, 확정된 메타 코드에 대해서는 메타 시스템에 등록하여 전사에서 공유될 수 있도록 하고, 오너십의 존재로 인해 권한이 없는 부서에서의 변경 또는 수정을 방지할 수 있다.
또한, 코드 매핑부(530)는 현재 상태(as-is) 코드 속성에 대해 향후(to-be) 메타 코드에 해당하는 사항을 지정하여 매핑 관계를 관리할 수 있다. 예컨대, 향후(to-be) 메타 코드 부분에 지정된 코드 유형은 향후(to-be) 메타 코드 정의서에 존재하도록 관리할 수 있으며, 코드 매핑부(530)는 현재 상태(as-is) 코드 인스턴스를 매핑할 수 있다. 다시 말하면, 코드 매핑부(530)는 현태 상태의 코드 인스턴스와 향후(to-be) 메타 코드 인스턴스를 매핑하여 실제 데이터를 상호 관리할 수 있다. 이를 통해, 시스템 관리자는 현재 상태(as-is) 코드와 향후(to-be) 코드를 일괄로 확인할 수 있으며, 관리의 용이성을 확보할 수 있다.
도 6은 도 1에 따른 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버에 대한 하드웨어 구성도이다.
도 6을 참조하면, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버(600)는, 적어도 하나의 프로세서(processor, 610) 및 적어도 하나의 프로세서(610)가 적어도 하나의 단계를 수행하도록 지시하는 명령어들(instructions)을 저장하는 메모리(memory, 620)를 포함할 수 있다.
여기서 적어도 하나의 프로세서(610)는 중앙 처리 장치(central processing unit, CPU), 그래픽 처리 장치(graphics processing unit, GPU), 또는 본 발명의 실시예들에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(620) 및 저장 장치(660) 각각은 휘발성 저장 매체 및 비휘발성 저장 매체 중에서 적어도 하나로 구성될 수 있다. 예를 들어, 메모리(620)는 읽기 전용 메모리(read only memory, ROM) 및 랜덤 액세스 메모리(random access memory, RAM) 중에서 적어도 하나로 구성될 수 있다.
또한, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버(600)는, 무선 네트워크를 통해 통신을 수행하는 송수신 장치(transceiver, 630)를 포함할 수 있다. 또한, 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버 (600)는 입력 인터페이스 장치(640), 출력 인터페이스 장치(650), 저장 장치(660) 등을 더 포함할 수 있다. 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버(600)에 포함된 각각의 구성 요소들은 버스(bus, 670)에 의해 연결되어 서로 통신을 수행할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
또한, 상술한 방법 또는 장치는 그 구성이나 기능의 전부 또는 일부가 결합되어 구현되거나, 분리되어 구현될 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 필드로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (5)

  1. 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법에 있어서,
    대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 서버가,
    메타 시스템에 등록된 메타 코드 또는 수신된 메타 코드에 대한 중복 또는 오류를 검출하여 정비 작업을 수행하는 단계;
    현재 상태(as-is) 코드 속성에 대해 사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성 명 그룹을 기초로, 프로파일링 할 코드 속성을 선정하여 상기 코드 속성에 대한 표준화 작업을 수행함으로써 속성 코드 정의서를 생성하는 단계;
    상기 현재 상태(as-is) 코드 속성에 대한 메타 코드를 매핑하여 상기 속성 코드를 프로파일링함으로써 메타 코드 정의서를 생성하는 단계;
    프로파일링 결과가 반영된 모든 메타 코드에 대한 메타 코드 오너십을 지정하는 단계; 및
    상기 현재 상태(as-is) 코드 정보와 향후(to-be) 코드 정보가 매핑된 메타 코드 매핑 정의서를 생성하는 단계;를 포함하고,
    상기 메타 코드 매핑 정의서를 생성하는 단계는,
    메타 코드 인스턴스를 정비하여 코드 표준화를 진행하되,
    상기 메타 코드 인스턴스가 동일한 경우 코드 속성 명을 일치시켜 메타 코드를 통합하고,
    상기 메타 코드 인스턴스가 두 개이고 서로 상반된 의미를 갖는 경우 메타 코드에서 삭제하고,
    상기 메타 코드 인스턴스가 상이한, 적어도 둘 이상의 메타 코드의 코드 속성명이 동일한 경우 상기 적어도 둘 이상의 메타 코드 중 적어도 어느 하나의 메타 코드 명을 변경하여 신규 메타 코드를 생성하고,
    공통 코드 외에 개별 개체 메타 코드는 별도 엔터티에서 관리되도록 개별 코드를 생성하는 단계;를 포함하고,
    상기 코드 속성에 대한 표준화 작업을 수행하는 단계는,
    동일한 코드 인스턴스를 사용하는 코드에 대한 코드 속성명을 변경하거나 코드 속성 명에 대한 수식어를 더하여 코드 속성명을 변경하여 코드 속성 명을 일치 시키고,
    서로 다른 코드가 서로 다른 코드 인스턴스를 가지면서, 코드 속성이 동일한 경우, 상기 서로 다른 코드가 구분되도록 어느 다른 하나의 코드의 코드 속성명을 변경하는 단계;를 포함하되,
    미리 학습된 데이터 유사성 분석 알고리즘인 Word2Vec, FastText 또는 BERT 중 어느 하나를 기반으로 메타 코드 데이터의 코드 인스턴스 유사성 분석을 수행하여 유사성 점수를 산출하는 단계;
    산출된 상기 유사성점수를 미리 정해진 임계값과 비교하여 코드 유사성을 비교하는 단계;
    산출된 상기 코드 인스턴스의 유사성 점수가 50% 이상이면서 상호 포함 관계가 성립되지 않는 경우 상호 다른 코드로 분류하여 코드 표준화를 수행하는 단계;를 포함하는,
    대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법.
  2. 삭제
  3. 삭제
  4. 청구항 1에서,
    속성 코드를 프로파일링함으로써 메타 코드 정의서를 생성하는 단계는,
    사용 패턴에 따라 미리 정해진 적어도 하나의 코드 속성명 그룹을 "~코드", "~여부", "~유무", "~유형"중 어느 하나로 클러스터링하는 단계; 및
    적어도 둘 이상의 메타 코드의 코드 인스턴스가 동일한 경우 코드 속성명을 일치시키거나, 또는 상기 메타 코드의 코드 인스턴스가 상이하고 코드 속성명이 동일한 경우 적어도 하나의 상기 메타 코드의 코드 속성명을 변경하는 단계;를 포함하는,
    대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법.
  5. 청구항 1에서,
    상기 메타 코드 오너십을 지정하는 단계는,
    상기 메타 시스템 내부에서 정의된 메타 코드에 대한 오너십은 코드와 관련된 주 업무 담당 주체에게 내부 코드 오너십을 부여하고,
    상기 메타 시스템 외부에서 정의된 메타 코드에 대한 오너십은 상기 외부에서 정의된 메타 코드를 최초로 수신 받은 주체에게 외부 코드 오너십을 부여하는 단계;를 더 포함하는,
    대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법.
KR1020230152979A 2023-11-07 2023-11-07 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버 KR102660914B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230152979A KR102660914B1 (ko) 2023-11-07 2023-11-07 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230152979A KR102660914B1 (ko) 2023-11-07 2023-11-07 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버

Publications (1)

Publication Number Publication Date
KR102660914B1 true KR102660914B1 (ko) 2024-04-24

Family

ID=90883996

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230152979A KR102660914B1 (ko) 2023-11-07 2023-11-07 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버

Country Status (1)

Country Link
KR (1) KR102660914B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102099069B1 (ko) 2020-02-27 2020-04-08 김기창 하이브리드 erd 관리 시스템 및 그 방법
US20210133083A1 (en) * 2019-10-31 2021-05-06 Salesforce.Com, Inc. Identification of code ownership through test coverage in database systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210133083A1 (en) * 2019-10-31 2021-05-06 Salesforce.Com, Inc. Identification of code ownership through test coverage in database systems
KR102099069B1 (ko) 2020-02-27 2020-04-08 김기창 하이브리드 erd 관리 시스템 및 그 방법

Similar Documents

Publication Publication Date Title
US20240061873A1 (en) Massive scale heterogeneous data ingestion and user resolution
US10347019B2 (en) Intelligent data munging
KR102029514B1 (ko) 변형 토큰 네트워크들에 기반한 데이터 클러스터링
CN105446966B (zh) 生成关系数据转换为rdf格式数据的映射规则的方法和装置
US9582539B1 (en) Optimizing database queries using reusable subqueries
Castelo Branco et al. Matching business process workflows across abstraction levels
CN106294520B (zh) 使用从文档提取的信息来标识关系
JP2019502979A (ja) 構造化されたマルチフィールドファイルのレイアウトの自動解釈
US20160132830A1 (en) Multi-level score based title engine
JP2017041171A (ja) テストシナリオ生成支援装置およびテストシナリオ生成支援方法
US20140156591A1 (en) Knowledge catalysts
Castellanos et al. A framework for alignment of data and processes architectures applied in a government institution
Wenzel Unique identification of elements in evolving software models
US20130006683A1 (en) System and method of managing testing for a healthcare systems transition
Baumgrass et al. Bridging the gap between role mining and role engineering via migration guides
KR102660914B1 (ko) 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버
Mazón et al. A set of QVT relations to assure the correctness of data warehouses by using multidimensional normal forms
CN112699245A (zh) 预算管理知识图谱的构建方法、装置及应用方法、装置
Jordan et al. Autoarx: Digital twins of living architectures
Chein et al. Sudocad: a knowledge-based system for the author linkage problem
KR20130109601A (ko) 온톨로지 개체 유사성 판단 방법 및 이를 이용한 온톨로지 시스템
Zhou Modeling and design of entity identity information in entity resolution systems
US9330115B2 (en) Automatically reviewing information mappings across different information models
JP2017010376A (ja) マートレス検証支援システムおよびマートレス検証支援方法
US20200151249A1 (en) Automated Constraint Extraction and Testing

Legal Events

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