DATOR


'문제해결 방법' 5가지 방법으로 본 리버스 데이터 모델링 접근 방법 Data Modeling


 리버스 데이터 모델링을 수행할때에는 데이터 모델링의 기술도 많이 중요하지만 업무에 대한 지식과 업무 분석 기술 또한 매우 중요하다. 리버스 데이터 모델링에 대한 자료가 많기는 하지만 지금 여기서 다룰 방법은 '문제를 해결 방법'을 이용하여 데이터 모델을 어떠한 관점에서 접근하면 유용한지를 다룰 것이다. 아래의 방법은 리버스 데이터 모델링을 진행하는 업무에 대해 지식이 해박해야 많은 결과를 얻을 수 있다. 또한 리버스 데이터 모델링에는 다양한 목적이 존재하지만 To-Be 데이터 모델에 새로운 업무 요건을 도출하기 위한 과정에 많은 도움을 줄것이다. 이 내용은 사람이 일반적으로 수행하던 행동을 정리한 것이기 때문에 그리 특별할 것은 없지만, 이것에 대한 내용을 기억하고 있다면 리버스 데이터 모델링에 좀 더 많은 도움이 될것이라고 생각한다.

그 다섯 가지 방법은 아래와 같다.

 

1) 유추

2) 연역

3) 외삽

4) 귀납

5) 내삽

 


1) 유추

유추란, 서로 유사한 사건에 발견된 증거를 가지고 추론할 때 일어난다. 이 접근법은 다양한 산업 또는 동일 산업의 데이터 모델을 이해하고 있거나 프로젝트를 수행해본 경험이 있는 분석가에게 매우 유용하다. 예를 들어, 물류와 관련된 프로젝트를 수행해본 경험이 있는 분석가가 있다고 하자. 이 분석가는 이전의 프로젝트에서 고객에게 제품이 배송이 되고 나면, 기업에서 이를 확인하는 프로세스가 고객이 제품에 대한 클레임을 줄이고, 초기에 이를 파악할 수 있는데 매우 높은 기여를 한다는 것을 알고 있다. 그래서 이 분석가는 다른 산업에서도 데이터 모델을 분석할 때 이러한 업무가 존재하는지를 파악하고 이 기업은 이를 어떻게 수행하고 기존 회사와의 차이점을 파악하고 어떻게 변형하거나 적용하는 것이 좋은지를 파악하고 제시할 수 있다. 유추는 내삽에 의해서 분석하지 못한 데이터 모델의 의미를 파악해야 할 때 매우 유용하다. 유의할 점은, 동종 또는 다른 산업의 Practices를 이용하여 접근하는데 이를 무분별하게 적용하거나 업계에서 큰 규모라해서 반드시 따라야 하는 것이 아니라, Practices의 특징과 장단점을 파악하고 실제 적용하는 분야에  맞게 해야 한다.



2) 연역

연역이란 가장 흔한 분석 유형이며, 일반적인 것에서 특정한 것을 추론하는 것으로서 비교적 완전한 데이터에서 어떤 패턴을 식별해내는 능력이다. 분석가는 데이터 모델을 리버스 하면서 알아낸 특정한 사실이나 정보를 기준으로 다른 정보를 찾아내는 것이다. 빠진 데이터 모델의 채울 수 있는 부분이 작으면 작을수록 결론의 유효성도 줄어든다. 아리스토텔레스의 삼단논법으로 연역을 설명해보면 대전제인 '모든 사람은 죽는다'에서, 소전제는 '소크라테스는 인간이다', 그러므로 '소크라테스는 죽는다'라는 결론을 도출할 수 있다. 앞선 예에서 보았듯이, 연역은 일반적인 문제 사항에 대해서 추론할 때 주로 예측에서 주로 사용한다. 데이터 모델링시의 연역은 데이터 모델 스키마 만을 보고 실제 발생되는 데이터의 모습을 예측하고, 이에 해당하는 데이터를 맞춰보고, 다른 부분에 대해서 찾아내는 것이라고 볼 수 있다.



3) 귀납

