Tuesday, March 4, 2014

Revolusi Aplikasi di Era Cloud




cloud-apps-660x495
Cloud computing tidak hanya mengubah cara kita menggunakan sumberdaya komputasi, tetapi juga merevolusi karakteristik dan desain aplikasi masa kini.
Di masa depan,  komputasi tidak lagi bergantung pada infrastruktur tradisional semata. Dengan berbagai kelebihan dan contoh implementasi yang sudah banyak dipaparkan, cloud computing akan menjadi infrastruktur komputasi andalan. Maka mau tak mau aplikasi pun akan bekerja di lingkungan komputasi awan. Oleh karenanya cloud tak pelak akan berdampak pada cara mendesain dan cara kerja aplikasi generasi baru. Di samping itu, karakter aplikasi-aplikasi generasi baru tersebut juga tak lepas dari pengaruh kebutuhan pengguna masa kini.

Nah, apakah perbedaan karakteristik aplikasi tradisional dengan aplikasi masa kini yang dirancang untuk dan bergantung pada infrastruktur cloud? Yang paling pokok adalah pengembangan aplikasi tradisional dilandaskan pada prakiraan/prediksi: berapa jumlah penggunan ya, perangkat apa yang digunakan untuk mengaksesnya, dan berapa sumber daya serta infrastruktur yang akan digunakan untuk menjalankan aplikasi tersebut.
Aplikasi cloud tidak dapat bekerja dengan landasan demikian. Kalau dulu, siapa dan jumlah pengguna aplikasi dapat diketahui dengan pasti—misalnya hanya karyawan—kini tidak lagi. Selain dari lingkungan internal perusahaan,  pengguna pun mungkin datang dari kalangan pelanggan, mitra, atau pihak-pihak lain yang tertarik menggunakannya. Singkatnya, aplikasi cloud akan menghadapi populasi atau massa  mengambang.
Sekarang, mari kita lihat dari sisi pengguna. Jangan kira user akan mengakses aplikasi dengan perangkat-perangkat standar. Ada berbagai jenis perangkat komputasi di luar sana yang mungkin mereka gunakan. Bahkan bukan tidak mungkin jika di masa depan, user mengakses aplikasi lewat perangkat yang sama sekali jauh dari bayangan kita tentang perangkat komputasi, misalnya jam pintar, mesin pendingin,  atau peralatan pemantau kesehatan.
Bagaimana dengan infrastruktur di belakangnya? Sudah jelas bahwa aplikasi ini akan berjalan di cloud. Kemungkinannya adalah aplikasi tersebut tidak berjalan di atas infrastruktur tertentu (dedicated infrastructure), bahkan mungkin infrastruktur tersebut tidak dimiliki sendiri. Bisa jadi aplikasi kita letakkan di infrastruktur milik pihak ketiga, seperti Amazon Web Services, Google, atau Microsoft Azure.
Lebih jauh lagi, aplikasi tersebut tidak akan bersemayam di satu server atau storage tertentu. Para penyedia infrastruktur cloud menjalankan bisnisnya di atas  shared infrastructure dengan banyak pelanggan/tenantmenaruh sistem atau aplikasinya di sana, dan workload dapat berpindah dari satu pelanggan ke pelanggan lain.
Dari sisi biaya, aplikasi cloud tidak mensyaratkan capital expenditure dan biayanya dihitung berdasarkan besar sumberdaya yang digunakan. Sebaliknya, aplikasi tradisional membutuhkan investasi awal untuk infrastruktur penopangnya. Infrastruktur tersebut disiapkan untuk penggunaan sampai skala kapasitas tertentu yang telah diprediksi sebelumnya. Masalahnya adalah terpakai 100 persen atau tidak, biaya amortisasi dan depresiasi akan ditanggung oleh pemilik aplikasi.
Dengan masa depan komputasi di cloud, mau tak mau aplikasi pun akan beranjak ke sana. Inilah waktunya bagi organisasi dan pengembang aplikasi untuk segera menyesuaikan desain  aplikasi agar bekerja lebih optimal di atas platform cloud.