BAB II TINJAUAN PUSTAKA

Ukuran: px
Mulai penontonan dengan halaman:

Download "BAB II TINJAUAN PUSTAKA"

Transkripsi

1 BAB II TINJAUAN PUSTAKA II.1. Konsep Dasar SPK (Sistem Pendukung Keputusan) Sistem Pendukung Keputusan (SPK) mulai dikembangkan pada tahun 1960-an, tetapi istilah sistem pendukung keputusan itu sendiri baru muncul pada tahun 1971, yang diciptakan oleh G. Anthony Gorry dan Micheal S.Scott Morton, keduanya adalah profesor di MIT. Hal itu mereka lakukan dengan tujuan untuk menciptakan kerangka kerja guna mengarahkan aplikasi komputer kepada pengambilan keputusan manajemen. Sementara itu, perintis sistem pendukung keputusan yang lain dari MIT, yaitu Peter G. W. Keen yang bekerja sama dengan Scott Morton telah mendefenisikan tiga tujuan yang harus dicapai oleh sistem pendukung keputusan, yaitu: 1. Sistem harus dapat membantu manajer dalam membuat keputusan guna memecahkan masalah semi terstruktur. 2. Sistem harus dapat mendukung manajer, bukan mencoba menggantikan nya. 3. Sistem harus dapat meningkatkan efektivitas pengambilan keputusan manajer. 10

2 11 II.1.1. Prinsip Dasar SPK Tujuan tersebut mengacu pada tiga prinsip dasar sistem pendukung keputusan (Kadarsah, 1998 dalam Oetomo, 2002), yaitu: 1. Struktur masalah : untuk masalah yang terstruktur, penyelesaian dapat dilakukan dengan menggunakan rumus-rumus yang sesuai, sedangkan untuk masalah terstruktur tidak dapat dikomputerisasi. Sementara itu, sistem pendukung keputusan dikembangkan khususnya untuk menyelesaikan masalah yang semi-terstruktur. 2. Dukungan keputusan : sistem pendukung keputusan tidak dimaksudkan untuk menggantikan manajer, karena komputer berada di bagian terstruktur, sementara manajer berada dibagian tak terstruktur untuk memberikan penilaian dan melakukan analisis. Manajer dan komputer bekerja sama sebagai sebuah tim pemecah masalah semi terstruktur. 3. Efektivitas keputusan : tujuan utama dari sistem pendukung keputusan bukanlah mempersingkat waktu pengambilan keputusan, tetapi agar keputusan yang dihasilakn dapat lebih baik. II.1.2. Tahapan-Tahapan SPK Pengumpulan data / elemen informasi yang relevan pengolahan data menjadi informasi baik dalam bentuk laporan grafik maupun tulisan menentukan alternatif - alternatif solusi (bisa dalam persentase).

3 12 Selain itu tahap-tahap dalam mengambil suatu keputusan telah dijelaskan dalam buku Herbert A. Simon, dimana tahapan tersebut terbagi menjadi tiga, yaitu: 1. Kegiatan Intelijen. Mengamati lingkungan mencari kondisi-kondisi yang perlu diperbaiki. 2. Kegiatan Merancang. Menemukan, mengembangkan dan mengalihkan berbagai alternatif tindakan yang mungkin. 3. Kegiatan Memilih dan Menelaah. Menilai pilihan-pilihan yang sesuai. II.1.3. Tujuan SPK Perintis SPK yang lain, Peter G. W. Keen, bekerja sama dengan Scott Morton mendefinisikan 3 (tiga) tujuan yang harus dicapai SPK. Mereka percaya bahwa SPK harus : 1. Membantu manajer membuat keputusan untuk memecahkan masalah semi terstruktur. 2. Mendukung penilaian manajer bukan mencoba menggantikannya. 3. Meningkatkan efektifitas pengambilan keputusan manajer. II.1.4. Keuntungan Dan Kerugian SPK Manajer yang menggunakan model matematis dapat memperoleh keuntungan sebagai berikut : 1. Proses pemodelan menjadi pengalaman belajar.

4 13 2. Kecepatan simulasi memberikan kemampuan bagi kita untuk mengevaluasi dampak keputusan dalam jangka waktu yang singkat. 3. Model memberikan daya peramalan. 4. Model membutuhkan biaya yang lebih murah daripada metode trial-anderror. 5. Dapat menyelesaikan problem yang kompleks. 6. Sistem dapat berinteraksi dengan pemakainya. 7. Lebih cepat dengan hasil yang lebih baik (terutama dibandingkan dengan pengambilan keputusan secara intuisi). 8. Menghasilkan acuan data untuk menyelesaikan masalah yang dihadapi oleh manajer yang kurang berpengalaman. 9. Untuk masalah yang berulang, SPK dapat memberi keputusan yang lebih efektif. 10. Fasilitas untuk mengambil data dapat memberikan kesempatan bagi beberapa manajer untuk berkomunikasi dengan lebih baik. 11. Meningkatkan produktivitas dan kontrol dari manajer. Sedangkan kerugian model adalah sebagai berikut: 1. Sulitnya pemodelan sistem bisnis dan akan menghasilkan model yang tidak dapatmenangkap semua pengaruh pada entity. 2. Dibutuhkan keterampilan matematika yang tinggi untuk menggembangkan model yang lebih kompleks secara pribadi.

