SW/클라우드 서비스 아키텍처

서비스 기반 아키텍처 : SOA 구축 : 사례, 정의, 개요, 개념

얇은생각 2020. 5. 17. 19:30
반응형

은행 도메인

서비스 기반 아키텍처 : SOA 구축 : 사례, 정의, 개요, 개념

먼저 SOA를 적용해서 어떤 비즈니스 Goal을 달성하고자 하는지를 설정해야 합니다. 금융 도메인을 보면 다양한 비즈니스 라인에서 다양한 서비스가 제공되어야 합니다. 또한 다양한 채널을 통해서 고객들이 그러한 서비스를 소비해야 됩니다. 그래서 이 경우에서는 비즈니스 Goal로서 새로운 비즈니스 환경에서 어떻게 하면 혁신을 이루고 또한 투자 대비 효과를 빠르게 할 수 있을까 하는 것을 목표로 설정합니다.

또한 금융권을 보면 은행이 빈번하게 서로 합병을 하게 됩니다. 이러한 경우에 기존에 은행들이 사용하고 있던 서로 다른 금융 시스템들이 기존의 사용자들에게 제공되는 서비스의 중단 없이 효과적으로 통합되는 것이 굉장히 중요합니다.
그래서 SOA를 적용할 때를 이러한 문제 해결을 목표로 설정할 수 있습니다.

가장 먼저 해야 할 일은 우선 중요한 비즈니스 프로세스와 개선 목표 그리고 구체적인 문제점을 찾습니다. 이것을 통해서 비즈니스 프로세스 지원과 목표 달성 그리고 문제 해결을 위한 서비스를 도출할 수 있습니다. 그래서 가장 먼저 해야 될 것은 중요한 비즈니스 프로세스 그리고 그러한 개선 목표, 문제점들을 구체적으로 파악하는 것입니다.

금융권에 존재하는 다양한 비즈니스 라인들, 즉 Morgage, Credit Card, 저축 이러한 비즈니스 라인의 담당자들과 대화를 통해서 그 비즈니스 라인들에 대해 심도 있는 이해를 하는 것이 매우 중요합니다. 금융 서비스를 다양한 채널들, 즉 기존에 은행 지점이라든지 인터넷을 통한 채널 그리고 고객 센터를 통해서 지원하게 됩니다. 이러한 다양한 채널들에 대한 분석도 필요합니다.

이러한 분석을 통해서 비즈니스 라인과 채널을 통해서 다양하게 제공할 수 있는 서비스를 Define해서 구체적으로 서비스 기반 아키텍처를 설계합니다. 다양한 비즈니스 라인에서 공통적으로 사용할 수 있는 중요한 비즈니스 프로세스를 식별해서 그런 것들을 정의할 필요가 있습니다.금융권에서는 계정관리, 고객정보에 대한 인증이 가장 중요한 비즈니스 프로세스로 파악이 됩니다.

금융권에 굉장히 다양한 정보 소스들이 있습니다. 즉, 고객정보, 계좌정보 이런 정보 소스들이 있습니다. 그리고 세 번째로는 은행에서는 기존에 사용하고 있던 시스템들, 즉 레거시 시스템과 애플리케이션들이 굉장히 많이 존재합니다. 이러한 것들을 비즈니스 프로세스 제공을 위해서 어떻게 활용할 수 있는지, 어떤 것들이 중요한지 이런 것들을 파악하는 게 필요합니다.

정보 서비스의 사례는 고객관리서비스라든지 금융사기를 방지하기 위한 서비스 등이 있습니다. 이러한 다양한 채널들에 대한 지원을 위해서 웹을 통한 애플리케이션들이 구축돼 있고, 즉 프론트엔드 애플리케이션이 구축돼 있고, 또한 다양한 유저 인터페이스도 설계되어 아키텍처에 포함되어 있습니다.

가장 핵심적인 효과 중에 하나는 다양한 비즈니스 라인에 걸쳐서 서비스와 정보들을 공유할 수 있습니다. 즉 공유할 수 있는 체계가 마련됐다는 것이 가장 중요한 효과 중에 하나입니다. 두 번째는 금융 시스템을 운영하고 네트워킹하고 관리할 수 있는 비용을 획기적으로 낮출 수 있습니다. 그리고 세 번째로는 어떤 새로운 IT 기술이나 새로운 비즈니스의 니즈에 따라서 이러한 금융 시스템을 보다 더 민첩하게 구성을 해서 다양한 서비스를 제공할 수 있는 환경이 마련되어 있습니다.

그리고 고객들의 다양한 요구사항들이 있는데 그것에 맞춰서 보다 더 Customize된 서비스를 유연하게 제공할 수 있는 그런 시스템화가 되어 있습니다. 또한 우리가 이런 서비스화된 시스템을 통해서 앞으로 금융 시스템이 어떻게 더 발전되어야 하는지를 더 쉽게 효율적으로 파악할 수 있는 환경이 마련되었습니다.

 

 

SABRE

서비스 기반 아키텍처 : SOA 구축 : 사례, 정의, 개요, 개념

