• Tidak ada hasil yang ditemukan

II.1 Paradigma SOA II-1

N/A
N/A
Protected

Academic year: 2021

Membagikan "II.1 Paradigma SOA II-1"

Copied!
24
0
0

Teks penuh

(1)

II-1

BAB II DASAR TEORI

Bab ini akan membahas mengenai teori-teori yang menjadi landasan atau dasar pengembangan konsep SOA, keuntungan SOA, prinsip-prinsip SOA, desain dan pengembangan SOA, bagaimana SOA dapat diimplementasikan. Selanjutnya adalah tentang Peranan sistem informasi terhadap perguruan tinggi dan menjelaskan tentang pengintegrasian sistem informasi di perguruan tinggi dengan menerapkan SOA.

II.1 Paradigma SOA

Era modern saat ini, fungsi-fungsi operasi bisnis pada perguruan tinggi diterapkan secara otomatis, dan tantangan yang muncul adalah bagaimana meningkatkan kemampuan dari sistem atau aplikasi yang digunakan dapat selaras dengan kebutuhan-kebutuhan baru. Penambahan antarmuka baru, menggabungkan data dari sumber yang berbeda dalam satu tampilan, integrasi dengan mobile device adalah alasan umum dalam melakukan investasi dan perbaikan terhadap sistem pada suatu organisasi atau perguruan tinggi.

Kompleksitas adalah fakta terhadap perkembangan teknologi informasi. Tantangan utama saat ini adalah berkaitan dengan kompleksitas ketika membangun aplikasi yang baru, menggantikan aplikasi yang lama, dan melakukan perawatan serta peningkatan kinerja aplikasi dan sistem. Untuk menjawab tantangan tersebut sebuah paradigma pengembangan berorientasi layanan (service-oriented development) ditawarkan untuk menjadi menjadi solusi terhadap kompleksitas yang dihadapi [7].

Layanan atau service berbeda dengan sebuah object atau procedure. Layanan didefinisikan dengan messages dimana suatu layanan dapat melakukan pertukaran messages dengan layanan yang lain. Sebuah layanan bersifat independent yang tidak bergantung terhadap aplikasi yang menyimpannya. Hal ini memberikan kemampuan untuk sebuah layanan dapat dengan mudah digunakan secara

(2)

II-2

bersama-sama antar departemen, enterprise, atau melalui internet. SOA memberikan cara bagaimana layanan-layanan dalam suatu sistem dapat diterapkan dan diatur.

Pengembangan sistem berbasis layanan dan SOA adalah merupakan karakter yang dimiliki oleh teknologi Web services. SOA dan web services adalah merupakan jawaban terhadap pengintegrasian sistem dan aplikasi yang kompleks. SOA memberikan peta dan menggunakan model untuk menyatukan atau mengembangkan legacy system dan sistem yang baru selanjutnya web services menyediakan unifying glue dimana web services akan menyatukan dengan protokol umum standard ( SOAP, XML) serta deskripsi bahasa yang dapat dimengerti oleh mesin yang lain (WSDL).

Sayed Hashimi [WEB002] menjelaskan latar belakang penggunaan SOA ditinjau dari sisi developers perangkat lunak. SOA menjadi sangat populer melalui perkembangan Web services. SOA muncul untuk menawarkan solusi terhadap masalah yang dihadapi para developers perangkat lunak.

Proses menulis perangkat lunak yang sangat kompleks, dimana kode program yang sama harus ditulis kembali secara berulang-ulang, memicu munculnya kebutuhan terhadap cara yang lebih baik dalam menulis perangkat lunak dengan menggunakan kembali kode program yang sama. Solusi penulisan perangkat lunak yang kompleks adalah konsep modular design. Modular design memungkinkan programmer menulis sub-routines dan functions yang dapat digunakan kembali. Programmer dapat melakukan proses cutting dan pasting sebuah modul ke dalam aplikasi lain. Dampak negatif dari metode ini adalah kesulitan dalam perawatan perangkat lunak dan deployment perangkat lunak. Ketika sebuah bug ditemukan maintainer harus melakukan penelusuran terhadap semua aplikasi yang menggunakan fungsi tersebut dan melakukan perbaikan. Hasil perbaikan mempengaruhi proses deployment perangkat lunak, perangkat lunak tidak berjalan sesuai dengan yang diharapkan. Para developer tidak menyukai hal tersebut, mereka membutuhkan higher level of abstraction. Peneliti menawarkan classes dan OO perangkat lunak untuk mengatasi masalah tadi.

(3)

II-3

Ketika kompleksitas perangkat lunak dan perangkat keras berkembang para developer mulai menyadari akan kompleksitas perangkat lunak, keperluan reuse code, dan memerlukan fungsi-fungsi untuk melakukan perawatan perangkat lunak.

