APLIKASI MOBILE ADMINISTRASI AKADEMIK UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” JAWA TIMUR BERBASIS ANDROID.

(1)

10

2.1 Profil Universitas Pembangunan Nasional “Veteran” Jawa Timur

Profil UPN “Veteran” Jatim berisi penjelasan yang memaparkan tentang sejarah, visi, misi, tujuan, struktur organisasi dan jabatan organisasi UPN “Veteran” Jatim.

2.1.1 Sejarah Singkat Universitas Pembangunan Nasional “Veteran” Jatim

UPN (Universitas Pembangunan Nasional) “Veteran” Jawa Timur merupakan salah satu lembaga pendidikan tinggi swasta di Indonesia yang berdiri sejak 5 (lima) Juli 1959. Selama kurun waktu 49 (empat puluh sembilan) tahun, UPN (Universitas Pembangunan Nasional) “Veteran” Jawa Timur telah mengalami berbagai perubahan status, yaitu:

a. Sejak Juli 1959 s/d 1965 Akademi Administrasi Perusahaan “Veteran” Cabang Surabaya.

b. Pada 17 (tujuh belas) Mei 1968 Perguruan Tinggi Pembangunan Nasional (PTPN) “Veteran” Cabang Jawa Timur dengan 3 (tiga) Fakultas (Ekonomi, Pertanian dan Teknik Kimia), berdasarkan Surat Keputusan Kementerian Transmigrasi, Urusan Veteran dan Demobilisasi.

c. Periode 1976-1994, terjadi peralihan status PTPN “Veteran” Cabang Jawa Timur sebagai Perguruan Tinggi Kedinasan di bawah Departemen Pertahanan Keamanan RI (Republik Indonesia).

d. Periode tahun 1977, terjadi perubahan nama PTPN “Veteran” Cabang Jawa Timur menjadi UPN “Veteran” Cabang Jawa Timur.


(2)

e. Sejak tahun akademik 1994/1995 penyelenggaraannya dilakukan secara mandiri sebagai Perguruan Tinggi Swasta.

f. Berdasarkan Surat keputusan Badan Akreditasi Nasional Perguruan Tinggi No. 001/BAN-PT/Ak-1/VIII/1998 tanggal 11 (sebelas) Agustus 1998 telah memperoleh status terakreditasi penuh untuk semua Jurusan/Program studi di UPN (Universitas Pembangunan Nasional).

g. Pada awal tahun akademik 2005/2006 jumlah mahasiswa yang terdaftar mencapai 12.500 (dua belas ribu lima ratus) orang, baik yang berasal dari SMU Negeri/Swasta, SMK Negeri/Swasta, dan Instansi Pemerintah dan swasta yang berasal dari dalam/luar wilayah Propinsi Jawa Timur. Sampai dengan akhir tahun 2005, UPN (Universitas Pembangunan Nasional) “Veteran” Jawa Timur telah meluluskan Sarjana S-1 sejumlah 25.000 (dua puluh lima ribu) orang.

h. Sejak bulan Desember 2007, dengan disatukannya beberapa yayasan di bawah Departemen Pertahanan RI (Republik Indonesia), maka pembinaan UPN "Veteran" Jawa Timur beralih di bawah Yayasan Kesejahteraan Pendidikan dan Perumahan (YKPP) [1].

2.1.2 Visi dan Misi Universitas Pembangunan Nasional “Veteran” Jatim

Visi : Menjadi Universitas terdepan dalam pengembangan ilmu pengetahuan dan teknologi serta sumberdaya manusia yang dilandasi nilai dan semangat kejuangan.

Misi : 1) Menghasilkan Sumber Daya Manusia yang memiliki nilia-nilai moralitas, mentalitas dan intelektualitas serta jasmani


(3)

yang sehat.

2) Mengembangkan ilmu pengetahuan dan teknologi menuju "Research university".

3) Mengembangkan sistem pemberdayaan masyarakat.

4) Meningkatkan kerjasama dalam bidang akademik dan non akademik dengan Perguruan Tinggi lain, pemerintah dan Swasta

Tujuan : Menunjang pembangunan nasional di bidang pendidikan tinggi dalam rangka terciptanya sumber daya manusia yang cakap, profesional, beriman dan bertaqwa kepada Tuhan Yang Maha Esa, memiliki disiplin, tanggung jawab dan pengabdian yang tinggi serta rasa kepedulian terhadap kesejahteraan masyarakat.

2.1.3 Struktur Organisasi UPN “Veteran” Jatim

Dibawah ini adalah susunan organisasi dari UPN (Universitas Pembangunan Nasional) “Veteran” Jawa Timur secara keseluruhan. Struktur ini meliputi Rektor diikuti dengan wakil Rektor I, II, dan III, Senat Universitas, Dewan Penyantun, BPH, LPPM, Badan Penjamin Mutu, RO, Fakultas yang terdiri dari semua fakultas yang ada di UPN, dan UPT yang terdiri dari UPT Telematika, UPT Pusbasa, UPT Perpustakaan, dan UPT Poliklinik. Untuk mengetahui lebih jelas tentang struktur organisasi yang ada di UPN (Universitas Pembangunan Nasional) bisa dilihat pada gambar 2.1.


(4)

Gambar 2.1 Struktur Organisasi UPN “Veteran” Jatim

2.1.4 Jabatan Organisasi UPN “Veteran” Jawa Timur

Tabel 2.1 Jabatan Organisasi UPN JATIM

Jabatan Nama

Pimpinan Universitas : Rektor

Wakil Rektor I Wakil Rektor II Wakil Rektor III

Badan Penjaminan Mutu (BPM) Lambaga Penelitian dan

Pengabdian kepada Masyarakat (LPPM)

Pimpinan Fakultas : Fakultas Pertanian (FP) Fakultas Ekonomi (FE)

Prof. Dr. Ir. Teguh Soedarto, MP. Prof. Dr. Ir. Soemargono, SU. Ir. Effi Damaijati, MS

Drs. Ec. Patrap Wiprapto, MS Dr. Ir. Bambang Priyanto, SU Ketua : Prof. Dr. Ir. Akhmad Fauzi, MMT.

Dekan : Dr. Ir. Ramdan Hidayat, MS. Dekan : Dr. Dahni Ichsanudin Noer, MSi


(5)

Fakultas Teknologi Industri (FTI) Fakultas Teknik Sipil dan

Perencanaan (FTSP) Fakultas Ilmu Sosial dan Ilmu Politik (FISIP) Fakultas Hukum (FH)

Program Pasca Sarjana (PPS) Biro Administrasi Akademik

Biro Kemahasiswaan dan Kerjasama Biro Administrasi Umum

Biro Rencana Anggaran dan Keuangan

Badan Usaha Universitas (BUU) Sekretariat Umum

Unit Pelaksana Teknis Telematika Unit Pelaksana Teknis Perpustakaan Unit Pelaksana Teknis Pusat Bahasa Unit Pelaksana Teknis Poliklinik

Dekan : Ir. Sutiyono, MT.

Dekan : Ir. Hj. Nanik Ratni, JAR, M.Kes. Dekan : Dra. Hj. Suparwati, M.Si.

Dekan : Haryo Sulistyantono, SH, MM. Direktur : Prof. Dr. Djohan Mashudi, MS. Kepala : Ir. Purnomo Edi Sasongko, MP. Kepala : Ir. Didik Utomo Pribadi, MP. Kepala : Drs. Caskim, MM.

Kepala : Kol (Purn.) Gitoyo, SE. Kepala : Ir. Putu Wisesa, MMT. Kepala : Ir. Akmal Suryadi, MMT. Kepala : Ir. Kemal Wijaya, MTP. Kepala : Drs Ananta Pratama, MSi. Kepala : Dra. Wulan Retno Wigati, MPd. Kepala : Dr. M. Faiq

2.2 Landasan Teori

Landasan teori merupakan penjelasan berbagai konsep dasar dan teori-teori yang berkaitan dalam pembangunan Aplikasi Mobile Administrasi Akademik Berbasis Andriod. Beberapa teori yang terkait dengan Aplikasi Mobile Administrasi Akademik Berbasis Andriod adalah Siamik, sistem informasi, Android, Java, web service, JDK, Intellij IDEA dan UML.

2. 2. 1. Sistem Informasi Administrasi Akademik (SIAMIK)

Sistem Informasi Akademik (SIAMIK) UPN “Veteran” Jatim merupakan suatu sistem informasi berbasis web untuk mengelola :


(6)

1) Kartu Rencana Studi (KRS) 2) Kartu Hasil Studi (KHS) 3) Transkrip

4) Pendaftaran UTS 5) Absensi Kuliah 6) KRS Remidi

7) Cetak Bukti Registrasi 8) Cetak Kartu Rencana Studi

9) Histori Kartu Rencana Studi (KHS) 10)KRS Remidi

11)Cetak Bukti Registrasi 12)Kuliah Kerja Nyata 13)Pendaftaran Ujian Lesan 14)Informasi Tagihan 15)Ganti Password

Siamik hanya dapat diakses oleh mahasiswa UPN “Veteran” Jatim yang sudah melakukan registrasi pada saat menjadi mahasiswa baru. Dimana mahasiswa baru tersebut akan mendapatkan username dan password untuk dapat segara melakukan aktifasi dengan cara mengakses alamat http://siamik.upnjatim.ac.id/ pada browser.

2. 2. 2. Sistem Informasi

Pada dasarnya sistem informasi bukanlah sistem yang selalu terkait dengan komputer. Adapun beberapa penjelasan terkait dengan sistem informasi


(7)

adalah pengertian sistem, pengertian data, pengertian informasi, dan pengertian sistem informasi itu sendiri.

2. 2. 2. 1. Pengertian Sistem

Pengertian sistem bisa dilihat dari dua pendekatan, yaitu berdasarkan prosedur dan komponennya. Sistem dilihat dari pendekatan prosedur berarti kumpulan prosedur yang saling bekerja sama untuk mencapai suatu tujuan tertentu sedangkan sistem dilihat dari pendekatan komponennya berarti sistem terdiri dari komponen-komponen yang saling berinteraksi untuk mencapai suatu tujuan tertentu.

2. 2. 2. 2. Pengertian Data

