Anda di halaman 1dari 12

BAB II

KAJIAN PUSTAKA
2.1 Aplikasi Mobile
Perangkat lunak aplikasi merupakan bagian dari suatu perangkat lunak computer yang
dimana kemampuan komputer digunakan secara langsung untuk melakukan fungsi yang
diperlukan pengguna [5]. Seringkali dibandingkan dengan perangkat lunak sistem yang
menggabungkan kemampuan komputer yang berbeda, kemampuan ini tidak berlaku langsung
kepada pengguna. Beberapa contoh aplikasi perangkat lunak ialah pemutar media, lembar
kerja, dan pengolah kata. Ada sebutan aplikasi berupa suite aplikasi (application suite) yaitu
berupa sebutan untuk suatu jumlah atau beberapa aplikasi yang digabung satu menjadi suatu
paket [5]. Sebagai contoh yaitu Open Office.org dan Microsoft Office, yang didalamnya
terdapat suatu aplikasi lembar kerja, pengolah kata, serta beberapa aplikasi lainnya yang
digabung menjadi satu. Aplikasi paket biasanya mirip dengan antarmuka pengguna, sehingga
memudahkan pengguna untuk mempelajari dan menggunakan setiap aplikasi. Seringkali,
aplikasi ini berkomunikasi satu sama lain untuk kepentingan pengguna.

Kata aplikasi dan mobile merupakan asal dari munculnya istilah aplikasi mobile.
Aplikasi memiliki arti berupa penggunaan, lamaran, penerapan. Secara istilah, aplikasi
merupakan suatu program yang dirancang dalam melakukan suatu tugas bagi aplikasi lain atau
pengguna dan bisa dipakai dalam mewujudkan tujuan yang diharapkan. Sedangkan mobile bisa
diterjemahkan sebagai perpindahan untuk berpindah dari satu lokasi ke lokasi lain [6]. Aplikasi
mobile bisa diterjemahkan sebagai aplikasi yang dapat digunakan atau dijalankan jika
pengguna berpindah dari satu lokasi ke lokasi lain dan berukuran kecil. Aplikasi seluler ini
tersedia untuk perangkat smartphone, telepone saluler, PDA, pager, nirkabel, dan perangkat
sejenisnya.

2.2 Web Service


Web Service ialah suatu jenis perangkat lunak yang tidak dipengaruhi adanya bahasa
pemograman, arsitektur, platform, yang memfasilitasi cara-cara atau layanan untuk pertukaran
data yang bisa diakses oleh jaringan [7]. Web Service memilki tujuan untuk meningkatkan
kolaborasi antar pemrogram dan perusahan, yang mengizinkan aplikasi dalam layanan web
untuk digunakan oleh aplikasi lain tanpa mengetahui detail program yang terdapat di dalamnya.
Contoh penerapan Web Service yaitu REST dan SOAP.

5
2.2.1 REST

REST berbasis pada teknologi state-of-the-art transfer technology (REST), gaya


pendekatan komunikasi dan arsitektur yang sering dipakai dalam mengembangkan web service
ialah standar arsitektur komunikasi berbasis web yang sering dipakai dalam mengembangkan
layanan berbasis web. Biasanya dilakukannya penggunaan melalui Hypertext Transfer
Protocol atau disingkat HTTP yang dipakai untuk protokol dalam komunikasi data [8]. Di
dalam arsitektur REST, sumber daya/data (resource) disediakan oleh REST sserver dan yang
mengakses sekaligus menampilkan resource tersebut ialah REST client untuk pengguna
selanjutnya. Terdapat global ID atau Universal Resource Identifiers (URLs) yang
mengidentifikasi setiap resource. Representasi resource tersebut dalam yaitu dalam bentuk
format XML, teks, atau JSON. Biasanya format yang dipakai yaitu XML dan JSON, namun
pada penelitian ini peneliti menggunakan JSON sebagai formatnya dalam penggunaan REST
(representational state transfer / REST) tersebut.

Standar digunakannya sebuah pertukaran data yang dilakukan antar sebuah bentuk aplikasi
maupun sistem merupakan web service, dikarenakan sebuah bentuk pertukaran data bisa ditulis
melalui bahasa pemrograman yang tidak sama pada sebuah bentuk platform yang berbeda.
Dalam bentuk implementasi salah satu contohnya yakni REST dan SOAP. Layanan web
berdasarkan arsitektur REST kemudian dikenal sebagai layanan web RESTful. Layanan web
ini menggunakan metode HTTP untuk mengimplementasikan konsep arsitektur REST.

