36
Arsitektur Teknologi Informasi Services Oriented Architectures Antonius Rachmat C, S.Kom, M.Cs

03b - Service Ortd.Arst

Embed Size (px)

Citation preview

Page 1: 03b - Service Ortd.Arst

Arsitektur Teknologi Informasi

Services Oriented Architectures

Antonius Rachmat C, S.Kom, M.Cs

Page 2: 03b - Service Ortd.Arst

Tes Kecil I

• Bagaimana hasilnya?

Page 3: 03b - Service Ortd.Arst

System IntegrationSystem Integration

SOA eBusiness SOA eBusiness Processes over WWWProcesses over WWW

Business factors for Services

Business to CustomerBusiness to Customer

Internet Based DeliveryInternet Based Delivery

Computers

Protocols / Standards

Local Networks

WAN’s

Page 4: 03b - Service Ortd.Arst

Business Interaction

B to C

Disintermediation

B to BB to B

Collaboration

Page 5: 03b - Service Ortd.Arst

Perkembangan SOA

WorkflowOffice

1980 1990 2000 2012

XMLWS

WebLANInternetSOA

EDI

Mainframe

?BusinessIntegration

J2EE.NET

Client / Server

Web/Portal

EAI

B2B

BPM

WS

Page 6: 03b - Service Ortd.Arst

Service Model expanded

• What if the two classes are not on the same

machine? Network!

• How can one class find another? Service

DescriptionDescription

• How can a class send its’ information to the

other class? XML

• Do the two classes have to be on the same

network? TCP/IP + HTTP + XML

Page 7: 03b - Service Ortd.Arst

Service Oriented Architecture

• SOA adalah sebuah konsep software architecture yang mendefinisikan penggunaan layanan untuk mendukung kebutuhan pengguna software.

• Dari sisi prespektif bisnis:• Dari sisi prespektif bisnis:– A service-oriented architecture is a framework for

integrating business processes and supporting IT infrastructure, standardized components—services—that can be reused and combined to address changing business priorities

Page 8: 03b - Service Ortd.Arst

Bentuk SOA

• SOA adalah sebuah arsitektur yang merepresentasikan fungsi dalam bentuk layanan– Mengapa fungsi?

• Karena fungsi menunjukkan abstraksi aktivitas –• Karena fungsi menunjukkan abstraksi aktivitas –sesuatu yang secara alami dilakukan oleh aplikasi/program, individu, dan organisasi

– Mengapa layanan? • Karena layanan mengabstraksikan fungsi dan dapat

menunjukkan bentuk hubungan yang bermakna antara 2 pihak yang berkomunikasi (requester dan provider)

Page 9: 03b - Service Ortd.Arst

SOA seperti puzzle

Page 10: 03b - Service Ortd.Arst

SOA dan Aplikasinya

• Ada dua arah pengembangan:

– Inward � ke dalam institusi sendiri � integrasi sistem-

sistem yang ada untuk membangun fungsionalitas yang

lebih luas

– Misal : untuk Supply Chain Management– Misal : untuk Supply Chain Management

– Outward � memanfaatkannya sebagai perluasan sistem

yang ada (external network, peluang bisnis, dsb)

• Contoh: layanan pembuatan file PDF secara online

Page 11: 03b - Service Ortd.Arst

Penyebab SOA dan Tujuan SOA

• Pendorong berkembangnya SOA dari sisibisnis:

– Large scale Enterprise systems

– Internet scale provisioning of services– Internet scale provisioning of services

– Want to reduce the cost of doing business

• Tujuan

– Just-in-time integration of applications by discovering and orchestrating network-available services

Page 12: 03b - Service Ortd.Arst

SOA dan Integrasi Aplikasi/Sistem

• SOA berfungsi sebagai platform integrasi:

– SOA memisahkan antara pesan/query/call dengan pemrosesan

– Pesan/query/call distandardisasi dan tidak dikaitkan dengan

sebuah produk teknologi tertentu, sehingga bisa

dikirimkan/diterima oleh siapapundikirimkan/diterima oleh siapapun

– SOA memisahkan antara bagian publik dan bagian privat

• Bagian publik dapat diakses oleh siapapun, berupa deskripsi

tentang layanan yang ditawarkan

• Bagian privat hanya bisa diakses oleh pemilik/penyedia layanan

Page 13: 03b - Service Ortd.Arst

Sifat SOA

