jco 발표자로 - 누구도 들려주지 않는 service 이야기

47
누누누 누누누누 누누 Service 누누누 누누누 (EvaCast 누누 )

Upload: youngsu-son

Post on 14-Nov-2014

3.376 views

Category:

Technology


3 download

DESCRIPTION

SOA에 대한 많은 애기들을 나누었지만 정작 Service, SOA에 대한 명확한 정의를 내리지 못하고 있는 것이 현실입니다. 이번 세션을 통해서 CORBA 이전 부터 시작된 분산 객체의 역사와 맡불려 SOA를 재조명 해보도록 하겠습니다. 그리고 Service의 새로운 진화 모델인 SaaS (Software as a Service)를 소개하고, 개발자가 대처하기 위해 알아야할 개념과 지식들을 전달하고자 합니다.

TRANSCRIPT

Page 1: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

누구도 들려주지 않는Service 이야기

손영수 (EvaCast 리더 )

Page 2: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

새로운 서비스 세상 !

Page 3: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

진정한 SOA 의 시대라면 ..

Page 4: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

• Service 와 SOA 이야기• Web 2.0 과 SOA ( 친구인가 ? 적인가 ?)

• SaaS (Software as a Service)

• 새로운 Service 의 파트너 – Semantic Web– Server Virtualization

Agenda

Page 5: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기
Page 6: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Service 란 무엇인가 ?

Don Box -Web Service 의 아버지

Page 7: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

• Service Oriented Application– An Application

that exposes all or part of its functionalitythrough one or more service.

• Service Oriented Architecture (SOA)– The Architecture to realize Service’s World.

SOA 의 정의

Page 8: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

분산 객체의 역사

Page 9: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

• 하나의 기술만 고집하지 않는다 .– RPC (Tightly Coupling)– Message Passing (Loosely Coupling)

• 밴더들을 존중해라– Metadata 기반의 상호운영성 (Interoperability)

Web Service 의 성공요인

Page 10: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

SOA 의 발전 모델

Page 11: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

JINI 의 SOA

CompanyCompany

HouseHouse

JINI JINI 가 꿈꾸는 가 꿈꾸는 SOASOA 의 범위는

의 범위는

Home Networking

Home Networking 에 국한 되어있다에 국한 되어있다

Page 12: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

CORBA 의 SOA OMA Architecture

Object FrameworkObject Framework

Object Request BrokerObject Request Broker

CommonCommon

ObjectObjectDomainDomain

ObjectObjectApplicationApplication

ObjectObject

누가 이런 계층들을 관리하지

누가 이런 계층들을 관리하지 ? – ? – 표준 단체가표준 단체가 ??

Page 13: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

CORBA vs Web Service

Web Service Web Service 너너 ! CORBA

! CORBA 랑 똑같잖아랑 똑같잖아 !!

CORBA CORBA 장점은 강화

장점은 강화 ! ! 단점은 제거단점은 제거 . . 그것이 그것이 Web Service

Web Service

Page 14: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

상호 운영성의 숨겨진 애기들 ..

Page 15: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기
Page 16: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Web 2.0 과 SOA!친구인가 ! 적인가 !

SOASOA 가 주가 된 상황에서

가 주가 된 상황에서 Web 2.0Web 2.0

vsvs

Web 2.0Web 2.0 이 주가 된 상황에서

이 주가 된 상황에서 SOASOA

Page 17: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Platform WarWeb

World

Service World

Web

SOA

Web2.0

Web

3.0

SaaS

RealSOA

Page 18: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

초창기 SOA 는 ?

Service Service 기반의

기반의

새로운 가상 운영체제 만들기 전략

새로운 가상 운영체제 만들기 전략

실패실패 !!

Page 19: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

어떤 WP 를 쓰시겠습니까 ?

Accessability vs UX.

Accessability vs UX.기존 기존 IT IT 밴더 들의 노력

밴더 들의 노력이대로 이대로 Web

Web 플랫폼을 내줄수 없다

플랫폼을 내줄수 없다 ..

하지만 하지만 SOA

