WOA
태그 :
- 개념
- 조달관리(Procurement Management)의 정의 - 프로젝트 외부에서 프로젝트의 성공을 위해 필요한 제품, 서비스 등을 구매 계약 및 변경통제, 계약 종료까지의 프로세스 관리 - 원하는 상품 또는 서비스를 외부에서 조달하는 행위
I. 프로젝트에 필요한 제품 및 서비스의 공급을 위한 조달관리의 개요
가. 조달관리(Procurement Management)의 정의
- 프로젝트 외부에서 프로젝트의 성공을 위해 필요한 제품, 서비스 등을 구매 계약 및 변경통제, 계약 종료까지의 프로세스 관리
- 원하는 상품 또는 서비스를 외부에서 조달하는 행위
II. WOA의 개요
가. WOA(Web Oriented Architecture)의 정의
- 웹의 아키텍처를 기반으로 전세계적으로 연결된 하이퍼미디어를 통해 시스템과 사용자를 통합하는 SOA의 아키텍처 서브스타일(가트너)
나. WOA의 특징
1) 5가지 기본적인 인터페이스 제약
- 리소스의 식별(Identification of resource)
- 표현을 통한 리소스의 조작(Manipulation of resource through representations)
- 자기설명적 메시지(Self-descriptive messages)
- 하이퍼텍스트를 어플리케이션 상태의 엔진으로(Hypermedia as the engine of application state)
- 어플리케이션 중립성(Application neutrality)
2) 네트웍상에 리소스 형태, 즉 URI로 표현, 접근, 조작
3) 네트웍상의 모든 자원은 URI 형태로 배치
4) 자원은 HTTP 동사(즉, GET, POST, PUT, DELETE)로 조작
5) 네트웍상의 자원에 대한 조작은 네트웍상의 컴포넌트를 통해 조작
6) 자원에 대한 접근은 계층적으로 이루어지고, 기본 네트웍 지식으로 사용 가능
7) 보내지는 상태에 대한 전송은 각 컴포넌트가 책임
다. 등장배경
- SOA의 스펙 확대 등에 따른 복잡화와 구현상의 어려움, ROI의 산출이 어렵고 막대한 비용이 소요됨에 따라, 단순하고 쉬운 방식의 웹서비스 구현이 필요해짐
III. WOA의 개념도 및 SOA와의 비교
가. WOA의 개념도
- SOA의 스펙 및 기술요소 중 일부분만을 차지하고 있음
- SOA에 비해 단순성과 구현의 편이성이 강조됨
나. WOA와 SOA의 비교
구분 |
SOA |
WOA |
주요관심사 |
서비스 |
데이터 자원(Resource) |
주요기술 |
SOAP, WSDL, UDDI, XML Schema, WS-* 표준 등 |
HTTP, REST, XML 등 |
디자인 |
벤더 중심의 Top down 형태의 디자인 |
개발자들 중심의 Bottom up 방식 |
보안 |
WS-Security |
HTTPS |
프로토콜 |
SOAP, CORBA |
HTTP, REST |
서비스명세 |
WSDL |
URL |
데이터 교환 |
XML |
XML, HTML 등 제한 없음 |
장점 |
- 분산컴퓨팅 환경에서 사용하기 위한 디자인 - 웹 서비스 표준으로 널리 사용 - 다른 표준과 통합 및 확장성 우수 - 다양한 벤더의 지원 - 에러 처리 기능 포함 |
- 웹서비스 개발이 쉬움 - Mash-up을 통한 새로운 웹서비스 개발이 비교적 쉬움 - 다양한 데이터 포맷 사용 가능 |
단점 |
- 개발 난이도가 높고 Tool이 필요한 경우가 많음 - SOA 표준의 복잡도가 지속적으로 증가 전체 최적화의 어려움 |
- 분산 컴퓨팅 환경에서 메시지가 중간 경유지를 여러 번 통화함 - 보안, 정책, 안정적 메시지 전달을 지원하기 위한 표준의 부족 |
IV. WOA 관련 기술요소
가. REST(Representation State Transfer)의 개요
1) 정의
- 웹과 같은 대규모 네트워크 시스템을 위한 원칙들의 모음.
- XML과 HTTP를 사용하는 단순한 웹 기반 인터페이스(즉, REST의 원칙을 따르는 Web Services)
2) 개념 모델
- 웹은 리소스로 구성이 되어 있고, 사용자가 해당 리소스를 선택하면 다음 페이지가 보여진다. 즉 웹을 Virtual State Machine이라고 생각하면 링크를 선택함으로써 State가 변하고 Next State Representation(다음 페이지)가 보여지게 된다는 개념
3) REST Data Element
Data Element |
Modern Web Examples |
resource |
the intended conceptual target of a hypertext reference |
resource identifier |
URL, URN |
representation |
HTML document, JPEG image |
representation metadata |
media type, last-modified time |
나. Mash-up
1) 정의:
- 인터넷상에서 제공되고 있는 다양한 서로 다른 서비스와 기능을 합치고 응용하여 새로운 서비스를 창출해 내는 패러다임
2) 적용사례: 구글 마이맵스
사용자의 자율성을 최대한 보장한 매시업 서비스로 유저 개개인만의 지도를 만들 수 있다
3) Mash-up의 장단점
구분 |
설명 |
장점 |
- 혼합서비스이기에 신규서비스 창출에 비해 비용이 적음 - 기존의 공개된 자원을 활용 |
단점 |
- 기존의 공개된 자원을 사용하기에 그 자원에 대해 종속적으로 구현 - 활용하는 자원의 서비스가 변경될 경우 변경 부담 존재 - 활용하는 자원의 서비스가 중단될 경우 서비스가 중단 |
V. WOA의 활용방안 및 발전방향
가. WOA의 활용방안
- 관점의 진화
- WOA는 SOA를 구현하기 위한 방법론의 하나
- SOA의 구현에 있어 적시성(Agility)을 살리고, 단순성 및 구현 편리성을 극대화 할 수 있는 방법으로 활용 가능성 높음
나. WOA의 발전방향
- 내가 만든 기능과 데이터를 다른 사람이 혁신적인 방식으로 유용하게 사용할 수 있도록 웹서비스를 구현
- 제공하는 서비스의 기능과 데이터에 대한 보안 강화 및 접근제어에 대한 기능 보완하여 WOA에 대한 신뢰성 확보