• Tidak ada hasil yang ditemukan

Siklus Hidup Sistem

Dalam dokumen BAB I PENDAHULUAN. 1.1 Latar Belakang (Halaman 29-37)

Tidak ada manusia yang terlepas dari sistem, sistem ada dimana-mana dan manusia tidak bisa hidup tanpa sistem. Menurut Dr.Deni Darmawan, S.Pd.,M.Si dan Kunkun Nur Fauzi (2013) Computer Based Information Sistem (CBIS) identik dengan organisme hidup, yaitu: lahir, tumbuh, matang dan mati. Pengembangan CBIS mengikuti System Life Cycle (SLC), yang terdiri dari :

1. Perencanaan (Plaining) 2. Analisis

3. Rancangan (Design)

4. Penerapan (Implementasion) 5. Penggunaan

Gambar 2.18 Pola Perputaran dari SLC (System Life Circle)

Sumber Sistem Informasi Managemen Dr.Deni Darmawan, S.Pd.,M.Si dan Kunkun Nur Fauzi (2013)

2.10. Android

Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi middleware dan aplikasi. Android menyediakan platform yang terbuka bagi para pengembang untuk menciptakan aplikasi mereka. Awalnya Google.Inc membeli Android.Inc yang merupakan

Kemudian untuk mengembangkan android, ditentukan oleh Open Handset Alliance konsorsium dari 34 perusahaan piranti keras, piranti lunak, dan telekomunikasi, termasuk google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia.

Menurut Eko Priyo Utomo pada buku yang berjudul From Newbie To Advance (2012), Android, saat ini sudah menjadi istilah yang cukup familiar bagi masyarakat pengguna ponsel cerdas. Dengan dukungan berbagai vendor produsen handphone yang mengadopsi sistem operasi terbaru dari Google ini, secara tidak langsung menjadikan Android banyak dilirik oleh para pengguna handphone. Fitur layar sentuh (touchscreen) dan banyak aplikasi menarik yang ada di dalamnya menjadi salah satu faktor pendorong hingga Android menjadi popular saat ini.

2.10.1. Sejarah Android

Dewasa ini, pengguna handphone atau yang lebih canggih lagi yaitu smartphone, sudah menjadi pemandangan yang biasa kita lihat sehari-hari. Hampir setiap orang mempunyai sebuah handphone atau smartphone tertentu, bahkan mungkin lebih dari satu.

Semakin banyak handphone dengan berbagai macam sistem operasi di dalamnya, menjadi salah satu alasan mengapa pemrograman mobile mempunyai prospek yang bagus ke depannya. Beberapa platform mobile yang dapat digunakan antara lain Android, Blackberry OS, iOS, Symbian, Windows Phone, Meego, Bada, Nokia OS, dan Palm OS.

Salah satu perusahaan media, Millenial Media, menyebutkan tentang penggunaan platform mobile bahwa pada akhir tahun 2011, Android diketahui sebagai sistem operasi mobile yang paling banyak digunakan, seperti terlihat pada gambar statistik berikut ini.

Gambar 2.19 Statistik penggunaan platform mobile

Peringkat selanjutnya adalah iOS (produksi dari Apple Inc.), kemudian RIM (Blackberry), Symbian, Windows (Microsoft), dan sistem operasi mobile lainnya. Banyak sistem operasi mobile yang ada menjadi salah satu peluang bagi kita untuk membuat aplikasi berbasis mobile. Hal inilah yang akan kita pelajari dalam buku ini, terutama salah satu sistem operasi mobile yang sedang booming dan paling banyak digunakan saat ini, yaitu Android. Pengembangan berbagai versi Android yang telah dirilis di pasaran, terlihat seperti pada tabel berikut ini:

Tabel 2.1 Versi Android yang telah Beredar Di Pasaran

Versi Tanggal Rilis Nama Kode

Android 1.0 23 September 2008 Cupcake Android 1.1 9 Februari 2009 Cupcake Android 1.5 30 April 2009 Cupcake Android 1.6 15 September 2009 Donut Android 2.0 26 Oktober 2009 Éclair Android 2.1 3 Desember 2009 Éclair Android 2.1 12 Januari 2010 Éclair

