기술로 변화를 이끄는 기업

토마토시스템의 다양한 이야기를 만나보세요!

- PRODUCT

데이터베이스 모델링 도구 eXERD

토리댁 2014. 1. 7. 11:21
[DB설계]데이터 베이스 모델링 도구(eXERD)

데이터베이스 모델링이란?

데이터베이스 모델링이란 현실 세계의 업무적인 프로세서를 물리적으로 데이터베이스화 하기 위한 과정으로 실체와 관계를 중심으로 체계적으로 표현하고 문서화하는 기법이며 정보 시스템의 중심을 데이터의 관점에서 접근하는 데이터 중심의 분석 방법입니다.

특히 웹 개발이나 관리 소프트웨어 같은 정보 시스템을 구축할 때 가장 중요한 작업 중 하나가 데이터베이스 모델링입니다.

즉, 데이터베이스 모델링은 정보 시스템에서 사용하는 데이터베이스 오브젝트 모델을 설계하는 것을 말합니다.


데이터베이스 모델링 도구

데이터베이스를 모델링 할 때 모델링 도구를 사용하게 되는데 기능이 많고 복잡하고 가격이 비싸기 때문에 데이터베이스 모델러만 모델링 도구를 사용하고 개발자들은 ERD 출력물을 참고하여 개발하는 것이 현실입니다. 

하지만 수많은 테이블들을 출력물을 이용하여 관리하고 개발하는 것은 상당한 시간이 소요되는 작업입니다. 예를 들어, 영어를 번역하는데 종이 사전을 사용하여 영어 단어를 찾는 것과 같습니다. 개발자도 ER 모델링 도구를 사용하면 작업이 빨라지겠지만 모든 개발자가 사용하기에는 비용이 만만치 않습니다. 
그래서 꼭 필요한 기능을 포함하고 쉽고 저렴한 국내 제품인 eXERD를 소개합니다.



 데이터베이스 모델링 도구 eXERD(국산)

eXERD는 기존 모델링 도구의 가격으로 모든 개발자가 사용할 수 있는 국내 데이터베이스 모델링 도구입니다. eXERD는 기본적으로 단독으로 사용할 수 있지만 이클립스를 기반으로 하고 있기 때문에 이클립스에 플러그인 형태로 설치해서 사용할 수도 있습니다. eXERD는 가장 기본이 되는 테이블, 컬럼, 데이터 타입 등을 대화 상자를 이용하지 않고 다이어그램 상에서 엑셀과 같은 방식으로 빠르고 편하게 디자인 할 수 있습니다. 그리고 국산 제품에 걸맞게 한글 자소 단위의 입력 제안이나 검색 등을 지원합니다. 또한, 논리 이름과 물리 이름을 다이어그램 상에 동시에 보여주고 편집 할 수 있다는 것이 강점입니다.

eXERD의 특징

eXERD만의  중점적인 특징을 살펴보면 ....

1. 논리 이름, 물리 이름 그리고 편집

eXERD는 개발자를 위한 모델링 도구 답게 논리 이름과 물리 이름을 동시에 보여 주는 기능을 제공합니다. 개발자가 테이블이나 컬럼 이름을 참고하여 질의를 작성할 때 암호 코드 같은 물리 이름을 해석하기 위해 노력하지 않아도 됩니다. 이 사항은 출력물일 경우에도 동일하게 적용됩니다. 이런 단순한 아이디어가 개발자들의 가장 큰 불편함을 해소해 주는 요소입니다. 

또한, 논리 이름, 물리 이름, 도메인, 데이터 타입, NOT NULL, 주석을 다이어그램 상에서 보여주고 스프레드시트와 같이 빠르고 손쉬운 편집이 가능한 것이 강점입니다.


<논리 / 물리명을 동시에 보여주면서 편집>


2. 애니메이션, 강조, 공지