Pada penelitian yang ditemukan dilakukannya penggunaan sebuah metode dalam analisis
dalam sebuah bentuk analisis pada sebuah aplikasi yang menggunakan permodelan didalamnya
yakni permodelan domain engineering[8]. Dalam sebuah penelitian memiliki tujuan untuk
mengusulkan arsitektur microservices berbasis domain engineering untuk platform financial
trading system, yang dapat memecahkan masalah kompleksitas dan biaya pemeliharaan yang
tinggi dari sistem financial trading berskala besar dan nyata. Penelitian ini menghasilkan
beberapa usulan untuk desain arsitektur microservices untuk system financial trading
berdasarkan pemodelan domain engineering. Diantaranya Aggregator Microservices Design,
Proxy Microservices Design, Chained Microservices design, dan Asynchronous Messaging
Microservices Design[8].

Bahasa internet bisa menjadi suatu anggapan pada browser yang menggunakan REST.
Munculnya API dalam melakukan ekspos layanan web dikarenakan penggunaan cloud yang

6
meningkat. REST menjadi pilihan yang masuk akal dalam membuat API yang dapat
mungkinnya pengguna untuk berinteraksi dan terhubung melalui layanan cloud. Penggunaan
API sudah banyak dilakukan diantaranya pada situs Twitter, LinkedIn, Google, dan Amazon
[9].

2.3 Android
Android merupakan suatu sistem operasi perangkat mobile yang basisnya linux di
dalamnya mencangkup aplikasi, middleware, dan sistem operasi. Peruntukan android ialah
pada telepon saluler yang basisnya linux. Platform terbuka tersedia pada android sehingga para
pengembang dapat membuat aplikasi mereka sendiri. Android Inc adalah perusahaan awal
yang mengembangkan android, yaitu suatu perusahaan baru yang membuat perangkat lunak
baru untuk ponsel yang kemudian oleh Google Inc dibeli. Dalam mengembangkannya,
dibentuklah Open Handset Alliance (OHA), gabungan dari 34 perusahaan perangkat lunak,
perangkat keras, dan telekomunikasi yang didalamnya termasuk Nvidia, T-Mobile, Qualcomm,
Motorola, Intel, HTC, dan Google [10].

Google Inc. bangun Android sepenuhnya dan bersifat open source (terbuka) sehingga
pengembang dapat menggunakan dan memasang Android tanpa membayar lisensi Google.
Android Software Development Kit (SDK) menyediakan alat dan Application Programming
Interface (API) yang diperlukan untuk menjalankan aplikasi pada platform Android dengan
bahasa pemograman Java, diluncurkan pada 2008, dan tetap kompetitif di pasar teknologi.
Apabila dibandingan dengan pesaingnya IOS menurut data yang dikumpulkan oleh
International Data Corporation (IDC) yaitu android memiliki pengguna yang jauh lebih
banyak.

2.3.1 Android SDK


Android SDK (Software Development Kit) merupakan termasuk API yang dibutuhkan dalam
mulai mengembangkan aplikasi di platform Android menggunakan bahasa pemrograman Java.
Android adalah bagian dari perangkat lunak seluler yang mencakup aplikasi utama,
middleware, dan sistem operasi yang dirilis oleh Google. Untuk alat bantu API pada masa kini
disediakan Android SDK dalam melakukan pengembangan aplikasi di platform Android
dengan memanfaatkan bahasa pemrograman Java yang digunakan sebagai aplikasi netral,
kesempatan diberikan oleh android dalam membuat aplikasi yang dibutuhkan diluar dari
aplikasi asal dari Smartphone/Handphone [11].

7
2.3.2 Java
Sejak pada tahun 1995 java menjadi bahasa pemograman yang sangat populer[11]. Dalam
menjalankan bahasa Java bisa dilakukan diberbagai perangkat mobile dan komputer.
Penggunaan bahasa ini sudah banyak dilakukan pada untuk pengembangan aplikasi yang
berbasis android. Object Oriented Paradigm yang dianut oleh Java. Dalam penelitian ini,
bahasa pemrograman Java dipakai dalam membangun aplikasi berbasis Android dan kemudian
mengukur kinerja aplikasi dalam bahasa pemrograman Kotlin dalam hal penggunaan waktu
kerja, penggunaan memori, dan CPU.