Component-based software memberikan solusi untuk menangani kompleksitas perangkat lunak, penggunaan kembali kode program, dan melakukan perawatan perangkat lunak. Keterbatasan component-based software adalah tidak menangani kompleksitas yang dihadapi oleh para developer saat ini. Saat ini terdapat berbagai isu kompleks yang dihadapi oleh pada developers, organisasi, users, dan stakeholders seperti distributed software, application integration, platform yang berbeda (OS, perangkat lunak, perangkat keras), protokol yang beragam, perkembangan ICT, dan sebagainya. Perangkat lunak saat ini harus dilengkapi dengan fitur-fitur yang dapat mengakomodasi isu-isu tersebut. SOA dengan web services memberikan solusi untuk semua isu yang telah disebutkan diatas. Dengan mengadopsi SOA, kerumitan protokol dan platform dapat dikurangi dan integrasi antar aplikasi dapat dilakukan.

II.2 Definisi Service Oriented Architecture Berikut adalah definisi-definisi tentang SOA. Menurut Thomas Erl [3] :

―SOA adalah sebuah model desain dengan memiliki konsep yang dalam tentang meng-enkapsulasi logik aplikasi di dalam layanan-layanan yang berinteraksi melalui protokol yang umum.‖

Organization for the Advancement of Structured Information Standards (OASIS) mendefinisikan SOA sebagai berikut :

―Sebuah paradigma untuk melakukan pengaturan dan penggunaan layanan-layanan yang didistribusikan yang di kontrol oleh domain yang berbeda. SOA menyediakan sebuah keseragaman dalam memberikan, menemukan, berinteraksi dan menggunakan layanan-layanan yang dimiliki untuk

(4)

II-4

menghasilkan efek yang diinginkan, konsisten dengan kondisi awal yang diukur dan harapan-harapan yang telah ditetapkan.‖

Menurut website www.service-architecture.com :

―SOA secara esensial adalah sebuah kumpulan dari layanan-layanan. Layanan-layanan tersebut berkomunikasi satu dengan yang lain. Komunikasi dapat melibatkan data yang sederhana atau dua atau lebih layanan yang berkoordinasi dengan beberapa aktivitas. Beberapa layanan dapat membutuhkan layanan yang lain untuk melakukan suatu aktifitas.‖ Menurut website XML.com :

―SOA adalah sebuah gaya arsitektural yang memiliki tujuan untuk mencapai tingkat ketergantungan yang rendah diantara interaksi perangkat lunak. Sebuah layanan adalah sebuah unit yang dilakukan oleh sebuah penyedia layanan untuk mendapatkan hasil yang diharapkan oleh pengguna layanan. Masing-masing penyedia dan pengguna layanan memiliki peran untuk dilaksanakan oleh perangkat lunak sesuai dengan kepemilikannya.‖

Secara umum SOA dapat dituliskan kembali sebagai berikut :

―SOA adalah sebuah arsitektur aplikasi dimana semua fungsi, layanan-layanan didefinisikan menggunakan sebuah bahasa yang terdeskripsi dan dapat mengakses antarmuka yang dipanggil untuk melakukan proses-proses bisnis. Setiap interaksi adalah independent terhadap yang lain. Karena antarmuka bersifat independent terhadap platform, setiap klien dari sembarang device dapat menggunakan service yang disediakan. SOA menghubungkan sistem operasi yang beragam dan mampu melakukan otomatisasi terhadap proses bisnis suatu organisasi secara internal atau enterprise.‖

Gambar II.1 memberikan struktur hirarki dari SOA. SOA adalah sebuah arsitektur perangkat lunak yang didasarkan pada konsep-konsep kunci dari sebuah aplikasi front-end, service, service repository, dan service bus. Sebuah service terdiri dari sebuah kontrak, satu atau lebih antar muka, dan sebuah implementasi.

(5)

II-5

Gambar II.1. Struktur Hirarki SOA [WEB004]

II.3 Prinsip-prinsip SOA

Prinsip-prinsip berikut ini mendefinisikan aturan-aturan dasar dalam pengembangan, perawatan dan penggunaan dari SOA [7] :

a. Konsep utama dari SOA adalah layanan.

b. Setiap layanan didefinisikan dengan sebuah kontrak yang formal.

c. Layanan-layanan hanya berinteraksi dengan layanan yang lain melalui antarmuka kontrak yang telah didefinisikan terlebih dahulu.

d. Layanan-layanan harus dapat diakses melalui standard teknologi yang tersedia pada lingkungan secara umum. Mekanisme-mekanisme yang digunakan harus dapat diterima oleh standard-standard industri.

e. Layanan-layanan harus dapat didefinisikan kedalam level abstraksi yang tinggi yang berhubungan aktifitas-aktifitas pada dunia nyata dan fungsi-fungsi bisnis yang dapat dikenal sehingga kebutuhan-kebutuhan bisnis dan kemampuan-kemampuan teknikal dapat di selaraskan dengan tepat.

SOA

Appliation Front

End Service