eXERD의 괜찮은점 중 하나는 변경 사항이 발생하였을 때 애니메이션을 통하여 변경 내역을 이해 할 수 있게 한다는 점과 선택 된 개체나 작업 내역에 대해 강조함으로서 사용자에게 더욱 자세한 정보를 전달한다는 것에 있습니다. 

또한, 변경 사항이 발생하였을 때 다이어그램 상에서 변경 내역을 알림 바를 통하여 공지합니다. 이러한 요소들은 변경 내역이나 현재 상황을 사용자가 정확하게 인지하도록 합니다.


<컬럼 삭제 취소에 대한 공지와 삭제가 취소된 컬럼 가리키기>

3. 한글 지원

 eXERD는 국산 제품인 만큼 100% 한글 메뉴와 도움말을 지원하는것이 매력적입니다. 또한, 한글 자소   
 단위로 도메인  입력 제안이나 검색을 지원합니다.


<한글 자소 입력에 대응하는 도메인 제안 기능>

4. 검토 및 자동 수정

데이터 모델의 논리/물리적인 결함 뿐만이 아니라 표준화 준수 여부 등을 검토하여 경고 및 오류 수준으로 구분하여 사용자에게 알려줍니다. 이렇게 알려진 결과 중 자동으로 해결 될 수 있는 사항은 자동 수정 기능을 이용하여 자동으로 문제를 해결 할 수 있습니다.


<검토 기능 및 문제 수정>

5. 관계 선 자동 배치

흔히 DB설계를 할때 테이블과 외래 키를 디자인에서 상당히 많은 시간을 소요 하는 부분 중 하나가 관계 선을 배치하는 작업입니다. 보기 좋게 관계 선을 배치하고 난 후 추가 사항이 생기면 또 선을 재배치 해야 하는데요. eXERD는 관계 선을 자동으로 배치 해주어 선 정리에 시간을 많이 투자하지 않고 데이터베이스 모델링 자체에만 집중 할 수 있게 됩니다. 하지만 선을 사용자 임의로 배치하는 기능은 없어 약간 불편한데요. 이점은 개선되어야 할 점이라고 여겨집니다.


<관계 선 자동 배치>

6. 이클립스 기반의 장점

eXERD는 단독으로 실행 할 수 있긴 하지만 이클립스를 기반으로 하고 있기 때문에 이클립스를 사용하여 개발하고 있다면 개발 도구에 플러그인 형태로 설치하여 통합 할 수 있습니다. 별도의 어플리케이션을 실행하지 않고 이클립스 내에서 개발과 데이터베이스 모델링을 동시에 할 수 있다는 점은 큰 매력으로 다가오네요 ㅎ

eXERD에 바라는 점

eXERD를 사용하면서 느낀 점은 출시된지 얼마안되어 그런지 몰라도 부족한 점도 많이 보입니다. 

최근 추가된 ERwin 가져오기 기능은 7.x 버전의 파일만 지원하고 가져오는 속성도 기본적인 부분에 한정되어 있습니다.

또한 ERwin 파일로 포워드 엔지니어링을 통하여 데이터베이스에 반영하고 eXERD에서 반영된 사항을 리버스 엔지니어링을 통하여 가져오는 것이 더 확실해 보입니다. 

마지막으로 협업 작업에 대한 지원이 부족하고 지원하는 데이터베이스의 종류가 적다는 점도 아쉬운 점입니다.

이러한 점들은 개선이 되었으면 좋겠네요 ^^;

결론 

대체적으로 데이터베이스 모델링 도구로서 기본적인 기능들을 모두 지원하고 사용하기가 편리하기 때문에 기존 제품들의 대안으로 충분해 보입니다. 데이터베이스 모델링 도구는 모델링만 하는 것이 아니라 빠르게 모델을 검색하고 속성들을 쉽게 파악할 수 있는 도구로도 사용될 수 있기 때문에 개발자에게도 꼭 필요한 도구라 할 수 있습니다.