Android 2.2 20 Mei 2010 Froyo (Frozen Yogurt) Android 2.3 6 Desember 2010 Gingerbread

Android 2.3.7 22 Februari 2011 Gingerbread

Android 3.0 22 Februari 2011 Honeycomb (untuk tablet PC) Android 3.1 10 Mei 2011 Honeycomb

Android 3.2.6 18 Juli 2011 Honeycomb

56% 28% 13% 1% 1%1% Android iOS RIM Symbian Windows Other

Android 4.1 27 Juni 2012 Jelly Bean Android 4.2 9 Juli 2012 Jelly Bean Android 4.3 13 Juli 2012 Jelly Bean Android 4.4+ 3 September 2013 Kitkat Android 5.0 3 November 2014 Lollipop

2.10.2. SDK

Salah satu yang menjadi daya tarik pemrograman Android adalah ketersediaan API yang cukup membantu para pengembang untuk pembuatan aplikasi. Beberapa API yang disediakan dan fungsinya antara lain:

1) Akses ke hardware seperti kamera, GPS dan akselerometer. Android telah menyertakan API yang dapat melibatkan penggunaan hardware dalam proses development aplikasi. Hal ini akan memudahkan pengembang untuk mengembangkan aplikasi untuk berbagai macam hardware yang ada. Dalam Android SDK sudah terdapat API untuk hardware berbasislokasi (seperti GPS), kamera, audio, jaringan, Wi-Fi, bluetooth, akselerometer, dan layar sentuh (touchscreen) Google Maps, geolocation, dan layanan berbasis local (located based services).

2) Layanan Background.

Artinya Android juga mendukung layanan yang dijalankan di balik layar (tidak terlihat pengguna). Layanan ini memudahkan pengembang membuat aplikasi yang tidak terlihat, namun tetap melakukan proses tanpa aksi pengguna secara langsung, seperti update informasi secara regular atau update kondisi pasar saham dengan rutin, selang beberapa waktu tertentu.

Android menyediakan database relasional yang cukup efisien untuk menyimpan dan menampilkan data dengan lebih aman dan efisien.

4) Sharing data dan komunikasi antar aplikasi.

Android juga menyediakan tiga teknik untuk transmisi informasi dari aplikasi ke pengguna, yaitu:

a) Notifikasi

Merupakan standar pengiriman inlformasi yang sudah banyak digunakan pada perangkat mobile pada umumnya, yang biasanya menampilkan pesan alert. Dengan menggunakan API pada Android, trigger dapat dibuat untuk menampilkan pesan alert, menyebabkan getaran, atau menyalakan LED pada perangkat.

b) Intents

Menyediakan mekanisme untuk mengirim pesan di dalam atau antar aplikasi. Dengan menggunakan intents, seorang pengembang mengirimkan aksi yang diinginkan seperti menelpon atau edit kontak.

c) Content Provider.

Memberikan kemudahan untuk dapat mengakses data yang disimpan, misal untuk mendapatkan data pada folder kontak (contact manager).

5) Penggunaan widget, live folder, dan live wallpaper untuk tampilan home-screen yang lebih menarik.

Dengan penggunaan berbagai widget, disertai dengan live wallpaper yang ada pada layar home-screen menjadikan aplikasi yang dibuat lebih dinamis, dan menawarkan interaksi dengan pengguna secara langsung.

6) Support media dan grafis 2 atau 3 dimensi.

Dukungan terhadap penggunaan layar yang lebih besar dan lebih cerah, disertai dengan resolusi yang lebih tinggi sehingga menjadikan aplikasi yang dibuat menjadi lebih

untuk menggambar canvas 2 dimensi dan 3 dimensi dengan OpenGL.

7) Manajemen proses dan optimalisasi memori.