Sabre Holdings라는 회사에서 개발한 SABRE라는 컴퓨터 기반의 예약 시스템이 있습니다. SABRE는 Semi-Automated Business Research Environment의 약자로 당초 이 시스템은 미국의 American Airlines의 예약 프로세스를 자동화하기 위해서 개발이 됐습니다.

이 SABRE 시스템은 지금은 Sabre Global Distribution System이라고 하는 시스템으로 발전을 해서 35만 개가 넘는 여행사, 400개가 넘는 항공사, 10만 개 이상의 호텔 체인에서 활용되고 있는 대규모 예약 시스템이 되겠습니다. 또한 이 SABRE 시스템은 최근에 웹 서비스를 통해서 개발자들이 예약에 관련된 다양한 애플리케이션을 개발합니다.

그것들을 통해서 사용자들이 다양한 무료 서비스를 잘 활용할 수 있는 환경으로 발전을 하였습니다. SABRE 시스템의 발전 단계를 살펴보면 1960년대부터 2000년대 초반까지는 모든 기능이 중앙 집중적인 서버를 통해서 제공되는 전통적인 클라이언트 서버 방식의 2-Tier 아키텍처를 사용하였습니다.

그리고 이후 2007년까지는 기본적인 서비스 기반 아키텍처를 구성해서 기존에 여러 파트너 회사들이 제공하던 서비스들을 잘 통합하였습니다. 쉽게 새로운 서비스와 결합할 수 있는 기본적인 SOA 시스템이 구축되었습니다. 그리고 2008년 이후부터 최근까지는 표준 기술을 바탕으로 한 Service-Oriented Architecture가 구축되어서 새로운 비즈니스 니즈에 따라서 다양한 무료 서비스가 새롭게 추가되었습니다.

그러한 서비스들이 융합돼서 웹을 통해 많은 사용자들이 쉽게 활용할 수 있는 그런 형태로 발전이 되었습니다. 즉, 최근에 진정한 SOA의 모습으로 SABRE 시스템이 다시 재탄생하였습니다. 초기에 SABRE 서비스 기반 아키텍처를 살펴보면, 이 당시에는 다양한 파트너들이 제공하고 있는 서비스들을 고객들이 하나의 통로, 경로를 통해서 쉽게 접근할 수 있게 하느냐에 초점을 두었습니다. SABRE 시스템에서는 Universal Service Gateway라는 것을 개발했습니다.

USG라는 걸 개발해서 다양한 공급자들이 제공하는 서비스들을 이 Gateway라는 하나의 통로를 통합니다. 즉 인터넷을 통한 Gateway를 통해서 고객들이 접근할 수 있는 환경을 마련했습니다. 이 시스템에서 핵심이 되는 것은 바로 공급자들이 사용하고 있는 다양한 미들웨어 기술들을 고객들이 신경 쓰지 않습니다. 하나의 단일화된 Gateway를 통해서 이러한 서비스를 소비할 수 있도록 하는 것이 가장 큰 초점이었습니다.

개발된 SABRE의 SOA 시스템을 보면, 금융권의 SOA하고 유사하게 다양한 비즈니스 라인에서의 레거시 시스템들의 핵심 서비스들이 발굴됩니다. 이러한 서비스들이 표준 SOA 기술들을 사용하고 서로 연동되도록 구성되었습니다. 아랫부분에서는 레거시 시스템들에서 발굴된 서비스들이 분야별로 구축이 된 것을 보실 수 있습니다.

이런 것들이 표준 기술을 사용하는 Enterprise Service Bus를 통해서 서로 연동될 수 있게 된 것을 보실 수 있습니다. 그리고 애플리케이션 개발자들은 필요한 서비스들을 취사 선택을 합니다. 고객의 니즈에 맞게 그러한 서비스들을 조합해서 애플리케이션을 만들 수 있도록 환경이 구축되었습니다.

다양한 파트너들이 존재하는 이런 예약 시스템 도메인에서 파트너들의 시스템을 웹이나 모바일 디바이스나 이런 새로운 인터페이스를 통해서 고객들에게 쉽게 전달할 수 있게 되었습니다. 두 번째로는 웹을 통해서 굉장히 많은 사람들이 예약 시스템을 활용할 수 있습니다. 매일매일 수백만 건에 달하는 예약 트랜잭션을 보다 더 유연하게, Scalable하게 처리할 수 있는 그런 환경이 마련이 되었습니다.

또한 서비스 기반으로 해서 파트너들의 다양한 콘텐츠와 기능들을 보다 더 Flexibility하게 고객들에게 전달할 수 있는 기반이 마련되었습니다. 그리고 이런 다양한 파트너로부터의 다양한 서비스들이 잘 Orchestration이 됩니다. 즉 통합이 돼서 다양한 애플리케이션이 창출될 수 있는 환경으로 발전이 된 효과를 보실 수 있습니다.

 

출처 : http://www.kmooc.kr/courses/course-v1:KAISTk+CS459+2020_K12_01/about

 

클라우드 서비스 아키텍처

소프트웨어 아키텍처의 기본 개념, 설계 및 평가 방법에 대해 학습하고, 이를 바탕으로 클라우드 서비스 아키텍처 설계를 위한 서비스 모델링 방법과 아키텍처 구성 방법을 적용할 수 있도록 만들어진 강좌입니다.

www.kmooc.kr

반응형