• SOA bersifat behind the scence, – SOA tidak terlihat secara langsung oleh client, SOA

dihadapkan pada client melalui client UI

– Digunakan untuk berkomunikasi antar aplikasi

• SOA merupakan suatu service yang “hanyamenunggu” (listen) secara terus-menerusuntuk digunakan.

Page 14: 03b - Service Ortd.Arst

Benefits of SOA

• Better reuse of services– Build new client functionality on top of existing

Business Services

• Well defined interfaces– Make changes without affecting clients– Make changes without affecting clients

• Easier to maintain– Changes/Versions are ok!

• Platform Independence– An enterprise can leverage its existing legacy applications

that reside on different types of servers

Page 15: 03b - Service Ortd.Arst

Reusability

Page 16: 03b - Service Ortd.Arst

Benefits of SOA (2)

• Code Reuse– the services can be reused in multiple applications

• Location Transparency– Web services are often published to a directory where consumers

can look them up

Better scalability• Better scalability– there can be multiple instances of the service running on different

servers. This increases scalability

• Higher availability– Since the location of a service does not matter and you can have

multiple instances of a service, it is possible to ensure high availability

Page 17: 03b - Service Ortd.Arst

Scalability

Page 18: 03b - Service Ortd.Arst

Prinsip-prinsip utama SOA• Standardized service contract – by one or more service-description

documents.

• Service Loose Coupling

• Service Abstraction – Beyond descriptions in the service contract, services hide logic from the outside world.

• Service reusability

• Service autonomy – Services have control over the logic they encapsulate.

• Service statelessness - Services minimize resource consumption by deferring the management of state information when necessary

• Service discoverability – Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted.

• Service composability – Services are effective composition participants.

Page 19: 03b - Service Ortd.Arst

Implementation of SOA

• Services have platform

independent, self describing

interfaces (XML)

• Messages are formally defined

(WSDL)

SOASOASOASOA

ComposableComposable

• Services can be discovered (UDDI)

• Services have quality of

service characteristics defined in

policies (SOAP)

• Services can be provided on any

platform (HTTP)

• Services can be secured (WS-

Security)

SOASOASOASOAInteroperableInteroperable

LooselyLooselyCoupledCoupled

ReRe--UsableUsable

Page 20: 03b - Service Ortd.Arst

Komponen SOA

• Layanan / Service

• Penyedia layanan / Provider

• Pemakai layanan / Consumer / Requester

• Tempat penyimpanan / Registry• Tempat penyimpanan / Registry

• Pesan / query / call

Page 21: 03b - Service Ortd.Arst

Beberapa Istilah dalam SOA

• Service: suatu fungsi yang menerima satu atau lebih

request dan mengembalikan satu atau lebih response

yang terdefinisi dengan baik dengan menggunakan

interface yang standar.

– Service is self-contained. That is, the service maintains its own – Service is self-contained. That is, the service maintains its own

state

– Interface contract to the service is platform-independent

– Service can be dynamically located and invoked

– Pengguna service dapat menentukan service yang diperoleh

untuk digunakan dalam application logic mereka.

Page 22: 03b - Service Ortd.Arst

Elements of a service

• Header– Name

– Version

– Owner

– Type: presentation/process/business/data/intergration– Type: presentation/process/business/data/intergration

• Functional– Service operation : method

– Invocation: how to invoke (SOAP/REST)

• Non functional– Security constraints

– Quality of service, etc.

Page 23: 03b - Service Ortd.Arst

Beberapa Istilah dalam SOA

• Provider: bagian dalam SOA yang menyediakanservices

– Terdiri dari >= 1 service

– Harus dapat ditemukan oleh requester

– Mendaftarkan dulu ke registry– Mendaftarkan dulu ke registry

• Requester: bagian dalam SOA yang mencari danmenggunakan services

– Dapat menggunakan lebih dari 1 service

– Harus dapat mencari provider

– Mungkin mencari di registry

Page 24: 03b - Service Ortd.Arst

Beberapa Istilah dalam SOA

• Registry: tempat penyimpan informasi

provider-provider yang menyediakan berbagai

services

– Berupa layanan yang listen terus menerus– Berupa layanan yang listen terus menerus

– Bisa berbayar atau gratis

• Query: mekanisme invocation service

– Berupa permintaan service yang bersifat standar

– Menggunakan format khusus agar dapat dibaca

oleh service

Page 25: 03b - Service Ortd.Arst

Build an SOA in 8 Steps

