日新又日新

사용자 삽입 이미지

이번 주는 정말 모처럼 본사에서 여유있는 시간을 보내고 있다. 마침 옆 건물에서 재미있는 세미나가 있어 다녀왔다.

전체 세션 중 관심있게 들은 부분은 SDS 박준성 전무의 "Success Factor for Enterprise Service-Oriented Architecture"와 OMG 회장인 Richard Soley의 "Service-Oriented Architecture: Making the Leap, Leveraging the Standards" 다. 이어진 사례 발표는 관심있는 도메인도 아니였을 뿐더러, 기대가 컸던 탓인지 실현 가능한 인사이트를 얻기에는 부족한 내용이였다.

SOA = Business Process + Reusable Service + Executable Component

박전무님의 발표 자료에 실린 SOA에 대한 정의이다. 세미나 주제가 그랬던 탓도 있지만, 국내외에서 SOA는 시기가 문제일 뿐 이미 대세로 인식되고 있는 상황이다. 국내에서도 대형 은행과 증권사에서는 SOA를 핵심 사상으로 두고 차세대 프로젝트를 진행 중에 있는 곳이 있고, 대부분의 컨설팅사에서는 IB와 함께 SOA를 2개의 핵심 축으로 두고 자체 레퍼런스 모델을 만들기 위한 스터디 그룹을 만들어 가동 중이다. 하지만 이런 흐름에도 불구하고 금융권 회사에서 컨설팅을 수행한 내 경험에 비춰보면, 고객들의 SOA에 대한 평가가 상당히 냉혹하고 부정적이라는 사실을 쉽게 확인할 수 있다. 한마디로 개념이 좋다는 건 충분히 알겠지만, 과연 제대로된 성공 사례가 있긴 한가, 그리고 그 개념을 충분히 구현해 낼 역량을 갖춘 조직이나 기업이 있는가에 대해 의문을 갖고 있는 것이다.

그래서 ISP 같은 프로젝트를 수행하며 TA 쪽에서 내놓는 절충안이 보통 EAI를 ESB 유형으로 설계하는 것이다. RTE 구축을 위한 SOA 활용을 최소한의 수준으로 도입함으로써, 정말 우리 회사에서 필요한 SOA가 제대로 정의되었을 때 실행할 수 있도록 하기 위한 밑바탕을 만들어주는 수준이라고 할까. 사실 웹 서비스와 같은 기술적 입장에서 보면 SOA는 이미 검증된 기술 체계를 갖고 있다. 뜯어놓고 보면 SOA의 기술 스펙에는 정말 새로운 기술적인 시도 자체가 거의 없다고도 할 수 있다. 하지만, 제대로 SOA가 구현되어 ROI를 얻기 위해서는 그 기술이 어떻게 활용될 것인지에 대한 깊이 있는 고민을 필요로 한다. 그게 SOA가 쉽게 확산되지 못하는 이유인것 같다.

SOA, BPM and EA are One Strategy for Real-time Enterprise

SOA의 정의를 통해, SOA는 단순히 재사용가능한 컴포넌트를 어떻게 만드는가의 기술 관점만의 문제가 아닌, 재사용가능한 서비스란 무엇인가에 대한 정의가 선행되어야 하고, 그것이 즉각적인 변화가 요구되는 최근의 비즈니스 환경에서 어떻게 비즈니스 프로세스에 기여할 수 있는가에 대한 분석과 그 효과에 대한 검증을 필요로 하는 좀 더 넓은 문제를 다루고 있음을 알 수 있다. 이는 다른 말로 하면, SOA가 제대로 실행되기 위해서는 BPM이나 EA가 동시에 수행되어야 한다고도 말할 수 있다. SOA니 BPM이니 EA니 하는 IT 용어들은 결국 전사적 관점에서 비즈니스 - 어플리케이션 - 데이터 - 기술에 이르는 일련의 아키텍처를 최적화하고, 비즈니스 변화에 따라 유연하게 바꿔나갈 수 있게 함으로써, 기업 경쟁력을 극대화 하기 위한 실시간 기업(Real-time Enterprise)을 만들 수 있게 하는 큰 큐빅의 구성 요소인 것이다.

하지만 안타깝게도 국내의 대부분의 회사는 프로세스 자체가 정립되어 있지 못한 곳이 대부분이다. 프로세스에 의해 회사가 움직이고, BSC나 KPI 등을 통해 평가받아야 하지만, 임원진이 바뀌면 프로세스가 변경되어 버린다거나, 프로세스나 정보, 데이터 자체의 표준화가 미약하다거나, 프로세스가 직원 개인의 머리속에만 들어 있다거나.. 이런 이유로 As-Is 프로세스를 토대로 Resusable Service를 도출해 내고, 이를 다시 Legacy와 새로 만들 프로그램을 포함하여 Executable Component로 뽑아낸다는 것 자체가 불가능한 경우가 많다.

