2009년 2월 1일 일요일

데이터 아키텍처의 이해 ①

데이터 아키텍처의 이해 ①

데이터 아키텍처의 필요성


윤성호 | 엔코아컨설팅 책임컨설턴트

연·재·목·차
제1회: 데이터 아키텍처의 필요성
제2회: 데이터 아키텍처의 구성요건
제3회: 데이터 아키텍처 활용방안
제4회: 데이터 아키텍처의 단계별 접근전략
제5회: 데이터 아키텍처의 확장

IT시스템을 활용해 기업의 목적을 달성하기 위해서는 체계적인 정보기술 아키텍처의 도입이 필수적이다. 이에 따라 최근 들어 EA가 주목 받고 있는데 그 중에서도 데이터 아키텍처의 중요성이 더욱 커지고 있다. 데이터 모델링을 포함해 데이터에 관한 모든 것을 체계화하는 데이터 아키텍처는 향후에 나타날 수 있는 IT의 시행착오를 현격하게 감소시켜 줄 수 있는 불요불급한 방법론이다.

최근 국내 소프트웨어산업의 피폐함을 탄식하는 분들을 많이 만나게 된다. 제품 기획부터 설계, 프로덕트 마케팅, 유통, 기업 솔루션 영업의 난맥상에 이르기까지 국내 소프트웨어산업 태동기부터 감지되어 왔던 문제점들이 끊임없이 확대 재생산되는 느낌이다. 아무래도 기업이 요구하는 전반적인 IT시스템 규모가 커지면서 소프트웨어분야도 이에 상응하는 발전과 진보를 보여야 함에도 불구하고 여전히 구습을 이어가고 있기 때문에 그만큼 문제점이 크게 드러나고 있는 것이다.
무엇이든 다급하게 당장 눈에 보이는 것을 만들어 내는데 익숙한 우리 문화가 전문 소프트웨어업체의 소프트웨어 제작 과정이나 기업 전산팀의 시스템 설계에도 그대로 반영되고 있다. 물론 빠른 대응이 전반적인 IT 산업의 외면적인 발전에 크게 기여한 요인이었던 것을 부인할 수는 없으나 그 발전이라는 것이 편중된 사상누각이라면 언제까지고 심각한 부작용으로 남을 것임은 자명하다.
많은 기관과 업체에서 근본적인 문제를 해소하기 위해 다각도의 노력을 기울여 왔음에도 10년 전의 상황에 비해 개선이 없는 원인은 무엇일까? 그 실마리를 필자는 ‘근본으로 돌아가자’는 여전히 유효한 구호에서 찾고 싶다. 가장 상식적인 기본들이 지켜지고 있지 않은 현실이 지금까지도 근본으로 돌아가야 하는 상황을 만들어 내고 있는 것이다.
일례로 소프트웨어 솔루션을 개발하는 과정을 들여다보자. 시장과 고객의 요구를 정확히 분석, 수요를 예측하고 이를 구체적인 컨셉으로 정의하여 제품 설계에 반영한 후 점차 세밀한 집적도를 완성해 가는 ‘체계화’를 기대하기란 거의 불가능하다. 심지어 상황이 다급하면 설계도도 없이 일단 당장 필요한 기능에 맞추어 소스를 붙이는데 급급해 왔다. 전문 개발사에서조차도 이런 상황이 되풀이되고 있으니 참으로 답답한 현실이라 하겠다.
그러다 보면 결국 시스템을 통합하거나 근본적으로 개·보수해야 하는 큰 변화에 부딪히면 단순한 비효율을 뛰어넘는 위기상황이 연출되고야 마는 것이다. 지극히 비상식적으로 보이지만 주변을 돌아보면 어디서나 발견되는 현상이다. 많은 분들이 공감하듯 원칙과 근본을 무시해왔기 때문에 벌어지는 일이다. 만약 책임 있는 담당자가 당장의 이익과 조건에 연연하지 않고 제대로 하는 것을 목표로 하여 진행했다면 결코 일어나지 않았을 시스템 사고들이 아직도 되풀이되는 것은 바로 근본을 무시했기 때문이다.