2.4.3 Kotlin
Kotlin adalah bahasa pemrograman yang direkayasa secara statistik yang menggabungkan
prinsip-prinsip objektif dengan fitur-fitur praktis dan berjalan pada Java Virtual Machine
(JVM). Semenjak 2011 bahasa pemrograman ini dikembangkan oleh JetBrains dan pada Mei
2017 resmi didukung oleh Google dalam melakukan pengembangan aplikasi android yang
diumumkan pada acara Google I/O 2017 [12]. Peningkatan yang signifikan terjadi pada bahasa
pemograman ini setelah adanya event tersebut. Bahasa pemograman ini dapat dipakai dalam
melakukan pengembangan client-side, server-side, dan aplikasi android. Kotlin sepenuhnya
terintegrasi dan dikembangkan dengan Java, sehingga Kotlin dapat berintegrasi dengan Java
dalam satu proyek aplikasi. Masalah umum lainnya adalah NullException Pointer (NPE) dalam
bahasa pemrograman Java.

Kotlin adalah bahasa pemrograman statically-typed yang mengkombinasikan prinsip-prinsip


object-oriented dengan fitur-fitur fungsional dan berjalan diatas Java Virtual Machine (JVM).
Agar masalah tersebut tidak terjadi lagi pada kotlin maka dari itu kotlin didesain null-safety.
Berbeda dengan Java yang pengecekan NPE dilakukan saat runtime, NPE sudah bisa diketahui
ketika proses compile time pada bahasa Kotlin. Fitur fungsional programing yang mendukung
bahasa Kotlin seperti penggunaan lazy evaluation, higher-order function, lambda expression,
dan beberapa metode collections seperti ordering, mapping, filtering, dan lain sebagainya.

2.4 Golang
Go atau dikenal juga sebagai Golang adalah bahasa pemrograman open source yang
membuatnya mudah dalam membangun perangkat lunak yang sederhana, andal, dan efisien
[13]. Golang merupakan open source programming language yang dapat digunakan dengan
banyak tujuan umum [14]. Golang ditemukan oleh Robert,Rob dan Ken di google pada tahun
2007 dan mulai digunakan oleh developer pada tahun 2009 [14]. Golang dapat digunakan untuk

8
membuat website, aplikasi serta kepentingan software development baik dari web atau mobile
application. Golang memiliki berbagai fitur yang ada dalam bahasa Object-Oriented
Programming (OOP) karena hal itu, maka Golang hanya memiliki struct. Go lebih mudah untuk
dikelola dan dimodifikasi karena tidak ada jalur class yang akan diwarisi . Serta karena
merupakan open source, Go dapat disesuaikan dengan kebutuhan dari developer akan aplikasi
atau pun website yang akan dibuat [14]. Yang membuat menariknya bahasa pemograman ini
di mata startup ada beberapa hal diantaranya,

1. Tidak sulit untuk dipahami apabila dibandingkan dengan pesaingnya seperti gaya sintaks
yang mempunyai Golang tidak lebih besar yang bisa lebih mudah dipahami. Dalam
menemukan istilah-istilah yang susah dipahami. Bahkan programmer yang memakai gaya
sintaks yang beda juga merasakan adanya kemudahan ini.
2. Apabila dikompilasi dengan kode mesin Golang lebih cepat yang akibatnya dapat melebihi
kemampuan dari pemrograman lain yang kerjanya dengan virtual runtime. Didalamnya
juga termasuk program-program bisa bekerja cepat, menggunakan API yang bisa
menggabungkan dalam waktu detik. Sehingga hal ini membuat Golang sebagai bahasa
pemrograman yang lebih cepat.
3. Mempunyai Concurrency, dimana hal ini ialah suatu kemampuan yang dimiliki sebuah
program dalam melakukan fungsi secara mandiri dengan bagian-bagian kecil. Sedikit dari
bahasa pemrograman yang mempunyai concurrency, namun Golang malah berani dalam
memiliki kemampuan seperti ini yang terdiri dari model yang mudah untuk dipahami.
4. Memiliki garbage collector yang terdapat dalam sistem pengolahan memori yang ada di
sistem pemrograman Golang tidak lebih sulit jika dibandingkan dengan sintak C dan C++.
Dengan demikian, satu garbage collector dapat menampung kumpulan bagian-bagian yang
teralokasi dengan dinamis.