Data adalah kenyataan yang menggambarkan suatu kejadian–kejadian dan kesatuan yang nyata. Atau data adalah : representasi dunia nyata yang mewakili suatu objek seperti manusia (pegawai, mahasiswa, pelanggan), hewan, peristiwa, konsep, keadaan dll, yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya.

2. 2. 2. 3. Pengertian Informasi

Informasi merupakan data yang memiliki nilai lebih bagi penerimanya karena telah melewati proses pengolahan tertentu sehingga bisa dimanfaatkan untuk mengambil keputusan baik itu untuk saat ini ataupun untuk masa yang akan datang atau informasi didefinisikan sebagai data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya.

2. 2. 2. 4. Pengertian Sistem Informasi

Berdasarkan pemaparan sebelumnya mengenai sistem, data, dan informasi maka dapat diambil kesimpulan bahwa pengertian dari sistem informasi adalah


(8)

sekumpulan komponen-komponen dan prosedur-prosedur yang saling bekerja sama untuk mencapai suatu tujuan tertentu. Berikut pengertian-pengertian lainnya dari sistem informasi:

1) A set of people, data, procedures, hardware and software that work together to achieve the common goal of information management.

2) Keterkaitan komponen-komponen dalam pengumpulan (atau menerima), proses, menyimpan dan mendistribusikan informasi untuk mendukung pembuatan keputusan (decision making), mengkoordinasi serta mengkontrol 3) Sistem informasi juga membantu, manajer dan para pegawai (pekerja)

menganalisa masalah, menggambarkan “subyek” yang kompleks dan membuat (menghasilkan) produk-produk baru

4) Dasar (pondasi) dari bisnis pada umumnya.

Ada tiga aktifitas pada sistem informasi menghasilkan informasi pada organisasi yang diperlukan untuk membuat suatu keputusan, pengkontrolan, analisa masalah-masalah dan membuat produk baru atau layanan. Aktifitas itu adalah input, process dan output.

Input berarti menangkap atau pengumpulkan data mentah (raw data) didalam organisasi atau dari luar organisasi – environment / lingkungan. Proses diartikan dengan menterjemahkan data input kedalam bentuk yang lebih berarti. Sedangkan output adalah mentransfer informasi yang telah diproses kepada manusia dan aktivitasnya.

2. 2. 3. Android

Android merupakan subset perangkat lunak untuk perangkat mobile yang meliputi sistem operasi, middleware dan aplikasi inti yang di-release oleh Google.


(9)

Sedangkan Android SDK (Software Development Kit) menyediakan Tools dan API yang diperlukan untuk mengembangkan aplikasi pada platform Android dengan menggunakan bahasa pemrograman Java.

Dikembangkan bersama antara Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, NVIDIA yang tergabung dalam OHA (Open Handset Alliance) dengan tujuan membuat sebuah standar terbuka untuk perangkat bergerak (mobile device).

2. 2. 3. 1. Sejarah Android

Pada Juli 2000, Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri Android Inc. bekerja pada Google, diantaranya Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google hendak memasuki pasar telepon seluler. Di perusahaan Google, tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang bersiap menghadapi persaingan dalam pasar telepon seluler. Versi Android terbaru yaitu versi 3.0. Android juga sudah bergabung dengan beberapa smart mobile seperti Nokia, Sony Ericsson, dan lainnya.

1. Produk Awal

Sekitar September 2007 sebuah studi melaporkan bahwa Google mengajukan hak paten aplikasi telepon seluler (akhirnya Google mengenalkan Nexus One, salah satu jenis telepon pintar GSM yang menggunakan Android pada sistem operasinya. Telepon seluler ini diproduksi oleh HTC Corporation dan tersedia di pasaran pada 5 Januari 2010).


(10)

Pada 9 Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communications, diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA mengumumkan produk perdana mereka, Android, perangkat bergerak (mobile) yang merupakan modifikasi kernel Linux 2.6. Sejak Android dirilis telah dilakukan berbagai pembaruan berupa perbaikan bug dan penambahan fitur baru.

Telepon pertama yang memakai sistem operasi Android adalah HTC Dream, yang dirilis pada 22 Oktober 2008. Pada penghujung tahun 2009 diperkirakan di dunia ini paling sedikit terdapat 18 jenis telepon seluler yang menggunakan Android.

2. Android Versi 1.1

Pada 9 Maret 2009, Google merilis Android versi 1.1. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan email.

3. Android Versi 1.5 (Cupcake)

Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon, dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem.


(11)

4. Android Versi 1.6 (Donut)

Donut (versi 1.6) dirilis pada September dengan menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus; kamera, camcorder dan galeri yang dintegrasikan; CDMA / EVDO, 802.1x, VPN, Gestures, dan Text-to-speech engine, kemampuan dial kontak, teknologi text to change speech (tidak tersedia pada semua ponsel), pengadaan resolusi VWGA.

5. Android Versi 2.0/2.1 (Eclair)

Pada 3 Desember 2009 kembali diluncurkan ponsel Android dengan versi 2.0/2.1 (Eclair), perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1.

Untuk bergerak cepat dalam persaingan perangkat generasi berikut, Google melakukan investasi dengan mengadakan kompetisi aplikasi mobile terbaik (killer apps - aplikasi unggulan). Kompetisi ini berhadiah $25,000 bagi setiap pengembang aplikasi terpilih. Kompetisi diadakan selama dua tahap yang tiap tahapnya dipilih 50 aplikasi terbaik.

Dengan semakin berkembangnya dan semakin bertambahnya jumlah handset Android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi Android. Aplikasi terkenal yang diubah ke dalam sistem operasi Android adalah Shazam, Backgrounds, dan WeatherBug.


(12)

Sistem operasi Android dalam situs internet juga dianggap penting untuk menciptakan aplikasi Android asli, contohnya oleh MySpace dan Facebook.

6. Android Versi 2.2 (Froyo: Frozen Yoghurt)

Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, integrasi V8 JavaScript engine yang dipakai Google Chrome yang mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspot portabel, dan kemampuan auto update dalam aplikasi Android Market.

7. Android Versi 2.3 (Gingerbread)

Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari Android versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy paste, layar antar muka (User Interface) didesain ulang, dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization, headphone virtualization, dan bass boost), dukungan kemampuan Near Field Communication (NFC), dan dukungan jumlah kamera yang lebih dari satu.

8. Android Versi 3.0 (Honeycomb)

Android Honeycomb dirancang khusus untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar. User Interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb juga mendukung multi prosesor dan juga akselerasi perangkat keras (hardware) untuk grafis. Tablet pertama yang dibuat dengan menjalankan Honeycomb adalah Motorola Xoom.


(13)

Android 4.0 atau lebih dikenal dengan “Ice Cream Sandwich” bersamaan dengan dirilisnya handphone Samsung Galaxy Nexus di HongKong.

9. Android Versi 4.0 (Ice Cream Sandwich)

Android Ice Cream Sandwich akan menjadi OS pemersatu untuk handphone dan tablet Android, sehingga tidak akan lagi ada versi berbeda untuk tablet dan handphone.

Beberapa fitur utama yang hadir pada versi 4.0 antara lain fitur NFC yang diberi nama “Android Beam”, pencarian offline di Gmail, fitur unlocking layar dengan memakai wajah pengguna yang diberi nama “Face Unlock”, dan beberapa perubahan yang semakin mempermanis User interface.

Namun yang paling menarik dan juga agak aneh dari fitur terbaru Android 4.0 adalah ukuran resolusi layar standard (native) di Android 4.0 adalah 720p (High Definition). Agak aneh mengingat sangat sedikit handphone Android yang memiliki resolusi tsb, apalagi kebanyakan tablet Android yang beredar di pasaran saat ini beresolusi 1280×800 atau berbeda 80 pixel dari ukuran native.

Beberapa fitur utama Android 4.0 dikutip dari Android developer:

- Android Beam: Fitur berbasis NFC yang memungkinkan pengguna berbagi

bermacam konten seperti musik, video, gambar, dll. - Roboto Font: Font baru di Android pengganti Droid Sans

- Widget yang Flexible: Secara default widget di Ice Cream Sandwich dapat diubah ukurannya dan diklaim lebih responsif

- Favorites Tray: Pengguna dapat memasukkan applikasi, link web, maupun folder kedalam tray favorit yang akan mempermudah dan mempercepat akses.


(14)

- Screenshots: Mengambil screenshot tanpa menggunakan program khusus di Android, user cukup menekan tombol power dan volume bawah untuk mengambil screenshot layar.

- Notifications: Notifikasi akan sangat mudah dan kustomasi akan ditingkatkan.

- Improved Copy & Paste: Copy-paste teks semakin mudah.

- Face Unlock: Unlock handphone Android hanya dengan mendekatkan wajah ke kamera depan hp.

- Enhanced Talk-to-Text: Input suara lebih pintar, akurat, dan prosesnya

semakin cepat.

- Browser: Browser yang lebih cepat dibanding Android 2.3, mampu menyimpan konten situs secara offline, dan juga mampu melihat versi desktop dari suatu situs.

- Gmail: Gmail di Android mampu menampilkan preview Gmail dalam 2 baris, dan juga kemampuan Gesture touch untuk berpindah antar email.

- People App: Daftar kontak baru, dimana detail kontak dapat bersumber dari

jejaring sosial seperti Google+, Facebook, Twitter, dll.

- Data Usage: Kemampuan melihat penggunaan data dalam suatu periode

tertentu, sekaligus kemampuan untuk melihat applikasi mana saja yang memakai data dan juga memberi limit penggunaan data.

- Kamera: Banyak fitur ditambahkan seperti image stabilization, improved autofocus, integrasi dengan applikasi lain sehingga foto yang diambil dapat langsung diupload ke Google+, face detection, mode panorama & time lapse, dan kemampuan mengedit dan mempercantik foto secara on-the-fly.


(15)

9. Android Versi 4.1 (Jelly Bean)

Android kembali akan merilis OS terbaru nya yang rencana akan diberi nama Android Jelly Bean. Android Ice Cream Sandwich memang belum lama dirilis dan masih sangat sedikit handphone yang sudah mencicipinya, namun tidak ada salahnya bila kita membahas Android Jelly Bean versi selanjutnya yang rencananya akan dirilis tahun 2013.

