[e테크]기존IT시스템의 재활용-기존 시스템의 이해

기존 시스템을 이해하려면 여러 계층을 거쳐야 한다. 마치 양파 껍질을 벗기듯이 벗기면 벗길수록 핵심에 가까워진다. 기존 시스템은 여러 가지 형태로 이해할 수 있다. 이해의 수준은 기업의 목표에 따라 다르다. 가트너는 ‘object(객체)’나 ‘component(컴포넌트)’ 대신 ‘artifact(응용 프로그램 개발에 필요한 구성 프로그램)’이라는 어휘를 사용하는데 이는 객체나 컴포넌트와의 혼동을 피하기 위한 것이다.

 오는 2003년까지 기존 시스템의 이해를 돕는 툴 시장은 소프트웨어 처리 기능의 향상보다는 전자상거래 수요에 의해 성장할 전망이다. 시스템 관리비용 절감의 필요성과 응용 프로그램 통합 수요의 증가가 이 시장 성장의 견인차 역할을 할 것이다.

 그 동안 시스템 구성요소간의 관계나 프로그램의 흐름을 파악할 수 있게 하는 툴은 주로 시스템의 관리비용을 줄이기 위한 목적으로 사용됐다. 그러나 전자상거래의 영향으로 사업의 변화 추세는 응용 프로그램 개발 업체들로 하여금 이러한 툴을 재검토하도록 하고 있다. 컴포넌트나 분산 컴퓨팅 환경에서의 프로그램 방식 접속 환경 조성에 따른 사업 영역의 확장도 새로운 성장 촉진 요인이다.

 따라서 기존 시스템을 이해하는 툴은 데이터 및 제어의 흐름, 특히 인터페이스 정의의 확인과 관련된 충분한 정보를 제공할 수 있는 능력에 따라 평가된다.

그 툴에는 다음과 같은 기능이 있어야 한다.

 △데이터 파일, 데이터베이스관리시스템(DBMS) 테이블, 작업 파일, 고객정보제어시스템(CICS:Customer Information Control System) 메시지 및 스크린 등과 같은 잠재적 인터페이스 접촉점을 찾을 수 있는 능력이 있어야 한다.

 △높은 수준의 인터페이스로 둘러싸인 시스템군을 인식할 능력이 있어야 한다.

 △인터페이스 정보의 영향을 분석할 수 있어야 한다.

 △적절한 컴포넌트화나 래핑 프로그램에 이용할 수 있는 인터페이스 문서를 작성할 능력이 있어야 한다.

 △새로운 인터페이스를 추가하거나 기존의 것을 합리화하기 위해 코드를 재구성하든가 일부를 잘라내는 능력이 있어야 한다.

 기존 시스템의 통신제어 부문을 향상시키는 데 각종 웹 호스트를 사용하는 응용 프로그램 개발 업체들은 프로그램 이해의 수준을 높일 필요가 별로 없다. 그러나 기존의 내부 시스템을 외부 구성요소로 개방해감에 따라 통합의 범위와 정도를 높여야 한다. 대부분의 기업은 높아지는 진화의 수준을 수용할 수 있는 시스템과 프로그램에 대한 이해를 하지 못하고 있다.

 응용 프로그램의 통합 필요성이나 소프트웨어 패키지 교체 또는 새로운 소프트웨어 패키지에 대한 인터페이스의 접속점을 확인하는 데는 필요한 맵(설명도)이나 갭(간격)의 분석에 의해 데이터 및 제어 흐름에 대한 명확한 이해가 필요하다.

 기존 시스템은 사업논리 및 데이터 검색 논리와 뒤섞여 있어서 시간이 많이 소요되기 때문에 대부분의 기업체들은 이의 재구축을 회피하고 있다. 그래픽 사용자 인터페이스의 연장 제품들은 웹을 통해 더 적합한 접속을 가능하게 한다. 그러나 논리를 분리해 생각하면 시스템 통합 능력을 더 고도화시킬 수 있다. 게다가 사업 논리를 분리시키면 응용 프로그램을 통합하는 과정에서 이를 재사용할 가능성이 높아진다. 시스템을 단순화해 관리비용을 줄이기 위해 재구축하면 대부분의 기업이 필요로 하는 통합을 충분히 이루지 못할 것이다. 전자상거래 수요가 더욱 늘어나고 있어서 앞으로 시스템 통합이 응용 프로그램 개발에 대한 수요를 주로 촉발할 것이다.

 대부분 기업의 경우 응용 시스템을 통합하는 데는 어느 정도 자바 프로그램을 사용한다. 자동화하지 않으면 MVS 코볼/CICS/DB2와 같은 환경에서 시스템의 흐름, 인터페이스 및 데이터 관계를 이해하기 어렵다. 응용 프로그램 분석 업체들이 기업의 특정분야 응용 프로그램만을 분석한다면 진정한 의미의 ‘이해의 툴’을 제공한다고 말할 수 없다.

 응용 프로그램 업체는 새로운 전자상거래와 기존 프로그램의 통합에 필요한 이해 툴을 모두 제공할 수 있어야 한다. 따라서 기업체들은 응용 프로그램 분석 업체와 툴을 신중하게 선정해야 한다. 완전한 툴은 없지만 그렇다고 해서 툴을 사용하지 않으면 기존 시스템의 통합에 실패할 것이다. 기존 시스템을 전환, 통합하면 오는 2003년까지는 매출을 확대하는 데 기여할 것이므로 기업체들은 기존 시스템을 연장하는 데 그쳐서는 안된다.

 단기적으로는 기존 시스템을 확장해 사용할 수 있으나 장기적으로 이는 여러 가지 문제를 일으킬 수 있다. 기존 시스템을 확장하려면 응용 프로그램의 체계화, 시기 적절한 연장 프로젝트의 추진, 응용 프로그램의 혼합 등의 조치를 취해야 한다. 이러한 목적을 달성하기 위해서는 먼저 응용 프로그램 구성 요소와 그들간의 기술적인 관계를 포함하는 기존 시스템 환경에 대한 구체적인 내용을 파악해야 한다. 또 이들 기술적인 관계와 관련 사업체계를 도식화해야 한다.

 다시 사용할 수 있도록 새로 개발된 프로그램 컴포넌트는 그 관리가 매우 중요하다. 새로운 환경에서 기존 시스템을 유지하면서 기존 사업 체계를 재사용하려면 ‘두 가지 응용 시스템’을 관리해야 한다. 그리하여 새로 개발하는 응용 프로그램이 기존 컴포넌트의 재판이 되지 않도록 해야 한다. 이처럼 기존 시스템의 연장기술은 응용 프로그램을 필요로 할 때 즉시 사용하게 해주고 이들 응용 프로그램의 혼성 프로그램은 거기에 재사용 프로그램의 씨를 심어서 오랫동안 진화할 수 있게 해준다.