5 14 Beberapa hal yang dilakukan oleh seorang manajer adalah sebagai berikut: 1. Fungsi Manajemen. Fungsi manajemen dari seorang manajer ini meliputi: a. Planning b. Organizing c. Staffing d. Directing e. Controlling 2. Peran Manajemen manajerial ini maliputi beberapa aktifitas, diantaranya: a. Interpersonal b. Informational c. Decisional 3. Tingkatan ManajemenTingkatan manajemen ini meliputi: a. Tingkat Perencanaan Strategis b. Tingkat Pengendalian Manajemen c. Tingkat Operasional II.1.5. Jenis-Jenis SPK Menurut Herbert A. Simon jenis-jenis SPK menurut tingkat kerumitan dan tingkat dukungan pemecahan masalahnya adalah sebagai berikut: 1. Mengambil elemen-elemen informasi. 2. Menaganalisis seluruh file. 3. Menyiapkan laporan dari berbagai file.

6 15 4. Memperkirakan dari akibat keputusan. 5. Mengusulkan keputusan. 6. Membuat keputusan. Adapun fokus utama konsep SPK adalah komputer harus digunakan untuk mendukung manajer tertentu membuat keputusan tertentu untuk memecahkan masalah tertentu. Model SPK terdiri dari: 1. Model matematika. 2. Database. 3. Perangkat lunak, yang melukiskan beberapa komponen yang mendukung SPK, seperti: Hardware, Software, Data, Model, dan Interaktif para pemakainya. Menurut Herbert A. Simon keputusan berada pada suatu rangkaian kesatuan, dengan keputusan terprogram pada satu ujungnya dan keputusan tak terprogram pada ujung lainnya. 4. Keputusan Terprogram, bersifat berulang dan rutin sedemikian sehingga suatu prosedur pasti telah dibuat untuk menanganinya sehingga keputusan tersebut tidak perlu sebagai sesuatu yg baru tiap kali terjadi. 5. Keputusan Tidak Terprogram, bersifat baru, tidak terstruktur, dan jarang konsekuen. Tidak ada metode yg pasti utk menangani masalah ini belum pernah ada sebelumnya, atau karena sifat dan struktur persisnya tak terlihat atau rumit, atau karena begitu pentingnya sehingga memerlukan perlakuan yang sangat khusus.

7 16 Aplikasi SPK yang ditawarkan di pasar sangat beraneka ragam, dari yang paling sederhana (quick-hit SPK) sampai dengan yang sangat kompleks (institutional SPK). Quick-Hit SPK biasanya ditujukan untuk para manajer yang baru belajar menggunakan SPK (sebagai pengembangan setelah jenis pelaporan yang disediakan oleh MIS = Management Information Sistem, satu level sistem di bawah SPK). Biasanya masalah yang dihadapi cukup sederhana (simple) dan dibutuhkan dengan segera penyelesaiannya. Misalnya untuk kebutuhan pelaporan (report) atau pencarian informasi (query). Sistem yang sama biasa pula dipergunakan untuk melakukan analisa sederhana. Contohnya adalah melihat dampak yang terjadi pada sebuah formulasi, apabila variabel-variabel atau parameter-parameternya diubah. Di dalam perusahaan, SPK jenis ini biasanya diimplementasikan dalam sebuah fungsi organisasi yang dapat berdiri sendiri (berdasarkan data yang dimiliki fungsi organisasi tersebut). Misalnya adalah SPK untuk menyusun anggaran tahunan, SPK untuk melakukan kenaikan gaji karyawan, SPK untuk menentukan besarnya jam lembur karyawan, dan lain sebagainya. II.1.6. Pengambilan Keputusan Keputusan-keputusan dibuat untuk memecahkan masalah. Dalam usaha memecahkan suatu masalah mungkin membuat banyak keputusan. Keputusan merupakan rangkaian tindakan yang perlu diikuti dalam memecahkan masalah untuk menghindari atau mengurangi dampak negatif, atau untuk memanfaatkan kesempatan.

8 17 II.1.7. Cara Penggunaan Informasi Dari SPK Dikemukakan oleh Simon, pada dasarnya dua pengguna informasi dari SPK oleh manajer, yaitu untuk mendefinisikan masalah dan memecahkan masalah tersebut. Pendefinisian masalah adalah usaha definisi dari pendekatan sistem. Ia juga berkaitan dengan fase intelegensi. Selanjutnya manajer menggunakan informasi untuk memecahkan masalah yang telah diidentifikasi. Hal ini merupakan usaha pemecahan menurut pendekatan sistim dan berkaitan denga fase disain dan pemilihan. Pada umumnya, lapaoran berkala dan khusus digunakan terutama dalam usaha definisi, dan simulasi dalam usaha pemecahan laporan berkala dapat di rancang untuk menidentifikasi masalah atau masalah yang kemungkinan besar akan muncul. Simulasi dapat juga membuka masalah yang tersembunyi, karna kelemahan cenderung akan kelihatan menonjol ketika operasi perusahaan diubah secara matematis. Laporan berkala dan khusus dapat juga membantu manajer untuk memecahkan masalah dengan cara mengidentifikasi keputusan alternative, mengevaluasi dan memilih alternative tersebut, dan memberikan informasi lanjutan. II.2. Tender Proyek II.2.1. Tender Berdasarkan penjelasan pada buku Keputusan Presiden Nomor 54 Tahun 2010 menyatakan bahwa tender adalah tawaran mengajukan harga untuk memborong suatu pekerjaan, untuk mengadakan barang-barang atau menyediakan jasa. Pengertian tender tersebut mencakup tawaran mengajukan harga untuk :

