• Tidak ada hasil yang ditemukan

BAB II LANDASAN TEORI

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB II LANDASAN TEORI"

Copied!
10
0
0

Teks penuh

(1)

BAB II

LANDASAN TEORI

2.1 Tinjauan Studi

Pada penelitian yang dilakukan oleh Ahmad Hidayat [12] metode personal extreme programming (PXP) diterapkan pada pengembangan Sistem Informasi Pembukuan Keuangan. Namun karena metode PXP mengakomodir adanya perubahan kebutuhan, apabila pada proses pengembangan sistem terjadi banyak perubahan akan mengganggu proses pengembangan karena perlu merubah kembali modul-modul yang sudah dibuat. Untuk itu metode PXP dikombinasikan dengan Arsitektur Hierarchical Model View controller (HMVC). HMVC bersifat modularitas sehingga ketika ada penambahan kebutuhan, pengembang hanya perlu membuat modul baru.

Maka modul baru yang dibuat tidak akan mengganggu modul lain sebab setiap modul memiliki model view controllernya masing-masing. Hasil penelitian menunjukkan dari 8 user story yang terbagi ke dalam 2 iterasi, iterasi pertama berhasil selesai sesuai estimasi, sedangkan untuk iterasi kedua melewati estimasi karena adanya perubahan pada user story 4 dan 5. namun waktu realisasi tidak berbanding jauh dari waktu estimasi.

Pada penelitian yang dilakukan oleh Ahmad Ridhani [13] metode PXP digunakan untuk mengembangkan Sistem Informasi Manajemen Pelanggan karena dapat menangani perubahan requirements secara cepat dan dilakukan pengembang tunggal.

Untuk mengatasi banyaknya perubahan kebutuhan sehingga proses pengembangan menjadi melewati waktu estimasi, maka metode PXP dikombinasikan dengan metode 100-dollar-test untuk menentukan prioritas kebutuhan sistem yang akan dikerjakan terlebih dahulu. Hasil penelitian menunjukkan dari 9 user story yang dibagi kedalam 4 iterasi berhasil diselesaikan selama 64 hari. Hal tersebut melebihi waktu estimasi yakni 60 hari. Penyebabnya adalah kurangnya kemampuan pengembang serta perubahan kebutuhan dari klien.

Pada penelitian yang dilakukan oleh Abdullah Septiyanto [14] metode PXP digunakan untuk mengembangkan Sistem Informasi Program Keluarga Harapan (PKH). Proses penggalian kebutuhan yang sering berubah-rubah membuat

(2)

pengembangan proyek semakin lama. Untuk itu maka PXP dikombinasikan dengan metode prioritas ranking yang berguna dalam tahap perencanaan dan implementasi yang berfokus pada kebutuhan utama klien. Hasil penelitian menunjukkan dari 1 iterasi yang terdiri dari 3 user story dapat diselesaikan sesuai estimasi. Namun metode prioritas ranking belum dapat dipastikan cocok jika diterapkan pada proyek yang mempunyai skala besar.

Tabel 2. 1 Rangkuman Penelitan Terdahulu

Penelitian Masalah Metode Hasil

Ahmad Hidayat (2020)

Banyaknya perubahan pada proses

pengembangan perangkat lunak menggunakan metode PXP dapat

mengganggu waktu penyelesaian proyek karena perlu merubah kembali modul-modul yang sudah dibuat

Metode Personal Extreme Programming (PXP) dan Arsitektur Hierarchical Model View controller (HMVC).

Dari 8 user story yang terbagi ke dalam 2 iterasi, iterasi pertama berhasil selesai sesuai estimasi, sedangkan untuk iterasi kedua melewati estimasi karena adanya perubahan pada user story, namun waktu realisasi tidak berbanding jauh dari waktu estimasi.

Ahmad Ridhani (2020)

Banyaknya perubahan kebutuhan pada pengembangan perangkat lunak menggunakan metode PXP dapat

menyebabkan proses pengembangan menjadi melewati waktu estimasi

Metode Personal Extreme Programming (PXP) dan metode prioritas 100- dollar-test

Dari 9 user story yang dibagi kedalam 4 iterasi berhasil diselesaikan selama 64 hari, melebihi waktu estimasi yakni 60 hari.

Penyebabnya adalah kurangnya kemampuan pengembang serta

perubahan kebutuhan dari klien.

Abdullah Faqih Septyanto

Proses penggalian kebutuhan yang sering berubah-rubah pada