Contract Implementation

Business Logic Data

Interface Service

(6)

II-6

f. Layanan-layanan yang tersedia harus memiliki arti yang penuh atau mudah dipahami.

g. Layanan-layanan harus loosely coupled.

h. Kumpulan layanan harus memiliki tipe dokumen yang sama, yaitu dokumen XML. Hal ini untuk menfasilitasi pertukaran informasi diantara layanan-layanan dan struktur dan semantik dari dokumen harus disepakati dan dapat dimengerti dengan baik.

i. Layanan-layanan harus memberikan tugas-tugas yang spesifik dan menyediakan antarmuka yang sederhana untuk mengakses atau menggunakan fungsionalitas yang disediakan.

j. Layanan-layanan harus menyediakan informasi yang menjelaskan kemampuan dan keterbatasan dari layanan yang disediakan. Informasi tersebut harus tersedia pada repository.

II.4 Komponen-komponen SOA

Komponen-komponen yang menyusun SOA merupakan kunci dari arsitektur berbasis layanan dibangun. Komponen komponen yang terlibat didalam arsitektur berbasis layanan adalah :

II.4.1 Service

Sebuah layanan adalah sebuah lokasi yang terletak pada jaringan yang memiliki mesin yang dapat membaca deskripsi dari messages yang diterima dan memberikan respon balik [7]. Layanan juga dapat didefinisikan sebagai interface untuk menerima request dari pengguna layanan dan kemudian memberikan respon terhadap request tersebut.

Sebuah layanan dalam SOA adalah sebuah bagian fungsi yang memiliki tiga karakteristik:

a. Contract Interface. Kontrak antarmuka layanan adalah bersifat platform independent.

(7)

II-7

b. Dinamically found and assessment. Layanan secara dinamis dapat ditemukan dan digunakan.

c. Self Contained. Setiap layanan dibangun secara independen. Layanan memiliki business logic dan definisi yang tidak bergantung terhadap layanan yang lain.

II.4.2 Message

Penyedia layanan dan pemakai layanan berkomunikasi melalui pesan. Layanan-layanan menggunakan kontrak antarmuka, yang mendefinisikan sifat Layanan-layanan dan pesan yang diterima dan dikembalikan. Untuk mendukung kontrak antarmuka yang bersifat independen, teknologi yang digunakan harus mampu mendefinisikan pesan yang dikirim oleh platform atau bahasa yang lain. Oleh karena itu, pesan secara tipikal dibangun menggunakan dokumen-dokumen XML. XML menyediakan semua fungsionalitas, granularitas, dan skalabilitas yang dibutuhkan oleh pesan, sehingga memungkinkan pengguna dan penyedia layanan untuk berkomunikasi dengan efektif; pengguna dan penyedia layanan membutuhkan sistem yang tidak dibatasi untuk mendefinisikan pesan.

II.4.3 Dynamic Discovery

Dynamic discovery adalah sebuah bagian penting dari SOA. Pada level tinggi, SOA dibentuk oleh tiga bagian penting, yaitu penyedia layanan, pengguna layanan, dan direktori layanan. Peran dari penyedia layanan dan pengguna layanan sudah jelas, tetapi peran dari direktori layanan memerlukan penjelasan lebih lanjut. Direktori layanan adalah sebuah penghubung antara penyedia layanan dan pengguna layanan. Penyedia layanan mendaftarkan layanan pada direktori layanan dan pengguna layanan meminta atau mencari layanan dari direktori layanan. Sebagian besar direktori layanan secara umum diatur berdasarkan kriteria dan kategori. Pengguna layanan dapat menggunakan kemampuan untuk mencari layanan untuk menemukan penyedia layanan. Direktori layanan pada SOA untuk mewujudkan hal-hal dibawah ini:

1. Skalabilitas dari layanan. Layanan dapat ditambah secara bertahap. 2. Decouples pengguna layanan dari penyedia layanan.

(8)

II-8

3. Mengijinkan untuk ―hot updates‖ terhadap layanan. 4. Menyediakan pencarian layanan bagi pengguna.

5. Mengijinkan pengguna layanan untuk memilih layanan diantara para penyedia layanan daripada melakukan hard coding pada sebuah penyedia layanan.

II.4.4 Web Services

Web services [WEB004] adalah sebuah sistem perangkat lunak yang didesain untuk mendukung interaksi yang interoperable antar mesin melalui sebuah jaringan.

Walaupun konsep-konsep yang membentuk SOA telah ada sebelum web services muncul, web services memiliki peran penting didalam SOA. Hal ini dikarenakan web services dibangun diatas protokol-protokol yang sudah terkenal dan memiliki platform yang independent, seperti HTTP, XML, UDDI, dan WSDL. SOA menggunakan protokol-protokol tersebut sebagai komponen kunci karena protokol-protokol menyediakan layanan yang dapat ditemukan dan digunakan secara dinamis. SOA menyediakan layanan yang memiliki kontrak antarmuka yang platform independent, yang disediakan oleh XML. SOA menekankan pada interoperability, hal ini disediakan oleh HTTP. Alasan-alasan tersebut menjadikan web services sebagai jantung dari SOA.