9 18 1. Memborong atau melaksanakan suatu pekerjaan. 2. Mangadakan barang dan jasa. 3. Membeli suatu barang dan jasa. 4. Menjual suatu barang dan jasa. Sumber : Peraturan Presiden Republik Indonesia Nomor 54 Tahun 2010 Tentang Pengadaan Barang/Jasa Pemerintah (Mini Jaya Abadi CV, 2010 : 121) II.2.2. Proyek Proyek merupakan suatu rangkaian kegiatan yang berlangsung dalam jangka waktu terbatas, dengan alokasi sumber daya tertentu yang dimaksudkan untuk menghasilkan produk yang kriteria mutunya telah digariskan dengan jelas. Proyek dapat diartikan pula sebagai sederetan aktifitas yang diarahkan pada suatu hasil dimana jangka waktu penyelesaiannya ditentukan. Ada terdapat beberapa alasan tertentu yang menyebabkan bahwa tidak seluruh proyek pengadaan barang dan jasa di instansi pemerintah dapat dilakukan melalui proses tender terbuka, antara lain : setiap pekerjaan yang dianggap perlu dirahasiakan karena menyangkut pertahanan dan keamanan negara. Terhadap proyek pekerjaan seperti ini dapat dilakukan mekanisme Penunjukan Langsung (Keputusan Presiden Nomor 54 Tahun 2010). Adapun ciri pokok proyek adalah: 1. Bertujuan menghasilkan lingkup (scope) tertentu berupa produk akhir atau hasil akhir.

10 19 2. Dalam proses mewujudkan lingkup di atas, ditentukan jumlah biaya, jadwal, serta kriteria mutu. 3. Bersifat sementara, dalam arti umumnya dibatasi oleh selesainya tugas. Titik awal dan akhir ditentukan dengan jelas. 4. Nonrutin, tidak berulang-ulang. Macam dan intensitas kegiatan berubah sepanjang proyek berlangsung. Tahap yang dilakukan dalam proyek yaitu: 1. Perencanaan (Planning) Dalam tahapan ini garis-garis besar rencana proyek mencakup recruitment konsultan perencanaan untuk menterjemahkan kebutuhan pemilik. Perbuatan tim of reference (TOR), survey, study kelayakan (Feasibility Studies), pemilihan design, program yang digunakan, budget yang ada serta alat-alat yang dibutuhkan. 2. Pengadaan/Pelalangan (Tender) Tahapan ini dilaksanakan apabila telah diadakannya perencanaan yang matang oleh konsultan perencanaan terhadap proyek-proyek yang akan dikerjakan. 3. Pelaksanaan (Construction) Pada tahap ini merupakan tahap pelaksanaan pertimbangan kontruksi fisik yang telah dirancang. Pada tahap ini setelah kontrak ditanda tangani, surat perintah kerja di keluarkan maka pekerjaan pelaksanaan dilakukan.

11 20 4. Pengawasan dan Pengendalian (Controlling) 5. Pengendalian pelaksanaan proyek untuk memastikan proyek yang telah ditetapkan sudah sesuai dengan yang direncanakan. 6. Evaluasi (Evaluation) Satu tahapan yang menayangkan tindakan proyek berjalan pada yang benar. Evaluasi terhadap pelaksanaan proyek. Sumber : Peraturan Presiden Republik Indonesia Nomor 54 Tahun 2010 Tentang Pengadaan Barang/Jasa Pemerintah II.3. Metode Perancangan II.3.1. Metode Fuzzy Metode Fuzzy SAW (Simple Additive Weighting) yang selanjutnya disebut Fuzzy merupakan satu metode yang tepat untuk memetakan suatu ruang input ke dalam suatu ruang output. Adapun alasan dalam penggunaan metode Fuzzy ini adalah karena konsep fuzzy mudah dimengerti dan juga konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti serta sangat fleksibel. Sistem pendukung pengambilan keputusan seleksi tender proyek konstruksi dengan metode fuzzy ini dibuat untuk meningkatkan proses serta kualitas hasil pengambilan keputusan dengan memadukan data dan pengetahuan untuk meningkatkan efektivitas dalam proses pengambilan keputusan. Fuzzy tidak terbatas pada sedikit masukan umpan-balik dan satu atau dua output control, tidak juga penting untuk menilai atau menghitung parameter rata-rata