Metode Personal Extreme

Dari 1 iterasi yang terdiri dari 3 user story dapat diselesaikan sesuai

(3)

(2020) pengembangan perangkat lunak menggunakan metode PXP membuat

implementasi tidak berfokus pada fungsi utama sehingga dapat mengakibatkan

pengembangan proyek semakin lama

Programming (PXP) dan metode prioritas ranking

estimasi. Namun metode prioritas ranking belum dapat dipastikan cocok jika diterapkan pada proyek yang mempunyai skala besar.

Dari ketiga penelitian terdahulu waktu realisasi penyelesaian proyek masih melewati waktu estimasi saat menggunakan metode PXP yang digabungkan dengan metode 100 dollar-test maupun arsitektur HMVC. Pada metode penentuan prioritas ranking, waktu penyelesaian proyek sesuai dengan estimasi namun pada penelitan tersebut hanya ada 1 iterasi dan belum teruji jika proyek memiliki lebih banyak iterasi dan user story. Pada penelitian ini metode MoSCoW diharapkan dapat membantu proyek untuk dapat selesai sesuai estimasi, karena pada metode MoSCoW prioritas setiap user story terbagi ke dalam 4 kategori yang lebih mudah untuk dipahami bersama klien sehingga proses implementasi akan lebih fokus terhadap kebutuhan utama dibandingkan metode lain seperti 100 dollar-test maupun prioritas ranking.

2.2 Tinjauan Pustaka 2.2.1 Point of Sales

Sistem point of sales adalah sistem yang digunakan untuk manajemen data penjualan, data supplier hingga memantau stok barang [15]. Point of Sales bertugas mencatat transaksi mulai dari menghitung total belanja dari konsumen kemudian mengeluarkan struk atau bukti transaksi. Berdasarkan beberapa penelitian terdahulu, fungsi sistem POS diantaranya :

1) Sebagai penunjang pengambilan keputusan perusahaan dalam menentukan aktivitas penjualan dan pembelian dengan baik dan benar [16]

2) Mengurangi tingkat kesalahan dalam pengelolaan data penjualan dan data lainnya sehingga lebih efisien waktu [17].

(4)

3) Mengatasi permasalahan dan dapat menyajikan informasi terkait pembelian dan penjualan secara lebih baik dan terkomputerisasi serta dapat membantu tugas- tugas pihak-pihak terkait atau seluruh stakeholder yang berhubungan langsung dengan sistem POS ini [18].

Sistem Point of sales umumnya beroperasi pada sebuah komputer yang memang dirancang khusus untuk melakukan aktifitas transaksi. Dalam perkembangannya kini Point of sales bukan hanya berbasis software melainkan juga bisa dibuat berbasis web.

Seperti pada penelitian [11], [19] sistem Point of Sales memiliki beberapa keuntungan, diantaranya adalah :

1) Data lebih aman karena disimpan pada cloud, sehingga tidak ada kekhawatiran bahwa data akan terhapus jika komputer mengalami crash.

2) Data bisa diakses kapan saja dan dimana saja menggunakan perangkat mobile maupun komputer yang terkoneksi internet.

3) Pengembangan lebih lanjut seperti penambahan fitur akan lebih mudah untuk disesuaikan dengan perkembangan bisnis.

4) Permasalahan teknis bisa diatasi lebih mudah karena teknisi bisa mengakses sistem dari jarak jauh tanpa harus datang langsung.

Namun dibalik beberapa kelebihan tersebut sistem POS berbasis web juga memiliki beberapa kekurangan :

1. Adanya tanggungan pembayaran hosting dan domain setiap bulan 2. Harus selalu terhubung ke internet dalam penggunaannya

3. Jika dalam kondisi offline tidak dapat menggunakan sistem Point of Sales 2.2.2 Sistem Bisnis Konsinyasi

Menurut Widya Pangestika dalam tulisannya [1] menyebut bahwa sistem bisnis konsinyasi secara definisi adalah perjanjian antara dua pihak dimana pihak pertama akan mendapatkan komisi berdasarkan penjualan produk dari pihak kedua dimana status kepemilikan barang masih menjadi milik pihak kedua. Pihak pertama atau yang menjual produk disebut consignee sedangkan untuk pihak kedua atau pemilik barang disebut consignor. Adapun kelebihan dan kekurangan bisnis konsinyasi diantaranya : Kelebihan :