Dalam penelitian ini menggunakan Bahasa pemrograman golang sebagai backend,


dimana sangat membantu dalam pengembangan perangkat lunak secara efisien dan mudah
untuk dipelajari. Hal terpenting yang menjadi nilai lebih dari Golang sendiri adalah dari sisi
keamanan dan skalabilitas yang dimiliki. Bahasa Go juga dapat digunakan untuk landasan
backend sebuah aplikasi[13].

Jika diterapkan dalam penelitian ini, hal seperti back end, tentu tidak asing dengan yang
masalah seperti meningkatnya jumlah aktivitas pengguna aplikasi. Hal tersebut dapat

9
diselesaikan dengan bantuan fungsi dari Golang yang bernama concurrency dan footprint yang
memiliki kapasitas memori yang kecil (rendah)[14].

2.5 PostgreSQL
Pada awalnya pengembangan dari postgres yaitu dilakukan oleh staff dan mahasiswa
programmer di University of California dengan bimbingan dari seorang Professor Michael
Stonebraker. Nama Postgase menjadi awal penamaan dari software ini, namun banyak sekali
tambahan pada fungsi fungsi SQL sehingga dirubah namanya menjadi Postgres95 pada tahun
1995, dan nama yang dipakai sekarang menjadi PostgreSQL semenjak pada tahun 1996 [15].
Standar database berskala besar (ANSI-SQL92) tidak terpenuhi oleh Postgres pada saat awal
dikembangkan, dikarenakan awalnya tujuan dari postgres hanyalah menjadi database yang
memiliki fitur melimpah dan kebebasan yang tinggi. Standar tersebut oleh postgres berusaha
dipenuhi karena merasa tertantang, dan akhirnya standar ANSI-SQL berhasil dipenuhi oleh
postgres [15]. Namun ada yang lebih gila lagi yaitu jika kemampuan dari postgres melebihi
dari standar ANSI-SQL artinya kemampuan postgres juga melebihi dari standar ANSI-SQL92
yang diantara hal itu yaitu Oracle. Hal yang wajar apabila oleh Linux Award Postgres
dinobatkan sebagai Database pilihan yang menempati tempat ke-dua Oracle [15].

Kemampuan dari postgres dalam mendefinisikan SQL-nya sendiri, yaitu utamanya pada bagian
pembuatan function merupakan menjadi suatu hal yang standar untuk membedakan sistem
relasional standar dengan postgres [15]. Hal tersebut mungkin terjadi dikarenakan
tersimpannya informasi yang ada pada postgres bukan hanya kolom dan tabel, namun cara
akses, fungsi, tipe, dan informasi yang lain. Semuanya itu dikumpulkan pada sebuah class yang
nantinya dapat memungkinkan seorang user dalam merubahnya. Postgres dapat lebih gampang
dikembangkan jika postgres memakai model class ini dan dapat menerjemahkan suatu tabel
menjadi turunan tabel lainnya. Apabila pada database yang masih bersifat konvensional hanya
dapat dilakukan dengan cara melakukan penggantian pada source code atau bisa dengan
memakai modul tambahan. Dukungan antar muka yang berasal dari berbagai bahasa juga
menjadi suatu kelebihan dari postgres seperti bahasa Java, Phyton, C++, PHP, Perl, dan masih
banyak lagi [15]. Koneksiftas dengan database yang lain juga bisa dibuat oleh postgres seperti
pada pgacces, Interbase, pgdump,bahkan hampis semua Database yang ada pada Linux.
Dengan adanya kemampuan tersebut menjadi wajar bila membuat user yang pernah memakai
postgres menjadi kecanduan dan sulit jika disuruh pindah kepada database lain termasuk juga
penulis.

10
PostgreSQL memiliki sifat open source dan merupakan suatu object- relational Database
Management system (ORDBMS) [15]. Termasuk kedalam database yang powerfull
PostgreSQL dan juga mendukung pada standar SQL99 dan SQL92 hal ini juga mendukung
untuk bahasa pemrograman PHP, Python, Perl, Tcl, Java, C++, C, dst.

