KR20150064599A - 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체 - Google Patents

멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체 Download PDF

Info

Publication number
KR20150064599A
KR20150064599A KR1020130149490A KR20130149490A KR20150064599A KR 20150064599 A KR20150064599 A KR 20150064599A KR 1020130149490 A KR1020130149490 A KR 1020130149490A KR 20130149490 A KR20130149490 A KR 20130149490A KR 20150064599 A KR20150064599 A KR 20150064599A
Authority
KR
South Korea
Prior art keywords
common code
standard
custom
code
generating
Prior art date
Application number
KR1020130149490A
Other languages
English (en)
Other versions
KR101570980B1 (ko
Inventor
임항섭
강경인
김현준
이은화
최환준
Original Assignee
주식회사 엘지씨엔에스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 엘지씨엔에스 filed Critical 주식회사 엘지씨엔에스
Priority to KR1020130149490A priority Critical patent/KR101570980B1/ko
Publication of KR20150064599A publication Critical patent/KR20150064599A/ko
Application granted granted Critical
Publication of KR101570980B1 publication Critical patent/KR101570980B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 멀티 테넌트 환경의 공통 코드 관리 방법에 관한 것으로, 멀티 테넌트 환경의 공통 코드 관리 서버에서 수행되는 공통 코드 관리 방법에 있어서, 관리 단말을 통해 어플리케이션에 대한 표준 공통 코드를 생성하는 단계, 상기 어플리케이션을 이용하는 테넌트 단말을 통해 상기 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 단계 및 상기 표준 공통 코드 및 상기 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성하는 단계를 포함한다. 따라서 테넌트 별로 제공되는 어플리케이션의 공통 코드에 대한 커스터마이징을 제공할 수 있다.

Description

멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체{METHOD FOR MANAGEMENT COMMON CODE OF MULTI-TENANE ENVIRONMENT, SERVER PERFORMING THE SAME AND STORAGE MEDIA STORING THE SAME}
본 발명은 멀티 테넌트 환경의 공통 코드 관리 기술에 관한 것으로, 보다 상세하게는, 테넌트 별로 제공되는 어플리케이션의 공통 코드에 대한 커스터마이징을 제공할 수 있는 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체에 관한 것이다.
공통 코드는 시스템에서 사용되는 록업 값(Lockup Value) 데이터이다. 록업 값 데이터는 개체로서의 의미보다 다른 개체에서 참조하여 보여질 의미로 사용되는 데이터이며, 보여질 명칭의 유연성과 일괄성을 위해 코드화하여 사용한다. 공통 코드는 국문과 영문, 예명을 지정하여 각 필요한 명칭을 제공하고, 시스템 코드, 업무 코드, 코드 그룹, 코드의 타입을 구분할 수 있다.
한국등록특허 제10-0663576호는 다수의 시스템에서 관리중인 공통코드를 분산 객체를 이용한 중앙 집중형 코드 관리 방법 및 장치를 개시한다. 이러한 중앙 집중형 코드 관리 방법은 시스템 운용자의 오류를 방지하고 시스템의 코드 변경 서버 처리기에 의해 각각의 시스템에서 코드가 변경되어 코드 변경을 실시간으로 처리할 수 있다.
한국공개특허 제10-2010-0014546호는 멀티-테넌트 데이터 공유 환경에서 메모리 및 성능의 최적화를 위해 공유되는 커스터마이즈 가능한 데이터를 캐싱할 수 있는 커스터마이즈 가능한 멀티-테넌트 데이터의 메모리 내 캐싱 방법을 개시한다. 이러한 캐싱 방법은 테넌트 데이터 저장소에서 데이터를 해당 테넌트에 제공하도록 하고, 요청된 데이터가 이미 캐싱되어 있는 경우 테넌트 데이터 저장소에 액세스할 필요가 없어 메모리 및 시스템 자원을 절감할 수 있다.
업무 수행에 대한 비즈니스 로직은 테넌트 별로 다르기 때문에 비즈니스 로직에 대한 수정 및 변경이 요구된다. 이를 지원하기 위해서는 코드 정보에 대한 변경이 필요한데, 테넌트의 수가 증가하면 개발 및 관리가 비효율적으로 이루어지고 SaaS(Soft As A Service)의 조건을 만족시키지 못한다.
한국등록특허 제10-0663576호 한국공개특허 제10-2010-0014546호
본 발명의 일 실시예는 테넌트 별로 제공되는 어플리케이션의 공통 코드에 대한 커스터마이징을 제공할 수 있는 공통 코드 관리 서버를 제공하고자 한다.
본 발명의 일 실시예는 테넌트 별로 설정된 어플리케이션의 공통 코드에 대한 언어에 따라 어플리케이션 관리 화면을 제공할 수 있는 공통 코드 관리 서버를 제공하고자 한다.
본 발명의 일 실시예는 테넌트 별로 어플리케이션의 공통 코드를 제공할 수 있는 공통 코드 관리 서버를 제공하고자 한다.
실시예들 중에서, 공통 코드 관리 방법은 멀티 테넌트 환경의 공통 코드 관리 서버에서 수행되는 공통 코드 관리 방법에 있어서, 관리 단말을 통해 어플리케이션에 대한 표준 공통 코드를 생성하는 단계, 상기 어플리케이션을 이용하는 테넌트 단말을 통해 상기 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 단계 및 상기 표준 공통 코드 및 상기 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성하는 단계를 포함한다.
일 실시예에서, 상기 표준 공통 코드를 생성하는 단계는 상기 관리 단말로부터 상기 표준 공통 코드에 대한 언어 정보를 입력받아 상기 표준 공통 코드의 사용자 언어를 결정하는 단계를 포함할 수 있다.
상기 표준 공통 코드를 생성하는 단계는 상기 결정된 표준 공통 코드의 사용자 언어에 따라 상기 어플리케이션의 공통 코드 관리 화면에 대한 언어를 변환하는 단계를 포함할 수 있다.
일 실시예에서, 상기 표준 공통 코드를 생성하는 단계는 상기 관리 단말로부터 상기 표준 공통 코드에 대한 계층 정보를 수신하여 상기 계층 정보에 따라 상기 표준 공통 코드의 레벨을 결정하는 단계를 포함할 수 있다.
상기 표준 공통 코드를 생성하는 단계는 상기 표준 공통 코드에 대한 메타데이터를 개발 테이블에 저장하는 단계를 포함할 수 있다.
일 실시예에서, 상기 커스텀 공통 코드를 생성하는 단계는 상기 표준 공통 코드에 대한 커스터마이징 가능 여부를 체크하는 단계를 포함할 수 있다.
상기 커스텀 공통 코드를 생성하는 단계는 상기 표준 공통 코드에 대한 커스터마이징이 가능하면 상기 표준 공통 코드를 상기 테넌트 단말에 상속하는 단계를 포함할 수 있다.
일 실시예에서, 상기 커스텀 공통 코드를 생성하는 단계는 상기 상속된 표준 공통 코드와 상기 커스텀 공통 코드를 연결하여 저장하는 단계를 포함할 수 있다.
상기 커스텀 공통 코드를 생성하는 단계는 상기 커스텀 공통 코드에 대한 메타데이터를 개발 테이블에 저장하는 단계를 포함할 수 있다.
상기 테이블을 생성하는 단계는 개발 테이블에 대해 상기 표준 공통 코드에 대한 메타데이터의 변경을 수행하여 운영 테이블에 반영하는 단계를 포함할 수 있다.
상기 메타데이터는 상기 관리 단말을 사용하는 서비스 관리자의 어플리케이션 아이디, 상기 표준 공통 코드의 아이디, 상기 표준 공통 코드의 사용자 언어에 대한 메시지 아이디 및 상기 표준 공통 코드 식별 코드값을 포함할 수 있다.
실시예들 중에서, 공통 코드 관리 서버는 멀티 테넌트 환경의 공통 코드 관리 서버에 있어서, 관리 단말을 통해 어플리케이션에 대한 표준 공통 코드를 생성하는 표준 공통 코드 생성부, 상기 어플리케이션을 이용하는 테넌트 단말을 통해 상기 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 커스텀 공통 코드 생성부 및 상기 표준 공통 코드 및 상기 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성하는 테이블 생성부를 포함할 수 있다.
실시예들 중에서, 공통 코드 관리 방법에 관한 컴퓨터 프로그램을 저장하는 기록매체는 멀티 테넌트 환경의 공통 코드 관리 서버에서 수행되는 공통 코드 관리 방법에 관한 컴퓨터 프로그램을 저장하는 기록매체에 있어서, 관리 단말을 통해 어플리케이션에 대한 표준 공통 코드를 생성하는 기능, 상기 어플리케이션을 이용하는 테넌트 단말을 통해 상기 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 기능 및 상기 표준 공통 코드 및 상기 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성하는 기능을 포함할 수 있다.
본 발명의 일 실시예에 따른 공통 코드 관리 방법은 테넌트 별로 제공되는 어플리케이션의 공통 코드에 대한 커스터마이징을 제공할 수 있다.
본 발명의 일 실시예에 따른 공통 코드 관리 방법은 테넌트 별로 설정된 어플리케이션의 공통 코드에 대한 언어에 따라 어플리케이션 관리 화면을 제공할 수 있다.
본 발명의 일 실시예에 따른 공통 코드 관리 방법은 테넌트 별로 어플리케이션의 공통 코드를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 멀티 테넌트 환경의 공통 코드 관리 시스템을 설명하는 블록도이다.
도 2는 도 1에 있는 공통 코드 관리 서버를 설명하는 블록도이다.
도 3은 도 1에 있는 공통 코드 관리 서버에서 수행되는 공통 코드 관리 과정을 설명하는 순서도이다.
도 4는 도 1에 있는 공통 코드 관리 서버에서 관리하는 어플리케이션의 공통 코드 스키마를 설명하는 도면이다.
도 5는 도 1에 있는 공통 코드 관리 서버에서 생성하는 어플리케이션의 공통 코드에 대한 메타데이터 테이블을 설명하는 도면이다.
도 6은 도 1에 있는 공통 코드 관리 서버에서 생성하는 어플리케이션의 공통 코드에 대한 메시지 테이블을 설명하는 도면이다.
도 7a 및 7b는 도 1에 있는 공통 코드 관리 서버에서 제공하는 어플리케이션의 공통 코드 관리 화면을 예시한 도면이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있으며, 또한, 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 멀티 테넌트 환경의 공통 코드 관리 시스템을 설명하는 블록도이다.
도 1을 참조하면, 멀티 테넌트 환경의 공통 코드 관리 시스템(100)은 공통 코드 관리 서버(110), 관리 단말(120) 및 테넌트 단말(130)을 포함한다.
공통 코드 관리 서버(110)는 멀티 테넌트가 가능한 온라인 네트워크 환경을 통해 적어도 하나의 관리 단말(120) 및 적어도 하나의 테넌트 관리자 단말(120)과 동시에 연결될 수 있다. 여기에서, 공통 코드 관리 서버(110)는 단일 컴퓨팅 장치로 제한되지 않고 분산 처리 가능한 복수의 컴퓨팅 장치들로 구현될 수 있다.
공통 코드 관리 서버(110)는 적어도 하나의 관리 단말(120)로부터 특정 어플리케이션의 표준 공통 코드를 수신하여 표준 공통 코드를 적어도 하나의 테넌트 단말(130)에 제공할 수 있다. 어플리케이션은 컴퓨팅 장치에 설치되어 특정 잡업을 위해 실행 가능한 응용 소프트웨어이다.
공통 코드 관리 서버(110)는 적어도 하나의 테넌트 단말(130)을 통해 표준 공통 코드가 변경되어 커스텀 공통 코드가 생성되면 표준 공통 코드에 대한 메타데이터를 변경하여 저장할 수 있다.
공통 코드 관리 서버(110)는 적어도 하나의 관리 단말(120) 또는 적어도 하나의 테넌트 단말(130)로부터 송수신한 공통 코드의 데이터를 물리적인 기록 매체(예를 들어, CD-ROM 등)에 구현하거나 또는 전자적인 기록 매체(예를 들어, 캐리어 웨이브 등)에 구현할 수 있다.
관리 단말(120)은 네트워크를 통해 공통 코드 관리 서버(110)와 연결될 수 있다. 예를 들어, 관리 단말(120)은 중앙처리장치, 메모리 장치 및 입출력 수단을 구비한 PC, 스마트폰, PDA(Personal Digital Assistant), 태블릿 PC와 같은 컴퓨팅 장치에 해당할 수 있다.
관리 단말(120)은 공통 코드 관리 서버(110)에 접속하거나 또는 통신을 유지하여 서비스 관리자에 의해 공통 코드 관리 화면에서 생성된 새로운 표준 공통 코드를 송신할 수 있다.
테넌트 단말(130)은 네트워크를 통해 공통 코드 관리 서버(110)와 연결될 수 있다. 예를 들어, 테넌트 단말(130)은 중앙처리장치, 메모리 장치 및 입출력 수단을 구비한 PC, 스마트폰, PDA(Personal Digital Assistant), 태블릿 PC와 같은 컴퓨팅 장치에 해당할 수 있다.
테넌트 단말(130)은 공통 코드 관리 서버(110)에 접속하거나 또는 통신을 유지하여 테넌트 관리자에 의해 공통 코드 관리 화면에서 수정되어 생성된 커스텀 공통 코드를 송신할 수 있다.
도 2는 도 1에 있는 공통 코드 관리 서버를 설명하는 블록도이다.
도 2를 참조하면, 공통 코드 관리 서버(110)는 표준 공통 코드 생성부(210), 커스텀 공통 코드 생성부(220), 테이블 생성부(230) 및 제어부(240)를 포함한다.
표준 공통 코드 생성부(210)는 관리 단말(120)을 통해 어플리케이션에 대한 표준 공통 코드를 생성한다.
공통 코드는 표준 공통 코드 및 커스텀 공통 코드로 구분된다.
표준 공통 코드는 관리 단말(120)을 사용하는 서비스 관리자에 의해 생성 및 관리되는 데이터이며, 서비스 관리자는 어플리케이션을 개발한 기업 또는 단체에 있는 적어도 하나의 내부 인물에 해당한다. 서비스 관리자에게는 생성(Create), 읽기(Read), 갱신(Update) 및 삭제(Delete)을 포함하는 표준 공통 코드에 대한 접근 권한이 부여되고, 테넌트 관리자에게는 읽기(Read)를 포함하는 표준 공통 코드에 대한 접근 권한이 부여된다.
커스텀 공통 코드는 테넌트 단말(130)을 사용하는 테넌트 관리자에 의해 생성 및 관리되는 데이터로, 서비스 관리자에 의해 생성된 표준 공통 코드에 대한 수정 과정 통해 생성되며, 테넌트 관리자는 어플리케이션을 사용하는 기업 또는 단체에 있는 적어도 하나의 내부 인물에 해당한다. 테넌트 관리자에게는 생성(Create), 읽기(Read), 갱신(Update) 및 삭제(Delete)를 포함하는 표준 공통 코드에 대한 접근 권한이 부여되고, 서비스 관리자에게는 표준 공통 코드에 대한 접근 권한이 부여되지 않는다.
표준 공통 코드 생성부(210)는 서비스 관리자로부터 표준 공통 코드에 대한 언어 정보를 입력받아 표준 공통 코드의 사용자 언어를 결정할 수 있다. 언어 정보는 사용자의 언어, 국가 및 서비스 관리자 인터페이스에서 서비스 관리자가 선호하는 사항을 지정한 매개 변수의 집합이다. 예를 들어, 사용자의 언어는 언어 정보가 Ko_KR이면 한국어, En_US이면 영어, Zh_CN이면 중국어, Ja_JP이면 일본어로 결정될 수 있다.
일 실시예에서, 표준 공통 코드 생성부(210)는 서비스 관리자에 의해 표준 공통 코드가 생성될 때마다 표준 공통 코드에 대한 언어 정보를 수신하여 표준 공통 코드의 사용자 언어에 따라 어플리케이션의 공통 코드 관리 화면에 대한 언어를 변환할 수 있다. 공통 코드 관리 화면은 관리 단말(120)과 테넌트 단말(130)에 각각 제공되어 서비스 관리자와 테넌트 관리자가 공통 코드를 관리할 수 있도록 구현될 수 있다.
표준 공통 코드 생성부(210)는 서비스 관리자로부터 표준 공통 코드에 대한 계층 정보를 수신하여 계층 정보에 따라 표준 공통 코드의 레벨을 결정할 수 있다. 표준 공통 코드에 대한 계층 정보는 테넌트 관리자에 의한 공통 코드 사용 빈도수, 표준 공통 코드를 사용하는 테넌트 관리자의 수 또는 표준 공통 코드에 대한 가치에 따라 서비스 관리자에 의해 결정될 수 있다. 계층 정보에 따른 레벨은 최대 3까지 등록 가능하며, 최상위 레벨이 0, 0의 하위 레벨이 1, 1의 하위 레벨이 2, 2의 하위 레벨이 3으로 설정될 수 있다.
표준 공통 코드 생성부(210)는 표준 공통 코드에 대한 메타데이터를 개발 테이블에 저장할 수 있다. 공통 코드 관리 화면에서는 개발 테이블에 대해 서비스 관리자 또는 테넌트 관리자가 공통 코드에 대한 생성, 수정 또는 삭제 작업을 수행할 수 있다. 공통 코드 관리 서버(100)는 개발 테이블에 대해 공통 코드에 대한 생성, 수정 또는 삭제 작업이 완료되어 서비스 관리자 또는 테넌트 관리자에 의해 배포되면 공통 코드에 대한 생성, 수정 또는 삭제 작업을 운영 테이블에 반영한다.
커스텀 공통 코드 생성부(220)는 어플리케이션을 이용하는 테넌트 단말(130)을 통해 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성한다. 커스터마이징은 고객이 사용 방법과 기호에 맞춰 하드웨어나 소프트웨어를 설정하거나 또는 기능을 변경하는 것으로, 일 실시예에서, 테넌트 관리자는 서비스 관리자에 의해 생성된 표준 공통 코드를 요구사항에 맞게 커스터마이징하여 커스텀 공통 코드를 생성할 수 있다.
커스텀 공통 코드 생성부(220)는 테넌트 단말(130)로부터 표준 공통 코드에 대한 수정 요청이 수신되면 표준 공통 코드에 대한 커스터마이징 가능 여부를 체크할 수 있다. 커스터마이징 가능 여부는 표준 공통 코드에 대한 메타데이터를 통해 체크될 수 있다. 예를 들어, 커스텀 공통 코드 생성부(220)는 커스터마이징 가능 여부에 대한 표준 공통 코드에 대한 메타데이터가 1 또는 Y이면 테넌트 관리자에 의한 표준 공통 코드에 대한 커스터마이징이 가능한 것으로 판단하고, 커스터마이징 가능 여부에 대한 표준 공통 코드에 대한 메타데이터가 0 또는 N이면 테넌트 관리자에 의한 표준 공통 코드에 대한 커스터마이징이 불가능한 것으로 판단할 수 있다.
커스텀 공통 코드 생성부(220)는 표준 공통 코드에 대한 커스터마이징이 가능하면 표준 공통 코드를 테넌트 단말(130)에 상속할 수 있다. 여기에서, 상속은 커스터마이징이 가능한 표준 공통 코드(예를 들어, 부모 클래스)를 그대로 물려받아 커스텀 공통 코드(예를 들어, 자식 클래스)를 생성하는 것으로, 기존의 표준 공통 코드를 재활용하여 커스텀 공통 코드를 생성할 수 있어 비용 절감 효과를 가지고, 하나의 표준 공통 코드로부터 복수의 커스텀 공통 코드를 생성할 수 있어 다형성을 제공할 수 있다.
일 실시예에서, 커스텀 공통 코드 생성부(220)는 표준 공통 코드에 대한 커스터마이징이 가능하지 않으면 수정 요청된 표준 공통 코드에 대한 커스터마이징 불가 메시지를 테넌트 단말(130)에 송신할 수 있다.
커스텀 공통 코드 생성부(220)는 상속된 표준 공통 코드와 커스텀 공통 코드를 연결하여 저장할 수 있다. 커스텀 공통 코드 생성부(220)는 상속된 표준 공통 코드를 커스텀 공통 코드에 대한 메타데이터 중 부모 표준 공통 코드에 등록하여 표준 공통 코드와 커스텀 공통 코드를 연결할 수 있다. 표준 공통 코드와 커스텀 공통 코드의 연결은 테넌트 관리자가 커스텀 공통 코드 사용을 더 이상 원하지 않을 때 원래의 표준 공통 코드(부모 표준 공통 코드)로 원복하기 위한 용도로 사용된다.
커스텀 공통 코드 생성부(220)는 커스텀 공통 코드에 대한 메타데이터를 개발 테이블에 저장할 수 있다. 상기 기재된 바와 같이, 공통 코드 관리 화면에서는 개발 테이블에 대해 서비스 관리자 또는 테넌트 관리자가 공통 코드에 대한 생성, 수정 또는 삭제 작업을 수행할 수 있다. 공통 코드 관리 서버(100)는 개발 테이블에 대해 공통 코드에 대한 생성, 수정 또는 삭제 작업이 완료되어 서비스 관리자 또는 테넌트 관리자에 의해 배포되면 공통 코드에 대한 생성, 수정 또는 삭제 작업을 운영 테이블에 반영한다.
테이블 생성부(230)는 표준 공통 코드 및 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성한다. 메타데이터는 서비스 관리자의 어플리케이션 아이디, 표준 공통 코드의 아이디, 표준 공통 코드의 사용자 언어에 대한 메시지 아이디 및 표준 공통 코드 식별 코드값을 포함할 수 있다. 메타데이터는 도 4에서 자세하게 설명한다.
테이블 생성부(230)는 개발 테이블에 대해 표준 공통 코드에 대한 메타데이터의 변경을 수행하여 해당 변경된 사항을 운영 테이블에 반영할 수 있다. 운영 테이블은 공통 코드에 대한 생성, 수정 및 삭제 작업이 불가능하도록 설정될 수 있다.
제어부(240)는 공통 코드 관리 서버(110)의 전체적인 동작을 제어하고, 표준 공통 코드 생성부(210), 커스텀 공통 코드 생성부(220) 및 테이블 생성부(230) 간의 제어 흐름 또는 데이터 흐름을 제어할 수 있다.
도 3은 도 1에 있는 공통 코드 관리 서버에서 수행되는 공통 코드 관리 과정을 설명하는 순서도이다.
도 3을 참조하면, 표준 공통 코드 생성부(210)는 관리 단말(120)을 통해 어플리케이션에 대한 표준 공통 코드를 생성한다(단계 S301).
표준 공통 코드 생성부(210)는 서비스 관리자로부터 표준 공통 코드에 대한 언어 정보를 입력받아 표준 공통 코드의 사용자 언어를 결정할 수 있다. 언어 정보는 사용자의 언어, 국가 및 서비스 관리자 인터페이스에서 서비스 관리자가 선호하는 사항을 지정한 매개 변수의 집합이다. 예를 들어, 사용자 언어는 언어 정보가 Ko_KR이면 한국어, En_US이면 영어, Zh_CN이면 중국어, Ja_JP이면 일본어로 결정될 수 있다. 예를 들어, 도 6에서, 어플리케이션에 대한 메시지 테이블은 서비스 관리자로부터 표준 공통 코드에 대한 언어 정보가 수신되면 표준 공통 코드의 메시지 아이디(C1, C2), 언어 정보(Ko_KR, En_US) 및 언어 정보의 사용자 언어에 따른 메시지 내용(이름, name)을 포함할 수 있다.
일 실시예에서, 도 7a에서, 공통 코드 관리 화면은 관리 단말(120)에 제공되어 서비스 관리자가 표준 공통 코드를 새로 생성하거나, 삭제하거나 또는 수정하여 저장할 수 있도록 구현될 수 있다. 서비스 관리자는 공통 코드 관리 화면을 통해 표준 공통 코드의 아이디, 표준 공통 코드 식별 코드값, 커스터마이징 가능 여부 등을 입력 및 설정할 수 있다.
다른 일 실시예에서, 도 7b에서, 공통 코드 관리 화면은 테넌트 단말(130)에 제공되어 테넌트 관리자가 커스텀 공통 코드를 새로 생성하거나 또는 수정하여 저장할 수 있도록 구현될 수 있다. 테넌트 관리자는 공통 코드 관리 화면을 통해 커스텀 공통 코드의 아이디, 커스텀 공통 코드 식별 코드값, 부모 표준 공통 코드의 아이디 등을 입력 및 설정할 수 있다.
커스텀 공통 코드 생성부(220)는 어플리케이션을 이용하는 테넌트 단말(130)로부터 표준 공통 코드에 대한 수정 요청이 수신되면 표준 공통 코드에 대한 커스터마이징 가능 여부를 체크한다(단계 S302).
커스텀 공통 코드 생성부(220)는 표준 공통 코드에 대한 커스터마이징이 가능하면 테넌트 단말(130)을 통해 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성한다(단계 S303).
커스텀 공통 코드 생성부(220)는 표준 공통 코드에 대한 커스터마이징이 가능하면 표준 공통 코드를 테넌트 단말(130)에 상속할 수 있다. 여기에서, 상속은 커스터마이징이 가능한 표준 공통 코드(예를 들어, 부모 클래스)를 그대로 물려받아 커스텀 공통 코드(예를 들어, 자식 클래스)를 생성하는 것으로, 기존의 표준 공통 코드를 재활용하여 커스텀 공통 코드를 생성할 수 있어 비용 절감 효과를 가지고, 하나의 표준 공통 코드로부터 복수의 커스텀 공통 코드를 생성할 수 있어 다형성을 제공할 수 있다.
일 실시예에서, 커스텀 공통 코드 생성부(220)는 표준 공통 코드에 대한 커스터마이징이 가능하지 않으면 수정 요청된 표준 공통 코드에 대한 커스터마이징 불가 메시지를 테넌트 관리자에게 송신할 수 있다.
테이블 생성부(230)는 표준 공통 코드 및 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성한다(단계 S304).
도 4는 공통 코드에 대한 메타데이터 스키마를 설명하는 도면으로, 공통 코드에 대한 메타데이터는 컬럼 한글명, 데이터 타입, NotNull여부 및 PK(Primary Key)여부를 포함한다. 여기에서, NotNull여부가 [NN]인 컬럼은 공통 코드 테이블에 널 값(속성 또는 레코드 항목의 값이 존재하지 않음을 나타내기 위해 설정되는 값)이 허용되지 않도록 설정되고, PK여부가 Y인 컬럼은 공통 코드 테이블에 필수적으로 포함되도록 설정될 수 있다. 공통 코드에 대한 메타데이터 스키마는 데이터베이스에 존재하는 공통 코드의 구조, 내용 및 공통 코드들의 논리적, 물리적 특성에 대한 정보들을 표현하는 데이터베이스의 논리적 구조를 지칭한다.
도 5는 도 1에 있는 공통 코드 관리 서버에서 생성하는 어플리케이션의 공통 코드에 대한 메타데이터 테이블을 설명하는 도면이다.
도 5를 참조하면, 어플리케이션에 대한 공통 코드 테이블은 컬럼으로 공통 코드 아이디, 식별 코드값, 메시지 아이디, 그룹 코드 아이디, 코드 레벨, 코드 구분, 커스터마이징 가능 여부 및 부모 공통 코드를 포함한다. 공통 코드 아이디는 서비스 관리자 또는 테넌트 관리자를 식별할 수 있는 식별 기호이고, 식별 코드값은 그룹 코드 아이디가 동일한 공통 코드 중에서 유일한 값으로 서비스 관리자 또는 테넌트 관리자에 의해 생성되고, 메시지 아이디는 어플리케이션에 대한 메시지 테이블을 검색하기 위해 설정되고, 그룹 코드 아이디는 공통 코드가 동일한 서비스 관리자 또는 테넌트 관리자에 의해 생성되면 지정되고, 코드 레벨은 표준 공통 코드에 대한 중요도에 따라 결정되고, 코드 구분은 공통 코드를 생성한 관리자가 서비스 관리자인지 또는 테넌트 관리자인지에 따라 결정되고, 커스터마이징 가능 여부는 서비스 관리자에 의해 생성된 공통 코드에 한해서 커스텀 공통 코드로 수정 가능한 표준 공통 코드에 설정되며, 부모 공통 코드는 테넌트 관리자에 의해 생성된 공통 코드에 한해서 상속받는 표준 공통 코드의 아이디로 설정될 수 있다. 일 실시예에서, 공통 코드는 그룹 코드를 통해 계층구조를 나타내야 하며, 이에 따라 상위 코드와 코드 레벨을 관리할 수 있다.
상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 출원을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 공통 코드 관리 시스템
110: 공통 코드 관리 서버
120: 관리 단말
130: 테넌트 단말
210: 표준 공통 코드 생성부
220: 커스텀 공통 코드 생성부
230: 테이블 생성부
240: 제어부

Claims (20)

  1. 멀티 테넌트 환경의 공통 코드 관리 서버에서 수행되는 공통 코드 관리 방법에 있어서,
    관리 단말을 통해 어플리케이션에 대한 표준 공통 코드를 생성하는 단계;
    상기 어플리케이션을 이용하는 테넌트 단말을 통해 상기 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 단계; 및
    상기 표준 공통 코드 및 상기 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성하는 단계를 포함하는 공통 코드 관리 방법.
  2. 제1항에 있어서, 상기 표준 공통 코드를 생성하는 단계는
    상기 관리 단말로부터 상기 표준 공통 코드에 대한 언어 정보를 입력받아 상기 표준 공통 코드의 사용자 언어를 결정하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  3. 제2항에 있어서, 상기 표준 공통 코드를 생성하는 단계는
    상기 결정된 표준 공통 코드의 사용자 언어에 따라 상기 어플리케이션의 공통 코드 관리 화면에 대한 언어를 변환하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  4. 제1항에 있어서, 상기 표준 공통 코드를 생성하는 단계는
    상기 관리 단말로부터 상기 표준 공통 코드에 대한 계층 정보를 수신하여 상기 계층 정보에 따라 상기 표준 공통 코드의 레벨을 결정하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  5. 제1항에 있어서, 상기 표준 공통 코드를 생성하는 단계는
    상기 표준 공통 코드에 대한 메타데이터를 개발 테이블에 저장하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  6. 제1항에 있어서, 상기 커스텀 공통 코드를 생성하는 단계는
    상기 표준 공통 코드에 대한 커스터마이징 가능 여부를 체크하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  7. 제6항에 있어서, 상기 커스텀 공통 코드를 생성하는 단계는
    상기 표준 공통 코드에 대한 커스터마이징이 가능하면 상기 표준 공통 코드를 상기 테넌트 단말에 상속하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  8. 제7항에 있어서, 상기 커스텀 공통 코드를 생성하는 단계는
    상기 상속된 표준 공통 코드와 상기 커스텀 공통 코드를 연결하여 저장하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  9. 제1항에 있어서, 상기 커스텀 공통 코드를 생성하는 단계는
    상기 커스텀 공통 코드에 대한 메타데이터를 개발 테이블에 저장하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  10. 제1항에 있어서, 상기 테이블을 생성하는 단계는
    개발 테이블에 대해 상기 표준 공통 코드에 대한 메타데이터의 변경을 수행하여 운영 테이블에 반영하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  11. 제1항에 있어서, 상기 메타데이터는
    상기 관리 단말을 사용하는 서비스 관리자의 어플리케이션 아이디, 상기 표준 공통 코드의 아이디, 상기 표준 공통 코드의 사용자 언어에 대한 메시지 아이디 및 상기 표준 공통 코드 식별 코드값을 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  12. 멀티 테넌트 환경의 테넌트 단말에서 수행되는 공통 코드 관리 방법에 있어서,
    공통 코드 관리 서버를 통해 어플리케이션에 대한 표준 공통 코드를 조회하는 단계;
    상기 어플리케이션에 대한 커스터마이징 가능 여부를 체크하는 단계;
    상기 어플리케이션에 대한 커스터마이징 가능 여부에 따라 상기 표준 공통 코드에 대해 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 단계; 및
    상기 커스텀 공통 코드를 저장하는 단계를 포함하는 공통 코드 관리 방법.
  13. 제12항에 있어서, 상기 커스텀 공통 코드를 생성하는 단계는
    상기 커스텀 공통 코드에 대한 언어 정보를 입력하여 상기 커스텀 공통 코드의 사용자 언어를 설정하는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  14. 제12항에 있어서, 상기 커스텀 공통 코드를 생성하는 단계는
    상기 어플리케이션에 대한 커스터마이징이 가능하면 상기 표준 공통 코드를 상속받는 단계를 포함하는 것을 특징으로 하는 공통 코드 관리 방법.
  15. 멀티 테넌트 환경의 공통 코드 관리 서버에 있어서,
    관리 단말을 통해 어플리케이션에 대한 표준 공통 코드를 생성하는 표준 공통 코드 생성부;
    상기 어플리케이션을 이용하는 테넌트 단말을 통해 상기 표준 공통 코드에 대한 커스터마이징을 수행하여 커스텀 공통 코드를 생성하는 커스텀 공통 코드 생성부; 및
    상기 표준 공통 코드 및 상기 커스텀 공통 코드를 메타데이터로서 포함하는 테이블을 생성하는 테이블 생성부를 포함하는 공통 코드 관리 서버.
  16. 제15항에 있어서, 상기 표준 공통 코드 생성부는
    상기 관리 단말로부터 상기 표준 공통 코드에 대한 언어 정보를 입력받아 상기 표준 공통 코드의 사용자 언어를 결정하는 것을 특징으로 하는 공통 코드 관리 서버.
  17. 제16항에 있어서, 상기 표준 공통 코드 생성부는
    상기 결정된 표준 공통 코드의 사용자 언어에 따라 상기 어플리케이션의 공통 코드 관리 화면에 대한 언어를 변환하는 것을 특징으로 하는 공통 코드 관리 서버.
  18. 제15항에 있어서, 상기 커스텀 공통 코드 생성부는
    상기 표준 공통 코드에 대한 커스터마이징 가능 여부를 체크하는 것을 특징으로 하는 공통 코드 관리 서버.
  19. 제18항에 있어서, 상기 커스텀 공통 코드 생성부는
    상기 표준 공통 코드에 대한 커스터마이징이 가능하면 상기 표준 공통 코드를 상기 테넌트 단말에 상속하는 것을 특징으로 하는 공통 코드 관리 서버.
  20. 제1항 또는 제12항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
KR1020130149490A 2013-12-03 2013-12-03 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체 KR101570980B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130149490A KR101570980B1 (ko) 2013-12-03 2013-12-03 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130149490A KR101570980B1 (ko) 2013-12-03 2013-12-03 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체

Publications (2)

Publication Number Publication Date
KR20150064599A true KR20150064599A (ko) 2015-06-11
KR101570980B1 KR101570980B1 (ko) 2015-11-23

Family

ID=53503120

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130149490A KR101570980B1 (ko) 2013-12-03 2013-12-03 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체

Country Status (1)

Country Link
KR (1) KR101570980B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190133404A (ko) * 2018-05-23 2019-12-03 삼성에스디에스 주식회사 마이크로 서비스 아키텍처 기반의 서비스 시스템 및 상기 시스템에서의 멀티 테넌트 설정 관리 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102660914B1 (ko) 2023-11-07 2024-04-24 김기창 대용량 데이터 활용을 위한 공통 코드 정비 및 정제와 설계 방법 및 서버

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4079137B2 (ja) 2004-09-30 2008-04-23 ブラザー工業株式会社 ネットワーク管理プログラム,デバイスおよびネットワーク管理システム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190133404A (ko) * 2018-05-23 2019-12-03 삼성에스디에스 주식회사 마이크로 서비스 아키텍처 기반의 서비스 시스템 및 상기 시스템에서의 멀티 테넌트 설정 관리 방법

Also Published As

Publication number Publication date
KR101570980B1 (ko) 2015-11-23

Similar Documents

Publication Publication Date Title
US10348774B2 (en) Method and system for managing security policies
CN109688120B (zh) 基于改进RBAC模型及Spring Security框架的动态权限管理系统
US11698989B2 (en) Computer-implemented methods, systems comprising computer-readable media, and electronic devices for querying restricted-access datasources
US11675774B2 (en) Remote policy validation for managing distributed system resources
US11281846B2 (en) Inheritance of rules across hierarchical levels
US7913227B2 (en) Methods and apparatus for management of configuration item lifecycle state transitions
US9189643B2 (en) Client based resource isolation with domains
US9020973B2 (en) User interface model driven data access control
JP6266588B2 (ja) ローカル・データーおよびリモート・データーの同期
US11790058B2 (en) Automated role management for resource accessing code
KR101570980B1 (ko) 멀티 테넌트 환경의 공통 코드 관리 방법, 이를 수행하는 공통 코드 관리 서버 및 이를 저장하는 기록매체
CN116702213A (zh) 针对多级企业的业务系统数据权限管理方法、装置和设备
US11693648B2 (en) Automatically producing and code-signing binaries
US20190129731A1 (en) Configuration management of remote sources using activator fields
Ali et al. A provenance-aware policy language (cprovl) and a data traceability model (cprov) for the cloud
US20080126405A1 (en) Methods, Apparatus and Media for Modifying Information
TWI620134B (zh) 整合裝置及其整合方法
US11916962B2 (en) Data driven interfaces for decoupling components of a management system from manufacturer and platform of managed client devices
CN101989280A (zh) 配置资源管理的方法及系统
KR101368014B1 (ko) 동적 쿼리 생성 방법, 동적 쿼리 생성 서버 및 이를 저장한 기록 매체

Legal Events

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

Payment date: 20181008

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20191007

Year of fee payment: 5