Disusun Oleh :
PUTRO SUCIANTO
DBC 116 047
DOSEN PEMBIMBING :
Ade Chandra Saputra, S.Kom., M.Cs.
NIP. 19870203 201404 1 001
Puji syukur kehadirat Tuhan Yang Maha Kuasa atas segala limpahan berkah
dan kuasa-Nya sehingga saya dapat menyelesaikan penyusunan proposal
"Aplikasi Informasi Kehadiran Dosen Pada Mata Kuliah" dalam bentuk maupun
isinya yang sangat sederhana. Semoga laporan ini dapat memenuhi tugas mata
kuliah Program Profesional.
Saya mengucapkan terima kasih banyak semua pihak yang telah membantu
sehingga laporan ini dapat diselesaikan. Pada laporan ini saya akui masih banyak
kekurangan karena pengalaman yang saya miliki masih minim. Oleh karena itu
saya harapkan kepada para pembaca untuk memberikan kritik dan saran yang
bersifat membangun demi kesempurnaan laporan ini.
PUTRO SUCIANTO
DBC 116 047
APLIKASI INFORMASI KEHADIRAN DOSEN
PADA MATA KULIAH
Abstrak
Informasi terkait kehadiran dosen pada mata kuliah merupakan hal yang
sangat penting bagi mahasiswa. Dalam memberikan informasi terkait kehadiran
dosen pada mata kuliah kepada mahasiswa masih menggunakan cara manual.
Oleh karena itu, diperlukan aplikasi yang dapat menginformasikan informasi
terkait kehadiran dosen pada mata kuliah kepada mahasiswa dan
mengirimkannya dalam bentuk notification di ponsel android masing-masing.
Pembuatan aplikasi pembertitahuan terkait kehadiran dosen ini dilakukan
dengan cara pengumpulan data, analis sistem, perancangan sistem, dan
implementasi sistem. Aplikasi ini dibuat dengan menggunakan Bahasa
pemrogaman Java (Android Studio) dan PHP dab MySQL untuk pengelolaan
database.
Sebagai hasil dari penelitian ini adalah dibuatnya aplikasi informasi
kehadiran dosen pada mata kuliah yang memiliki fasilitas seperti : mengelola data
dosen, mengelola data mahasiswa, mengirimkan informasi terkait kehadiran dosen
kepada mahasiswa sesuai NIM yang sudah didaftarkan sebelumnya oleh
mahasiswa. Dengan adanya aplikasi ini, diharapkan mahasiswa akan lebih mudah
dan cepat dalam mendapatkan informasi terkait kehadiran dosen pada mata kuliah.
Kata Kunci :
DAFTAR ISI
DAFTAR TABEL
DAFTAR GAMBAR
BAB I
PENDAHULUAN
2. Fase Perancangan
Pada tahap ini dilakukan perancangan proses-proses yang akan
terjadi dalam sistem dan perancangan antar muka. Pada perancangan
proses-proses digunakan UML (Unified Modeling Language) yakni
dengan membuat use case diagram, activity diagram, dan class
diagram.
3. Fase Konstruksi
Pada tahap ini dilakukan pembuatan program terhadap
rancangan-rancangan yang telah didefinisikan. Pembuatan program
yang dilakukan menggunakan Bahasa pemrograman PHP dan Java
(Android Studio), Android Studio dan Android SDK untuk membuat
aplikasi dan Firebase Cloud Messaging layanan pesan
pemberitahuan mengirimkan informasi dalam bentuk push
notification secara Real Time.
4. Fase Pelaksanaan
Pada tahap ini dilakukan pengujian terhadap sistem. Untuk uji
aplikasi dilakukan dengan menggunakan metode blackbox.
1.7 SISTEMATIKA PENULISAN
Penulisan laporan Program Profesional ini disusun dalam lima bab yang
terdiri atas Pendahuluan, Landasan Teori, Analisis dan Desain, Implementasi,
dan Pengujian, dan Penutup. Berikut adalah susunan sistematikan penulisan
laporan:
BAB I PENDAHULUAN
Dalam bab ini diuraikan latar belakang masalah, rumusan masalah, ruang
lingkup, tujuan dan manfaat, metodologi pengembangan perangkat lunak,
sistematika penulisan dan jadwal kegiatan.
BAB IV IMPLEMENTASI DA
Dalam Bab ini menampilkan hasil pembuatan program dan menjelaskan
bagaiaman program ini dijalankan/digunakan.
BAB V PENUTUP
Dalam bab ini berisi Kesimpulan dan Saran dari aplikasi yang dibuat.
1.8 JADWAL KEGIATAN
2. Application Framework
Android adalah Open Development Platform yaitu android
menawarkan kepada pengembang untuk membangun aplikasi yang
bagus dan inovatif. Pengembang bebas untuk mengakses perangkat
keras, akses informasi resources, menjalankan service background
dan sebagainya. Sehingga bisa kita simpulkan Application
Framework ini adalah layer yang dapat memungkinkan kita
melakukan pengembangan/pembangunan aplikasi yang dapat
dijalankan pada sistem operasi android.
Application framework menyediakan berbagai class yang
digunakan untuk membuat aplikasi android. Termasuk juga
berhubungan dengan akses ke hardware dan manajemen user-
interface dan manajemen memori.
3. Libraries
Libraries ini adalah layer dimana fitur-fitur android berada. Para
pembuat aplikasi dapat mengakses libraries untuk menjalankan
aplikasinya. Berjalan di atas kenel yang didalamnya terdapat
kumpulan library C dan C++ seperti Libc dan SSL, dan juga:
a. Library media untuk pemutaran media audio dan video,
b. Library untuk manajemen tampilan
c. Library Graphics mencakup SGL dan OpenGL untuk grafis 2D
dan 3D,
d. Library SQLite untuk dukungan database,
e. Library LiveWebcore mencakup modern web browser dengan
engine embedded web view,
f. Library SSL dan WebKit untuk integrasi web browser dan
keamanan internet.
4. Android Runtime
Terdiri dari Core Libraries dan Dalvik Virtual Machine (DVM).
Core Libraries ini meliput serangakaian library Java yang terdiri dari
berbagai macam fungsi dasar pada bahasa pemrograman Java,
sedangkan DVM merupakan Java Virtual Machine (semacam JVM
pada Java ME) yang secara khusus dijalankan pada android. DVM
dapat mengeksekusi file dengan format Dalvik Excutable (*.dex)
yang telah dioptimasi dengan menggunakan memori yang minimal.
DVM telah di-register dan menjalankan berbagai class yang di-
compile menggunakan compiler Java yang kemudian ditransformasi
menjadi format *.dex dengan menggunakan ‘dx’ tool. DVM
menggunakan kerlel linux untuk menjalankan berbagai fungsi seperti
threading dan manajemen memori.
5. Linux Kernel
Linux kernel adalah layer dimana ini dari sistem operasi dari
android itu berada. Berisi file-file sistem yang mengatur sistem
processing, memory, resource, drivers, dan sistem-sistem lainnya.
Linux kernel yang digunakan android adalah linux kernel 2.6
(www.kernel.org).
3. Content Provider
Menyediakan cara untuk mengakses data yang dibutuhkan oleh
suatu activity, misalnya kita menggunakan applikasi berbasis peta
(MAP). Activity membutuhkan cara untuk mengakses data kontak
untuk prosedur navigasi dan disinilah peran content providers.
Intinya content provider digunakan dalam aplikasi untuk sharing
data (berhubungan dengan database).
4. Resource
Resource digunakan untuk menyimpan file-file non-coding yang
diperlukan pada sebuah aplikasi misalnya file icon, file gambar, file
audio, file video atau yang lain. Gambar berformat JPG atu PNG
sebuah aplikasi biasanya disimpan dalam folder res/drawable, icon
applikasi disimpan dalam res/drawable-ldpi dan file audio disimpan
dalam folder res/raw. File XML untuk membentuk sebuah user
interface disimpan dalam folder res/layout.
5. Views
Digunakan untuk membangun antarmuka pengguna untuk
komponen activity yang akan digunakan.
6. Notification
Digunakan untuk mekanisme sinyal ke pengguna secara
insidentil sesuai dengan waktu yang telah ditentukan. Contohnya
pemberitahuan dalam bentuk getar atau lampu ketika zona waktu
berubah, batrai low dan lain-lain.
Struktur proyek Android pada disk berbeda dari representasi rata ini.
Untuk melihat struktur file sebenarnya dari proyek ini, pilih Project dari
menu tarik turun Project (dalam gambar 1, struktur ditampilkan sebagai
Android).
3. Fase Kontruksi
Pada fase ini setiap desain yang diciptakan dalam fase sebelumnya
selanjutnya ditingkatkan untuk dilakukan pengkodean sistem. Kemudian
setelah tahap ini selesai dilakukan uji kemampuan untuk mendapatkan
komentar, dan revisi dari pengguna tingkat tinggi.
4. Fase Pelaksanaan
Tahap terakhir adalah dimana aplikasi baru diuji coba dan pengenalan
terhadap aplikasi.
Gambar 2.6 Fase RAD Martin (Kendal & Kendal, 2003:238)
Menurut Butler (Pressman 2002: 41), seperti semua model proses yang
lain, pendekatan RAD memiliki kekurangan :
1. Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya
manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.
2. RAD menurut pengembang dan pelanggan memiliki komitmen di dalam
aktifitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di
dalam kerangka waktu yang sangat diperpendek. Jika komitmen tersebut
tidak ada dari tiap kontituen, proyek RAD akan gagal.
2.4 Firebase
Firebase adalah BaaS (Backend as a Service) yang saat ini dimiliki oleh
Google. Firebase ini merupakan solusi yang ditawarkan oleh Google untuk
mempermudah pekerjaan Mobile Apps Developer. Dengan adanya Firebase,
apps developer bisa fokus mengembangkan aplikasi tanpa harus memberikan
effort yang besar untuk urusan backend. Beberapa fitur yang dimiliki oleh
Firebase adalah sebagai berikut :
1. Firebase Authentication
Sebagian besar aplikasi tentu membutuhkan autentikasi untuk
mengetahui identitas pengguna. Mengetahui identitas pengguna
memungkinkan aplikasi untuk secara aman menyimpan data pengguna di
cloud dan memberikan pengalaman pribadi yang sama di semua perangkat
pengguna. Firebase menyediakan layanan backend, SDK yang mudah
digunakan dan pustaka siap pakai untuk mengautentikasi pengguna ke
aplikasi. Saat ini Firebase mendukung autentikasi menggunakan sandi,
sosial media popular seperti Google, Facebook, Twitter dan lainnya.
Ujicoba autentikasi yang dilakukan pada penelitian ini menggunakan email
dan kata sandi.
a. Registrasi
Ketika pengguna pertama sekali mengakses aplikasi, maka akan
ditampilkan formulir registrasi sederhana dengan meminta pengguna
tersebut memasukkan email dan kata sandi. Secara otomatis setelah
proses registrasi selesai, maka pengguna tersebut masuk ke aplikasi.
b. Login
Pengguna yang telah berhasil melakukan registrasi, maka ia bisa login
ke aplikasi menggunakan email dan kata sandi tersebut.
c. Logout
Logout atau keluar dari aplikasi.
3. Firebise Storage
Firebase Storage digunakan untuk menyimpan data seperti gambar,
audio dan video. Sebagian aplikasi pasti menggunakan file gambar, audio
atau video. Adanya Firebase Storage sangat memudahkan proses
unggahan dan unduhan untuk aplikasi. Beberapa kelebihan utama dari
Firebase Storage adalah sebagai berikut:
a. Strong
Firebase Storage dapat melakukan unggahan dan unduhan file di semua
kualitas jaringan internet. Ia dapat berhenti atau melanjutkan, sehingga
menghemat waktu dan badwidth pengguna.
b. Secure
Firebase Storage terintegrasi dengan Firebase Authentication untuk
menyediakan autentikasi yang mudah dan intuitif untuk pengembang.
Model keamanan dapat diatur berdasarkan nama file, ukuran, tipe
konten dan metadata lainnya.
c. Scalable
Firebase Storage didukung oleh Google Cloud Storage hingga skala
petabyte. Ini sangat penting, ketika aplikasi yang dari prototipe
kemudian berkembang viral dengan jutaan pengguna.
Proses unggahan ke storage dapat dilakukan melalui aplikasi
pengguna menggunakan AngularJS. Ini lebih mudah diimplementasikan
karena tidak perlu menggunakan pemrograman berbasis server seperti
PHP atau ASP. Ketika file telah berhasil diunggah ke storage, maka akan
mengembalikan link unduhan (download link) yang dapat disimpan ke
Firebase Database.
2.6 Flowchart
Dalam membuat algoritma, diperlukan suatu mekanisme atau alat bantu
untuk menuangkan hasil pemikiran mengenai langkahlangkah penyelesaian
masalah yang sistematis dan terurut. Pada dasarnya untuk bisa menyusun
solusi diperlukan kemampuan problemsolving yang baik. Oleh karena itu,
sebagai sarana untuk melatih kemampuan tersebut terdapat sebuah tool (alat)
yang dapat digunakan, yakni flowchart.
Secara formal, flowchart didefinisikan sebagai skema penggambaran dari
algoritma atau proses. Tabel berikut menampilkan simbol-simbol yang
digunakan dalam menyusun flowchart.
Tabel 2.2 Simbol-simbol dalam flowchart
Terminator
Sebagai simbol ‟START‟ atau
‟END‟ untuk memulai atau
mengakhiri flowchart.
Input/Output
Digunakan untuk menuliskan
proses menerima data atau
mengeluarkan data
Manual Input
Digunakan untuk menunjukkan
input data secara manual
menggunakan online keyboard.
Proses
Digunakan untuk menuliskan
proses yang diperlukan, misalnya
operasi aritmatika
Manual Operation
Digunakan untuk menunjukkan
kegiatan/proses yang tidak
dilakukan oleh komputer.
Conditional / Decision
Digunakan untuk menyatakan
proses yang membutuhkan
keputusan.
Prepation
Digunakan untuk memberikan
nilai awal.
Arrow
Sebagai penunjuk arah dan alur
proses.
Connector (On-page)
Digunakan untuk menyatukan
beberapa arrow.
Connector (Off-page)
Digunakan untuk menghubungkan
flowchart yang harus digambarkan
pada halaman yang berbeda.
Biasanya pada simbol ini diberi
nomor sebagai penanda, misalnya
angka 1.
Display
Digunakan untuk menampilkan
data ke monitor.
Predefined Process
merupakan simbol yang digunakan
untuk menunjukkan pelaksanaan
suatu bagian prosedur (sub-
proses). Dengan kata lain, prosedur
yang terinformasi di sini belum
detail dan akan dirinci di tempat
lain.
Document
Jika Anda menemukan simbol ini
artinya input berasal dari dokumen
dalam bentuk kertas, atau output
yang perlu dicetak di atas kertas.
Multiple Documents
sama seperti document symbol
hanya saja dokumen yg digunakan
lebih dari satu dalam simbol ini.
Delay
Sesuai dengan namanya digunakan
untuk menunjukkan proses delay
(menunggu) yang perlu dilakukan.
Seperti menunggu surat untuk
diarsipkan dll.
Database
Berikut ini adalah contoh flowchart untuk menggambarkan kegiatan
membuat telur dadar:
Kelas
Sama seperti konsep interface dalam
pemrograman berorientasi objek.
BAB III
ANALISIS DAN DESAIN
Pada bab ini akan dijelaskan mengenai fase perencanaan syarat-syarat dan
fase perancangan.
3.1.2 Tujuan
Peneliti bertujuan untuk membuat suatu aplikasi informasi
kehadiran dosen pada mata kuliah yang dapat mengirimkan informasi
terkait ketidakhadiran dosen hanya melalui ponsel android dimana saja
dan kapan saja dengan menggunakan internet, sehingga proses
informasi ketidakhadiran dosen kepada mahasiswa menjadi mudah dan
cepat.
3.1.3 Syarat-Syarat
Untuk mewujudkan tujuan tersebut dibutuhkan beberapa syarat
dalam pembuatan aplikasi informasi kehadiran dosen pada mata kuliah
ini yaitu meliputi hal-hal sebagai berikut :
Bahasa pemrograman dibutuhkan untuk dapat membangun sebuah
aplikasi, agar computer dapat melakukan berbagai operasi dann fungsi
sesuai dengan keinginan user. Bahasa pemrograman untuk
pengembangan aplikasi ini adalah java (Android Studio) dan PHP.
Spesifikasi perangkat lunak dan perangkat keras yang digunakan
dalam pembuatan aplikasi ini adalah sebagai berikut :
1. Perangkat Lunak :
a. Android Studio
b. Notepad++
2. Perangkar Keras :
Laptop dengan spesifikasi :
a. Processor : Intel Core i3
b. RAM : Memory 4GB
c. Harddisk : 50GB
d. VGA : Intel HD Grafis
2. Activity Diagram
Activity diagram digunakan untuk menggambarkan alur kerja
(work flow) dari sistem yang sedang dirancang. Dalam aplikasi ini,
aktifitas yang digambarkan di dalam activity diagram yaitu activity
diagram Staff Jurusan, Dosen, dan Mahasiswa.
Gambar 3.4 Activity Diagram Staff Jurusan
Gambar 3.5 Activity Diagram Dosen dan Mahasiswa
3. Class Diagram
Class diagram adalah kumpulan kelas-kelas objek. Class
diagram berisi kelas-kelas yang ada dalam sistem yang dibuat. Kelas
merupakan satu set objek yang memiliki atribut dan method atau
dengan kata lain kelas memiliki informasi yang menggambarkan
fitur suatu entitas dan bagaimana penggunaanya.
Gambar 3.6 Class Diagram Sistem Aplikasi
3.2.2 Perancangan Antarmuka (User Interface)
1. Scene 1 : Halaman Login
Pada halaman lihat data dosen akan muncul data data dosen
yang sudah staf jurusan masukan terlebih dahulu dengan
melakukan proses menambahkan data. Dan juga ketika staf jurusan
ingin menubah data dari dosen, bisa menekan tampilan dari data
dosen tersebut. Maka akan muncul tampilan halaman mengubah
data dosen.
6. Scene 6 : Halaman Mengubah Data Dosen
Pada bab ini akan dijelaskan mengenai fase konstruksi dan fase
pelaksanann.
Pada halaman login terdapat 3 button yaitu staff jurusan, Dosen, dan
Mahasiswa untuk login sebagai staff jurusan, atau dosen maupun
mahasiswa.
Pada halaman lihat data dosen akan muncul data data dosen yang
sudah staf jurusan masukan terlebih dahulu dengan melakukan proses
menambahkan data. Dan juga ketika staf jurusan ingin menubah data dari
dosen, bisa menekan tampilan dari data dosen tersebut. Maka akan
muncul tampilan halaman mengubah data dosen.
6. Halaman Mengubah Data Dosen
BAB V
KESIMPULAN
5.1 KESIMPULAN
Kesimpulan dari penelitian Program Profesional yang berjudul :
“Aplikasi Informasi Kehadiran Dosen Pada Mata Kuliah” dirancang dan
dibangun untuk sarana pemberian informasi kehadiran dosen pada mata
kuliah untuk mahasiswa yang harapannya dapat membantu mendapatkan
informasi kehadiran dosen pada mata kuliah secara mudah dan cepat.
Metode penelitian yang digunakan untuk pengembangan perangkat lunak
system ini adalah metode RAD (Rapid Application Development) yang
meliputi Requirements Planning (Perencanaan Syarat-Syarat), RAD Design
Workshop (Workshop Desain RAD), Implementation (Implementasi). Untuk
perancngan desain dan system aplikasi ini digunakan Bahasa pemrograman
Java, PHP dan menggunakan Database Management System (DBMS)
MySQL.
Firebase Cloud Messaging dapat digunakan untuk mengirimkan push
notification pada android.
5.2 SARAN
Beberapa saran yang dapat diberikan untuk pengembangan aplikasi
Informasi Kehadiran Dosen Pada Mata Kuliah yaitu menambah fasilitas yang
disediakan dalam aplikasi ini dapat dikembangkan dengan menambahkan,
sebagai berikut :
1. Halaman Informasi akun dan halaman jadwal kuliah.
2. Pengiriman informasi dengan menambahkan fitur pengiriman sesuai mata
kuliah.
3. Nama pengirim sudah tertera sebelum mengirimkan informasi.
DAFTAR PUSTAKA
http://www.pengertianku.net/2015/09/pengertian-uml-dan-jenis-jenisnya-serta-
contoh-diagramnya.html (Diakses pada tanggal 20 April 2019)
http://www.pengertianku.net/2015/09/pengertian-uml-dan-jenis-jenisnya-serta-
contoh-diagramnya.html (Diakses pada tanggal 20 April 2019)
Khan, Belal. 2016. Firebase Cloud Messaging for Android using PHP and
MySQL. Tersedia: https://www.simplifiedcoding.net/firebase-cloud-
messaging-android/#StoringDevice-Token (Diakses pada tanggal 23 Mei
2019).
Komputer, Wahana. 2012. Java for mobile programing. Yogyakart: Penerbit C.V
ANDI OFFSET.
Nugroho, Adi. 2009. Rekayasa Perangkat Lunak Menggunakan UML dan Java.
Yogyakarta. Penerbit : ANDI
Nugroho, Adi. 2009. Rekayasa perangkat lunak menggunakan UML dan Java.
Wahana komputer. Yogyakarta: Penerbit C.V ANDI OFFSET.
Rosa, Shalahudin. 2011. Modul Pembelajaran Rekayasa Perangkat Lunak
(Terstruktur Dan Berorientasi Objek). Bandung: Modula.
LAMPIRAN