adsense(728_90)


SOA는 씨앗일 뿐이에요. Enterprise

우리가 대화를 한다는 건 서로가 언어에 대해 일종의 약속을 했을 때에나 가능한 겁니다.
철수와 영희가 '영숙이는 밥맛이야'라고 뒷다마 대화를 했을 때의 '밥맛'의 뜻을 철수는 '재수없어'로 받아들이는데 영희는 '밥을 맛있게 잘해'로 이해하고 있다면 대화가 절대로 될 수가 없습니다.

SOA(Service Oriented Architecture)도 마찬가지입니다. 서로가 SOA를 다르게 받아들이고 그게 어느 누구의 잘못이 아니라 SOA라는 말 자체가 가진 심오함 혹은 두리뭉실함에 기인하는 것이라면 SOA 라는 표현 대신 보다 명확한 약속을 재정의해야 하는 게 맞다고 생각합니다.

올해 초 JCO 주최 자바 개발자 컨퍼런스에서 여러 분야의 개발자들과 SOA에 관련된 토론에서나 얼마전 모 SI회사 SOA전문가들과의 세미나에서나 혹은 여러 고객들과의 만남을 통해서 저는 저마다 다른 세상의 SOA를 접합니다. 이러한 SOA에 대한 서로간의 간극은 갈수록 좁아지는 것이 아니라 오히려 더더욱 멀어지고 있다는 것이 저의 생각입니다.

태초에 SOA가 처음 나올 때에는 모두가 비슷한 관점에서 그것을 바라보았죠. 그저 웹서비스로 이루어진 비즈니스 서비스들이 서로 연결되어 있는 아키텍처쯤으로 바라보았습니다. 그런데 SOA의 개념을 만든 멋진 두뇌의 천재들은 그런게 아니었나 봅니다. 점점 알 수 없는 신조어들이 탄생되었고 여러 대형 벤더사들의 입장에서 SOA를 포장하려다보니 서로 다른 이해관계를 가진 거인들에 의해 SOA는 진화(?)되어 갔습니다.

멋진 두뇌의 천재들은 저마다 흩어져 IBM에 들어가고 MS에 들어가고 BEA에 들어가고 오라클에 들어가서는 개발자를 비롯한 IT인들에게 소리칩니다. 그들이 아무리 '이 멍청한 IT인들아. 태초에 내가 SOA를 만들었던 건 너네들이 생각하는 그런 웹서비스 묶음 따위가 아니었다구.'라고 해도 사실 우리 입장에서는 어쩔 수 없습니다. 우리는 SOA를 접하기 전에 웹서비스라는 것을 접했고 그랬으니 서비스 기반의 아키텍처라는 SOA는 그저 웹서비스 아키텍처라고만 바라볼 뿐입니다. 우리는 이제 SOA는 웹서비스 묶음 따위가 아니라 아직 감은 잘 오지 않지만 어쨌든 '서비스'라고 하는 두리뭉실한 것의 묶음 따위 정도다 라는 것은 알게 되었습니다.

MS는 그들이 엔터프라이즈 쪽 기반 시장에서 큰 힘을 발휘하지 못하니 주로 클라이언트 즉, Consumer시장 쪽에서의 SOA를 이야기합니다.
IBM이나 기타 미들웨어쪽 기반 벤더들은 엔터프라이즈와 비즈니스 컨설팅에 강점을 가지고 있으니 주로 비즈니스 ROI를 높여줄 수 있는 엔터프라이즈 SOA만을 이야기합니다.
SI회사들은 프로젝트 수행이나 운영에 강점을 가지고 있으니 주로 IT 프로젝트 개발에서의 SOA를 이야기합니다.
저는 심지어 임베디드 분야나 홈네트워크, 로봇개발 분야에서까지도 SOA를 이야기하는 개발자들을 만나기도 합니다.

이런 상황에서 우리는 과연 SOA라는 단어 하나만을 가지고 올바른 대화를 지속할 수 있을까요? 혹자는 이렇게 답변합니다. SOA는 개념이고 아키텍처 철학일 뿐이라고. 그것을 부인할 수 있는 사람은 아무도 없습니다. 그런데 그렇게 SOA가 철학과 개념 수준에서만 머물면 머물수록 사용자들로부터는 그것이 '실체가 없다'라는 비판을 들을 수 밖에 없다는 데 문제가 있습니다. 왜냐하면 이상과 현실은 엄연히 다르기 때문입니다. 기업 전체를, 인프라 전체를 바꿔야할 지도 모르는 크리티컬한 문제를 해결하기 위한 대안으로 그저 이상적으로 멋진 SOA라는 개념만 믿고 덜커덩 변화를 맡겨버리는 사람이나 조직은 없기 때문입니다.

제가 주장하고 싶은 것은 SOA가 잘못되었다라는 게 아닙니다. SOA가 이제는 다양한 이해관계를 가진 이들에 의해 다양하게 분화되어 쓰여지고 있는 만큼 더 이상 SOA단어 하나만으로는 그것이 주장하는 실체를 누군가에게 이해시키기가 어려워졌다는 것을 말하고 싶은 겁니다. 어쩌면 지금에 와서는 SOA는 IT 기술과 비즈니스 , 혹은 IT기술과 인간이 보다 가까워지기 위한 철학이나 개념 혹은 메타개념정도에서 머무르는 것이 타당하지 않을까 생각합니다.

결국 SOA에는 기술 표준이 있을 수 없습니다. MS에게는 MS만의 SOA가 있는 것이고 IBM에게는 IBM만의 SOA가 있는 것입니다. 당신이 개발자라면 당신만의 SOA가 있는 겁니다.
만약 누군가가 SOA를 이야기하고 싶다면, 그것의 실체를, 보다 몸으로 느껴지는 SOA를 이야기하고 싶다면 SOA는 시작에 불과합니다. SOA라는 씨앗으로 키우고자 하는 뿌리와 줄기와 열매 그 모두를 다시 처음부터 이야기해야 합니다.

공유하기 버튼

 

핑백

덧글

  • Magicboy 2007/10/22 00:50 # 삭제 답글

    SOA관련 Pilot 프로젝트를 대략 2년간 진행해왔는데...
    초기 마케팅하러 왔던 분들의 말과 현실은 너무나 달랐다..라는 것만 몸소 느끼고 있네요...
댓글 입력 영역


Google Analytics