1 / 31

SOA ( 서비스 지향 아키텍처 )

SOA ( 서비스 지향 아키텍처 ). Service Broker. Find. Register. Service Contract. Service Consumer. Service Provider. Bind. Client. Service. 이현우 hyun1822@paran.com. < 目 次 >. SOA 필요성 SOA 동인 SOA 개념 SOA 목적 Service 정의 SOA 정의 서비스 지향과 아키텍처 기본요건 및 특징 Service Principles

benjy
Télécharger la présentation

SOA ( 서비스 지향 아키텍처 )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SOA (서비스 지향 아키텍처) Service Broker Find Register Service Contract Service Consumer Service Provider Bind Client Service 이현우 hyun1822@paran.com

  2. < 目 次 > SOA 필요성 SOA 동인 SOA 개념 SOA 목적 Service 정의 SOA 정의 서비스 지향과 아키텍처 기본요건 및 특징 Service Principles Service 입자성 및 추상성 Service Agility Service Adaptability Service Legacy 연계 SOA Constitute

  3. SOA 필요성 • SOA 필요성 증대 • 통신 회사(KT,SKT 등) 및 금융권(하나은행 등)의 차세대 시스템의 SOA 아키텍처 도입 증대 • SOA 투자로 인한 직간접적인 프로젝트 증대로 매출 순위의 뒤바뀜 (세계 SI 시장 1위 탈환)

  4. Business 목표 IT 아키텍처 서비스 지향 IT 아키텍처 비즈니스 전략 (PI, BPR) • 비즈니스 변화에 대응하는 서비스 중심으로 IT 응답성 제고 SOA 동인 • 차세대 시스템의 아키텍처의 요구사항 • IT 시스템의 유연성 및 신속한 비즈니스 대응력이 비즈니스 경쟁력이 되고 있음 비즈니스 요구사항 경영 환경 변화 요인 (동인) 아키텍처 요구사항 비즈니스  서비스 • 변화하는 비즈니스 환경에신속하게 대응 • 비즈니스 효율성과 성능을 향상 • 기업 내 각 부서, 비즈니스 단위, 비즈니스 파트너와의 통합운영 • 변화하는 비즈니스의 우선 순위를 신속히 적용할 수 있는 정보기술 체계 필요 • IT를 비즈니스 전략에 보다 밀접하게 연관시킴 • 비용 효율적 구조 • 안전하고 관리 가능한 환경을 제공 SOA

  5. SOA 동인(Gartner Hype Cycle) • SOA Position • Gartner 곡선에 의하면 SOA는 안정화 단계 및 실현 단계로 5-10년 사이 main stream이 될 것으로, SOA는 피할 수 없는 현실이며, 기업의 SOA Transformation이 중요해질 것으로 예상하고 있음.

  6. SOA 개념 • SOA(Service Oriented Architecture) 개념 • IT 시스템의 유연한 아키텍처를 서비스로 재구성함 • Service는 비즈니스 서비스와 함께 IT 서비스로 분리 가능하며 • 이를 총괄적으로 구성 Enterprise Service 관리 방안이 있어야 함 비즈니스 관점 Service Oriented Alignment Service 정의 Architecture IT 관점

  7. SOA 목적 • SOA 목적 • 기업의 비즈니스 변화에 IT 가 빠르게 대응할 수 있도록 고객의 비즈니스와 이를 뒷받침하는 Enterprise IT 아키텍처를 밀접하게 Align 시키도록 Principle, Framework, Methodology 를 제공함 SOA Goal Business And IT IT 비즈니스 Concept and Principle Framework Methodology

  8. Service 정의 • 비즈니스 수행 단위(Task)를 표현하는 재사용 가능한 컴포넌트 • 고객 찾기 • 계좌 찾기 • 신용 카드 유효 가능 검사 • 신용 조사 • 호텔 예약 • 이자율 계산 • 서비스는 조직 단위를 넘어 Global하게 배포 가능함 • 새로운 비즈니스 프로세스 단위로 재구성이 가능함 • Service 란? • - 논리적으로 하나의 단위를 이루는 업무를 자체적으로 처리할 수 있는 소프트웨어 구성요소 • - 비즈니스 업무의 논리 단위를 구현한 것으로서, 개방형 인터페이스로 설계되어 • 다른 프로그램에서 접근이 가능한 소프트웨어 컴포넌트를 「서비스」라고 지칭함 • - 다른 어플리케이션의 요청(Request)을 받아들이고 결과를 전달하는 인터페이스 부분과 • 요청된 서비스를 실제로 처리하는 구현(Implementation)부분으로 이루어짐

  9. SOA 정의 • Service Oriented Architecture(서비스 지향 아키텍처 )란 ? • - 서비스 요청자(Client)와 제공자(Server)로 이루어진어플리케이션 소프트웨어 설계방식 • - 표준기반의 공통사용(재사용)이 가능한 서비스들의 관계를 느슨한 관계로 모델링하여 소프트웨어의 서비스화를 지향하는 아키텍처 ☞ 웹 서비스(Web Service)는 SOA의 구현을 위한 현존하는 최적의 기술 대안 ☞ 웹서비스 : 표준화된 XML 기반의 인터페이스를 통하여 플랫폼과 독립적이고 프로그램 언어에 중립적인 방법으로 네트워크 상에서 응용프로그램들을 접속하는 활동 SOA 의 비즈니스 관점 및 서비스 관점 …whereby business activity components are packaged as well-defined services, accessible electronically by partners, suppliers and others …which is implemented within an architectural technology framework optimized for this purpose + Technology Focus (Architecture) Business Focus (Service Oriented)

  10. 서비스 지향과 아키텍처 • Service Orientation • “open” 된 상호 호환성 있는 프로토콜을 사용하여 어플리케이션간 서비스 description과 이를 지원하는 dynamic discovery 시스템을 통해 조합되는 것을 지원하는 환경 • Architecture • 일정한 총체적인 목표를 달성하기 위해 컴포넌트를 서로 조합하는 프로세스 • Layer에 의해 구성되는 컴포넌트들을 통해 이루어지는 blueprint로, 컴포넌트간의 특성 및 관계 및 상호 작용, 제약사항들을 포함

  11. 기본요건 및 특징 • 기본요건 • SOA 는 표준화에 따른 서비스 구성을 통해 Layered 구조를 이루게 하며, 재사용 가능한 서비스 모듈의 사용 방안을 제공하여 서비스간 Loosely-coupled되어 통신하도록 하여 유연한 비즈니스 대응을 가능하게 함

  12. 기본요건 및 특징 사용자 사용자 SOA 주문 처리 업무 서비스 고객 모듈 재고 모듈 송장 모듈 배송 모듈 실적 모듈 고객 관리 재고 관리 송장 관리 배송 관리 실적 관리 주문 처리 업무 • 서비스 지향 아키텍처의 특징 • 느슨한 연결 (Loosely Coupling) : 기민하게 각 서비스의 내부 구조 및 구현의 변화에 대응 • 굵은 입도 (Coarse Granularity) : IT환경의 기술적인 복잡성을 덮어줌 • 재사용 (Reuse) : 개발기간 단축, 비용 절감 • 민첩성 (Agility)향상: 서로 다른 환경에서 개발된 시스템의 통합이 쉬우며, 변경 요청 발생時 신속 대응이 가능해짐 • 개발 생산성 행상 : 개발자는 자신이 개발하는 시스템에서 어떤 서비스를 요청할 것인가만 신경을 쓰면 되고, 요청한 서비스가 어떻게 처리되는지는 몰라도 됨

  13. SOA Principles (1/4) • 1) 상호 운용성(Interoperable) • Universal Interface 인 Web Services 기술을 이용하여, • 기존의 독점적인 “Lock and Key” 디자인이 아니라, • 어디에서든 통하는 전기 socket과 같은 Interface를 통해 다수의 응용 어플리케이션과 쉽게 결합할 수 있는 기반을 제공함 • 예) 전자 제품 과 Wall-Sockets / USB 와 USB Device

  14. Applications composed of Services SOA Principles (2/4) • 2) 조합 가능성(Composable) • Web Services 기술은 WSDL을 이용하여 자신의 묘사가 가능하며 이런 “Self-Describing” 특성과 SOAP을 통한 상호 운용성은 Software 솔루션을 서비스 조합으로 가능하게 함 • 서비스의 Building Block 화

  15. <description> <types> </types> <interface name = “..”> </interface> <binding name = “..”> </binding> <service name= “..” interface = “..”> </service> </description> SOA Principles (3/4) • 3) 재사용성 (Reusable) • 서비스는 자신을 설명하는WSDL (Web Services Description Language)를 갖고 있는 단위 소프트웨어로 SOAP 메시지 통신을 통해 언제 어디서든 호출 가능함 • 이런 특징을 갖는 서비스는 재사용이 가능하며, 따라서 Repository에서 관리되어 짐 WSDL is a Key Request Service Response Repository / UDDI *) UDDI = Universal Description, Discovery and Integration

  16. SOA Principles (4/4) • 4) 느슨한 결합 (Loosely-coupled) • 서비스 간 연동은 웹 서비스를 Wrapper로 사용하여 Loosely 하게 연동하도록 함 • 중요 비즈니스 서비스의 인터페이스를 웹 서비스로 노출하고, 호출 시 또한 웹 서비스를 활용, 플랫폼 및 기술에 독립적인 Coupling을 이루게 함 X Order Web Service I_SalesOrder_Create Sales Order Application Platform Z Order Service Procurement Application Web Service Interface Platform X

  17. Abstraction ServiceWrapper ServiceWrapper InfrastructureServices ExistingApplication ExternalServices ExistingApplication Service 입자성 및 추상성 • 서비스 Granularity(입자성) 및 Abstraction(추상성) • 입자가 굵은(Coarse Grained) Business Service와 입자가 작은(Fine Grained) Impl. Service의 적절한 조합(Aggregation)및 추상성을 통해 서비스 기반의 비즈니스환경 구축 가능 • 고려요소 • 굵은 입자성 • 외부에서 사용의 적절성 ) • 느슨한 연결 / 디자인 • Low level 서비스와 Business 서비스의 조합 Coarse Grained Business Services (Business Services Bus) Aggregation Fine Grained Implementation-Based Services

  18. Service Agility • 서비스 통한 신속한 개발 가능 • 새로운 비즈니스인 교육 사업을 위한 Course Management Application 프로그램 개발 시 이미 개발되어 사용되어지는 서비스를 호출하여 구성 가능하며, 새롭게 개발되는 Room Availability 서비스는 또 다른 비즈니스 or 어플리케이션에서 호출하여 사용 가능함 주문 처리 어플리케이션 (Order Processing Application) 과정 관리 어플리케이션 (Course Management Application) 새로운 어플리케이션은 쉽게 사용 가능한 서비스를 찾을 수 있음 새로운 서비스는 또한 다른 Application에서 사용 가능함 고객 찾기 Service 신용 체크 Service 물품 처리 Service 재고 체크 Service Room Availability Service

  19. Service Adaptability • 서비스 Communication • SOA Infrastructure에 의해 서비스의 프로토콜과 data 변환이 가능하여 확장성을 보장 가능 Order Processing Application SOA Infrastructure 는 어플리케이션과 서비스 사이의 통신 메커니즘을 제공함 SOA Infrastructure 서비스의 변경 사항은 기존 서비스를 사용하는 Application에 영향을 미치지 않음 고객 찾기 Service 신용 체크 Service 물품 처리 Service 재고 체크 Service

  20. Service Legacy 연계 • Service Legacy 연계 • 서비스 기반의 infrastructure를 통해 Legacy 시스템과의 연결을 표준화함. 어플리케이션은 SOA Infrastructure를 통해 Legacy의 서비스를 연동함으로, 신뢰성 있는 환경을 제공할 수 있음 Order Processing Application 어플리케이션은 서비스를 표준화된 방식으로 access 함. SOA Infrastructure 레가시 시스템의 복잡함과 다양함을 단순하고 명쾌하게 함 고객 찾기 Service 신용 체크 Service 물품 찾기 Service 재고 체크 Service 레가시 시스템을 호출하는 것이 서비스의 역할임 Manufacturing System Customer Management System

  21. SOA Constitute • SOA 구성 • SOA 아키텍처는 기본적으로 Service Provider, Service Consumer, Service Broker로 이루어진 구조 • 자기 설명적인 (Self describing) 인터페이스를 (WSDL)를 가진 서비스는 플랫폼 독립적인 XML 형식으로 Formally하게 정의되어, Service Broker를 통해 서비스로 등록하고 관리되어 애플리케이션 수가 증가해도 서비스를 찾을 수 있는 방안이 제공됨 (UDDI) Service Broker Find Register Service Contract Service Consumer Service Provider Bind Client Service ※ UDDI(Universal Description, Discovery, and Integration) - 인터넷에서 전 세계의 비즈니스 업체 목록에 자신의 목록을 등록하기 위한, XML기반의 규격

  22. < 目 次 > SOA로의 변화 – IT 시스템 SOA로의 변화 – 개발 방식 SOA Layer SOA Case Study 1) 여행사 비즈니스 2) 의료 비즈니스 SOA Benefits Summary

  23. Sales Product Customer Employee SAP Finance Outlook Seibel PeopleSoft Dir .NET MQ OS/390 J2EE Unix DB2 SOA로의 변화 – IT 시스템 • 기업의 IT 시스템의 SOA로의 변화 • 서비스아키텍처 Layer로 잘 정의된 구성을 갖고 보다 신속히 비즈니스 변경 사항에 대응 가능 SOA 도입 이전의 기업 환경 SOA 도입 이후의 기업 환경 비즈니스 프로세스와의 Gap 발생 기능 중복 부서 C 프로세스 단편화된 어플리케이션 부서 B 부서 A 어플리케이션/ 데이터 기술의 비효율성 데이터 중복 기술의 정체 기술 요소 • 각각의 부서 및 agency에 따라 수직적인 방향으로 통합을 하는 Silo 형태를 가짐 • 또한 서로 다른 기능의 Application과 Database가 cross 교차되어 사용되는 비효율성 발행 SOA는 Application Layer 뿐만 아니라, 구조화된 Service Layer와 Business Process Layer등 체계화된 Layer로 관리함으로 기업의 비즈니스 환경에 rapidly하게 대응 가능함

  24. Inventory Database Inventory Application 회계 시스템은 재고 시스템의 database를 직접 access 함 운송 시스템은 재고 시스템DB의 재고량을 삭제 (via SQL call) Shipping Database Shipping Application Financial Database Financial Application 회계 시스템은 주문 취소 건에 대해 운송 시스템의 DB로 직접 삭제 SOA로의 변화 –개발 방식 • 소프트웨어 개발 방식의 세련화 • 각기 다른 시기의 프로그램 개발 및 DB 구축은 서로 다른 시스템의 영향에 민감하게 반응 할 수 밖에 없도록 구성되어 비효율성을 남발하였으나 • 계획성 및 표준화 방안을 갖은 개발 방식으로 인해 기업의 IT 시스템이 세련되어 짐 Inventory Web Service Inventory Database Inventory Application Finance Web Service Financial Database Financial Application WSDL 통해서 서비스 연동 Application에서 DB 직접 Access 금지 Shipping Web Service Shipping Database Shipping Application

  25. Composite Application Composite Business Services Composite Application UI Composite Application Portal Configuration Composite Application Process Business Services Policies and Meta Data Business Service Bus Enterprise Service Bus Implementation-Based Services Other Services Service Enablement Existing Systems Internal and External Resources SOA Layer • SOA 구성 : Layered Architecture • SOA 는 계층화된 Layer를 구분하여 관리함으로써 향후 확장 및 유지 보수에 이점 제공 • 각 계층 역할과 책임의 체계화에 따라 중복 개발 방지 및 아키텍처 일관성 유지 • SOA로 구성된 시스템 간의 연계 통합의 편의성 확보 통한 Enterprise Architecture 완성 도모

  26. SOA Case Study (1) • LibGo Travel 사의 SOA 도입 사례 (여행 비즈니스) • Next-Generation Travel System (NGTS) 구축에 있어 SOA 를 도입하고 비즈니스 서비스를 공유할 수 있는 기반을 마련한 사례임 • 대규모의 복합 어플리케이션으로 구성된 NGTS는 하루 평균 100만 정도 Transaction을 가짐 • 항공 및 숙박에 대한 가격 정보 및 이용 가능 정보는 다양한 Format과 다양한 채널을 통해 들어오며, 이를 위해 Service adapter layer를 구성하여 파트너사의 시스템 간의 비즈니스 프로세스 구성을 XML 기반의 인터페이스로 정의되는 WSDL을 사용, ESB infrastructure 를 사용하여 구성하였음

  27. SOA Case Study (2) • Health Institute’s CMS (의료 비즈니스) • 의료 서비스를 제공해야 하는 기관의 Care Management System 은 관리 대상의 개인 의료 정보를 입력 받아 관리하여야 함. 이는 Individual Health Record 에서 입력 받는 체계를 따라, System 간의 상호 호환 및 효율적인 일 처리가 필요함 Diabetes A&E Maternity 40+ apps Diabetes A&E Maternity 40+ apps Messaging service Demographics Referral Scheduling Requesting Prescribing Demographics Referral Scheduling Requesting Prescribing 비 표준화 -> 복잡도 증가 -> 효율 감소 표준화 기반 -> Orchestration -> 효율성 증대

  28. Standardized Service 예제 • SOA Reference Model • SOA 기반으로 Architecting한 미 연방의 Health and Human Services System

  29. SOA Benefits (1/2) • 기술과 단말에 구속 없이 연결할 수 있는 메커니즘 통해 프로세스 효율 증대 및 비용 절감 프로세스 효율 증대 • 연결 비용 감소로 인한 비즈니스 프로세스 효율 증대 • 현 프로세스에서 접근할 수 있는 정보 원천 접근성 증대 통한 실시간 시행 가능성 증대 • Ubiquitous Web Services 연결 메커니즘 • 실시간 비즈니스 가능 비용 절감 • 연결 비용 감소 • 통합의 복잡도 감소 • 국제 산업 표준 기반 • 플랫폼 및 기술 독립성 보장 • 공개 표준은 IT와 비즈니스 모두에게 이점 제공 • 독점적 기술에 종속되지 않는다는 이점 • 비즈니스 공급 망의 확대 • 적은 Communication 비용 • 표준화 통한 기술 비용 감소 진입 장벽의 축소 • 다양한 규모의 사업체와 조직에서 사용 가능함 • 소규모 파트너 또는 공급사와 낮은 비용으로 통합 가능함 • 글로벌화를 지향하며, 지리적으로 떨어진 조직체에 통합화 이점

  30. SOA Benefits (2/2) • 독립적으로 서비스하는 모듈을 구성, 활용 방안 제공 통한 비즈니스 & IT 민첩성 제공 민첩한 비즈니스 형성 • Makes it easier to change or add partners. • Facilitates M&A activity • Loosely Coupled • System change is not a constraint on business change 유지 보수 비용 절감 • Lower cost of maintenance • Reduced impact of change • Facilitates reuse of existing assets Cost Savings Through Consolidation • Self Describing Time To Market Shortened Development Cycles

  31. Summary • 서비스란 하나의 반복될 수 있는 비즈니스 단위 • 고객 신용 정보 조회 , 계좌 개설 등 • 서비스 지향이란 비즈니스를 서비스로 연결하여 통합하는 방안 • SOA를 위한 가이드(Framework & Methodology)와 뚜렷한 목표(Goal)가 필요 • SOA 란IT architectural style 로 다양한 시나리오에 적용 가능함 • 서비스는 프로세스 기반으로 디자인되어야 함 • 일련의 연결성과 통합성을 가진 SOA Infrastructure를 통해 신뢰성 있는 비즈니스 프로세스 환경 구성 가능 • 실 세계의 프로세스 패턴으로부터 배워야 함

More Related