Kali ini berkaitan dengan nama, sebelumnya sudah lama berkembang rumor nama yang akan digunakan Google untuk versi Android 5.0 adalah “Jelly Bean“. Indikasi paling baru ialah kehadiran mangkok berisi hidangan jelly bean di stand Google pada ajang MWC.

Dan kali ini Asus, salah satu partner Google yang tergolong cepat dalam memberikan update Android ke handphone yg mereka produksi, lewat Vice President-nya Benson Lin secara tidak sengaja mengkonfirmasi nama “Android Jelly Bean” kepada Techradar.

Asus sangatlah dekat dengan Google, jadi saat mereka telah merilis Android 5.0, saya pikir besar kemungkinan bahwa kamilah yang akan pertama kali memberikan update Jelly Bean ke konsumen,

Bila hal tersebut benar adanya, ini akan meneruskan tradisi Google yang selalu memberi nama versi Android dengan nama hidangan makanan yang urut sesuai dengan abjad. Bahkan sudah beredar rumor juga nama yang dipakai untuk versi setelah Jelly Bean adalah Key Lime Pie.

2. 2. 3. 2. Fitur Android

Fitur yang tersedia pada platform Android saat ini antara lain:


(16)

2) Mesin virtual Dalvik berjalan diatas Linux kernel dan dioptimalkan untuk perangkat mobile.

3) Integrated browser berdasarkan open source engine WebKit.

4) Grafis yang dioptimalkan dan didukung oleh library grafis 2D yang terkostumisasi, grafis 3D berdasarkan spesifikasi openGL ES 1,0 (Opsional akselerasi hardware).

5) SQLite untuk penyimpanan data.

6) Media Support yang mendukung audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).

7) GSM Telephony (tergantung hardware).

8) Bluetooth, EDGE, 3D, dan WiFi (tergantung hardwa re).

9) Dukungan Perangkat Tambahan : Android dapat memanfaatkan kamera, layar sentuh, accelerometers, magnetometers, GPS, akselerasi 2D (dengan perangkat orientasi, scalling, konversi format piksel) dan akselerasi grafis 3D.

10) Multi-touch : kemampuan layaknya handset modern yang dapat menggunakan dua jari atau lebih untuk berinteraksi dengan perangkat. 11) Lingkungan Development yang lengkap dan kaya termasuk perangkat

emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk Eclipse IDE.

12) Market : seperti kebanyakan handphone yang memiliki tempat penjualan aplikasi, market pada Android merupakan katalog aplikasi yang dapat di-download dan di-install pada handphone melalui internet.


(17)

2. 2. 3. 3. Arsitektur Android

Arsitektur Android menunjukkan komponen-komponen utama yang terdapat pada sistem operasi Android. Berikut ini arsitektur Android yang digambarkan pada Gambar 2.2.

Gambar 2.2. Arsitektur Platform Android

1. Linux Kernel

Android bukan Linux, akan tetapi Android dibangun diatas Linux Kernel, yaitu versi 2.6 sehingga kehandalannya bisa dipercaya. Untuk inti sistem service Linux yang digunakan seperti keamanan, manajemen memori, proses manajemen, network, dan driver model. Seperti yang terlihat digambar (Gambar II.3), Linux Kernel menyediakan Driver Layar, Kamera, Keypad, WiFi, Flash Memory, Audio, dan IPC (Interprocess Communication) untuk mengatur aplikasi dan keamanan. Kernel juga bertindak sebagai lapisan abstrak antara hardware dan software stack-nya.

2. Libraries

Android menyertakan libraries C/C++ yang digunakan oleh berbagai komponen dari sistem Android. Kemampuan ini disediakan kepada Developer


(18)

aplikasi melalui Framework Aplikasi Android. Beberapa inti libraries tercantum dibawah ini:

1) System C Library – Variasi dari implementasi BSD-berasal pelaksana sistem standar C library (libc), sesuai untuk perangkat embedded berbasis Linux. 2) Media Libraries – PacketVideo berdasarkan OpenCORE; library medukung

pemutaran rekaman dan populer banyak format audio dan video, serta file gambar, termasuk MPEG4, H.264, MP3, AAC, AMR, JPG, dan PNG.

3) Surface Manager – mengelola akses ke subsistem layar, lapisan komposit 2D dan grafis 3D dari beberapa aplikasi.

4) LibWebCore – mesin web modern yang powerfull yang baik browser Android embedded web.

5) 3D Libraries – sebuah pelaksana berdasarkan openGL ES 1,0 API; perpustakaan baik menggunakan perangkat keras akselerasi 3D (apabila tersedia) atau yang disertakan, sangat optimal 3D softwarerasterizer.

6) FreeType – bitmap dan vektor font rendering.

7) SQLite – mesin database yang kuat dan ringan, dan penghubung tersedia untuk semua aplikasi.

3. Android Runtime

Android terdiri dari satu set core libraries yang menyediakan sebagian besar fungsi yang sama dengan yang terdapat pada core libraries bahasa pemrograman Java. Setiap aplikasi menjalankan prosesnya sendiri dalam Android, dengan masing-masing instan dari mesin virtual Dalvik (Dalvik VM). Dalvik dirancang agar perangkat dapat menjalankan multiple VMs secara efisien.


(19)

Mesin Virtual Dalvik mengeksekusi file dalam Dalvik executable (.dex), sebuah format yang dioptimalkan untuk memori yang kecil.

Dalvik VM berbasis, berjalan, dan dikompilasi oleh compiler bahasa Java yang telah ditransformasikan ke dalam .dex format oleh tool “dx” yang telah disertakan. Dalvik VM bergantung pada kernel Linux untuk berfungsi seperti threading dan manajemen memori tingkat rendahnya.

4. Framework Aplikasi

Pengembang memiliki akses penuh menuju API framework yang sama dengan yang digunakan oleh aplikasi inti. Arsitektur aplikasi dirancang agar komponen dapat digunakan kembali (reuse) dengan mudah. Setiap aplikasi dapat memanfaatkan kemampuan ini (sesuai dengan batasan keamanan yang didefinisikan oleh framework). Mekanisme yang sama memungkinkan komponen untuk diganti oleh pengguna.

Semua aplikasi merupakan rangkaian set layanan dan sistem, termasuk: a. Views yang kaya dan extensible yang dapat digunakan untuk membangun

aplikasi, termasuk list, grids, kotak teks, tombol, dan bahkan sebuah embedded web.

b. Content Provider yang memungkinkan aplikasi untuk mengakses data (seperti dari daftar kontak telepon) atau membagi data tersebut.

c. Resource Manager, yang menyediakan akses ke kode nonsumber lokal seperti string, gambar, dan tata letak file.

d. Notifications Manager yang memungkinkan semua aplikasi menampilkan alert yang bisa dikostumisasi di dalam status bar.


(20)

e. Activity Manager yang mengelola siklus hidup aplikasi dan menyediakan navigasi umum backstack.

5. Applications

Android telah menyertakan aplikasi inti seperti email client, SMS, kalender, peta, browser, kontak, dan lainnya. Semua aplikasi tersebut ditulis dengan menggunakan bahasa pemrograman Java. Pada layer inilah developer atau kita menempatkan aplikasi yang dibuat. Yang istimewa adalah pada Android semua aplikasi baik aplikasi inti (native) maupun aplikasi pihak ketiga berjalan pada layer aplikasi dengan menggunakan library API yang sama. Ini berarti semua aplikasi yang dibuat untuk Android akan memiliki akses yang setara dalam mengakses seluruh kemampuan handset, tanpa membedakan apakah itu merupakan aplikasi inti atau aplikasi pihak ketiga. Dalam kata lain dengan platform Android ini, Programmer atau Developer secara penuh akan bisa mengkostumisasi perangkat Androidnya.

2. 2. 4. Java

Java adalah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam. Dikembangkan oleh Sun Microsystems dan diterbitkan tahun 1995. Java tidak boleh disalahpahami sebagai JavaScript. JavaScript adalah bahasa scripting yang digunakan oleh webbrowser.

2. 2. 4. 1. Sejarah perkembangan Java

Bahasa pemrograman Java pertama lahir dari The Green Project, yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas 1992. Proyek


(21)

tersebut belum menggunakan versi yang dinamakan Oak. Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems. Salah satu hasil proyek ini adalah maskot Duke yang dibuat oleh Joe Palrang.

Pertemuan proyek berlangsung di sebuah gedung perkantoran Sand Hill Road di Menlo Park. Sekitar musim panas 1992 proyek ini ditutup dengan menghasilkan sebuah program Java Oak pertama, yang ditujukan sebagai pengendali sebuah peralatan dengan teknologi layar sentuh (touch screen), seperti pada PDA sekarang ini. Teknologi baru ini dinamai "*7" (Star Seven).

Setelah era Star Seven selesai, sebuah anak perusahaan Tv kabel tertarik ditambah beberapa orang dari proyek The Green Project. Mereka memusatkan kegiatannya pada sebuah ruangan kantor di 100 Hamilton Avenue, Palo Alto.

Perusahaan baru ini bertambah maju, jumlah karyawan meningkat dalam waktu singkat dari 13 menjadi 70 orang. Pada rentang waktu ini juga ditetapkan pemakaian Internet sebagai medium yang menjembatani kerja dan ide di antara mereka. Pada awal tahun 1990-an, Internet masih merupakan rintisan, yang dipakai hanya di kalangan akademisi dan militer.

Mereka menjadikan perambah (browser) Mosaic sebagai landasan awal untuk membuat perambah Java pertama yang dinamai Web Runner, terinsipirasi dari film 1980-an, Blade Runner. Pada perkembangan rilis pertama, Web Runner berganti nama menjadi Hot Java.

Pada sekitar bulan Maret 1995, untuk pertama kali kode sumber Java versi 1.0a2 dibuka. Kesuksesan mereka diikuti dengan untuk pemberitaan pertama kali pada surat kabar San Jose Mercury News pada tanggal 23 Mei 1995.


(22)

Sayang terjadi perpecahan di antara mereka suatu hari pada pukul 04.00 di sebuah ruangan hotel Sheraton Palace. Tiga dari pimpinan utama proyek, Eric Schmidt dan George Paolini dari Sun Microsystems bersama Marc Andreessen, membentuk Netscape.