Gambar II.2 memberikan gambaran tentang proses yang dilakukan dan elemen-elemen yang terlibat dalam web services:

(9)

II-9

Gambar II.2. Proses Web services

Berikut penjelasan tentang proses yang terjadi pada web service :

a. Proses pencarian layanan (find). Proses ini dilakukan oleh service consumer terhadap server yang memiliki daftar layanan yang dapat digunakan serta cara untuk menggunakannya.

b. Proses menggunakan layanan (bind and invoke). Proses ini dilakukan apabila aggreement antara service consumer dan service provider telah didaftarkan pada registry server.

c. Proses register. Proses ini dilakukan oleh service provider untuk mendaftarkan service yang dapat digunakan oleh service consumer pada registry server.

d. Service contract. Bagian ini adalah antarmuka service yang mendefinisikan komponen-komponen yang terdapat pada sebuah service. Service contract di representasikan dalam bentuk WSDL. WSDL adalah sebuah deskripsi bahasa yang dapat dimengerti oleh manusia dan mesin komputer. WSDL ditulis dengan menggunakan sintaks XML dan digunakan sebagai antarmuka untuk melakukan message exchange dalam suatu layanan. Contoh komponen-komponen yang terdapat pada service contract adalah nama layanan, nomor versi, header.

Registry

Service Provider

Service Consumer

(10)

II-10 II.5 Keuntungan SOA

Berdasarkan webmethods.com, SOA memiliki karakteristik yang memberikan keuntungan-keuntungan sebagai berikut:

1. Loosely coupled

a. Meningkatkan kemampuan penyesuaian organisasi; memampukan organisasi atau perusahaan untuk memodifikasi proses bisnis dan menanggapi kebutuhan pasar dengan mudah.

b. Menyediakan keuntungan bersaing dengan menawarkan fleksibilitas yang lebih tinggi. Sistem komputer dapat digunakan untuk mendukung proses bisnis.

c. Biaya implementasi yang rendah dengan meningkatkan penggunaan kembali komponen yang telah ada.

d. Meningkatkan adaptasi terhadap perkembangan IT. Integrasi antar aplikasi menjadi lebih mudah.

2. Modular approach

a. Memampukan pengembangan secara bertahap, deployment, dan perawatan: menghindari biaya yang tinggi dan resiko implementasi perangkat lunak yang tidak tepat sasaran, ―big bang‖.

b. Menurunkan usaha pengembangan dengan mengurangi kompleksitas melalui pendekatan divide and conquer.

c. Selalu lebih cepat dalam menghasilkan sebuah fungsi aplikasi baru. Kebanyakan adalah proses menyatukan komponen-komponen yang telah ada dibandingkan dengan melakukan pengembangan baru.

3. Non-intrusive

a. Aset IT yang telah diinvestasikan dapat digunakan kembali.

b. Resiko dan usaha pengembangan yang lebih rendah; karena dapat menghindari keharusan untuk menulis kembali dan melakukan pengujian terhadap aplikasi yang telah ada.

(11)

II-11 4. Standard-based

a. Platform yang independent mengijinkan organisasi menggunakan perangkat lunak dan perangkat keras sesuai dengan pilihannya.

b. Mengijinkan organisasi untuk menggunakan atau menyewa sumber daya yang berbeda sehingga mengurangi ketergantungan terhadap satu vendor. c. Kebutuhan untuk melakukan pelatihan lebih rendah dan meningkatkan

keahlian orang-orang yang dapat menjalankan aplikasi dengan mudah. 5. General purpose technology

Membebaskan dari skala ekonomi, teknologi yang sama dapat digunakan untuk masalah-masalah bisnis yang lebih luas.

Dibawah ini adalah prinsip-prinsip arsitektural yang spesifik untuk mendesain dan mendefinisikan layanan yang berfokus pada tema yang mempengaruhi sifat dari sebuah sistem :

1. Enkapsulasi layanan (Service encapsulation). Implementasi detail dari sebuah layanan disembunyikan dari sisi klien.

2. Kebergantungan yang rendah pada layanan lain (Service loosely coupling). Layanan-layanan yang merawat sebuah hubungan yang meminimalisasi kebergantungan.

3. Kontrak layanan (Service contract). Layanan-layanan yang ditambahkan untuk sebuah perjanjian komunikasi yang didefinisikan secara kolektif oleh satu atau lebih dokumen deskripsi layanan.

4. Abstraksi layanan (Service abstraction). Layanan yang menyimpan atau menyembunyikan proses logik dari dunia luar.

5. Kemampuan penggunaan kembali layanan (Service reusability). Proses logik yang dibagi kedalam layanan-layanan untuk mempromosikan penggunaan kembali.