12 21 perubahan dengan tujuan agar ia diimplementasikan. Sensor data yang menyediakan beberapa indikasi untuk aksi dan reaksi sistem sudah cukup. Hal ini memungkinkan sensor menjadi murah dan tidak tepat sehingga menghemat biaya system keseluruhan dan kompleksitas rendah. Metode fuzzy sering digunakan dalam berbagai pengambilan keputusan. Misalnya dalam pengambilan keputusan pemilihan pemenang tender proyek konstruksi. Metode ini meliputi proses penilaian yang dimulai dari nilai yang ditawarkan untuk mengetahui jumlah masing-masing indikator kemudian penjabaran tujuan strategis ke dalam indikator kelayakan. Dari kelayakan indikator yang bersifat kualitatif dan kuantitatif kemudian dapat memberikan persentase sebagai hasil kelayakan dalam hal pemilihan pemenang tender proyek konstruksi. Metode Simple Additive Weighting (SAW) sering juga dikenal istilah metode penjumlahan terbobot. Konsep dasar metode SAW adalah mencari penjumlahan terbobot dari rating kinerja pada setiap alternatif pada semua atribut (Fishburn, 1967) (MacCrimmon, 1968). Metode SAW membutuhkan proses normalisasi matriks keputusan (X) ke suatu skala yang dapat diperbandingkan dengan semua rating alternatif yang ada. Metode ini merupakan metode yang paling terkenal dan paling banyak digunakan dalam menghadapi situasi Multiple Attribute Decision Making (MADM). MADM itu sendiri merupakan suatu metode yang digunakan untuk mencari alternatifoptimal dari sejumlah alternatif dengan kriteria tertentu.

13 22 Metode SAW ini mengharuskan pembuat keputusan menentukan bobot bagi setiap atribut. Skor total untuk alternatif 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. II.3.2. Langkah Penyelesaian Simple Additive Weighting (SAW) Langkah Penyelesaian SAW sebagai berikut : 1. Menentukan kriteria-kriteria yang akan dijadikan acuan dalam pengambilan keputusan, yaitu Ci. 2. Menentukan rating kecocokan setiap alternatif pada setiap kriteria. 3. Membuat matriks keputusan berdasarkan kriteria (Ci), kemudian melakukan normalisasi matriks berdasarkan persamaan yang disesuaikan dengan jenis atribut (atribut keuntungan ataupun atribut biaya ) sehingga diperoleh matriks ternormalisasi R. 4. Hasil akhir diperoleh dari proses perankingan yaitu penjumlahan dari perkalian matriks ternormalisasi R dengan vektor bobot sehingga diperoleh nilai terbesar yang dipilih sebagai alternatif terbaik (Ai) sebagai solusi. Formula untuk melakukan normalisasi tersebut adalah dimana : r ij = rating kinerja ternormalisasi Max ij = nilai maksimum dari setiap baris dan kolom Min ij = nilai minimum dari setiap baris dan kolom

14 23 X ij = baris dan kolom dari matriks Dengan r ij adalah rating kinerja ternormalisasi dari alternatif A i pada atribut C j ; i =1,2, m dan j = 1,2,,n. Nilai preferensi untuk setiap alternatif (V i ) diberikan sebagai dimana : V i = Nilai akhir dari alternatif w j = Bobot yang telah ditentukan r ij = Normalisasi matriks Nilai V i yang lebih besar mengindikasikan bahwa alternatifa i lebih terpilih II.3.3. Contoh kasus1 Bagian kemahasiswaan telah membuat pengumuman tentang dibukanya kesempatan memperoleh BEASISWA. Beasiswa ini diperuntukkan untuk tiga Mahasiswa. Jumlah pendaftar sampai pada tanggal terakhir terkumpul 50 mahasiswa. 1. Langkah-Langkah Masalah : Seleksi calon penerima beasiswa 2. Kriteria : Usia, jumlah penghasilan orangtua, semester, jumlah. 3. Tanggungan orangtua, dan jumlah saudara kandung. Penentuan kriteria yang dapat digolongkan ke dalam criteria benefit: a. Jumlah tanggungan orangtua, b. Jumlah saudara kandung, dan c. IPK

15 24 Penentuan kriteria yang dapat digolongkan ke dalam criteria cost: a. Usia b. Jumlah penghasilan orangtua c. Semester Tabel II.1. Penentuan Kriteria No KRITERIA KETERANGAN 1 C 1 Usia 2 C 2 Jumlah Penghasilan Orangtua 3 C 3 Semester 4 C 4 Jumlah Tanggungan Orangtua 5 C 5 Jumlah saudara kandung 6 C 6 IPK Sumber : Seminar Nasional Teknologi Informasi & Komunikasi Terapan, 2012 II Kriteria dan Pembobotan Teknik pembobotan pada kriteria dapat dilakukan dengan beragai macam cara dan metode yang absah. Pase ini dikenal dengan istilah pra-proses. Namun bisa juga dengan cara secara sederhana dengan memberikan nilai pada masing-masing secara langsung berdasarkan persentasi nilai bobotnya. Sedangkan untuk yang lebih lebih baik bisa digunakan fuzzy logic. Penggunaan Fuzzy logic, sangat dianjurkan bila kritieria yang dipilih mempunyai sifat yang relative, misal Umur, Panas, Tinggi, Baik atau sifat lainnya.

16 25 Contoh Pembobotan Kriteria Tabel II.2. Pembobotan (W) No KRITERIA Nilai bobot 1 C C C C C C Total 1 Sumber : Seminar Nasional Teknologi Informasi & Komunikasi Terapan, 2012 Keterangan A C : Calon yang diseleksi : Kriteria Diubah ke dalam matrik keputusan sebagai berikut: - Penghitungan Normalisasi Untuk normalisai nilai, jika faktor kriteria cost digunakanan rumusan R ii = ( min{x ij } / X ij ) Maka nilai-nilai normalisasi cost menjadi: R 11 = min{1;0.75;0.5} / 1 = 0.5 / 1 = 0.5

