실시간 뉴스



[특별기획-SOA가 몰려온다] (상) 기술이 아니라 서비스다


 

2006년 IT업계 전반을 휘감고 있는 화두 가운데 첫손에 꼽히는 것이 'SOA'다. 서비스 지향 아키텍처라는 말로 해석되는 이 새로운 개념이 올해 소프트웨어 업계를 중심으로 거대한 소용돌이를 예고하고 있다. 1996년 미국의 시장조사 전문기업 가트너가 처음 정의해 발표한 이후 이제 꼭 10년째. SOA는 거스를 수 없는 거대한 흐름으로 IT는 물론 산업계 전반에 변화를 몰고 올 조짐이다. 과연 SOA란 무엇이고, 왜 SOA에 주목해야 하는 것인지. 또 SOA가 바꿔놓을 세상은 어떤 것인지를 3회에 걸쳐 조명해본다. [편집자 주]

첨단 기술분야인 IT 시장에는 늘 이슈나 화두가 끊이질 않는다. 또 기술 분야에 걸맞게 이 이슈나 화두는 언뜻 이해하기 힘든 것들이 많다. 최근 들어 주목받고 있는 이슈들만 봐도 그렇다. '실시간 기업(RTE)', 'IT서비스 관리(ITSM)', '온 디맨드(On Demand)', '웹서비스', '유비쿼터스' 등. 여기에 SOA까지.

중요한 것은 이러한 이슈나 화두들이 언제부턴가 기술, 그 자체보다 기술이 가져다 줄 새로운 환경에 대해 얘기하고 있다는 점이다. 그런 점에서 최근 주목받고 있는 이슈들을 관통하는 큰 흐름 하나를 찾을 수 있다. 바로 서비스다.

기술 중심의 산업군에서 '서비스'를 소리높여 외치고 있다는 것이 사실은 최근 IT업계의 이슈나 화두를 통해 읽어내야 할 중요한 변화상이다.

최근 중요한 이슈 가운데 단연 돋보이는 것이 'SOA', 바로 서비스 지향 아키텍처다. 그리고 이를 이해하는 것 역시 '서비스'에 대한 이해에서 출발한다.

◆ SW가 아니라 서비스다

1996년 미국 시장조사 전문업체 가트너가 처음으로 'SOA'란 개념을 선보인 지 이제 꼭 10년째다. 개념에 대한 정의나 개념의 실현 가능성 등을 놓고 설왕설래가 이어지고 있는 가운데, 2005년들어 국내에서도 SOA 바람이 불기 시작했다. 그리고 2006년 소프트웨어 업계 전반이 SOA 열풍을 준비하고 있다.

SOA는 그 자체로 특정 기술이나 제품을 의미하는 것은 아니다. 기업이나 조직의 IT시스템을 구축하는 새로운 방법론이라고 할 수 있다. 그 방법론의 기본 개념으로 꼽히는 것이 '공유'와 '재사용'이다. '공유와 재사용'이라는 기본 컨셉아래 IT 시스템을 구축하자는 것이 'SOA'인 것이다.

그럼, 무엇을 공유하고 재사용하자는 것인가. 공유하고 재사용하자는 기본 단위가 바로 '서비스'다. 결국 SOA는 공유할 수 있고, 재사용할 수 있는 '서비스'라는 콤포넌트를 기반으로 IT 시스템(소프트웨어)을 구축하자는 것이다.

마치 '레고 블럭'처럼 만들어 필요할 때 누구든 꺼내 조립할 수 있게(공유) 하자는 것이다. 한번 만든 레고 블럭은 버리는 것이 아니라, 또 다른 시스템을 개발할 때 누구든 다시 꺼내(재사용) 쓸 수 있게 하자는 얘기다.

이같은 개념은 새로운 것은 아니다. 콤포넌트나 객체, 웹서비스로 이어지며 진화해 온 분산 객체기술의 결정판이 SOA인 셈이다.