(12)

II-12

6. Kemampuan penggabungan layanan (Service composability). Kumpulan layanan-layanan yang dapat dikoordinasi dan dibangun membentuk komposit layanan.

7. Otonomi layanan (Service autonomy). Layanan-layanan yang memiliki kontrol terhadap proses logik yang di-enkapsulasi.

8. Optimasi layanan (Service optimization). Tanpa memperhitungkan pertimbangan lain atau jika parameter lain dianggap sama atau tetap, layanan berkualitas tinggi secara umum lebih dipilih dibandingkan layanan berkualitas rendah.

9. Kemampuan ditemukannya layanan (Service discoverability). Layanan yang dirancang agar dapat ditemukan dengan cepat dan digunakan oleh pengguna layanan.

II.6 Desain dan Pengembangan SOA

Terdapat dua bagian penting dalam desain dan pengembangan SOA. Pertama adalah cara tentang bagaimana melakukan desain dan implementasi terhadap layanan dan aplikasi yang akan dirancang. Kedua adalah cara tentang bagaimana melakukan pengembangan terhadap layanan dan aplikasi SOA. Berikut penjelasan masing-masing bagian :

1. Desain layanan dan aplikasi SOA.

SOA memberikan sebuah pendekatan arsitektur dengan melakukan decomposing terhadap proses-proses bisnis dan aktifitas-aktifitas dasar (low level activities) menjadi standards-based services. Untuk melakukan desain layanan dan aplikasi SOA, terdapat sebuah metodologi yang disebut Shared service life Cycle (SSLC)[WEB007] yang dapat digunakan sebagai acuan dalam melakukan perancangan layanan. Perulangan pada SSLC dibagi dalam 2 aspek, yaitu :

a. Design-time. b. Run-time.

(13)

II-13 a. Identify Business Process

b. Service Modeling c. Build and Compose

Bagian Run-time melakukan 3 fase dalam impementasi layanan : a. Publish and Provision

b. Integrate and Deploy c. Secure and Manage d. Evaluate

Gambar II.3 menunjukkan fase-fase yang dilakukan dalam melakukan perancangan layanan dalam aplikasi SOA.

Gambar II.3. Shared Service Life Cycle [WEB007]

2. Pengembangan layanan dan aplikasi SOA.

Pengembangan layanan dan aplikasi SOA memiliki 3 tahap umum yaitu :

a. Analysis. Dilakukan analisis proses-proses bisnis yang berlangsung pada serta fungsi – fungsi yang mendukung masing-masing proses tersebut. Analisis

Service Modelling Build and Compose Publish and Provision Integrate and Deploy Secure and Manage Evaluate Identify Business Process Design-Time Run-Time

(14)

II-14

setiap proses bisnis yang dapat dijadikan layanan dan perlu untuk dikembangkan.

b. Develop. Gunakan fungsionalitas yang telah ada pada sistem informasi yang ada dalam melakukan pengembangan layanan. Pastikan setiap layanan tetap memiliki independency dan memiliki agreement yang jelas dengan penyedia layanan dan pengguna layanan.

c. Utilize. Menjalankan layanan yang telah dibuat, dan terus melakukan identifikasi dan optimasi terhadap layanan jika terdapat kesempatan.

II.7 Implementasi SOA.

SOA dapat diimplementasikan dengan beberapa teknologi berikut ini: II.7.1 Web Services.

Web services didukung oleh beberapa teknologi berikut ini :

1. SOAP (Simple Object Access Protocol) atau dikenal juga Service Oriented Architecture Protocol, adalah sebuah protokol yang digunakan untuk melakukan pertukaran dokumen XML melalui jaringan komputer.

2. WSDL (Web services Description Language) adalah sebuah dokumen yang ditulis dalam XML. Dokumen ini mendeskripsikan sebuah layanan web. WSDL menunjukkkan lokasi dari layanan dan operasi-operasi atau metode-metode yang dapat digunakan.

3. UDDI (Universal Description, Discovery and Integration) adalah sebuah kerangka kerja platform yang independent untuk mendeskripsikan layanan-layanan, menemukan, dan mengintegrasikan layanan dengan menggunakan internet. UDDI berkomunikasi melalui SOAP. UDDI adalah sebuah direktori dari web services dimana antarmuka UDDI adalah WSDL.

II.7.2 CORBA (Common object request broker architecutere)

Sebuah standar yang dikeluarkan oleh Object Management Group (OMG) yang memampukan komponen-komponen perangkat lunak ditulis dalam bahasa

(15)

II-15

pemrograman dan dijalankan diatas platform yang beragam untuk saling berkomunikasi (interoperate).

II.7.3 EJB (Enterprise Java Bean)

EJB adalah sebuah arsitektur komponen server-side yang menyederhanakan proses membangun class enterprise aplikasi komponen terdistribusi dalam lingkungan java.