17 26 R 21 = min{1;0.75;0.5} / 0.75 = 0.5 / 0.75 = 0.67 R 31 = min{1;0.75;0.5} / 1 = 0.5 / 0.5 = 1 R 12 = min{0.5;0.5;0.5} / 0.5 = 0.5 / 0.5 = 1 R 22 = min{0.5;0.5;0.5} / 0.5 = 0.5 / 0.5 = 1 R 32 = min{0.5;0.5;0.5} / 0.5 = 0.5 / 0.5 = 1 R 13 = min{0.8;0.6;0.6} / 0.8 = 0.6 / 0.8 = 0.75 R 23 = min{0.8;0.6;0.6} / 0.6 = 0.6 / 0.6 = 1 R 33 = min{0.8;0.6;0.6} / 0.6 = 0.6 / 0.6 = 1 Untuk normalisai nilai, jika faktor kriteria benefit digunakanan rumusan R ii = ( X ij / max{x ij }). Maka nilai-nilai normalisasi benefit menjadi: R 14 = 1.00 / max{1; 0.5;0.25} = 1 / 1 = 1 R 24 = 0.50 / max{1; 0.5;0.25} = 0.5 / 1 = 0.5 R 34 = 0.25 / max{1; 0.5;0.25} = 0.25 / 1 = 0.25 R 15 = 1.00 / max{1; 0.5;0.25} = 1 / 1 = 1 R 25 = 0.50 / max{1; 0.5;0.25} = 0.5 / 1 = 0.5 R 35 = 0.25 / max{1; 0.5;0.25} = 0.25 / 1 = 0.25 R 16 = 0.50 / max{0.5; 0.75;0.25} = 0.5 / 0.75 = 0.67 R 26 = 0.75 / max{0.5; 0.75;0.25} = 0.75 / 0.75 = 1

18 27 R 36 = 0.25 / max{0.5; 0.75;0.25} = 0.25 / 0.75 = 0.33 II Perangkingan Keterangan: V i w j r ij = rangking untuk setiap alternatif = nilai bobot dari setiap kriteria = nilai rating kinerja ternormalisasi V 1 = 0,8505 V 2 = 0,8005 V 3 = 0,6745 I Kesimpulan Berdasarkan nilai perankingan maka dapat direkomendasikan prioritas calon penerima beasiswa adalah V 1, V 2, dan V 3 II.4. UML (Unified Modeling Language) UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object- Oriented). UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman,

19 28 seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database. II.4.1. Bagian-Bagian UML Bagian-bagian utama dari UML adalah view, diagram, model element, dan general mechanism. 1. View View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram. Beberapa jenis view dalam UML antara lain : use case view, logical view, component view, concurrency view, dan deployment view. 2. Use case View Mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkan external actors. Actor yang berinteraksi dengan sistem dapat berupa user atau sistem lainnya. View ini digambarkan dalam use case diagrams dan kadang-kadang dengan activity diagrams. View ini digunakan terutama untuk pelanggan, perancang (designer), pengembang (developer), dan penguji sistem (tester). 3. Logical View Mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object, dan relationship ) dan kolaborasi dinamis yang terjadi

20 29 ketika object mengirim pesan ke object lain dalam suatu fungsi tertentu. View ini digambarkan dalam class diagrams untuk struktur statis dan dalam state, sequence, collaboration, dan activity diagram untuk model dinamisnya. View ini digunakan untuk perancang (designer) dan pengembang (developer). 4. Component View Mendeskripsikan implementasi dan ketergantungan modul. Komponen yang merupakan tipe lainnya dari code module diperlihatkan dengan struktur dan ketergantungannya juga alokasi sumber daya komponen dan informasi administrative lainnya. View ini digambarkan dalam component view dan digunakan untuk pengembang (developer). 5. Concurrency View Membagi sistem ke dalam proses dan prosesor. View ini digambarkan dalam diagram dinamis (state, sequence, collaboration, dan activity diagrams) dan diagram implementasi (component dan deployment diagrams) serta digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester). 6. Deployment View View ini digambarkan dalam deployment diagrams dan digunakan untuk pengembang (developer), pengintegrasi (integrator), dan penguji (tester).

21 30 II.4.2. Diagram UML Menurut Hariyanto (2004) diagram dalam UML dibagi menjadi : 1. Use Case Diagram Use case adalah abstraksi dari interaksi antara system dan actor. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah system dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah system dipakai. Use case merupakan konstruksi untuk mendeskripsikan bagaimana system akan terlihat di mata user. Sedangkan use case diagram memfasilitasi komunikasi diantara analis dan pengguna serta antara analis dan client. Gambar.II.1. Use Case Diagram Sumber : Seminar Nasional Teknologi Informasi & Komunikasi Terapan, 2012 Diagram Use Case berguna dalam tiga hal : a. Menjelaskan fasilitas yang ada (requirements) b. Use Case baru selalu menghasilkan fasilitas baru ketika sistem di analisa, dan design menjadi lebih jelas.