PostgreSQL jika dilihat dalam buku: Up and Running menurut perjanjian lisensi
BSD[atas] sistem basis data yang disebarluaskan secara bebas. Pada saat ini paling banyak
dipakai piranti lunak ini, selain daripada Orace dan MySQL. Fitur replikasi yang sangat
berguna ada pada PostgreSQL. Berikut fitur apa saja yang tersedia pada PostgreSQL yaitu
PGCluster, Slony, PGPool, DB Mirror, dan sebagainya. Dibawah ini merupakat tiga tools
utama yang ada pada PostgreSQL dalam mendukung pemakaian PostgreSQL bagi developer:

1. PSQL merupakan sebuah interface pada command-line yang isinya yaitu perintah yang
tertulis (query) pada PostgreSQL.
2. PgAdmin ialah alat yang dipakai untuk menggunakan PostgreSQL dan termasuk kedalam
aplikasi grafis. PgAdmin ialah merupakan suatu aplikasi dekstop yang bisa tersambung
diberbagai server PostgreSQL walaupun sistem operasinya memiliki perbedaan.
3. PHPPgAdmin merupakan instrumen yang dipakai dalam memakai PostgreSQL yang
menjalankannya di web sama persis seperti PHPMyAdmin untuk MySQL.

2.6 Metode R&D (Research and Development)


Research and development (R&D) merupakan kegiatan penelitian dasar dalam proses
mendapatkan sebuah informasi terkait hal kebutuhan pengguna (needs assessment), yang
selanjutnya dilakukan kegiatan pengembangan (development) dalam nantinya mendapatkan
hasil sebuah prosuk dan mengkaji efektifitas dari produk tersebut [16]. Dua kata yang
menyusun pendidikan dan pengembanagan yaitu research dan development. Untuk
mendapatkan hasil berupa rancangan produk tertentu, pada kegiatan pertama yang dilakukan
yaitu melakukan penelitian dan studi literatur, dan untuk kegiatan keduanya yaitu melakukan
pengembangan atau menguji efektifitas, memvalidasi dari rancangan yang sudah dirancang,
yang nantinya mendapatkan hasil sebuah produk yang teruji dan juga bisa dipakai oleh
masyarakat luas [16]. Proses pengembangan menjadi sebuah produk baru yang berasal dari
output tujuan penelitian dan pengembangan [17].

Dari adanya pendapat tersebut bisa diambil kesimpulan jika penelitian pengembangan
R&D merupakan sebuah teknik penelitian yang tujuannya ialah sebagai mengembangkan
sebuah produk yang mulanya dari penelitian kebutuhan yang dilanjutkan pengembangan

11
sampai menghasilkan suatu sistem yang sudah teruji. Penelitian yang dilakukan ini memakai
jenis penelitian research and development (R&D).

2.7 Metode Pengembangan XP (Extreme Programming)


Salah satu metode dalam pengembangan software yaitu extreme programming yang
dalam kategori Agile Software Development [18]. Fondasi yang ada pada XP ada 5 (lima)
diantaranya:

a. Komunikasi yang dikatakan baik dalam XP memerlukan peranan dari user dan
developer dalam memutuskan alat apa yang diperlukan serta fungsi dari software itu.
b. Kesederhanaan, dalam meraih kesederhanaan, XP memberikan batasan terhadap
developer agar hanya melakukan perancangan kebutuhan yang mendesak bukan sebuah
kebutuhan yang akan datang, akibatnya mudah dalam penerapannya pada sebuah
pemrograman. Jika rencananya harus dilakukan perubahan, bisa dilakukan refactoring.
c. Umpan balik berasal melalui tiga buah sumber diantaranya penerapan software itu
sendiri, anggota tim, dan user yang lain. Umpan balik ditunjukkan melalui penerapan
karakteristik usecase, fungsi, dan output.
d. Keberanian merupakan sebuah praktik yang digunakan dalam XP lebih dalam
memprioritaskan disiplin. Kebutuhan sekarang harus disiplin dipersiapkan oleh
developer XP, tentang sebuah keperluan yang ada dimasa depan yang berkemungkinan
adanya perubahan secara drastis, akibatnya mungkin sekali untuk melakukan perubahan
rancangan dan oenerapan kode.
e. Menghargai yaitu sifat yang saling menghormati dari nilai diri pada setiap individu tim
developer.

XP memakai suatu pendekatan berupa objek-orientasi yang dipakai untuk paradigma


pengembangan bahkan termasuk seperangkat aturan. Dalam XP, ada sebanyak 4 kerangka
sebuah kegiatan diantaranya testing, coding, design, dan planning.

