BAB II LANDASAN TEORI II.1
Komputasi Awan (Cloud Computing) Perkembangan informasi teknologi dalam beberapa dekade terakhir ini
mengalami kemajuan yang sangat siginifikan. Sebut saja cloud computing, big data, mobile computing, dan lain sebagainya. Namun untuk mengatasi permasalahan yang muncul dalam memenuhi kebutuhan bisnis, tidak cukup hanya mengimplementasikan teknologi terbaru saja, tapi juga mengetahui apa yang bisa dilakukan dengan teknologi tersebut. Salah satu contohnya adalah teknologi cloud computing (komputasi awan). Menurut Tiffani Bova, vice president with Gartner Research, yang ditulis dalam Network World oleh Christine Burns (2012) bahwa cloud adalah lebih mengenai bagaimana suatu perusahaan menggunakan teknologi untuk menyelaraskan proses bisnis dan kurang mengenai teknologi itu sendiri. Suatu perusahaan atau organisasi dapat membangun sebuah infrastruktur yang scalable dan dinamis dengan menggunakan teknologi cloud, termasuk didalamnya mempersiapkan platform sistem operasi serta aplikasi yang sesuai dengan kebutuhan perusahaan dan infrastruktur yang sudah dibangun. Pemanfaatan teknologi cloud ini sesuai dengan pernyataan Eric Knorr dan Galen Gruman (2012) yang memberikan pandangan bahwa Cloud Computing adalah sebuah cara untuk meningkatkan kapasitas atau menambahkan kemampuan secara on the fly tanpa menambah investasi infrastruktur baru, melatih staff baru atau lisensi perangkat lunak baru.
6
7
National Institute of Standard and Technology (NIST), memberikan definisi mengenai Cloud Computing yaitu, “Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction”. Dengan definisi seperti itu, NIST menyatakan bahwa pemodelan cloud dibangun atas 5 karakteristik utama, 3 model layanan (services), dan 4 model pembangunan (deployment). II.1.1 Karakteristik Komputasi Awan Ada lima karakteristik utama komputasi awan sesuai yang ditunjukkan pada gambar 1. Berikut ini definisi dari karakteristik utama komputasi awan oleh National Institute of Standard and Technology (NIST): 1.
On-demand self-services. Konsumer atau pengguna dapat secara sepihak melakukan kustomisasi yang diperlukan tanpa berinteraksi langsung dengan staff dari penyedia layanan, misal konfigurasi waktu server dan kapasitas jaringan.
2.
Broad network access. Kemampuan yang tersedia dalam jaringan dan diakses melalui mekanisme standar yang dapat digunakan oleh berbagai macam platform seperti, mobile phones, tablet, laptop, dan workstations.
3.
Resource pooling. Sumber daya komputasi dari penyedia layanan
dipusatkan
menggunakan
sebuah
untuk
melayani
model
banyak
multi-penyewaan,
konsumer dengan
sumberdaya fisik dan virtual yang berbeda yang penempatannya
8
dapat dikelola secara dinamis sesuai dengan kebutuhan konsumer. 4.
Rapid elasticity. Kemampuan komputasi dapat disediakan dan diberikan dengan elastik, dalam beberapa kasus secara otomatis, untuk secara cepat memenuhi kebutuhan konsumer. Bagi konsumer, kemampuan ini terlihat tidak terbatas dan dapat disediakan dalam waktu apapun.
5.
Measured services. Sistem cloud dikontrol otomatis dan sumberdaya dioptimalisasi dengan memanfaatkan kemampuan pengukuran pada level tertentu dari kesesuaian tipe layanan (misal, penyimpanan, proses, bandwith, dan akun user yang aktif). Sumberdaya dapat dimonitor, dikontrol dan dilaporkan, secara transparan bagi penyedia layanan dan bagi konsumer yang menggunakan layanan tersebut.
Gambar 1. Karakteristik Cloud
9
sumber: http://www.opengroup.org/cloud/cloud/cloud_for_business/what.ht m II.1.2 Model Layanan dalam Komputasi Awan 3 Model layanan (services) yang dinyatakan menurut National Institute of Standard and Technology (NIST): 1.
Software as a Service (SaaS). Kemampuan yang disediakan bagi konsumer adalah untuk menggunakan aplikasi dari penyedia layanan yang berjalan dalam infrastruktur cloud. Aplikasi dapat diakses dari berbagai perangkat melalui antar muka thin client, seperti web browser atau antarmuka program. Konsumer atau pengguna tidak mengelola atau mengkontrol infrastruktur dasar seperti jaringan, server, sistem operasi, penyimpanan atau bahkan kemampuan tertentu dari aplikasi, tentu dengan pengecualian pegaturan pengguna aplikasi tertentu.
2.
Platform as a Service (Paas). Kemampuan yang disediakan bagi konsumer atau pengguna layanan cloud adalah untuk membangun kedalam infrastruktur cloud yang dibuat pengguna dengan menggunakan bahasa pemprograman, pustaka, layanan dan perangkat yang didukung oleh penyedia layanan. Konsumer tidak mengelola atau mengkontrol infrastruktur dasar cloud termasuk jaringan, server, sistem operasi atau penyimpanan, tapi memiliki kontrol terhadap aplikasi yang dibangun dan memungkinkan untuk melakukan konfigurasi untuk lingkungan kepemilikan aplikasi.
10
3.
Infrastructure as a Service (IaaS). Kemampuan yang disediakan bagi konsumer ada untuk memberikan proses, tempat penyimpanan, jaringan dan sumberdaya komputasi fundamental lainnya dimana konsumer dapat membangun dan menjalankan perangkat lunak semaunya yang berarti termasuk sistem operasi dan aplikasi. Konsumer tidak mengelola atau mengkontrol infrastruktur dasar cloud tapi memiliki kontrol terhadap sistem operasi, tempat penyimpanan dan aplikasi yang dibangun.; dan kemungkinan kontrol terbatas terhadap komponen jaringan tertentu seperti firewall.
Model layanan komputasi awan dapat digambarkan seperti yang terlihat pada gambar 2 dibawah ini.
Gambar 2. Model Layanan Cloud sumber: http://www.opengroup.org/cloud/cloud/cloud_for_business/what.htm
11
II.1.3 Model Pembangunan Komputasi Awan Model pembangunan (deployment) yang disebutkan National Institute of Standard and Technology NIST ada 4 jenis, yaitu: 1.
Private cloud. Infrastruktur cloud yang disediakan secara khusus untuk digunakan oleh satu organisasi yang terdiri dari beberapa unit bisnis. Private Cloud dimiliki, dikelola dan di operasikan oleh organisasi, pihak ketiga, atau kombinasi keduanya, dan dapat berada pada suatu tempat yang sama ataupun berbeda.
2.
Community cloud. Infrastruktur cloud yang disediakan secara khusus untuk digunakan oleh komunitas yang spesifik dari organisasi-organisasi yang memiliki kepentingan bersama. Community Cloud dimiliki, dikelola dan di operasikan oleh satu atau lebih organisasi dalam komunitas tersebut, pihak ketiga, atau kombinasi keduanya, dan dapat berada pada suatu tempat yang sama ataupun berbeda.
3.
Public cloud. Infrastruktur yang disediakan secara terbuka untuk digunakan oleh masyarakat umum. Public Cloud dimiliki, dikelola dan di operasikan oleh perusahaan, akademis, atau organisasi pemerintah, atau kombinasi dari semuanya. Public cloud berada pada tempat yang ditentukan penyedia layanan cloud.
4.
Hybrid cloud. Infrastruktur cloud yang terdiri dari dua atau lebih infrastruktur cloud yang berbeda (private, community atau
12
public) yang tetap unik, namun terikat pada standard atau paten teknologi yang memungkinkan portabilitas pada data dan aplikasi.
Gambar 3. Model Pembangunan Cloud sumber: http://www.cloudproviderusa.com/private-publiccommunity-or-hybrid-cloud/ Gambar 3 menunjukkan model pembangunan komputasi awan yang ada saat ini. II.2
Service Oriented Architecture (SOA) Dewasa ini istilah SOA seringkali disebutkan sebagai suatu teknik solusi
atau teknologi untuk menggabungkan beberapa layananan aplikasi. Menurut Judith Hurwitz (2007), SOA merupakan salah satu pendekatan dalam merancang suatu aplikasi dengan menggunakan kembali (reuse) dari komponen-komponen yang sudah ada sebelumnya. Sedangkan Michael Rosan, et al (2008) memberikan penyataan bahwa arsitektur perangkat lunak tradisional berfokus pada pembuatan aplikasi perangkat lunak, sedangkan SOA fokus pada pembuatan solusi dalam skala enterprise atau mencakup lintas organisasi, berdasarkan interaksi antara kebutuhan konsumer (biasanya proses bisnis) dan penyedia layanan (services).
13
Namun cara yang baik untuk mengerti SOA adalah keterkaitannya dengan keuntungan yang dihasilkan bagi bisnis. Menurut Anne Thomas (2005) tujuan utama dari SOA adalah untuk meningkatkan fleksibilitas dan kemampuan adaptasi memilih yang mana yang terbaik untuk dicapai dengan menyelaraskan Sistem Teknologi Informasi dengan proses bisnis. SOA erat kaitannya dengan tujuan strategis bisnis, dimana pendekatan SOA diharapkan mampu memberikan nilai tambah bagi proses bisnis suatu organisasi. Pendekatan SOA juga memiliki tujuan untuk meningkatan bisnis dan keselarasan teknologi. Sejalan dengan hal tersebut, Ashish Seth, et al. dalam jurnal Designing a SOA Based Model
menuliskan bahwa pendekatan SOA memberikan banyak
keuntungan termasuk mengurangi waktu pemasaran, meningkatkan keselarasan dalam perkembangan bisnis, mengurangi biaya dan resiko bisnis. Menurut Open Group, SOA ada sebuah gaya arsitektural yang mendukung orientasi layanan (services). Orientasi layanan adalah sebuah cara dalam konteks layanan dan pengembangan berbasis layanan dan hasil dari layanan. II.2.1 Konsep SOA Nicolai M Josuttis dalam buku SOA In Practice (2007) menuliskan bahwa SOA adalah suatu paradigma untuk merealisasikan dan memelihara proses bisnis pada sistem terdistribusi yang sangat besar. SOA terdiri dari 3 konsep teknik utama: 1.
Layanan/Service, yaitu suatu fungsi bisnis. Fungsi ini bisa sederhana (menyimpan atau menerima data konsumer), atau kompleks (suatu proses bisnis untuk pemesanan pelanggan).
14
2.
Enterprise Service Bus (ESB), yaitu infrastruktur yang memungkinkan saling interaksi atau interoperabilitas yang tinggi antara sistem terdistribusi untuk layanan. ESB mempermudah dalam mendistribusikan proses bisnis pada berbagai sistem yang menggunakan platform dan teknologi yang berbeda.
3.
Loose Coupling, yaitu sebuah konsep untuk mengurangi ketergantungan sistem. Karena proses bisnis di distribusikan melalui berbagai backends, hal ini menjadi penting untuk meminimalkan efek dari modifikasi dan kegagalan. Namun ada harga untuk loose coupling, yaitu kompleksitas. Sistem terdistribusi yang
loosely coupled lebih sulit untuk
dikembangkan, dikelola dan di debug. II.2.2 Komponen dasar SOA Nicolai M Josuttis memberikan penjelasan mengenai komponen dasar yang perlu ada dalam penerapan SOA, yaitu: II.2.2.1 Infrastruktur Infrastruktur adalah bagian teknikal dari SOA yang mengenable interoperabilitas yang tinggi. Infrastruktur dalam pemahaman SOA disebut Enterprise Service Bus (ESB). Tujuan utama dari ESB ini adalah memungkinkan kita memanggil layanan diantara berbagai sistem berbeda. ESB bertanggung jawab termasuk transformasi data, routing, berkaitan dengan keamanan dan reliability, manajemen layanan, monitoring dan pencatatan log.
15
II.2.2.2 Arsitektur Arsitektur dibutuhkan untuk membatasi semua kemungkinan dari SOA yang akan menimbulkan pekerjaan lain, pemeliharaan sistem. Konsep SOA, perangkat SOA dan standar SOA memberikan ruang
untuk keputusan yang spesifik yang perlu dibuat untuk
menghindari kekacauan. Kita harus mengklasifikasikan tipe dari layanan, harus memutuskan berapa banyak yang loose coupling, membatasi model data dari antarmuka layanan, mendefinisikan kebijakan, peraturan dan pola, harus jelas dalam pembagian peranan dan tanggung jawab, harus memutuskan penggunaan teknologi, harus memutuskan standar versi mana yang akan digunakan, dan lain sebagainya. II.2.2.3 Proses Satu hal yang membuat suatu sistem besar menjadi rumit adalah banyaknya orang dan tim yang tergabung. Konsekuensinya adalah akan memakan waktu yang panjang dari sebuah ide bisnis atau kebutuhan bisnis menjadi sebuah solusi yang berjalan dalam mode produksi. Karena bukan hanya satu orang atau sedikit orang yang mengkontrol segala sesuatunya, kita harus membuat sebuah proses baku, yaitu: 1.
Model Proses Bisnis (Business Process Modelling/BPM)
2.
Siklus Layanan (Service Lifecycle)
3.
Pengembangan perangkat lunak berbasis Model
16
II.2.2.4 Tatakelola Metaproses dari seluruh proses dan strategi SOA secara keseluruhan adalah tatakelola. Kita harus membuat proses yang benar dalam membangun SOA bagi organisasi. Hal ini berarti termasuk
mencari
mengkombinasikan
orang-orang semua
yang
komponen
tepat dasar
yang SOA
mampu untuk
mendapatkan hasil yang dapat bekerja dan sesuai. Memiliki pengertian, tata kelola, dukungan manajemen, dan pekerjaan rumah merupakan faktor kunci untuk suksesnya SOA. II.2.3 Tantangan SOA Dengan segala keuntungan yang dijanjikan, pendekatan dengan metode SOA tentu memiliki tantangan tersendiri. Michael Rosen, et al (2008) menuliskan ada 4 hal yang menjadi tantangan dalam menerapkan SOA sepert yang diperlihatkan pada gambar 4: 1.
Penggunaan Kembali. Penggunaan kembali (reuse) telah menjadi sesuatu yang ideal bagi pengembangan perangkat lunak selama beberapa dekade. Tapi beberapa obyek dan komponen gagal untuk memenuhi janji pelaku pasar. Saat ini, layanan atau services harapan selanjutnya untuk penggunaan kembali. Jika kita cukup pandai belajar dari masa lalu, kita bisa lebih sukses dengan layanan. Biar bagaimanapun, banyak keuntungan yang diharapkan organisasi dari penerapan SOA membutuhkan layanan-layanan yang ada dalam lingkungan organisasi tersebut
17
dapat digunakan kembali. Syarat arsitektur untuk memenuhi tantangan Penggunaan kembali adalah : a.
Kemampuan untuk publikasi, pencarian, evaluasi dan registrasi konsumer sebagai layanan
b.
Kemampuan untuk mengelola dan menjaga siklus layanan dalam batasan organisasi
c.
Kemampuan untuk menjamin ketersediaan dan versi dari layanan
d.
Mekanisme untuk memisahkan siklus konsumer dari provider
2.
Efisiensi dalam pengembangan.
Melakukan pengembangan
dengan lebih efisien berarti membangun fungsionalitas yang lebih banyak, dengan waktu yang
sedikit dan biaya yang
rendah. Dalam melakukan hal itu sangat bergantung berbagai faktor, termasuk penggunaan kembali layanan atau services dan kemampuan untuk memadukan aplikasi dalam layanan tersebut secara cepat. Hal ini membutuhkan pendekatan layanan dan solusi pengembangan yang berbeda dibandingkan cara yang dilakukan pada masa lampau. Syarat arsitektur untuk memenuhi Efesiensi dalam pengembangan adalah: a.
Memiliki referensi arsitektur yang memberi panduan dalam pengembangan layanan.
18
b.
Menggunakan BPM untuk mendefinisikan proses bisnis, berdasarkan komposisi layanan dan lapisan layanan.
c.
Memiliki proses yang efisien untuk mengelola integritas dari total layanan baik untuk provider ataupun konsumer berhubungan dengan visi dan bisnis dan model informasi.
3.
Integrasi dari Aplikasi dan Data. SOA, berbasis layanan web (web services), menjanjikan untuk menyederhanakan integrasi dengan menyediakan konektivitas universal terhadap sistem dan data yang sedang berjalan. Persyaratan arsitektur yang diperlukan untuk integrasi adalah sebagai berikut: a.
Memiliki enterprise, model semantik umum untuk berbagi informasi.
b.
Memiliki referensi arsitektur yang membedakan antara layanan bisnis dan layanan integrasi.
c.
Memiliki referensi arsitektur yang menjelaskan pola umum untuk integrasi.
d.
Memiliki
kemampuan
infrastruktur
yang
memungkinkan transformasi semantik antara sistem yang berjalan dengan model enterprise. 4.
Kelincahan, Fleksibilitas dan Keselarasan. Hal ini muncul ketika suatu proses baru dapat dibuat dengan cepat dan efisien dari set layanan yang sudah ada. Mencapai kelincahan dan
19
fleksibilitas membutuhkan katalog yang mendaftarkan fungsi dan menyediakan data dari layanan yang ada. Persyaratan arsitektur yang diperlukan untuk memenuhi tantangan ini adalah: a.
Memiliki
sebuah
referensi
arsitektur
yang
mendefinisikan bisnis dan aspek informasi SOA dan hubungannya dengan perusahaan b.
Memiliki model semantik umum yang digunakan untuk menginformasikan desain antarmuka layanan
c.
Menggunakan pengembangan berbasis model untuk memastikan kemudahan penelusuran antara model bisnis dan sistem yang di implementasikan
d.
Memiliki
proses
yang
memungkinkan
dan
memvalidasi kesesuaian
Gambar 4. SOA challenges sumber : Rosen, Michael., et al. (2008). Applied SOA: Service-Oriented Architecture and Design Strategies. p,12.
20
II.2.4 Referensi Arsitektur SOA Michael Rosen et al (2008) menjelaskan bahwa membuat dan menjaga sebuah referensi arsitektur adalah salah satu hal yang lebih penting namun sulit dalam penerapannya untuk SOA dan hal ini merupakan faktor kunci kesuksesan dalam mencapai tujuan SOA. Gambar 5 memperlihatkan mengenai referensi arsitektur SOA, dan referensi arsitektur SOA tersebut harus memenuhi kriteria berikut: 1. Mendukung konsep enterprise, khususnya subarsitektur dari bisnis, informasi, aplikasi dan teknologi. 2. Menentukan susunan dan taksonomi dari layanan dan tipe layanan 3. Mendefinisikan bagaimana layanan bisa sesuai dengan aplikasi enterprise secara keseluruhan, misalnya portal 4. Terintegrasi dengan proses pengembangan
Gambar 5. SOA Reference Architecture sumber: Rosen, Michael., et al. (2008). Applied SOA: Service-Oriented Architecture and Design Strategies. p,12.
21
II.3
SOA dan Cloud Computing Dalam sebuah riset yang dilakukan oleh Ashis Seth, et al (2012)
mengajukan pendapat bahwa Integrasi model SOA-Cloud, lebih efisien dalam hal biaya dan kemampuan adaptasi dibandingkan sistem ERP tradisional. Integrasi model SOA-Cloud yang diajukan oleh adalah ideal untuk organisasi skala kecil sampai medium dalam sisi keuntungan biaya. Menurut Luis Rodero Merino, et al (2010) SOA dapat digunakan untuk membangun sistem yang merupakan pengembangan potensi lebih lanjut dari komputasi awan (cloud computing). Rackspace, salah satu perusahaan besar penyedia layanan cloud menyatakan bahwa Cloud Service Oriented Architecture (C-SOA) adalah sebuah pendekatan arsitektural
yang
mempengaruhi
sumberdaya
komputasi
awan
selama
memanfaatkan disiplin SOA untuk mendukung nilai bisnis yang besar. Rackspace menggambarkan C-SOA seperti pada gambar 6 dibawah ini:
Gambar 6. SOA dan Cloud Computing sumber: http://www.rackspace.com
22
Tidak jauh berbeda, Wei-Tek Tsai (2010) menyatakan SOA dan cloud computing saling berhubungan, secara khusus, SOA merupakan pola arsitektur yang membantu menciptakan solusi bisnis, mengelola dan menggunakan kembali komponen-komponen yang ada, sementara cloud computing adalah suatu set yang membuat teknologi memberikan layanan lebih besar, platform yang lebih fleksibel bagi perusahaan untuk membangun solusi berbasis SOA. II.4
Studi Literatur Studi literatur terhadap jurnal ilmiah dilakukan untuk menggali informasi
terkait integrasi SOA dan Cloud Computing. Berikut ini ringkasan studi literatur yang dilakukan dan dirangkum dalam format penulisan dalam tabel.
23
23
Tabel 1. Service-Oriented Cloud Computing Architecture Detail Literatur
Judul: Tahun Terbit: Penulis:
Service-Oriented Cloud Computing Architecture 2010 Wei-Tek Tsai*, Xin Sun, Janaka Balasooriya
Latar Belakang
Implementasi cloud yang ada sekarang ini seringkali terisolasi dari implementasi cloud lainnya
Rumusan Masalah
Isu yang ada pada arsitektur cloud computing saat ini: 1. Pengguna biasanya terikat pada satu penyedia cloud. 2. Komponen komputasi bersifat tightly coupled (ketergantungan). 3. Kurangnya dukungan SLA (Service Level Agreement). 4. Kuranganya dukungan multi-tenancy (penyewaan multi). 5. Kurangnya fleksibilitas terhadap antarmuka pengguna.
Metodologi
Metode yang dilakukan peneliti adalah dengan melakukan survey, melakukan studi lliteratur, membangun prototipe desain, kemudian melakukan eksperimen dasar.
Kesimpulan
SOCCA terdiri dari 4 lapisan arsitektur yang mendukung SOA dan Cloud Computing, yaitu Individual cloud provider Layer, Cloud Ontology Mapping Layer, Cloud broker Layer dan SOA Layer. Dengan menerapkan pendekatan SOCCA ini, memungkinkan aplikasi berjalan pada cloud yang berbeda dan saling berhubungan.
Tabel 2. Integrating SOA and Cloud Computing for SME Business Objective Detail Literatur
Judul: Tahun Terbit: Penulis:
Integrating SOA and Cloud Computing for SME Business Objective 2012 Ashish Seth, Himanshu Agarwal, Ashim Raj Singla
Latar Belakang
Pendekatan SOA dan teknologi Cloud memberikan layanan bagi bisnis dalam hal ketangkasan yang semakin baik, kecepatan yang bertambah dan mengurangi biaya, dimana hal tersebut berdampak pada inovasi yang lebih baik dan juga efektifitas ROI. Bagi pelaku SME (Small Medium Enterprise), penting untuk mengetahui perbedaan platform, teknologi dan layanan yang akan digunakan untuk menunjang bisnis.
Rumusan Masalah
Permasalahan yang diangkat oleh penulis adalah adanya dua tantangan yang dihadapi dalam mengelola keuntungan bisnis yaitu: ancaman dari kompetitor dan harga untuk mengelola perubahan kebutuhan bisnis.
Metodologi
Metode yang dilakukan peneliti adalah dengan melakukan studi literatur, melakukan testing dengan metode GQM (Goal/Question/Metrics) dan T-Test analysis
Kesimpulan
Arsitektur integrasi SOA-Cloud yang diajukan oleh penulis merupakan model integrasi ideal bagi Small Medium Enterprise (SME) dalam hal keuntungan biaya, berdasarkan metode GQM dan T-Test analysis yang dilakukan penulis dalam mengajukan rancangan atau model integrasi SOA-Cloud.
24
24
25
25
Tabel 3. SOA and Cloud Technologies, Two Pieces of the Same Puzzle
Detail Literatur
Judul: Tahun Terbit: Penulis:
SOA and Cloud Technologies, Two Pieces of the Same Puzzle 2010 Luis Rodero Merino, et al.
Latar Belakang
Sistem komputasi awan (Cloud Computing) dibangun dengan dasar yang sama yang diasosiasikan dengan SOA yaitu sederhana, spesifik dan berdasarkan standar API. Sekarang ini, teknologi Cloud Computing semakin berkembang dengan banyak layanan yang disediakan. Dan dalam mengakses atau menggunakan layanan cloud tersebut, seringkali diasosiasikan sebagai layanan SOA yang telah digantikan oleh Cloud.
Rumusan Masalah
Penulis melihat bahwa dengan semakin berkembangnya teknologi Cloud Computing, banyak persepsi menyatakan bahwa Cloud Computing telah menggantikan SOA.
Metodologi
Dalam membangun hipotesanya, metode yang dilakukan penulis adalah melakukan studi literatur.
Kesimpulan
Penulis menunjukkan dengan jelas bahwa teknologi Cloud Computing tidak menggantikan SOA. Justru keberadaan teknologi Cloud Computing merupakan bukti dampak dari apa yang SOA dapat lakukan dalam pengembagan di masa depan dalam dunia ICT.
Tabel 4. Role of SOA & Cloud Computing in IT Industry
Detail Literatur
Judul: Tahun Terbit: Penulis:
Role of SOA & Cloud Computing in IT Industry 2012 Dr. Vinay Goyal, Amit Jain
Latar Belakang
Integrasi sistem menjadi tren di dunia industri IT saat ini. Merupakan tantangan bagi industri di tengah kemajuan teknologi cloud dan arsitektur SOA dalam pengembangan perangkat lunak untuk menyikapi kapan perlu menggunakan pendekatan SOA dan kapan penggunaan cloud diterapkan.
Rumusan Masalah
SOA dan Cloud Computing memiliki fungsi masing-masing dalam mendukung kebutuhan Industri atau bisnis. Namun ada keuntungan dan resiko yang dihadapi dalam implementasi SOA dan cloud.
Metodologi
Penulisan dalam paper ini adalah menggunakan studi literatur dan metode perbandingan keuntungan dan resiko pada SOA.
Kesimpulan
Implementasi SOA merupakan fundamental bagi integrasi teknologi enterprise untuk pertukaran informasi antar sistem dan diterjemahkan sebagai suatu layanan. Sedangkan cloud menawarkan fungsi IT sebagai komoditas yang memberikan biaya lebih rendah dibanding mengoperasikan fungsi IT secara internal.
26
26
27
27
Tabel 5. Designing a SOA Based Model
Detail Literatur
Judul: Tahun Terbit: Penulis:
Designing a SOA Based Model 2011 Ashish Seth, Himanshu Agarwal, Ashim Raj Singla
Latar Belakang
Perubahan permintaan bisnis saat ini berada pada tingkat kompetitif yang mengharapkan teknologi naik ke level dimana bisnis proses dibangun dengan pola yang dapat beradaptasi terhadap perubahan tanpa berdampak terhadap keseluruhan bisnis arsitektur organisasi.
Rumusan Masalah
Penulis mengangkat isu mengenai arsitektur SOA seperti apa yang dapat menjawab tantangan permintaan bisnis dan yang mampu beradaptasi terhadap perubahan.
Metodologi
Metode yang digunakan dalam penulisan penelitian ini adalah metode GQM (Goal / Question / Metrics), metode perbandingan (Comparison Method), dan metode faktor rasio (Factor Rating Method)
Kesimpulan
Arsitektur SOA yang ditawarkan tidak terlalu memperhatikan platform yang dijalankan oleh layanan penyedia. Arsitektur ini di desain untuk menyediakan konektivitas layanan tunggal dan lapisan manajemen yang mengurangi waktu dan biaya pembangunan dan pada saat yang bersamaan dapat memenuhi kriteria perubahan.
28
Dari beberapa studi literatur diatas, dapat dipahami peranan SOA dan Cloud Computing, dan dari definisi-definisi tersebut dapat disimpulkan bahwa integrasi SOA dan Cloud Computing menjadi kebutuhan bahkan merupakan tantangan bagi industri IT ataupun dunia enterprise dalam menunjang proses bisnis. Integrasi layanan pada cloud dengan menggunakan pendekatan SOA, adalah mungkin dilakukan dengan adanya syarat-syarat tertentu yang perlu dipenuhi dan dengan arsitektur tertentu yang memenuhi standar dari SOA dan Cloud Computing itu sendiri. II.5
Cloud Vendor Seiring perkembangan industri cloud, semakin banyak pula perusahaan-
perusahaan yang menjadi vendor atau penyedia jasa Cloud Computing. Dan beberapa diantaranya telah banyak digunakan dan menjadi perusahaan-perusahaan raksasa dalam industri layanan cloud. Beberapa diantaranya adalah Salesforce.com, Amazon Web Services, Google Cloud, dan Microsoft Azure. II.5.1 Salesforce.com Salesforce.com adalah vendor Software as a Service (SaaS) yang menyediakan aplikasi Customer Relationship Management (CRM) yang meliputi Salesforce Automation to Partner Relationship Management, Marketing, dan Customer Service. Salesforce memiliki banyak pilihan layanan, dan semua layanan yang ada pada Salesforce dikembangkan dengan platform yang mereka bangun sendiri yaitu force.com yang khusus digunakan untuk dapat berinteraksi dengan data-daata dan layanan yang ada didalam Salesforce.
29
II.5.2 Amazon Web Services (AWS) Amazon Web Services atau biasa yang dikenal dengan sebutan AWS adalah sekumpulan layanan berbasis Cloud Computing yang disediakan oleh Amazon sejak tahun 2002. Amazon yang pada awalnya dikenal sebagai web e-commerce, namun sekarang Amazon telah menambah layanannya dalam hal infrastruktur Cloud Computing. Amazon Web Services ini menyediakan layanan-layanan yang saling terintegrasi dan mudah untuk di kustomisasi. Pada tahun 2006, Amazon memperkenalkan Amazon’s Elastic Compute Cloud (EC2) sebagai layanan web komersial yang menyediakan akses cloud kepada perusahaan dan pengguna individu untuk menyewa komputer storage yang bisa digunakan sebagai platform pengembangan aplikasi secara online. II.5.3 Google Cloud Google Cloud platform adalah layanan dari Google yang terdiri dari 4 komponen utama untuk membangun aplikasi berbasis cloud. Empat layanan tersebut adalah : 1. Google App Engine Google App Engine adalah layanan ‘hosting’ yang disediakan Google. Untuk bisa membangun aplikasi menggunakan Google App Engine bahasa pemprograman dibolehkan untuk dipakai adalah Java, Python atau Go.
30
Google App Engine bisa digunakan untuk membuat website skala enterprise, membangun aplikasi berbasis web atau menjadi backend dari aplikasi mobile. 2. Google Compute Engine Google Compute Engine adalah layanan yang memperbolehkan pengguna mengkontrol secara penuh mesin server dengan pilihan sistem operasi yang disediakan. 3. Google Cloud Storage Google Cloud Storage adalah layanan penyimpanan data dari Google untuk para pengguna yang membutuhkan media penyimpanan
yang besar. Cloud storage didesain untuk
digunakan bersama dengan Google App Engine, namun Google Cloud Storage dapat juga digunakan untuk membangun aplikasi diluar Google App Engine. 4. Google Big Query Google Big Query adalah layanan yang digunakan untuk aplikasi Business Inteligence dan Datawarehouse. Target pasar dari layanan Google Big Query adalah perusahaan-perusahaan besar. II.5.4 Microsoft Azure Microsoft Azure, merupakan sistem operasi yang berjalan di atas cloud yang didesain untuk menjalankan aplikasi dan utilitas komputasi.
31
Teknologi bentukan Microsoft ini adalah sebuah bentuk implementasi Platform as a Service (PaaS) dari sebuah Cloud Computing. Teknologi ini memungkinkan pengguna untuk membangun sebuah aplikasi melalui cloud, baik berupa web application, cloud service, maupun aplikasi-aplikasi yang berjalan di atas virtual machine. Microsoft Azure memberikan layanan bagi para pengguna mulai dari create, deploy dan pendistribusian webservice secara cepat, tentunya Sistem operasi ini berjalan dengan adanya framework khusus “Azure Service Platform”. Microsoft Azure mempunyai 4 fitur penting, yaitu : 1. Service Management Dengan Microsoft Azure, pengguna diberikan kemudahan untuk membangun dan mengatur aplikasi yang dibuat. 2. Compute Dengan dukungan teknologi cloud dari Microsoft, pengguna diberikan jaminan performa dari komputasi yang dilakukan pada server cloud. 3. Storage Kapasitas media penyimpanan yang sangat besar juga tersedia dalam layanan Micsoroft Azure, sehingga pengguna dapat membangun aplikasi dan menyimpan data dengan leluasa. 4. Developer Experience Layanan
yang
ditawarkan
oleh
Microsoft
Azure
dikembangkan dengan adanya dukungan dan juga dari
32
pengalaman pengembang. Sehingga pengguna diberikan kemudahan dalam setiap aktivitas yang dilakukan dalam layanan cloud untuk melakukan deploy suatu aplikasi, pengalaman yang tidak jauh berbeda dengan melakukan deploy sebuah aplikasi dengan Visual Studio di komputer pengguna.