BAB II
LANDASAN TEORI
2.1
Definisi Sistem Pendukung Keputusan Sistem pendukung keputusan adalah sistem penghasil informasi yang ditunjukan pada suatu
masalah tertentu yang harus dipecahkan oleh manager dan dapat membantu manager dalam pengambilan keputusan (Raymond Mc Leod Ir:1995). Sistem pendukung keputusan merupakan bagian tak terpisahkan dari totalitas sistem organisasi keseluruhan. Suatu sistem organisasi mencakup sistem fisik, sistem keputusan dan sistem informasi (Dr.Ir.Kadarsyah Suryadi:2012) Sistem pendukung keputusan adalah suatu pendekatan sistematis pada hakekat suatu masalah pengumpulan fakta – fakta penentu yang matang dari alternative yang di hadapi dan pengambilan tindakan yang paling tepat (Kadarsih Suryadi:2000). Sistem pendukung keputusan untuk membantu manajemen dalam menangani berbagai permasalahan yang terstruktur dengan menggunakan data dan model (Dadadn Umar Daihani:2001). Untuk menghasilkan keputusan yang baik didalam sistem pendukung keputusan, perlu di dukung oleh informasi dan fakta – fakta yang berkualitas antara lain : a. Aksesbilitas Atribut ini berkaitan dengan kemudahan mendapatkan informasi, informasi akan lebih berarti lagi bagi si pemakai kalau informasi tersebut mudah didapat, karena akan berkaitan dengan aktifitas dari nilai informasinya. b. Kelengkapan Atribut ini berkaitan dengan kelengkapan isi informasi dalam hal ini isi tidak menyangkut hanya volume tetapi juga kesesuaian dengan harapan si pemakai sehingga sering kali kelengkapan ini sulit diukur secara kuantitatif.
6
http://digilib.mercubuana.ac.id/
c. Ketelitian Atribut ini berkaitan dengan tingkat kesalahan yang mungkin didalam pelaksanaan pengolahan data dalam jumlah (volume) besar.Dua tipe kesalahan sering terjadi yaitu berkaitan dengan perhitungan. d. Ketetapan Atribut ini berkaitan dengan kesesuaian antara informasi yang dihasilkan dengan kebutuhan pemakai.Sama halnya dengan kelengkapan, ketetapan pun sangat sulit diukur secara kuantitatif. e. Ketepatan Waktu Kualitas informasi juga sangat ditentukan oleh ketepatan waktu penyampaian dan aktualisasinya, Misal informasi yang berkaitan dengan perencanaan harian akan sangat berguna kalau disampaikan setiap dua hari sekali. f. Kejelasan Atribut ini berkaitan dengan bentuk atau format penyampaian informasi. Bagi sesorang pemimpin informasi yang disajikan dalam bentuk grafik, histogram, atau gambar biasanya akan lebih berarti dibandingkan dengan informasi dalam bentuk kata – kata yang panjang. g. Fleksibilitas Atribut ini berkaitan dengan tingkat adaptasi dari informasi yang di hasilkan terhadap sekelompok pengambilan keputusan yang berbeda. Macam – Macam Metode Sistem Pendukung Keputusan, antara lain : a. Metode Sistem Pakar Sistem perangkat lunak komputer yang menggunakan ilmu, fakta dan teknik berpikir dalam pengambilan keputusan untuk menyelesaikan masalah – masalah yang biasanya hanya dapat diselesaikan oleh tenaga ahli dalam bidang yang bersangkutan. b. Metode B/C Ratio Metode ini merupakan analisis manfaat biaya yang digunakan untuk mengetahui besaran keuntungan atau kerugian serta kelayakan suatu proyek. Dalam perhitungannya analisis memperhitungkan biaya serta manfaat yang akan di peroleh dari pelaksaanaan suatu program. c. Metode AHP (Analytical Hierarchy Process) 7
http://digilib.mercubuana.ac.id/
AHP merupakan suatu model pendukung keputusan yang akan menguraikan masalah multi faktor atau multi kriteria yang kompleks menjadi suatu hirarki. d. Metode IRR (Internal Rate Of Return) Metode ini untuk membuat peringkat usulan investasi dengan menggunakan tingkat pengembalian atas investasi yang dihitung dengan mencari tingkat diskon yang menyamakan nilai sekarang dari arus kas masuk proyek yang di harapkan nilai sekarang biaya proyek atau sama dengan tingkat diskon yang membuat NPV sama dengan nol. e. Metode NPV (Net Present Value) Merupakan metode untuk menghitung selisih antara pengeluaran dan pemasukan yang telah didiskon dengan menggunakan social opportunity cost of capital sebagai diskon faktor atau dengan kata lain merupakan arus kas yang diperkirakan pada masa yang akan datang yang didiskonkan pada saat ini. f. Metode Regresi Linear Merupakan alat statistik yang dipergunakan untuk mengetahui pengaruh antara satu atau beberapa variabel terhadap satu buah variabel. Variabel yang mempunyai sering disebut variable bebas, variable independen dan variabel penjelas. Variabel yang sering disebut dengan variabel terikat atau variabel dependen. g. Metode FMADM (Fuzzy Multiple Attribute Decision Making) Suatu metode yang digunakan untuk mencari alternative optimal dari sejumlah alternative dengan kriteria tertentu. h. Metode SAW (Simple Addtive Weighting) Metode SAW mengharuskan pembuat keputusan menentukan bobot bagi setiap atribut, Skor total untuk alternative diperoleh dengan menjumlahkan seluruh hasil perkalian antara rating (yang dapat dibandingkan lintas atribut) dan bobot tiap atribut. Rating tiap atribut haruslah bebas dimensi dalam arti telah melewati proses normalisasi matriks sebelumnya.
2.2
Analytical Hierarchy Process (AHP) Proses pengambilan keputusan pada dasarnya adalah memilih suatu alternative. Peralatan
umum Analytical Hierarchy Process (AHP) adalah suatu hirarki fungsional dengan input utamanya presepsi manusia. Dengan hirarki, suatu masalah komplek dan tidak berstruktur dipecahkan ke 8
http://digilib.mercubuana.ac.id/
dalam kelompok – kelompoknya.Kemudian kelompok – kelompok tersebut diatur menjadi suatu bentuk hirarki. Beberapa hal yang perlu diperhatikan didalam melakukan proses penjabaran hirarki tujuan, yatu :
Pada saat penjabaran tujuan ke dalam sub tujuan, harus diperhatikan apakah setiap aspek dari tujuan yang lebih tinggi tercakup dalam sub tujuan tersebut.
Meskipun hal tersebut terpenuhi, perlu menghindari terjadinya pembagian yang terlampau banyak, baik dalam arah horizontal maupun vertikal.
Untuk itu, sebelum menetapkan suatu tujuan untuk menjabarkan hirarki tujuan yang lebih rendah, maka dilakukan tes kepentingan, “apakah suatu tindakan / hasil yang terbaik akan diperoleh bila tujuan tersebut tidak dilibatkan dalam proses evaluasi?” Model AHP pendekatannya hampir identik dengan model perilaku politis, yaitu merupakan
model keputusan (individual) dengan menggunakan pendekatan kolektif dari proses pengambilan keputusan. AHP yang dikembangkan oleh Thomas L. Saaty, dapat memecahkan masalah yang kompleks dimana aspek atau kriteria yang diambil cukup banyak. Juga kompleksitas ini disebabkan oleh struktur masalah yang belum jelas, ketidakpastian persepsi pengambil keputusan yang dirasakan dan diamati perlu diambil secepatnya, tetapi variasinya rumit sehingga data tidak mungkin dapat dicatat secara numeric, hanya secara kualitatif saja yang dapat diukur, yaitu berdasarkan persepsi pengalaman dan intuisi. Namun tidak menutup kemungkinan bahwa model – model lainnya ikut dipertimbangkan pada saat proses pengambilan keputusan individual pada saat proses penerapan pemahaman ini. Kelebihan AHP dibandingkan dengan lainnya adalah:
Struktur yang berhirarki, sebagai konsekuensi dari kriteria yang dipilih, sampai pada sub – sub kriteria yang paling dalam.
Memperhitungkan validitas sampai dengan batas toleransi inkonsistensi berbagai kriteria dan alternative yang dipilih oleh para pengambil keputusan.
Memperhitungkan daya tahan atau ketahanan output analisis sensitifitas pengambil keputusan.
9
http://digilib.mercubuana.ac.id/
Selain itu, AHP mempunyai kemampuan untuk memecahkan masalah yang multi – obyektif dan multi kriteria yang berdasar pada perbandingan preferensi dari setiap elemen dalam hirarki.Jadi model ini merupakan suatu model pengambilan keputusan yang komprehensif. Pada dasarnya langkah – langkah dalam metode AHP meliputi : 1) Mendefinisikan masalah dan menentukan solusi yang diinginkan. 2) Membuat struktur hirarki yang diawali dengan tujuan umum, dilanjutkan dengan sub tujuan, kriteria dan kemungkinan alternative–alternative pada tingkatan kriteria yang paling bawah. 3) Membuat matriks perbandingan berpasangan yang menggambarkan kontribusi relative atau pengaruh setiap elemen terhadap masing – masing tujuan atau kriteria yang setingkat diatasnya. Perbandingan dilakukan berdasarkan judgement dari pengambilan keputusan dengan menilai tingkat kepentingan suatu elemen dibandingkan elemen lainnya. 4) Melakukan perbandingan berpasangan sehingga diperoleh judgement seluruhnya sebanyak n x [(n-1)/2] buah, dengan n adalah banyaknya elemen yang dibandingkan. 5) Menghitung nilai eigen dan menguji konsistensinya, jika tidak konsisten maka pengambilan data diulangi. 6) Mengulang langkah 3,4 dan 5 untuk seluruh tingkat hirarki. 7) Menghitung eigen vector dari setiap matriks perbandingan berpasangan. Nilai vector eigen merupakan bobot setiap elemen. Langkah ini untuk mensistensis judgement dalam penentuan prioritas elemen – elemen pada tingkat hirarki terendah sampai pencapaian tujuan. 8) Memeriksa konsistensi hirarki. Jika nilainya lebih dari 10 persen maka penilaian data judgement harus diperbaiki.
Secara naluri, manusia dapat mengestimasi besaran sederhana melalui inderanya. Proses yang paling mudah adalah membandingkan dua hal dengan keakuratan perbandingan tersebut dapat dipertanggunjawabkan. Untuk itu (Saaty, T.L 1990) menetapkan skala kuantitatif 1 sampai dengan 9 untuk menilai perbandingan tingkat kepentingan suatu elemen terhadap elemen ini, dapat dilihat pada tabel 2.1 Identitas
Keterangan
Penjelasan
Kepentingan 1
Kedua
elemen
sama Dua elemen mempunyai pengaruh 10
http://digilib.mercubuana.ac.id/
pentingnya 2
yang sama besar terhadap tujuan
Elemen yang satu sedikit Pengalaman dan penilaian sedikit lebih
panjang
daripada menyongkong
elemen yang lainnya 5
dibadingkan elemen lainnya
daripada
yang kuat menyongkong satu elemen
lainnya
dibandingkan elemen lainnya
Satu elemen jelas lebih Satu elemen yang kuat disokong mutlak penting daripada dan elemen lainnya
9
elemen
Elemen yang satu labih Pengalaman dan penilaian sangat penting
7
satu
Satu
elemen
dominan
terlihat
dalam
prakterk mutlak Bukti yang mendukung elemen
penting daripada elemen yang satu terhadap elemen lain lainnya
memiliki
tingkat
penegasan
tertinggi
yang
mungkin
menguatkan 2,4,6,8
Nilai – nilai antara dua Nilai ini diartikan bila ada dua nilai
pertimbangan
pertimbangan
– kompromi diantara dua pilihan yang
berdekatan Tabel 2.1 Skala Kuantitaif
Dalam menyelesaikan permasalahan dengan AHP ada beberapa prinsip yang di pahami, diantaranya adalah sebagai berikut :
Decomposition (Membuat Hierarki) Sistem yang kompleks bisa dipahami dengan memecahkan menjadi elemen – elemen yang lebih kecil dan mudah dipahami
Comparative Judgmet (Penilaian Kriteria Alternatif)
11
http://digilib.mercubuana.ac.id/
Tujuan
Kriteria III
Kriteria II
Kriteria I
Alternatif
Alternatif II
Kriteria IV
ALternatif III
Gambar 2.1 Struktur Hierarki
2.3
Pengertian Raskin Raskin adalah bagian dari program penanggulangan kemiskinan yang berada pada kluster 1,
yaitu kegiatan perlindungan sosial berbasis keluarga dalam pemenuhan kebutuhan pangan pokok bagi masyarakat kurang mampu. Raskin mempunyai multi fungsi, yaitu memperkuat ketahanan pangan keluarga miskin, sebagai pendukung bagi peningkatan kualitas Sumber Daya Manusia (SDM), pendukung usaha tani padi dan sektor lainnya dan peningkatan pemberdayaan ekonomi daerah. Disamping itu Raskin berdampak langsung pada stabilisasi harga beras, yang akhirnya juga berperan dalam menjaga stabilitas ekonomi nasional (Pedoman Umum Penyaluran Raskin 2012)
12
http://digilib.mercubuana.ac.id/
2.4
Masyarakat Miskin 2.4.1
Pengertian Masyarakat Miskin Masyarakat miskin adalah suatu kondisi fisik masyarakat yang tidak memiliki
akses ke prasarana dan sarana dasar lingkungan yang memadai, dengan kualitas perumahan dan pemukiman yang jauh dibawah standart kelayakan serta mata pencarian yang tidak menentu yang mencakup seluruh multidimensi, yaitu dimensi politik, dimensi sosial, dimensi lingkungan, dimensi ekonomi dan dimensi asset.(P2 KP, Pedoman Umum,2004:1)
2.4.2
Kriteria Masyarakat Miskin 14 kriteria masyarakat miskin menurut standar BPS, yaitu :
1.
Luas lantai bangunan tempat tinggal kurang dari 8m2 perorang
2.
Jenis lantai tempat tinggal terbuat dari tanah / bambu / kayu murahan
3.
Jenis dinding tempat tinggal terbuat dari tanah / rumbai / kayu berkualitas rendah / tembok tanpa diplester
4.
Tidak memiliki fasilitas buang air besar / bersama – sama dengan rumah tangga lain
5.
Sumber penerangan rumah tangga tidak menggunakan listrik
6.
Sumber air minum berasal dari sumur / mata air tidak terlindung / sungai / air hujan
7.
Bahan bakar untuk memasak sehari – hari adalah kayu bakar / arang / minyak tanah
8.
Hanya mengkonsumsi daging / susu/ ayam satu kali dalam seminggu
9.
Hanya membeli satu stel pakaian baru dalam setahun
10.
Hanya sanggup makan sebanyak satu / dua kali dalam sehari
11.
Tidak sanggup membayar biaya pengobatan di puskesmas / poliklinik
12.
Sumber penghasilan kepala rumah tangga adalah : Petani dengan luas lahan 500 m2, buruh tani, nelayan, buruh bangunan, buruh perkebunan atau pekerjaan lainnya dengan pendapatan dibawah Rp.600.000,- perbulan 13
http://digilib.mercubuana.ac.id/
13.
Pendidikan tertinggi kepala rumah tangga : tidak sekolah / tidak tamat SD / hanya SD
14.
Tidak memiliki tabungan / barang yang mudah dijual dengan minimal Rp.500.000,- seperti sepeda motor kredit / non kredit, emas, ternak, kapal motor, atau barang modal lainnya. Jika minimal 9 variabel terpenuhi maka suatu rumah tangga di kategorikan
sebagai rumah tangga miskin.
2.5
Konsep Dasar Sistem 2.5.1
Definisi Sistem Menurut Tata Sutadbri (2012:6) Sistem adalah sekelompok unsur yang erat
hubungannya satu dengan yang lain, yang berfungsi bersama – sama untuk mencapai tujuan tertentu. Menurut Prof.Dr.Mr.S.Prajudi Atmosudirdjo (2012:07) Suatu sistem terdiri atas objek – objek atau unsur – unsur atau komponen – komponen yang berkaitan dan berhubungan satu sama lainnya sedemikian rupa sehingga unsur – unsur tersebut merupakan suatu kesatuan pemrosesan atau pengelolahan yang tertentu. (Tata Sutabri,2012)
2.5.2
Karakteristik Sistem Model umum sebuah sistem adalah input, proses dan output. Hal ini
merupakan sebuah konsep sistem yang sangat sederhana sebab sebuah sistem dapat mempunyai beberapa masukan dan keluaran. Adapun karakteristik yang di maksud adalah sebagai berikut: a. Komponen Sistem (Components) Suatu sistem yang terdiri dari sejumlah komponen yang saling berinteraksi, artinya saling bekerja sama membentuk satu kesatuan. Komponen – komponen sistem tersebut dapat berupa suatu sub – sistem. Setiap sub – sistem memiliki sifat dari sistem yang menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan.
14
http://digilib.mercubuana.ac.id/
b.Batasan Sistem (Boundar) Ruang lingkup sistem merupakan daerah yang membatasi antara sistem dengan sistem yang lain atau sistem dengan lingkungan luarnya. Batasan sistem ini memungkinkan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan. b. Lingkup Luar Sistem (Environtment) Bentuk apapun yang ada di luar ruang lingkup atau batasan sistem yang mempenagruhi operasi sistem tersebut disebut lingkungan luar sistem.Lingkungan luar sistem ini dapat bersifat mengutungkan dan dapat juga bersifat merugikan sistem tersebut. d.Penghubung Sistem (interface) Media yang menghubungkan sistem dengan subsistem lain disebut penghubung sistem atau interface. Penghubung ini memungkinkan sumber daya mengalir dari satu subsistem lain. Bentuk keluaran dari satu sub-sistem akan menjadi masukan untuk sub-sistem lain melalui penghubung tersebut. Dengan demikian, dapat terjadi suatu integrasi sistem yang membentuk satu kesatuan. e.Masukan Sistem (Input) Energi yang dimasukkan ke dalam sistem disebut masukan sistem, yang dapat berupa suatu unit sistem komputer, “program” adalah maintenance input untuk di olah menjadi informasi. f.Keluaran Sistem (Output) Hasil energi yang diolah dari diklasifikasikan menjadi keluaran yang berguna keluaran ini bisa merupakan masukan bagi subsistem yang lain seperti sistem informasi, Keluaran yang di hasilkan adalah informasi. g.Pengolah Sistem (Proses)
15
http://digilib.mercubuana.ac.id/
Suatu sistem dapat mempunyai suatu proses yang akan mengubah masukan menjadi keluaran, contohnya adalah sistem akuntasi. Sistem ini akan mengolah transaksi menjadi laporan – laporan yang dibutuhkan oleh pihak manajemen. h.Sasaran Sistem (Objektive) Suatu sistem memiliki tujuan dan sasaran yang pasti dan bersifat d deterministik.Kalau suatu sistem tidak memiliki sasaran maka operasi sistem tidak ada guananya.Suatu sistem dikatakan berhasil bila mengenai sasaran atau tujuan yang telah direncanakan (Sutabri.2012).
2.5.3
Klasifikasi Sistem Sistem merupakan suatu bentuk integrasi antara satu komponen dengan
komponen lain karena sistem memiliki sasaran yang berbeda untuk setiap kasus yang terjadi yang ada didalam sistem tersbut. Oleh karena itu sistem dapat di klasifikasikan dari beberapa sudut pandang, diantaranya: 1) Sistem abstrak dan sistem fisik Sistem abstrak adalah sistem yang berupa pemikiran atau ide – ide yang tidak tampak secara fisik.Sedangkan sistem fisik merupakan sistem yang ada secara fisik. 2) Sistem alamiah dan sistem buatan manusia Sistem alamiah adalah sistem yang terjadi melalui proses alam, tidak dibuat oleh manusia. Sedangkan sistem buatan manusia merupakan sistem yang melibatkan interaksi manusia dengan mesin yang di sebut human machine system. 3) Sistem determinasi dan sistem probabilistic Sistem yang beroperasi dengan tingkah laku yang dapat diprediksi disebut sistem deterministic.Sedangkan sistem bersifat probabilistic adalah sistem yang kondisi masa depannya tidak dapat diprediksi karena mengandung unsur probabilistic. 4)Sistem tertutup dan sistem terbuka 16
http://digilib.mercubuana.ac.id/
Sistem tertutup merupakan sistem yang tidak berhubungan dan tidak terpengaruh oleh lingkungan lainnya. Sedangkan sistem terbuka adalah sistem yang berhubungan dan dipengaruhi oleh lingkungan luarnya (Sutabri,2012)
2.6
Analisa SDLC 2.6.1
Pengertian SDLC SDLC atau Soft Development Life Cycle adalah proses mengembangkan atau
mengubah suatu sistem perangkat lunak dengan menggunakan model – model dan metodologi yang digunakan orang untuk mengembangkan sistem – sistem perangkat lunak sebelumnya berdasarkanbest practice atau cara – cara yang sudah teruji baik.(Rosa A.S ,M. Shalahuddin,2013) Tahapan – tahapan SDLC 1.
Inisialisasi (initiation)
Tahap ini biasanya ditandai dengan pembuatan proposal proyek perangkat lunak. 2.
Pengembangan konsep sistem (System concept development)
Mendefinisikan lingkup konsep termasuk dokumen lingkup sistem, analisis manfaat niaya, manajemen rencana dan pembelajaran kemudahan sistem. 3.
Perencanaan (planning)
Mengembangkan rencana manajemen proyek dan dokumen perencanaan lainnya.Menyediakan dasar untuk mendapatkan sumber daya (resources) yang dibutuhkan untuk memperoleh solusi. 4.
Analisis kebutuhan (requirement analysis)
Menganalisis kebutuhan pemakai sistem perangkat lunak (user) dan mengembangkan kebutuhan user.Membuat dokumen kebutuhan fungsional. 5.
Disain (design)
Mentransformasikan kebutuhan detail menjadi kebutuhan yang sudah lengkap, dokumen disain sistem fokus pada bagaimana dapat memenuhi fungsi – fungsi yang di butuhkan. 6.
Pengembangan (development) 17
http://digilib.mercubuana.ac.id/
Mengkonversi disain ke sistem informasi yang lengkap termasuk bagaimana memperoleh dan melakukan instalasi lingkungan sistem yang dibutuhkan, membuat basis data dan mempersiapkan prosedur pengujian, mempersiapkan berkas atau file pengujian, pengkodean, pengkompilasian, memperbaiki dan membersihkan program, peninjauan pengujian. 7.
Integrasi dan pengujian (integration dan test)
Mendemonstrasikan sistem perangkat lunak bahwa telah memenuhi kebutuhan yang dispesifikasikan pada dokumen kebutuhan fungsional.Dengan diarahkan
oleh
staf
penjamin
kualitas
(quality
assurance)
dan
user.Menghasilkan laporan analisis pengujian. 8.
Implementasi (implementation)
Termasuk pada persiapan implementasi, implementasi perangkat lunak pada lingkungan produksi (lingkungan pada user) dan menjalankan resolusi dari permasalahan yang teridentifikasi dari teridentifikasi dari fase integrasi dan pengujian. 9.
Operasi dan pemeliharaan
Mendeskripsikan pekerjaan untuk mengoperasikan dan memelihara sistem informasi pada lingkungan produksi (lingkungan pada user), termasuk implementasi akhir dan masuk pada proses peninjauan. 10.
Disposisi (Disposition)
Mendeskripsikan aktifitas akhir dari pengembangan system dan membangun data yang sebenarnya sesuai dengan aktifitas user.
2.6.2
Model Waterfall Model SDLC air terjun (waterfall) sering juga disebut model sekuensial liner
(sequential linear) atau alur hidup klasik (classic life cycle).Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terturut dimulai dari analisis desain, pengodean, pengujian dan tahap pendukung (support).(RosaA.S ,M. Shalahuddin,2013
Berikut adalah gambar model air terjun : 18
http://digilib.mercubuana.ac.id/
Sistem / Rekayasa Informasi
Analisis
Desain
Pengodean
Pengujian
Gambar ilustrasi model waterfall
Gambar 2.2 Ilustrasi Model Waterfall
Analisis kebutuhan perangkat lunak Proses
pengumpulan
kebutuhan
dilakukan
secara
intensif
untuk
menspesifikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan oleh .Spesifikasi perangkat lunak pada tahap ini perlu untuk didokumenatasikan.
Desain Desain perangkat lunak adalah proses multi langkah yang fokus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasi antarmuka dan prosedur pengodean. Tahap ini mentranslasi kebutuhan perangka lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya.Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokimentasikan.
Pembuatan kode program Desain harus ditranslasikan ke dalam program perangkat lunak.Hasil tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain.
Pengujian Pengujian focus pada perangkat lunak secara dari segi lojik dan fungsional dan memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk 19
http://digilib.mercubuana.ac.id/
meminimalisir kesalahan dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan.
Pendukung (support) atau pemeliharaan (maintenance) Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan ketika sudah dikirimkan ke user.Perubahan biasa terjadi karena adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifiaksi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru.
2.7
Unified Modeling Langauge (UML)
Pada perkembangan teknologi perangakt lunak, diperlukan adanya bahasa yang digunakan untuk memodelkan perangkat lunak yang akan dibuat dan perlu adanya standarisasi agar orang di berbagai negara dapat mengerti permodelan perangkat lunak. Banyak orang yang telah membuat bahasa permodelan pembangunan pada saat itu, misalnya yang sempat berkembang dan digunakan oleh banyak pihak adalah Data Flow Diagram (DFD)untuk memodelkan perangkat lunak yang menggunakan pemograman procedural atau structural.Pada perkembangan teknik pemogramkan berorientasi objek munculkan sebuah standarisasi bahasa permodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunakan pemograman berorientasi obek yaitu Unified Modeling Language (UML). UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks – teks pendukung. UML juga berfungsi untuk melakukan permodelan.(RosaA.S ,M. Shalahuddin,2013)
2.8
Diagram UML
Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan dalam 3 kategori. Pembagian kategori dan macam – macam diagram tersebut dapat di lihat pada gambar dibawah ini :
20
http://digilib.mercubuana.ac.id/
UML 2.3
Structure Diagrams
Behavious Diagrams
Intraction Diagrams
Class Diagram
Use Case Diagram
Sequence Diagram
Object Diagram
Activity Diagram
Communication Diagram
Component Diagram
State Machine Diagram
Timing machine Diagram
Package Diagram
Intraction Overview Diagram
Deployment Diagram
Gambar 2.3 Diagram UML
Berikut ini penjelasan dari pembagian kategori tersebut :
Structure Diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang di modelkan.
Behaviour yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan terjadi pada sebuah sistem
Interaction Diagram
yaitu kumpulan diagram yang digunakan untuk menggambarkan
interaksi sistem dengan lain maupun interaksi antar sub – sistem pada suatu sistem (Rosa A.S ,M. Shalahuddin,2013).
21
http://digilib.mercubuana.ac.id/
2.8.1
Use Case Diagram Use Case atau diagram use case merupakan permodelan untuk kelakuan
(behavior) system informasi yang akan di buat.Use Case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan di buat. Dengan pengertian lain use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi – fungsi itu. (RosaA.S ,M. Shalahuddin,2013) Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case.
Aktor merupakan orang, proses atau sistem lain yang berinteraksi
dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang.
Use Case merupakan fungsionalitas yang disediakan sistem sebagai
unit – unit yang saling bertukar pesan antar unit atau aktor. Dibawah ini adalah symbol – symbol yang ada pada diagram use case Tabel 2.2 Simbol Use Case Simbol Use case
Deskripsi Fungsionalitas
yang
disediakan
sistem
Nama Use
sebagai unit – unit yang saling bertukar
Case
pesan antar unit atau aktor, biasanya dinyatakan dengan menggunakan kata kerja di awal fase nama use case
Aktor / actor
Orang, proses atau sistem yang berinteraksi dengan sistem informasi yang akan di buat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun symbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang, biasanya dinyatakan 22
http://digilib.mercubuana.ac.id/
menggunakan kata benda diawal frase namaaktor
Nama Aktor
Asosiasi / association
Komunikasi antara actor dan use case yang berpatisipasi pada use case atau use case memiliki interaksi dengan actor
Ekstensi / extend
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan dapat
berdiri
tambahan
itu;
walau
tanpa
mirip
use
dengan
case prinsip
inheritance pada pemograman berorientasi objek. Biasanya use case tambahan memiliki nama depan
yang
sama
use
case
yang
ditambahkan, misal
Validasi username
<<extend>> Validasi user
<<extend>> Validasi sidik Jari
Arah panah mengarah pada use case yang ditambahkan; biasanya use case yang 23
http://digilib.mercubuana.ac.id/
menajdi extend-nya merupakan jenis yang sama dengan use case yang menjadi induknya.
Generelisasi / generalization
Hubungan generalisasi dan spesialisasi (umum – khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya, misalnya :
Ubah data
Mengelola data
Hapus data
Arah panah pengarah pada use case yang menjadi generalisasinya (umum) Menggunakan /include/uses
Relasi uses case tambahan ke seluruh use case dimana use case yang ditambahkan 24
http://digilib.mercubuana.ac.id/
memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat «include» -----------------
Dijalankan use case ini ada dua sudut pandang
yang cukup
besar mengenai
include di use case: Include
«uses»
berarti
use
case
yang
ditambahkan akan selalu dipanggil saat use case tambahan dijalankan, missal pada kasus berikut :
Validasi username
<
>
Login
Include
berarti
use
case
yang
tambahan akan selalu melakukan pengecekan apakah use caseyang ditambahkan sebelum dijalankan,
telah
use
case
missal
berikut :
25
http://digilib.mercubuana.ac.id/
di
jalankan tambahan
pada
kasus
Validasi username
<>
Ubah data
Kedua interprestasi di atas dapat dianut salah satu atau keduanya tergantung pada pertimbangan dan interprestasi yang di butuhkan.
2.8.2
Activity Diagram Diagram aktivitas atau activity diagram menggambarkan workflow (aliran
kerja) atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem.(RosaA.S ,M. Shalahuddin,2013) Diagram aktifitas juga banyak digunakan untuk mendeskripsikan hal – hal berikut :
Rancangan proses bisnis dimana setiap urutan aktifitas yang
digambarkan merupakan proses bisnis sistem yang didefinisikan
Urutan atau pengelompokan tampilan dari sistem atau user
interfacedimana setiap aktifitas dianggap memiliki sebuah rancangan antarmuka tampilan
Rancangan pengujian dimana setiap aktifitas dianggap memerlukan
sebuah pengujian yang perlu didefinisikan kasus ujinya
Rancangan menu yang di tampilkan pada perangkat lunak. 26
http://digilib.mercubuana.ac.id/
Berikut adalah simbol – simbol yang ada pada diagram aktvitas: Tabel 2.3 Simbol Activity Diagram Simbol Status awal
Deskripsi Status
awal
aktivitas
sistem,
sebuah diagram memiliki sebuah status awal. Aktivitas
Aktivitas yang di lakukan sistem, aktivitas biasanya diawali dengan
Aktivitas
Percabangan / decision
kata kerja Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu
Penggabungan / Join
Asosiasi penggabungan dimana lebih
dari
satu
aktivitas
digabungkan menjadi satu
Status akhir
Status
akhir
yang
dilakukan
sistem, sebuah diagram aktivitas memiliki sebuah status akhir.
27
http://digilib.mercubuana.ac.id/
Swimlame
Memisahkan
organisasi
bisnis
yang bertanggung jawab terhadap aktivitas yang terjadi
Nama swimlane
Nama swimlane
2.8.3
Sequence Diagram objek Diagram sekuen menggambarkan kelakuan objek pada use case dengan
mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambarkan diagram sekuen maka harus diketahui objek – objek yang terlihat dalam sebuah use case beserta metode – metode yang dimiliki kelas yang diintanisasi menjadi objek itu. Banyaknya diagram sekuen yang harus digambar adalah minimal sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak.(RosaA.S ,M. Shalahuddin,2013) Tabel 2.4 Simbol Sequence Diagram Simbol
Deskripsi 28
http://digilib.mercubuana.ac.id/
Aktor
Orang,
proses
atau
sistem
lain
yang
berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang; biasanya dinyatakan
Nama Aktor
menggunskan kata benda di awal frase nama Atau
aktor.
Nama aktor
Tanpa waktu aktif Garis hidup / lifeline
Menyatakan kehidupan suatu objek
Objek
Menyatakan objek yang berinteraksi pesan Nama objek : nama kelas
Waktu aktif
Menyatakan objek dalam keadaan aktif dan berinteraksi, semua yang terhubung dengan waktu aktif ini adalah sebuah tahapan yang di lakukan didalamnya
Pesan tipe create «create»
Menyatakan suatu objek membuat objek lain, arah panah mengarah pada obejek yang dibuat
29
http://digilib.mercubuana.ac.id/
Pesan tipe call 1 = nama_metode()
Menyatakan suatu objek memanggil operasi atau metode yang ada pada objek lain atau dirinya sendiri.
1: nama_metode()
Arah panah mengarah pada objek yang memiliki
operasi,
karena
ini
memanggil
operasi maka operasi yang di panggil harus ada pada diagram kelas objek yang berinteraksi Pesan tipe send
Menyatakan bahwa suatu objek mengirimkan data / masukan / informasi ke objek lainnya, arah panah kepada objek yang dikirim
1 = masukan
Pesan tipe return 1 = keluaran
Menyatakan bahwa suatu objek yang telah menjalankan suatu operasi atau metode yang menghasilkan suatu kembalian ke objek yang
---------------------------------
menerima kembalian
Pesan tipe destroy
Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang di akhiri, sebaiknya jika ada create maka ada destroy
30
http://digilib.mercubuana.ac.id/
<<destory>>
2.8.4
Class Diagram Diagram kelas atau class diagram menggambarkan struktur sistem dari segi
pendefinisian kelas – kelas yang dibuat untuk membangun sistem. Kelas memiliki apa yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang akan disebut atribut dan metode atau operasi. (RosaA.S ,M. Shalahuddin,2013) Kelas – kelas yang ada pada struktur sistem harus dapat melakukan fungsi – fungsi sesuai dengan kebutuhan sistem sehingga pembuatan perangkat lunak atau programmer dapat membuat kelas – kelas didalam program perangkat lunak sesuai dengan perancangan diagram kelas. Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis – jenis kelas berikut :
Kelas Main
Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
Kelas yang menangani tampilan sistem (view)
Kelas yang mendefinisikan dan mengatur tampilan ke pemakai.
Kelas yang diambil dari pendefinisian use case (controller)
Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian use case, kelas ini biasanya disebut dengan kelas proses yang menangani proses bisnis pada perangkat lunak.
Kelas yang diambil dari pendefinisian data (model)
Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data. Semua tabel yang dibuat di basis data dapat dijadikan kelas. 31
http://digilib.mercubuana.ac.id/
Dalam mendefinisikan metode yang ada didalam kelas perlu memperhatikan apa yang disebut dengan cohesion dan couping. Cohesion adalah ukuran seberapa dekat keterkaitan intruksi kedalam sebuah metode terkait satu sama lain sedangkan coupling adalah ukuran seberapa dekat keterkaitan intruksi antara metode yang satu dengan metode yang lain dalam sebuah kelas
Tabel 2.5 Simbol Class Diagram Simbol Kelas
Deskripsi Kelas pada struktur sistem
Nama_Kelas +atribut +operasi()
Antarmuka / interface
Sama
dengan
konsep
interface
dalam
pemograman berorientasi objek
Nama_interface Asosiasi / association
Relasi
antarkelas
dengan
makna
umum,
asosiasi biasa nya juga disertai dengan multiplicity Asosiasi berarah / directed association
Relasi antarkelas dengan makna yang satu digunakan oleh keals yang lain, asosiasi biasanya juga disertai dengan multiplicity
Generalisasi
Relasi antarkelas dengan makna generalisasi –
32
http://digilib.mercubuana.ac.id/
generalisasi (umum – khusus) Kebergantungan / dependency
Relasi antarkelas dengan makna keberuntungan antarkelas
Agregasi / aggregation
Relasi antarkelas dengan makna semua bagian (whole – part)
2.9
Pengujian Perangkat Lunak
Pengujian adalah satu set aktifitas yang direncanakan dan sistematis untuk menguji atau mengevaluasi kebenaran yang diinginkan. Pengujian perangkat lunak adalah sebuah elemen sebuah topik yang memiliki cakupan luas dan sering dikaitkan dengan verifikasi dan validasi.(RosaA.S ,M. Shalahuddin,2013) Aktifitas pengujian terdiri dari satu set atau sekumpulan langkah dimana dapat menempatkan desain kasus uji yang spesifik dan metode pengujian. Secara umum pola pengujian pada perangkat lunak adalah sebagai berikut : Pengujian dimulai dari level komponen hingga integrasi antar komponen menjadi sebuah sistem. Teknik pengujian berbeda – beda sesuai dengan berbagai sisi atau unit uji dalam waktu yang berbeda - beda pula bergantung pada pengujian pada bagian mana yang dibutuhkan. Pengujian dilakukan oleh pengembang perangkat lunak, dan jika untuk proyek besa, pengujian bisa dilakukan oleh tim uji yang tidak terkait dengan tim pengembang perangkat lunak (independent test group(ITG)). Pengujian dan penirkutukan (debugging) merupakan aktifitas yang berbeda, tapi penirkutukan (debugging)harus diakomodasi pada berbagai strategi pengujian. Pengujian lebih focus untuk mencari adanya kesalahan baik dari sudut pandang orang secara umum atau dari sudut pandang pengembang tanpa harus menemukan lokasi kesalahan pada kode program. Penirkutukan adalah proses mencari lokasi kesalahan 33
http://digilib.mercubuana.ac.id/
pada kode program sehingga dapat segera diperbaiki oleh pembuat program (Programmer).
2.9.1
Blackbox Testing (Pengujian Kotak Hitam) Blackbox Testing yaitu menguji perangkat lunak dari segi spesifikasi
fungsional tanpa meguji desain dan kode program.Pengujian dimaksudkan untuk mengetahui apakah fungsi – fungsi, masukan dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan. Pengujian kotak hitam dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan spesifikasi yang dibutuhkan.(RosaA.S ,M. Shalahuddin,2013)
2.9.2
White-Box Testing (Pengujian Kotak Putih) Menguji perangkat lunak dari segi dankode program apakah mampu
menghasilkan fungsi – fungsi, masukan dan keluaran yang sesuai dengan spesifikasi kebutuhan.Pengujian kotak putih dilakukan dengan memeriksa lojik dari kode program.Pembuatan kasus uji bisa mengikuti standar pengujian dari standar pemograman yang seharusnya.(RosaA.S ,M. Shalahuddin,2013)
2.10
Basis Data Menurut Fathansyah (2012) basis data terdiri atas dua kata yaitu basis dan data.Basis
kurang lebih dapat diartikan sebagai markas atau gudang tempat bersarang atau berkumpul.Sedangkan data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia, barang, hewan, peristiwa, konsep dan sebagainya. Basis data (database) dapat didefinisikan dalam sejumlah sudut pandang seperti: a.
Himpunan kelompok data (arsip) yang saling berubungan yang diorganisasi sedemikian
rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. b.
Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian
rupa dan tanpa pengulangan (redudancy) yang tidak perlu, untuk memenuhi kebutuhan. c.
Kumpulan file / table / arsip yang saling berhubungan yang disimpan kedalam media
penyimpanan elektronik. 34
http://digilib.mercubuana.ac.id/
2.11
Perangkat Lunak Pendukung 2.11.1
PHP PHP (Hypertext Preprocessor) adalah bahasa skrip yang dapat ditanamkan
atau disisipkan ke dalam HTML. PHP banyak dipakai untuk memprogrtam situs web dinamis. PHP dapat digunakan untuk membangun sebuah CMS. Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs Personal). PHP pertama kali dibuat oleh Rasmus Lerdorf (FI) yang wujudnya berupa skrip yang digunakan untuk mengolah data formulir web, (Alan Nur,2011). Menurut Anhar (2010) PHP singkatan dari PHP Hypertext Preprocessor yaitu bahasa pemrograman web server – side yang bersifat open source PHP merupakan skrip yang terintegrasi dengan HTML dan berada pada server (server side HTML embedded scripting). PHP adalah skrip yang digunakan untuk membuat halaman website yang dinamis. Dinamis berarti halaman yan g akan ditampilkan dibuat saat halaman itu diminta oleh klien.
2.11.2
MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
(bahasa inggris : database management system) atau DBMS yang multithread multiuser, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), terjadi mereka juga menjual dbawah lisensi komersial untuk kasus – kasus dimana penggunaannya tidak cocok dengan penggunaan GPL (Achmad,2010)
2.11.3
XAMPP XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem
operasi, merupakan kompilasi dari beberapa program.Fungsinya adala sebagai server yang terjadi sendri (localhost). Yang terdiri atas program Apache HTTP Server. MySQL database dan perintah bahasa yang ditulis dengan baahsa pemograman PHP dan Perl.Nama XAMPP merupakan singkatan dari X (Empat sistem operasi apaun) Apache.MySQL.PHP dan Perl.Program ini tersedia dalam GNU General Public License 35
http://digilib.mercubuana.ac.id/
dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis.
2.11.4
Framework Framework adalah koleksi atau kumpulan potongan – potongan yang disusun
atau diorganisasikan sedemikian rupa, sehingga dapat digunakan untuk membantu membuat aplikasi utuh tanpa harus membuat semua kodenya dari awal (Awan,2013:3) Framework juga dapat diartikan sebagai kumpulan skrip terutama class dan function yang dapat membantu developer / programmer dalam menangani berbagai masalah – masalah dalam pemrograman seperti koneksi ke database, pemanggilan variable, file dan lain – lain sehingga developer lebih focus dan lebih cepat membangun aplikasi. Framework juga dapat diartikan sebagai komponen pemrograman yang siap re –use kapan saja, sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama.
2.11.5
Sublime Text 3 Sublime text 3 adalah editor teks berbasis Pythonyang elegan, yang dirancang
untuk mengolah potongan – potongan kode, plugin dan markup.
2.11.6
Balsamiq Mockups Mockups adalahmodel skala atau ukuran penuh dari desain atau perangkat ,
digunakan untuk mengajar , demonstrasi , evaluasi desain , promosi , dan keperluan lainnya . Sebuah mockup adalah prototipe jika memberikan setidaknya sebagian dari fungsi sistem dan memungkinkan pengujian desain .Mock - up yang digunakan oleh desainer
terutama
untuk
memperoleh
umpan
(https://en.wikipedia.org/wiki/Mockup) – 24 juli 4:33
36
http://digilib.mercubuana.ac.id/
balik
dari
pengguna
.