Anda di halaman 1dari 28

Menjelajahi Platform

Sbg Layanan
Pertemuan 8

1
Umum
• Platform sbg Model Layanan menyediakan alat dlm lingkungan
yg diperlukan utk membuat aplikasi yg dpt berjalan dlm
Perangkat Lunak sbg model Layanan. Utk alasan ini, bbrp
tumpang tindih antara vendor - telah menciptakan Perangkat
Lunak sbg produk Layanan, & vendor tsb telah memperluas
layanan mereka utk membuat aplikasi Web mereka lebih dpt
disesuaikan. Salesforce.com, perusahaan layanan aplikasi CRM
terbesar di dunia, dg Force.com menjadi penawaran PaaS.
• Aplikasi yg dikembangkan dlm sistem PaaS dpt berupa aplikasi
bisnis komposit, portal data, atau mashup dg data yg berasal dari
bbg sumber. Lingkungan PaaS dpt menawarkan manajemen
siklus hidup terintegrasi atau aplikasi siklus hidup berlabuh.
Sistem terintegrasi menyediakan bbg alat utk kustomisasi,
sedangkan sistem berlabuh didasarkan pd perangkat lunak yg
sudah mapan.
2
• Kerangka kerja aplikasi adalah alat yg sangat kuat utk membuat
aplikasi komputasi awan. Utk alasan ini, banyak produk vendor
didasarkan pd model ini.
• Bab ini menyajikan bbrp contoh sistem PaaS yg dpt membuat
aplikasi captive host, aplikasi portabel, blog yg diperluas atau
sistem manajemen konten, atau aplikasi data Internet yg kaya.
• Masing-2 sistem atau alat ini menyajikan aspek yg sangat
berbeda dari pengembangan aplikasi cloud. Kesamaan semua
alat ini adalah bahwa mereka berbasis standar.

3
Menentukan Layanan
• Model PaaS adalah yg paling menarik dari semua layanan yg
dihosting dlm komputasi awan. IaaS menawarkan layanan yg mirip
dg menginstal aplikasi di komputer. Pd saat kita menggunakan
model SaaS kita dpt melakukan kustomisasi sederhana.
• Dg Platform sbg sistem Layanan, kita diberi toolkit utk bekerja,
mesin virtual utk menjalankan perangkat lunak kita & terserah kita
utk merancang perangkat lunak & antarmuka yg menghadap
pengguna dg cara yg sesuai dg kebutuhan kita. Jadi sistem PaaS
berkisar dari platform pengembang full-blown seperti Windows
Azure Platform hingga sistem seperti Drupal, Squarespace, Wolf, dll,
di mana alat adalah modul yg sangat berkembang dg baik & hampir
tdk memerlukan pengkodean.
• Banyak Sistem Manajemen Konten (CMS) pd dasarnya adalah
layanan PaaS di mana kita mendptkan komponen standar & dpt
membangun situs Web & perangkat lunak lain spt Tinker Toys.
4
Dg demikian kita menemukan bahwa model PaaS menjangkau bbg
layanan, termasuk di antaranya:
• Pengembangan aplikasi: Platform PaaS menyediakan sarana utk
menggunakan program yg kita buat dlm bahasa yg didukung atau
menawarkan lingk pengembangan visual yg menulis kode utk kita.
• Kolaborasi: Banyak sistem PaaS dibuat utk memungkinkan banyak
individu bekerja di proyek yg sama.
• Manajemen data: Alat disediakan utk mengakses & menggunakan data
di penyimpanan data.
• Instrumentasi, kinerja, & pengujian: Alat tersedia utk mengukur
aplikasi kita & mengoptimalkan kinerjanya.
• Penyimpanan: Data dpt disimpan dlm layanan vendor PaaS atau
diakses dari layanan penyimpanan pihak ketiga.
• Manajemen transaksi: Banyak sistem PaaS menyediakan layanan spt
manajer transaksi atau layanan broker utk menjaga integritas transaksi.
5
• Sistem PaaS ada utk memungkinkan kita membuat perangkat
lunak yg dpt di-host sbg sistem SaaS atau utk memungkinkan
modifikasi aplikasi SaaS yg ada.
• Sistem PaaS yg baik memiliki karakteristik tertentu yg diinginkan
yg penting dlm mengembangkan aplikasi portabel yg kuat, dpt
diskalakan. Pd daftar ini akan menjadi atribut berikut:
 Pisahkan manajemen data dari antarmuka pengguna.
 Ketergantungan pd standar komputasi awan.
 Lingkungan pengembangan terintegrasi.
 Alat manajemen siklus hidup.
 Dukungan arsitektur multi-tenant, keamanan, & skalabilitas.
 Alat pemantauan, pengujian, & optimasi kinerja.
