SW개발단계에서 데이터베이스 구축을 위하여 아래 「데이터모델링 프로세스 도해」와 같이 ①~④단계의 과정을 거치는 데이터모델링 비즈니스가 순차적으로 수행된다. 각 단계별 프로세스에서는 작업의 결과로 메타데이터가 정의되며 생성된 메타데이터는 다음 단계의 프로세스에서 참조되어 새로운 산출물(메타데이터)의 생성에 사용된다. 그러므로 ①~④단계의 프로세스는 반드시 순차적으로 실행되어야 한다.
각 단계에서 생산되는 산출물이란 데이터베이스의 구조를 이루는 메타데이터가 표현된 것으로 일반적인 문서와는 다르게 데이터의 오류가 완전히 제거된 상태인 무결성(data integrity)이 확보되어야만 한다. 각 단계에서 생성된 온전한 메타데이터는 최종적으로 데이터베이스로 구현되어 정상적인 작동 확인의 과정을 거치게 된다. 정상적으로 작동하는 데이터베이스를 구현하고 있는 메타데이터 정보와 ②,④ 단계에서 생성되어 데이터 산출물에 기록되어 있는 메타데이터 사이에는 정합성이 유지되어야 한다.
따라서 메타데이터의 무결성과 정합성은 데이터모델의 설계부터 데이터베이스의 동작이 확인되고 산출물이 완성되는 검수의 전 과정에서 반드시 지속적으로 관리되어야 한다. 그렇다면 현장에서는 산출물과 데이터베이스의 무결성과 정합성이 보장이 되는가?
| 프로세스 | 단계 | 1 | 2 | 3 | 4 |
| 구분 | 데이터표준 정의/변경 | 데이터모델 정의/변경 | DB오브젝트 정의/변경 | 메타데이터 정의/변경 | |
| 업무담당자 | DA | DA | DA/DBA | DA/사업관리자 | |
| 관리도구(SW) | MetaStream | Excel | Tool | Excel | |
| 산출물 (메타데이터) | 표준목록 | *용어정의서 *도메인정의서 *데이터관계도 (데이터모델) | *DML/DDL (데이터오브젝트) | *테이블정의서 *컬럼정의서 | |
| 검수항목 | 무결성 | By system | 육안검사 | 테스트운영 | 육안검사 |
| 정합성 | 육안검사 | ||||
| 검수담당 | By system | 정보화지원센터 | 발주자 | 정보화지원센터 | |
注.
SW개발 단계에서 생산된 데이터 산출물은 SW운영‧유지보수 환경에서 데이터베이스의 운영과 유지보수 업무 중에 수시로 참조된다. 또한 SW고도화 사업 또는 SW기능 개선 사업 시 데이터아키텍처의 분석을 위한 참조에 필요하다. 데이터관계도와 테이블정의서와 컬럼정의서 등을 참조하여 데이터베이스의 구조와 속성을 파악할 수 있기 때문이다. 그러므로 데이터 산출물은 운영되고 있는 데이터베이스와 그 구조 및 속성 정보가 일치되어야 하므로 SW운영‧유지보수 과정에서 데이터베이스의 변경 소요가 발생하게 되면 데이터 산출물도 동일하게 변경 내용이 반영(현행화) 되도록 관리해야 한다.
산출물이 데이터베이스의 구조와 다르다는 것은 산출물에 들어있는 메타데이터에 오류가 존재하는 것인데, 이런 오류의 형태는 무결성과 상호정합성으로 나누어 구분할 수 있다. 무결성(data integrity)이란 산출물이 수기로 작성하는 과정에서 발생할 수 있는 오탈자 등으로 인하여 메타데이터가 부정확하게 기술된 것을 말한다. 상호정합성(mutual consistency)이란 데이터베이스를 표현하는 데이터인 산출물 내의 메타데이터의 속성과 구조 정보가 데이터베이스의 메타데이터 정보와 일치하는 것을 말한다. 구체적으로는 산출물의 메타데이터와 데이터베이스 내의 DML/DDL 스크립트가 일치하는 것을 말하는 것이다.
SW운영‧유지보수 현장에서는 산출물의 무결성, 상호정합성이 관리되지 않아서 정보화운영 업무에 지장을 초래하는 상황이 빈번하게 발생하고 있다. 그렇다면 무결성과 정합성에 문제가 생기는 원인은 무엇이며 SW개발환경과 시스템의 운영 환경에서 각각 어떻게 발생을 하는지 알아본다.
| 환경구분 | 무결성, 정합성에 문제를 일으키는 사례 | 원인 |
|---|---|---|
| SW개발사업 (개발환경) |
데이터산출물 수기 작성시 오기로 인한 결함 데이터 발생
- 사업관리자(비전문가) 작성시 보고서 또는 일반 문서로 취급 - 테스트 운영 검수시 데이터베이스 오류의 현장조치(변경) 사항이 데이터 산출물에 미반영 |
비전문가 작업부주의 프로세스관리 |
|
SW운영유지관리 (운영환경) |
- DB메타 변경 작업시 DML/DDL 직접변경(3단계) - 절차관리 및 통제수단의 미비로 3단계만 수행 - 정보시스템의 운영(가동)에 당장 영향이 없으므로 관리의 필요성을 느끼지 못함 - 유지보수 조직의 체계적인 관리의 한계(예산) - DBMS 종속적인 데이터 타입으로 변경(성능향상) - 입찰에 의한 사업자선정, SLA등 구속사유 미비 - 범정부표준 공표에 따른 영향성 검토 및 변경에 애로 - 데이터 담당자들의 논리데이터 명칭 변경(비즈니스소요) | 절차관리 통제수단(시스템) 사업관리구조(예산) 범정부표준충돌관리 |
무결성과 상호정합성에 문제가 발생하는 여러가지 원인을 종합해 보면, 1) 작업자의 숙련도와 개인적 성향이 무결성에 영향을 주며, 2) 절차가 준수되지 않는 변경 작업이 상호정합성 문제 발생의 원인으로 귀결됨을 알수 있다. 해결 방법은 무엇인가? “숙련된 작업자와 성실한 성향의 작업자를 산택하고, 그 작업자가 절차와 규정을 준수하여 업무가 수행되도록 절차를 확립하고 관리를 철저히 한다.” 너무나 귀에 익숙한 해답이 아닌가?
실제로 데이터진흥원에서 주관하는 데이터품질관리 인증체계나 행안부에서 관리하는 데이터품질관리수준 진단 평가의 평가 지표의 내용을 살펴보면 이와 무관하지 않음을 알 수 있다. 결국 데이터품질관리 활동이란 사람과 프로세스를 관리하는 교과서적인 방법만이 존재하는 것이고 관리하는 수준을 높여가는 것이 곧 데이터품질을 향상시키는 전통적인 방법일 뿐이다.
메타관리시스템은 이런 전통적이고 교과서적인 관리 방법을 보완하여 전반적인 데이터품질관리 수준을 높이기 위한 자동화 기반의 데이터아키텍처 관리체계이다.
시스템에 의한 관리가 필요한 것이며 메타데이타관리시스템이 필요한 것이다.
메타관리시스템을 도입하여 운영하고 있는데도 여전히 무결성과 정합성의 문제가 제거되지 않은채 데이터 산출물의 현행화가 잘 되지 않는다. 메타관리시스템을 사용하는 데이터 담당자에게 문제가 있는 것일까? 아니면 메타관리시스템의 기능이 무결성 보장과 정합성 유지를 위한 목적에 부합하는지 알아볼 필요가 있다.
산림청에서 2012년에 메타관리시스템으로 도입한 MetaStream 제품은 SW개발환경에서 데이터아키텍처 업무중 데이터표준관리 업무에 사용되고 있다. 아래 업무분석표에 의하면 메타관리시스템은 MetaStream과 CASE도구인 Erwin 제품의 조합으로 구성되어 있다. 즉, 메타관리스템이란 단일 솔루션을 지칭하는 것이 아니라 MetaStream과 CASE도구 소프트웨어 전체를 지칭하는 것이다.
메타관리시스템을 사용한다면 무결성이 확보될수 있을까? 각 단계에서 사용되는 CASE도구(SW)에 의하여 산출물이 자동 생성되기 때문에 각 산출물의 무결성은 소프트웨어에 의하여 보증이 된다고 할 수 있다.
메타관리시스템을 통하여 정합성 유지는 가능한 것인가? 소프트웨어는 각 단계의 프로세스를 수행하기 위한 도구로 사용될 뿐, ①~④단계의 메타데이터의 내용이 일치해야 하는 정합성의 문제는 메타관리시스템을 사용함으로써 유지되는것이 아니라 여전히 ①~④단계의 순서를 지켜야 하는 절차 준수의 여부에 의하여 결정되는 구조임을 알 수 있다. 메타관리시스템에 의한 절차의 관리가 가능하려면 메타관리시스템은 단일구조의 통합관리체계로 구현되어야 하는 것이다.
아래 표에서 확인되듯이 데이터베이스의 메타데이터(DML/DDL)와 일치해야 할 최종 메타데이터는 MetaStream에서 관리되는 것이 아니라 CASE도구인 Erwin 제품에서 파일의 형태로 관리되고 있다. CASE도구는 SW개발환경에서 데이터아키텍트 모델링을 위한 도구(tool)일뿐 메타데이터의 정합성 관리에 필요한 프로세스를 제공하지 않아 SW운영환경에서 전사적인 메타데이터관리 업무에 활용하기엔 부적합하다.
정확하게 표현을 한다면 MetaStream은 데이터표준 프로세스를 기반으로 CASE도구가 정의/변경 하는 데이터모델에 적용할 데이터표준을 관리하는 프로그램이다. 메타데이터관리의 일부 단계인 데이터표준을 관리하는 것에 불과한데 마치 MetaStream이 메타관리시스템 전체인 것처럼 과장하여 말하고 있는 것이다. 국내에서 메타관리시스템으로 시장에 소개되고 있는 국내에서 개발된 몇개의 대표적인 제품은 MetaStream과 비슷한 구조의 시스템으로 보여진다.
| 프로세스 | 단계 | 1 | 2 | 3 | 4 |
| 구분 | 데이터표준 정의/변경 | 데이터모델 정의/변경 | DB오브젝트 정의/변경 | 메타데이터 정의/변경 | |
| 업무담당자 | DA | DA | DA/DBA | DA/사업관리자 | |
| 메타관리시스템 | MetaStream | CASE도구 Erwin Modeler | CASE도구 Erwin Model mart | ||
| 산출물 (메타데이터) | 표준목록 | *용어정의서 *도메인정의서 *데이터관계도 (데이터모델) | *DML/DDL (데이터오브젝트) | *테이블정의서 *컬럼정의서 | |
| 검수항목 | 무결성 | By program | By program | 테스트운영 | By program |
| 정합성 | 육안검사 | ||||
注.