BAB II. KAJIAN PUSTAKA A. Kalender Akademik Peraturan Rektor Universitas Muhammadiyah Purwokerto Nomor 3 tentang Peraturan Akademik Universitas Muhammadiyah Purwokerto menyatakan bahwa kalender akademik adalah jadwal kegiatan akademik tahunan (UMP, 2016). B. Android Pengertian Android menurut Safaat H (2012) Android adalah sebuah sistem operasi perangkat mobile berbasis linux mencakup sistem operasi, middleware dan aplikasi. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka. Awalnya, Google Inc. membeli Android Inc. yang merupakan pendatang baru yang membuat peranti lunak untuk ponsel/smartphone. Kemudian untuk mengembangkan Android dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, perangkat lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan open source pada perangkat mobile. Di lain pihak, Google merilis kode-kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan open platform perangkat seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail
17 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
Services (GMS) dan kedua adalah yang benar-benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD). Sekitar September 2007 Google mengenalkanNexus One, salah satu jenis smartphone yang menggunakan Android sebagai sistem operasinya. Telepon seleuler ini diproduksi oleh HTC Corporation dan tersedia di pasaran pada 5 januari 2010. Sejak Android dirilis telah dilakukan berbagai pembaruan berupa bug dan penambahan fitur baru. Android adalah platform yang sangat lengkap baik itu sistem operasinya, Aplikasi dan Tool Pengembangan, Market aplikasi android serta dukungan yang sangat tinggi dari komunitas Open Source di dunia, sehingga android terus berkembang pesat baik dari segi teknologi maupun dari segi jumlah device yang ada di dunia. C. DatabaseMySQL Pengertian Database menurut Kadir (2008),berarti koleksi data yang saling terkait. Secara praktis, basis data dapat dianggap sebagai suatu penyusunan data yang terstruktur yang disimpan dalam media pengingat (hard disk) yang tujuannya adalah agar data tersebut dapat diakses dengan mudah dan cepat. MySQL merupakan software yang tergolong sebagai DBMS (Database Management System) yang bersifat (Open Source).
18 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
D. Bahasa Pemrograman Java dan PHP Java menurut Nugroho(2008) merupakan bahasa pemrograman berorientasi objek yang diperkenalkan pada tahun 1995 oleh Sun Microsystems, Inc., sebuah industri perangkat lunak yang cukup besar di Amerika Serikat, yang saat Java diciptakan, proyeknya dipimpin oleh James Gosling. Nama Java diambil karena beberapa pemrogramnya terkesan oleh keindahan pulau Jawa di Indonesia serta kenikmatan kopinya. Java memungkinkan kita membuat program-program komputer dengan paradigma yang kita jumpai di dunia nyata dan sebenarnya. Paradigma yang dimaksud adalah “Pemrograman Berorientasi Objek” yang dalam bahasa aslinya disebut OOP (Object Oriented Programming). Java merupakan bahasa pemrograman yang dapat membuat seluruh bentuk aplikasi, desktop, web, ataupun aplikasi mobile, sebagaimana dibuat menggunakan bahasa pemrograman lainnya (Luwis, 2011). Sedangkan PHP (PHP Hypertext Prepocessor) menurut Wibowo (2007) adalah bahasa scripting server-side bagi pemrograman web. Secara sederhana, PHP merupakan tool bagi pengembangan web dinamis. PHP sangat populer karena memiliki fungsi built-in lengkap, cepat, mudah dipelajari, dan bersifat gratis. Script PHP cukup disisipkan pada kode HTML agar dapat bekerja. PHP dapat berjalan di berbagai web server dan sistem operasi yang berbeda.
19 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
E. Firebase Pengertian Firebase menurutKapil (2016) “Firebase is a platform for mobile developers to develop awesome-quality apps, quickly grow a user base, and monetize apps. It includes a hell lot of features, that developers can use to fulfill their goals. Let’s discuss some of these features. Firebase helps developers in development, growth and monetization of your mobile applications. It provides the following features for the Development phase: 1. Integration with Cloud Messaging. 2. Robust Authentication for added security. 3. Realtime Database for realtime storage of app data. 4. Storage support for files. 5. Support for on the fly Remote Configuration. 6. Test Lab to deliver high quality apps. 7. Crash Reporting to keep your apps stable and free from bugs.” Firebase
adalah
platform
bagi
pengembang
seluler
untuk
mengembangkan aplikasi berkualitas hebat, dengan cepat mengembangkan basis pengguna, dan memonetisasi aplikasi. Ini mencakup banyak fitur, yang dapat digunakan pengembang untuk memenuhi tujuan dari pengembang. Adapun fitur untuk tahap pengembangan adalah sebagai berikut: 1. Integration with Cloud Messaging. 2. Robust Authentication for added security. 3. Realtime Database for realtime storage of app data.
20 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
4. Storage support for files. 5. Support for on the fly Remote Configuration. 6. Test Lab to deliver high quality apps. 7. Crash Reporting to keep your apps stable and free from bugs. F. JSON(JavaScript Object Notation) JSON (JavaScript Object Notation) adalah format data-interchange yang ringan. Mudah bagi manusia untuk membaca dan menulis. Mudah bagi mesin untuk mengurai dan menghasilkan. Ini didasarkan pada subset dari JavaScript Programming Language, Standard ECMA-262 3rd Edition Desember 1999. JSON adalah format teks yang benar-benar bahasa independen namun menggunakan konvensi yang familiar bagi pemrogram keluarga bahasa C, termasuk C , C ++, C #, Java, JavaScript, Perl, Python, dan banyak lainnya. Properti ini menjadikan JSON sebagai bahasa pertukaran data yang ideal(JSON, 2003). Adapun menurut Rischpater (2015) “JSON stands for JavaScript Object Notation. It's an open standard to represent data as attributes with values. originally derived from the JavaScript syntax for use in web applications as an alternative to the more verbose and structured Extensible Markup Language (XML). it is now used for data serialization and transport in many standalone and web applications. JSON provides an ideal means to encapsulate data between the client and server.” JSON adalah singkatan dari JavaScript Object Notation. Ini adalah standar terbuka untuk mewakili data sebagai atribut dengan nilai. Awalnya
21 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
berasal dari sintaks JavaScript untuk digunakan dalam aplikasi web sebagai alternatif bahasa XML yang lebih verbose dan terstruktur Extensible Markup Language (XML). Sekarang digunakan untuk serialisasi data dan transportasi di banyak aplikasi mandiri dan web. Json menyediakan sarana ideal untuk mengenkapsulasi data antara client dan server. G. Software Pendukung 1.Android Studio Android Studio adalah Lingkungan Pengembangan TerpaduIntegrated Development Environment (IDE) untuk pengembangan aplikasi Android, berdasarkan InteliJ IDEA. Selain merupakan editor kode IntelliJ dan alat pengembang yang berdaya guna, Android Studio menawarkan fitur lebih banyak untuk meningkatkan produktivitas Anda saat membuat aplikasi Android, misalnya: •
Sistem versi berbasis Gradle yang fleksibel
•
Emulator yang cepat dan kaya fitur
•
Lingkungan yang menyatu untuk pengembangan bagi semua perangkat Android
•
Instant Run untuk mendorong perubahan ke aplikasi yang berjalan tanpa membuat APK baru
•
Template kode dan integrasi GitHub untuk membuat fitur aplikasi yang sama dan mengimpor kode contoh
•
Alat pengujian dan kerangka kerja yang ekstensif
22 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
•
Alat Lint untuk meningkatkan kinerja, kegunaan, kompatibilitas versi, dan masalah-masalah lain
•
Dukungan C++ dan NDK
•
Dukungan bawaan untuk Google Cloud Platform, mempermudah pengintegrasian Google Cloud Messaging dan App Engine. (Android Studio, 2016)
2.Xampp Xampp merupakan paket PHP dan MySQL berbasis open source yang dapat digunakan sebagai tool pembantu pengembangan aplikasi berbasis PHP. Xampp mengombinasikan beberapa paket perangkat lunak berbeda ke dalam satu paket (Riyanto, 2011). H. Model Waterfall Menurut Sommerville (2011), tahapan utama dari model Waterfall langsung mencerminkan aktifitas pengembangan dasar. Terdapat 5 tahapan pada model waterfall, yaitu requirement analysis and definition, system and software design, implementation and unit testing, integration and system testing, dan operation and maintenance, seperti pada Gambar 1.
23 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
Gambar 1. Waterfall Model (Sommerville, 2011)
Berikut adalah penjelasan dari tahapan-tahapan tersebut: 1. Requirement Analysis and Definition Merupakan tahapan penetapan fitur, kendala dan tujuan sistem melalui konsultasi dengan pengguna sistem. Semua hal tersebut akan ditetapkan secara rinci dan berfungsi sebagai spesifikasi sistem. 2. System and Software Design Dalam tahapan ini akan dibentuk suatu arsitektur sistem berdasarkan
persyaratan
yang
telah
ditetapkan.
Dan
juga
mengidentifikasi dan menggambarkan abstraksi dasar sistem perangkat lunak dan hubungan-hubungannya. 3. Implementation and Unit Testing Dalam tahapan ini, hasil dari desain perangkat lunak akan direalisasikan sebagai satu set program atau unit program. Setiap unit akan diuji apakah sudah memenuhi spesifikasinya.
24 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
4. Integration and System Testing Dalam tahapan ini, setiap unit program akan diintegrasikan satu sama lain dan diuji sebagai satu sistem yang utuh untuk memastikan sistem sudah memenuhi persyaratan yang ada. Setelah itu sistem akan dikirim ke pengguna sistem. 5. Operation and Maintenance Dalam tahapan ini, sistem diinstal dan mulai digunakan. Selain itu juga memperbaiki error yang tidak ditemukan pada tahap pembuatan. Dalam tahap ini juga dilakukan pengembangan sistem seperti penambahan fitur dan fungsi baru. I. Penelitian Sejenis 1. Dewi, dkk. (2016) telah mengembangkan Aplikasi Pengingat Kegiatan Akademik. Dengan hasil penelitian aplikasi terdiri atas dua bagian, yaitu aplikasi web untuk memasukkan perubahan jadwal, dan aplikasi mobile yang digunakan untuk menampilkan jadwal kegiatan akademik harian beserta notifikasi pengingat jadwal tersebut. Penelitian dilakukan di Universitas Atma Jaya Yogyakarta. 2. Bangare, dkk.(2013) telah mengembangkan sebuah sistem berdasarkan konsep layanan web yang diimplementasikan pada aplikasi mobile Android maupun pada PC yang berkomunikasi dengan database yang berada pada server yang jauh. Hasil penelitian berfokus pada siswa dapat memperoleh notifikasi langsung ke aplikasi mobile berupa informasiinformasi. Penelitian dilakukan di University of Pune.
25 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017
3. Ramadhan dan Utomo (2014) telah mengembangkan Aplikasi mobile untuk notifikasi jadwal kuliah. Dengan hasil penelitian yaitu kemampuan aplikasi tersebut menghadirkan data yang secara otomatis dapat mempermudah mahasiswa untuk mendapatkan jadwal perkuliahan terbaru serta fitur notifikasi yang dapat membantu mahasiswa mengingatkan akan jadwal yang harus dijalankan. Aplikasi yang dikembangkan berbasis Android. Penelitian dilakukan di Sekolah Tinggi Manajemen Informatika dan Komputer Provinsi Semarang. 4. Bhate, dkk.(2016)telah mengembangkan aplikasi papan pengumuman hitech. Yaitu untuk mentransfer informasi kepada pengguna aplikasi papan pengumuman hi-tech , dengan hasil mencakup dua model aplikasi android dan aplikasi web. Aplikasi web ditangani sepenuhnya oleh administrator intitusi tersebut, aplikasi android digunakan oleh siswa maupun guru. Pemberitahuan dikirim oleh administrator melalui aplikasi web diterima ke smartphone pengguna. Penelitian dilakukan di University of Pune.
26 Aplikasi Kalender Akademik…, Muhammad Imam Ibadi, Fakultas Teknik UMP, 2017