[2010년 3월 21일]
소프트웨어 개발 산업은 두 가지 종류의 고민을 갖고 있는 것 같습니다.
첫번째 고민은 어떻게 하면 쓰레기를 넣고, 쓰레기의 악취와 더러움을 좀더 그럴싸하게 없앨 수 있을까이고, 두번째 고민은 어떻게 하면 처음부터 쓰레기가 아닌 양질의 재료를 넣을 것인가에 대한 고민입니다.
첫번째 고민에 대한 답으로 시스템 요구사항분석, 아키텍처, 설계, 구현 기술의 발전을 이루어왔습니다. 요구사항분석이 두번째 고민에 대한 답으로 보이지만 비즈니스 분석과 그에 대한 시스템의 매핑이 이루어지지 않고 있는 시점에서는 이것은 단지 첫번째 고민의 답에 해당할 뿐입니다. 물론 아직 첫번째 고민에 대한 해답도 그럴싸해보이지는 않습니다.
두번째 고민을 해결하기 위해서는 체계적인 비즈니스 모델링 방법이 필요합니다. 비즈니스 분석이 시스템 설계에 직접적으로 반영될 수 있어야 합니다. 예를 들어 비즈니스에서 계좌를 식별하고 명세한 내용이 직접적으로 시스템의 컴포넌트로 매핑되고 구현되어야 합니다. 지금도 이렇게 하고 있는 것처럼 생각하는 사람들도 있습니다. 비즈니스를 모델링시 비즈니스 분석 내용의 정리가 시스템 컴포넌트의 명세와 동일하게 되지 않는한 흉내만 내는 것입니다. 흉내를 내는 사람들은 그래도 올바른 고민에 대한 해결책을 찾고 있는 것이니 그래도 나은 편입니다.
임시변통적인 해결책들은 우리를 더 많은 쓰레기 더미에 갇히게 할 뿐입니다. 우리에게는 올바른 방법이 필요합니다. 올바른 방법은 우리가 쓰레기 더미에 갇혀있고, 올바른 방법이 필요하다는 인식에서 부터 시작됩니다.