12
Gambar 2.1 Metode Extreme Programming

1. Planning, pada tahap ini dibuat dengan melakukan “user stories” yang dapat
menerangkan fungsional, fitur, dan output dari software yang akan dirancang.
2. Design, design XP mendukung refactoring saat mengubah perangkat lunak sistem
untuk mengubah struktur kode dan menyederhanakan kode.
3. Coding, dengan memakai metode test driven development (TDD) awal dari coding
tahap XP ialah membangun serangkaian test, selanjutnya fokus yang harus dilakukan
pengembang ialah penerapan dalam melewati tes. Dalam XP juga dikenalkan dengan
suatu istilah Pair Programming yaitu berupa sebuah penulisan program yang dilakukan
dengan cara berpasangan. Penulisan program dilakukan pada satu komputer yang sama
oleh dua orang programmer. Sebuah real-time quality assurance dan real-time problem
solving akan didapatkan dengan melakukan ini.
4. Testing, testing dilakukan melalui uji sebuah kode yang ada di unit testing. Acceptance
test terdapat pada XP. Pengujian yang dilakukan yaitu oleh costomer langsung yang
melakukan dengan fokus berupa fungsi dan fitur yang ada pada sistem secara
menyeluruh. User stories yang diterapkan lah yang menghasilkan acceptance test.

13
2.8 Pengujian Software
Pengujian software merupakan salah satu yang sangat penting dan dibutuhkan untuk
menilai kualitas sistem yang ada, agar fungsi dalam software dapat bekerja sesuai dengan yang
diharapkan pengguna [19]. Pengujian software ditujukan untuk mencari kesalahan atau
kekurangan didalam sebuah sistem sehingga jika terdeteksi memiliki sebuah kesalahan ataupun
kekurangan dapat dilakukannya pembenahan atau pun perbaikan dengan cepat terhadap
kesalahan yang ada. Dalam pengujian software memiliki beberapa tahapan antara lain sebagai
berikut [19] :

1. Unit testing : adalah sebuah aktivitas pada struktur kontrol untuk menjajal alur proses
dalam rangka memastikan identifikasi secara maksimal kesalahan dan memastikan
fungsionalitas secara lengkap.
2. Integration testing : adalah sebuah kumpulan problem yang dideteksi saat konstruksi dan
verifikasi program.
3. High-order test : pengintegrasian sebuah sistem yang sudah lengkap atau dibuat menjadi
bagian yang lengkap untuk dijadikan kedalam satu kesatuan.
4. Validation test : sebagai pemberi jaminan terakhir untuk memastikan bahwa aplikasi
yang dibuat telah memenuhi seluruh dari keriteria yang dibutuhkan.

Selain itu,terdapat banyak macam dalam melakukan pengujian perangkat lunak untuk
mencapai kualias sistem yang baik, salah satu diantaranya sebagai berikut:

2.8.1 Black-Box Testing


Black Box Testing adalah suatu metode pengujian yang berfokus terhadap
fungsionalitas perangkat lunak [17]. Pengujian ini bertujuan untuk menemukan kesalahan yang
tidak terduga didalam sebuah perangkat lunak dan untuk mengetahui fitur didalam sistem
sudah berjalan dengan normal sesuai dengan kebutuhan pengguna. Pengujian menggunakan
black-box testing memiliki keuntungan yaitu penguji tidak perlu memahami bahasa
pemrograman tertentu, karena pengujian dari sudut penggunaan sehingga dapat menemukan
kesalahan tidak terduga, dan programmer dengan tester saling bergantung satu sama lain[19].
Ada pun kesalahan yang mungkin terjadi dalam pengujian black-box testing seperti fungsi yang
tidak benar atau hilang, kesalahan interface ,dan kesalahan kinerja.

Pengujian black-box testing memiliki beberapa teknik pengujian beserta fungsinya.


Salah satu teknik yang digunakan dalam penelitian ini yaitu Boundary Value Analysis (BVA).
BVA sendiri merupakan sebuah teknik pengujian pada black-box untuk menguji range pada

14
sebuah inputan dengan menguji batas atas dan bawah pada inputan yang akan di ujiakan, hal
tersebut mampu dapat menemukan kesalahan yang tidak terduga pada sistem dan memastikan
apakah sistem sudah berjalan dengan normal sesuai dengan semestinya [19].

2.8.2 UAT (User Acceptance Test)