(1) What problem are we trying to solve?

(2) What aspects can be implemented as services? Old

services? New services? Legacy wrappers?

(3) Track services with registries and repositories(3) Track services with registries and repositories

(4) We need to monitor behavior, enforce policies &

assess user satisfaction.

(5) Secure the services. Using established standards,

we need privacy, authentication, and

authorization.

Page 26: 03b - Service Ortd.Arst

Build an SOA in 8 Steps

(6) Manage the services. Are messages arriving on time? Is everything operating properly?

(7) Virtualization through mediation. Are we free to move and change the services?

(8) Design for interoperability through the adoption of (8) Design for interoperability through the adoption of standards.

Page 27: 03b - Service Ortd.Arst

Non-SOA (Integration)

Page 28: 03b - Service Ortd.Arst

SOA – Integration

Page 29: 03b - Service Ortd.Arst

Changing SOA (Integration)

Page 30: 03b - Service Ortd.Arst

Shift From Application To A Service-Oriented Architecture

• Function oriented

• Build to last

• Prolonged development

cycles

• Coordination oriented

• Build to change

• Incrementally built and

deployed

FromFrom ToTo

deployed

� Application based solution� Tightly coupled� Function / Object oriented� Known implementation

� Enterprise solutions� Loosely coupled� Message oriented� Abstraction

Page 31: 03b - Service Ortd.Arst

Enterprise View

Busine ss Se rv ices

Admissions Office

S tudent

S elf - Ser viceW orkplace

OnlineRegistr ation

AgentW orkplace

S tudents Information

Online

P rospec t

BusinessPartic ipants C hanne ls

EnterpriseInfo rmation Syste ms

Forms

E mail

Br ow ser

Se rv ices

P rocessS er vices

V is ibil ityS erv ices

OptimizationS erv ices

Registra tion

Applica tion

Admissions &Recruitment

S tudent Financia ls

S tudent Records

Pack

age

Lega

cy

Exte

rnal

S tudent S erv ices

S uite

FinancialP rocess ing

DocumentM anagement(Folderw ave )

ScheduleManagement(S chedule25)

Applicants W orkplace

Partner

Univers ity S ta ff

EmployeeW orkplace

Course Information

Online

Elec tronic BusinessGatew ay

E lectr onic BusinessGatew ayRegulator

P artnerW orkplace

P ar tnerW orkplace

AnalyticsAna ly ticsAnalyticsAna ly tics

V endor / P ar tnerS ystems

Integration (ESB)

Tec hnic alServ ice s

Text M essage

P hone P DA

Infor mationS erv ices

Folder M anagement

Create S tudent

Ar chiveS tudent Data

Records

Learning UnitM anagement

S uppor tS er vices

Secur ity S erv ices S ystems M gmt S erv ices V ir tualization S erv ices Data S erv ices

Opera tional Data

Oper ationa l Da ta

Opera tional Data

Oper ationa l Da ta

Infrastruc ture & Tec hnology

S ecurityS ystems

M anagement OntologyIndustry

FabricP olic ies

(Folderw ave ) (S chedule25)

Blackboard Academic Audit

Page 32: 03b - Service Ortd.Arst

IT Systems View

net

ExternalUser Access External

Proxy

InternalUser Access

( C horeography )

Applications(S IS , B lackboard , etc .)

Enterprise Information System

( Oracle F inancial , H R etc. )

InternalProxy

W eb Applicat ionServer

ESB

PortalProcessServices

Service C o n su m er

Servi ce Pro vid er

Business Partners

(Universities , Fed . Govt. etc .)

Services Gatew ay

Security Policy

S

ProtocolF irewal l

Domain F irewal l

Management &Security

SecurityServices

ServiceR egist ry

Information Services

D ata W arehouse /Business Intelligence

D atabases

Firewall

ESB

Service C on su m er

Service Pro vid er

Service C o nsu m er

Service Provid er

Service Pro vid er S ervice Pro vid er

Page 33: 03b - Service Ortd.Arst

SOA at application layer of OSI

Page 34: 03b - Service Ortd.Arst
Page 35: 03b - Service Ortd.Arst

SOA challenges

• Trust

– Data from a large number of services from different

partners

• TestTest

– All services work as designed?

• Security

– Is the level of security is adequate?

• Continuous updating, refinement and expansion

Page 36: 03b - Service Ortd.Arst

NEXT

• Web Services (SOAP)