• Perbedaan antara sistem SaaS & PaaS selain dari Salesforce.com
& Force.com. Salesforce.com adalah rangkaian aplikasi Web yg
merupakan SaaS. Force.com adalah platform PaaS
Salesforce.com utk membangun layanan kita sendiri. 6
Gambar berikut adalah portal Salesforce.com dg antarmuka multi-
tab yg memperlihatkan bbg aplikasi.

Tampilan Dasbor di Salesforce.com, setiap tab adalah aplikasi & data dibagikan.
7
Bbrp aplikasi yg termasuk dlm situs ini adalah:
• Akun & Kontak
• Analisis & Peramalan
• Persetujuan & Alur Kerja
• Obrolan (Pesan Instan / Kolaborasi)
• Perpustakaan Konten
• E-mail & Produktivitas
• Data Bisnis Jigsaw
• Pemasaran & Prospek
• Peluang & Kutipan
• Hubungan Mitra
• Penjualan
• Layanan & Dukungan

8
• Force.com menggunakan bahasa pemrograman berbasis Java yg
disebut Apex utk bangunan aplikasinya & memiliki pembangun
antarmuka bernama Visualforce yg memungkinkan pengembang
membuat antarmuka menggunakan HTML, Flex, & AJAX.
Visualforce menggunakan bahasa tipe-XML dlm pembangun
antarmuka visualnya.
• Krn Salesforce.com berbasis pd browser, maka platform-
independen.
• Force.com telah menjadi hit besar & telah menjadi model dari
banyak sistem PaaS saat ini. Perusahaan Salesforce.com adalah
pemimpin pemikiran yg diakui di bidang komputasi awan.

9
Situs Web Force.com mengarah ke seperangkat alat pengembang
serta galeri situs yg dibangun di PaaS ini

10
Pengembangan Aplikasi
• PaaS menyediakan alat yg dibutuhkan utk membangun bbg jenis aplikasi yg
dpt bekerja bersama dlm lingkungan yg sama. Bbrp tipe aplikasi adalah
 Aplikasi bisnis komposit.
 Portal data.
 Mashups dari bbg sumber data.
• Mashup adalah halaman Web yg menampilkan data dari 2 atau lebih sumber
data. Bbg landmark & overlay yg kita temukan di Google Earth adalah contoh
dari mashup.
• Aplikasi ini hrs dpt berbagi data & berjalan dlm lingkungan multi-penyewa.
Utk membuat aplikasi bekerja bersama lebih mudah, bahasa pengembangan
yg umum seperti Java atau Python biasanya ditawarkan. Bahasa yg lebih
umum digunakan adalah semakin banyak pengembang & layanan
pengembang akan tersedia utk membantu pengguna aplikasi platform.

11
• Sebagian besar alat pembuatan aplikasi membuat kerangka kerja
mereka sendiri. Banyak didasarkan pd alat visual, & seringkali alat ini
memungkinkan pengembang utk memperluas aplikasi menggunakan
bahasa umum utk pengembangan aplikasi Web.
• Semua pengembangan aplikasi PaaS hrs memperhitungkan
manajemen siklus hidup akun. Seiring bertambahnya usia aplikasi, itu
hrs ditingkatkan, dimigrasikan, tumbuh, & akhirnya dihapus atau
porting.
• Banyak vendor PaaS menawarkan sistem yg merupakan platform
pengembangan siklus hidup terintegrasi. Artinya, vendor menyediakan
setumpuk pengembangan perangkat lunak lengkap utk digunakan oleh
programmer, & tdk diharapkan pengembang perlu keluar dari layanan
utk membuat aplikasinya.