User Acceptance Test (UAT) merupakan tindakan dari pengguna dalam melakukan
sebuah proses pengujian yang hasil akhirnya berupa suatu dokumen hasil uji yang nantinya
bisa sebagai bukti dan sudah terpenuhinya kebutuhan penggguna [20]. Tahap pengujian User
Acceptance Test merupakan tahapan terakhir sebelum sistem dipakai oleh user. Selama UAT,
pengguna menguji sistem untuk memastikan apakah sistem dapat berjalanan sesuai dengan
fungsinya dan spesifikasi yang telah ditetapkan sebelumnya [21].

2.9 Unified Modelling Language


Unified Modelling Language atau lebih dikenal dengan UML adalah pemodelan
standar yang memungkinkan untuk seseorang untuk dapat memvisualisasikan desain sistem
secara jelas dan bahkan memetakan persyaratan fungsional untuk solusi perangkat lunak [22].
Beberapa jenis diagram diantara lain:

1. Use Case Diagram


Use Case Diagram digunakan menggambarkan funsionalitas yang harus disediakan
oleh system dan dapat memodelkan interaksi antara aktor dengan system, Aktor
mewakili pengguna dan sistem eksternal yang berinteraksi dengan sistem untuk
keperluan use case. use case
2. Activity Diagram
Activity Diagram digunakan untuk memodelkan proses bisnis. Proses bisnis adalah
serangkaian tugas terkoordinasi yang mencapai tujuan bisnis, seperti pengiriman
pesanan pelanggan, Activity Diagram memungkinkan untuk mendefinisikan dan
menjalankan
3. Class Diagram
Class Diagram digunakan untuk menggambarkan menggambarkan berbagai jenis objek
yang sistem dapat miliki, dan diagram kelas menunjukkan kelaskelas ini berhubungan.

2.10 Penelitian Terdahulu


Penelitian terdahulu dapat digunakan sebagai acuan yang penting dan mungkin berguna
dalam sebuah penelitian yang akan diimplementasikan. Beberapa penelitian terdahulu berikut
merupakan salah satu acuan dari penelitian ini ialah sebagai berikut:

15
a. Penelitian yang dijadikan referensi yaitu yang dilakukan oleh Abdul F. Duke, Made
Krisnanda, Quido C. Kainde pada tahun 2020 yang berjudul Sistem Lapor Dini
Bencana Kebakaran di Kota Bitung. Pada penelitian tersebut, metode waterfall
sebagai metode yang dipakai. Penelitian tersebut mendapatkan hasil berupa sistem
alarm kebakaran dini dengan basis telepon saluler melalui beberapa fitur sebagai
pembantu dalam melaporkan kebakaran, mengatasi masalah masyarakat, dan untuk
menemukan cara dan lokasi yang tercepat untuk kebakaran dalam rangka membantu
tugas dari pemadam kebakaran. [23].
b. Penelitian lain yang dijadikan referensi yaitu yang dilakukan oleh Melati Naomi,
Handrie Noprisson pada tahun 2019 yang berjudul Analisa dan Perancangan Sistem
Pengaduan Mahasiswa Berbasis Web (Studi Kasus : Universitas Mercu Buana
Kranggan). Sistem pengaduan mahasiswa tersebut merupakan sebuah sistem yang
mempermudah seorang mahasiswa dalam melakukan suatu pengaduan di universitas
yang dapat dilakukan secara online. Untuk menganalisis evaluasi elemen analisis
digunakan metode PIECES dan untuk pembuatan rencana desain memakai metode
Unified Modeling Language (UML), kedua metode tersebut sebagai proses
pengumpulan data desain. Hasil akhir dari penelitian ini berupa sebuah rancangan
sistem online yang dapat mempermudah seorang mahasiswa dalam mengajukan
pengaduan dan untuk melihat seberapa besar pihak universitas menangani
pengaduannya. [24].
c. Selain itu, penelitian lain yang dilakukan oleh Tukino pada tahun 2019 yang berjudul
Rancang Bangun Aplikasi e-CRM Alfamart Batam Dengan Metode Extreme
Programming. Metode Extreme Programming menjadi metode yang dipakai dalam
penelitian ini. Dalam hal untuk membantu memberikan pelayanan terbaik yang
ditujukan ke pelanggan oleh suatu perusahaan merupakan tujuan dari penelitian ini
[25].

16

Anda mungkin juga menyukai