320x Filetype PDF File size 0.86 MB Source: library.binus.ac.id
BAB 2
TINJAUAN PUSTAKA
2.1. Waterfall
Model waterfall adalah model klasik yang bersifat sistematis
(membangun software dengan berurutan). “Linear Sequential Model”
merupakan identitas asli model ini, bisa juga disebut “classic life cycle”.
Pertama kali diperkenalkan oleh Winston Royce sekitar tahun 1970 dan
termasuk kedalam kategori model generic pada rekayasa perangkat lunak.
Oleh usianya yang tak lagi muda, model ini sering dianggap kuno, namun tetap
saja merupakan model yang paling banyak dipakai dalam Software
Engineering (SE). Sebagaimana disebut sebelumnya, pendekatan secara
sistematis dan berurutan diaplikasikan dalam model ini. Disebut dengan
waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya
tahap sebelumnya dan berjalan secara berurutan.
Fase-fase dalam waterfall model berdasarkan referensi (Rosa &
Shalahudin, 2014, p. 29):
Gambar 2. 1 Fase-Fase Waterfall
(Rosa & Shalahudin, 2014, p. 29)
9
10
a. Analisis kebutuhan perangkat lunak
Merupakan fase pengumpulan kebutuhan yang dilakukan secara
intensif untuk mespesifikasikan kebutuhan user. Dari spesifikasi tersebut,
pengembang dapat mengetahui aplikasi seperti apa yang hendak dibangun.
Secara umum, spesifikasi kebutuhan tersebut diperlukan untuk
dokumentasi.
b. Desain
Merupakan proses yang terdiri dari beberapa langkah. Tahapan ini
fokus pada rancangan program, termasuk struktur data, arsitektur
perangkat lunak, representasi antarmuka, dan prosedur pengkodean. Tahap
ini berisi translasi spesifikasi perangkat lunak yang dibutuhkan kedalam
representasi desain. Representasi tersebut yang akan diimplementasikan
menjadi sebuah program pada tahap selanjutnya. Tentunya desain yang
tercipta pada tahap ini perlu disertakan dalam dokumentasi.
c. Pembuatan kode program
Desain perlu ditransalasikan kedalam program perangkat lunak.
Hasil dari tahap ini berupa program sesuai dengan desain yang telah
dibangun pada tahap sebelumnya. Ada pula internal testing dalam tahap
ini, yang mana berisi pemeriksaan terhadap modul yang dibuat untuk
memastikan fungsionalitasnya sesuai atau tidak.
d. Pengujian
Tahap ini fokus pada perangkat lunak dalam hal logika dan
fungsionalitas. Developer perlu memastikan bahwa semua bagian telah
diuji. Hal ini dilakukan untuk meminimalisir kesalahan (error) dan
memastikan output sesuai dengan kebutuhan.
e. Mendukung atau memelihara (operation or maintenance)
Tidak menutup kemungkinan sebuah perangkat lunak mengalami
perubahan ketika sudah dikirimkan ke user. Hal ini bisa terjadi karena
adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian
dilakukan. Bisa juga terjadi karena perangkat lunak gagal beradaptasi
dengan perangkat keras baru. Oleh karena itu, diperlukan adanya tahapan
ini. Tahap ini bisa mengulangi proses pengembangan mulai dari analisis
spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak
untuk membuat perangkat baru.
11
Metode waterfall sebaiknya digunakan ketika memenuhi kodisi-
kondisi tertentu, yaitu:
1. Ketika semua persyaratan yang diajukan sudah dipahami dengan baik pada
awal pengembangan program.
2. Definisi produk bersifat stabil dan tidak ada perubahan yang dilakukan saat
pengembangan untuk alasan apapun. Oleh karena itu, teknologi yang
digunakan juga harus sudah dipahami dengan baik.
3. Menghasilkan produk baru, atau produk dengan versi baru. Sebenarnya,
jika menghasilkan produk dengan versi baru maka itu sudah termasuk
incremental development, yang setiap tahapannya sama dengan metode
waterfall kemudian diulang-ulang.
4. Port-ing produk yang sudah ada ke dalam platform baru.
Dengan demikian, metode waterfall dianggap sebagai pendekatan yang
lebih cocok digunakan untuk proyek pembuatan sistem baru dan juga
pengembangan software dengan tingkat resiko yang kecil serta waktu
pengembangan yang cukup lama. Tetapi salah satu kelemahan paling mendasar
adalah menyamakan pengembangan hardware dan software dengan
meniadakan perubahan saat pengembangan. Padahal, error diketahui saat
software dijalankan, dan perubahan-perubahan akan sering terjadi.
Keuntungan menggunakan metode waterfall adalah prosesnya lebih
terstruktur, hal ini membuat kualitas software baik dan tetap terjaga. Dari sisi
user juga lebih menguntungkan, karena dapat merencanakan dan menyiapkan
kebutuhan data dan proses yang diperlukan sejak awal. Penjadwalan juga
menjadi lebih menentu, karena jadwal setiap proses dapat ditentukan secara
pasti. Sehingga dapat dilihat jelas target penyelesaian pengembangan program.
Dengan adanya urutan yang pasti, dapat dilihat pula perkembangan untuk
setiap tahap secara pasti. Dari sisi lain, model ini merupakan jenis model yang
bersifat dokumen lengkap sehingga proses pemeliharaan dapat dilakukan
dengan mudah.
2.2. Operating System
Operating system atau dalam bahasa Indonesia: Sistem Operasi adalah
perangkat lunak yang bertugas untuk melakukan kontrol dan menejemen
12
perangkat keras. Tak hanya itu, operating system juga bertanggung jawab pada
operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti
program-program pengolah kata dan browser web. (Arpaci-Dusseau & Arpaci-
Dusseau, 2018)
Secara umum, Operating system adalah software pada lapisan pertama
jembatan antara perangkat keras dan lunak. Operating system ditempatkan
pada memori komputer pada saat dinyalakan, sebagai landasan atau fondasi
untuk mengoperasikan sistem atau program lainnya. Sedangkan software
lainnya dijalankan setelah Operating system berjalan. Fondasi tersebut seperti
akses ke disk, memory management, scheduling task, dan user interface (input
& output). Sehingga masing-masing software tidak perlu lagi melakukan
tugas-tugas dasar tersebut. Bagian kode yang melakukan tugas-tugas inti dan
umum tersebut dinamakan dengan ”kernel”. (Arpaci-Dusseau & Arpaci-
Dusseau, 2018)
2.3. Android
Android merupakan salah satu sistem operasi untuk perangkat mobile.
Sistem operasi ini menyertakan middleware (Virtual machine) dan sejumlah
aplikasi utama. Android sendiri merupakan bentuk modifikasi dari kernel
Linux.
Android, Inc adalah perusahaan yang awalnya mengembangkan sistem
operasi ini. Android, Inc merupakan start up yang berlokasi di Palo Alto,
California, Amerika. Didirikan oleh Andy Rubin Bersama Rich Miner, Nick
Sears dan Chris White. Lalu Google mengakuisisinya pada bulan juli 2005.
Pendirinya pun bergabung dengan Google. Andy Rubin sendiri kemudian
diangkat menjadi wakil presiden divisi mobile di Google.
Pembuatan sistem operasi ini bertujuan untuk menyediakan platform
yang terbuka, untuk kemudahan pengaksesan internet melalui telpon seluler.
Android juga dirancang untuk memudahkan pengembang dalam membangun
aplikasi dengan batasan yang minim sehingga memacu kreativitas
pengembang.
no reviews yet
Please Login to review.