22 31 c. Komunikasi dengan klien. Penggunaan notasi dan simbol dalam diagram Use Case membuat pengembang lebih mudah berkomunikasi dengan klien-kliennya. d. Membuat test dari kasus-kasus secara umum. Kumpulan dari kejadiankejadian untuk Use Case bisa dilakukan test kasus layak untuk kejadiankejadian tersebut. II.4.3. Activity Diagram Pada dasarnya diagram Activity sering digunakan oleh flowchart. Diagram ini berhubungan dengan diagram Statechart. Diagram Statechart berfokus padaobyek yang dalam suatu proses (atau proses menjadi suatu obyek), diagram Activity berfokus pada aktifitas-aktifitas yang terjadi yang terkait dalam suatu proses tunggal. Jadi dengan kata lain, diagram ini menunjukkan bagaimana aktifitas-aktifitas tersebut bergantung satu sama lain. Sebagai contoh, perhatikan proses yang terjadi. Pengambilan uang dari bank melalui ATM. Ada tiga aktifitas kelas (orang, dan lainnya) yang terkait yaitu : Customer, ATM, and Bank. Proses berawal dari lingkaran start hitam pada bagian atas dan berakhir di pusat lingkaran stop hitam/putih pada bagian bawah. Aktivitas digambarkan dalam bentuk kotak persegi. Lihat gambar di bawah ini, agar lebih jelas:

23 32 Contoh Diagram Activity : Gambar II.2. Diagram Activity Pengambilan Uang melalui ATM Diagram Activity dapat dibagi menjadi beberapa jalur kelompok yang menunjukkan obyek mana yang bertanggung jawab untuk suatu aktifitas. Peralihan tunggal (single transition) timbul dari setiap adanya activity (aktifitas), yang saling menghubungi pada aktifitas berikutnya. Sebuah transition (transisi) dapat membuat cabang ke dua atau lebih percabangan exclusive transition (transisi eksklusif). Label Guard Expression (ada didalam [ ]) yang menerangkan output (keluaran) dari percabangan. Percabangan akan menghasilkan bentuk menyerupai bentuk intan. Transition bisa bercabang menjadi beberapa aktifitas paralel yang

24 33 disebut Fork. Fork beserta join (gabungan dari hasil output fork) dalam diagram berbentuk solid bar (batang penuh). II.4.4. Sequence Diagram Diagram Class dan diagram Object merupakan suatu gambaran model statis. Namun ada juga yang bersifat dinamis, seperti Diagram Interaction. Diagram sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan; message (pesan) apa yang dikirim dan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu. Obyek-obyek yang berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang terurut. Di bawah ini adalah diagram Sequence untuk pembuatan Hotel Reservation. Obyek yang mengawali urutan message adalah Reservation Window. Contoh Diagram Sequence : Gambar II.3. Diagram Sequence Pemesanan kamar di Hotel

25 34 Reservation window mengirim pesan makereservation() ke HotelChain. Kemudian HotelChain mengirim pesan yang sama ke Hotel. Bila Hotel punya kamar kosong, maka dibuat Reservation dan Confirmation. Lifeline adalah garis dot (putus-putus) vertikal pada gambar, menerangkan waktu terjadinya suatu obyek. Setiap panah yang ada adalah pemanggilan suatu pesan. Panah berasal dari pengirim ke bagian paling atas dari batang kegiatan (activation bar) dari suatu pesan pada lifeline penerima. Activation bar menerangkan lamanya suatu pesan diproses. Pada gambar diagram, terlihat bahwa Hotel telah melakukan pemanggilan diri sendiri untuk pemeriksaan jika ada kamar kosong. Bila benar, maka Hotel membuat Reservation dan Confirmation. Pemanggilan diri sendiri disebut dengan iterasi. Expression yeng dikurung dengan [ ], adalah condition (keadaan kondisi). Pada diagram dapat dibuat note (catatan). Pada gambar, terlihat seperti selembar kertas yang berisikan teks. Note bisa diletakan dimana saja pada diagram UML. II.4.5. Communication Diagram (Collaboration diagram in versi 1.x) Collaboration diagram menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-masing objek. Setiap messagememiliki sequence number, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama. Diagram Collaboration juga merupakan diagram interaction. Diagram

26 35 membawa informasi yang sama dengan diagram Sequence, tetapi lebih memusatkan atau memfokuskan pada kegiatan obyek dari waktu pesan itu dikirimkan. Contoh Diagram Collaboration : Gambar II.4. Diagram Collaboration Pemesanan kamar di Hotel Kotak kegiatan obyek diberi label dengan nama kelas atau obyek (atau keduanya). Nama kelas dibatasi dengan colons/titik dua ( : ). Setiap pesan pada diagram Collaboration mempunyai angka yang terurut. Pesan yang tingkatannya tertinggi adalah angka 1. Pesan yang berada pada tingkat yang sama memiliki prefix yang sama, namun suffix berbeda bergantung pada posisinya; hanya untuk angka 1, 2, dan seterusnya. II.4.6. Class Diagram Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class

27 36 diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda Atribut dan metoda dapat memiliki salah satu sifat berikut : a. Private, tidak dapat dipanggil dari luar class yang bersangkutan b. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya c. Public, dapat dipanggil oleh siapa saja d. Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run-time. Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package. Kita juga dapat membuat diagram yang terdiri atas package.