Nama Oak, diambil dari pohon oak yang tumbuh di depan jendela ruangan kerja "bapak java", James Gosling. Nama Oak ini tidak dipakai untuk versi release Java karena sebuah perangkat lunak sudah terdaftar dengan merek dagang tersebut, sehingga diambil nama penggantinya menjadi "Java". Nama ini diambil dari kopi murni yang digiling langsung dari biji (kopi tubruk) kesukaan Gosling. Konon kopi ini berasal dari Pulau Jawa. Jadi nama bahasa pemrograman Java tidak lain berasal dari kata Jawa (bahasa Inggris untuk Jawa adalah Java).

2. 2. 4. 2. Versi Awal Java

Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya:

1) Java.lang: Peruntukan kelas elemen-elemen dasar.

2) Java.io: Peruntukan kelas input dan output, termasuk penggunaan berkas. 3) Java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas

kelas penanggalan.

4) Java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.

5) Java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI) 6) Java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah


(23)

2. 2. 4. 3. Kelebihan Java

1) Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis Java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Windows, Linux, Mrac OS dan Sun Solaris. Penyebanya adalah setiap sistem operasi menggunakan programnya sendiri-sendiri (yang dapat diunduh dari situs Java) untuk menginterpretasikan bytecode tersebut.

2) OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance seperti komunikasi antara komputer sekalipun.

3) Perpustakaan Kelas yang Lengkap, Ja va terkenal dengan kelengkapan library/perpustakaan (kumpulan program program yang disertakan dalam


(24)

pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi.

4) Bergaya C++, memiliki sintaks seperti bahasa pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java. Universitas-universitas di Amerika Serikat juga mulai berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer.

5) Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

2. 2. 4. 4. Kekurangan Java

Beberapa hal yang menjadi kekurangan atau kelemahan Java Programming :

1) Kompabilitas terbatas - Masih ada beberapa hal yang tidak kompatibel antara platform satu dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang sampai sekarang tidak berfungsi pada Mac OS X.

2) Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi


(25)

pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/di-reverse-engineer.

3) Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

2. 2. 4. 5. Tahap Kompilasi Java

Adapun tahapan kompilasi java, adalah sebagai berikut :

1) Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas '.java'.

2) Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk berkas '.class'.

3) Muat. Pemuat kelas memuat bytecodes ke memori.

4) Verifikasi. Peng-verifikasi memastikan bytecodes tidak mengganggu sistem keamanan Java.

5) Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa mesin tidak bisa di pakai.

2. 2. 5. Aplication Programming Interface (API)

Antarmuka pemrograman aplikasi (Application Programming Interface) adalah sekumpulan perintah, fungsi, dan protokol yang dapat digunakan oleh


(26)

pengembang saat membangung perangkat lunak untuk sistem operasi tertentu. API memungkinkan pengembang untuk menggunakan fungsi standar untuk berinteraksi dengan sistem operasi.

Dalam mengembangkan aplikasi Mobile Administrasi Akademik harus mendaftarkan aplikasi yang akan dibangun terlebih dahulu dengan menghubungi Puskom UPN “Veteran” Jatim. Maka akan mendapatkan dua variable penting yaitu API_KEY dan API_SECRET.

1. API_KEY

API_KEY merupakan kunci unik suatu aplikasi yang terdaftar sebagai pengguna layanan Siamik API. Kunci ini merupakan kunci Unik seperti halnya username tapi digeneralisasi oleh aplikasi secara otomatis. API_KEY memiliki panjang 32 karakter, dan hanya bisa digunakan berpasangan dengan API_SECRET. API_KEY akan selalu digunakan pada request HTTP ketika mengakses aplikasi Mobile Administrasi Akademik, hal ini dimaksudkan agar server dapat mengetahui request yang dimaksud benar-benar berasal dari aplikasi yang sudah terdaftar tersebut.

2. API_SECRET

API_SECRET merupakan kunci rahasia dari API_KEY, berfungsi seperti SALT pada enkripsi. Semua request modul/perintah API harus di enkripsi dengan SALT dan API_KEY yang dimaksud, sehingga request yang serupa tidak dapat dilakukan oleh pihak lainnya yang tidak memiliki API_KEY dan API_SECRET. API_SECRET juga diperlukan untuk melakukan enkripsi pada data-data riskan seperti password. Sehingga data yang di transfer tidak mungkin untuk di decrypt


(27)

oleh pihak lain di tengah jalan, dan Server juga hanya dapat melakukan pencocokan password dengan salt yang dimaksud.

2. 2. 6. Web Service

Web Service adalah sekumpulan application logic beserta objek-objek dan metode-metode yang dimilikinya yang terletak di suatu server yang terhubung ke internet sehingga dapat diakses menggunakan protocol HTTP dan SOAP ( Simple Object Access Protocol). Dalam penggunaannya, web service dapat digunakan dari hanya untuk memeriksa data user yang login ke sebuah website ataupun untuk digunakan pada transaksi perbankan online yang rumit.

Tujuan dari teknologi ini adalah untuk memudahkan beberapa aplikasi atau komponennya untuk saling berhubungan dengan aplikasi lain dalam sebuah organisasi maupun diluar organisasi menggunakan standar yang tidak terikat platform (platform-neutral) dan tidak terikat akan bahasa pemrograman yang digunakan (language-neutral). Hal tersebut dapat terjadi karena penggunaan XML standar yang didukung oleh banyak perusahaan besar di dunia, yang digunakan untuk bertukar data. Selain daripada itu, penggunaan SOAP menjadikan metode-metode dari objek-objek yang ada dalam sebuah web service dapat di akses dari aplikasi lain seperti halnya aplikasi tersebut mengakses metode lokal.

2. 2. 6. 1. Web Services Messaging

W3C mendefinisikan web service sebagai “sebuah software aplikasi yang dapat teridentifikasi oleh URI dan memiliki interface yang didefiniskan, dideskripsikan, dan dimengerti oleh XML dan juga mendukung interaksi langsung


(28)

dengan software aplikasi yang lain dengan menggunakan message berbasis XML melalui protokol internet”

Web service adalah sebuah sofware aplikasi yang tidak terpengaruh oleh platform, ia akan menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda.

Beberapa karakteristik dari web service adalah: 1) Message-based

2) Standards-based

3) Programming language independent 4) Platform-neutral

Beberapa key standard didalam web service adalah: 1) XML,

2) SOAP, 3) WSDL, dan 4) UDDI.

SOAP (Simple Object Access Protocol) adalah sebuah XML-based ma rk -up language untuk pergantian pesan diantara aplikasi-aplikasi. SOAP berguna seperti sebuah amplop yang digunakan untuk pertukaran data object didalam network. SOAP mendefinisikan empat aspek didalam komunikasi: Message envelope, Encoding, RPC call convention, dan bagaimana menyatukan sebuah message didalam protokol transport.

Sebuah SOAP message terdiri dari SOAP Envelop dan bisa terdiri dari attachments atau tidak memiliki attachment. SOAP Envelop tersusun dari SOAP header dan SOAP body, sedangkan SOAP attachment membolehkan non-XML data untuk dimasukkan kedalam SOAP message, di-encoded, dan diletakkan kedalam SOAP message dengan menggunakan MIME-multipart.


(29)

2. 2. 6. 2. Web Services Description

WSDL (Web Services Description Language) adalah sebuah XML-based language untuk mendeskripsikan XML. Ia menyediakan service yang mendeskripsikan service request dengan menggunakan protokol-protokol yang berbeda dan juga encoding. Ia akan memfasilitasi komunikasi antar aplikasi. WSDL akan mendeskripsikan apa yang akan dilakukan oleh web service, bagaimana menemukannya dan bagaimana untuk mengoperasikannya.

Spesifikasi WSDL mendefinisikan tujuh tipe element:

1) Types - elemen untuk mendefinisikan tipe data. Types akan mendefinisikan tipe data (seperti string atau integer) dari elemen didalam sebuah message. 2) Message - abstract, pendefinisian tipe data yang akan dikomunikasikan. 3) Operation - sebuah deskripsi abstract dari sebuah action yang didukung oleh

service.

4) Port Type - sebuah koleksi abstract dari operations yang didukung oleh lebih dari satu endpoints.

5) Binding - mendefinisikan penyatuan dari tipe port (koleksi dari operasi-operasi) menjadi sebuah protokol transport dan data format (contohnya SOAP 1.1 pada HTTP). Ini adalah sebuah protokol konkret dan sebuah spesifikasi data format didalam tipe port tertentu.

6) Port - mendefinisikan sebuah komunikasi endpoint sebagai kombinasi dari binding dan alamat network. Bagi protokol HTTP, ini adalah sebuah bentuk dari URL sedangkan bagi protokol SMTP, ini adalah sebuah form dari email address.


(30)

2. 2. 6. 3. Web Service Discovery

UDDI (Universal Description, Discovery and Integration) adalah sebuah service registry bagi pengalokasian web service. UDDI mengkombinasikan SOAP dan WSDL untuk pembentukan sebuah registry API bagi pendaftaran dan pengenalan service. Ia menyediakan sebuah area umum dimana sebuah organisasi dapat mengiklankan keberadaan mereka dan service yang mereka berikan (web service).

UDDI adalah sebuah framework yang mendefinisikan sebuah XML-ba sed registry dimana sebuah organisasi dapat meng-upload informasi mengenai service yang mereka berikan. XML-based registry berisi nama-nama dari organisasi tsb, beserta service dan deskripsi dari service yang mereka berikan.

2. 2. 7. Tools Implementasi

Tools implementasi merupakan peralatan-peralatan yang dibutuhkan dalam membangun perangkat lunak. Adapun tools implementasi yang digunakan untuk membuat aplikasi Mobile Administrasi Akademik berbasis Android adalah JDK sebagai perangkat pembangun Java, Intellij IDEA sebagai lingkungan pengembangan perangkat lunak, dan SQL sebagai sistem manajemen basis data.

2. 2. 7. 1. JDK

JDK (Java Development Kit) adalah sebuah perangkat peralatan yang digunakan untuk membangun perangkat lunak dengan menggunakan bahasa pemrograman Java. JDK berjalan diatas sebuah virtual machine yang dinamakan JVM (JavaVirtual Machine).