다행스러운 것은 차세대라는 과정을 통해, 데이터 정합성을 높이고, BPR 등으로 비즈니스 프로세스를 정비하고, EA를 통해 기업 아키텍처를 확보하는 기업들이 많아지고 있다는 것이고, 무엇보다 기업들의 IT를 단순한 업무 자동화의 도구로써가 아니라, 기업의 비즈니스 변화를 주도할 핵심 역량으로 인식하기 시작했다는 점이다.

화려한 SOA의 속내를 들여다 보면, 결국 무시했던 기본을 갖추는 것

사실 지금도 고객들이 SOA에 대해 물어오면, 기껏 웹서비스의 기술적인 부분이나 경험해보지 못한 해외 사례를 슬쩍 번역해 설명해 주는 수준에 지나지 않고, 그들이 원하는 정말 제대로된 활용을 고민하기 시작하면 개인적인 한계를 많이 느끼곤 했다. 한마디로 막막했었다고 해야 할까..?

하지만 오늘 세미나를 통해 자신감, 도전 의식, 그리고 기본의 중요성에 대해 다시 한번 생각하게 되었다. 구체적인 실천의 관점에서 내가 겪고 있는 SOA에 대한 막연함은 사실 세미나에 참석한 많은 분들이 함께 느끼고 있는 것이였다. 하지만 SOA 자체는 e-비즈니스가 그러했듯 이미 그 막연함을 뛰어넘어 거부할 수 없는 트렌드로 굳어진 상황이고, 이를 실천할 수 있는 다양한 연구와 고민이 진행되고 있었다. 또한 그러한 연구는 갑자기 어디서 뚝 떨어진 것이 아니였다. 더러는 몇 년전에 익혀두었으나 실전에 사용한 적이 없어 지금은 기억이 가물 가물한 것들도 있었고, 더러는 너무 당연한 기본에 속한다는 것도 있었다.  

이제 다시 명확한 목표 의식을 가지고, SOA에 대해 깊이 탐구해야만 하는 때가 온 것 같다. 중단했던 공부를 시작하기에 딱 좋은 계절이 아닌가..

덧붙이는 글

사용자 삽입 이미지
OMG의 회장을 맡고 있는 Richard Soley 박사님.. 대가의 강의는 마치 한편의 공연 같다. 그리고.. 사기치지 않는다.