12
• Platform siklus hidup terintegrasi (Google AppEngine, Microsoft Windows
Azure Platform, Eccentex AppBase, LongJump, & Wolf ) meliputi:
 Mesin virtual & sistem operasi (sering ditawarkan oleh IaaS).
 Desain & penyimpanan data.
 Lingkungan pengembangan dg Antarmuka Pemrograman Aplikasi yg
ditentukan.
 Middleware.
 Alat pengujian & optimisasi.
 Alat & layanan tambahan.
• Bbrp layanan PaaS memungkinkan pengembang utk memodifikasi perangkat
lunak yg ada. Layanan ini disebut sbg platform siklus hidup berlabuh. Contoh
dari platform siklus hidup berlabuh adalah QuickBooks.com & Salesforce.com.
Aplikasi dlm dua layanan ini sudah diperbaiki, ttp pengembang dpt
menyesuaikan aplikasi mana yg dilihat pengguna, bgmn merek tsb bermerek
& sejumlah fitur yg terkait dg aplikasi yg berbeda. Layanan berlabuh
menawarkan lebih sedikit kustomisasi, ttp memiliki siklus pengembangan yg
lebih cepat & mungkin kurang rentan thd kesalahan perangkat lunak.

13
Menggunakan Kerangka Kerja Aplikasi PaaS
• Kerangka kerja aplikasi menyediakan sarana utk membuat aplikasi yg di-host
SaaS menggunakan lingkungan pengembangan terpadu atau lingkungan
pengembangan terintegrasi (Integrated Development Environment=IDE). IDE
PaaS menjalankan keseluruhan dari alat yg membutuhkan staf pemrograman
khusus utk membuat & menjalankan antarmuka grafis titik-dan-klik yg dpt
dinavigasi oleh pengguna komputer yg berpengetahuan luas & membuat
sesuatu yg bermanfaat.
• Dlm memilih 6 contoh berbeda situs Web & aplikasi membangun sistem PaaS,
bbg pengalaman pengguna dipertimbangkan. Banyak situs Web didasarkan pd
gagasan manajemen informasi & organisasi; mereka disebut sbg sistem
manajemen konten (CMS). CMS Drupal dipilih sbg contoh PaaS jenis ini krn
sangat luas digunakan & memiliki dampak industri luas & merupakan alat
pengembang kekuatan penuh.
• Sementara Drupal digunakan di situs Web utama & mengatur sejumlah besar
informasi, situs Squarespace.com dipilih utk menggambarkan sistem CMS
titik-dan-klik yg ditujukan utk mendukung individu, usaha kecil, & organisasi
kecil lainnya. Squarespace sering dikaitkan dg alat blogging. Squarespace
bekerja dg foto, mengimpor informasi dari alat sosial lain, & memungkinkan
situs web yg sangat menarik dibuat oleh pengguna rata-2. 14
• ECCENTEX APPBASE, LONGJUMP & WOLF dipilih sbg contoh layanan
berorientasi pengembang yg ditujukan utk pengguna & pengembang
yg ingin membuat aplikasi berbasis web bdsk protokol & layanan
Arsitektur Berorientasi Layanan. Layanan ini bervariasi dlm bbrp detail,
ttp mereka memiliki karakteristik umum sbb:
 Mereka memisahkan penanganan data dari presentasi (antarmuka
pengguna).
 Mereka menawarkan alat utk membangun objek atau entitas bisnis &
hubungan di antara mereka.
 Mereka mendukung penggabungan aturan bisnis, logika & tindakan.
 Mereka menyediakan alat utk membuat kontrol (formulir) entri data,
tampilan & laporan.
 Mereka menyediakan instrumentasi, alat utk mengukur kinerja aplikasi.
 Mereka mendukung pengemasan & penyebaran aplikasi.

