BAB II LANDASAN TEORI
2.1.
Ketenagakerjaan Menurut Undang Undang Nomor 13 Tahun 2003 Tentang Ketenagakerjaan pada Pasal 1 ayat 1 sampai dengan 4 menjelaskan Ketenagakerjaan adalah segala hal yang berhubungan dengan tenaga kerja pada waktu sebelum, selama, dan sesudah masa kerja. Tenaga kerja adalah setiap orang yang mampu melakukan pekerjaan guna menghasilkan barang dan/atau jasa baik untuk memenuhi kebutuhan sendiri maupun untuk masyarakat. Pekerja/buruh adalah setiap orang yang bekerja dengan menerima upah atau imbalan dalam bentuk lain. Pemberi kerja adalah orang perseorangan, pengusaha, badan hukum, atau badan-badan lainnya yang mempekerjakan tenaga kerja dengan membayar upah atau imbalan dalam bentuk lain. Lalu pada UUK Pasal 1 ayat 30 juga menjelaskan Upah adalah hak pekerja/buruh yang diterima dan dinyatakan dalam bentuk uang sebagai imbalan dari pengusaha atau pemberi kerja kepada pekerja/buruh yang ditetapkan dan dibayarkan menurut suatu perjanjian kerja, kesepakatan, atau peraturan perundang-undangan, termasuk tunjangan bagi pekerja/buruh dan keluarganya atas suatu pekerjaan dan/atau jasa yang telah atau akan dilakukan.
2.1.1. Pengupahan Bagi pekerja upah adalah alasan utama bekerja. Bahkan bagi beberapa pekerja, upah adalah satu-satunya alasan bekerja. Bagi sebagian besar pekerja, upah digunakan untuk menanggung kebutuhannya dan kebutuhan keluarganya.
7
http://digilib.mercubuana.ac.id/
Sampai saat ini masih terjadi perselisihan mengenai upah yang harus dibayarkan oleh pengusaha kepada pekerja. Ada dua istilah yang populer dalam kaitannya dengan pengupahan, yaitu kebutuhan hidup layak (KHL) dan upah minimum regional/upah minimum provinsi (UMR/UMP). Pengusaha lebih memilih menggunakan UMR untuk menentukan upah pekerja, karena selai lebih menguntukan, pemberian upah sedikit diatas UMR dibenarkan oleh UUK. (Much Nurachmad 2008: hal 33). Pada UUK Pasal 77 ayat 1 dan 2 menjelaskan bagaimana pengusaha seharusnya memberikan ketentuan waktu kerja dengan rincian waktu kerja seperti pada pasal 2 yaitu: a. 7 (tujuh) jam 1 (satu) hari dan 40 (empat puluh) jam 1 (satu) minggu untuk 6 (enam) hari kerja dalam 1 (satu) minggu; atau b. 8 (delapan) jam 1 (satu) hari dan 40 (empat puluh) jam 1 (satu) minggu untuk 5 (lima) hari kerja dalam 1 (satu) minggu. Penghitungan upah dan hari kerja dijelaskan pada KEPUTUSAN MENTERI TENAGA KERJA DAN TRANSMIGRASI REPUBLIK INDONESIA NOMOR KEP. 102/MEN/VI/2004 TENTANG WAKTU KERJA LEMBUR DAN UPAH KERJA LEMBUR Pasal 9 ayat 1 yang menjelaskan Dalam hal upah pekerja/buruh dibayar secara harian, maka penghitungan besarnya upah sebulan adalah upah sehari dikalikan 25 (dua puluh lima) bagi pekerja/buruh yang bekerja 6 (enam) hari kerja dalam 1 (satu) minggu atau dikalikan 21(dua puluh satu) bagi pekerja/buruh yang bekerja 5 (lima) hari kerja dalam 1 (satu) minggu. Dengan rumus hitungan Untuk
ketentuan
waktu
kerja
selama
6
hari
5
hari
- (Gapok atau UMR) / 25 hari kerja = upah per hari Untuk
ketentuan
waktu
kerja
selama
- (Gapok atau UMR) / 21 hari kerja = upah per hari
8
http://digilib.mercubuana.ac.id/
Selanjutnya Kemen NOMOR KEP. 102/MEN/VI/2004 pasal 8 ayat 2 menjelaskan cara menghitung lembur per jam dengan perhitungan 1/173 kali upah sebulan dan pada Pasal 11 dengan penjelasan sebagai berikut : Cara perhitungan upah kerja lembur sebagai berikut : a. Apabila kerja lembur dilakukan pada hari kerja : a.1.
untuk jam kerja lembur pertama harus dibayar upah sebesar 1,5 (satu setengah) kali upah sejam;
a.2.
untuk setiap jam kerja lembur berikutnya harus dibayar upah sebesar 2(dua) kali upah sejam.
b. Apabila kerja lembur dilakukan pada hari istirahat mingguan dan/atau hari libur resmi untuk waktu kerja 6 (enam) hari kerja 40 (empat puluh) jam seminggu maka : b.1.
perhitungan upah kerja lembur untuk 7 (tujuh) jam pertama dibayar 2 (dua) kali upah sejam, dan jam kedelapan dibayar 3 (tiga) kali upah sejam dan jam lembur kesembilan dan kesepuluh dibayar 4 (empat) kali upah sejam.
b.2.
apabila hari libur resmi jatuh pada hari kerja terpendek perhitungan upah lembur 5 (lima) jam pertama dibayar 2 (dua) kali upah sejam, jam keenam 3(tiga) kali upah sejam dan jam lembur ketujuh dan kedelapan 4 (empat) kali upah sejam.
c. Apabila kerja lembur dilakukan pada hari istirahat mingguan dan/atau hari libur resmi untuk waktu kerja 5 (lima) hari kerja dan 40 (empat puluh) jam seminggu, maka perhitungan upah kerja lembur untuk 8 (delapan) jam pertama dibayar 2 (dua) kali upah sejam, jam kesembilan dibayar 3(tiga) kali upah sejam dan jam kesepuluh dan kesebelas 4 (empat) kali upah sejam. (Tim Visi Yustisia, 2015) Tabel 2.1 Penghitungan upah lembur pada hari kerja PERHITUNGAN UPAH LEMBUR PADA HARI KERJA JAM LEMBUR Jam Pertama
RUMUS 1,5 X 1/173 X Upah Sebulan
9
http://digilib.mercubuana.ac.id/
Jam Kedua dan Ketiga
2 X 1/173 X Upah Sebulan
Tabel 2.2 Penghitungan upah lembur pada hari libur/istirahat PERHITUNGAN UPAH LEMBUR PADA HARI LIBUR / ISTIRAHAT KETENTUAN
JAM LEMBUR
RUMUS
UPAH LEMBUR
6 Hari Kerja Per Minggu ( 40 Jam/Minggu ) 7 Jam Pertama
2 X Upah Perjam
7 Jam X 2 X 1/173 X Upah Sebulan
Jam Ke 8
3 X Upah Perjam
1 Jam X 3 X 1/173 X Upah Sebulan
Jam Ke 9 s/d Ke 10
4 X Upah Perjam
1 Jam X 4 X 1/173 X Upah Sebulan
Hari Libur Resmi Jatuh Pada Hari Kerja Terpendek Misal Jumat 5 Jam Pertama
2 X Upah Perjam
5 Jam X 2 X 1/173 X Upah Sebulan
Jam Ke 6
3 X Upah Perjam
1 Jam X 3 X 1/173 X Upah Sebulan
Jam Ke 7 dan Ke 8
4 X Upah Perjam
1 Jam X 4 X 1/173 X Upah Sebulan
5 Hari Kerja Per Minggu ( 40 Jam/Minggu ) 8 Jam Pertama
2 X Upah Perjam
8 Jam X 2 X 1/173 X Upah Sebulan
Jam Ke 9
3 X Upah Perjam
1 Jam X 3 X 1/173 X Upah Sebulan
Jam Ke 10 dan Ke 11
4 X Upah Perjam
1 Jam X 4 X 1/173 X Upah Sebulan
2.2.
Android Android merupakan sistem operasi berbasis Linux yang bersifat terbuka (open source) dan dirancang untuk perangkat seluler layer sentuh seperti smartphone dan computer tablet. Android dikembangkan oleh Android,Inc., dengan dukungan finansial dari google yang kemudian dibeli pada tahun 2005. Android dirilis secara resmi pada tahun 2007, bersamaan dengan diddirikannya Open Handset Alliance. (Salbino, 2014)
2.2.1. Android (4.0 - 4.4+) Android versi 4.0 (Ice Cream Sandwich) diumukan secara resmi pada 10 Mei 2011 pada ajang Google I/O Developer Converence (San
10
http://digilib.mercubuana.ac.id/
Fransisco), pihak Google mengklaim Android ICS akan dapat digunakan baik di smartphone ataupun tablet, Android ICS membawa fitur Honeycumb untuk smartphone serta ada penambahan fitur baru seperti membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan dan control, terpadu kontak jaringan social, perangkat tambahan fotografi, mencari email secara offline, dan berbagai informasi dengan menggunakan NFC. Ponsel pertama yang menggunakan sistem operasi ini adalah Samsung Galaxy Nexus. Android versi 4.1(Jelly Bean) juga diluncurkan pada acara I/O 10 Mei 2011 yang lalu. Keunggulan dan fitur baru versi ini, diantaranya peningkatan input keyboard, desain baru fitur pencarian, UI yang baru dan pencarian melalui Voice Search yang lebih cepat. Dilengkapi juga Google Now yang dapat memberikan informasi yang tepat pada waktu yang tepat pula. Salah satu kemampuannya adalah dapat mengetahui informasi cuaca, lalu lintas, ataupun hasil pertandingan olahraga. Sistem operasi Android Jelly Bean 4.1 pertama kali digunakan dalam produk tablet Asus, yakni Google Nexus 7. Selanjtnya Android versi 4.2 Jelly Bean menambahkan Fitur photo sphere untuk panaroma, daydream sebagai screensaver, power control, lock screen widget, menjalankan banyak user (dalam tablet saja), widget terbaru. Android 4.2 pertama kali dikenalkan melalui Google Nexus 4. Goole merilis Jelly Bean 4.3 pada Juli 2013 di San Fransisco. Nexus 7 generasi kedua adalah perangkat pertama yang menggunakan sistem operasi ini. Sebuah pembaruan minor dirilis pada tanggal 22 Agustus 2013. Google mengumumkan Android 4.4 Kitkat (dinamai dengan izin dari Nestle dan Hershey) pada 3 September 2013, dirilis tanggal 31 Oktober 2013. Keunggulan diantaranya pembaruan antarmuka dengan bar status dan navigasi transparan pada layar depan, Optimasi kinerja dengan spesifikasi perangkat yang lebih rendah, NFC Host Card Emulation sebagai emulator kartu pintar, WebViews berbasis Chromium, Sensor batching, Step Detector, dan Counter API, Peningkatan tampilan mode
11
http://digilib.mercubuana.ac.id/
layar penuh, Penyeimbang audio, pemantauan audio, dan peningkatan suara audio, Dukungan Bluetooth Message Acces Profile (MAP). Pembaruan terbaru versi Android adalah Lollipop 5.0, dirilis pada 3 November 2014. (Salbino, 2014) 2.3.
Pengambilan Keputusan Pengambilan keputusan adalah suatu hasil pendapat atau saran dari proses mental atau kognitif yang membuat pemilihan suatu tindakan di antara beberapa alternatif yang tersedia.
2.3.1. Konsep Sistem Penunjang Keputusan (SPK) Turban (1990) dan Turban & Aroson (2001) menyebutkan bahwa konsep Sistem Penunjang Keputusan (SPK) muncul pertama kali pada awal tahun 1970-an oleh Scott-Morton. Mereka mendefinisikan SPK sebagai suatu sistem interaktif berbasis computer yang dapat membantu para pengambil keputusan dalam menggunakan data dan model untuk memecahkan persoalan yang bersifat tidak terstruktur. (Prof.Dr.Ir Marimin, 2004) 2.3.2. Batasan dalam Pengambilan Keputusan Dalam pengambilan keputusan ada lima tipe batasan yang mungkin muncul yaitu: a.
Batasan Otoritatif, merupakan hasil kebijakan atau arahan di dalam sebuah organisasi.
b.
Batasan Biologi, batasan terhadap individu yang mungkin terkena dampak keputusan.
c.
Batasan Fisik, termasuk didalamnya faktor-faktor seperti: geografis, iklim, sumber daya alam, dan karakteristik objek-objek buatan manusia.
12
http://digilib.mercubuana.ac.id/
d.
Batasan Teknologi, melibatkan teknologi tercanggih yang releavan dengan situasi keputusan.
e.
Batasan Ekonomi, terkait dengan uang dan sumber daya lainnya yang diperlukan dalam penerapan keputusan. (Basyaib, 2006)
2.3.3. Langkah Langkah Pengambilan Keputusan Sebuah organisasi adalah wadah bagi beroperasinya manajemen. Artinya, manajemen menjadi teknik atau alat yang menggerakan organisasi menuju terciptanya tujuan yang diinginkan. Pengambilan keputusan dalam fungsi manajemen itu meliputi beberapa langkah 1.
Perencanaan, apa tujuan akhir organisasi?; Strategi apa yang digunakan dalam mencapai tujuan?.
2.
Pengorganisasian, bagaimana pekerjaan-pekerjaan itu dirancang?; Struktur organisasi bagaimana yang diperlukan?; Siapa-siapa yang akan mengisi pekerjaan?.
3.
Pergerakan, bagaimana menggerakan pegawai agar mereka berkinerja tinggi?; Bagaimana kepemimpinan efektif dalam organisasi?.
4.
Pengawasan, aktivitas apa saja dalam organisasi yang harus diawasi?; Dalam hal apa saja penyimpangan terjadi?; Bagaimana menggerakan organisasi secara efektif?.
Berikut gambaran langkah diatas.
13
http://digilib.mercubuana.ac.id/
Gambar 2.1 Langkah langkah pengambilan keputusan (Syafaruddin, 2004)
2.4.
Algoritma Analitycal Hierarchy Process (AHP) Analitycal Hierarchy Process (AHP) adalah suatu metode yang dapat digunakan untuk membantu proses penetapan skala prioritas untuk membuat keputusan yang mempertimbangkan aspek-aspek kuantitatif dan kualitatif yang terlibat. Dengan mereduksi nilai faktor yang kompleks menjadi rangkaian “one on one comparisons” dan kemudian mensintesa hasil-hasilnya, maka AHP tidak hanya membantu orang dalam memilih keputusan yang tepat, tetapi juga dapat memberikan pemikiran atau nilai yang jelas dan tepat. Namun demikian, AHP mempunyai kelemahan jika nilai yang akan diolah berupa nilai dalam skala range tertentu, dalam hal ini sering terjadi perolehan hasil ranking perioritas akhir yang sama, sehingga penentuan urutan perioritas kepentingan dalam penentuan skala perioritas kasus tertentu menjadi sulit dilakukan akibat adanya hasil akhir yang sama. Penelitian ini melakukan perubahan algoritma AHP standar, yaitu pada bagian proses perankingan hasil penilaian kriteria sehingga tidak lagi terdapat indeks perioritas akhir yang sama. Pada dasarnya prosedur dan langkah-langkah dalam metode AHP meliputi: 1. Menentukan prioritas elemen
14
http://digilib.mercubuana.ac.id/
- Langkah pertama dalam nilain prioritas elemen adalah membuat perbandingan pasangan, yaitu membandingkan elemen secara berpasangan sesuai kriteria yang diberikan. - Matriks perbandingan berpasangan diisi menggunakan bilangan untuk merepresentasikan kepentingan iasive dari suatu elemen terhadap elemen yang lainnya. 2. Sintesis
Pertimbangan-pertimbangan
terhadap
perbandingan
berpasangan disintesis untuk memperoleh keseluruhan prioritas. Hal-hal yang dilakukan dalam langkah ini adalah: - Menjumlahkan nilai-nilai dari setiap kolom pada matriks. - Membagi setiap nilai dari kolom dengan total kolom yang bersangkutan untuk memperoleh normalisasi matriks. - Menjumlahkan nilai-nilai dari setiap baris dan membaginya dengan jumlah elemen untuk mendapatkan nilai rata-rata. 3. Mengatur konsistensi Dalam pembuatan keputusan, penting untuk mengetahui seberapa baik konsistensi yang ada karena kita tidak menginginkan
keputusan
berdasarkan
pertimbangan
dengan
konsistensi yang rendah. Hal-hal yang dilakukan dalam langkah ini adalah: - Kalikan setiap nilai pada kolom pertama dengan prioritas iasive elemen pertama, nilai pada kolom kedua dengan prioritas iasive elemen kedua, dan seterusnya. - Jumlahkan setiap baris. - Hasil dari penjumlahan baris dibagi dengan elemen prioritas iasive yang bersangkutan. - Jumlahkan hasil bagi diatas dengan banyaknya elemen yang ada, hasilnya disebut λ maks. 4. Hitung Consistency Index (CI) dengan rumus: CI = ( λ maks-n)/n n = banyaknya elemen 5. Hitung Rasio Konsistensi / Consistency Ratio (CR) dengan rumus: CR = CI / RC
15
http://digilib.mercubuana.ac.id/
CR = Consistency Ratio CI = Consistency Index IR = Index Random Consistency 6. Memeriksa konsistensi hirarki. Jika nilainya lebih dari 10%, maka penilaian data judgement harus diperbaiki. Namun jika rasio konsistensi (CI / IR) kurang atau sama dengan 0,1, maka hasil perhitungannilai dinyatakan benar (Rosmawanti & Bahar, 2014) 2.5.
Rekayasa Perangkat Lunak Rekayasa perangkat lunak adalah sebuah profesi yang dilakukan oleh seorang perekayasa perangkat lunak yang berkaitan dengan pembuatan dan pemeliharaan aplikasi perangkat lunak dengan menerapkan teknologi dan praktik dari ilmu komputer, manajemen proyek, dan bidangbidang lainnya. Perangkat lunak adalah instruksi langsung komputer untuk melakukan pekerjaan dan dapat ditemukan disetiap aspek kehidupan modern ddan aplikasi yang kritis untuk hidup (life-critical), seperti perangkat pemantauan medis dan pembangkit tenaga listrik sampai perangkat hiburan, seperti video game.
2.5.1. Sejarah Singkat Perangkat Lunak Indutri perangkat lunak telah berkembang melalui empat era, yaitu pada tahun 1950-an sampai tahun 1960-an, tahun 1960-an sampai pertengahan tahun 1970-an, pertengahan tahun 1970-an sampai tahun 1980-an, pertengahan tahun 1980-an sampai sekarang. Pada awal tahun 1970-an, banyak program computer mulai mengalami kegagalan dan banyak orang kehilangan keyakinan sehingga krisis industry diumumkan. Berbagai alasan yang mengarah kepada krisis meliputi hal-hal sebagai berikut: 1.
Perkembangan perangkat keras yang lebih cepat,
16
http://digilib.mercubuana.ac.id/
2.
Kemampuan untuk membangun yang dituntut untuk memenuhi kebutuhan secara cepat,
3.
Peningkatan ketergantungan pada perangkat lunak,
4.
Pembangunan perangkat lunak berkualitas tinggi dan dapat dipercaya, dan
5.
Desain yang kurang dan minimnya sumber daya.
2.5.2. Peran Peran dalam Rekayasa Perangkat Lunak Peran-peran apa saja yang ada di dunia pemrograman (rekayasa perangkat lunak)?. Tabel berikut akan menjelaskan beberapa peran pada rekayasa perangkat lunak. Tabel 2.3 Peran Peran dalam Rekayasa Perangkat Lunak Peran
Tugas (Tidak Menyeluruh)
Program/Product/Project Manager
Mengatur keseluruhan proyek, termasuk pembentukan tim, alokasi staf, penjadwalan (secara garis besar), penentuan anggaran, dan lain-lain.
Developer Manager
Mengelola (proses) pengembangan perangkat lunak. Menentukan fungsi-fungsi produk, arsitektur keseluruhan
Lead Architect
dan rancangan komunikasi antar paket/modul (untuk perancangan secara modular). Menjamin kualitas kode, menjamin diterapkannya standar
Lead Developer
(konvensi), dan memeriksa (review) kode. Disebut juga konsultan. Ahli dalam bidang yang akan
Domain Expert
dibuat
programnya(misalnya
seorang
akuntan
untuk
program akuntansi) Wakil klien. “Mengawasi” proyek agar berjalan sesuai keinginan klien jika perangkat lunak dibuat untuk suatu Customer Representative
departemen / divisi (penggunaan dalam perusahaan, bukan untuk dijual/memenuhi kontrak luar), perwakilan biasanya berasal dari departemen yang bersangkutan
Corporate Quality
Mengawasi
diterapkannya
standar
untuk
sertifikasi
17
http://digilib.mercubuana.ac.id/
Assurance Liaison
internasional (misalnya, ISO, CMM, atau SEI) jika perusahaan yang besangkutan menggunakannya.
Peran
Tugas (Tidak Menyeluruh) Mengembangkan paket - paket, mengelola tim (yang
Subsytem Teams Leads
mengerjakan
modul
yang
bersangkutan),
dan
penjadwalannya. Package Architects
Merancang kelas-kelas dalam paket
User-Interfce Expert Subsystem Teams Test Liaisons
keluaran ke pengguna perangkat lunak). Mewakili
tim
yang
merancang
subsistem
dalam
pertemuan-pertemuan, meninjau dan mengaudit unit dan pengujian integrasi.
Developers
Perancang dan pengodean (coding) kelas-kelas.
Quality Assurance Team Members
Melakukan fungsi - fungsi penjaminan kualitas selama pengembangan,
mengaudit
dan
mendokumentasikan
kesesuaian proses.
Transition/Team Lead Release Manager
Merancang spesifikasi antarmuka pengguna (masukan-
Mengelola pengujian sistem dan manajemen konfigurasi, termasuk transisi ke pengguna. Mengelola tiap rilis, mengatur pertemuan yang membahas rencana rilis.
CM Lead
Mengelola proses manajemen konfigurasi.
Testers
Menguji program selama dan setelah pengembangan.
Subsystem Teams
Mengkoordinasikan aktivitas penjaminan kualitas dengan
Quality Assurance
staf QA.
Liaisons Mengurus Toolsmith
masalah
instalasi,
kostumisasi
alat-alat
(program-program pendukung), dan berbagai pustaka (library) yang dibutuhkan.
Technical Writers
Mendokumentasikan proses.
18
http://digilib.mercubuana.ac.id/
Sebagai cacatan, peran pada table tersebut umunya digunakan untuk pengembangan dengan pendekatan berbasis objek (object oriented software engineering). (Simarmata, 2010) 2.5.3. Model Proses Perangkat Lunak Model proses perangkat lunak merupakan representasi abstrak dari proses perangkat lunak. Setiap model proses merepresentasikan suatu proses dari sudut pandang tertentu sehingga hanya memberikan informasi parsial mengenai proses tersebut. Untuk banyak sistem besar, tentu saja, tidak hanya ada satu proses perangkat lunak yang digunakan. Prosesproses yang berbeda digunakan untuk mengembangkan bagian yang berbeda pada sistem. Berikut beberapa model proses perangkat lunak yang akan dijelaskan. 1.
Model air terjun (waterfall). Model ini mengambil kegiatan proses dasar seperti spesifikasi, pengembangan, validasi, dan evolusi, dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian, dan seterusnya. (Sommerville, 2003)
2.
Pendekatan Prototipe. Dimasa lalu beberapa proses perangkat lunak telah diajukan untuk mengatasi masukan dari konsumen pada produk agar kepuasan konsumen dapat terpenuhi. Pendekatan prototipe sangat sesuai untuk proyek kecil atau tingkat subsistem. Memprototipekan sebuah sistem yang sempurna merupakan hal yang sulit.
3.
Model Spiral ini dikembangkan oleh Boehm (1988) berdasarkan pada pengalamannya dengan berbagai perbaikan atas model air terjun yang diaplikasikan pada proyek pemerintah, khususnya perangkat lunak yang besar.
4.
Pendekatan Iterative Enhacement (IE) (Basili dan Turner, 1975) atau Iterative Development Process (IDP) telah ditetapkan untuk dimulai dengan subset kebutuhan dan pengembangan sebuah subset dari produk yang memuaskan hubungan utama pelanggan, menyediakan
19
http://digilib.mercubuana.ac.id/
alat untuk analisa dan pelatihan untuk pelanggan, dan memberikan pengalaman dan pengembangan. Model IDP menggabungkan pembuatan prototipe (prototyping) dengan kekuatan dari model air terjun (classical waterfall model). 5.
Proses Pengembangan Berorientasi Objek (Object-Oriented [OO]) untuk perancangan pemrograman diperkenalkan pada tahun 1980-an. Pendekatan ini mewakili suatu pergeseran paradigm utama dalam pengembangan perangkat lunak. Berbeda denga pengembangan tradisional yang memisahkan data dan kontrol, pemrograman berorientasi objek dilakukan berdasarkan objek, dengan sekumpulan data yang ditetapkan dan sekumpulan opeasi-operasi (metode) yang dapat dilaksanakan dalam data tersebut. (Simarmata, 2010)
2.5.4. Model Waterfall (Air Terjun) Model Waterfall Model ini merupakan sebuah pendekatan terhadap pengembangan perangkat lunak yang sistematik, dengan beberapa tahapan, yaitu: System Engineering, Analysis, Design, Coding, Testing dan Maintenance. Untuk lebih jelasnya tahapan-tahapan dari Paradigma Waterfall dapat dilihat pada gambar berikut: System Engineering
Analysis
Design
Coding
Testing
Maintenance
Gambar 2.2 Paradigma Waterfall (Classic Life Cycle) Penjelasan Metodelogi Waterfall:
20
http://digilib.mercubuana.ac.id/
1. System Engineering, merupakan bagian awal dari pengerjaan suatu proyek perangkat lunak. Dimulai dengan mempersiapkan segala hal yang diperlukan dalam pelaksanaan proyek. 2. Analysis,
merupakan
tahapan
dimana
System
Engineering
menganalisis segala hal yang ada pada pembuatan proyek atau pengembangan perangkat lunak yang bertujuan untuk memahami sistem yang ada, mengidentifikasi masalah dan mencari solusinya. 3. Design, tahapan ini merupakan tahap penerjemah dari keperluan atau data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh pemakai (user). 4. Coding, yaitu menerjemahkan data yang dirancang ke dalam bahasa pemrograman yang telah ditentukan. 5. Testing, merupakan uji coba terhadap sistem atau program setelah selesai dibuat. 6. Maintenance, yaitu penerapan sistem secara keseluruhan disertai pemeliharaan jika terjadi perubahan struktur, baik dari segi software maupun hardware. (Pressman, Ph.D., 2012) 2.6.
Java Java merupakan sebuah Bahasa pemrograman berorintasi objek yang dapat berjalan pada platform yang berbeda, baik di Wiindows, Linux, serta sistem operasi lainnya. Jadi, kita dapat membuat sebuah aplikasi dengan Java pada sistem operasi Linux dan selanjutnya menjalankan atau menginstall aplikasi tersebut pada sistem operasi Windows dan juga sebaliknya tanpa mengalami masalah. Dengan menggunakan Java, kita dapat mengembangkan banyak aplikasi yang dapat digunakan pada lingkungan yang berbeda, seperti pada: Desktop, Mobile, Internet, dan lain-lain. Berikut ini uraian singkat mengenai paket aplikasi Java yang tersedia. 1.
J2ME (Java 2 Micro Edition)
21
http://digilib.mercubuana.ac.id/
Pakret instalasi ini dapat digunakan untuk mengembangkan software yang berjalan pada perangkat yang memiliki memori dan sumber daya yang kecil, seperti pada Handphone, PDA, dan Smartcard. 2.
J2SE (Java 2 Standard Edition) Paket instalasi ini dapat digunakan untuk mengembangkan aplikasi yang berjalan pada lingkungan workstation, seperti aplikasi desktop.
3.
J2EE (Java 2 Enterprise Edition) Paket instalasi ini dapat digunakan untuk mengembangkan aplikasi pada
lingkungan
internet
maupun
aplikasi
skala
enterprise.
(Supriyanto, 2010) 2.7.
Black Box Testing Terfokus pada apakah unit program memenuhi kebutuhan (requirment) yang disebutkan dalam spesifikasi. Pada black box testing, cara pengujian hanya dilakukan dengan menjalankan atau mengeksekusi unit atau modul, kemudian diamati apakah hasil dari unit itu sesuai dengan proses bisnis yang diinginkan. Jika ada unit yang tidak sesuai outputnya maka untuk menyelesaikannya, diteruskan pada pengujian yang kedua, yaitu white box testing. (Fatta, 2007)
22
http://digilib.mercubuana.ac.id/