SOA 시장은 지켜야 된다

시장은 지켜야 된다 !!

Page 20: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

UX 로 웹의 한계를 극복하자 !!

Innovators Innovators 2.5%2.5%

EarlyEarlyMajorityMajority

PragmatistsPragmatists

34.0 %34.0 %

LaggardsLaggards

16.0 %16.0 %

LateLateMajorityMajority

ConservativesConservatives

34.0 %34.0 %

EarlyEarlyAdapterAdapter

13.5 %13.5 %

CCHHAASSMM

Page 21: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기
Page 22: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

UX 시장 탈환을 위한 전쟁 !

Sliverlight JavaFx Adobe AIR

Page 23: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기
Page 24: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

SaaS – Service 의 열정은 그대로 !

SaaS focuses on SaaS focuses on separating the separating the possession possession and ownershipand ownership of software of software from its use.from its use.

- Mark Turner et al, IEEE 2003Mark Turner et al, IEEE 2003

What’s the SaaS?What’s the SaaS?

Software Software deployed as a hosted service deployed as a hosted service and accessed over the Internet.and accessed over the Internet.

Page 25: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Software as a Service

• 공급자– 새로운 라이센싱 정책

• 호출 할 때 마다 ?• 1 년에 얼마씩 ?

– 불법 복제 방지– 개별 고객의 맞춤 서비스 제공

• 소비자– 합리적인 구매

• 필요 없는 기능의 SW 구입 X• 난 1 년에 겨우 몇 번 쓰는데 ..

Page 26: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

SaaS - Long Tail

Page 27: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

• Sharing Resource

Multi-Tenant

Page 28: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Metadata & Scalability

• Customizable– Customization through configuration– Using Meta Data Service– Because , SLA (Service Level Agreement)

• Scalability • Stateless• Asynchronous I/O • Resource Pooling• Maximize Concurrency

Page 29: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

SaaS Maturity Model

Add-hocAdd-hoc/Custom/Custom

ConfigurableConfigurable/but single tenant/but single tenant

ConfigurableConfigurable/Multi tenant/Multi tenant

Scalable,Scalable,Configurable,Configurable,Multi tenantMulti tenant

Page 30: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

• 서비스가 오류가 나면 어떻게 해요 ?– 24 시간 동안 모니터링 ??

• 내가 원하는 서비스는 어디있지 ?– 단순히 키워드로만 ?

• 공급자 중심의 서비스 보단 사용자 중심으로 ..

• 지역적인 제약이 필요 . – 짜장면 서비스 실행 ! 그런데 중국에 있는 중국집이면 ?

• 추천 시스템이 존재하지 않는다 .– 외국에서 스포츠카를 렌트해서 놀자 !– 그럼 승용차라도 ? 어떻게 안될까요 ??

SOA & SaaS 갈길이 멀다 !!

Page 31: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

SaaS 를 넘어 Software Product Line 으로 ..

SW Product Line 의 현실적인 답변 !

Software Factories 의 내용

Domain 에 집중하면 재사용성을 얻을수 있다 .

Page 32: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기
Page 33: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

새로운 희망의 빛

Grid Service

SemanticWeb Service

SemanticGrid

Page 34: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Semantic Web

The Semantic Web is not a separate Web, but an extension of the current one, in which information is given well-defined meaning,better enabling computers and people to work in cooperation.

T. Berners Lee – Web 의 아버지

Page 35: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Tagging 에서Description 으로 ..

CashCashBeggarBeggar

NEEDNEEDBeggarBeggin

g

NeedaCash

Page 36: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Ontology

ontologyontologyontologyontology

ontologyontology

Onto (ON)Onto (ON)

+ +

Log (Speak)Log (Speak)

Logic, Logic,

Proof, TrustProof, Trust

AgentAgent

ResourceResourceResourceResource

PropertyProperty

Page 37: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Semantic Web Layer

LogicLogic

ProofProof

Ontology VocabularyOntology Vocabulary

RDF + RDF SchemaRDF + RDF Schema

