BAB 2 LANDASAN TEORI 2.1 Android Android adalah sistem operasi berbasisi java yang berjalan pada kernel 2.6 Linux. Aplikasi android yang dikembangkan menggunakan java dan menyesuaikan ke dalam bentuk platform baru. Android ialah suatu kumpulan lengkap perangkat lunak dimana dapat berupa sistem operasi, middleware, dan aplikasi kunci perangkat mobile. Awalnya, Google Inc. membeli Android Inc., yang merupakan pendatang baru yang membuat peranti lunak ponsel / smartphone. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. ( Nazruddin Safaat H, 2012:1). Android merupakan platform yang memiliki tiga hal sebagai berikut: 1. Lengkap (complete platform), karena android menyediakan banyak tools dalam membangun perangkat lunak dan memiliki peluang untuk mengembangkan aplikasi.
7 2. Terbuka (open source platform), karena pengembang secara bebas dapat mengembangkan aplikasi dan platformandroid disediakan melalui lisensi open source. 3. Free (free platform), karena Android merupakan platform yang bebas untuk mengembangkan tidak ada royalty untuk pengembangan pola platform Android. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh berbagai macam piranti bergerak. Android memiliki berbagai keunggulan sebagai software yang memakai basis kode komputer yang bisa didistribusikan secara terbuka sehingga pengguna bisa membuat aplikasi baru di dalamnya. Menurut statistik terbaru Google, yang mengukur akses Android selama dua pekan sampai 1 Desember 2010, Froyo (versi 2.2) telah berada di posisi terdepan diantara versi Android lainnya dengan menguasai 43,4 persen dari perangkat aktif. Kelebihannya terutama pada peningkatan kinerja dan kecepatan. Kompiler Dalvik JIT terbaru yang ada di Android 2.2 menghasilkan peningkatan kinerja antara dua hingga lima kali dibandingkan Android 2.1. Android 2.2 telah dilengkapi mesin JavasCript V8 yang bisa menghasilkan kinerja Java Script antara 2 sampai 3 kali lebih cepat dibandingkan 2.1. Sampai saat ini versi android telah sampai pada versi 4.0. Berikut penjelasan dari Arsitektur Android yaitu : 1. Linux Kernel: merupakan kernel dasar dari Android. Layer ini berisi semua low level device driversuntuk berbagai komponen perangkat keras dari perangkat Android.
8 2. Libraries: berisi senua code yang menyediakan fitur utama dari OS Android. 3. Android Runtime : terletak pada layer yang sama seperti libraries, Android Runtime menyediakan satu set inti libraries yang memungkinkan pengembang untuk menulis aplikasi Android menggunakan bahasa pemrograman Java. 4. Application Framework : paparan berbagai kemampuan dari OS Android untuk pengembang aplikasi sehingga pengembang dapat menggunakan berbagai kemampuan itu kedalam aplikasi. 2.2 JDK (Java Development Kit) Menurut DeCoster (2012), Java adalah sebuah teknologi yang diperkenalkan oleh SunMicro sysytems pada pertengahan tahun 1990. Menurut definisi Sun, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada computer standalone ataupun pada lingkungan jaringan. Untuk membuat program Java dibutuhkan kompiler dan interpreter untuk program Java berbentuk Java Development Kit (JDK) yang diproduksi oleh Sun Microsystems. Sebelum memulai instalasi Android SDK, terlebih dahulu kita harus melakukan instalasi JDK di komputer. JDK yang kami gunakan untuk dapat mengompilasi aplikasi android yang kami rancang ini adalah Java SE Development Kit.
9 2.3 ADT (Android Development Tools) Android Development Tools (ADT) adalah plugin yang didesain untuk IDE Eclipse yang memberikan kita kemudahan dalam mengembangkan aplikasi android dengan menggunakan IDE Eclipse. Dengan menggunakan ADT untuk Eclipse akan memudahkan kita dalam membuat aplikasi project android, membuat GUI aplikasi, dan menambah komponen-komponen yang lainnya, begitu juga kita dapat melakukan running aplikasi menggunakan Android SDK melalui Eclipse. Dengan ADT juga kita dapat melakukan pembuatan package android (.apk) yang digunakan untuk distribusi aplikasi android yang dirancang. (Nazruddin Safaat H,2015:2). 2.4 Eclipse Menurut Nasruddin Safaat h (Pemrograman aplikasi mobeli smartphone dan tablet PC berbasis android 2012:16) 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: 1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
10 2. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. 3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan oleh IBM pada tanggal 5 November 2001. Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP).Berikut ini adalah komponen yang membentuk RCP: 1. Core platform 2. OSGi 3. SWT (Standard Widget Toolkit) 4. JFace 5. Eclipse Workbench
11 2.5 Database MySQl Database adalah suatu kumpulan data-data yang disusun sedemikian rupa sehingga membentuk informasi yang sangat berguna. Database terbentuk dari sekelompok data-data yang memiliki jenis/sifat yang sama. Ambil contoh, datadata berupa nama-nama, kelas-kelas, alamat-alamat. Semua data tersebut dikumpulkan menjadi satu menjadi kelompok data baru, sebut saja sebagai datadata mahasiswa. Demikian juga, kumpulan dari data-data mahasiswa, data-data dosen, data-data keuangan dan lainnya dapat dikumpulkan lagi menjadi kelompok besar, misalkan data-data politeknik elektronika. Bahkan dalam perkembangannya, datadata tersebut dapat berbentuk berbagai macam data, misalkan dapat berupa program, lembaran-lembaran untuk entry (memasukkan) data, laporan-laporan. Kesemuanya itu dapat dikumpulkan menjadi satu yang disebut dengan database. Salah satu bahasa database yang populer adalah SQL. 2.6 Flowchart
12 Flowchart merupakan bagan atau gambar yang memperlihatkan hubungan antarproses beserta instruksinya. Gambaran ini dinyatakan dengan simbol yang mana dari tiap-tiap simbol mewakili proses tertentu. Sedangkan hubungan antar-proses tadi digambarkan dengan garis-garis. Flowchart merupakan langkah awal pembuatan program. Setelah flowchart selesai disusun, selanjutnya pemrogram menerjemahkannya ke dalam bentuk program menggunakan bahasa pemrograman. Berikut ini adalah simbol-simbol standar pada sebuah flowchart beserta fungsinya. No Nama Simbol Fungsi 1 Terminator Digunakan untuk mewakili simbol start atau end. 2 Arrow Menunjukkan alur proses. 3 Rectangle Menunjukkan langkah pemrosesan. 4 Trapezium Simbol untuk inputoutput. 5 Document Digunakan untuk mewakili output. 6 Decision Simbol yang berfungsi untuk menyatakan
13 keputusan. 7 Preparation 8 Storage Data Simbol yang berfungsi untuk proses inisialisasi atau pemberian harga awal. Simbol yang menyatakan input yang berasal dari disk atau disimpan ke disk. 9 Connector 10 Manual Input Simbol untuk keluarmasuk atau penyambungan proses pada halaman yang berbeda. Simbol untuk pemasukkan data secara manual melalui keyboard. 11 Manual Operation Simbol yang menunjukkan pengolahan yang tidak dilakukan oleh komputer. 12 Predefine Process Simbol untuk pelaksanaan suatu bagian (subprosedur) 13 Display Simbol yang menyatakan peralatan output yang digunakan seperti layar, printer, plotter, dan sebagainya.
14 14 Magnetic Disk Simbol yang digunakan untuk penyimpanan data ke database. 15 Storage Data Simbol yang menyatakan input yang berasal dari disk atau disimpan ke disk. Tabel 2.1. Simbol Flowchart 2.7 Data Flow Diagram Data Flow Diagram adalah alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi yang dapat digunakan untuk penggambaran analisa maupun perancangan sistem yang mudah dikomunikasikan ke pengguna ataupun ke pembuat program. Didalam DFD terdapat tiga level, yaitu : 1. Diagram Konteks (DFD Level 0) Diagram konteks menggambarkan satu lingkaran besar yang dapat mewakili seluruh proses yang terdapat dalam suatu sistem. Semua entitas eksternal ditunjukkan dalam diagram konteks beserta dengan aliran-aliran data utama, baik dari dan menuju sistem. 2. Diagram Nol (DFD Level 1) Diagram nol merupakan satu lingkaran besar yang mewakili lingkaranlingkaran kecil yang ada pada diagram konteks. Dengan kata lain diagram nol merupakan pemecahan dari diagram konteks.
15 3. Diagram Rinci Lebih rinci lagi, diagram rinci adalah diagram yang menguraikan prosesproses yang terdapat di dalam diagram nol. Berikut merupakan simbol-simbol standar menurut Yourdan dan DeMarco yang digunakan untuk membuat sebuah Data Flow Diagram. No Nama Simbol Fungsi 1 Kesatuan Luar Sebagai kesatuan (entitas) di lingkungan luar sistem yang dapat berupa orang, organisasi, sumber asli transaksi, atau penerima akhir. 2 Arus Data Berfungsi untuk menghubungkan antara proses, simpanan data, dan kesatuan luar. 3 Proses Berupa kegiatan atau proses yang sedang dilakukan. 4 Simpanan Data Media Nama data store Menunjukkan informasi yang tersimpan. Tabel 2.2. Simbol Data Flow Diagram 2.8 Entity Relationship Diagram
16 Entity Relationship Diagram merupakan suatu model untuk menjelaskan hubungan antar-data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar-relasi. Menurut salah satu para ahli, Brady dan Loonam (2010), Entity Relationship Diagram (ERD) merupakan salah satu teknik yang digunakan untuk memodelkan kebutuhan data suatu organisasi. Komponen penyusun ERD adalah sebagai berikut. No Nama Simbol Fungsi 1 Entitas Persegi panjang untuk entitas 2 Atribut Ellips untuk atribut 3 Relasi Belah ketupat mewakili relasi 4 Garis Garis menghubungkan Tabel 2.3. Komponen ERD Entitas adalah objek dalam dunia nyata yang dapat dibedakan dengan objek lain, seperti mahasiswa, dosen, departemen. Sedangkan setiap entitas pasti memiliki elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakter dari entitas tersebut. Misalnya, atribut dari mahasiswa adalah nim dan nama. Relasi merupakan gambaran antar-entitas.