(31)

Dokumentasi JDK berisi spesifikasi API, deskripsi fitur, panduan pengembang, referensi halaman untuk perkakas JDK dan utilitas, demo, dan link ke informasi terkait. Dokumentasi ini juga tersedia dalam bundel yand dapat diunduh dan diinstal pada komputer.

2. 2. 7. 2. IntelliJ IDEA

IntelliJ IDEA merupakan salah satu IDE java berbayar yang dibuat oleh JetBrains. Biasanya disebut sebagai 'IDEA' atau 'IntelliJ'. Versi pertama dari IntelliJ IDEA dirilis pada Januari 2001, dan pada saat itu adalah Java IDE hanya tersedia dengan kode navigasi canggih dan kemampuan refactoring kode terintegrasi

IntelliJ IDEA memiliki fitur yang banyak sekali seperti pada Netbeans dan Eclipse. Untuk sekedar mencoba IDE ini, pengguna dapat mengunduhnya secara gratis dari website pembuatnya (www.jetbrains.com) karena IntelliJ IDEA juga memiliki versi yang OpenSource.

Versi terbaru dari Intellij IDEA (12.0) juga didukung oleh kelas diagram seperti UML, pemodelan visual Hibernate, Spring 3.1 dan dukungan Play Framework, Dependency dan Analisis Data Flow, dukungan Apache Maven serta banyak fitur dan teknologi lainnya.

- Bahasa yang didukung : Java, JavaScript, CoffeeScript, HTML/XHTML/CSS XML/XSL, ActionScript/MXML, Python, Ruby/JRuby, Groovy, SQL, PHP, Scala, Clojure, JavaFX 1, Dart, haXe, Kotlin, TypoScript

- Framework dan teknologi yang didukung : JSP, JSF, EJB, Ajax, Google Web Toolkit, Struts, Struts 2, JBoss Seam, Spring, Hibernate/JPA, Web


(32)

Services, Ruby on Rails, Grails (framework), Java ME MIDP/CLDC, OSGi, Android, Tapestry, Google App Engine, FreeMarker, Velocity, Django, Play.

- Aplikasi server yang didukung : GlassFish, JBoss, Tomcat, Jetty, WebLogic, WebSphere, Geronimo

Di antara fitur-fitur lainnya, IDEA menyediakan integrasi yang erat dengan open source development tools yang populer seperti CVS , Subversion , Apache Ant , Apache Maven , JUnit dan TestNG . Sebuah plugin gratis juga tersedia untuk Atlassian IntelliJ Connector yang mengintegrasikan Jira , Bambu , Crucible , dan fisheye.

2. 2. 8. Unified Modeling Language

Unified Modeling Language (UML) adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat lunak. UML adalah himpunan struktur dan teknik untuk pemodelan desain program berorientasi objek (OOP) serta aplikasinya. UML adalah metodologi untuk mengembangkan sistem OOP dan sekelompok perangkat tool untuk mendukung pengembangan sistem tersebut. UML mulai diperkenalkan oleh Object Management Group, sebuah organisasi yang telah mengembangkan model, teknologi, dan standar OOP sejak tahun 1980-an. Sekarang UML sudah mulai banyak digunakan oleh para praktisi OOP. UML merupakan dasar bagi perangkat (tool) desain berorientasi objek dari IBM. UML adalah suatu bahasa yang digunakan untuk menentukan, memvisualisasikan, membangun, dan mendokumentasikan suatu sistem informasi. UML dikembangkan sebagai suatu alat untuk analisis dan desain berorientasi objek oleh Grady Booch, Jim


(33)

Rumbaugh, dan Ivar Jacobson. Namun demikian UML dapat digunakan untuk memahami dan mendokumentasikan setiap sistem informasi. Penggunaan UML dalam industri terus meningkat. Ini merupakan standar terbuka yang menjadikannya sebagai bahasa pemodelan yang umum dalam industri peranti lunak dan pengembangan sistem.

2. 2. 8. 1. Sejarah UML

Sampai era tahun 1990 puluhan metodologi pemodelan berorientasi objek telah bermunculan di dunia. Diantaranya adalah: metodologi booch, metodologi coad, metodologi OOSE, metodologi OMT, metodologi shlaer-mellor, metodologi wirfs-brock, dan sebagainya. Masa itu terkenal dengan masa perang metodologi (method war) dalam pendesainan berorientasi objek. Masing-masing metodologi membawa notasi sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila kita bekerjasama dengan kelompok/perusahaan lain yang menggunakan metodologi yang berlainan.

Dimulai pada bulan Oktober 1994 Booch, Rumbaugh dan Jacobson, yang merupakan tiga tokoh yang boleh dikata metodologinya banyak digunakan mempelopori usaha untuk penyatuan metodologi pendesainan berorientasi objek.

Pada tahun 1995 direlease draft pertama dari UML (versi 0.8). Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management Group.

2. 2. 8. 2. Diagram UML

UML menyediakan 10 macam diagram untuk memodelkan aplikasi berorientasi objek, yaitu:


(34)

2) Conceptual Diagram untuk memodelkan konsep-konsep yang ada di dalam aplikasi.

3) Sequence Diagram untuk memodelkan pengiriman pesan (message) antar objects

4) Collaboration Diagram untuk memodelkan interaksi antar objects. 5) State Diagram untuk memodelkan perilaku objects di dalam sistem.

6) Activity Diagram untuk memodelkan perilaku Use Cases dan objects di dalam system.

7) Class Diagram untuk memodelkan struktur kelas. 8) Object Diagram untuk memodelkan struktur object.

9) Component Diagram untuk memodelkan komponen object. 10)Deployment Diagram untuk memodelkan distribusi aplikasi.

Berikut akan dijelaskan empat macam diagram yang paling sering digunakan dalam pembangunan aplikasi berorientasi object, yaitu use case diagram, sequence diagram, collaboration diagram, dan class diagram.

1. Use Case Diagram

Use case diagram digunakan untuk memodelkan bisnis proses berdasarkan perspektif pengguna sistem. Use case diagram terdiri atas diagram untuk use case dan actor. Actor merepresentasikan orang yang akan mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi.

Use case merepresentasikan operasi-operasi yang dilakukan oleh aktor. Use case digambarkan berbentuk elips dengan nama operasi dituliskan di dalamnnya. Actor yang melakukan operasi dihubungkan dengan garis lurus ke usecase.


(35)

2. Sequence Diagram

Sequence diagram menjelaskan secara detil urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case: interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi.

3. Collaboration Diagram

Collaboration diagram dipakai untuk memodelkan interaksi antar objek di dalam sistem. Berbeda dengan sequence diagram yang lebih menonjolkan kronologis dari operasi-operasi yang dilakukan, collaboration diagram lebih fokus pada pemahaman atas keseluruhan operasi yang dilakukan oleh objek.

4. Class Diagram

Class diagram merupakan diagram yang selalu ada di permodelan sistem berorientasi objek. Class diagram menunjukkan hubungan antar class dalam sistem yang sedang dibangun dan bagaimana mereka saling berkolaborasi untuk mencapai suatu tujuan.


(36)

45

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Analisis bertujuan untuk mengidentifikasi permasalahan-permasalahan yang terdapat pada sistem serta menentukan kebutuhan-kebutuhan dari sistem yang akan dibangun. Analisis ini dimaksudkan agar perangkat lunak yang dibangun tidak keluar dari cakupan sistem yang ada. Analisis sistem berisi tentang pemaparan prosedur-prosedur yang berjalan pada aplikasi berupa pengecekan KRS, entry KRS, pengecekan KHS, pengecekan transkrip sementara, presensi kehadiran kuliah, dan info pembayaran.

3.2 Perancangan Sistem

Pada bagian ini akan dibahas mengenai rancangan sistem yang ada pada “Aplikasi Mobile Administrasi Akademik”. Perancangan sistem akan dibagi menjadi beberapa tahapan yaitu : perancangan proses dan perancangan antarmuka (user interface).

3.2.1 Perancangan Proses

Pada perancangan Tugas Akhir ini, menggunakan diagram - diagram UML (Unified Modeling Language) yang bertujuan agar model yang dibuat mendekati realitas dan siap pakai. Software yang digunakan dalam merancang proses adalah Rational Rose Enterprise Edition. Diagram-diagram UML yang digunakan adalah sebagai berikut :


(37)

3.2.1.1 Use Case Diagram

Use case diagram ini akan menggambarkan hubungan actor dengan proses-proses yang menjadi tanggung jawabnya. Dalam use case diagram ini, masing-masing aktor memiliki tanggung jawab masing-masing seperti yang dijelaskan sebagai berikut :

Gambar 3.1 Use CaseDiagra m Aplikasi Mobile Administrasi Akademik

3.2.1.2 Activity Diagram

Activity Diagram merupakan diagram yang memodelkan aliran kerja atau workflow dari urutan aktifitas dalam suatu proses yang mengacu pada use case diagram yang ada. Activity Diagram pada aplikasi Mobile Administrasi Akademik terdiri dari Activity Diagram Login, Activity Diagram View KRS, Activity


(38)

Diagram View Pengajuan KRS, Activity Diagram View Jadwal Kuliah, Activity Diagram View KHS, Activity Diagram View Transkrip, Activity Diagram View Absensi, Activity Diagram View Tagihan, Activity Diagram View Riwayat Pembayaran. Berikut ini penjelasan dari masing-masing Activity Diagram :

Gambar 3.2 Activity Diagram Login

Pada Gambar 3.2 menjelaskan Activity Diagram Login pada Aplikasi Mobile Administrasi Akademik berbasis Android. Pertama pengguna membuka aplikasi lalu sistem akan menampilkan form login, lalu pengguna memasukkan NPM, password, dan menekan tombol login dengan benar sehingga proses login sukses.


(39)

Sebelum sistem menampilkan form login, sistem akan mengecek nomor IMEI dari handphone pengguna. Apabila nomor IMEI sudah tergistrasi maka sistem akan menampilkan form login, jika tidak maka pengguna harus melakukan registrasi terlebih dahulu.

Gambar 3.3 Activity DiagramView KRS