ITA 도입 필요성

패러다임의 변화와 IT환경의 급격한 변화는 오늘날의 경영 환경을 본격적인 정보화 시대로 도래하게 하였고, 국제화의 급속한 전진, 기업간의 인수, 합병, 소비자 요구의 고급화 등에 따라 국제화와 산업 개편이 가속화되었으며, 더욱 전문화되고 다각화 된 형태로 나타나고 있다. 이에 따라 경영환경의 목적이 효율과 효과를 지향하는 패러다임으로 확실하게 변해가고 있다. 이러한 변화는 필연적으로 모든 변화의 기반이 되는 정보기술 환경의 변화를 불러와 네트워크의 보편화, 전자상거래, 보안, 데이터 마이닝의 필요성과 신속한 경영 의사 자료의 요구성을 크게 높여 주었고, 이를 위해 클라이언트/서버 및 분산·객체 환경으로 변화가 더욱 가속화되고 있다.
그럼에도 불구하고 기존의 개발 방법론의 문제점에 따라 엔터프라이즈의 목적과 아키텍처 부문의 연계는 아주 미흡하였다. 정보 시스템 활용을 통한 조직의 목표의 효과적인 달성과 전략적 우위 선점이라는 기업의 목적을 위해서는 체계적인 정보기술 아키텍처의 도입이 절실히 요구되고 있다.
오늘날 기업 활동은 ‘비즈니스’와 ‘정보 기술’이라는 두 개의 큰 축으로 유지된다. 이들 간의 원활한 상호 작용을 구체화하기 위한 모델의 중심에 ‘정보기술 아키텍처(ITA)’의 사상이 있다. 패러다임과 IT환경의 급격한 변화는 경영 환경의 목적을 효율과 효과지향적으로 확실하게 변모시키고 있지만 기존의 개발 방법론의 문제점에 따라 기업의 목적과 아키텍처 부문과의 연계는 아주 미흡하였다. 이로 인해 경영의 기반인 정보 시스템이 근본적으로 불안하게 되어 빈번하게 아키텍처를 조정해야 하는 악순환이 반복되고 있다.
따라서 정보 시스템 활용을 통한 조직 목표의 효과적인 달성과 전략적 우위 선점이라는 기업의 목적을 위해서는 비즈니스의 실행에 필요한 정보와 기술, 업무의 변경 요구에 적용할 새로운 기술로의 전환 프로세스를 설명한 전략적 정보 자원인 정보기술 아키텍처의 도입이 절실하게 요구된다. 정보기술 아키텍처(ITA, Information Technology Architecture)는 정보 시스템에 대한 요구 사항을 충족시키고, 상호 운용성 및 보안성을 보장하기 위해 조직의 업무와 사용되는 정보, 그리고 이들을 지원하기 위한 정보 기술 등의 구성 요소를 분석하고, 이들 간의 관계를 구조적으로 정리한 체계로서 전사적 아키텍처, 기술 참조 모델, 표준 프로파일로 구성된다.
정보 기술 아키텍처에서 가장 대표적인 쟈크만 프레임워크는 가로축에 아키텍처를 수립해야 할 대상을 육하원칙에 입각해서 정의하였으며, ‘What’을 ‘데이터’로 인정함으로써 데이터야말로 정보 시스템의 근원이라는 것을 나타내고 있다. 세로축은 상세화 수준을 정의한 것으로써 가로축의 모든 구성 요소들이 최상위 단계에서부터 최하위 단계에 이르기까지 모두 아키텍처를 수립해야 한다고 주장하고 있다.
<그림 1> 쟈크만 프레임워크


전사적 아키텍처의 도입 의미