귀납은 특정한 사건을 통해서 일반적인 것을 추론하는 것으로서, 한정된 데이터에서 패턴을 식별하는 능력이다. 귀납은 사건이나 상황 등 특정한 현상의 인식에서 보다는 일반적인 진리에 대한 지식으로 이행해가는 추론 프로세스를 말한다. 이를 연역과 같이 아리스토텔레스의 삼단논법으로 보면, 결론에서 대전제 즉, 데이터의 패턴을 식별하는 것이다. '소크라테스는 죽는다'에서, '소크라테스는 사람이다', 그러므로 '모든 인간은 죽는다'라는 가언판단을 하게 되는 것이다. 귀납적 추론은 외부의 장표(External Schema)에서 데이터 모델을 만들어 내거나 찾아내는 과정이라고 볼 수 있다. 또한, 분석가는 데이터 모델을 분석하는 초기에 중심이 되는 엔티티를 선정하여 분석가가 이해하고 있는 일반적인 범위내에 엔티티 간의 관계를 잡아나가고 이를 정의해 나가는 것이다. 예를 들어, 주문 관리 프로세스를 이해하고 나서 주문에 대한 정보를 어디서 관리하는지, 주문 이후의 배송, 사후관리, 운송비용 처리등 이해하고 있는 업무 범위 내에서 이를 만들어 나가는 것이다.


 

4) 외삽

외삽(extrapolation)이란 일반적으로는 단순 배열된 시리즈를 넘어서 그 이상의 개념으로 확장되는 것을 의미하며 예측을 위한 방법중에 하나이다. 데이터 모델을 분석하는 방법으로는 동향외삽(trend extrapolation)이 있다. 이러한 방법을 이용할려면 데이터 모델 분석가는 분석하기 위한 기업의 프로세스를 이해해야 한다. 물론 데이터 모델을 분석하면서 프로세스부터 접근해야 하는지, 데이터부터 접근해야 하는지에 대한 정답은 없다. 물론 하나부터만 접근하는게 아니라 동시적으로 이해할수도 있다. 여기서 말하고자 하는 것은 기업의 프로세스를 이해하면서 이 기업의 프로세스가 어떻게 데이터 모델에 적용되어 있는지를 이해하고 나서 동향외삽을 통해서 과거의 프로세스를 파악하고 그것을 미래에 투영시키고 어떠한 데이터가 발생하는지를 알고 새로운 To-Be의 방향성을 제시하는 것이다.


5) 내삽

내삽(Interpolation)은 일련의 잃어버린 고리를 제공하는 방법이며, 데이터가 일련의 시리즈 속에 삽입될 때 일어난다. 내삽은 문장의 전체적인 맥락을 이해하고 빠진 글자를 찾는 것과 유사한 과정이며, 분석가가 초기의 데이터 모델을 분석하고 난 뒤 빠진것이 있는지 검증할 때 유용하다. 예를 들어, 하나의 프로젝트가 있다고 가정하자. 이 프로젝트는 기존에 문제가 많던 시스템을 고도화하는 프로젝트이다. 하지만 데이터베이스가 메타시스템을 통하여 관리되지 못하고 있기 때문에 데이터베이스 내부의 테이블들이 제대로 관리되고 있지 못한 상태이다. 프로젝트는 짧은 기간이 주어졌기 때문에 이를 분석할 시간이 제대로 없는 경우가 많다. 이럴 경우 엔코아의 방법론 중에 하나로 'SQL 파싱을 통한 데이터 모델 분석' 방법론과 DA#의 '자동관계 찾기'등의 다양한 방법론을 근간으로 데이터 모델을 빠르게 기초틀을 형성한 이후에 관계를 하나하나씩 업무적으로 분석해 나가는 방법을 내삽이라고 볼 수 있는 것이다. 또한 리버스 모델링에서 보면, 제품 배송과 관련된 데이터 모델을 분석하면서 배송 송장에 주소가 없다는 것을 분석가는 인식할 수 있다. 이를 찾아내기 위해 관계를 형성할 수 있는 관계속성이 존재하는지를 파악하고 이를 이용하여 관계를 형성할 수 있는 엔티티유형이 존재하는지를 파악할 수 있다.



이러한 방법이 모두 옳다고 볼수도 없고, 전부라고 할 수 없다. 하지만 데이터 모델을 분석하는데 있어서 추론이라는 것은 매우 중요한 능력이기 때문에 이를 위한 다양한 산업의 업무 지식과 다른 산업에서의 업무에서 또 다른 산업에서 찾아내는 것은 좋은 능력이라고 볼 수 있다.

TAG

Leave Comments


profile우리는 하나님을 믿는다. 다른 모든 것들은 데이터로 검증해야 한다. 

Recent Trackback