1) Memperluas pasar bagi pemilik produk serta menghemat biaya pelayanan, sumber daya, hingga biaya promosi.

(5)

2) Mendapatkan keuntungan tanpa mengeluarkan modal dengan risiko kecil serta bertambahnya display produk bagi penjual.

Kekurangan :

1) Pemilik produk memiliki resiko kerugian apabila promosi tidak sesuai serta uang hasil penjualan yang tidak bisa langsung diterima.

2.2.3 Prinsip Dasar PXP

Personal Extreme Programming (PXP) merupakan salah satu metode pengembangan perangkat lunak yang menggunakan pendekatan agile software development yang dikembangkan oleh Dzhurov [9]. Metode ini merupakan modifikasi dari Personal Software Process (PSP) yang dirancang khusus untuk diterapkan oleh pengembang otonom. Tujuan modifikasi adalah untuk meringankan proses pengembangan serta mempermudah penerapannya namun tetap menjaga prinsip dasar dari PSP itu sendiri. Modifikasi ini dilakukan oleh Dzhurov karena metode PSP dirasa sangat sulit untuk diterapkan para pengembang otonom karena para pengembang otonom ini memiliki keterbatasan sumber daya dan waktu untuk mempelajari metode PSP itu sendiri, hal tersebut tentu akan berpengaruh pada penundaan penyelesaian proyek yang dimana akan menurunkan keunggulan kompetitif produk di pasaran.

PXP juga mengambil beberapa subset dari metode pengembangan perangkat lunak Extreme Programming dengan tujuan mendukung perencanaan proyek dan control kualitas produk yang lebih baik. Metode ini tentu sudah disesuaikan sehingga bisa diterapkan pada pengembang otonom. Dalam metode PXP ini proses pengembangan perangkat lunak bersifat iteratif dan dalam praktiknya memungkinkan pengembang untuk menjadi lebih fleksibel dan responsif terhadap setiap perubahan.

Adapun prinsip-prinsip dasar PXP diantaranya sebagai berikut :

1) Pengembang harus bisa mengukur, menganalisis dan melacak pekerjaan mereka sehari-hari

2) PXP memerlukan pendekatan disiplin – pengembang bertanggung jawab untuk mengikuti proses dan menerapkan semua praktek PXP.

3) PXP memerlukan proses pengujian secara terus menerus

4) Memperbaiki kecacatan harus dilakukan pada tahap awal ketika biaya yang dibutuhkan masih rendah

(6)

5) Pengembang harus mencoba untuk melakukan otomatisasi sesering mungkin dari apa yang mereka kerjakan sehari hari

2.2.4 Fase Proses PXP

Menurut Dzhurov proses pengembangan perangkat lunak dengan metode PXP bersifat iteratif dan terdiri atas beberapa iterasi serta siklus yang sejajar. Adapun tiap fase dari PXP ditunjukkan pada gambar 2.1

Gambar 2.1 Fase Proses PXP

Pada fase requirements dilakukan pendataan kebutuhan yang didokumentasikan dalam bentuk dokumen kebutuhan fungsional dan non fungsional.

Kebutuhan bisa didapatkan dari diskusi dengan klien maupun projek lama pengembang yang memiliki kasus serupa. Mengacu pada tahap requirements Extreme Programming Don Wells [20] , tahap ini dilakukan dengan membuat user stories kemudian dari user stories dibuatkan user acceptance tests. Kedua dokumen ini diperlukan pada tahapan system testing serta penyusunan estimasi pengerjaan melalui daftar release planning di tahapan planning.

Merujuk pada penelitian Dzhurov [9] di fase planning, pengembang menyusun sebuah set tugas berdasarkan dokumen kebutuhan yang dibuat pada fase sebelumnya. Setiap tugas dapat terdiri dari beberapa tugas-tugas kecil yang telah diklasifikasikan. Setelah itu dibuat estimasi untuk tugas induk berdasarkan tugas- tugas kecil yang telah dibuat. Sehingga di fase ini akan dilakukan penentuan estimasi user stories, prioritas dan iterasi yang dibutuhkan dalam pengembangan sistem.

(7)

Selanjutnya pada fase Iteration Inialization akan mengindikasikan tiap tiap iterasi yang didasarkan dari daftar prioritas yang telah ditentukan pada fase sebelumnya. Setiap iterasi dapat menghasilkan release-candidate maupun released- version dari produk.