15
• Layanan ini berbeda dlm bahasa yg mereka gunakan, dukungan utk
teknologi yg berbeda & dlm fitur lainnya. Sebagian besar, mereka
menyediakan alat point-and-klik di mana potongan kode menyediakan
pemrograman pengecualian. Layanan ini dpt diperluas & disesuaikan
melalui kode aplikasi. Tujuan dari layanan ini adalah utk membuat
aplikasi portabel, meskipun setiap layanan menyertakan platform
hosting utk aplikasi yg dikembangkan.
• Bahasa pemrograman 5GL memecahkan masalah dg bertindak bdsk
kendala & input & kemudian menggunakan kecerdasan utk
memecahkan masalah. Sbg perbandingan, bahasa pemrograman 4GL
membutuhkan programmer utk membangun modul utk memecahkan
masalah tertentu.

16
Drupal
• Drupal: adalah sistem manajemen konten (CMS) yg digunakan sbg backend ke
sejumlah besar situs Web di seluruh dunia. Perangkat lunak ini adalah proyek
sumber terbuka yg dibuat dlm bahasa pemrograman PHP. Drupal benar-2
lingkungan pemrograman untuk mengelola konten & memiliki elemen
blogging & perangkat lunak kolaborasi sbg bagian dari distribusinya.
• Drupal dikembangkan utk membuat situs Web dg fitur yg kaya. Bbrp ribu
pengembang Drupal di seluruh dunia berkumpul 2 kali setahun di konvensi
DrupalCon.
• Jml situs Web yg menggunakan Drupal sangat luar biasa & banyak di
antaranya sangat terkenal. Drupal memiliki galeri tangkapan layar situs dan
fitur di situs webnya.
• Inti Drupal berisi sejumlah modul yg menyediakan sbb: Pembaruan otomatis;
Blog, forum, jajak pendapat, & umpan RSS; Bbrp manajemen situs; Otentikasi
OpenID; Optimalisasi kinerja melalui caching & pembatasan; Cari; Alat
pembuatan antarmuka pengguna; Kontrol & profil akses tingkat pengguna;
Tema; Manajemen lalu lintas; Kontrol alur kerja dg peristiwa & pemicu.

17
Artatm.com memiliki galeri dari bbrp situs yg lebih menarik &
terkenal yg dibangun dg Drupal

18
Eccentex AppBase 3.0: adalah perusahaan Culver City, California, yg didirikan pd
2005 yg memiliki platform pengembangan PaaS utk aplikasi Web bdsk arsitektur
komponen SOA utk menciptakan apa yg disebutnya aplikasi Cloudware
menggunakan arsitektur AppBase-nya. Platform pengiriman aplikasi PaaS
menciptakan aplikasi SOA yg bekerja pd bbrp vendor IaaS yg berbeda.

19
AppBase mencakup seperangkat alat yg berbeda utk membangun aplikasi ini, termasuk
yg berikut:
• Membangun Objek Bisnis: Basis data objek ini memiliki kemampuan utk membuat
objek data yg kaya & membuat hubungan di antara mereka.
• Pembuat Presentasi: Pembuat antarmuka pengguna ini memungkinkan kita utk
menarik & melepas kontrol visual utk membuat formulir Web & layar entri data & utk
memasukkan logika yg diperlukan utk mengotomatisasi apa yg dilihat pengguna.
• Desainer Proses Bisnis: Alat ini digunakan utk membuat logika bisnis utk aplikasi kita.
Kita dpt mengelola alur kerja, mengintegrasikan modul, membuat aturan, &
memvalidasi data.
• Dashboard Designer: Alat instrumentasi ini menampilkan parameter real-time dari
aplikasi kita dlm bentuk visual.
• Pembuat Laporan: Alat desain keluaran ini memungkinkan kita mengurutkan,
mengumpulkan, menampilkan, & memformat informasi laporan bdsk data di aplikasi
kita.
• Manajemen Peran Keamanan: Ini memungkinkan kita utk menetapkan hak akses ke
berbagai objek dlm sistem, ke kumpulan data, bidang, tab desktop, & laporan. Peran
keamanan dpt ditetapkan dlm grup tanpa pengguna, & pengguna dpt ditambahkan
kemudian saat aplikasi dikerahkan.
20
Arsitektur AppBase dg berbagai alat & modul ditampilkan

