BAB I 1 PENDAHULUAN 1.1 Latar Belakang Perkembangan internet sebagai salah satu media dalam penyampaian informasi turut mengubah bentuk dan proses perpindahan data dari data fisik menjadi data digital. Layaknya data fisik, semakin banyaknya data digital yang ada membutuhkan sebuah media penyimpanan yang aman. Prosedur dalam penyimpanan data pun haruslah baik agar kerusakan dan kehilangan data tidak terjadi karena data adalah aset penting bagi tiap pengguna komputer yang harus dilindungi. Server memberikan alternatif sebagai media penyimpanan data digital. Server yang merupakan sebuah sistem komputer untuk menyediakan jenis layanan tertentu dalam jaringan komputer terbagi dalam 3 kategori umum, server aplikasi, server data dan server proxy. Pengaksesan server data sebagai media penyimpanan membutuhkan perangkat lunak untuk memudahkan pengguna komputer dalam melakukan penyimpanan data. Perangkat lunak yang efisien dan sederhana menjadi kebutuhan vital bagi pengguna dalam mengelola dan mengorganisasi data yang disimpan dalam server. Hal inilah yang memicu perkembangan perangkat lunak ownCloud. Owncloud merupakan perangkat lunak bebas dalam melayani penyimpanan dan berbagi data pada sebuah server. Owncloud memberikan kemudahan bagi pengguna komputer dalam mengelola data secara sederhana dan fleksibel. Kemampuan fleksibilitasnya diberikan melalui pengaksesan data yang mudah, baik melalui platform web, desktop, dan mobile device yang dimiliki oleh pengguna. Fitur-fitur seperti Document Viewer, Galleries dan Share Data mendukung kebutuhan pengguna dalam melakukan pengorganisasian datanya 1 2 dalam server (The ownCloud Developers, 2013). Tetapi penggunaan ownCloud tidaklah menjamin ketersediaan data pada server. Prosedur dan menajemen pengelolaan data yang baik tetaplah dibutuhkan agar data yang disimpan tidak hilang. Smith (2003) memberikan penjabaran bahwa kehilangan data disebabkan banyak faktor, diantaranya kerusakan hardware, kesalahan manusia, pencurian, virus komputer dan bencana alam. Kerusakan hardware menyumbang persentase terbesar, yaitu 40%. Lebih lanjut kerugian finansial bisnis di Amerika pada tahun 2003 dikarenakan kehilangan data ditaksir 18,2 milyar dollar. 50% persen perusahaan yang mengalami masalah serupa akan tumbang dalam waktu 5 tahun. Pinheiro et. al. (2007) menjelaskan pada perangkat disk drive yang telah berumur lebih dari satu tahun memiliki 1 banding 10 kemungkinan kerusakan tiap tahun. Artinya satu dari dua disk drive akan mengalami kerusakan setiap lima tahun. Hal inilah yang menjadi pemicu bagi pengguna komputer untuk menggunakan teknologi cloud computing. Cloud computing memanfaatkan jaringan internet sehingga memungkinkan pengguna/konsumen untuk menyewa sumber daya teknologi informasi (software, processing power, storage, dan lainnya) sesuai yang dibutuhkan dan membayarnya hanya berdasarkan dari sumber daya yang dipakai. Hal ini tentu memberikan keuntungan bagi perusahaan/instansi dalam melakukan pengelolaan terhadap sektor IT-nya, dimana kita tidak harus melakukan pembelian server baru, perluasan ruang data center, dan melakukan maintenance terhadap server yang membutuhkan biaya besar serta waktu implementasi yang lama karena semua itu telah disediakan dan dikelola oleh pihak penyedia layanan cloud. Perusahaan teknologi Google pada tahun 2012 merilis sebuah layanan cloud storage yang dinamakan Google Drive. Google Drive memberikan layanan kepada pengguna komputer untuk menyimpan foto, dokumen dan video sejumlah 3 apapun dan kapan pun di server Google. Google Drive terintegrasi dengan Google Docs, aplikasi pengolah data dokumen, spreadsheet dan presentation yang memudahkan pengguna dalam melakukan pengelolaan data. Google Drive dapat diakses melalui platform web dan perangkat-perangkat yang terhubung internet (Google, 2013). Keunggulan Google Drive sebagai cloud storage adalah penggunaan topologi terdistribusi dan jaringan koneksi backbone yang privat dalam setiap pengiriman data, sehingga mengurangi network latency dan mempercepat kinerja sistem. Metode kompresi dilakukan sebelum data dikirim yang akan mengurangi lalu lintas pengiriman data dan tuntutan kapasitas penyimpanan (Drago et. al., 2013). Bagi pengembang aplikasi, Google Drive menawarkan Google Drive API library sebagai layanan bagi aplikasi yang dikembangkan pihak ketiga untuk berinteraksi dengan Google Drive. Salah satu library yang dikembangkan adalah google-api-php-client yang dikembangkan dalam bahasa pemrograman PHP. Hadirnya layanan Google Drive API memungkinkan pengembangan aplikasi sinkronisasi data antara server dengan ownCloud sebagai perangkat lunaknya dengan Google Drive sebagai cloud storage untuk kerpeluan backup data. OwnCloud dipilih karena memberikan layanan yang lengkap dalam penyimpanan dan pengorganisasian data pada server. Hal ini diharapkan dapat menjadi solusi bagi pengguna komputer dalam mengelola datanya dengan melakukan penyimpanan data lokal ke server dengan ownCloud sebagai lunaknya dan Google Drive sebagai media penyimpanan yang aman tanpa perlu khawatir akan kerusakan data. 4 1.2 Rumusan Masalah Dari latar belakang masalah yang diulas sebelumnya, maka rumusan masalah yang diteliti adalah : 1. Bagaimana mengembangkan dan mengimplementasikan modul sinkronisasi data antara perangkat lunak ownCloud dengan Google Drive dalam platform web untuk keperluan backup data. 2. Bagaimana hubungan antara waktu sinkronisasi terhadap ukuran file. 1.3 Batasan Masalah Agar pembahasan permasalahan tidak menyimpang dari pokok bahasan, maka perlu adanya batasan permasalahan. Dalam penelitian ini, penulis membatasi masalah sebagai berikut : 1. Penelitian ini tidak membahas sistem keamanan dalam pengiriman data. 2. Penelitian ini hanya mencakup mekanisme sinkronisasi data satu arah atau one-way synchronization. 3. Modul ditujukan untuk penggunaan individu. 4. Modul ini dibangun memakai bahasa pemrograman PHP dan berbasiskan web. 5. Modul yang dijalankan membutuhkan koneksi internet. 1.4 Tujuan Penelitian Tujuan yang ingin dicapai dari penelitian ini adalah pembangunan modul sinkronisasi data satu arah antara perangkat lunak ownCloud dengan Google Drive untuk keperluan back-up data. 5 1.5 Manfaat Penelitian Penelitian ini diharapkan dapat memberi manfaat bagi pengguna perangkat lunak ownCloud dalam menyimpan data-data mereka dengan menyediakan alternatif penyimpanan sebagai sistem back-up data. Google Drive sebagai pihak penyedia jasa menyediakan kemampuan penyimpanan data yang reliable, cepat, dan aman sehingga pengguna tidak perlu khawatir kehilangan data. Manfaat lain penelitian ini memberikan kontribusi dalam pengembangan penelitian terhadap sistem sinkronisasi data terhadap cloud storage. 1.6 Metodologi Penelitian Penelitian dilakukan dengan tahapan-tahapan berikut : 1. Studi Literatur Dilakukan dengan mencari dan mempelajari literatur yang mendukung penelitian ini. Literatur meliputi laporan penelitian, jurnal, dan artikel dari internet yang membahas tentang sinkronisasi data antara sistem penyimpanan data berbasiskan PHP dengan memanfaatkan pemanggilan web service berupa API serta membaca dokumen Google Drive API dan struktur aplikasi files pada perangkat lunak ownCloud. 2. Analisis Kebutuhan Sistem Menganalisis kebutuhan yang diperlukan untuk mengembangkan dan mengimplementasikan sistem yang diinginkan. Dalam hal ini dilakukan analisa kebutuhan pengguna untuk melakukan sinkronisasi data, meliputi penyimpanan data ke Google Drive dan sinkronisasi data dari perangkat lunak ownCloud dengan Google Drive. 3. Perancangan Sistem 6 Merancang sistem sesuai analisis yang telah dilakukan. Rancangan sistem akan menjadi cetak biru yang mendasari implementasi sistem. Perancangan meliputi pembuatan use case diagram, flowchart, dan perancangan antar muka. 4. Implementasi Sistem Tahap mengubah rancangan sistem menjadi kode program. Dalam hal ini setelah diagram selesai kita mulai mengerjakan program sesuai aliran diagram yang telah dibuat. Implementasi sistem merupakan pengembangan dari aplikasi files dalam perangkat lunak ownCloud. Aplikasi dikembangkan menggunakan bahasa pemrograman PHP. 5. Ujicoba Sistem Sistem yang telah dibangun akan diuji kelayakannya demi menemukan permasalahan yang mungkin timbul, agar kemudian dapat diperbaiki. Langkah nyatanya adalah menguji antarmuka perangkat lunak. Pengujian ini dilakukan untuk memperlihatkan bahwa fungsi-fungsi bekerja dengan baik dalam arti masukan yang diterima dengan benar dan keluaran yang dihasilkan benar-benar tepat. 6. Penyusunan Laporan Pada tahap ini akan dilakukan penyusunan laporan dari hasil penelitian yang telah dilakukan. 1.7 Sistematika Penulisan Sistematika penulisan yang digunakan dalam penyusunan tugas akhir ini adalah sebagai berikut : 7 BAB I PENDAHULUAN Bab ini menjelaskan latar belakang masalah, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian yang digunakan, dan sistematika penulisan tugas akhir. BAB II TINJAUAN PUSTAKA Bab ini menjelaskan tentang hasil penelitian terdahulu yang disajikan dalam pustaka dan menggabungkannya dengan masalah penelitian yang sedang diteliti. BAB III LANDASAN TEORI Bab ini menjelaskan tentang teori-teori yang menjadi landasan topik pada penelitian ini, yaitu mengenai Cloud Computing, File Synchronization, Google Drive. BAB IV ANALISIS DAN PERANCANGAN SISTEM Bab ini menjelaskan tentang analisis kebutuhan dan desain sistem meliputi rancangan use case diagram, flowchart diagram, arsitektur aplikasi, rancangan antar muka serta layanan yang tersedia pada aplikasi. BAB V IMPLEMENTASI SISTEM Bab ini membahas implementasi aplikasi yang telah dibangun berdasarkan desain yang telah dirancang sebelumnya. BAB VI PENGUJIAN DAN PEMBAHASAN Bab ini berisi pengujian aplikasi sesuai dengan implementasi yang telah dilakukan disertai contoh program. Pembahasan ditujukan untuk mendapatkan hubungan waktu sinkronisasi terhadap pertambahan besar file. BAB VII KESIMPULAN DAN SARAN Bab ini berisi kesimpulan dari permasalahan yang ada, analisis dan perancangan sistem. Bab ini juga menyebutkan beberapa saran untuk penelitian di masa yang akan datang.