그렇다면 콤포넌트나 객체 기술이 이제와 '서비스'라는 이름으로 단순히 개명된 것인가. 물론, 아니다. 서비스라는 개명에는 IT를 바라보는 '혁명적인' 관점의 변화가 숨어있고, 또 인터넷으로 대표되는 네트워크 기술의 뒷받침을 받았다.

여기에 끊임없이 새로운 시장을 만들어야 하는 '산업으로서의 IT'가 만들어 낸 관련업계의 '마케팅 공조'도 내포돼 있다.

◆ 기술은 가라, 이제 비즈니스다

서비스를 새로운 관점에서 접근해 보자.

서비스는 쉽게 말해 '특정 업무'를 통칭해 부르는 개념이다. '특정 기능'이 아니라는 점에 주목해야 한다. '화면을 어떻게 구성하고, 데이터를 어떤 식으로 처리하는가' 하는 기능적 관점이나 사용자 인터페이스 개발이나 데이터베이스관리 같은 솔루션 관점이 아니다.

이를테면 연말정산 '서비스', 급여계산 '서비스', 입출금 '서비스' 등 소프트웨어가 제공하는 궁극적인 목표에 초점을 둔 개념이다. 서비스라는 말 대신 업무라는 말로 바꿔어 보면 이해가 좀 쉽다. 서비스는 좀 더 확대돼 인사관리 서비스, 재무관리 서비스 등으로 확대될 수도 있다.

SOA를 기존의 콤포넌트 기술과 다르게 해석하고 바라봐야 하는 것은, 이처럼 소프트웨어를 기술이 아닌, 그 소프트웨어가 추구하는 목적(서비스)의 관점에서 바라보는 것으로부터 출발하기 때문이다. 어떻게 할 것인가가 아니라, 무엇을 할 것인가라는 측면에서 바라보자는 관점의 변화를 요구한다. 이는 다른 말로 개발자의 관점이 아니라, 소비자의 관점에서 IT를 바라보자는 얘기이기도 하다.

SOA와 분산 콤포넌트 기술과의 차이(자료 : BEA코리아)

예를 들어, 한 은행에서 새로운 대출상품을 기획한다고 생각해보자. 먼저, 상품기획팀에서는 새로운 대출상품의 조건과 이율 등을 계산해 만들어내고, 이 상품이 수익성이 있는 지도 검토한 후 최종 상품을 만들어낼 것이다. 은행의 업무는 IT시스템의 지원이 없으면 안되는 세상이다. 그렇다면, 새롭게 만든 대출상품을 운영할 시스템을 개발해야 한다.

만일, 이 은행은 SOA 기반의 IT시스템이 갖춰져 있다면, 신상품 기획자는 회사내 IT시스템에서 '대출자격요건 심사 서비스'를 꺼내와 거기에 새로운 조건만 추가하거나 변경한 후, 이를 기존의 다른 대출 서비스에 연결만 하면 끝이다. 간단하게 새로운 대출상품에 맞는 '대출서비스'가 완성된 것이다. 새로운 대출상품을 홍보하고 고객을 맞으면 된다.

신상품 기획자가 꺼내온 '대출자격요건 심사 서비스'는 하나의 애플리케이션(소프트웨어)일 수도 있고, 몇개의 애플리케이션이 연결된 경우일 수도 있다. 그것은 중요하지 않다. 이 기획자에게는 그냥 '대출자격요건 심사'를 하는 '서비스' 일 뿐이다.

SOA가 추구하는 궁극적인 그림의 일면이다.

◆ 개발자가 아니 사용자의 관점으로

이는 최종 사용자에게 더 이상 IT를 기술적인 관점에서 바라보지 않아도 된다는 의미도 담고 있다. 전산실 담당자가 아니어도 일선 업무담당자가 직접 IT 서비스를 만들어낼 수 있다. 기존 전산 담당자들은 이제 소프트웨어 개발이 아니라, 서비스 개발자로 탈바꿈한다.

경쟁이 심해질 수록 SOA의 필요성은 더욱 커진다. 정부에서 새로운 세금정책을 다음달부터 시행하겠다고 발표했다면, 이에 따라 각 은행들이 새로운 대출상품을 만들어 고객을 확보하기 위한 경쟁에 돌입했다면, 누가 더 빨리 대출상품을 기획해 이를 지원하는 IT서비스까지 갖추느냐가 시장경쟁에서 승리하는 발판일 것이다.

