jco 발표자로 - 누구도 들려주지 않는 service 이야기
DESCRIPTION
SOA에 대한 많은 애기들을 나누었지만 정작 Service, SOA에 대한 명확한 정의를 내리지 못하고 있는 것이 현실입니다. 이번 세션을 통해서 CORBA 이전 부터 시작된 분산 객체의 역사와 맡불려 SOA를 재조명 해보도록 하겠습니다. 그리고 Service의 새로운 진화 모델인 SaaS (Software as a Service)를 소개하고, 개발자가 대처하기 위해 알아야할 개념과 지식들을 전달하고자 합니다.TRANSCRIPT
누구도 들려주지 않는Service 이야기
손영수 (EvaCast 리더 )
새로운 서비스 세상 !
진정한 SOA 의 시대라면 ..
• Service 와 SOA 이야기• Web 2.0 과 SOA ( 친구인가 ? 적인가 ?)
• SaaS (Software as a Service)
• 새로운 Service 의 파트너 – Semantic Web– Server Virtualization
Agenda
Service 란 무엇인가 ?
Don Box -Web 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 의 정의
분산 객체의 역사
• 하나의 기술만 고집하지 않는다 .– RPC (Tightly Coupling)– Message Passing (Loosely Coupling)
• 밴더들을 존중해라– Metadata 기반의 상호운영성 (Interoperability)
Web Service 의 성공요인
SOA 의 발전 모델
JINI 의 SOA
CompanyCompany
HouseHouse
JINI JINI 가 꿈꾸는 가 꿈꾸는 SOASOA 의 범위는
의 범위는
Home Networking
Home Networking 에 국한 되어있다에 국한 되어있다
CORBA 의 SOA OMA Architecture
Object FrameworkObject Framework
Object Request BrokerObject Request Broker
CommonCommon
ObjectObjectDomainDomain
ObjectObjectApplicationApplication
ObjectObject
누가 이런 계층들을 관리하지
누가 이런 계층들을 관리하지 ? – ? – 표준 단체가표준 단체가 ??
CORBA vs Web Service
Web Service Web Service 너너 ! CORBA
! CORBA 랑 똑같잖아랑 똑같잖아 !!
CORBA CORBA 장점은 강화
장점은 강화 ! ! 단점은 제거단점은 제거 . . 그것이 그것이 Web Service
Web Service
상호 운영성의 숨겨진 애기들 ..
Web 2.0 과 SOA!친구인가 ! 적인가 !
SOASOA 가 주가 된 상황에서
가 주가 된 상황에서 Web 2.0Web 2.0
vsvs
Web 2.0Web 2.0 이 주가 된 상황에서
이 주가 된 상황에서 SOASOA
Platform WarWeb
World
Service World
Web
SOA
Web2.0
Web
3.0
SaaS
RealSOA
초창기 SOA 는 ?
Service Service 기반의
기반의
새로운 가상 운영체제 만들기 전략
새로운 가상 운영체제 만들기 전략
실패실패 !!
어떤 WP 를 쓰시겠습니까 ?
Accessability vs UX.
Accessability vs UX.기존 기존 IT IT 밴더 들의 노력
밴더 들의 노력이대로 이대로 Web
Web 플랫폼을 내줄수 없다
플랫폼을 내줄수 없다 ..
하지만 하지만 SOA
SOA 시장은 지켜야 된다
시장은 지켜야 된다 !!
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
UX 시장 탈환을 위한 전쟁 !
Sliverlight JavaFx Adobe AIR
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.
Software as a Service
• 공급자– 새로운 라이센싱 정책
• 호출 할 때 마다 ?• 1 년에 얼마씩 ?
– 불법 복제 방지– 개별 고객의 맞춤 서비스 제공
• 소비자– 합리적인 구매
• 필요 없는 기능의 SW 구입 X• 난 1 년에 겨우 몇 번 쓰는데 ..
SaaS - Long Tail
• Sharing Resource
Multi-Tenant
Metadata & Scalability
• Customizable– Customization through configuration– Using Meta Data Service– Because , SLA (Service Level Agreement)
• Scalability • Stateless• Asynchronous I/O • Resource Pooling• Maximize Concurrency
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
• 서비스가 오류가 나면 어떻게 해요 ?– 24 시간 동안 모니터링 ??
• 내가 원하는 서비스는 어디있지 ?– 단순히 키워드로만 ?
• 공급자 중심의 서비스 보단 사용자 중심으로 ..
• 지역적인 제약이 필요 . – 짜장면 서비스 실행 ! 그런데 중국에 있는 중국집이면 ?
• 추천 시스템이 존재하지 않는다 .– 외국에서 스포츠카를 렌트해서 놀자 !– 그럼 승용차라도 ? 어떻게 안될까요 ??
SOA & SaaS 갈길이 멀다 !!
SaaS 를 넘어 Software Product Line 으로 ..
SW Product Line 의 현실적인 답변 !
Software Factories 의 내용
Domain 에 집중하면 재사용성을 얻을수 있다 .
새로운 희망의 빛
Grid Service
SemanticWeb Service
SemanticGrid
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 의 아버지
Tagging 에서Description 으로 ..
CashCashBeggarBeggar
NEEDNEEDBeggarBeggin
g
NeedaCash
Ontology
ontologyontologyontologyontology
ontologyontology
Onto (ON)Onto (ON)
+ +
Log (Speak)Log (Speak)
Logic, Logic,
Proof, TrustProof, Trust
AgentAgent
ResourceResourceResourceResource
PropertyProperty
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
Semantic Web 의 동전의 양면
Grid Computing
Globus Toolkit
OpenGrid
Services
Arch.
AppGrid
Time
Functio
nality
&
Sta
ndarid
atio
n
WebService
ServerVirtualization
Semantic Web 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)
Service Grounding
TypeType
PortPort
MessageMessage
BindingBinding
ServiceService
ServiceGroundingServiceGrounding
wsdlInputMessagewsdlInputMessage
wsdlInputMessagePartwsdlInputMessagePart
wsdlOutputMessagePartwsdlOutputMessagePart
wsdlOutputMessagewsdlOutputMessage
AtomicAtomicProcessProcess
Has GroundingHas Grounding
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)
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
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
Real SOA 의 큰 방향
ServicesServicesServicesServices
UDDIUDDISemanticSemantic
Web ServiceWeb Service
Web ServiceWeb ServiceBrokerBrokerontologyontology
ontologyontology
ontologyontology
Grid Grid ComputingComputing
Business ProcessBusiness ProcessWorkFlow SystemWorkFlow System
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시 - 비영리 - 동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다 .
This work is licensed under Creative Commons Korea Attribution 2.0 License.