XML + NS + SchemaXML + NS + Schema

UniCodeUniCode URIURI

TrustTrust

Dig

ital S

ign

atu

reD

igita

l Sig

natu

reself desc.self desc.docdoc

datadata

rulerule

datadata

Page 38: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Semantic Web 의 동전의 양면

Page 39: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Grid Computing

Globus Toolkit

OpenGrid

Services

Arch.

AppGrid

Time

Functio

nality

&

Sta

ndarid

atio

n

WebService

ServerVirtualization

Page 40: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Semantic Web Service

Page 41: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Semantic Web Service ModelWeb Service 를 위한 Ontology

ServiceService

ServiceGroundingServiceGrounding ServiceModelServiceModel

ServiceProfileServiceProfileResourceResource

presentspresents

described bydescribed bysupportssupports

providesprovides

(what it does)(what it does)

(how it works)(how it works)(how to access it)(how to access it)

Page 42: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Service Grounding

TypeType

PortPort

MessageMessage

BindingBinding

ServiceService

ServiceGroundingServiceGrounding

wsdlInputMessagewsdlInputMessage

wsdlInputMessagePartwsdlInputMessagePart

wsdlOutputMessagePartwsdlOutputMessagePart

wsdlOutputMessagewsdlOutputMessage

AtomicAtomicProcessProcess

Has GroundingHas Grounding

Page 43: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Service ProfileConstraint, RangeConstraint, Range

Location, etc..Location, etc..

ActorActor

ServiceProfileServiceProfile

LocationLocationIOPEIOPE

ThingThing

……ServiceService

RequesterRequester ServiceServiceProviderProvider

……

…… ……

Functional DescriptionFunctional Description

Input, Output, Effect,Input, Output, Effect,PreconditionPrecondition

ActorActor

The Profile The Profile of Service Providerof Service Provider

HierarchyHierarchy

Matchmaking Matchmaking (CMU, JTP)(CMU, JTP)

Page 44: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Service ProfileSemantic Web ServiceSemantic Web Service

The ontology language based, The ontology language based,

its inferential capabilities its inferential capabilities

should allow matching requests should allow matching requests

to service descriptions.to service descriptions.

Solution – Solution –

Importing the Semantic Web Importing the Semantic Web

in UDDI.in UDDI.

References:References:

M. Paolucci et al.M. Paolucci et al.

““Importing the Semantic Web in UDDI” Importing the Semantic Web in UDDI”

UDDIUDDIOWL-S ProfileOWL-S Profile

Page 45: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Service Model

ProcessProcess

ProfileProfile

ControlControlComponentComponent

SplitSplit

AtomicAtomicProcessProcess SimpleSimple

ProcessProcessCompositeComposite

ProcessProcess

SequenceSequence RepeatUntilRepeatUntil……

preconditionprecondition

inputinput

outputoutput

effecteffect

computedPreconditioncomputedPrecondition

computedInputcomputedInputcomputedOutputcomputedOutput

computdEffectcomputdEffect

invocableinvocable

hasProcesshasProcess

hasProfilehasProfile

hasGroundinghasGroundingCollapseCollapse

ExpandExpand

hasGroundinghasGrounding

componentscomponentscomposedBycomposedBy

ProcessComponent = ProcessComponent = Process U ControlComponentProcess U ControlComponent

ProcessComponent = ProcessComponent = Process U ControlComponentProcess U ControlComponent

ProcessComponent = ProcessComponent = Process U ControlComponentProcess U ControlComponent

Page 46: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

Real SOA 의 큰 방향

ServicesServicesServicesServices

UDDIUDDISemanticSemantic

Web ServiceWeb Service

Web ServiceWeb ServiceBrokerBrokerontologyontology

ontologyontology

ontologyontology

Grid Grid ComputingComputing

Business ProcessBusiness ProcessWorkFlow SystemWorkFlow System

Page 47: JCO 발표자로 - 누구도 들려주지 않는  Service 이야기

이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 - 비영리 - 동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다 .

This work is licensed under Creative Commons Korea Attribution 2.0 License.