28 37 Gambar II.5. Class Diagram II.4.7. Tujuan Penggunaan UML Adapun tujuan dari penggunaan UML adalah sebagai berikut : 1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa. 2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan. 3. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum. 4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).

29 38 II.5 Perancangan Sistem Database Tujuan utama perancangan sistem database yaitu : 1. Memiliki kemampuan menyimpan seluruh data yang berguna dalam database. 2. Pengamanan terhadapa isi dan pengguna data dapat diterapkan. (Jogiyanto, 2004:245) II.5.1 Database Basis data (data base) adalah suatu pengorganisasian sekumpulan data yang saling terkait sehingga memudahkan aktivitas untuk untuk memperoleh informasi. (Abdul Kadir, 2003:254) Basis data (data base) merupakan kumpulan data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras computer dan digunakan perangkat lunak untuk memanipulasinya. (Jogiyanto, 2004:123) Untuk menghubungkan antar satu file dengan file yang lain menggunakan field key atau kolom kunci. Yang dimaksud field kunci adalah suatu field yang berisikan data unik. Hirarki data base terdiri dari : 1. Data Base 2. File 3. Record 4. Field

30 39 File adalah kumpulan record yang menggambarkan suatu kesatuan data sejenis. Record adalah kumpulan field yang menggambarkan suatu unit data. Record juga bisa disebut baris bila bentuk horizontal, Record juga bisa disebut satu entraindata satu formulir entrian data. Field adalah bagian dari record yang menggambarkan suatu item data. II.5.2 Kegunaan Data Base Sebagaimana dikatakan bahwa data base merupakan bagian terpenting dalam sistem informasi karena data base adalah tempat atau wadah yang berisikan data-data. Data-data ini sangat penting bagi pengelolaan dan penggunakan. Untuk itu perancangan dan pengelolaan data base harus dialakukan secara baik dan benar. Hal ini dimaksudkan agar pengelola dan pengguna perpustakaan mudah untuk mengakses. Dengan ada data base yang baik dan benar maka akan dapat dijadikan suatu informasi yang berguna bagi pengelola dan pengguna. Bagi pengguna misalnya dari data base dapat dijadikan laporan. Pengelola tidak perlu mengetik datanya kembali. Sedang bagi pengguna akan lebih untuk mengakses data sesuai dengan yang dibutuhkan. II.5.3 Model Database Pada dasarnya kekuatan dan kelemahan dari model mencerminkan perbedaan filosofi manajemen database. Beberapa kriteria dalam mengevaluasi model data:

31 40 1. Kesederhanaan (Simplicity) Sebuah kesederhanaan sedikit mungkin jumlah tiga struktur, kaidah dan atribut. 2. Pemodelan yang mendekati kenyataan (Modelling Direction) Sebuah model sebaiknya mendekati konsep yang nyata di dunia. 3. Keluwesan Model ini seharusnya mudah untuk memberikan kemampuan permodelan langsung. 4. Kemampuan menghasilkan gambar (picturability) Model seharusnya mudah menemfilkan format gambar. 5. Keistimewaan model (modeling uniqueness) Sebuah model seharusnya bebas dari pertimbangan implementasi khusus. 6. Terminologi tidak bertentangan Sebuah model seharusnya menggambarkan terminologi yang latin. 7. Dekat dengan dasar informasi Gagasan yang digunakan dalam sebuah model seharusnya dekat dengan basis perangkat keras dimana model ini akan di implementasikan. II.5.4 Langkah-Langkah Perancangan Database berikut : Dalam perancangan database perlu diperhatikan langkah-langkah sebagai

32 41 1. Menentukan kebutuhan input dari sistem baru Input yang dirancang dapat ditentukan dari Data Flow Diagram (DFD) sistem yang dibuat. 2. Menentukan parameter dari input 3. Setelah input-input yang akan dirancang telah dapat ditentukan, maka parameter dari input selanjutnya juga ditentukan. Tiga sasaran yang akan digunakan oleh seseorang perancang model fisik dari database : 1. Pengetahuan tentang fungsi-fungsi database manajemen sistem (DBMS) 2. Memberikan tentang karakteristik pengaksesan secara langsung 3. Pengetahuan tentang aplikasi Model fisik adalah suatu rencana kerja dari database yang disimpan secara fisik di tempat yang telah ditetapkan. (Jogiyanto Hartono, 2001:18) II.6. Perancangan Sistem II.6.1. Alat Bantu Perancangan Sistem Adapun alat bantu yang harus digunakan dalam perancangan atau pengembangan sistem yang digunakan dalam penelitian umumnya berupa gambaran atau diagram adalah sebagai berikut :

33 42 1. ERD (Entity Relationship Diagram) ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi. ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan (Jogiyanto Hartono 2005:124) yaitu : a. Entiti Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain. Simbol dari entiti ini biasanya digambarkan dengan persegi panjang. b. Atribut Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips. c. Hubungan / Relasi Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi dapat digambarkan sebagai contoh Relasi yang terjadi diantara dua himpunan entitas (misalnya A dan B) dalam satu basis data yaitu (Abdul Kadir, 2002:48) :