Android menggunakan runtime dan virtual machine (seperti pada Java dan .Net) untuk manajemen memori aplikasi yang digunakan. Manajemen proses tersebut menjadikan Android dapat menghentikan dan menjalankan proses aplikasi dengan optimal. Menghentikan proses yang tidak diperlukan sehingga memberikan ruang yang kosong (free) dan aplikasi pun dapat berjalan dengan maksimal.

2.10.3. Framework Android

Kerangka kerja pengembangan aplikasi Android berupa Android software development kit (SDK) digunakan untuk pengembangan, testing, dan proses debug aplikasi Android yang terdiri dari:

1) Android API, merupakan inti dari SDK, terdiri dari banyak library API yang berguna dan mempermudah dalam development aplikasi.

2) Tool pengembangan aplikasi, digunakan untuk melakukan proses compile dan debug aplikasi yang dibuat.

3) Android Virtual Device Manager dan Emulator. Emulator Android merupakan representasi perangkat Android nyata yang dapat digunakan untuk mensimulasikan aplikasi yang dibuat dengan berbagai pilihan kulit (skin) tampilan yang bervariasi. Semua aplikasi Android berjalan di dalam Dalvik Virtual Machine dan emulator ini menyediakan lingkungan yang sesuai sehingga aplikasi dapat berjalan layaknya di handphone Android.

4) Dokumentasi, berisi informasi detail tentang package juga class dan cara menggunakannya. Selain itu, pada dokumentasi juga menjelaskan cara memulai pemrograman Android dan dasar pengembangan aplikasi berbasis Android.

5) Kode program contoh, berisi contoh aplikasi yang dibuat, menunjukkan berbagai fitur yang ada pada Android, juga penggunaan fitur API di dalam aplikasi. 6) Support Online, terdapat berbagai komunitas aktif yang

dapat digunakan sebagai wadah untuk saling bertukar informasi, baik informasi tentang pengembangan Android dan lebih khusus lagi berkaitan dengan pemrograman Android. Berbagai pilihan forum, mailing list dapat dilihat pada alamat http://developer.android.com/resources/community-groups.html.

2.10.4. Arsitektur Aplikasi Android

Arsitektur sebuah aplikasi Android secara garis besar akan menjalankan beberapa aktivitas yang terdiri dari beberapa hal, yaitu:

a) Activity Manager, untuk mengontrol lifecycle activity, stermasuk di dalamnya juga manajemen activity pada aplikasi yang dijalankan. Sebuah aplikasi Android dapat terdiri dari beberapa activity, siklusnya dapat dilihat secara umum pada gambar berikut.

Gambar 2.20 Android Life Cycle

b) View, digunakan untuk membangun antarmuka pengguna untuk activity yang akan digunakan.

c) Notification Manager, digunakan untuk mekanisme sinyal ke pengguna secara insidentil sesuai dengan waktu yang telah ditentukan.

d) Content Provider, digunakan dalam aplikasi yang dibuat untuk sharing data (berhubungan dengan database).

e) Resource Manager, adanya dukungan terhadap resources atau sumber selain kode program secara umum, seperti string dan gambar.

2.10.5. Library Android

Android juga memberikan dan menawarkan banyak API (Application Program Interface) yang akan semakin mempermudah pengembang dalam mengembangkan aplikasi berbasis android. Terdapat

halaman website yang berisi daftar lengkap paket API yang ada, berikut berbagai hardware mobile yang didukungnya, pada alamat http://developer.android.com/reference/packages.html

2.11. Eclipse

Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform – independent). Berikut ini adalah sifat dari Eclipse, yaitu :

1. Multi – Platform : Target sistem operasi Eclipse adalah Microsoft Windows, Solaris, Linux, AIX, HP-UX, dan Mac OS X.

2. Multi – Language : Eclipse dikembangkan dengan bahasa pemrograman Java. Akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti bahasa C dan C++, Cobol, Phython, Perl, PHP, dan lain sebagainya.

3. Multi – Role : Selain sebagai IDE untuk pngembangan aplikasi, Eclipse bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web dan lain sebagainya.

Dalam dokumen BAB I PENDAHULUAN. 1.1 Latar Belakang (Halaman 29-37)

Dokumen terkait