II.7.4 RMI (Remote Method Invocation)

RMI adalah sebuah mekanisme yang terdapat pada bahasa pemrograman java. RMI mengijinkan objek-objek java untuk menggunakan methods pada objek lain dengan menggunakan JVM.

II.7.5 REST (Representational State transfer)

REST adalah gaya arsitektur perangkat lunak untuk sistem hypermedia terdistribusi seperti world wide web. REST memiliki tujuan untuk memberikan gambaran bagaimana sebuah aplikasi web berperilaku: sebuah jaringan dari halaman-halaman web, tujuan ketika user memilih link (state transitions), hasil dari halaman selanjutnya (mewakili status berikutnya) yang akan ditransfer kepada user. — Dr. Roy Fielding, Architectural Styles and the Design of Network-based Software Architectures.

II.7.6 RPC (Remote Procedure Call)

RPC adalah sebuah mekanisme komunikasi yang memampukan sebuah proses berkomunikasi dengan proses yang lain. Proses komunikasi ini dapat terjadi pada komputer berbeda pada sebuah jaringan. RPC menggunakan metode IPC untuk menciptakan proces ilusi untuk melakukan pertukaran proses yang terjadi pada alamat yang sama. RPC memampukan untuk mengeksekusi sebuah routine pada komputer yang berbeda melalui jaringan komputer.

II.7.7 DCOM (Distribute Component Object Model)

DCOM adalah sebuah kumpulan konsep Microsoft dan antarmuka program dimana objek program client dapat meminta service dari objek program server pada komputer lain dalam sebuah jaringan. DCOM menyediakan sekumpulan

(16)

II-16

antarmuka yang memungkinkan client dan server dapat saling berkomunikasi pada komputer yang sama.

II.8 Dua Pendekatan Pengintegrasian dan Interoperability

Dua pendekatan yang dapat digunakan untuk pengintegrasian suatu sistem adalah: 1. Web services integration (WSI). Integrasi Web services bersifat lebih sukses ketika hasil yang ingin dicapai dan ROI (return on investment) lebih diprioritaskan dalam waktu yang pendek. WSI bersifat opportunistic dan tactical. Karakteristik WSI[8] :

a. WSI Project melibatkan sistem yang kecil (dua sampai empat sistem). b. SOAP didefinisikan untuk : diperlukan pertukaran data pada sistem,

format legacy message telah dimengerti, dan legacy APIs/methods telah tersedia.

c. Faster time to market. d. Lower integration cost.

2. Service Oriented Integration (SOI). Integrasi berorientasi layanan bersifat sistematic dan strategis dalam context SOA. Karakteristik SOI [8] :

a. Kerangka kerja SOA, proses-proses, guidelines, models dan kakas yang digunakan didefinisikan pada fase awal.

b. Pemodelan formal dari domain service digunakan. Identifikasi tipe data kunci, kontrak service, dan proses-proses yang digunakan dalam organisasi.

c. Taxonomy service didefinisikan dengan baik agar dapat dipromosikan untuk digunakan lagi untuk project selanjutnya.

d. SOI menciptakan data formal dan data reusable, service, dan model proses yang applicable dalam domain service atau antar domain service yang lain.

e. Reduces vendor lock in (Mengurangi ketergantungan terhadap pihak yang menyediakan produk sistem perangkat lunak) dan

(17)

II-17

menyederhanakan dalam melakukan migrasi aplikasi dan konsolidasi di masa yang akan datang.

Gambar II.4. Arsitektur WSI [8]

(18)

II-18 II.9 Perancangan model service

Model service direpresentasikan dengan simbol pada Gambar II.6 [7] :

Gambar II.6. Bentuk Lingkaran Untuk Merepresentasikan Service

Service Compositions adalah sebuah kumpulan layanan-layanan yang telah dikoordinasi. Gambar II.7 adalah contoh sebuah service composition.

Gambar II.7. Service Composition

Service Inventory adalah kumpulan layanan-layanan yang independent, diatur dan telah distandarisasi dimana layanan tersebut dapat merepresentasikan suatu layanan pada enterprise atau sebuah segmen pada enterprise tersebut [7]. Gambar II.8 merepresentasikan sebuah service inventory.

(19)

II-19

Hubungan antara service inventory dan service composition direpresentasikan dengan gambar II.9. Layanan yang tersedia dapat dirancang untuk digunakan kembali dalam bentuk service composition.

Gambar II.9. Hubungan Service Inventory dan Service Composition II.10 Pemodelan service-oriented classes

Bagian ini akan menjelaskan bagaimana service-oriented class dan service interface didesain agar dapat saling berinteraksi. Terdapat 2 proses untuk melakukan desain service-oriented class dan service interface [11]. Proses yang pertama adalah melakukan desain komponen class untuk service oriented dan proses yang kedua adalah melakukan desain Web services interface.

Berikut adalah langkah untuk desain service oriented class [11]:

1. Mengidentifikasi business services ke dalam component class. Mengidentifikasi bagian-bagian business logic yang terdapat pada model applikasi yang digunakan pada sistem kini, kemudian mencoba membuat component class.

2. Identifikasi logic yang tidak dapat direpresentasikan oleh web services. Mengidentifikasi fungsi-fungsi yang sulit untuk direpresentasikan dalam web services agar tidak memberikan efek pada saat melakukan implementasi web services.

Service Inventory Service Composition Supported by- Service Oriented Architecture

(20)

II-20

3. Menganalisa classes atau methods yang dapat di gunakan kembali. SOA memberikan kesempatan untuk melakukan penggunaan kembali kode routines yang terdapat pada class methods.

4. Identifikasi ketergantungan interfaces. Method yang dibangun secara public memungkinkan untuk terjadinya internal dependencies. Hal ini memungkinkan sebuah method harus memanggil method yang lain untuk menyelesaikan prosesnya.

5. Menentukan tingkat interoperability. Setiap class dilakukan pengelompokkan methods sesuai dengan kebutuhan data secara internal atau external. Sebuah method yang biasa digunakan untuk pertukaran data antar layanan yang saling berinteraksi dan digunakan oleh external requestor akan memiliki level yang berbeda dibandingkan dengan methods yang lain.

6. Membuat granular, task oriented classes. Services yang akan dibangun dikelompokkan ke dalam kelompok-kelompok logical yang mendukung proses bisnis sebuah layanan.

7. Mengelompokkan methods berdasarkan tipe. Setiap methods yang telah teridentifikasi dikelompokkan ke dalam kelas yang baru.

8. Identifikasi kandidat service encapsulation. Bagian ini akan melakukan analisis class yang akan di encapsulation ke dalam web services. Sebuah kandidat class dari SOA belum berarti cocok untuk diimplementasikan ke dalam web services.

9. Review non-services class. Melakukan review terhadap classes yang tidak qualify untuk dijadikan sebagai web services.

10. Identifikasi kesempatan untuk melakukan konsolidasi proses yang saling berhubungan. Proses ini melakukan iterasi secara keseluruhan untuk melihat methods yang memiliki level interoperability yang sama.

(21)

II-21 II.11 Sistem Informasi Di Perguruan Tinggi

Definisi Sistem Informasi [WEB005] adalah penataan atau pengelolaan manusia, data, proses, representasi data dan teknologi informasi yang mendukung kebutuhan pengguna.

Definisi Sistem Informasi [WEB006] :

―Sebuah kumpulan orang, prosedur, sumber daya yang dikumpulkan, diubah menjadi informasi dan disebarkan dalam sebuah organisasi; sebuah sistem yang menerima sumber daya data sebagai input dan memrosesnya menjadi produk informasi sebagai output; sebuah sistem yang menggunakan perangkat keras, perangkat lunak dan orang untuk melakukan input, proses, output, penyimpanan dan mengontrol aktifitas dan mengubah sumber daya data menjadi produk informasi; sebuah sistem yang didesain dengan maksud tertentu untuk sehingga data, komputer, prosedur, dan orang dapat bersama-sama mengelola informasi yang penting untuk mencapai misi dari organisasi.‖

Peranan dari sistem informasi adalah mengolah data menjadi informasi yang dapat digunakan oleh user, stakeholder, manager. Selanjutnya informasi dimanfaatkan dengan cara sebagai berikut:

1. Digunakan untuk membuat/menunjang keputusan (decision making). 2. Sebagai feedback.

3. Sebagai input untuk melakukan proses selanjutnya.

4. Digunakan untuk melakukan analisis terhadap suatu sistem. 5. Menunjukkan hasil yang baru.

II.12 Definisi dan Peranan Perguruan Tinggi Menurut UU No. 20 tahun 2003 pasal 19 ayat 1:

―Yang dimaksud perguruan tinggi adalah merupakan jenjang pendidikan setelah pendidikan menengah mencakup program pendidikan diploma,

(22)

II-22

sarjana, magister, spesialis, dan doktor yang diselenggarakan oleh perguruan tinggi‖.

Secara khusus peran perguruan tinggi tercantum dalam dalam PP No. 30 tahun 1990 tentang Perguruan Tinggi. Dalam ketentuan umum, Pasal 1 ayat 2 :

―Perguruan tinggi adalah satuan pendidikan yang menyelenggarakan pendidikan tinggi‖.

Selanjutnya pendidikan tinggi memiliki tujuan sebagai berikut:

1. Menyiapkan peserta didik menjadi anggota masyarakat yang memiliki kemampuan akademik dan atau profesional yang dapat menerapkan, mengembangkan dan atau memperkaya khasanah ilmu pengetahuan, teknologi, dan atau kesenian.