34 43 - Satu ke satu (One to one) Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B. - Satu ke banyak (One to many) Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A. - Banyak ke banyak (Many to many) - Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B. Tabel II.3. : Simbol ERD Simbol Nama Entitas, adalah suatu objek yang dapat diidentifikasi dalam lingkungan pemakai. Relasi, menunjukkan adanya hubungan di antara sejumlah entitas yang berbeda.

35 44 Atribut, berfungsi mendeskripsikan karakter entitas (atribut yg berfungsi sebagai key diberi garis bawah) Garis, sebagai penghubung antara relasi dengan entitas, relasi dan entitas dengan atribut. (Husni Iskandar Pohan, 2010:112) II.6.2. Normalisasi Menurut Jogiyanto, normalisasi adalah suatu file yang terdiri dari beberapa group elemen yang berulang-ulang perlu diorganisasikan kembali. Proses untuk mengorganisasikan file untuk menghilangkan grup elemen yang berulang-ulang ini disebut dengan normalisasi. Ada beberapa bentuk normal yaitu: 1. Bentuk Normal I (Fist Normal Form/1-NF) : Normalisasi bentuk pertama memiliki syarat yaitu mengumpulkan seluruh field basis data sehingga semua field hanya memiliki nilai atomik atau tunggal saja.

36 45 2. Bentuk Normal II (Second Normal Form/2-NF) Normalisasi bentuk kedua memiliki syarat yaitu bentuk data telah memenuhi kriteria bentuk normal kesatu. Atribut bukan kunci haruslah bergantung pada kunci utama. Pembentukan normal kedua dengan mencari kunci-kunci field yang dapat di pakai sebagai pedoman dalam pencarian data. 3. Bentuk Nomal III (Third Normal Form/3-NF) Merupakan penyempurnaan pada normalisasi bentuk kedua. Syarat bentuk normal ketiga yaitu memenuhi kriteria bentuk normal kedua dengan kata lain setiap atribut bukan kunci harus bergantung penuh pada primary key. II.6.3. Kamus Data (Data Dictionary) Menurut Kristanto, Andri, Kamus data (data dictionary) adalah kumpulan elemen-elemen atau simbol-simbol yang digunakan untuk membantu dalam penggambaran atau pengindentifikasian setiap filed atau file dalam system. II.7. Bahasa Pemrograman PHP Menurut (Joel E. Ross, 2001:12) Professional Home Page atau PHP adalah bahasa scripting server side yaitu bahasa yang digunakan pada server tanpa perlu melakukan kompilasi tetapi cukup menuliskan tulisan dalan bentuk ASCII-nya saja (Mufid D Purwanto dan Muhammad Tito, 2002). PHP disebut juga sebagai bahasa

37 46 interpreter. PHP sangat mirip dengan bahasa C, juga mempunyai karakteristik yang mirip dengan Perl. Bahasa pemrograman biasanya diterjemahkan atau dikompilasi terlebih dahulu. Interpreter adalah sebuah program yang digunakan untuk membaca file yang berisi kode program yang akan dijalankan, kemudian interpreter tersebut akan meminta CPU untuk melakukan perintah yang diterimanya. Compiler adalah sebuah program yang membaca file yang berisi source code kemudian mengkompilasi source code tersebut menjadi kode biner yang dapat dieksekusi secara langsung oleh komputer. Kode biner ini tidak dapat dibaca dan dimengerti oleh kebanyakan orang kecuali oleh orang yang tahu bahasa assembler atau mesin. PHP tersedia untuk hampir semua platform termasuk Linux dan Windows. Seperti halnya dengan program open source lainnya, PHP dibuat di bawah lisensi GNU (General Public License) yang dapat di download secara gratis melalui situs PHP dapat digunakan bersama dengan HTML sehingga memudahkan dalam membangun aplikasi web dengan cepat. PHP juga dapat digunakan untuk mengupdate database, menciptakan database dan mengerjakan perhitungan matematika yang kompleks. Selain itu PHP juga dapat digunakan untuk menghapus file-file secara acak di suatu sistem komputer, tergantung pada level keamanan yang menjalankan PHP. PHP dapat membuat koneksi jaringan internet dan melayani koneksi tersebut. Karena kehandalannya, cepat, kuat, stabil dan mudah berinteraksi dengan berbagai aplikasi pendukung lainnya seperti MySQL, PostgressSQL, Interbase,

38 47 ODBC, msql, Oracle, Sybase menjadikan PHP banyak digunakan oleh para web developer untuk membangun aplikasi web. Kode program PHP dapat ditulis menyatu dengan tag-tag HTML dalam file. Kode PHP diawali dengan tag <? Atau <?php dan ditutup dengan tag?>. Tag tersebut disisipkan diantara tag <body> dengan tag </body> dalam tag-tag html. Isi dari tag PHP merupakan script dari PHP yang akan diproses. Script PHP dapat dibuat dengan menggunakan editor VI pada linux atau Advanced Editor dan disimpan dengan ekstensi.php. Web server akan menjalankan PHP untuk menerjemahkan bagian halaman tersebut. Halaman Web yang dilihat oleh user dalah gabungan antara perintah HTML standar dan output dari interpreter PHP. Contoh penulisan kode PHP sebagai berikut: <HTML> <HEAD><TITLE> Coba Menuliskan PHP </TITLE> </HEAD> <BODY> <?php $username = Feri Andi Mulyono ; echo $username;?> </BODY> </HTML>