21
LongJump: adalah layanan hosting perusahaan Sunnyvale, California, yg dibuat
pd th 2003 dg rangkaian pengembangan aplikasi PaaS. Lingkungan
pengembangannya didasarkan pd Java & menggunakan REST / SOAP API.

22
SQUARESPACE: contoh dari pembuat situs web generasi baru &
alat penyebaran yg memiliki elemen lingkungan pengembangan
PaaS. Aplikasi dibangun menggunakan alat visual & digunakan pd
infrastruktur yg di-host. Squarespace menampilkan dirinya sendiri,
a.l. sbg- Alat blogging, Alat integrasi media social, Galeri foto,
Pembuat formulir & pengumpul data, Manajer daftar item, Alat
manajemen & analisis lalu lintas & situs.
SQUARESPACE: memungkinkan kita membuat situs web yg
dihosting dg indah dg berbagai kemampuan dg alat visual saja. Dg
Squarespace, pengguna telah membuat bbrp situs yg sangat indah
secara visual. Pengguna cenderung masuk dlm kategori ini (situs
Web pribadi, portofolio, & identifikasi merek bisnis).

23
24
Pembuat gelombang (WaveMaker): adalah lingkungan pengembangan aplikasi
visual yg cepat utk membuat aplikasi Web & cloud Ajax berbasis Java. Perangkat
lunak ini open-source & ditawarkan di bawah lisensi Apache. WaveMaker adalah
kerangka kerja yg membuat aplikasi yg dpt beroperasi dg kerangka kerja Java &
sistem LDAP lainnya, termasuk: Dojo Toolkit 1.0, perpustakaan JavaScript atau
kotak peralatan, direktori LDAP, Microsoft Active Directory, POJO (Benda Jawa
Kuno Biasa), Spring Framework, kerangka kerja aplikasi open-source utk Java yg
sekarang juga menyertakan ACEGI.

25
• WOLF Frameworks: menawarkan platform terbuka bdsk standar SOA utk membangun
solusi SaaS portabel. Di Wolf, manajemen data & transaksi sesuai dg aturan bisnis yg
kita buat.

26
Arsitektur platform Wolf: Fitur-2 ini memungkinkan pengembang Wolf utk membuat
aplikasi SOA multitenant klasik tanpa memerlukan keterampilan pengembang tingkat
tinggi. Aplikasi ini dapat dioperasikan, portabel dari satu mesin virtual Windows ke yg lain,
& mendukung aplikasi bisnis yg disematkan. Anda dapat menyimpan aplikasi Wolf di
server pribadi atau di cloud Wolf.

27
Ringkasan
• Dalam bab ini, kita belajar ttg salah satu model layanan inti dlm
komputasi awan: Platform as a Service (PaaS). Dg PaaS, tujuannya
adalah utk membuat aplikasi yg dpt diskalakan yg di-host yg digunakan
dlm model Perangkat Lunak sbg Layanan. Utk alasan ini, bbrp vendor
mulai menawarkan sistem SaaS & kemudian memperluas mereka utk
membuatnya lebih dpt disesuaikan & diprogram sbg sistem PaaS.
• Aplikasi yg dibangun menggunakan alat PaaS hrs berbasis standar.
Mereka sering dibangun menggunakan seperangkat alat yg serupa:
objek data & pembangun hubungan; proses & sistem logika bisnis;
formulir, tampilan, & alat pelaporan; dll.
• Bab ini membahas bbrp sistem PaaS yg lebih terkenal &
mempertimbangkan kesamaan dari alat-2 tsb. Kita belajar ttg sejumlah
alat dlm bab ini, termasuk Drupal, Eccentex AppBase, Force.com,
LongJump, Squarespace, Wolf & bbrp lainnya.
• Bab yad melanjutkan diskusi ttg PaaS dg menjelaskan salah satu sistem
PaaS terbesar yg digunakan saat ini: Google AppEngine.
28

Anda mungkin juga menyukai