6. 애플리케이션 아키텍처의 진화 Clients PCs Web Web Services T Mainframe DBMS Business Logic GUI Client/Server DBMS Business Logic Business Logic Browser Multi-Tier DBMS Business Logic Service-Oriented DBMS Business Logic Business Logic
7. SODA Service Oriented Development Architecture Legacy Wrapping Reuse Culture Process-Driven Internet Deployment Hosted Culture Dynamic Integration Source : Gartner Research
10. 현재의 구현기술 : WebService Architecture Public network (WEB) J2EE .NET SOAP UDDI Service Requester Service Provider Service Broker Publish Find / Locate Binding / interact / Invoke WSDL WSDL XML
11. Illustrating a Service-Oriented Environment Business Processes Applications Web services Application B Application A Application C Application D New business process New application
12.
13.
14.
15.
16.
17.
18. 기술특징 #1 Course-grained Business Interface VS. 카탈로그 습득 상품 표기 , 주문자 표시 카탈로그 전송 대금 결제 매장 점원 손님 안녕하세요 ? 캠코더 있어요 ? 어디 것으로 ? ABC 사 것으로… 모델은 요 ? DC 시리즈로 구입 후 , 카드 , 현금 등을 통해 지급
19. Service Granularity Add order Release order Add order header release order item Order process manager Order process manager Location.Validate Location component Postcode component Address manager Looser coupling required Looser coupling desired Looser coupling ? Granularity Coarse- grained Fine- grained
20.
21. Reference Architecture View, Control Layer Persistent Layer Data Accessors Business Logic Layer Business Component Model Dispatcher Conceptual Model Technical Model Web Application 웹 서버 WAS TPM
22. Business Service Reference Architecture (Conceptual Model) 모바일 디바이스 쇼핑몰 어플리케이션 X- 인터넷 ( 프리젠테이션 레이어 ) UI 컴포넌트 UI 프로세스 컴포넌트 문서 지향 서비스 인터페이스 비즈니스 엔티티 레이어 비즈니스 엔티티 비즈니스 컴포넌트 데이터 액세스 레이어 데이터 액세스 로직 컴포넌트 서비스 에이전트 비즈니스 프로세스 서비스 <?xml version='1.0'?> <Account Id="001" > <AccountDetail AccountId ="00A"> <?xml version='1.0'?> <Account Id="001" > <AccountDetail AccountId ="00A"> <?xml version='1.0'?> <Account Id="001" > <AccountDetail AccountId ="00A"> Connector <?xml version='1.0'?> <Account Id="001" > <AccountDetail AccountId ="00A"> 비즈니스 워크플로우 중소기업고객관리 개인고객관리 메인프레임
24. 웹 서비스 아키텍처 개요 컴포넌트 아키텍처 서비스 아키텍처 컴포넌트 아키텍처 Source: CBDi Forum 워크 플로우 , 선행 / 후행 조건 서비스 사용자 서비스 제공자 비즈니스 프로세스 비즈니스 서비스 버스
25. 더욱 유연해진 비즈니스 환경 HTTP/HTML HTTP/HTML 인터넷 쇼핑몰 배송 업체 XML Web Service XML Web Service XML Web Service XML Web Service 금융 기관 창고 업체 XML Web Service B2B, A2A, EAI, P2P, 파트너 통합 B2C 다양한 디바이스 B2C 브라우저 기반
26.
27. 서비스 지향 어플리케이션 개발 순서 메시지 설계 : XML, XSD, SOAP, WSDL, 기타 확장 표준 구현 : .NET & J2EE, WSDK, SOAP ToolKit 퍼블리싱 : UDDI 비즈니스 도메인 분석 OLA Customer Identify Entertainment Item Confirm Customer Identity Sell Entertainment Item Take Remote Payment Identify Customer Submit Membership Information WEP Solution 비즈니스 서비스 버스 설계 «interface» :Stock::IStock «user» Instance :Product Catalog OnSearch SearchForItem( In SearchCriteriaXML, out ProductResultsXML ) SearchForItem( In SearchCriteriaXML, out ProductResultsXML ) OnGetDetails GetProductDetails( In ProductSelectedXML, out ProductDetailsXML ) GetProductDetails( In ProductSelectedXML, out ProductDetailsXML )
28. Looking For Boundaries Browse Products Select Products Agree Delivery Provide Payment Place Order Catalogue Authorise Credit Record Order Post transaction Schedule Delivery Check Stock Update Stock Replenish Stock Record Order Check Customer Identify Customer E-Commerce Storefront System Outsourced Logistics Existing Sales System General Ledger Supplier(s) Credit Agency Update Catalogue Security, identity requirements? Transport? Message structure? When? External Internal Pre/post conditions? Behaviour? Interface? XML Web Services Native Platform Communications Source: CBDDi forum - Microsoft
1 단계 : 1 세대 ASP - 인터넷을 통해 패키지 소프트웨어 배포 2 단계 : 웹 ASP - 인터넷을 통한 배포를 지향하는 애플리케이션 배포 3 단계 : 1 세대 웹 서비스 – 이미 만들어놓은 컴포넌트 연결과 독립적인 컴포넌트의 상호운영을 위한 웹 서비스 4 단계 : 2 세대 웹 서비스 - 웹 서비스 아키텍처에 맞게 애플리케이션을 다시 작성 , 전체적인 인프라작업 5 단계 : 3 세대 웹 서비스 – 웹 서비스 비즈니스 활동 , 비즈니스 프로세스는 애플리케이션으로부터 떨어지고 , 표준 언어로 쓰여진다 .
Service Oriented Development Architecture
웹 서비스의 구성 요소 SOAP - Simple Object Access Protocol - 인터넷 상에서 XML 메시지를 교환하는 프로토콜 WSDL - Web Service Description Language - 웹 서비스를 호출하기 위한 서비스 인터페이스를 정의 UDDI - Universal Description Discovery and Integration - UDDI 는 웹 서비스를 등록 , 검색할 수 있는 등록 저장소
The identification of boundaries may be done from a business model For example a process or workflow model divided into swim lanes. Swim lanes represent the different ‘ systems ’ involved in the end to end process. Each system could be the domain of a different organization or business unit. Platform native protocols can be used horizontally between components of the same system, application, or business unit, and is therefore likely to have a common platform infrastructure. But SOAP is used when crossing the vertical boundaries as each swim lane is a different system, application, or business unit, and therefore likely to have a DIFFERENT platform infrastructure.