2. Mengembangkan dan menyebarluaskan ilmu pengetahuan, teknologi, dan atau kesenian serta mengupayakan penggunaannya untuk meningkatkan taraf kehidupan masyarakat dan memperkaya kebudayaan nasional.

II.13 Peranan Strategis ICT Pada Perguruan Tinggi

Teknologi komunikasi dan informasi telah menjadi pilihan mutlak dalam dunia pendidikan. Perguruan tinggi memanfaatkan ICT untuk meningkatkan kualitas penyelenggaraan pendidikan tinggi. ICT telah diterapkan sebagai media untuk dalam penyelenggaraan aktivitas belajar mengajar, riset, serta pelayanan kepada masyarakat[3].

II.14 ICT Sebagai Transaction dan Interaction Enabler

ICT memungkinkan perguruan tinggi dapat menciptakan proses pendidikan yang murah-berkualitas-cepat. Berikut ini adalah contoh pemanfaatan ICT dalam dunia pendidikan[3] :

1. Pendaftaran online menggunakan website. 2. FRS online.

(23)

II-23 4. Pengumuman hasil ujian online.

5. Manajemen ruangan kelas, mata kuliah, dosen. 6. Portal Perpustakaan.

7. e-learning. 8. Blog.

9. Sharing files. 10. Ujian online.

II.15 Inovasi ICT Untuk Menunjang Aktifitas Perguruan Tinggi

Manfaat ICT telah digunakan oleh perguruan tinggi saat ini. Selanjutnya ICT telah berkembang menjadi partner para akademisi untuk menciptakan inovasi yang lebih berkualitas dalam menunjang aktifits perguruan tinggi.

Berikut adalah contoh inovasi ICT yang digunakan oleh perguruan tinggi dalam menyelenggarakan aktivitasnya [3]:

1. Media Simulasi. 2. Course Management 3. Virtual Class

4. Distance learning

5. CBT (Computer Based Training) 6. Knowledge portal

7. Cyber Community

II.16 SOA dan Integrasi Sistem Informasi Pada Perguruan Tinggi.

Dengan semakin majunya teknologi, pemanfaatan teknologi yang semakin berkembang maka kompleksitas dan keanekaragaman platform tidak bisa dihindari. SOA menawarkan sebuah rancangan arsitektur yang dapat digunakan oleh perguruan tinggi untuk melakukan pengintegrasian sistem informasi. Keuntungan dari SOA yang dapat dipenuhi oleh ICT memberikan manfaat bagi

(24)

II-24

perguruan tinggi untuk melakukan pengembangan dalam proses bisnis perguruan tinggi. Sistem informasi yang telah ada serta layanan-layanan yang digunakan dapat dikembangkan dan diintegrasikan dengan menggunakan SOA. SOA memberikan solusi bagi perguruan tinggi dalam menangani kompleksitas platform hardware, software, perawatan perangkat lunak, training operator, penggunaan kembali kode, dan pengembangan layanan-layanan di perguruan tinggi.

Gambar

Gambar II.1. Struktur Hirarki SOA [WEB004]
Gambar II.2. Proses Web services
Gambar  II.3  menunjukkan  fase-fase  yang  dilakukan  dalam  melakukan  perancangan layanan dalam aplikasi SOA
Gambar II.5. Arsitektur SOI [8]
+3

Referensi

Dokumen terkait

Dalam penelitian ini dihasilkan koefisien korelasi berganda (R) sebesar 83,9 % dari data yang ada menunjukkan bahwa variabel bebas yaitu penggunaan sistem

Keluhan utama yang paling sering muncul pada saat pasien datang berobat pertama kali adalah alat kelamin laki-laki kecil sebanyak 15 kasus (16%) dan buah zakar tidak turun 15

(Jurnal Terproduktif di Sinta) Komponen Penilaian Bobot Penilaian (bukan prosentase) Jumlah Dokumen Artikel di Scopus 40 Jumlah Dokumen Non Artikel di Scopus 15 Jumlah Sitasi

Susanto (2006) menyatakan bahwa budaya organisasi adalah sebuah nilai-nilai yang menjadi sebuah pedoman sumber daya manusia untuk menghadapi sebuah permasalahan

Untuk menguji pengaruh kepemimpinan transformasional dengan empat dimensinya, yaitu idealized influence (pengaruh yang ideal), inspirational motivation (motivasi yang

Sikap sukarela inilah yang disebut dengan Organizational Citizenship Behavior (OCB).Dalam melaksanakan.. progress yang sudah ada, puskesmas II Jembrana Bali memiliki target-target

Teknologi Intel Optane menggunakan teknologi memori 3D XPoint dan berfungsi sebagai cache/akselerator penyimpanan yang tidak mudah menguap dan/atau perangkat penyimpanan tergantung

Sesungguhnya Allah subhaanahu wata'ala menutup penglihatan manusia dari hal tersebut, tujuaannya adalah sebagai ujian bagi mereka agar menjadi jelas siapakah yang beriman kepada