[초점] 올해를 빛낼 SW 요소기술

올해 국내 소프트웨어(SW)회사들의 경쟁력은 요소기술에 좌우될 것으로 보인다. 요소기술은 SW 규모가 방대해지고 개방형시스템이 보급되면서 대두된 해결책으로서 윈도와 유닉스 등 모든 플랫폼들이 이를 지원하는 추세이다. 이에따라 업체들은 마이크로소프트(MS)와 객체관리그룹(OMG), IBM 등이 주도하는 표준 요소기술 습득과 효율적인 활용방안 등에 보다 적극적인 관심을 기울일 것으로 예상된다.

요소기술은 SW를 크고 작음에 관계 없이 하나의 기계 부품으로 비유하는 개념이다. 따라서 이들 부품은 여러 개가 모여 원하는 모습의 완제품(응용SW)을 조립할 수 있으며 확장할 수도 있다. 여기서 기계부품이 바로 객체(Object)이다. 객체는 문서(Documment)이거나 독자적인 성질과 기능을 갖는 프로그램일 수도 있다.

프로그램 성질을 갖는 것을 특히 컴포넌트 소프트웨어 줄여서 컴포넌트웨어라고도 한다. 컴포넌트웨어를 개발해주는 SW로는 C++, 자바, 스몰토크 등 객체지향 언어가 있다. 컴포넌트웨어를 일반 패키지로 개발(조립)하고 컴파일 해주는 통합도구로는 비주얼C++, 비주얼베이직, 델파이 등이 있다.

그러나 요소기술 범주에서 보다 중요한 것은 객체지향시스템이다. 여기에는 문서나 컴포넌트웨어가 자유롭게 이동(공유)할 수 있는 환경을 제공해주는 객체지향 아키텍처와 컴포넌트웨어가 고유 기능을 발휘할 수 있도록 표준 인터페이스를 제공해 주는 컴포넌트 모델이 있다.

객체지향아키텍처에는 MS의 OLE, OMG의 CORBA, IBM의 오픈닥(Open DOCument) 등이 있다.

이 가운데 OLE(Object Linking & Embedding)는 윈도의 강세와 함께 현재 가장 애용되고 있다. OLE는 지난 90년 윈도3.01에 채택된 이후 네트워크 기반의 윈도NT까지 지원할 수 있도록 개선됐다.

OLE는 여러 SW를 불러와 하나의 문서를 편집할 수 있는 복합문서(Compound Document)기능, 이와 반대로 다른 응용SW에 있는 기능을 불러와 사용할 수 있는 OLE자동화(OLE Automation)기능, 규격화된 표준 컴포넌트웨어인 OCX(OLE Control eXtentions)등 3가지 소프트웨어 서비스를 제공한다. OCX를 인터넷에 사용할수 있도록 확장한 것이 액티브X이다. OLE를 지원하는 대표적인 SW가 MS의 통합슈트 MS오피스이다.

OLE는 그러나 윈도에서만 작동하고 유닉스와는 호환이 불가능하다는 단점이 있다. 현재 유닉스 버전을 개발 중인 것으로 알려지고 있으나 발표시기는 미지수이다.

OLE와 달리 윈도와 유닉스를 넘나들 수 있는 것이 CORBA(Common Object Request Broker Architecture)이다. 이를 개발한 OMG는 거의 모든 객체 관련 기술규격을 제정하는 단체로서 MS, IBM, 디지탈, 오라클 등 1백여 회사들이 가입돼 있다.

CORBA는 기본적으로 개방형 시스템 즉 분산 네트워크 환경을 지원할 수 있도록 개발됐다. 하드웨어의 데이터버스처럼 네트워크 상에서 서로 다른 객체들이 마음대로 오고갈 수 있도록 하는 것이 그 원리다.

지난 90년에 발표된 CORBA는 현재 버전2.0이 발표됐으나 이를 지원하는 상용제품이 많지 않은데다 지나치게 실험적인 성격이 강해서 아직 보편화 되지 못하고 있다는 단점을 안고 있다. 이를 극복하기 위해 최근 MS와 디지탈간에 OLE와 CORBA를 연동시키려는 작업이 진행중이다.

한편 컴포넌트 모델은 컴포넌트웨어들을 표준이 되는 단일 인터페이스로 묶어주거나 연동시켜주는 역할을 한다. MS의 COM과 IBM의 SOM, DSOM 등이 대표적이다.

COM(Component Object Model)은 OLE용으로 개발된 것이다. 앞서 언급한 OCX는 COM과 OLE가 결합할 수 있는 대표적인 컴포넌트웨어다. SOM(System Object Model)과 DSOM(분산SOM)은 CORBA를 지원하기 위해 개발된 것으로서 IBM이 가장 아끼는 전략 제품이기도 하다.

<서현진 기자>