- OMG Korea와 소프트웨어 아키텍트들의 협회인 IASA Korea가 설립됨
- 너무 이론적이여서 실제 현장에서 가치가 크지 않다고 판단했던 MDA가 SOA 바람과 함께 살아나고 있음
- BPMN 비즈니스 프로세스를 모델링할 수 있는 표기법이 MDA의 예제로 소개됨 (BPEL과 매핑하는 툴도 존재함, 40여개 벤더가 지원)
- SOA 컨소시움 홈페이지 (http://www.soa-consortium.org)의 위키에 가면 유용한 정보가 잘 정리되어 있음

이올린에 북마크하기(0) 이올린에 추천하기(0)

2007년 10월 18일(목)에 코엑스 인터컨티넨탈호탈 다이아몬드홀에서 KOSTA 주최로 "선진 S/W 아키텍처 활용기법 세미나"가 열렸었다. 행사장이 본사 바로 옆인데다, 마침 프로젝트를 끝내고 쉬고 있던 기간이라 회사 동료분과 함께 세미나에 참석했다. 회사 SVN에서 자료를 찾던 중 예전 세미나 자료를 발견하고, 기억을 더듬어 뒤늦은 참가 후기를 써본다. 세미나는 모두 3개의 세션으로 구성되었다. (세미나 자료 다운로드)

1. 글로벌 SW 경쟁력 확보를 위한 전략 – 김영온 회장(SW아키텍트포럼)

글로벌 SW 경쟁력 확보에 성공한 사례로 인도 회사를 Best Practice로 설정해서 그 특징을 이야기 했는데, 그 중에서 기억할 내용은 No Captive 마켓과 엄격한 이행이다.

  • No Captive 마켓 : 한 마디로 자국 내에서는 시장이 형성되지 않아 글로벌 경쟁력 확보에 대한 공감대와 전사적 역량 집중이 가능했다는 것
  • 글로벌 표준 프로세스의 도입 : 우리의 경우 “인증”에만 집중하고 그 성과를 얻는 것에 무관심했지만(CMMI 레벨 4를 획득했어도 실제로는 요구사항 관리조차 제대로 되지 않는 상황), 인도의 경우 적용 가능한 분야에 필요한 만큼만 도입하고, 엄격하게 이행했다는 점이 차이가 있다는 것

결론적으로 글로벌 SW 경쟁력을 확보하기 위해서 강조한 점은 4가지로 요약할 수 있다.
(1) Certification이 아닌, 실질적인 비즈니스 가치를 획득하는 실용적인 사고
(2) 국제표준(IEEE, ISO, PMBOK, SWEBOK, CMMI, 6Sigma, …)의 도입 및 활용 (정보통신단체표준:TTAS 에 가면 국제표준에 관한 많은 자료가 제공됨)
(3) 오픈소스와 Web2.0의 가능성 강조 (OpenUP 사례)
(4) 프로그래밍, 즉 구현이 기본이 되어야 함

“좋은 아키텍처가 있어도 구현이 뒷받침되지 않으면 소용없고, 아키텍처 없이 좋은 구현이 나오기도 힘들기 때문에 두 가지 모두에 대한 균형잡힌 시각이 필요”

개인적인 생각이지만, 특히 1과 4가 중요한 것 같다. 아무리 좋은 제도를 도입해도, 우리나라만 들어오면 목적이 상실된다. CMMI 3레벨을 받은 업체를 보면, 심사를 위한 단 한개 프로젝트의 Paper CMMI, 관리를 위한 개발 프로세스(개발자에게 전혀 도움이 안되는..)와 ITSM, 무늬만 CBD로 치장한 Code&Fix 방식의 고수.. 등등 폐혜가 만만치 않다. 난 그 원인 중 하나가 구현을 전혀 경험해보지 않은, 혹은 고려조차 하지 않는 뜬구름 아키텍트가 아닐까 의심하고 있다.

2. SOA 기반 특허정보서비스 구축 사례 – 강창수 팀장(한국특허정보원)

SOA 사례는 SOA 도입의 계기가 된 문제 위주로 발표되었으며, 구현에 오라클 솔루션을 사용하였고, 필요시 개발자와 컨택하여 적용한 기법을 소개해 주겠다고 했다. 이 부분은 큰 관심이 없어서 생략..


3. SW architecture 설계 방법론 및 평가 - Rick Kazman, H-M Chen(SEI)


사용자 삽입 이미지
전체적으로 SW Architecture in Practice의 내용을 그대로 요약하여 발표하였으며, ATAM의 뒤를 이을 기법으로 CBAM(Cost-Benefit Analysis Method)과 BITAM(Business-IT Alignment Method) 2가지를 소개했다.


이 중 BITAM은 비즈니스 모델 계층과 IT 아키텍처 계층 사이에 “Business Architecture Layer”라는 이름의 중간 계층을 추가해서 비즈니스적인 가치와 실제 구현되는 IT 아키텍처 사이의 불일치 문제를 해결하기 위한 기법으로, ATAM을 확장시킨 BITAM 자체의 프로세스를 가지고 있었다.


사용자 삽입 이미지
이 밖에 흥미로운 점은 품질속성 워크샾(QAW : Quality Attribute Workshop)의 진행에 대한 상세 내용이였는데, 고객에게 중요하다고 여기는 품질 속성을 말하라고 하면 보안, 사용성, 유지보수성, 성능을 포함한 모든 요소를 다 이야기 하기 때문에 아키텍처 설계의 기본 입력이 되는 품질 속성을 현실적으로 결정하는 방법이 중요하다는 것을 강조했다.

느낀점

선진 SW아키텍처 활용기법을 소개하는 목적의 세미나였지만, 선진이 꼭 최신 기법을 뜻하는 것이 아님을 다시 한번 느꼈다. 소개하는 기법들은 BITAM을 제외하고는 이미 몇 년 전부터 알려졌던 내용들이었으나, 다시 한번 기본의 중요성과 그 기본을 묵묵히 제대로 실천해 낼 수 있는 실행력을 갖추어야 함을 깨달았다.


그리고 아키텍트라는 명함을 달고 활동하기 위해 얼마나 많은 공부와 경험이 뒷받침 되어야 하는지, 각각의 경험을 얼마나 순도높게 쌓아야 하는지에 대한 케즈만 교수의 얘기에도 큰 감명을 받았다.


세미나 행사장에서 IBM, Tmax, CyberLogitec 등 여러 회사에서 참석한 분들과 만나 인사를 나눌 수 있었는데, 사내지식체계 구축과 병행하여 끊임없이 학습하고 서로의 향상심을 유지시켜 줄 수 있는 사내 학습조직이나 연구문화가 절실히 필요함을 깨닫는 기회가 되었다. 다들 바쁘다고 핑계대기 보다, 바쁜 와중에도 끊임없이 자기 개발을 하고 있었다. 쩝..

잡담

사용자 삽입 이미지
케즈만 교수님이 어떤 내용을 인용할 때마다 귀엽게 포즈잡던 Bunny Quotes 제스츄어가 가장 기억에 남는다.

SEI 분들도 그렇고, 전에 만난 프라운호퍼 연구소 분들도 그렇고, 제임스 고슬링도 그렇구.. 내가 만난 모든 대가들은 대부분 다 겸손하고, 격없이 편한 모습을 보여주었다. 역시 벼는 익을수록 고개를 숙인다.

이올린에 북마크하기(0) 이올린에 추천하기(0)
1 
BLOG main image
日新又日新
물개선생, 네번째 이야기
by 물개선생

공지사항

카테고리

분류 전체보기 (104)
CAPS프로젝트 (10)
오픈소스이야기 (2)
오픈씨드 (7)
맥초보탈출 (2)
마소기고글모음 (4)
사는이야기 (29)
자질갖추기 (1)
자바이야기 (4)
아키텍처 (2)
사용자인터페이스 (11)
해보고말하기 (0)
분류하기힘들어 (1)
스크립트언어이야기 (3)

달력

«   2008/07   »
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
tistory!get rss Tistory Tistory 가입하기!