Pada Gambar 3.3 menjelaskan Activity Diagram KRS, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Mata Kuliah yang dipilih oleh pengguna. Lalu pengguna memilih Menu KRS, setelah itu sistem akan menampilkan form KRS kepada pengguna sehingga pengguna mengetahui daftar mata kuliah apa saja yang sudah terdaftar pada KRS.


(40)

Gambar 3.4 Activity Diagram Pengajuan KRS

Pada Gambar 3.4 menjelaskan Activity Diagram Pengajuan KRS, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Mata Kuliah yang dipilih oleh pengguna. Lalu pengguna memilih Menu Pengajuan KRS, setelah itu sistem akan menampilkan form pengajuan KRS kepada pengguna sehingga pengguna dapat mengajukan mata kuliah yang akan dipilih. Jika pengajuan KRS sukses, maka sistem akan menampilkan pengajuan KRS yang telah diajukan oleh pengguna.


(41)

Gambar 3.5 Activity Diagram Jadwal Kuliah

Pada Gambar 3.5 menjelaskan Activity Diagram Jadwal Kuliah, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Mata Kuliah yang dipilih oleh pengguna. Lalu pengguna memilih Menu Jadwal Kuliah, setelah itu sistem akan menampilkan form Jadwal Kuliah kepada pengguna sehingga pengguna mengetahui jadwal kuliahnya.


(42)

Gambar 3.6 Activity Diagram Nilai KHS

Pada Gambar 3.6 menjelaskan Activity Diagram Nilai KHS, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Nilai yang dipilih oleh pengguna. Lalu pengguna memilih Menu KHS. Setelah pengguna memilih, sistem akan menampilkan form KHS dimana user harus memilih daftar KHS semester tertentu yang sudah ditempuh, setelah itu user memilih tombol lihat untuk diproses oleh sistem agar pengguna mendapatkan informasi nilai-nilai KHS per-semester yang telah dipilih oleh pengguna.


(43)

Gambar 3.7 Activity Diagram Nilai Transkrip

Pada Gambar 3.7 menjelaskan Activity Diagram Nilai Transkrip, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Nilai yang dipilih oleh pengguna. Lalu pengguna memilih Menu Transkrip. Setelah pengguna memilih, sistem akan menampilkan form Transkrip sehingga pengguna dapat mengetahui seluruh nilai transkrip mata kuliah yang sudah ditempuh.


(44)

Gambar 3.8 ActivityDiagram Kehadiran Kuliah

Pada Gambar 3.8 menjelaskan Activity Diagram Kehadiran Kuliah, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Kehadiran yang dipilih oleh pengguna. Setelah pengguna memilih, sistem akan menampilkan form presentase kehadiran kuliah sehingga pengguna dapat mengetahui informasi presentase kehadiran kuliah yang sedang ditempuh.


(45)

Gambar 3.9 Activity Diagram Pembayaran

Pada Gambar 3.9 menjelaskan Activity Diagram Pembayaran, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Pembayaran yang dipilih oleh pengguna. Setelah pengguna memilih, sistem akan menampilkan form tagihan sehingga pengguna dapat mengetahui informasi tagihan apakah sudah terbayar atau tidak.


(46)

Gambar 3.10 Activity Diagram Riwayat Pembayaran

Pada Gambar 3.10 menjelaskan Activity Diagram Riwayat Pembayaran, pertama sistem akan menampilkan Menu Utama. Didalam Menu Utama terdapat menu Pembayaran yang dipilih oleh pengguna. Setelah pengguna memilih, sistem akan menampilkan form riwayat pembayaran sehingga pengguna dapat mengetahui informasi tersebut sebagai bukti telah melakukan pembayaran sebelumnya.


(47)

3.2.1.3 Sequence Diagram

Gambar 3.11 Sequence Diagram Aplikasi Mobile Administrasi Akademik

Sequence Diagram pada Gambar 3.11 menunjukkan proses aplikasi mobile administrasi akademik. Proses diawali dengan pengguna menginputkan NPM dan password lalu data yang diminta akan dikirim ke server, setelah itu server merespon data yang diminta lalu dikirim ke aplikasi sehingga pengguna dapat melihat data yang diinginkan.


(48)

3.2.2 Perancangan Kerangka Kerja

Gambar 3.12 Perancangan Kerangka Kerja Aplikasi Mobile Administrasi Akademik

Perancangan kerangka kerja Aplikasi Mobile Administrasi Akademik (Gambar 3.12) terdiri dari 10 tahapan dari mulai aksi yang dilakukan oleh pengguna sampai dengan tampilnya respon data dari server. Adapun penjelasan setiap tahapan dari kerangka kerja aplikasi Aplikasi Mobile Administrasi Akademik adalah sebagai berikut:

1. Pengguna Aplikasi Mobile Administrasi Akademik melakukan aksi baik itu berupa penambahan data maupun permintaan data. Aksi dari pengguna akan diterima oleh komponen XML yang berfungsi sebagai media untuk mengambil aksi dari pengguna.


(49)

2. Hasil aksi dari pengguna yang ditangkap oleh XML kemudian akan disalurkan pada komponen Activity yang berfungsi sebagai controller setiap aksi dari pengguna sebelum akhirnya melakukan permintaan data ke server. 3. Permintaan data dilakukan oleh komponen Activity berdasarkan tipe

permintaan data dari pengguna yaitu mata kuliah, nilai, absensi, info pembayaran.

4. API Siamik akan melakukan permintaan data pada server yang merupakan hasil permintaan data dari komponen Activity dengan menggunakan metode-metode yang terdapat pada API Siamik.

5. Setelah API Siamik melakukan permintaan data pada server dengan menggunakan metode tertentu selanjutnya respon data hasil permintaan akan diunduh dari server oleh API Connections dengan menggunakan format JSON.

6. Format data JSON hasil respon data dari server akan dikirimkan pada komponen Parser yang selanjutnya akan dilakukan pemetaan data format JSON ke dalam objek-objek tertentu sehingga mudah dibaca oleh program. 7. Data hasil pemetaan oleh komponen Parser dikirimkan pada komponen

Entity sebagai penampung data sementara dari server.

8. Data respon dari server yang telah ditampung oleh komponen Entity selanjutnya dikirimkan pada komponen Adapter dalam bentuk objek data. 9. Komponen Adapter bertugas untuk memetakkan setiap baris data yang

diperoleh dari komponen Entity pada komponen XML.

10.Komponen XML akan menampilkan data-data yang telah dipetakkan oleh komponen Adapter ke dalam tampilan (interface) pengguna.

3.2.3 Perancangan Antar Muka (Desain Interface)

Perancangan antarmuka mendeskripsikan rencana tampilan dari setiap form yang akan digunakan pada Aplikasi Mobile Administrasi Akademik. Ada beberapa rancangan desain interface yang dapat dijelaskan sebagai berikut :


(50)

1. Desain Interface Menu Login

Gambaran umum dari perancangan antarmuka form login pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.13.

Gambar 3.13 Desain Interface Menu Login 2. Desain Interface Menu Utama

Gambaran umum dari perancangan antarmuka Menu Utama pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.14.

Gambar 3.14 Desain Interface Menu Utama Login

NPM : Password :

Masuk

KRS

Menu Akademik

Nilai Absensi Info Tagihan


(51)

3. Desain Interface Menu KRS

Gambaran umum dari perancangan antarmuka Menu KRS pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.15.

Gambar 3.15 Desain Interface Menu KRS

4. Desain Interface Pengajuan KRS

Gambaran umum dari perancangan antarmuka KRS pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.16.

Gambar 3.16 Desain Interface Pengajuan KRS

Siamik

Pengajuan KRS

Kelas :

Lihat Mata Kuliah

Kelas Reguler A Pengajuan KRS

Menu KRS

KRS


(52)

5. Desain Interface KRS

Gambaran umum dari perancangan antarmuka KRS pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.17.

Gambar 3.17 Desain Interface KRS 6. Desain Interface Pilih Jadwal Kuliah

Gambaran umum dari perancangan antarmuka Pilih Jadwal Kuliah pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.18.

Gambar 3.18 Desain Interface Pilih Jadwal Kuliah

KRS Saat Ini

1. MK0001 Mobile App. 3 SKS Jumat 08.00-10.00 Ruang : 101 , Gedung Giri Santika Status Kunci : Tidak Terkunci

2. MK0002 Skripsi

4 SKS Selasa 09.00-11.00 Ruang : 101 , Gedung Giri Santika Status Kunci : Tidak Terkunci

Jadwal Kuliah Pilih Hari :

Lihat Jadwal Jumat


(53)

7. Desain Interface Jadwal Kuliah

Gambaran umum dari perancangan antarmuka Jadwal Kuliah pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.19.

Gambar 3.19 Desain Interface Jadwal Kuliah

8. Desain Interface Menu Nilai

Gambaran umum dari perancangan antarmuka KHS pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.20.

Gambar 3.20 Desain Interface Menu Nilai Jadwal Kuliah Hari Jumat

1. MK0001 Mobile App.

3 SKS Jumat

08.00-10.00

Ruang : 101 , Gedung Giri Santika

KHS

Menu Nilai


(54)

9. Desain Interface KHS

Gambaran umum dari perancangan antarmuka KHS pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.20.

Gambar 3.20 Desain Interface KHS

10.Desain Interface Detail KHS

Gambaran umum dari perancangan antarmuka Transkrip pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.21.

Gambar 3.21 Desain Interface Detail KHS KHS

Pilih Semester :

Lihat KHS Semester Aktif

Detail KHS

1. MK0001 Mobile App. 3 SKS Nilai A IPS : 2,85

2. MK0002 B. Pemrograman 3 SKS Nilai B-

3. MK0004 Kalkulus I 3 SKS Nilai B-

4. MK0005 ADBO 3 SKS Nilai B-


(55)

11.Desain Interface Transkrip

Gambaran umum dari perancangan antarmuka Transkrip pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.22.

Gambar 3.22 Desain Interface Transkrip

12.Desain Interface Absensi

Gambaran umum dari perancangan antarmuka Absensi pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.23.

Gambar 3.23 Desain Interface Absensi

Transkrip

1. MK0001 Mobile App. 3 SKS Nilai A Indeks Prestasi : 3,00 SKS Kumulatif : 80

2. MK0002 B. Pemrograman 3 SKS Nilai B-

3. MK0003 Kalkulus I 3 SKS Nilai B-

Absensi

1. MK0001

Mobile App. 3 SKS Presentase Kehadiran 75 %

2. MK0002

B. Pemrograman 3 SKS Presentase Kehadiran 80 %

3. MK0003

Kalkulus I 3 SKS Presentase Kehadiran 70 %


(56)

13.Desain Interface Tagihan

Gambaran umum dari perancangan antarmuka Pembayaran pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.24.

Gambar 3.24 Desain Interface Tagihan

14.Desain Interface Riwayat Pembayaran

Gambaran umum dari perancangan antarmuka Riwayat Pembayaran pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.25.

Gambar 3.25 Desain Interface Riwayat Pembayaran

Tagihan

Jumlah Penagihan : Rp. 575.000 Total Tagihan : Rp. 575.000

Riwayat Pembayaran Tahun Ajaran:

Lihat TA. 2012/2013


(57)

15.Desain Interface Detail Riwayat Pembayaran

Gambaran umum dari perancangan antarmuka Riwayat Pembayaran pada Aplikasi Mobile Administrasi Akademik dapat dilihat pada Gambar 3.26.

Gambar 3.26 Desain Interface Detail Riwayat Pembayaran Riwayat Pembayaran

Tanggal Pembayaran : 12/11/2012


(58)

67

Pada bab ini akan membahas tentang implementasi program dari hasil analisa dan perancangan sistem yang ada pada bab III, serta bagaimana cara sistem tersebut dijalankan. Adapun pembahasan implementasi terdiri dari perangkat keras, perangkat lunak, dan penulisan kode program

4.1. Perangkat Keras

Dalam menerapkan dari rancangan yang telah dijelaskan sebelumnya dibutuhkan beberapa perangkat keras untuk menyajikan aplikasi ini. Adapun alat-alat yang dibutuhkan adalah :

1. Handphone Berbasiskan Sistem Operasi Android

Handphone digunakan untuk menjalankan program aplikasi yang telah dikembangkan. Adapun handphone yang digunakan adalah sebagai berikut :

Gambar 4.1 Samsung Galaxy W

Type Handphone : Samsung Galaxy W


(59)

Memory : 512 MB RAM, 2 GB ROM

Dimensi layar : 480 x 800 pixels, 3.7 inches

Procesor : 1.4 GHz Scorpion processor, Adreno 205 GPU

Masukkan : Touch screen kapasitif, keyboard QWERTY, trackball

Konektivitas : Wi-Fi 802.11 b/g/n, Wi-Fi hotspot 2. Kabel data serial port

Fungsi dari kabel data ini adalah untuk menghubungkan antara PC dengan Handphone.

3. Satu unit PC dengan spesifkasi

 Laptop hp G42 Processor Intel Core i3-380M 2.53 GHz

 RAM 4 GB

 Harddisk 320 GB 2.5 inch 5400 rpm

 Monitor LCD 14”

 Keyboard dan Mouse

4.2 Perangkat Lunak

Dalam menerapkan rancangan yang telah dibuat, dibutuhkan beberapa software untuk membuat aplikasi mobile administrasi akademik yaitu:

1) Bahasa Pemrograman Java

Dalam hal ini digunakan Java Development Kit (JDK) 1.6 dan Java Runtime Environment (JRE).


(60)

2) Sistem Operasi

Untuk penggunaan sistem operasi dapat digunakan Windows Vista atau Seven (32 atau 64 bit), Mac OS X 10.4.8 atau diatasnya, dan Linux.

3) Integrated Development Environment (IDE) Intellij IDEA 11.12

Untuk memudahkan dalam pengembangan aplikasi, maka digunakan IDE karena memiliki beberapa fasilitas yang diperlukan dalam pembangunan perangkat lunak. Adapun dalam pengembangan ini digunakan Intellij IDEA 11.12 dikarenakan telah mendukung Android Development Tools.

4) Android Software Development Kit (Android SDK)

Android SDK mencakup perangkat tools pengembangan yang komprehensif. Android SDK terdiri dari debugger, libraries, handset emulator, dokumentasi, contoh kode program dan tutorial. Saat ini Android sudah mendukung arsitektur x86 pada Linux (distribusi Linux apapun untuk desktop modern), Mac OS X 10.4.8 atau lebih, Windows Vista atau Seven. Persyaratan mencakup JDK, Apache Ant dan Python 2.2 atau lebih. IDE yang didukung secara resmi adalah Intellij IDEA 11.12 atau lebih dengan menggunakan plugin Android Development Tools (ADT).

5) Android Development Tools (ADT)

Android Development Tools (ADT) adalah plugin untuk Intellij IDEA yang dirancang untuk memberikan lingkungan yang terintegrasi yang kuat di mana untuk membangun aplikasi Android. ADT memperluas kemampuan Intellij IDEA untuk membiarkan Anda cepat membuat proyek baru Android, membuat UI aplikasi, menambahkan komponen berdasarkan Android


(61)

Kerangka API, debug aplikasi Anda menggunakan Android SDK alat, dan bahkan ekspor ditandatangani (atau unsigned). File APK untuk mendistribusikan aplikasi Anda. Berkembang di Intellij IDEA dengan ADT sangat dianjurkan dan merupakan cara tercepat untuk memulai. Dengan setup proyek dipandu menyediakan, serta integrasi alat, XML kustom editor, dan panel keluaran debug, ADT memberikan Anda sebuah peningkatan luar biasa dalam mengembangkan aplikasi Android.

4.3 Penulisan Kode Program

Pada tahap ini akan dijelaskan tentang implementasi antarmuka dari aplikasi berdasarkan perancangan yang telah dibahas pada bab III. Pada system ini terdapat beberapa sub-sub menu yang akan dijelaskan lebih lanjut.

4.3.1 Menu Utama

Pembuatan tampilan antarmuka pada sistem Android di impelmentasikan dalam bentuk XML. Setiap element dalam tampilan antarmuka perlu ditambahkan atribut pengenal, sehingga element tersebut akan di generate dalam kelas Resource dan memudahkan untuk digunakan pada kelas yang memerlukan. Adapun kode antarmuka tampilan menu utama adalah sebagai berikut :

public class MenuUtama extends ListActivity {

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.menuutama);

String[] listItems = new String[] { "KRS", "Nilai", "Absensi", "Info Tagihan" };


(62)

MyArrayAdapter adapter = new MyArrayAdapter(this, listItems);

setListAdapter(adapter);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater inflater = getMenuInflater();

inflater.inflate(R.layout.menu, menu);

menu.findItem(R.id.menu_about).setIcon(android.R.drawable.ic_menu_info_details);

menu.findItem(R.id.menu_exit).setIcon(android.R.drawable.ic_menu_close_clear_c ancel);

return super.onCreateOptionsMenu(menu);

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

switch(item.getItemId()) {

case R.id.menu_about: {

onDialogAbout();

return true;

}

case R.id.menu_exit: {

finish();

return true;

}

default:

return super.onOptionsItemSelected(item);

}

}

}


(63)

Pada menu pengajuan kartu rencana studi berfungsi untuk menampilkan kelas dan meng-entry data KRS. Dimana nantinya pengguna dapat memilih kelas dan mata kuliah yang telah tersedia. Adapun kode antarmuka tampilan menu pengajuan kartu rencana studi adalah sebagai berikut :

public class MenuSubKRSPengajuan2 extends Activity {

private String KodeKelas, KodeMK;

private boolean status;

private JSONArray jArray;

private ListView KRSList;

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.pengajuankrs2);

Bundle extras = getIntent().getExtras();

KodeKelas = extras.getString("KodeKelas");

setTitle("Daftar Mata Kuliah Kelas "+KodeKelas);

doService task = new doService();

task.execute();

}

private class doService extends AsyncTask<String, Void, String> {

@Override

protected String doInBackground(String... urls) {

return new ServiceHelper().getScheduleKRS(KodeKelas);

}

@Override

protected void onPostExecute(String result) {

ArrayList<HashMap<String, String>> listmk = new ArrayList<HashMap<String, String>>();

try {

JSONObject jKRS = new JSONObject(result);

jArray = jKRS.getJSONArray("KodeSchedulleKRS");


(64)

JSONObject r = jArray.getJSONObject(i);

HashMap<String, String> map = new HashMap<String, String>();

map.put("No", Integer.toString(i + 1)+".");

map.put("KodeMK", r.getString("kodeMtKuliah")+" : ");

map.put("NamaMK", r.getString("NamaMtKuliah")+" - ");

map.put("SKS", r.getString("sks")+" SKS");

map.put("Ruang", "Ruang: "+r.getString("ruang")+", ");

map.put("Hari", r.getString("hari")+", ");

map.put("JamAwal", r.getString("JamAwal")+" s/d ");

map.put("JamAkhir", r.getString("JamAkhir"));

listmk.add(map);

}

} catch (JSONException e) {

e.printStackTrace();

}

ListAdapter adapter = new SimpleAdapter(MenuSubKRSPengajuan2.this, listmk,

R.layout.pengajuankrslist,

new String[] { "No", "KodeMK", "NamaMK", "SKS", "Ruang", "Hari", "JamAwal", "JamAkhir" }, new int[] {

R.id.pkrs_no, R.id.pkrs_kodemk, R.id.pkrs_namamk, R.id.pkrs_sks, R.id.pkrs_ruang, R.id.pkrs_hari, R.id.pkrs_jamawal, R.id.pkrs_jamakhir });

KRSList = (ListView)

MenuSubKRSPengajuan2.this.findViewById(R.id.pengajuankrslist);

KRSList.setAdapter(adapter);

KRSList.setOnItemClickListener(new AdapterView.OnItemClickListener() {

@Override

public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

KodeMK = ((TextView)

view.findViewById(R.id.pkrs_kodemk)).getText().toString(); new addKRS(); } }); } }


(65)

private class addKRS extends AsyncTask<String, Void, String> {

@Override

protected String doInBackground(String... strings) {

return new ServiceHelper().addKRS(KodeKelas,KodeMK);

}

@Override

protected void onPostExecute(String result) {

String message;

try {

JSONObject jAdd = new JSONObject(result);

if(jAdd.getString("status").equals("1")) { message = "Penambahan Mata Kuliah Berhasil"; status=true;}

else {message = "Penambahan Mata Kuliah Gagal"; status=false;}

AlertDialog addStatus = new

AlertDialog.Builder(MenuSubKRSPengajuan2.this).create();

addStatus.setTitle("Status");

addStatus.setMessage(message);

addStatus.setButton(DialogInterface.BUTTON_POSITIVE, "OK", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {

if(status==true) finish();

else return;

}

});

addStatus.show();

} catch (JSONException e) {

e.printStackTrace();

}

}

}

}


(66)

Pada menu kartu rencana studi berfungsi untuk menampilkan KRS yang sedang ditempuh. Dimana nantinya pengguna dapat mengetahui mata kuliah apa saja yang sedang ditempuh saat itu. Adapun kode antarmuka tampilan menu kartu rencana studi adalah sebagai berikut :

public class MenuSubKRS extends ListActivity {

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.menuutama);

String[] listItems = new String[] { "Pengajuan KRS", "KRS", "Jadwal Kuliah" };

MyArrayAdapter adapter = new MyArrayAdapter(this, listItems);

setListAdapter(adapter);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

MenuInflater inflater = getMenuInflater();

inflater.inflate(R.layout.menu, menu); menu.findItem(R.id.menu_about).setIcon(android.R.drawable.ic_menu_info_details); menu.findItem(R.id.menu_exit).setIcon(android.R.drawable.ic_menu_close_clear_cancel); return super.onCreateOptionsMenu(menu); } @Override

public boolean onOptionsItemSelected(MenuItem item) {

switch(item.getItemId()) {

case R.id.menu_about: {

onDialogAbout();

return true;

}

case R.id.menu_exit: {

finish();

return true;


(67)

default:

return super.onOptionsItemSelected(item);

}

}

}

4.3.4 Menu Jadwal Kuliah

Pada menu jadwal kuliah berfungsi untuk menampilkan jadwal kuliah berdasarkan hari yang dipilih. Dimana nantinya pengguna dapat mengetahui hari-hari jadwal kuliah. Adapun kode antarmuka tampilan menu jadwal kuliah adalah sebagai berikut :

public class MenuSubKRSJadwal2 extends Activity {

private String NamaHari;

private boolean status;

private JSONArray jArray;

private ListView KRSList;

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.jadwal2);

Bundle extras = getIntent().getExtras();

NamaHari = extras.getString("NamaHari");

setTitle("Jadwal Kuliah Hari "+NamaHari);

doService task = new doService();

task.execute();

}

private class doService extends AsyncTask<String, Void, String> {

@Override

protected String doInBackground(String... urls) {


(68)

}

@Override

protected void onPostExecute(String result) {

ArrayList<HashMap<String, String>> listmk = new ArrayList<HashMap<String, String>>();

try {

JSONObject jKRS = new JSONObject(result);

jArray = jKRS.getJSONArray("KodeSchedulleKRS");

for(int i=0;i<jArray.length();i++){

JSONObject r = jArray.getJSONObject(i);

HashMap<String, String> map = new HashMap<String, String>();

map.put("No", Integer.toString(i + 1)+".");

map.put("KodeMK", r.getString("kodeMtKuliah")+" : ");

map.put("NamaMK", r.getString("NamaMtKuliah")+" - ");

map.put("SKS", r.getString("sks")+" SKS");

map.put("Ruang", "Ruang: "+r.getString("ruang")+", ");

map.put("Hari", r.getString("hari")+", ");

map.put("JamAwal", r.getString("JamAwal")+" s/d ");

map.put("JamAkhir", r.getString("JamAkhir"));

listmk.add(map);

}

} catch (JSONException e) {

e.printStackTrace();

}

ListAdapter adapter = new SimpleAdapter(MenuSubKRSPengajuan2.this, listmk,

R.layout.pengajuankrslist,

new String[] { "No", "KodeMK", "NamaMK", "SKS", "Ruang", "Hari", "JamAwal", "JamAkhir" }, new int[] {

R.id.pkrs_no, R.id.pkrs_kodemk, R.id.pkrs_namamk, R.id.pkrs_sks, R.id.pkrs_ruang, R.id.pkrs_hari, R.id.pkrs_jamawal, R.id.pkrs_jamakhir });

KRSList = (ListView)

MenuSubKRSPengajuan2.this.findViewById(R.id.pengajuankrslist);

KRSList.setAdapter(adapter);

KRSList.setOnItemClickListener(new AdapterView.OnItemClickListener() {


(69)

public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

KodeMK = ((TextView)

view.findViewById(R.id.pkrs_kodemk)).getText().toString();

new addKRS();

}

});

}

}

}

4.3.5 Menu Kartu Hasil Studi

Pada menu jadwal kuliah berfungsi untuk menampilkan jadwal kuliah berdasarkan hari yang dipilih. Dimana nantinya pengguna dapat mengetahui hari-hari jadwal kuliah. Adapun kode antarmuka tampilan menu jadwal kuliah adalah sebagai berikut :

public class MenuSubNilai extends ListActivity {

private String NPM;

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.menuutama);

Bundle extras = getIntent().getExtras();

NPM = extras.getString("NPM");

String[] listItems = new String[] { "KHS", "Transkrip" };

MyArrayAdapter adapter = new MyArrayAdapter(this, listItems);

setListAdapter(adapter);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {


(1)

92

5.2.5 Uji Coba Absensi

Gambar 5.12 Uji Coba Absensi Semester Aktif

Pada Gambar 5.12 menjelaskan uji coba absensi dari semester aktif, dimana pengguna dapat mengetahui informasi presentasi kehadirah kuliah yang sedang diambil pada semester aktif.

5.2.6 Uji Coba Menu Info Tagihan


(2)

Pada Gambar 5.13 menjelaskan uji coba dari menu info tagihan yang di dalamnya terdapat menu tagihan dan riwayat pembayaran. Apabila pengguna memilih menu tagihan akan muncul tampilan sebagai berikut :

Gambar 5.14 Uji Coba Tagihan Semester Aktif

Pada gambar 5.14 menjelaskan informasi tagihan yang ada pada semester aktif. Selain itu pengguna juga dapat mengetahui info riwayat pembayaran yang akan dijelaskan pada Gambar 5.15 sebagai berikut :


(3)

94

Pada Gambar 5.15 menjelaskan uji coba pembayaran berdasarkan tahun ajaran. Pengguna akan memilih tahun ajaran mana yang akan dilihat, setelah itu pengguna memilih tombol Lihat Riwayat Pembayaran. Maka akan muncul tampilan sebagai berikut :

Gambar 5.16 Uji Coba Riwayat Pembayaran

Pada Gambar 5.16 menjelaskan riwayat pembayaran yang telah dibayar oleh pengguna. Uji Coba Riwayat Pembayaran ini merupakan bukti bahwa pengguna telah melunasi tagihan pada tahun ajaran yang di pilih.


(4)

95

PENUTUP

6.1 KESIMPULAN

Setelah dilakukan uji coba dari Aplikasi Mobile Administrasi Akademik UPN “Veteran” Jawa Timur ini, maka dapat diambil kesimpulan :

1) Aplikasi Mobile Administrasi Akademik berbasis Android yang dibangun sebagian besar telah mewakili fitur-fitur yang terdapat pada Sistem Informasi Akademik (SIAMIK) versi web.

2) Aplikasi Mobile Administrasi Akademik berbasis Android yang dibangun telah memenuhi kebutuhan pengguna akan internet yang cepat untuk mengakses fasilitas online pada Siamik.

3) Aplikasi mobile Kampus Online berbasis Android telah mendukung pengembangan API Kampus ke arah aplikasi mobile dengan library yang lengkap.

6.2 SARAN

Aplikasi Mobile Administrasi Akademik berbasis Android yang dibangun merupakan pengembangan pertama fasilitas-fasilitas Siamik pada platform mobile sebagai native application. Oleh sebab itu perlu dilakukan pengembangan-pengembangan ke arah yang lebih baik guna memenuhi kebutuhan pengguna yang semakin bertambah. Adapun saran-saran terhadap pengembangan aplikasi Mobile Administrasi Akademik ke depan adalah sebagai berikut :


(5)

96

1) Memperlengkap fitur-fitur yang terdapat pada Siamik, yaitu berita terkini, informasi program studi, daftar dosen, jadwal akademik, peta kampus, kritik dan saran.

2) Meningkatkan performansi aplikasi dengan memperhatikan penggunaan resource yang berlebih, algoritma parsing data, serta kecepatan pengaksesan data dari server.

3) Mengembangkan aplikasi Siamik yang telah terintegrasi dengan Kartu Rencana Studi (KRS), Kartu Hasil Studi (KHS) dan Transkrip Nilai tidak hanya pada platform Android tetapi juga pada platform lainnya.


(6)

[1] (http://agusbarupunyablog.blogspot.com/2010/10/pengertian-aplikasi mobile.html, diakses tanggal 1 September 2012)

[2] (http://belajar-komputer-mu.com/pengertian-pemrograman-java-kelebihan-dan-kekurangan, diakses tanggal 1 September 2012)

[3] (http://pemudaindonesiabaru.blogspot.com/2012/09/pengertian-android-dan-fungsinya.html, diakses tanggal 1 September 2012)

[4] (http://www.scribd.com/doc/52982287/PENGERTIAN-FRAMEWORK, diakses tanggal 1 November 2012)

[5] (http://www.ipangsan.web.id/api-application-program-interface.html, diakses tanggal 1 September 2012)

[6] Ir.Yuniar Supardi. “Semua Bisa Menjadi Programmer Android”, Penerbit Elex

Media Komputindo, Jakarta, 2011.

[7] Nazruddin Safaat H. “Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android”, Penerbit Informatika Bandung, 2011.

[8] Priyatna F. “Pemrograman Android untuk Pemula”, Penerbit Buku Pembuka Cakrawala, Jakarta, 2011.

[9] Sholiq, “Pemodelan Sistem Informasi Berorientasi Objek dan UML, Penerbit Graha Ilmu, Jakarta, 2006.