서비스는 이렇듯 IT나 소프트웨어를 기능적 관점이 아닌 비즈니스나 프로세스 관점에서 바라보는 새로운 시각을 요구한다. 개발자 중심의 시각이 아니라, 현업 업무 담당자 관점에서 IT를 바라보는 것이며, 이는 IT의 기술을 가능한 숨기려는 새로운 시각을 만들자는 것이다.

소프트웨어가 어떤 기술과 기법으로 만들어졌는가에 초점을 맞춰져 있던 것은 개발자의 사고와 관점이다. 그러나 궁극적으로 소프트웨어를 사용하는 사람은 현업 업무 담당자들이다. 이들에게는 소프트웨어로 무엇을 할 수 있는 가가 중요하다. 그 안에 어떤 기술이 적용됐는지는 중요하지도 않고 알기도 어렵다.

SOA의 기본적인 속성(자료 : 한국HP)

SOA 속성 상세 내역
서비스 인터페이스 서비스는 비즈니스 소프트웨어 컴포넌트들로 구성되고, 비즈니스 소프트웨어 컴포넌트는 프로그램에서 서비스에 접근하는 방법을 정의하는 인터페이스 부분과 컴포넌트의 기능을 채워주는 구현 부분으로 구분됨. SOA 디자인에서는 컴포넌트 기능 구현을 위한 설계는 부차적인 문제이고, 핵심적인 사항은 서비스 인터페이스 설계임. 즉, SOA는 근본적으로 서비스 인터페이스들의 흐름과 이들의 관계에 관한 것임.
블백 박스 접근 방식 서비스 인터페이스는 제공 서비스에 대한 정의와 서비스 호출에 관한 약속이므로 서비스 내부의 디자인이나 구현 내용을 모르더라도 찾고 사용하는데 충분한 정보를 갖추어야 함. 즉, 블랙 박스적인 속성을 갖추어야 한다는 것임.
느슨한 연계 (Loose coupling) SOA는 서비스 제공자와 서비스 사용자가 느슨하게 연계됨. 여기서 이야기하는 느슨한 연계는 서비스가 특정 서비스 사용자를 염두에 두고 디자인되지 않는 것을 말함. 이는 디자인 도구에 의해 보장되지는 않는 것으로, 잘못 디자인된 서비스는 비록 SOA 기술을 사용하여 구현되더라도 전체 어플리케이션을 융통성 없는 획일적인 것(Monolithic)으로 만들 수 있음.

실시간 기업(RTE)이란 말이 SOA와 함께 주목을 받고 있다. 외부의 급변하는 비즈니스 환경에 즉각 대응할 수 있는 경쟁력을 갖춘 기업이란 뜻이다. SOA는 바로 이 실시간 기업으로 가는 인프라라고 할 수 있다. SOA를 통해 궁극적으로 추구하는 목표가 바로 실시간 기업이란 얘기다.

일찌감치 IBM은 이를 '온 디맨드'라 했고, 이에 맞서 HP는 어댑티브 엔터프라이즈라 했다. 이는 다시 2006년 RTE란 말로 포괄적인 개념으로 받아들여지고 있다.

그렇다면 실시간 기업을 위한 SOA는 무엇을 말하는가. IT 기술이 RTE를 지원하기 위해 새롭게 조직화돼야 한다는 말이다. RTE로 가기 위한 IT 솔루션의 새로운 구축 방법론, 이것이 바로 SOA다.

실시간 기업이 경쟁력의 핵심이라고 생각하는가. 그렇다면 SOA에 대한 관심과 이해는 필수인 셈이다.

김상범기자 ssanba@inews24.com







alert

댓글 쓰기 제목 [특별기획-SOA가 몰려온다] (상) 기술이 아니라 서비스다

댓글-

첫 번째 댓글을 작성해 보세요.

로딩중
포토뉴스