'서비스지향아키택처'에 해당되는 글 1건

  1. 2008.02.13 SOA, 서비스지향아키텍처, 프리젠테이션 주제
반응형
1.SOA(Service-Oriented Architecture)란?
 '서비스를 조합하여 사용하는 애플리케이션의 아키텍처'로 이것을 적절히 적용할 경우 시스템의 개발 생산성, 개발된 시스템의 유지보수성을 향상시킬 수 있을 뿐 아니라, 사용자와의 의사소통을 조금 더 명확하고 쉽게 할 수 있다.

2. 출현 배경
 
IT 시스템 개발 및 유지 보수 문제를 해결하기 위해 나타났다.
 SOA를 적절히 적용한다면, 시스템의 개발 생산성, 개발된 시스템의 유지보수성을 조금 더 명확하고 쉽게 해준다.

3. SOA의 특징
 1)표준화를 통한 업무 시스템의 유기적 통합 유도

 WWW이나  HTTP, HTML 등의 표준을 기반으로 Web에 유통되는 모든 문서의 게시와 접근의 통합을 이루었다면, SOA는 EBS(Enterprise Service Bus)를 기반으로 한 표준화된 서비스 컴포넌트의 조합을 통해 기업의 업무 처리와 서비스의 통합을 지원한다.

 2)시스템 개발 및 유지보수를 엔지니어의 관점에서 업무 담당자의 관점으로 전환하여 줌
 
SOA를 기술적으로 살펴보면 새로운 기술이라기보다는  CBD, Web, XML 등 기존 기술들의 조합기술이라 할 수 있다. 서비스는 기술적으로 객체나 컴포넌트와 그 맥락을 같이하고 있다.
 
 근본적인 차이는 시스템을 객체나 컴포넌트가 아닌 서비스를 기반으로 구성함으로서, 대단위의 재사용이 가능해지며, 엔지니어의 관점보다는 업무 담당자의 관점에서 보다 빠르고, 정확하게 시스템을 구성해 나갈 수 있다는 것이다.

 4.SOA의 장점
 SOA가 최적으로 설계되어 최적의 환경에 적용된다면, 이를 기반으로 표준화되고 통합된 기업의 시스템은, 고객관점의 시스템 개발, 재사용을 통한 생산성 향상, 유지보수 비용의 절감 등의 장점을 제공한다.

 1)SOA는 비즈니스 가치를 IT에서 즉시 수용할 수 있어야 하므로 BDD(Business Driven Development) 체계가 정립된다. 즉, 현업의 업무 프로세스 요건 분석 단계에서 부터 현업이 직접 참여할 수 있는 툴과 프로세스가 제공되어, 변화관리와 품질관리 체계가 현업과의 차이가 없도록 도와줄 수 있다.

 2)웹 서비스 개발 체계에 대한 이해와 개발능력이 확산된다. IMS, COBOL/CICS 환경, C언어, C# 기반의 닷넷 개발자까지 웹 서비스 표준을 통한 컴포넌트 개발 방법을 최소한 이해하는 단계에서 부터 실제 구현하는 단계까지 역할에 따라서 조금씩 차이는 있겠지만, 공통의 의사소통 체계로서 자리잡아 갈 것으로 예상된다.

 3)SOA 거버넌스라고 하는 체계와 프로세스가 확산되면서, 재사용성과 효율성 등 IT의 역할과 평가 시스템이 비즈니스 요구의 반영 속도와 지속적인 규약준수를 위한 관리 프로세스가 확산될 것이다. 즉, 서비스 차원의 재사용과 컴포넌트 관리의 효율성 등을 도와줘, 궁극적으로 'IT의 비지니스 가치'를 명확하게 관리할 수 있게 될 것이다.

성격에 따라 다를 수 있겠지만, 시스템의 유연성 및 표준화를 지원하기 위한 처리공정의 증가로 시스템의 응답성이 현저히 저하되기 때문이다.

 2)기존의 시스템 개발 조직이 SOA 개념을 수용하는데 많은 시간이 소요된다는 것이다.
  SOA 도입하더라도, 객체지향, 컴포넌트 기술의 등장 때와 마찬가지로 개발 환경 및 도구만 변화하고, 시스템 개발은 여전히 기존의 설계 및 구현 방식을 유지할 가능성이 높다.

 예를 들면, Java,  C# 혹은 EJB를 사용하여 개발되는 많은 시스템들이 여전히 기존의 C기반의 Client-Server 혹은 COBOL 기반의 Legacy 시스템과 같은 설계구조를 가지고 개발되고 있다.

 일반적으로 엔지니어들에게 있어서, 개발 기술의 습득은 용이한 반면, 시스템 설계 및 구현 패러다임의 변경은 많은 경험을 바탕으로 오랜 시간이 요구되기 때문이다.

 3)SOA를 적용하는 비즈니스 조직 및 업무 프로세스가 서비스 기반으로 체계화 되어야 한다. 
 SOA를 적용하기 위해서는 이를 적용하는 조직으로부터 서비스 요구사항을 추출하여야 하며, 이를 기반으로 시스템을 구축하여 업무에 적용해야 하기 때문이다.

 4)기타 문제점들
 SOA
 전문 컨설턴트의 부족, ESB와 웹 서비스 등 기술구현 중심의 파일럿 접근, 구체적인 산업별 로드맵에 대한 현업의 참여 부족, 실제 적용시 성능이나 보안 관점의 확신 부족 등을 들 수 있다.

 특히, SOA 전문 컨설턴트는 비지니스 컨설턴트와 IT 아키텍트 양쪽을 연결할 수 있는 새로운 전문영역이지만, 국내에는 이런 영역을 소화할 만한 SOA 컨설턴트가 부족하고, 이들을 양성하기 위한 구체적인 장치도 없다.

 6.SOA의 앞으로의 예상
 앞의 여러 문제점에도 불구하고, SOA는 생산성 및 품질의 향상, 유지보수 비용의 절감 등 많은 장점으로 인해 지속적으로 많은 비즈니스 시스템에 도입될 것으로 예상된다.

 특히, 이기종간 시스템 통합이 필요하거나 다양한 채널을 통한 서비스의 제공이 필요한 분야 등을 중심으로 적용이 가시화 될 것이다. 궁긍적으로 SOA가 객체지향, 컴포넌트 기술 등과 함께 IT 시스템 생산 기술의 중요한 축을 형성하리라 예상된다.

 P.S.
1.이것은 자료 수집을 위해, 필자가 다시 요약한 것입니다. 인용 서적은 KT Business부문에서 발행한 IT Gallery(11+12)의 전자신문의 한세희 기자님이 작성하신 '네트워크의 혁신 CDN'입니다. 인용 페이지는 p.32~p.34입니다.
 
2.이 주제는 전공관련 프리젠테이션 면접에서 나올 만한 주제인 것 같아, 필자가 재구성해 보았습니다. 감사합니다. 
 
반응형