필자는 최근 공공 부문과 금융권 대형 프로젝트를 중심으로 큰 이슈가 되고 있는 EA(Enterprise Architecture) 역시 결국 ‘설계’라는 근본으로 돌아가서 체계를 바로 잡는 방법론이라고 믿고 있다. 비즈니스 설계(Business Architecture), 애플리케이션 설계(Application Archi-tecture), 기술적 설계(Technical Archi-tecture), 데이터 설계(Data Archi-tecture) 등 4가지 중심축으로 구성되는 EA는 단순화시켜 말하자면 각 하부 영역의 구조적인 설계를 서로 유기적으로 통합하는 과정으로 설명할 수 있을 것이다. EA의 최종적인 키워드는 역시 설계 또는 체계화로 정의될 수 있는 아키텍처(Architecture)로 귀착된다.
체계화란 최상위의 개괄적인 단계에서부터 출발하여 개념적인 단계, 논리적인 단계, 물리적인 단계, 부가적인 상세화 단계, 실제 운용 단계에 이르기까지 모든 진행 과정이 서로 완벽한 연결(얼라인먼트)이 되도록 해야 한다는 것을 말하며, 이것이 지금까지의 접근 방법과는 크게 다른 점이다.
전사적 아키텍처(Enterprise Archi-tecture)는 업무와 업무 실행에 필요한 정보, 이것을 지원하는 기술, 그리고 새로운 기술의 실행을 위한 전환 프로세스를 설명한 전략적 정보 자원의 기초이다. 전사적 아키텍처(Enterprise Architecture)의 기반이라고 할 수 있는 데이터의 완벽한 아키텍처를 수립하기 위해서는 체계적인 접근 방법과 내용의 합리성을 극대화시킬 수 있는 구체적인 판단 기준들이 필요하다.

DA의 정의와 구성

이러한 EA의 각 하위 요소 중에서도 특히 중요하게 여겨지는 요소가 바로 데이터 아키텍처(DA, Data Architecture)인 것도 우연이 아니다. 애플리케이션이나 기술적인 요소보다 언제나 먼저 정의되어야 하는 것이 시스템의 근본을 구성하는 데이터 요소다. 기업 정보 시스템을 구성하는 가장 기본적인 원자라 할 수 있는 데이터에 관련된 모든 구조를 상세한 설계 과정을 통해 체계화하는 것이 바로 데이터 아키텍처다. EA중에서 데이터 아키텍처가 특히 중요성을 인정받는 이유 역시 데이터의 이런 근본 지향적인 특성에서 찾을 수 있다.
데이터 아키텍처란 데이터 모델링을 비롯해 그보다 더 개괄적인 영역과 물리적인 영역까지도 포함한 데이터에 관한 한 모든 구조를 체계화하는 것을 말한다. 체계화란 최상위의 개괄적인 단계에서부터 출발하여 개념적인 단계, 논리적인 단계, 물리적인 단계, 부가적 상세화 단계, 실제 운용하는 단계에 이르기까지 서로 완벽한 연결(얼라인먼트)이 되도록 해야 한다는 말이며, 이것이 지금까지의 접근 방법과 크게 다른 점이다.
특히 인간이 결정해야 할 모든 것들을 체계적으로 형상화해야 하는 논리적 모델 구현 단계는 데이터 아키텍처 수립의 핵심이다. 어떤 방법론을 이용해 정보 시스템을 구축하든지 데이터는 언제나 존재하는 필수적이고, 본질적인 것이므로 결코 홀대할 수 없는 귀중한 자산이다.
이처럼 데이터 아키텍처는 데이터에 관한 모든 계층을 총망라해서 객관적이고 구체적인 접근 방법을 명시한 체계적인 방법론이다. 마치 건물을 구축할 때 전체적인 전략을 설계한 조감도를 먼저 작성한 다음, 개념적인 구조를 결정하고, 점차 상세한 설계와 시방서를 작성해 가는 것과 유사하다. 기업 정보의 골격인 데이터를 이처럼 체계적으로 접근해 내려오는 것은 매우 가치 있는 일이고, 앞으로 나타날 수 있는 시행착오를 현격하게 감소시켜 주는 한 차원 높은 접근 방법이다.
<그림 2> 데이터 아키텍처의 구성


제공 : DB포탈사이트 DBguide.net

[출처] 데이터 아키텍처의 이해 ①|작성자 눈꽃천사

[참조사이트] http://blog.naver.com/oyukihana.do?Redirect=Log&logNo=60007657362

댓글 없음: