Anda di halaman 1dari 84

APLIKASI KETERSEDIAAN AYAM BROILER

UNTUK PRODI TEKNOLOGI PRODUKSI TERNAK


POLITEKNIK NEGERI LAMPUNG BERBASIS
ANDROID

(Laporan Proyek Mandiri)

Oleh

Janriswan Rieldi Saragih 21753052


Khaafidhzon Al Furqon 21753054
Latifa Nur Hidayati 21753055

POLITEKNIK NEGERI LAMPUNG


BANDAR LAMPUNG
2024
HALAMAN PENGESAHAN

1. Judul Proyek Mandiri : Aplikasi Ketersediaan Ayam Broiler


Untuk Prodi Teknologi Produksi
Ternak Politeknik Negeri Lampung
Berbasis Android
2. Nama dan NPM Mahasiswa : Khaafidzon Al Furqon (21753054)
Latifa Nur Hidayati (21753055)
Janriswan Rieldi Saragih (21753052)
3. Jurusan : Ekonomi dan Bisnis

4. Program Studi : Manajemen Informatika

Ketua Program Studi Dosen Pembimbing,


Manajemen Informatika,

Tri Sandhika Jaya, S.Kom.,M.Kom Eko Subyantoro, S.Kom.,M.Kom


NIP 198601182008121005 NIP 198005302008121002

Ketua Jurusan
Ekonomi Dan Bisnis

Arif Makshun, S.E., M.S.Ak.


NIP 197503102006041002
iii

KATA PENGANTAR

Dengan menyebut nama Allah SWT yang maha pengasih lagi maha
penyayang. Karena atas anugerah-Nya yang telah memberikan kesempatan dan
kemampuan kepada kami untuk menyelesaikan Proyek Mandiri yang berjudul
“Aplikasi Ketersediaan Ayam Broiler untuk Prodi Teknologi Produksi
Ternak Politeknik Negeri Lampung Berbasis Android”. Proyek ini memiliki
makna yang sangat penting dalam perjalanan akademik kami di Program Studi
Manajemen Informatika di Politeknik Negeri Lampung.
Penulis ingin menyampaikan rasa terima kasih kepada Dosen Pembimbing
dan pembahas kami yaitu Bapak Eko Subyantoro, S.Kom.,M.Kom, selaku
pembimbing dan Bapak Kurniawan Saputra, S.Kom., M.Kom. selaku pembahas,
karena atas bimbingan, dukungan, dan dorongannya yang sangat berharga dalam
mengarahkan dan membantu mengatasi berbagai tantangan dalam pelaksanaan
proyek mandiri ini. Tak lupa, kami juga ingin mengucapkan terima kasih kepada
teman-teman kami yang telah memberikan dukungan moral dan intelektual serta
kolaborasi dan diskusi dengan mereka telah menjadi bagian penting dari
keberhasilan proyek mandiri ini
Akhir kata, kami berharap Proyek Mandiri ini dapat bermanfaat dan
menginspirasi pembaca. Semoga Allah SWT senantiasa memberikan petunjuk dan
berkah dalam perjalanan kita. Amin.

Bandar Lampung, September 2023

Penulis
iv

DAFTAR ISI

Halaman

KATA PENGANTAR ....................................................................................... iii

DAFTAR ISI ...................................................................................................... iv

DAFTAR GAMBAR ......................................................................................... vi

DAFTAR TABEL ............................................................................................. vii

BAB I. PENDAHULUAN ................................................................................. 1


1.1 Latar Belakang ..................................................................................... 1
1.2 Tujuan ................................................................................................... 2
1.3 Kerangka Pemikiran ............................................................................. 3
1.4 Kontribusi ............................................................................................. 3

BAB II. TINJAUAN PUSTAKA...................................................................... 4


2.1 Ayam Broiler ........................................................................................ 4
2.2 Peternakan ............................................................................................ 4
2.3 Android ................................................................................................. 4
2.4 Aplikasi ................................................................................................ 4
2.4.1 Android Studio .............................................................................. 5
2.4.2 Microsoft Visio ............................................................................. 5
2.4.3 Enterprise Architecture ................................................................. 5
2.5 Firebase ................................................................................................ 6
2.6 Unified Modeling Language (UML)..................................................... 6
2.6.1 Use Case Diagram ........................................................................ 6
2.6.2 Activity Diagram ........................................................................... 7
2.7 Flowchart ............................................................................................. 8
2.8 Java ...................................................................................................... 9
2.9 Internet .................................................................................................. 9
2.10 RAD ...................................................................................................... 9

BAB III. METODE PELAKSANAAN............................................................ 11


3.1 Tempat Dan Waktu .............................................................................. 11
3.2 Alat Dan Bahan .................................................................................... 11
v

3.3 Prosedur Pelaksanaan ........................................................................... 11


3.3.1 Perencanaan................................................................................... 12
3.3.2 Desain Sistem ................................................................................ 13
3.3.3 Implementasi ................................................................................. 13
3.4 Anggaran Biaya Pelaksanaan Proyek Mandiri ..................................... 13
3.5 Jadwal Kegiatan ................................................................................... 14
3.6 Pelaksanaan Proyek Mandiri ................................................................ 15

BAB IV. HASIL DAN PEMBAHASAN ......................................................... 16


4.1 Analisis Sistem ..................................................................................... 16
4.1.1 Analisis Sistem Yang Berjalan ..................................................... 16
4.1.2 Analisis Permasalahan Sistem Yang Sedang Berjalan.................. 16
4.2 Rancangan Sistem Yang Akan Dibangun ............................................ 16
4.2.1 Rancangan UML (Unifed Modeling Language) ............................ 17
4.2.2 Rancangan Database..................................................................... 20
4.2.3 Rancangan Flowchart ................................................................... 21
4.2.4 Coding Program ............................................................................ 23
4.3 Implementasi ........................................................................................ 30
4.4 Pengujian .............................................................................................. 39

BAB V. PENUTUP ............................................................................................ 42


5.1 Kesimpulan ........................................................................................... 42
5.2 Saran ..................................................................................................... 42

DAFTAR PUSTAKA ........................................................................................ 43

LAMPIRAN-LAMPIRAN ............................................................................... 45
vi

DAFTAR GAMBAR

Gambar Halaman

Gambar 1. Kerangka Pemikiran .......................................................................... 3

Gambar 2. Rapid Application Development ....................................................... 10

Gambar 3. Use Case Admin Dan Customer........................................................ 17

Gambar 4. Activity Login & Logout Admin ...................................................... 18

Gambar 5. Activity Customer ............................................................................. 19

Gambar 6. Activity Admin.................................................................................. 20

Gambar 7. Rancangan Realtime Database .......................................................... 21

Gambar 8. Flowchart Yang Diusulkan................................................................ 22

Gambar 9. Flowchart Admin .............................................................................. 22

Gambar 10. Flowchart Customer ........................................................................ 23

Gambar 11. Tampilan Halaman Utama .............................................................. 31

Gambar 12. Tampilan Halaman Info Ayam ........................................................ 32

Gambar 13. Tampilan Halaman Info Aplikasi .................................................... 33

Gambar 14. Tampilan Halaman Login................................................................ 34

Gambar 15. Tampilan Halaman Input Data Ayam ............................................. 35

Gambar 16. Tampilan Halaman Admin .............................................................. 36

Gambar 17. Tampilan Search Data Ayam .......................................................... 37

Gambar 18. Tampilan Update Data Ayam .......................................................... 38

Gambar 19. Tampilan Logout ............................................................................. 39


vii

DAFTAR TABEL

Tabel Halaman

Tabel 1. Simbol Use Case ................................................................................... 7

Tabel 2. Simbol Activity Diagram ...................................................................... 7

Tabel 3. Simbol Flowchart .................................................................................. 8

Tabel 4. Alat Dan Bahan ..................................................................................... 11

Tabel 5. Anggaran Biaya..................................................................................... 13

Tabel 6. Jadwal Kegiatan .................................................................................... 14


1

BAB I. PENDAHULUAN

1.1 Latar Belakang


Peternakan adalah suatu kegiatan memelihara hewan ternak dengan tujuan
budidaya dan memperoleh keuntungan. Dalam Subsektor peternakan, terdapat dua
kategori yaitu ternak besar yang mencakup sapi, kerbau, dan kuda, dan ternak kecil
yang mencakup kambing, domba, babi, serta unggas seperti ayam, itik, dan burung
puyuh. Dengan demikian, kegiatan peternakan mencakup beragam jenis hewan
yang dapat diusahakan untuk memenuhi kebutuhan dan memberikan manfaat
ekonomi (Christiana Simanjuntak et al., 2018).
Ayam broiler merupakan salah satu jenis unggas subsektor kecil dalam
bidang peternakan, yang memiliki nilai ekonomi tinggi dan berperan sebagai
penyedia pangan asal ternak. Ayam broiler yang dimaksud adalah ayam yang dijual
ketika berusia di bawah 8 minggu dengan bobot tubuh tertentu, mempunyai
pertumbuhan yang cepat, serta mempunyai dada yang lebar dengan timbunan
daging yang baik dan melimpah. (Rasyaf, 1994 dalam Christiana Simanjuntak et
al., 2018)
Usaha beternak ayam broiler juga merupakan bagian dari sektor peternakan
yang menjanjikan, karena ayam broiler memiliki keunggulan seperti pertumbuhan
yang cepat, produksi daging yang tinggi, kemudahan pemotongan pada usia yang
relatif muda, serta menghasilkan daging yang lembut (Murtidjo, 1991). Kebutuhan
akan protein hewani sangat penting dalam kehidupan manusia, oleh karena itu, saat
ini banyak wirausahawan yang fokus pada usaha produksi hewan ternak, termasuk
diantaraya beternak ayam broiler. (Fatoni, 2011 dalam Fani, Surya, Ro, et al., 2018:
150).
Politeknik Negeri Lampung sebagai instansi perguruan tinggi yang
memiliki Program Studi Peternakan, memiliki peran penting dalam menyiapkan
tenaga kerja yang terampil dan terlatih untuk mendukung perkembangan industri
peternakan, khususnya pada budidaya ayam broiler. Namun, manajemen
ketersediaan ayam broiler, di prodi Teknologi Produksi Ternak Politeknik Negeri
Lampung, masih dilakukan dengan cara mencatat ketersediaan ayam broiler pada
kertas formulir yang telah disediakan oleh prodi. Cara tersebut tidak hanya
2

mempersulit dan membutuhkan waktu yang cukup lama dalam pengelolaannya,


tetapi juga menciptakan ketidakpastian terkait ketersediaan ayam broiler.
Ketidakpastiaan ini dapat mengakibatkan ketidak-seimbangan antara pasokan dan
permintaan, yang berdampak pada kerugian dan kurangnya efisiensi dalam
operasional bisnis peternakan.
Teknologi informasi yang berkembang pesat pada saat ini, memungkinkan
penggunaan aplikasi berbasis android untuk mengoptimalisasikan banyak aspek
manajemen persediaan ayam broiler. Aplikasi ini memberikan akses real-time
kepada peternak, memudahkan pengelolaan stok dengan lebih efisien, membantu
perencanaan produksi, dan mengurangi risiko yang terkait dengan perubahan pasar.
Aplikasi Ketersediaan Ayam Broiler pada Program Studi Teknologi
Produksi Ternak di Politeknik Negeri Lampung dapat berperan penting dalam
mendorong inovasi dan perbaikan pada industri peternakan. Selain itu, aplikasi ini
memberikan pengalaman bagi mahasiswa dalam menggunakan teknologi modern
untuk mengelola peternakan dengan lebih efisen. Dengan demikian, aplikasi ini
membantu mengatasi kendala yang masih kurang efektif dan meningkatkan
efisiensi serta keberlanjutan dalam industri peternakan ayam broiler.

1.2 Tujuan
Tujuan dari proyek mandiri ini adalah untuk menciptakan sebuah aplikasi
Ketersediaan Ayam Broiler untuk Program Studi Teknologi Produksi Ternak di
Politeknik Negeri Lampung Berbasis Android. Adapun tujuan dari aplikasi ini
adalah untuk memberikan informasi real-time tentang ketersediaan ayam broiler,
serta membantu dalam memanajemen peternakan.
3

1.3 Kerangka Pemikiran


Berdasarkan permasalahan yang terdapat pada latar belakang proyek
mandiri Aplikasi Ketersediaan Ayam Broiler Untuk Prodi Teknologi Produksi
Ternak Politeknik Negeri Lampung Berbasis Android, memiliki kerangka
pemikiran dari hasil penelitian yang dilakukan, yang dapat dilihat pada gambar 1.

Gambar 1. Kerangka Pemikiran

1.4 Kontribusi
Setelah menyelesaikan proyek mandiri ini, kontribusi yang diharapkan
sebagai berikut:
1. Membantu mahasiswa peternakan dalam melakukan pencatatan
ketersediaaan ayam broiler secara online.
2. Membantu mahasiswa dalam manajemen ketersediaan ayam broiler
didalam kandang.
3. Membantu user untuk memberi informasi ketersediaan ayam broiler.
4

BAB II. TINJAUAN PUSTAKA

2.1 Ayam Broiler


Ayam broiler merupakan hasil persilangan terbaik antara berbagai jenis
ayam yang memiliki produktivitas tinggi dalam produksi daging. Genetika yang
baik pada ayam broiler dapat berkembang dengan baik jika lingkungannya
mendukung, seperti pakan berkualitas tinggi, sistem kandang yang baik, serta
pelayanan kesehatan dan pencegahan penyakit yang optimal (Subowo & Saputra,
2019).

2.2 Peternakan
Peternakan ialah segala sesuatu yang melibatkan berbagai aspek seperti
sumber daya fisik, benih, bibit, pakan, alat, dan mesin peternakan, budi daya ternak,
panen, pascapanen, pengolahan, pemasaran, dan pengusahaannya. Definisi
peternakan tidak terbatas pada pemeliharaan saja, karena tujuan utama sektor ini
adalah mencari keuntungan dengan menerapkan prinsip-prinsip manajemen.
Menurut buku Icuk Rangga Bawono dan Erwin Setyadi berjudul Optimalisasi
Potensi Desa (2019).

2.3 Android
Android adalah sistem operasi Linux yang dirancang khusus untuk
perangkat seluler layar sentuh, seperti telepon pintar dan tablet. Android, Inc
Didirikan pada Oktober 2003 di Palo Alto, California, oleh Andy Rubin, Rich
Miner, Nick Sears, dan Chris White dengan tujuan awal mengembangkan sistem
operasi canggih untuk kamera digital. Namun, mengingat pasar kamera digital yang
terbatas, fokus pun beralih ke pasar telepon pintar untuk bersaing dengan Symbian
dan Windows Mobile (sebelum iPhone Apple dirilis). Meskipun beroperasi secara
rahasia dengan informasi terbatas, pengembang Android Inc., yang merupakan ahli
teknologi berpengalaman, mengungkapkan bahwa mereka sedang menciptakan
perangkat lunak untuk telepon seluler (Rumopa (2015, h.12) dalam Tri, 2020).

2.4 Aplikasi
Aplikasi adalah perangkat lunak komputer yang dirancang untuk
mengeksekusi tugas tertentu dengan memanfaatkan kemampuan komputer.
5

Aplikasi ini biasanya berupa program siap digunakan yang memungkinkan


pengguna untuk mengeluarkan perintah sesuai kebutuhan, dengan tujuan mencapai
hasil yang akurat sesuai dengan tujuan pembuatannya (Pratama, 2022).

2.4.1 Android Studio


Android Studio (IDE) ialah perangkat lunak yang digunakan untuk
pengembangan aplikasi android yang free dan open source. Pada acara Google I/O
conference, tanggal 16 Mei 2013, aplikasi ini resmi dibuka oleh Google.
Berdasarkan platform IntelliJ IDEA, yang hadir dengan plugin Android
Development Tools (ADT) sehingga mirip dengan Eclipse (Joni Karman, 2018).
Android Studio memiliki beragam fitur, antara lain:
1. Penggunaan proyek berbasis Gradle Build untuk manajemen proyek
yang lebih efisien.
2. Kemampuan untuk melakukan refactoring dan perbaikan bug dengan
cepat
3. Penggunaan alat baru bernama "Lint" yang dengan cepat memantau
kecepatan, kegunaan, dan kompatibilitas aplikasi Anda.
4. Mendukung Proguard dan penandatanganan aplikasi untuk
meningkatkan keamanan aplikasi.
5. Antarmuka pengguna grafis (GUI) memudahkan pembuatan pada
aplikasi Android.

2.4.2 Microsoft Visio


Microsoft visio merupakan suatu program aplikasi komputer yang sering
digunakan dalam mengerjakan diagram, diagram alir (flowchart), brainstorming,
dan skema jaringan yang dikembangkan oleh Microsoft corporation. Aplikasi ini
memakai grafik vektor untuk menciptakan diagramnya (Haryanto & Argadila,
2019).

2.4.3 Enterprise Architecture


Enterprise Architecture (EA) adalah konsep yang memastikan bahwa
teknologi informasi (TI) dalam organisasi didesain dan dikembangkan agar sesuai
dengan kebutuhan bisnis. Dengan menerapkan konsep EA, tujuannya adalah untuk
menyelaraskan setiap pengembangan teknologi informasi dengan kebutuhan bisnis,
6

sehingga memastikan bahwa penerapan teknologi selalu berorientasi pada


pemenuhan kebutuhan bisnis organisasi (Hanafi & Purba, 2021).
2.5 Firebase
Firebase ialah Backend as a Service (BaaS) yang dipunyai oleh Google,
firebase dibuat untuk meringankan peningkatan aplikasi mobile. Firebase
mempunyai banyak fitur kunci antara lain, firebase real time database, firebase
remote config dan firebase notification console yang digunakan untuk push
notification.
Firebase Real Time Database adalah penyimpanan tipe data non-SQL.
Beberapa data yang dapat disimpan meliputi Long, string dan Boolean. Data-data
ini disimpan sebagai objek JSON tree, tanpa tabel dan baris seperti database SQL.
Saat ada penambahan data, data tersebut menjadi node dalam bentuk JSON. Proses
penambahan data disebut dengan istilah push.

Selain Firebase Realtime Database, firebase memiliki fasilitas lain seperti


Firebase Authentication, Storage, dan Cloud Messaging. Firebase Storage
digunakan untuk penyimpanan awan, memungkinkan developer untuk
mengunggah dan men-mengunduh berkas selama pengembangan aplikasi (Sandy
et al., 2017).

2.6 Unified Modeling Language (UML)


Unifield Modeling Language (UML) adalah suatu cara pemodelan visual
yang digunakan dalam perancangan dan pembentukan perangkat lunak yang
berorientasi pada objek. UML merupakan standar penulisan atau sejenis blue print
yang dilengkai dengan proses bisnis, penulisan kelas-kelas dalam bentuk bahasa
yang jelas dan lengkap(M.Teguh, Komputer et al., 2018).

2.6.1 Use Case Diagram


Use case diagram yaitu menggambarkan ikatan antara aktor dengan sistem
guna mendefinisikan konteks dari sistem. Di setiap use case, terdapat fungsionalitas
sistem yang diilustrasikan menggunakan aktor yang memenuhi objeknya (Putra et
al., 2022). Berikut adalah simbol-simbol use case diagram yang disajikan pada
tabel 1
7

Tabel 1. Simbol Use Case

Simbol Keterangan

Aktor
Entitas eksternal, pengguna manusia, sistem
yang berinteraksidengan sistem

Use Case
Unit pekerjaan, kebiasaan yang diamati diluar
sistem yang dilakukan oleh aktor

Connecting Line
Aktor menggunakan use case

Include
Suatu use case seluruhnya merupakan
fungsionalitas use case lainya.

Extends Suatu use case adalah perluasan dari


kebiasaanlain

Sumber : (Putra et al., 2022)

2.6.2 Activity Diagram


Activity Diagram yaitu mendeskripsikan alur kerja dari sebuah sistem,
proses bisnis, atau menu yang ada didalam perangkat lunak (Aprianti & Maliha,
2016). Berikut adalah simbol-simbol activity diagram yang disajikan pada tabel 2.

Tabel 2. Simbol Activity Diagram

Simbol Keterangan

Status Awal
Status awal aktivitas pada sebuah diagram
aktivitas memiliki sebuah status awal.

Aktivitas
Aktivitas yang dilakukan sistem, aktivitas
8

biasanya diawali dengan kata kerja.

Penggabungan/ join

Asosiasi percabangan dimana jika ada pilihan


aktivitas lebih dari satu.
Status Akhir

Asosiasi penggabungan dimana lebih dari satu


aktivitas digabungkan menjadi satu.

Sumber : (Aprianti & Maliha, 2016)

2.7 Flowchart
Bagan alur (flowchart) adalah representasi grafis dari algoritma yang
menggunakan simbol-simbol untuk menggambarkan dan menunjukkan urutan
pelaksanaannya (Subowo & Saputra, 2019). Berikut adalah simbol-simbol
flowchart yang disajikan pada tabel 3.

Tabel 3. Simbol Flowchart

Fungsi
Simbol

Proses menjalankan proogram

Permulaan/akhir program

Arah aliran program

Proses inisialisasi/pemberian harga awal

Proses penghitung/proses pengolahan data

Proses input/output data


9

penyeleksian data yang memberikan pilihan untuk


langkah selanjutnya

Penghubung pada bagian yang berada pada satu


halaman

Penghubung pada bagian untuk halaman berbeda

Sumber : (Subowo & Saputra, 2019).

2.8 Java
Java atau Java Development Kit (JDK) adalah rangkaian perangkat lunak
yang digunakan untuk membuat dan mengembangkan perangkat lunak berbasis
Java. Sedangkan Java Runtime Environment (JRE) merupakan implementasi dari
Java Virtual Machine yang khusus digunakan untuk menjalankan program Java.
Setiap JDK biasanya menyertakan satu atau lebih JRE, bersama dengan banyak alat
pengembangan lainnya seperti kompiler sumber Java, pembuat paket, debugger,
pustaka pengembangan, dan sebagainya (Joni Karman, 2018).

2.9 Internet
Internet "Interconnection-Networking", secara harfiah adalah sistem global
dari jaringan komputer yang saling terhubung menggunakan protokol standar
Internet Protocol Suite (TCP/IP) untuk melayani miliaran pengguna di seluruh
dunia.
Menurut Pratama, "Internet merupakan sistem jaringan dari ribuan bahkan
jutaan komputer yang ada di dunia ini", sementara Oetomo menjelaskan,
"International Network (Internet) adalah sebuah jaringan komputer yang sangat
besar yang terdiri dari jaringan jaringan kecil yang saling terhubung yang
menjangkau seluruh dunia."
2.10 RAD
Rapid Application Development (RAD) adalah model pengembangan
perangkat lunak yang berfokus pada siklus pengembangan dalam waktu yang
singkat, RAD meliputi tiga tahap utama yaitu perencanaan, desain, dan
implementasi. Model ini berfokus pada respon yang cepat terhadap perubahan dan
memungkinkan pengembangan perangkat lunak yang lebih cepat dibandingkan
10

dengan pendekatan tradisional (Mandasari & Kaban, 2022). Berikut adalah model
rapid application development dapat dilihat pada gambar 2.

Gambar 2. Rapid Application Development


11

BAB III. METODE PELAKSANAAN

3.1 Tempat Dan Waktu


Proyek mandiri ini berlangsung di Politeknik Negeri Lampung, yang
terletak di Jl. Soekarno Hatta No. 10 Rajabasa, Bandar Lampung. Proyek dimulai
pada minggu ketiga dibulan September hingga minggu ke 16.

3.2 Alat Dan Bahan


Dalam perancangan sistem, diperlukan beberapa komponen, alat, dan bahan
yang penting untuk menyukseskan pelaksanaan proyek mandiri ini. berikut rincian
alat dan bahan dapat dilihat pada tabel dibawah ini. Berikut adalah alat dan bahan
yang digunakan daat dilihat pada tabel 4.

Tabel 4. Alat Dan Bahan

NO Software Hadware

1
Sistem Operasi Windows 11 Laptop
2
Android Studio Mouse
3
Firebase Printer
4
Bahasa Pemrograman Java Kertas HVS A4
5
Microsoft Office 2013 Smartphone
6
Visio

3.3 Prosedur Pelaksanaan


Dalam pelaksanaan “Aplikasi Ketersediaan Ayam Broiler Untuk Prodi
Teknologi Produksi Ternak Politeknik Negeri Lampung Berbasis Android” metode
yang digunakan yaitu RAD (Rapid Application Development) yang memiliki
beberapa tahapan yaitu analisis, desain dan implementasi. Sehingga tahapannya
seperti berikut.
12

3.3.1 Perencanaan
Tahap perencanaan yaitu tahap pengumpulan data, yang digunakan untuk
mengidentifikasi kebutuhan pada sistem. Metode pengumpulan data pada
penelitian ini sebagai berikut (Budiarti et al., 2022).
1. Kepustakaan
Kepustakaan ialah kegiatan dengan mempelajari dan menganalisa
semua buku referensi dan bahan penelitian yang berhubungan dengan
masalah yang dibicarakan.
2. Pengamatan (Observasi)
Observasi ialah kegiatan yang untuk mengamati objek penelitian
secara langsung dan memeriksa proses yang tengah berlangsung di
lapangan.
3. Wawancara
Wawancara ialah kegiatan kegiatan tanya jawab kepada pihak yang
bersangkutan atau kepada pihak yang mengetahui informasi.

Apabila data yang dikumpulkan telah diperoleh, maka akan dibuat sebuah
analisis terhadap sistem yang akan dibuat. Adapun analisis dalam pembuatan
rancangan “Aplikasi Ketersedian Ayam Broiler untuk Prodi Teknologi Produksi
Ternak Politeknik Negeri Lampung Berbasis Android” sebagai berikut :
A. Melakukan pengamatan sekaligus wawancara di Prodi Teknologi
Produksi Ternak Politeknik Negeri Lampung yang bertujuan untuk
mengidentifikasi kebutuhan dalam pemeliharaan ayam broiler di
kandang pada saat ini.
B. Sebelumnya, pengelolaan ketersediaan ayam broiler masih dilakukan
dengan kurang efektif. Sehingga untuk mengatasi ketidakefektifitasan
tersebut, maka dibuatlah aplikasi ketersediaan ayam broiler ini untuk
memberikan kemudahan dalam melakukan pengelolaan ketersediaan
ayam broiler pada peternakan.
C. Aplikasi ini, dapat diakses melalui perangkat android. Kemudian,
aplikasi berbasis android ini memberikan informasi tentang
ketersediaan ayam broiler di Prodi Teknologi Produksi Ternak
Politeknik Negeri Lampung.
13

3.3.2 Desain Sistem


Tahap desain ialah tahap perancangan desain yang mengacu dari hasil
analisis kebutuhan (Budiarti et al., 2022).
Adapun desain dalam perancangan “Aplikasi Ketersediaan Ayam Boiler
untuk Prodi Teknologi Produksi Ternak Politeknek Negeri Lampung Berbasis
Android ” memiliki beberapa tahapan desain sistem. Tahapan tersebut sebagai
berikut:
1. Merancang UML
2. Merancang Database
3. Merancang Flowchart
4. Tampilan Program

3.3.3 Implementasi

Setelah desain selesai dibuat, langkah selanjutnya dalam tahap


implementasi yaitu mengimplementasikannya kedalam program menggunakan
aplikasi android studio dengan bahasa pemrograman Java. Apabila aplikasi telah
dirancang dengan baik, tahap terakhir adalah menyebarluaskan pada Google Play
Store sehingga aplikasi ini siap digunakan.

3.4 Anggaran Biaya Pelaksanaan Proyek Mandiri


Berikut adalah perencanaan anggaran biaya yang diperlukan dalam
pelaksanaan proyek mandiri seperti yang tercantum dalam tabel 5.

Tabel 5. Anggaran Biaya

No Jenis Qty keterangan Biaya


Pengeluaran
1. Pengumpulan Data 2 orang Rp. 100.000

2. Kuota Internet 4 bulan Rp. 352.000

3. Alat Tulis

• Pena 1 lusin Rp. 15.000

• Kertas HVS 1 rim Rp. 55.000

• Tinta 1 item Rp. 75.000

4. Operasional
14

• Analisi sistem Rp. 100.000

• Desain sistem Rp. 300.000

• Pembuatan Rp. 780.000


program
• Pengujian Rp. 100.000

Total Biaya Rp. 1.877.500

3.5 Jadwal Kegiatan


Pelaksanaan proyek mandiri ini akan dilakukan di Politeknik Negeri
Lampung yang dimulai sejak September 2023 hingga Desember 2023. Berikut
adalah rancangan jadwal pelaksanaan untuk melakukan proyek mandiri yang akan
disajikan pada tabel 6.

Tabel 6. Jadwal Kegiatan


September Oktober November Desember
N Kegiatan
1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
o

1 Pengajuan Judul

2 Penyusunan
Laporan

3 Bimbingan
Proposal

4 Seminar Proposal

5 Perbaikan Proposal

6 Coding Program

7 Pengujian Sistem

8 Penyusunan Sistem

9 Penyusunan
Laporan

Ujian Hasil
15

3.6 Pelaksanaan Proyek Mandiri


Dalam pelaksaan proyek mandiri ini, dilakukan oleh mahasiswa dan
mahasiswi prodi manajemen informatika, hal tersebut dilakukan secara
berkelompok dan setiap individu memiliki peran dan tugas masing- masing.
Sehingga proyek mandiri ini dapat diselesaikan dengan baik dengan waktu yang
telah ditentukan. Berikut adalah daftar anggota pelaksanaan proyek mandiri:

1. Nama : Khaafidhzon Al Furqon


Npm : 21753054
Tugas : 1. Analisis sistem
2. Merancang Database
3. Pemrograman

2. Nama : Latifa Nur Hidayati


Npm :21753055
Tugas : 1. Analisis sistem
2. Merancang Database
3. Pemrograman

3. Nama : Janriswan Rieldi Saragih


Npm : 21753053
Tugas : 1. Analisis sistem
2. Merancang Database
3. Pemrograman
16

BAB IV. HASIL DAN PEMBAHASAN

4.1 Analisis Sistem


Hal pertama yang harus dilakukan pada analisis sistem yaitu dengan
menganalisis kebutuhan apa saja yang dibutuhkan oleh Prodi Teknologi Produksi
Ternak. Berdasarkan analisis yang telah dilakukan, maka dibutuhkan sebuah sistem
yang dapat digunakan untuk memantau dan mengelola ketersediaan ayam broiler
secara efisien. Oleh karena itu, dibuatlah sebuah aplikasi berbasis Android yang di
rancang khusus untuk melakukan pendataan ketersediaan ayam broiler secara
online.

4.1.1 Analisis Sistem Yang Berjalan


Pada sistem yang berjalan saat ini, proses pendataan ketersediaan ayam
broiler di Prodi Teknologi Produksi Ternak, masih dilakukan dengan cara mencatat
ketersediaan ayam pada kertas formulir yang telah disediakan oleh prodi. Proses
pendataan yang berjalan saat ini dapat beresiko terjadinya kesalahan dalam
pencatatan dan membutuhkan waktu yang lebih lama untuk pemrosesan data.

4.1.2 Analisis Permasalahan Sistem Yang Sedang Berjalan


Berdasarkan hasil analisis yang dilakukan, maka didapatkan beberapa
masalah pada sistem yang dimana pencatatan data ayam masih dilakukan dengan
cara mencatat ketersediaan ayam pada kertas formulir yang telah disediakan oleh
prodi, sehingga rentan terhadap kehilangan data dan banyaknya kesalahan yang
mungkin terjadi kesalahan dalam pencatatan serta ketidakakuratan pelaporan
dengan yang terjadi di lapangan.

4.2 Rancangan Sistem Yang Akan Dibangun


Berdasarkan analisis permasalahan yang diperoleh, sistem baru harus
dirancang dengan tujuan mempermudah dan memberikan solusi atas masalah yang
pada sistem saat ini. Adapun sistem yang akan dibuat yaitu membuat Aplikasi
Ketersediaan Ayam Broiler Untuk Prodi Teknologi Produksi Ternak Politeknik
Negeri Lampung berbasis android. Sistem ini akan digunakan oleh admin untuk
melakukan pencatatan ketersediaan ayam broiler secara online dan real-time serta
17

membantu manejemen peternakan dalam pengambilan keputusan yang lebih akurat


dan cepat.

4.2.1 Rancangan UML (Unifed Modeling Language)


1. Use Case
Use case diagram merupakan alur kerja aplikasi, dengan admin melakukan
login/masuk aplikasi kemudian admin dapat melakukan pengelolaan data
ketersediaan ayam pada aplikasi, kemudian data tersebut akan disimpan ke
Firebase Realtime Database. Use case ini juga menggambarkan alur kerja dari
customer, dimana customer dapat masuk ke dalam aplikasi tanpa harus login dan
customer dapat melihat data ketersediaan ayam dan melakukan pemesanan melalui
whatsapp yang tertaut pada aplikasi ini. Berikut adalah use case admin dan
customer dapat dilihat pada gambar 3.

uc use case

use case

Login
masuk aplikasi

menginputkan data
ketersedian

melihat informasi
ketersediaan ayam pada
menu ayam

«include»
Admin Menyimpan hasil
transaksi
Use

dapat melakukan pesanan


melalui w a yang tertaut pada
aplikasi
Melakukan perubahan
data ayam

keluar aplikasi

Logout

Gambar 3. Use Case Admin Dan Customer

2. Activity Login dan Logout Admin


Pada activity login dan logout merupakan alur kerja sistem yang
menampilkan menu halaman login, kemudian memberikan form untuk login
dengan menginputkan username dan password, selanjutnya data yang diinputkan
18

akan diverifikasi oleh database, jika data benar, maka admin berhasil masuk dan
akan masuk pada halaman dashboard admin dan jika gagal maka tetap berada di
halaman login sampai admin memasukan akun admin yang benar. Berikut adalah
Activity login dan logout admin dapat disajikan pada gambar 4.

act Activ ity Diagram

Login/Logot Admin
Admin Sistem Database

Menampilkan halaman
login
[Tidak]

Login
Aplikasi

Menampilkan username
Veriv ikasi Login
dan passw ord

Menampilkan halaman
Mengklik tombol logout dasboard admin

[berhasil]

Logout
Aplikasi

Gambar 4. Activity Login & Logout Admin

3. Activity Customer
Activity customer merupakan alur kerja pada aplikasi dengan masuk ke
halaman utama, kemudian customer dapat melihat data ketersediaan ayam broiler
yang telah diinputkan oleh admin di menu info ayam. Apabila customer ingin
melakukan pemesanan dapat mengklik tautan Whatsapp yang tertera pada aplikasi,
sehingga customer dapat mengubungi admin untuk melakukan pemesanan. Berikut
adalah activity customer yang disajikan pada gambar 5.
19

act Activ ity Customer

Customer
User Sistem

Menampilkan halaman
utama

Masuk
Aplikasi

melihat ketersediaan
ayam di menu info ayam

Melakukan pemesanan
dengan mengklik tautan
w hatsapp yang tertera
pada aplikasi

Keluar
Aplikasi

Gambar 5. Activity Customer

4. Activity Admin
Activity admin merupakan alur kerja pada aplikasi dengan masuk ke
halaman dasboard admin. Pada halaman ini admin dapat melakukan pengelolaan
data seperti insert, update, dan delete data ketersediaan ayam broiler. Kemudian
hasil inputan admin akan ditampilkan pada halaman info ayam. Berikut adalah
activity admin yang disajikan pada gambar 6.
20

act Activ ity Admin

Admin

Admin Sistem Database

Menampilkan halaman
dasboard admin

Login
Aplikasi

admin melakukan pengelolaan


data seperti insert, update, dan Menyimpan data
delete data ketersediaan ayam
broiler

Menampilkan data
ketersediaan ayam yang
terbaru
Logout
Aplikasi

Gambar 6. Activity Admin

4.2.2 Rancangan Database


Rancangan Database untuk aplikasi ketersediaan ayam broiler dirancang
menggunakan Firebase Realtime Database, yang merupakan basis data non-SQL
dengan struktur berbentuk objek JSON tree. Database ini berbeda dengan basis data
SQL yang membutuhkan definisi tabel dan aturan struktur tertentu, pada Firebase
Realtime Database memanfaatkan konsep "node" untuk setiap proses penginputan
data. Sehingga tidak diperlukan pengaturan tabel atau baris seperti pada basis data
SQL tradisional.
Struktur database pada aplikasi ini, Terdapat dua tabel yaitu tabel login dan
tabel data ayam. Tabel login merupakan tabel yang digunakan untuk admin
melakukan login. Tabel data ayam digunakan untuk menampung data yang telah
diinputkan oleh admin, primery key pada tabel data ayam didapatkan secara
21

otomatis dari firebase karena menggunakan metode push(). Berikut adalah


rancangan Firebase realtime database dapat dilihat pada gambar 7.

Gambar 7. Rancangan Realtime Database

4.2.3 Rancangan Flowchart


Berikut adalah Flowchart aplikasi yang menjelaskan bagaimana aplikasi ini
berjalan, pada halaman utama aplikasi ini memiliki tiga menu. Admin dapat
melakukan akses ke tiga menu tersebut, yang dimana admin akan login dan dapat
melakukan pengelolaan data ketersediaan ayam pada menu login admin, sedangkan
customer hanya dapat mengakses dua menu saja yaitu info ayam yang hanya
menampilkan informasi ketersediaan ayam, dan info aplikasi yang menjelaskan
penggunaan aplikasi tersebut. Berikut adalah flowchart aplikasi yang akan
dibangun dapat dilihat pada gambar 8.
22

Gambar 8. Flowchart Yang Diusulkan

a. Flowchart admin
Flowchart admin menjelaskan proses admin dalam aplikasi, yang dimulai
dengan admin melakukan login dengan menginputkan username dan Password
untuk masuk ke dalam dashbord admin. Dimana pada halaman admin, admin dapat
melakukan pengelolaan data ketersediaan ayam seperti insert, update, dan delete.
Berikut adalah flowchart admin yang disajikan pada gambar 9.

Gambar 9. Flowchart Admin


23

b. Flowchart customer
Flowchart customer menjelaskan proses customer dalam aplikasi, Dimana
customer dapat melihat informasi ketersediaan ayam pada aplikasi dengan masuk
ke ke menu info ayam untuk melihat data ketersedian ayam tersebut dan didalam
menu tersebut terdapat tombol Whatsapp yang dimana ketika diklik akan masuk
ke Whatsapp admin untuk melakukan pemesanan ayam. Berikut adalah flowchart
customer yang disajikan pada gambar 10.

Gambar 10. Flowchart Customer

4.2.4 Coding Program

a. MainActivity.java
Kelas MainActivity adalah halaman utama aplikasi dimana terdapat
beberapa menu seperti info ayam, info aplikasi, dan login Admin. pada masing-
masing menu terdapat perintah
private void openInfoAyamActivity() {

Intent intent = new Intent (this, ActivityAyam.class);

startActivity(intent);

Sintaks tersebut akan mengarahkan ke halaman info ayam, apabila diklik.


Begitupun untuk menu yang lainnya.

package com.example.applicationchicken;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
24

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

public class MainActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

Button button1 = findViewById(R.id.button1);

Button button2 = findViewById(R.id.button2);

Button button3 = findViewById(R.id.button3);

button1.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

openInfoAyamActivity();

});
25

button2.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {openInfoAplikasiActivity();

});

button3.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

openLoginAdminActivity();

});

private void openInfoAyamActivity() {

Intent intent = new Intent(this, ActivityAyam.class);

startActivity(intent);

private void openInfoAplikasiActivity() {

Intent intent = new Intent(this, ActivityAplikasi.class);

startActivity(intent);

}
26

private void openLoginAdminActivity() {

Intent intent = new Intent(this, ActivityLogin.class);

startActivity(intent);

b. ActivityLogin.java

ActivityLogin ini berisi sintaks yang digunakan untuk melakukan login


dengan menggunakan sintaks berikut

databaseReference = FirebaseDatabase.getInstance().getReference("login");

// Temukan tampilan

_siginUsername = findViewById(R.id.sigin_username);

_siginPassword = findViewById(R.id.sigin_password);

loginButton = findViewById(R.id.sigin_button);

sintaks diatas digunakan untuk memanggil data dari firebase realtime database agar
dapat mengakses menu login tersebut.

package com.example.applicationchicken.activities;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;
27

import com.example.applicationchicken.R;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;

public class ActivityLogin extends AppCompatActivity {

private EditText _siginUsername, _siginPassword;


private Button loginButton;

private DatabaseReference databaseReference;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);

// Inisialisasi Database Reference


databaseReference =
FirebaseDatabase.getInstance().getReference("login");

// Temukan tampilan
_siginUsername = findViewById(R.id.sigin_username);
_siginPassword = findViewById(R.id.sigin_password);
loginButton = findViewById(R.id.sigin_button);

// Atur click listener untuk tombol login


loginButton.setOnClickListener(new View.OnClickListener() {
@Override
28

public void onClick(View view) {


loginAdmin();
}
});
}

private void loginAdmin() {


String username = _siginUsername.getText().toString().trim();
String password = _siginPassword.getText().toString().trim();

// Validasi username dan password


if (username.isEmpty() || password.isEmpty()) {
Toast.makeText(ActivityLogin.this, "Masukkan username dan
password", Toast.LENGTH_SHORT).show();
return;
}

// Baca data pengguna dari Realtime Database menggunakan


primary key

databaseReference.child(username).addListenerForSingleValueEvent(n
ew ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
// Data pengguna berhasil dibaca
String storedPassword =
dataSnapshot.child("password").getValue(String.class);
String role =
dataSnapshot.child("role").getValue(String.class);
29

// Periksa apakah password sesuai dan pengguna adalah


admin
if (password.equals(storedPassword) &&
"admin".equals(role)) {
// Password sesuai dan pengguna adalah admin

Intent intent = new Intent(ActivityLogin.this,


ActivityAdmin.class);
startActivity(intent);
// ...
Toast.makeText(ActivityLogin.this, "Login sebagai
admin berhasil", Toast.LENGTH_SHORT).show();
} else {
// Password tidak sesuai atau pengguna bukan admin
Toast.makeText(ActivityLogin.this, "Username atau
password salah, atau Anda bukan admin",
Toast.LENGTH_SHORT).show();
}
} else {
// Pengguna tidak ditemukan
Toast.makeText(ActivityLogin.this, "Username tidak
ditemukan", Toast.LENGTH_SHORT).show();
}
}

@Override
public void onCancelled(DatabaseError databaseError) {
// Gagal membaca data pengguna
Toast.makeText(ActivityLogin.this, "Gagal membaca data
pengguna", Toast.LENGTH_SHORT).show();
}
});
30

}
}

4.3 Implementasi
Tahap implementasi adalah tahap penerapan dari hasil analisis yang
diterapkan ke dalam bahasa komputer. Bahasa yang digunakan dalam
pemrograman sistem ini adalah bahasa java. Berikut adalah implementasi dari
Aplikasi Ketersediaan Ayam Broiler Untuk Prodi Teknologi Produksi Ternak
Politeknik Negeri Lampung Berbasis Android.

1. Tampilan Halaman Utama


Tampilan halaman utama adalah tampilan yang berisi menu dari aplikasi.
Terdapat beberapa menu pada halaman ini seperti menu info ayam berisi informasi
ketersediaan ayam, menu info aplikasi berisi petunjuk penggunaan dari aplikasi,
dan menu login admin, halaman yang digunakan admin untuk melakukan login dan
melakukan pengelolaan ketersediaan ayam. Berikut adalah halaman menu utama
yang disajikan pada gambar 11.
31

Gambar 11. Tampilan Halaman Utama

2. Tampilan Info Ayam


Tampilan Informasi Ayam adalah tampilan yang dirancang untuk
mempermudah pelanggan dalam melihat ketersediaan produk ayam yang telah
diinput oleh admin. Pada halaman ini, pelanggan juga dapat dengan mudah
melakukan pemesanan ayam melalui tautan langsung yang terhubung dengan
layanan pesan WhatsApp (WA) yang terintegrasi dalam aplikasi. Berikut adalah
halaman info aplikasi yang disajikan pada gambar 12.
32

Gambar 12. Tampilan Halaman Info Ayam

3. Tampilan Info Aplikasi


Tampilan Informasi Ayam merupakan halaman panduan yang dirancang
untuk memberikan petunjuk kepada admin dan pelanggan mengenai cara
menggunakan aplikasi serta berinteraksi dengan fitur-fitur yang disediakan.
Gambaran visual dari halaman Info aplikasi menyajikan informasi secara jelas dan
terstruktur mengenai fungsi dan tata cara penggunaan aplikasi. Berikut adalah
halaman info aplikasi yang disajikan pada gambar 13.
33

Gambar 13. Tampilan Halaman Info Aplikasi

4. Tampilan Login Admin


Tampilan login admin adalah tampilan yang muncul pada saat admin ingin
masuk ke activity admin. Admin perlu melakukan otentikasi dengan memasukkan
username dan password yang sudah terdaftar di database firebasae realtime,
sehingga tidak perlu mendaftar akun baru. Admin dapat menggunakan username
dan password yang sudah terdaftar untuk masuk ke dalam aplikasi. Berikut adalah
halaman login yang disajikan dalam gambar 14.
34

Gambar 14. Tampilan Halaman Login

5. Tampilan input data ayam


Tampilan Input Data Ayam adalah tampilan yang dirancang untuk
memudahkan admin dalam memasukkan informasi terkait ketersediaan ayam ke
dalam sistem. Dengan menyediakan formulir, halaman ini dapat mempermudah
admin dalam memasukkan data ayam seperti kategori ayam , berat ayam, harga
ayam, dan stok ayam yang siap dijual. Fungsi validasi pada halaman ini, telah
diterapkan untuk memastikan kelengkapan dan akurasi data yang dimasukkan.
Setelah data diinput, sistem kemudian dapat menyimpan informasi tersebut ke
dalam basis data. Hasil data ayam yang telah diinputkan akan ditampilkan pada
halaman admin, sehingga mempermudah admin dalam pemantauan dan manajemen
ketersediaan ayam secara efisien. Berikut adalah tampilan input data ayam yang
disajikan pada gambar 15.
35

Gambar 15. Tampilan Halaman Input Data Ayam

6. Tampilan halaman admin


Tampilan admin adalah tampilan yang menyajikan hasil data yang diambil
dari database firebase. Di halaman ini, admin dapat melakukan pengelolaan data
ayam seperti insert, update, delete data ayam, dan melakukan pencarian data ayam
berdasarkan kategori ayam. Berikut adalah tampilan halaman admin yang disajikan
pada gambar 16.
36

Gambar 16. Tampilan Halaman Admin

7. Tampilan Cari Data Ayam


Tampilan Cari Data Ayam yaitu halaman yang menyediakan fasilitas
pencarian yang dapat digunakan oleh admin untuk dengan cepat menemukan
informasi spesifik terkait ayam dalam aplikasi. Fitur pencarian ini digunakan untuk
melakukan pencarian berdasarkan kategori pada data ayam. Admin dapat
memasukkan parameter pencarian berdasarkan kategori untuk mendapatkan hasil
yang sesuai dengan kebutuhan, sehingga mempermudah admin dalam mengakses
informasi ayam secara akurat. Berikut adalah halaman cari data ayam yang
disajikan pada gambar 17.
37

Gambar 17. Tampilan Search Data Ayam

8. Tampilan Edit
Tampilan edit adalah halaman yang disediakan untuk admin melakukan
perubahan dan memperbarui informasi terkait data ayam yang telah dimasukkan ke
dalam sistem. Pada halaman ini, admin dapat mengakses formulir yang telah di isi
sebelumnya dengan data yang sudah ada, sehingga admin dapat dengan mudah
melakukan pembaruan dan mengedit bagian yang perlu diperbarui. Setelah
perubahan selesai, admin dapat menyimpan data yang sudah diperbarui ke dalam
sistem dan hasil data yang telah diperbarui ditampilkan pada halaman admin
Berikut adalah tampilan halaman edit yang disajikan pada gambar 18.
38

Gambar 18. Tampilan Update Data Ayam

9. Tampilan Logout
Tampilan Logout Admin adalah halaman yang disediakan untuk admin
mengakhiri sesinya sebagai admin dan kembali ke halaman awal aplikasi. Berikut
adalah tampilan logout yang disajikan pada gambar 19.
39

Gambar 19. Tampilan Logout

4.4 Pengujian
Tahap pengujian adalah langkah terakhir dalam metode pengembangan
sistem, dilakukan untuk memastikan bahwa aplikasi ketersediaan ayam broiler
berbasis Android ini dapat digunakan secara menyeluruh dan sesuai dengan
kebutuhan penggunaan untuk menampilkan informasi ketersediaan ayam.

1. Metode Pengujian
Metode pengujian yang diterapkan adalah black box testing, dimana aplikasi
dieksekusi tanpa perlu memperhatikan detail internalnya. Pendekatan ini, berfokus
pada pengamatan hasil yang dihasilkan dari operasi aplikasi untuk memastikan
kinerjanya sesuai dengan yang diharapkan.
2. Hasil Pengujian
Aspek-aspek yang diuji dalam aplikasi melibatkan beberapa elemen kunci
untuk memastikan kualitas dan performa aplikasi. Berikut adalah aspek yang diuji
dalam pengembangan aplikasi meliputi:
1. Fungsional
40

Pengujian fungsional bertujuan memastikan bahwa setiap fitur atau fungsi


dalam aplikasi beroperasi sesuai dengan kebutuhan dan harapkan yang telah
ditetapkan. Proses pengujian melibatkan verifikasi masing-masing fitur secara
terpisah dan saat berinteraksi dengan fitur lainnya, yang dapat menjamin integritas
dan konsistensi aplikasi secara keseluruhan. Pengujian ini memastikan bahwa
seluruh fungsi aplikasi dapat diakses dan digunakan dengan efektif.
2. Tampilan Aplikasi
Pengujian pada tampilan Android dilakukan untuk mengevaluasi antarmuka
pengguna yang disajikan dalam aplikasi android. Tujuannya adalah untuk
mengevaluasi sejauh mana antarmuka bermanfaat, mudah dibaca, dan memberikan
kenyamanan kepada pengguna selama berinteraksi dengan antarmuka yang telah
dikembangkan. Proses pengujian melibatkan beberapa aspek, termasuk susunan
elemen, kemudahan navigasi, responsivitas, dan unsur visual lainnya.
3. Akses Database
Pengujian ini memastikan bahwa data yang tersimpan dalam database dapat
diakses dan disimpan dengan baik. Proses pengujian melibatkan pengecekan
ketersediaan data, kecepatan akses, dan kemampuan database untuk menyimpan
serta mengambil informasi dengan efisien. Pengujian ini, diharapkan dapat
menjamin integritas dan konsistensi data, serta memastikan aplikasi dapat
berinteraksi secara efektif dengan sistem penyimpanan database yang digunakan.
4. Kesimpulan Pengujian
Berdasarkan hasil pengujian yang terlampir pada lampiran, dapat
disimpulkan sebagai berikut:
1. Fungsional
Pengujian fungsional pada Aplikasi Ketersediaan Ayam Broiler Untuk
Prodi Teknologi Produksi Ternak Politeknik Negeri Lampung Berbasis Android,
tidak ditemukan kesalahan terhapa fungsi fitur yang tersedia, sehingga aplikasi
dapat berjalan dengan baik.
2. Tampilan Aplikasi
Pengujian antarmuka pada Aplikasi Ketersediaan Ayam Broiler Untuk
Prodi Teknologi Produksi Ternak Politeknik Negeri Lampung Berbasis android,
41

menunjukkan tidak ditemukan kesalahan pada antarmuka program, dan penyajian


visual-nya dinilai menarik.
3. Struktur Database
Pengujian struktur database pada Aplikasi Ketersediaan Ayam Broiler
Untuk Prodi Teknologi Produksi Ternak Politeknik Negeri Lampung Berbasis
android, menunjukkan tidak adanya kesalahan pada susunan data, dan aplikasi
dapat menyimpan data sesuai dengan kebutuhan tanpa mengalami kendala dalam
kinerjanya.
42

BAB V. PENUTUP

5.1 Kesimpulan
Aplikasi Ketersediaan Ayam Broiler Berbasis Android merupakan solusi di
era digital untuk membantu dalam penyampaian informasi ketersedian ayam broiler
berbasis android. Aplikasi ini dapat melakukan perubahan informasi ketersedian
ayam dimana saja dan kapan pun.
Aplikasi ketersediaan ayam broiler ini mempermudah pengguna dalam
melihat ketersedian ayam broiler dengan lebih detail dan transparansi, serta
mempermudah admin dalam menyimpan data ketersedian ayam secara digital yang
disimpan dalam database secara real-time. Meskipun sudah banyak teknologi
seperti ini diluar sana, namun disini masih sedikit yang menggunakan teknologi
tersebut.

5.2 Saran
Penerapan Aplikasi Ketersediaan Ayam Broiler Untuk Prodi Teknologi
Produksi Ternak Politeknik Negeri Lampung Berbasis android dapat berjalan
dengan baik dengan beberapa hal yang perlu di lakukan yaitu.
1) Admin/mahasiswa perlu memberikan informasi secara valid dan real
time.
2) Admin/mahasiswa perlu mengetahui dan mempelajari alur sistem yang
dibuat.
3) Aplikasi perlu dikembangkan untuk melakukan pemesanan langsung di
aplikasi dari sisi client.
43

DAFTAR PUSTAKA

Afyenni, R. 2014. (2014). Perancangan Data Flow Diagram untuk Sistem Informasi
Sekolah (Studi Kasus Pada SMA Pembangunan Laboratorium UNP). Teknoif,
2(1), 35–39.
Anissa, R. N., & Prasetio, R. T. (2021). Rancang Bangun Aplikasi Penerimaan
Siswa Baru Berbasis Web Menggunakan Framework Codeigniter. Jurnal
Responsif : Riset Sains Dan Informatika, 3(1), 122–128.
https://doi.org/10.51977/jti.v3i1.497
Aprianti, W., & Maliha, U. (2016). Sistem Informasi Kepadatan Penduduk
Kelurahan Atau Desa Studi Kasus Pada Kecamatan Bati-Bati. 2(2013), 21–
28.
Budiarti, S. F., Sabella, B., & Hafizd, K. A. (2022). Pegelolaan Data Dan Histori
Pengguna Untuk Pengembangan Sistem Informasi Berkah Bersama Berbasis
Website. METHOMIKA Jurnal Manajemen Informatika Dan Komputerisasi
Akuntansi, 6(6), 226–233. https://doi.org/10.46880/jmika.vol6no2.pp226-233
Christiana Simanjuntak, M., Studi Peternakan, P., & Pertanian dan Peternakan, F.
(2018). Analisis Usaha Ternak Ayam Broiler Di Peternakan Ayam Selama
Satu Kali Masa Produksi. Jurnal Fapertanak, III, 60–81.
Dahlan, M., & Hudi, N. (2011). Jurnal Ternak, Vol. 02, No. 01, Juni 2011. Jurnal
Ternak, 02(01), 24–29.
Fani, R. H., Surya, I., & Adin Saf, M. R. (2018). Rancang Bangun Sistem
Manajemen Budidaya Ayam Broiler Berbasis Web Menggunakan Metode
Prototyping. Jurnal Sistem Dan Teknologi Informasi (JUSTIN), 6(4), 146.
https://doi.org/10.26418/justin.v6i4.26957
Fani, R. H., Surya, I., Ro, M., Umban, J., Patin, S., Sari, U., & Pekanbaru, K. (2018).
26957-75676590763-2-Pb. 6(4), 150–156.
Hanafi, B., & Purba, R. D. H. (2021). Perancangan Enterprise Architecture Dengan
Modified Togaf Adm Pada PT Ilmu Komputercom Braindevs Sistema.
Journal of Information System, Informatics and Computing, 5(2), 222–231.
https://doi.org/10.52362/jisicom.v5i2.603
Haryanto, D., & Argadila, D. (2019). Sistem Informasi Pengarsipan Data
Konsumen Di Pt. Dinasti Pertiwi “Perumahan Dewasari.” Jurnal Teknik
Informatika, 7(1), 1–6.
Joni Karman, A. T. M. (2018). Sistem Informasi Geografis Lokasi Pemetaan Masjid
Berbasis Android Kota Lubuklinggau. LIS Liga Ilmu Serantau, 42–50.
M.Teguh, Komputer, J. T., Harapan, P., & Tegal, B. (2018). 464573-None-
B924D04D Uml Peng. 03(01), 126–129
Mandasari, M., & Kaban, R. (2022). Perancangan Sistem Informasi Perpustakaan
44

Berbasis Web Dengan Metode Rapid Application Development (RAD) dan


Framework CSS Bootstrap. Jurnal Poliprofesi, 83–94. https://osf.io/fznrx
Permadi, T. T. A., & Saurina, N. (2022). Sistem Informasi Pengolahan Data
Distributor Berbasis Web Pada Cv. Ayam Adi Broiler. Melek IT : Information
Technology Journal, 8(1), 27–36.
https://doi.org/10.30742/melekitjournal.v8i1.195
Pratama, Y. (2022). Perancangan aplikasi penggajian karyawan menggunakan Java.
Jurnal Manajamen Informatika Jayakarta, 2(4), 347.
https://doi.org/10.52362/jmijayakarta.v2i4.884
Putra, B. J. M., Fu’adi, A., & Yuniarti, D. A. F. (2022). Analisa dan Rancangan
Sistem Informasi Pariwisata Pacitan dengan UML dan ERD. INFORMATION
SYSTEM FOR EDUCATORS AND PROFESSIONALS : Journal of
Information System, 7(1), 63.
Sandy, L. A., Akbar, R. J., & Hariadi, R. R. (2017). Rancang Bangun Aplikasi Chat
pada Platform Android dengan Media Input Berupa Canvas dan Shareable
Canvas untuk Bekerja dalam Satu Canvas Secara Online. Jurnal Teknik ITS,
6(2). https://doi.org/10.12962/j23373539.v6i2.23782
Subowo, E., & Saputra, M. (2019). Sistem Informasi Peternakan Ayam Broiler
Android. Surya Informatika, 6(1), 53–65.
Tri, M. B. (2020). Perancangan Sistem Informasi Management Siswa Berprestasi
Berbasis Android Pada Smk Pgri Rawalumbu. Jurnal Sains & Teknologi
Fakultas Teknik, X(2), 30–39.
Verawati, & Liksha, P. D. (2018). Aplikasi Akuntansi Pengolahan Data Jasa
Service Pada Pt. Budi Berlian Motor Lampung. Jurnal Sistem Informasi
Akuntansi (JUSITA), 1(1), 1–14.
Yuniarti, R., Hartami Santi, I., & Dwi Puspitasari, W. (2022). Perancangan Aplikasi
Point of Sale Untuk Manajemen Pemesanan Bahan Pangan Berbasis
Framework Laravel. JATI (Jurnal Mahasiswa Teknik Informatika), 6(1), 67–
74. https://doi.org/10.36040/jati.v6i1.4283
45

LAMPIRAN-LAMPIRAN

Lampiran 1. Kode Program

Kode Program
MainActivity.java
package com.example.applicationchicken.activities;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;

import com.example.applicationchicken.R;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button button1 = findViewById(R.id.button1);


Button button2 = findViewById(R.id.button2);
Button button3 = findViewById(R.id.button3);

button1.setOnClickListener(new View.OnClickListener() {
46

@Override
public void onClick(View v) {
openInfoAyamActivity();
}
});

button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {openInfoAplikasiActivity();
}
});

button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openLoginAdminActivity();
}
});
}
private void openInfoAyamActivity() {
Intent intent = new Intent(this, ActivityAyam.class);
startActivity(intent);
}

private void openInfoAplikasiActivity() {


Intent intent = new Intent(this, ActivityAplikasi.class);
startActivity(intent);
}
47

private void openLoginAdminActivity() {


Intent intent = new Intent(this, ActivityLogin.class);
startActivity(intent);
}
}

Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@drawable/bggayam"
tools:context=".MainActivity">

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:gravity="center">

<Button
android:id="@+id/button1"
android:layout_width="match_parent"
48

android:layout_height="60dp"
android:text="Info Ayam"
android:textSize="20dp"
android:textStyle="bold"
android:layout_marginTop="170dp" />

<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="60dp"
android:textSize="20dp"
android:textStyle="bold"
android:text="@string/InfoAplikasi"
android:layout_below="@+id/button1" />

<Button
android:id="@+id/button3"
android:layout_width="match_parent"
android:layout_height="60dp"
android:textSize="20dp"
android:textStyle="bold"
android:text="Login Admin"
android:layout_below="@+id/button2" />

</RelativeLayout>
</RelativeLayout>

ActivityLogin.java
package com.example.applicationchicken.activities;
49

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import com.example.applicationchicken.R;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;

public class ActivityLogin extends AppCompatActivity {

private EditText _siginUsername, _siginPassword;


private Button loginButton;

private DatabaseReference databaseReference;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
50

// Inisialisasi Database Reference


databaseReference =
FirebaseDatabase.getInstance().getReference("login");

// Temukan tampilan
_siginUsername = findViewById(R.id.sigin_username);
_siginPassword = findViewById(R.id.sigin_password);
loginButton = findViewById(R.id.sigin_button);

// Atur click listener untuk tombol login


loginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
loginAdmin();
}
});
}

private void loginAdmin() {


String username = _siginUsername.getText().toString().trim();
String password = _siginPassword.getText().toString().trim();

// Validasi username dan password


if (username.isEmpty() || password.isEmpty()) {
Toast.makeText(ActivityLogin.this, "Masukkan username dan
password", Toast.LENGTH_SHORT).show();
return;
}

// Baca data pengguna dari Realtime Database


51

databaseReference.child(username).addListenerForSingleValueEvent(new
ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
// Data pengguna berhasil dibaca
String storedPassword =
dataSnapshot.child("password").getValue(String.class);
String role = dataSnapshot.child("role").getValue(String.class);

// Periksa apakah password sesuai dan pengguna adalah admin


if (password.equals(storedPassword) && "admin".equals(role)) {
// Password sesuai dan pengguna adalah admin
// Lakukan tindakan untuk login admin, seperti navigasi ke layar
admin

Intent intent = new Intent(ActivityLogin.this,


ActivityAdmin.class);
startActivity(intent);
// ...
Toast.makeText(ActivityLogin.this, "Login sebagai admin
berhasil", Toast.LENGTH_SHORT).show();
} else {
// Password tidak sesuai atau pengguna bukan admin
Toast.makeText(ActivityLogin.this, "Username atau password
salah, atau Anda bukan admin", Toast.LENGTH_SHORT).show();
}
} else {
// Pengguna tidak ditemukan
Toast.makeText(ActivityLogin.this, "Username tidak ditemukan",
Toast.LENGTH_SHORT).show();
52

}
}

@Override
public void onCancelled(DatabaseError databaseError) {
// Gagal membaca data pengguna
Toast.makeText(ActivityLogin.this, "Gagal membaca data
pengguna", Toast.LENGTH_SHORT).show();
}
});
}
}

Activity_login.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:background="@drawable/bgayam1"
tools:context=".activities.ActivityLogin">

<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
53

android:layout_margin="30dp"
app:cardCornerRadius="30dp"
app:cardElevation="20dp">

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="center_horizontal"
android:padding="30dp"
android:background="@drawable/green_border">

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Login"
android:textColor="@color/green"
android:textSize="35dp"
android:textStyle="bold"
android:textAlignment="center"/>

<EditText
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/sigin_username"
android:background="@drawable/green_border"
android:layout_marginTop="30dp"
android:padding="8dp"
54

android:hint="Username"
android:drawableLeft="@drawable/baseline_person_outline_24"
android:drawablePadding="8dp"
android:textColor="@color/black"/>

<EditText
android:layout_width="match_parent"
android:layout_height="50dp"
android:id="@+id/sigin_password"
android:background="@drawable/green_border"
android:layout_marginTop="30dp"
android:padding="6dp"
android:hint="Password"
android:inputType="textPassword"
android:drawableLeft="@drawable/baseline_lock_24"
android:drawablePadding="8dp"
android:textColor="@color/black"/>

<Button
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Login"
android:id="@+id/sigin_button"
android:textSize="18sp"
android:layout_marginTop="10dp"
app:cornerRadius="20dp"/>

</LinearLayout>
55

</androidx.cardview.widget.CardView>

</LinearLayout>

DataModel.java
package com.example.applicationchicken.model;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class DataModel {


private String berat;
private String harga;
private String stok;
private String kategori;
private String waktu;

private String key; // Menambahkan field key

// Konstruktor kosong diperlukan untuk Firebase


public DataModel() {
}

public DataModel(String berat, String harga, String stok, String kategori) {


this.berat = berat;
this.harga = harga;
this.stok = stok;
56

this.kategori = kategori;

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd


HH:mm:ss", Locale.getDefault());
this.waktu = sdf.format(new Date());
}

public String getBerat() {

return berat;
}

public void setBerat(String berat) {


this.berat = berat;
}

public String getHarga() {


return harga;
}

public void setHarga(String harga) {


this.harga = harga;
}

public String getStok() {


return stok;
}

public void setStok(String stok) {


57

this.stok = stok;
}

public String getKategori() {


return kategori;
}

public void setKategori(String kategori) {


this.kategori = kategori;
}

public String getKey() {


return key;
}

public void setKey(String key) {


this.key = key;
}
public String getWaktu() {
return waktu;
}

public void setWaktu(String waktu) {


this.waktu = waktu;
}
}

ActivityTambahData.java
package com.example.applicationchicken.activities;
58

import android.annotation.SuppressLint;
import android.content.DialogInterface;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;

import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

import com.example.applicationchicken.R;
import com.example.applicationchicken.model.DataModel;
import com.google.android.gms.tasks.OnFailureListener;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class ActivityTambahData extends AppCompatActivity {


59

private EditText etBerat, etHarga, etStok;


private Spinner spKategori;
private Button btSubmit, btClear;
private DatabaseReference databaseReference;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tambah_data);

etBerat = findViewById(R.id.et_berat);
etHarga = findViewById(R.id.et_harga);
etStok = findViewById(R.id.et_stok);
spKategori = findViewById(R.id.sp_kategori);
btSubmit = findViewById(R.id.bt_submit);
btClear = findViewById(R.id.bt_clear);

// Inisialisasi Firebase Database


databaseReference =
FirebaseDatabase.getInstance().getReference("data_ayam");

// Konfigurasi Spinner dengan sumber daya array string


ArrayAdapter<CharSequence> adapter =
ArrayAdapter.createFromResource(this,
R.array.categories_array, android.R.layout.simple_spinner_item);

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdo
wn_item);
spKategori.setAdapter(adapter);
60

btSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
sendDataToFirebase();
}
});

btClear.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
clearInputFields();
}
});
}

private void sendDataToFirebase() {


String berat = etBerat.getText().toString();
String harga = etHarga.getText().toString();
String stok = etStok.getText().toString();
String kategori = spKategori.getSelectedItem().toString();

// Periksa null sebelum menambahkan nilai ke dalam database


if (TextUtils.isEmpty(berat) || TextUtils.isEmpty(harga) ||
TextUtils.isEmpty(stok)) {
// Tampilkan pesan kesalahan atau notifikasi kepada pengguna
Toast.makeText(this, "Harap isi semua kolom",
Toast.LENGTH_SHORT).show();
} else {
// Menyiapkan data untuk dikirim ke Firebase
61

DataModel dataModel = new DataModel(berat, harga, stok, kategori);

// Mengirim data ke Firebase


String key = databaseReference.push().getKey();

if (key != null) {
// Set keterangan waktu pada dataModel sebelum dikirim
dataModel.setWaktu(getCurrentTime());

databaseReference.child(key).setValue(dataModel)
.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
// Tampilkan pesan sukses atau notifikasi kepada pengguna
Toast.makeText(ActivityTambahData.this, "Data berhasil
ditambahkan", Toast.LENGTH_SHORT).show();
// Setelah sukses, kembali ke ActivityAdmin
finish();
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
// Tampilkan pesan kesalahan atau notifikasi kepada
pengguna
Toast.makeText(ActivityTambahData.this, "Gagal
menambahkan data. " + e.getMessage(), Toast.LENGTH_SHORT).show();
}
});
} else {
62

// Tampilkan pesan kesalahan atau notifikasi kepada pengguna


Toast.makeText(ActivityTambahData.this, "Gagal membuat kunci
data.", Toast.LENGTH_SHORT).show();
}
}
}

// Metode untuk mendapatkan waktu saat ini dalam format yang diinginkan
private String getCurrentTime() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss", Locale.getDefault());
return sdf.format(new Date());
}

private void clearInputFields() {


// Mengosongkan semua input fields
etBerat.getText().clear();
etHarga.getText().clear();
etStok.getText().clear();
spKategori.setSelection(0); // Mengatur Spinner ke item pertama (indeks
0)
}

@SuppressLint("MissingSuperCall")
@Override
public void onBackPressed() {
showCancelConfirmationDialog();
}

private void showCancelConfirmationDialog() {


63

AlertDialog.Builder builder = new AlertDialog.Builder(this);


builder.setTitle("Konfirmasi");
builder.setMessage("Anda yakin ingin membatalkan perubahan?");
builder.setPositiveButton("Ya", new DialogInterface .OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Jika pengguna memilih "Ya", tutup activity
finish();
}
});
builder.setNegativeButton("Tidak", new
DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Jika pengguna memilih "Tidak", tutup dialog
dialog.dismiss();
}
});

AlertDialog dialog = builder.create();


dialog.show();
}
}

Activity_tambah_data.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
64

xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".activities.ActivityTambahData">

<!-- CardView untuk Kategori -->


<androidx.cardview.widget.CardView
android:id="@+id/input_cardview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="16dp"
android:elevation="8dp">

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/green_border"
android:padding="16dp">

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:background="@color/green"
android:gravity="center"
android:padding="20dp"
65

android:text="Input Data Ayam"


android:textColor="#FBFDFB"
android:textSize="25sp"
android:textStyle="bold"
android:typeface="serif" />

<TextView
android:id="@+id/tv_kategori"
android:layout_width="367dp"
android:layout_height="50dp"
android:layout_marginTop="128dp"
android:paddingLeft="15dp"
android:text="kategori"
android:textSize="20sp"
android:textStyle="bold" />

<Spinner
android:id="@+id/sp_kategori"
android:layout_width="287dp"
android:layout_height="38dp"
android:layout_marginLeft="160dp"
android:layout_marginTop="135dp"
android:padding="20dp"></Spinner>

<TextView
android:id="@+id/tv_berat"
android:layout_width="367dp"
android:layout_height="50dp"
android:layout_below="@id/tv_kategori"
66

android:layout_marginTop="5dp"
android:paddingLeft="15dp"
android:text="Berat Ayam"
android:textSize="20sp"
android:textStyle="bold" />

<EditText
android:id="@+id/et_berat"
android:layout_width="287dp"
android:layout_height="38dp"
android:layout_marginLeft="160dp"
android:layout_marginTop="186dp"
android:hint="@string/berat_ayam"
android:inputType="text"
android:paddingRight="15dp"
android:textSize="12dp" />

<TextView
android:id="@+id/tv_harga"
android:layout_width="367dp"
android:layout_height="50dp"
android:layout_below="@id/tv_berat"
android:layout_marginTop="5dp"
android:paddingLeft="15dp"
android:text="Harga"
android:textSize="20sp"
android:textStyle="bold" />

<EditText
67

android:id="@+id/et_harga"
android:layout_width="357dp"
android:layout_height="wrap_content"
android:layout_marginLeft="160dp"
android:layout_marginTop="245dp"
android:hint="@string/harga_ayam"
android:inputType="text"
android:paddingRight="15dp"
android:textSize="12dp" />

<TextView
android:id="@+id/tv_stok"
android:layout_width="367dp"
android:layout_height="50dp"
android:layout_below="@id/tv_harga"
android:layout_marginTop="5dp"
android:paddingLeft="15dp"
android:text="Stok"
android:textSize="20sp"
android:textStyle="bold" />

<EditText
android:id="@+id/et_stok"
android:layout_width="357dp"
android:layout_height="wrap_content"
android:layout_marginLeft="160dp"
android:layout_marginTop="300dp"
android:hint="@string/stok_ayam"
android:inputType="text"
68

android:paddingRight="15dp"
android:textSize="12dp" />

<Button
android:id="@+id/bt_clear"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:layout_marginLeft="40dp"
android:layout_marginTop="387dp"
android:text="clear" />

<Button
android:id="@+id/bt_submit"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:layout_marginLeft="165dp"
android:layout_marginTop="387dp"
android:text="submit" />

</RelativeLayout>

</androidx.cardview.widget.CardView>
</LinearLayout>
69

Lampiran 2. Data Hasil Wawancara

Narasumber: Ahmad Maulana Abdur Rahim


Prodi : Teknologi Produksi Ternak

1. Bagaimana mekanisme pencatatan data ketersedian ayam Broiler


pada prodi teknologi produksi ternak?

Jawab : masih manual atau masih menggunakan kertas dalam pencatatan data
ayam broiler

2. Apa kekurangan sistem yang berjalan saat ini?

Jawab : Kelemahan pada sistem manual ini sangat rentan terhadap potensi
kehilangan data yang dapat terjadi akibat pencatatan yang dilakukan secara manual.
Selain itu, proses pencatatan yang memerlukan kehadiran langsung di kandang dan
hanya dapat dilakukan pada waktu tertentu menjadi kendala signifikan dalam
efisiensi dan ketersediaan informasi.

3. Apakah menurut kamu sistem yang berjalan saat ini sudah efisien?

Jawab : Dari pendapat saya sebagai salah satu mahasiswa, sistem yang sedang
berjalan saat ini terlihat kurang efektif. Seiring perkembangan zaman yang semakin
maju, adanya berbagai teknologi yang dapat mempermudah proses pencatatan, saya
percaya bahwa prodi kami dapat mendapatkan manfaat besar dari integrasi solusi
yang lebih canggih dan modern.
70

Lampiran 3. Lembar Pengujian

LEMBAR PENGUJIAN
APLIKASI KETERSEDIAAN AYAM BROILER UNTUK PRODI
TEKNOLOGI PRODUKSI TERNAK POLITEKNIK NEGERI LAMPUNG
BERBASIS ANDROID

Tanggal Pengujian : Jumat, 1 Desember 2023


Penguji : Ahmad Maulana Abdur Rahim
Mahasiswa : Teknologi Produksi Ternak
NO Skenario Pengujian Hasil yang Hasil Kesimpulan
Diharapkan Pengujian
1 Admin dapat Admin dapat sesuai Valid
melakukan Login melakukan login
2 Admin dapat Admin dapat sesuai valid
mengelola data melakukan insert,
ketersedian ayam update, dan delete
3 Admin Ketika salah Admin dapat sesuai valid
menginputkan mengetahui dalam
username password menginputkan akun
akan muncul tersebut salah
notifikasi pada
aplikasi
4 Admin dapat Admin dapat sesuai valid
melakukan melakukan pencarian
pencarian kategori ayam
berdasarkan
kategori ayam
5 Customer dapat Customer dapat sesuai valid
melihat informasi melihat informasi
ketersedian ayam ketersediaan ayam
6 Customer dapat Customer dapat sesuai valid
menghubungi melakukan
admin melalui wa pemesanan via wa
untuk melakukan yang tertera
pemesanan
71

Bandar Lampung, 1 Desember 2023


Penguji Aplikasi

Ahmad Maulana Abdur Rahim


Teknologi Produksi ternak
72

LEMBAR PENGUJIAN
APLIKASI KETERSEDIAAN AYAM BROILER UNTUK PRODI
TEKNOLOGI PRODUKSI TERNAK POLITEKNIK NEGERI LAMPUNG
BERBASIS ANDROID

Tanggal Pengujian : Jumat, 1 Desember 2023


Penguji : Febriansyah Agung Tirta
Mahasiswa : Dedi Surahmin
NO Skenario Pengujian Hasil yang Hasil Kesimpulan
Diharapkan Pengujian
1 Admin dapat Admin dapat sesuai Valid
melakukan Login melakukan login
2 Admin dapat Admin dapat sesuai valid
mengelola data melakukan insert,
ketersedian ayam update, dan delete
3 Admin Ketika salah Admin dapat sesuai valid
menginputkan mengetahui dalam
username password menginputkan akun
akan muncul tersebut salah
notifikasi pada
aplikasi
4 Admin dapat Admin dapat sesuai valid
melakukan melakukan pencarian
pencarian kategori ayam
berdasarkan
kategori ayam
5 Customer dapat Customer dapat sesuai valid
melihat informasi melihat informasi
ketersedian ayam ketersediaan ayam
6 Customer dapat Customer dapat sesuai valid
menghubungi melakukan
admin melalui wa pemesanan via wa
untuk melakukan yang tertera
pemesanan
73

Bandar Lampung, 1 Desember 2023


Penguji Aplikasi

Dedi Surahmin
Mahasiswa Manajemen Informati
74

LEMBAR PENGUJIAN
APLIKASI KETERSEDIAAN AYAM BROILER UNTUK PRODI
TEKNOLOGI PRODUKSI TERNAK POLITEKNIK NEGERI LAMPUNG
BERBASIS ANDROID

Tanggal Pengujian : Jumat, 1 Desember 2023


Penguji : Anggun Putri Lestari
Mahasiswa : Manajemen Informatika
NO Skenario Pengujian Hasil yang Hasil Kesimpulan
Diharapkan Pengujian
1 Admin dapat Admin dapat sesuai Valid
melakukan Login melakukan login
2 Admin dapat Admin dapat sesuai valid
mengelola data melakukan insert,
ketersedian ayam update, dan delete
3 Admin Ketika salah Admin dapat sesuai valid
menginputkan mengetahui dalam
username password menginputkan akun
akan muncul tersebut salah
notifikasi pada
aplikasi
4 Admin dapat Admin dapat sesuai valid
melakukan melakukan pencarian
pencarian kategori ayam
berdasarkan
kategori ayam
5 Customer dapat Customer dapat sesuai valid
melihat informasi melihat informasi
ketersedian ayam ketersediaan ayam
6 Customer dapat Customer dapat sesuai valid
menghubungi melakukan
admin melalui wa pemesanan via wa
untuk melakukan yang tertera
pemesanan
75

Bandar Lampung, 1 Desember 2023


Penguji Aplikasi

Anggun Putri Lestari


Mahasiswa Manajemen Informatika
76

LEMBAR PENGUJIAN
APLIKASI KETERSEDIAAN AYAM BROILER UNTUK PRODI
TEKNOLOGI PRODUKSI TERNAK POLITEKNIK NEGERI LAMPUNG
BERBASIS ANDROID

Tanggal Pengujian : Jumat, 1 Desember 2023


Penguji : Wahyuni Elvira
Mahasiswa : STIT Darul Fatah Bandar Lampung
NO Skenario Pengujian Hasil yang Hasil Kesimpulan
Diharapkan Pengujian
1 Admin dapat Admin dapat sesuai Valid
melakukan Login melakukan login
2 Admin dapat Admin dapat sesuai valid
mengelola data melakukan insert,
ketersedian ayam update, dan delete
3 Admin Ketika salah Admin dapat sesuai valid
menginputkan mengetahui dalam
username password menginputkan akun
akan muncul tersebut salah
notifikasi pada
aplikasi
4 Admin dapat Admin dapat sesuai valid
melakukan melakukan pencarian
pencarian kategori ayam
berdasarkan
kategori ayam
5 Customer dapat Customer dapat sesuai valid
melihat informasi melihat informasi
ketersedian ayam ketersediaan ayam
6 Customer dapat Customer dapat sesuai valid
menghubungi melakukan
admin melalui wa pemesanan via wa
untuk melakukan yang tertera
pemesanan
77

Bandar Lampung, 1 Desember 2023


Penguji Aplikasi

Wahyuni Elvira
Mahasiswa STIT Darul Fatah Bandar Lampung

Anda mungkin juga menyukai