Kemudian di fase Design pengembang membuat model kelas dan modul yang akan diimplementasikan pada iterasi yang sedang berjalan. Pada fase ini pengembang bertujuan untuk mendesain sistem berdasarkan kebutuhan klien tanpa mencoba untuk membuat kemungkinan kebutuhan baru.

Setelah masuk ke tahap Implementation, pengkodean program mulai dilakukan. Di fase ini terdapat 3 cabang mulai dari unit testing, code generation hingga code refactoring. Unit testing adalah tingkat pengujian perangkat lunak di mana masing-masing unit / komponen dari perangkat lunak yang diuji. Tujuannya adalah untuk memvalidasi bahwa setiap unit perangkat lunak melakukan seperti yang dirancang [21].

Selanjutnya pada Fase system testing, fase ini bertujuan untuk melakukan verifikasi terhadap semua fitur yang telah dibangun. Verifikasi dilakukan menggunakan dokumen acceptance tests yang telah dibuat di fase awal. Acceptance Tests merupakan scenario yang digunakan untuk pengetesan terhadap user stories sehingga dapat diketahui fungsionalitas sistem dapat bekerja atau tidak.

Fase terakhir adalah Retrospective, fase ini menandakan bahwa proses suatu iterasi sudah masuk tahap akhir, sebuah analisis dibuat mengacu data yang telah dikumpulkan pada fase sebelumnya. Kemudian dilakukan verifikasi untuk membandingkan waktu estimasi dengan realisasi pengerjaan serta mencari alasan terhadap potential delay dengan tujuan mencegah under atau over estimate untuk proyek selanjutnya yang akan datang.

2.2.5 Metode MoSCoW

Metode MoSCoW adalah metode yang biasa digunakan untuk menentukan prioritas kebutuhan pada proses pengembangan perangkat lunak. MoSCoW merupakan gabungan atas beberapa kata yang menggambarkan kategori prioritas [22]

, yaitu

a. Must have, merupakan kebutuhan yang harus diimplementasikan pada sistem.

Sistem dianggap gagal apabila kebutuhan pada prioritas ini tidak ada.

(8)

berbeda dengan kategori must have apabila kebutuhan pada prioritas ini tidak diimplementasikan maka sistem tetap dianggap sukses.

c. Could have, merupakan kebutuhan tambahan, apabila sistem memiliki fitur ini maka menjadi pelengkap dari sistem.

d. Won’t have, merupakan kebutuhan yang dianggap tidak berhubungan dengan sistem atau belum dibutuhkan oleh sistem.

2.2.6 Aplikasi Web

Aplikasi Web merupakan aplikasi berbasis web yang berada pada suatu server sehingga tidak memerlukan instalasi pada setiap komputer [23] . Tidak seperti aplikasi desktop maupun aplikasi mobile, untuk mengakses aplikasi web pengguna hanya perlu mengakses situs web menggunakan web browser yang terhubung lewat jaringan ke server. Menurut Solichin [23] aplikasi web kini berkembang pesat karena memiliki beberapa keuntungan diantaranya :

1) Pengguna tidak perlu repot melakukan instalasi ulang ketika ada perubahan atau pembaharuan terhadap aplikasi karena proses update berada di server dan bukan komputer pengguna.

2) Lebih aman dari virus karena pengguna tidak perlu mengunduh aplikasi tambahan karena aplikasi berjalan pada browser.

3) Fleksibel karena bisa diakses darimana saja asalkan terhubung ke jaringan internet.

4) Akses aplikasi lebih mudah karena bisa menggunakan perangkat mobile maupun komputer atau biasa disebut cross-platform

5) Akses data pada client bisa disesuaikan karena data disimpan pada server.

6) Pengguna tidak membutuhkan perangkat dengan spesifikasi tinggi karena hampir seluruh proses berjalan pada server.

Aplikasi web dikembangkan dengan cakupan yang luas dari teknologi yang berbeda, seperti Java servlets, Enterprise JavaBeans, applets, JavaServer Pages, HTML, JavaScript, XML, 14 UML, basis data serta terdapat suatu peningkatan penggunaan middleware dan komponen-komponen pihak ketiga.

2.2.7 Bahasa Pemrograman PHP

Merujuk pada buku yang ditulis oleh Adelheid [24], PHP atau Hypertext Preprocessor adalah script yang berada dan dieksekusi pada sisi server untuk

(9)

selanjutnya dikirim ke client. Adelheid menjelaskan bahwa pada awal peluncurannya PHP hanya bisa diintegrasikan dengan Web Server Apache. Namun sekarang PHP juga bisa bekerja dengan Web Server seperti IIS (Internet Information Server) dan PWS (Personal Web Server). PHP bisa disisipkan dalam bahasa HTML

Adapun pada buku yang ditulis Solichin [23] cara kerja dari PHP bisa dilihat dari gambar 2.2

Gambar 2. 2 Cara kerja PHP

Client bisa berupa komputer desktop, laptop, handphone atau smartphone dengan minimal memiliki web browser. Client terhubung ke web server melalui jaringan (internet atau intranet). Client akan meminta suatu halaman (web) server untuk ditampilkan di perangkat client. Server (web server) yang mendapat permintaan dari client akan menerjemahkan skrip php, skrip php inilah yang berkomunikasi dengan sistem file, database, mail server. Setelah itu hasil akan dikembalikan ke client oleh web server

2.2.8 Framework Laravel

Laravel adalah framework PHP yang dikembangkan pada tahun 2011 oleh Taylor Otwell yang merasa tidak menemukan framework yang up-to-date dengan versi PHP [25]. Merujuk pada buku yang ditulis Yudhanto [25] Laravel adalah pengembangan website berbasis MVC (Model View Controller) yang ditulis dalam PHP yang dirancang untuk meningkatkan kualitas perangkat lunak dengan mengurangi biaya pemeliharaan, serta untuk meningkatkan pengalaman bekerja dengan aplikasi dengan menyediakan sintaks yang jelas, ekspresif, dan menghemat

(10)

PHP yang paling sering digunakan oleh para pengembang perangkat lunak. Laravel unggul atas framework seperti CodeIgniter, Symfony serta Zend. Coderseye menulis alasan Laravel masih menjadi favorit adalah karena memiliki banyak keunggulan seperti file dan kodenya yang terorganisir, memiliki arsitektur MVC, tersedia fitur unit testing, memiliki dokumentasi yang lengkap, memiliki banyak fungsi, serta memiliki enkripsi yang kuat pada packages yang dimiliki.

2.3 Kerangka Pemikiran

Gambar 2. 3 Kerangka Pemikiran

Pada penelitian ini, objek yang digunakan adalah pengembangan sistem point of sales (POS) bisnis konsinyasi. Sedangkan metode yang diusulkan adalah menggunakan metode personal extreme programming (PXP) di mana pada proses penentuan prioritas kebutuhannya dibantu oleh metode MoSCoW. Fase yang diobservasi adalah fase planning pada metode PXP. Tujuan pada penelitian ini adalah adanya optimasi waktu pengembangan dimana pengukuran optimasi pengembangan akan menggunakan perbandingan antara waktu estimasi dengan waktu realisasi pengembangan.

Gambar

Tabel 2. 1 Rangkuman Penelitan Terdahulu
Gambar 2.1 Fase Proses PXP
Gambar 2. 2 Cara kerja PHP
Gambar 2. 3 Kerangka Pemikiran

Referensi

Dokumen terkait

2. Belajar merupakan proses. Belajar terjadi karena didorong kebutuhan dan tujuan yang ingin dicapai. Belajar merupakan bentuk pengaalaman. Pengalaman pada dasarnya

Permodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang diaplikasikan ke dalam bentuk software , hal ini sangat penting mengingat software harus

Black box testing adalah pengujian yang dilakukan hanya mengamati hasil eksekusi melalui data uji dan memeriksa fungsional dari perangkat lunak. Metode Black Box

44/DSN-MUI/VIII/2004, tentang pembiayaan multijasa, bahwa salah satu bentuk pelayanan jasa keuangan yang menjadi kebutuhan masyarakat adalah pembiayaan multijasa,

Definisi lain berkaitan dengan text mining dikatakan bahwa text mining merupakan penambangan data yang berupa teks dimana sumber data biasanya didapatkan dari dokumen

memenuhi keinginan dan kebutuhan akan materil dan non materil yang memberikan kepuasan bagi mereka. 2) Keberadaan dan prestasi kerja bawahan hendaknya mendapat pengakuan

Menurut (Sediawan, 2015) berpendapat bahwa pelayanan adalah suatu bentuk sistem, prosedur atau metode tertentu yang diberikan kepada orang lain dalam hal ini konsumen agar

Penelitian ini adalah penelitian replikasi dengan modifikasi dari penelitian terdahulu yang dilakukan oleh Astray (2011) dimana hubungan antara makna simbolik, manfaat