5
BAB II LANDASAN TEORI
2.1 Pengertian Haji Secara lughawi, haji berarti menyengaja atau menuju dan mengunjungi. Menurut etimologi bahasa Arab, kata haji mempunyai arti qashd, yakni tujuan, maksud, dan menyengaja. Menurut istilah syara', haji ialah menuju ke Baitullah dan tempat-tempat tertentu untuk melaksanakan amalan-amalan ibadah tertentu pula. Yang dimaksud dengan temat-tempat tertentu dalam definisi diatas, selain Ka'bah dan Mas'a(tempat sa'i), juga Arafah, Muzdalifah, dan Mina. Yang dimaksud dengan waktu tertentu ialah bulan-bulan haji yang dimulai dari Syawal sampai sepuluh hari pertama bulan Dzulhijjah. Adapun amal ibadah tertentu ialah thawaf, sa'i, wukuf, mazbit di Muzdalifah, melontar jumrah, mabit di Mina, dan lain-lain
2.2
Rukun Haji
Rukun haji adalah perbuatan-perbuatan yang wajib dilakukan dalam berhaji. Rukun haji tersebut adalah: 1. Ihram 2. Wukuf di Arafah 3. Tawaf ifâdah 4. Sa'i 5. Mencukur rambut di kepala atau memotongnya sebagian 6. Tertib
6
Rukun haji tersebut harus dilakukan secara berurutan dan menyeluruh. Jika salah satu ditinggalkan, maka hajinya tidak sah.
2.3
Wajib Haji 1. Memulai ihram dari miqat (batas waktu dan tempat yang ditentukan untuk melakukan ibadah haji dan umroh) 2. Melontar Jumroh 3. Mabit (menginap) di mudzdalifah, mekah 4. Mabit di mina 5. Tawaf wada’ (tawaf perpisahan)
Jika salah satu dari wajib haji ini ditinggalkan, maka hajinya tetap sah, namun harus membayar dam (denda)
2.4
Pelaksanaan ibadah haji 1. Melakukan Ihram Ihram dapat dimulai sejak awal bulan Syawal dengan melakukan mandi sunah, berwudhu, memakai pakaian ihram, dan berniat haji dengan mengucapkan Labbaik Allâhumma hajjan, yang artinya "aku datang memenuhi
panggilanmu
ya
Allah,
untuk
berhaji".
Kemudian berangkat menuju arafah dengan membaca talbiah untuk menyatakan niat: Labbaik Allâhumma labbaik, labbaik lâ syarîka laka labbaik, inna al-hamda, wa ni'mata laka wa al-mulk, lâ syarîka laka Artinya:
7
Aku datang ya Allah, aku datang memenuhi panggilan-Mu; Aku datang, tiada sekutu bagi-Mu, aku datang; Sesungguhnya segala pujian, segala kenikmatan, dan seluruh kerajaan, adalah milik Engkau; tiada sekutu bagi-Mu. 2. Wukuf di Arafah Dilaksanakan pada tanggal 9 Zulhijah, waktunya dimulai setelah matahari tergelincir sampai terbit fajar pada hari nahar (hari menyembelih kurban) tanggal 10 Zulhijah. Saat wukuf, ada beberapa hal yang harus dilakukan, yaitu: shalat jamak taqdim dan qashar zuhur-ashar, berdoa, berzikir bersama, membaca Al-Qur'an, shalat jamak taqdim dan qashar maghrib-isya. 3. Mabit di Mudzdalifah, Mekah Waktunya sesaat setelah tengah malam sampai sebelum terbit fajar. Disini mengambil batu kerikil sejumlah 49 butir atau 70 butir untuk melempar jumrah di Mina, dan melakukan shalat subuh di awal waktu, dilanjutkan dengan berangkat menuju Mina. Kemudian berhenti sebentar di masy'ar alharâm (monumen suci) atau Muzdalifah untuk berzikir kepada Allah SWT (QS 2: 198), dan mengerjakan shalat subuh ketika fajar telah menyingsing . 4. Melontar Jumroh’Aqobah Dilakukan di bukit 'Aqabah, pada tanggal 10 Zulhijah, dengan 7 butir kerikil, kemudian menyembelih hewan kurban. 5. Tahalul Tahalul adalah berlepas diri dari ihram haji setelah selesai mengerjakan amalan-amalan haji. Tahalul awal, dilaksanakan setelah selesai melontar jumrah 'aqobah, dengan cara mencukur/memotong rambut sekurangkurangnya 3 helai. Setelah tahalul, boleh memakai pakaian biasa dan
8
melakukan semua perbuatan yang dilarang selama
ihram, kecuali
berhubungan seks. Bagi yang ingin melaksanakan tawaf ifâdah pada hari itu dapat langsung pergi ke Mekah untuk tawaf. Dengan membaca talbiah masuk ke Masjidil Haram melalui Bâbussalâm (pintu salam) dan melakukan tawaf. Selesai tawaf disunahkan mencium Hajar Aswad (batu hitam), lalu shalat sunah 2 rakaat di dekat makam Ibrahim, berdoa di Multazam, dan shalat sunah 2 rakaat di Hijr Ismail (semuanya ada di kompleks Masjidil Haram). Kemudian melakukan sa'i antara bukit Shafa dan Marwa, dimulai dari Bukit Shafa dan berakhir di Bukit Marwa. Lalu dilanjutkan dengan tahalul kedua, yaitu
mencukur/memotong
rambut
sekurang-kurangnya
3
helai.
Dengan demikian, seluruh perbuatan yang dilarang selama ihram telah dihapuskan,
sehingga
semuanya
kembali
halal
untuk
dilakukan.
Selanjutnya kembali ke Mina sebelum matahari terbenam untuk mabît di sana. 6. Mabit di Mina Dilaksanakan pada hari tasyrik (hari yang diharamkan untuk berpuasa), yaitu pada tanggal 11, 12, dan 13 Zulhijah. Setiap siang pada hari-hari tasyrik itu melontar jumrah ûlâ, wustâ, dan 'aqabah, masing-masing 7 kali. Bagi yang menghendaki nafar awwal (meninggalkan Mina tanggal 12 Zulhijah setelah jumrah sore hari), melontar jumrah dilakukan pada tanggal 11 dan 12 Zulhijah saja. Tetapi bagi yang menghendaki nafar sânî atau nafar akhir (meninggalkan Mina pada tanggal 13 Zulhijah setelah jumrah sore hari), melontar jumrah dilakukan selama tiga hari (11, 12, dan 13 Zulhijah).
9
Dengan selesainya melontar jumrah maka selesailah seluruh rangkaian kegiatan ibadah haji dan kembali ke Mekah. 7. Tawaf Ifadah Bagi yang belum melaksanakan tawaf ifâdah ketika berada di Mekah, maka harus melakukan tawaf ifâdah dan sa'i. Lalu melakukan tawaf wada' sebelum meninggalkan Mekah untuk kembali pulang ke daerah asal.
2.5
Metodologi Rekayasa Perangkat Lunak Pemodelan dalam perangkat lunak merupakan suatu yang harus dikerjakan di
bagian awal dari rekayasa, dan pemodelan ini akan mempengaruhi pekerjaanpekerjaan dalam rekayasa perangkat lunak tersebut. Model proses perangkat lunak masih menjadi objek penelitian, namun pada saat ini terdapat banyak model umum atau paradigma yang berbeda dari pengembangan perangkat lunak. Salah satu model yang digunakan dalam pengembangan rekayasa lunak adalah model Waterfall. Pendekatan model Waterfall berisi rangkaian aktivitas proses yang disajikan dalam proses yang terpisah, seperti spesifikasi kebutuhan, implementasi desain perangkat lunak, uji coba dan sebaganya. Setelah setiap langkah didefinisikan, pengembangan dilanjutkan pada langkah berikutnya (Arief Hamdani, 1999:1). Berikut di bawah ini rangkaian aktivitas proses dalam model Waterfall : 1. Penentuan dan analisis kebutuhan Dalam pelayanan sistem, pembatasan masalah dan hasil tidak bisa dihindari dari konsultasi dengan pengguna sistem. Mereka mendefinisikan cara apa yang dapat dimengerti oleh kedua belah pihak yaitu pengguna dan staf pengembang untuk menghasilkan perangkat lunak yang diinginkan.
10
2. Sistem dan desain perangkat lunak Proses desain sistem membagi kebutuhan-kebutuhan menjadi sistem perangkat lunak atau perangkat keras. Proses tersebut menghasilkan sebuah arsitektur sistem keseluruhan. Desain perangkat lunak termasuk menghasilkan fungsi sistem perangkat lunak dalam bentuk yang mungkin diubah ke dalam satu atau lebih program yang dapat dijalankan. 3. Implementasi dan uji coba unit Selama tahap ini desain perangkat lunak disadari sebagai sebuah program lengkap atau unit program. Uji unit termasuk pengujian bahwa setiap unit sesuai spesifikasi. 4. Integrasi dan uji sistem Unit
individual
program
atau
program-program
yang
digabungkan
(diintegrasikan) dan pengujian dengan sistem komplit untuk memastikan bahwa perangkat lunak telah dilakukan, kemudian sistem perangkat lunak dikirim ke pengguna. 5. Operasi dan pemeliharaan Biasanya operasi ini adalah fase putaran pengujian yang cukup lama. Sistem dipasang dan digunakan. Pemeliharaan meliputi pengoreksian kesalahan yang yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru ditemukan. Masalah yang ada dalam penggunaann model Waterfall ini adalah partisi yang tidak dapat diubah dari proyek ke tingkat yang berbeda. Pengiriman sistem terkadang tidak dapat dipaksakan. Meskipun begitu, model Waterfall ini menggambarkan teknis
11
yang praktis. Untuk lebih jelas, berikut di bawah ini Gambar 2.2 model Waterfall.
Requirements definition System and software design Implementation and unit testing Integration and system testing Operation and maintenance
Gambar 2.1 Model Waterfall (Hamdani, 1999:1) Gambar 2.1 Model Waterfall (Hamdani, 1999:1)
2.6
Diagram Keterhubungan Entitas Model diagram keterhubungan antitas atau entity-relationship yang berisi
komponen-komponen himpunan entitas dan himpunan relasi yang masing-masing dilengkapi dengan atribut-atribut yang merepresentasikan seluruh fakta dari dunia nyata (Pressman, 2002:365). Notasi-notasi ERD dapat dilihat pada Gambar 2.3. Pada Gambar 2.3, ERD memiliki komponen seperti: a. Objek data Objek data adalah berupa entitas yang menghasilkan atau mengkonsumsi informasi. Contoh: orang, mobil, bagian akuntansi, dan sebagainya
b. Atribut Atribut merupakan properti dari suatu objek data. Contoh atribut dari objek data mobil: id, tipe body, warna, tahun produksi.
12
c. Hubungan Relasi adalah hubungan di antara sejumlah objek data yang berasal dari objek data yang berbeda. Contoh: nama_mhs=”Gigih Ginanjar” dengan nim=”01502-043” mempunyai relasi dengan sebuah objek data matakuliah dengan kode_kul=”IF1220”.
d. Objek data Objek data adalah berupa entitas yang menghasilkan atau mengkonsumsi informasi. Contoh: orang, mobil, bagian akuntansi, dan sebagainya
e. Atribut Atribut merupakan properti dari suatu objek data. Contoh atribut dari objek data mobil: id, tipe body, warna, tahun produksi. f. Hubungan Relasi adalah hubungan di antara sejumlah objek data yang berasal dari objek data yang berbeda. Contoh: nama_mhs=”Gigih Ginanjar” dengan nim=”01502-043” mempunyai relasi dengan sebuah objek data matakuliah dengan kode_kul=”IF1220”.
13
Gambar 2.2. Notasi ERD Pada ERD terdapat karnialitas yang terjadi diantara dua atau lebih pada objek. Kardinalitas merupakan spesifikasi dari sejumlah peristiwa dari suatu objek yang dapat dihubungkan ke sejumlah peristiwa dari objek lain. (Pressman, 2002:359). hubungan relasi tersebut dapat berupa: 1. Satu ke satu (1:1). Suatu peristiwa dari objek A dapat berhubungan dengan satu dan hanya satu kejadian dari objek B. Dan sebuah peristiwa dari B hanya dapat berhubungan dengan satu kejadian A. Contoh: satu orang pasien ditempatkan pada satu tempat tidur. Lihat Gambar 2.3.
14
Gambar 2.3. Contoh hubungan relasi satu ke satu 2. Satu ke banyak (1:N). Suatu kejadian A dapat berhubungan dengan satu atau lebih kejadian dari objek B, tetapi sebuah kejadian B dapat berhubungan dengan hanya satu kejadian dari A. Misal, seorang ibu dapat memiliki banyak anak, tetapi seorang anak hanya dapat memiliki satu ibu. Lihat Gambar 2.4.
Gambar 2.4. Contoh hubungan relasi satu ke banyak 3. Banyak ke banyak (M:N). Sebuah kejadian objek A dapat berhubungan satu atau lebih kejadian dari B, sementara kejadian dari B dapat berhubungan dengan satu atau lebih kejadian dari A. Misalnya, seorang paman memiliki banyak keponakan, sementara itu seorang keponakan dapat memiliki banyak paman. Lihat pada Gambar 2.5.
Gambar 2.5. Contoh hubungan relasi banyak ke banyak
15
2.7
Basis Data Basis data dapat dianggap sebagai tempat untuk sekumpulan berkas data
terkomputerisasi. Sistem basis data pada dasarnya adalah sistem terkomputerisasi yang tujuan utamanya adalah memelihara informasi dan membuat informasi tersebut tersedia saat dibutuhkan (Date, 1995:3). Tujuan dalam basis data adalah mempermudah penciptaan sruktur data dan membebaskan program dari masalah penyusunan file yang tidak terstruktur, sehingga mempermudah dalam mendesain dan menyiapkan suatu basis data yang dapat digunakan oleh sejumlah program aplikasi yang berlainan. Dalam membangun situs yang dinamis diperlukan suatu manajemen basis data agar situs dapat dikelola dengan baik, dalam hal ini diperlukan suatu basis data sebagai media penyimpanan informasi-informasi yang dapat diakses saat diperlukan.
2.7.1 Proses Perancangan Basis Data Proses perancangan basis data, terlepas dari dari masalah yang ditangani dibagi menjadi tiga tahapan, yaitu: (Abdul Kadir, 2003:39) 1. Perancangan basis data secara konseptual. 2. Perancangan basis data secara logis. 3. Perancangan basis data secara fisis. Perancangan basis data secara konseptual merupakan upaya untuk membuat model yang masih bersifat konsep. Perancangan basis data secara logis merupakan tahapan untuk memetakan model konseptual ke model basis data yang akan dipakai, seperti model relasional, hirarki, atau jaringan. Namun sebagaimana halnya perancangan basis data secara
16
konsptual, perancangan ini tidak tergantung pada DBMS (DataBase Management System) yang akan dipakai. Itulah sebabnya perancangan basis data secara logis terkadang disebut pemetaan model data. Perancangan basis data secara fisis merupakan tahapan untuk menuangkan perancangan basis data yang bersifat logis menjadi basis data fisis yang tersimpan pada media penyimpanan eksternal. Perancangan basis data secara konseptual terdiri atas tiga langkah berikut: 1. Penentuan entitas pada basis data Menentukan entitas serta atribut dari entitas apa saja yang diperlukan 2. Pendefinisian hubungan antar entitas Pendefinisian hubungan antar entitas dilakukan dengan menggunakan pemodelan diagram keterhubungan entitas (ERD) 3. Penerjemahan hubungan ke dalam entitas. Setelah hubungan antar entitas didefinisikan, hubungan akan diterjemahkan ke dalam tabel. Hal ini dilakukan dengan cara: penentuan kunci entitas, penerjemahan hubungan ke dalam kunci tamu dan penormalisasian basis data. Langkah-langkah di atas melibatkan komponen-komponen sebagaimana diperlihatkan pada Gambar 2.6.
17
Gambar 2.6. Komponen-komponen perancangan basis data konseptual Penjelasan mengenai beberapa komponen pada Gambar 2.6 adalah sebagai berikut: 1. Entitas Entitas terkadang disebut tipe entitas atau kelas entitas. Entitas menyatakan objek atau
kejadian.
PELANGGAN,
PEGAWAI,
DEPARTEMEN,
BUKU,
MATAKULIAH merupakan contoh dari entitas. Pada model relasional entitas akan menjadi tabel. 2. Atribut Atribut adalah item data yang menjadi bagian dari suatu entitas. Istilah lain atribut adalah properti. Nama Pegawai ataupun NIP adalah contoh atribut yang terdapat pada entitas PEGAWAI. Jumlah SKS, Kode Matakuliah merupakan contoh atribut pada entitas MATAKULIAH. 3. Hubungan
18
Hubugan adalah asosiasi atau kaitan antara dua entitas. Misalnya, antara DOSEN_WALI dan MAHASISWA terdapat hubungan berupa bimbingan. Pada model relasional, hubungan akan menjadi kunci tamu (kinci tamu dibahas pada sub bab berikutnya). 4. Kekangan Kekangan digunakan untuk melindungi integritas data (Misalnya, melindungi kesalahan sewaktu pengisian data). 5. Domain Domain adalah himpunan nilai yang berlaku bagi suatu atribut. Kekangan domain mendefinisikan nama, tipe, format, panjang, dan nilai masing-masing item data. Sebagai contoh: Agama dinyatakan dengan nama AGAMA, panjang 1 karakter, dengan kemungkinan nilai berupa I, K, P, H, dan B (masing-masing untuk menyatakan Islam, Katholik, Protestan, Hindu, dan Budha). 6. Integritas referensial Integritas referensial adalah aturan-aturan yang mengatur hubungan antara kunci primer dengan kunci tamu milik table-tabel yang berada dalam suatu basis data relasional untuk menjaga konsistensi data. Jenis integritas referensial ada tiga, yaitu: penambahan (insert), penghapusan (delete), dan peremajaan (update).
2.7.2 Kunci (Key) Penentuan kunci merupakan hal yang paling penting dalam basis data relasional. Kunci tidak sekedar sebagai metode untuk mengaskses suatu baris tertentu, tetapi juga sekaligus dapat menjadi pengenal unik terhadap table (Abdul Kadir, 2003: 54).
19
Kunci dapat berupa sebuah atribut atau gabungan dari beberapa atribut. Berikut di bawah ini jenis-jenis kunci: 1. Kunci sederhana Kunci sederhana adalah kunci yang dibentuk oleh sebuah elemen data sebuah atribut. Misalnya NIP merupakan contoh kunci sederhana untuk membedakan antara suatu pegawai dengan pegawai lainnya. 2. Kunci kandidat Kunci kandidat adalah kunci yang secara unik (tidak mungkin kembar) dapat dipakai untuk mengidentifikasi suatu baris di dalam tabel. Contoh: NIP dipakan sebagai kunci kandidat. Dengan menggunakan NIP, seorang pegawai dapat diidentifikasikan (tidak mungkin ada dua pegawai dengan NIP yang sama) 3. Kunci primer Kunci primer adalah kunci kandidat yang dipilih sebagai kunci utama untuk mengidentifikasi baris dalam tabel. 4. Kunci alternatif Kunci alternatif adalah semua kunci kandidat yang tidak bertindak sebagai kunci primer. 5. Kunci tamu Kunci tamu (foreign key) adalah sebarang atribut yang menunjuk ke kunci primer pada tabel lain. Lihat Gambar 2.7 Sebagai contoh.
20
Gambar 2.7. Contoh kunci primer dan kunci tamu Pada gambar di atas terdapat dua tabel. Kode_Pelanggan adalah kinci primer milik tabel PELANGGAN, dan Kode_Kota adalah kunci primer milik tabel KOTA. Bagi tabel PELANGGAN, Kode_Kota merupakan kunci tamu yang menunjuk ke tabel KOTA. Terlihat bahwa atribut yang berkedudukan sebagai kunci tamu bias saja memiliki nilai kembar, tetapi yang bertindak sebagai kunci primer tidak mungkin kembar.
2.8 Unified Modelling Language UML atau (Unified Modeling Language) adalah metode pemodelan secara visual sebagai sarana untuk merancang dan membuat perangkat lunak berorientasi objek. Karena UML ini merupakan bahasa visual untuk pemodelan bahasa berorientasi objek, maka semua elemen dan diagram berbasiskan pada paradigma orientasi objek. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti
21
keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C UML sendiri terdiri atas pengelompokkan diagram-diagram sistem menurut aspek atau sudut pandang tertentu. Diagram adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu model. UML mempunyai 13 diagram, yaitu: Tabel 2.1 Diagram-Diagram Dalam UML No
Diagram
Kegunaan
1.
Activity
Behavior prosedural dan parallel
2.
Class
Class, fitur, dan hubungan-hubungan
3.
Communication
Interaksi antar objek; penekanan pada jalur
4.
Component
Struktur dan koneksi komponen
.
5. 6. 7.
Composite structure Deployment Interaction overview
Dekomposisi runtime sebuah class Pemindahan artifak ke node Campuran sequence dan activity diagram
8.
Object
Contoh konfigurasi dari contoh-contoh
9.
Package
Struktur hirarki compile-time
10. Sequence
Interaksi antar objek; penekanan pada sequence
11. State machihne
Bagaimana even mengubah objek selama aktif
12. Timing
Interaksi antar objek; penekanan pada timing
13. Use case
Bagaimana pengguna berinteraksi dengan sebuah sistem
22
Semakin kompleks bentukan sistem yang akan dibuat, maka semakin sulit komunikasi antara orang-orang yang saling terkait dalam pembuatan dan pengembangan perangkat lunak yang akan dibuat. Pada masa lalu, UML mempunyai peranan sebagai gambaran perangkat lunak untuk analisis sistem, designer, dan programmer. UML memberikan jalur komunikasi dari sistem analis ke designer, lalu kepada programmer mengenai rancangan perangkat lunak yang akan dikerjakan.
2.8.1 Diagram Use Case Menurut Suhendar dan Gunadi (2002:49) diagram Use Case adalah menjelaskan manfaat sistem jika dilihat menurut pandangan orang yang berada di luar sistem (actor) diagram ini menunjukkan fungsionalitas suatu sistem atau kelas dan bagaimana sistem berinteraksi dengan dunia luar. Diagram use case dapat digunakan selama proses analisis untuk menangkap requirements sistem dan untuk memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, diagram use case menetapkan perilaku (behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau bebrapa use case diagram. Notasi-notasi yang digunakan dalam pemodelan use case (lihat tabel 2.2)
23
Tabel 2.2. Notasi pemodelan diagram use case Notasi
Keterangan
Aktor merupakan sebuah peran yang dimainkan seorang pengguna dalam kaitannya dengan sistem Use case adalah rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang dilakukan atau diawasi oleh sebuah aktor. use case digunakan untuk membentuk tingkah-laku benda/ things dalam sebuah model serta di realisasikan oleh sebuah collaboration. Generalization adalah menggambarkan hubungan khusus dalam obyek anak/child yang menggantikan obyek parent / induk Dependency adalah hubungan semantik antara dua benda/things yang mana sebuah benda berubah mengakibatkan benda satunya akan berubah pula. Realization merupakan hubungan semantik antara pengelompokkan yang menjamin adanya ikatan diantaranya. Hubungan ini dapat diwujudkan diantara interface dan kelas atau elements. untuk lebih memperjelas lihat gambaran suatu peristiwa untuk sebuah klinik kesehatan di bawah ini :
Actor
Use case Komunikasi
Menghubungi RS Membuat Janji
Pasien
Gambar 2.8 Contoh diagram Use Case
24
Pada gambar 2.8 terdapat contoh penggunaan diagram Use Case pada sebuah klinik kesehatan, dalam gambar terdapat seorang pasien menghubungi klinik untuk membuat
janji untuk
melakukan pemeriksaan kesehatan.
Operator
klinik
mendapatkan waktu kosong pada buku jadwal dan memasukkan janji tersebut ke dalam waktu kosong itu. Notasi-notasi yang digunakan dalam pemodelan use case yang terdapat pada Gambar 2.9 adalah: 1. Aktor, merupakan sebuah peran yang dimainkan seorang pengguna dalam interaksinya dengan sistem. 2. Use case
adalah teknik
mengidentifikasi
berdasarkan skenario
aktor-aktor
dalam
sebuah
dalam UML interaksi
dan
yang yang
menggambarkan interaksi itu sendiri. 3. Generalization adalah penghubung antara aktor dengan use case.
2.8.2 Diagram Sequence Menurut Fowler (2005:81) sebuah diagram sequence secara khusus menjabarkan aktivitas sebuah skenario tunggal. Diagram tersebut menunjukkan sejumlah objek contoh dan pesan-pesan yang melewati objek-objek di dalam use case diagram. Diagram Sequence menunjukkan interaksi dengan menampilkan setiap partisipan dengan garis alir secara vertikal dan pengurutan pesan dari atas ke bawah. Diagram Sequence biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah kejadian (event) untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger
25
aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Pesan digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Notasi-notasi yang digunakan dalam pemodelan sequence diagram (lihat tabel 2.3) Tabel 2.3. Notasi pemodelan diagram sequence Notasi Keterangan Aktor merupakan sebuah peran yang dimainkan seorang pengguna dalam kaitannya dengan system Activation menggambarkan waktu yang dibutuhkan suatu objek untuk menyelesaikan suatu aktifitas. Kelas boundary adalah yang memodelkan interaksi antara satu atau lebih aktor dengan sistem. Kelas kontrol digunakan untuk memodelkan “perilaku mengatur”, khusus untuk satu atau beberapa use case saja. Kelas entitas mememodelkan informasi yang harus disimpan oleh sistem Lifeline digambarkan dengan garis putus-putus, yang menggambarkan bahwa hadirnya objek terhadap waktu Aliran pesan digambarkan dengan tanda panah, yang menggambarkan komunikasi antar objek
26
Gambar 2.9 Contoh Diagram Sequence Pada contoh diagram sequence diatas menjelaskan bagaimana jika tamu yang melihat aplikasi ingin mendaftar agar dapat menggunakan aplikasi maka hal yang yang pertama kali dilakukan yaitu memilih halaman pendaftaran setelah itu sistem akan menampilkan form pengisian data untuk kemudian diisikan oleh tamu sebagai syarat pendaftaran setelah pengisian data selesai maka data tersebut akan disimpan kedalam basis data dan sistem akan memberikan informasi bahwa pendaftaran telah berhasil dan pengguna dapat mengakses halaman pengguna.
2.8.3 Pemodelan Diagram Aktifitas Diagram aktifitas adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Diagram aktifitas mempunyai peran seperti halnya diagram alur (flowchart), akan tetapi perbedaannya dengan flowchart adalah diagram aktifitas bisa mendukung perilaku paralel sedangkan flowchart tidak
27
bisa. Berikut pada Tabel 2.4 adalah simbol-simbol yang sering digunakan pada saat pembuatan diagram aktifitas. Tabel 2.4. Simbol-simbol pada activity diagram No Simbol Keterangan 1
Titik awal
2
Titik akhir
3
Activity
4
Pilihan untuk pengambilan keputusan
5
Fork; digunakan untuk menunjukkan kegiatan yang dilakukan secara paralel atau untuk menggabungkan dua kegiatan paralel menjadi satu
6
Rake; menunjukkan adanya dekomposisi
7
Tanda waktu
8
Tanda pengiriman
9
Tanda penerimaan
10
Aliran akhir (flow final)
2.8.4 Digram Alur (Flowchart) Diagram alur menunjukkan alur di dalam program atas prosedur sistem secara logika. Diagram alur digunakan terutama untuk alat bantu komunikasi dan untuk dokumentasi (Jogiyanto, 2005:795). Simbol-simbol tersebut dapat dilihat pada Gambar 2.10.
28
1
2
3
4
7
8
9
10
5
11
6
12
Keterangan simbol : 1. Dokumen input dan output baik untuk proses manual, mekanik, atau komputer 2. Operasi secara manual/bukan dengan komputer 3. Kegiatan proses dari operasi program komputer 4. Masukkan serta keluaran 5. masukan secara manual (menggunakan online keyboard) 6. Pita punched 7. Output yang ditampilkan di monitor 8. Input/output dengan menggunakan disket 9. Kotak keputusan 10. Mulai dan selesai 11. Simbol penghubung 12. Arus dari proses
Gambar 2.10. Simbol-simbol diagram alur (Jogiyanto, 2005:796-798) 2.9
Interaksi Manusia dan Komputer Berdasarkan pendapat Schneiderman [8], Interaksi Manusia dan Komputer
(IMK) atau Human Computer Interaction (HCI) adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer
29
interaktif untuk digunakan oleh manusia, serta studi fenomena-fenomena besar yang berhubungan dengannya. Jadi dapat dikatakan bahwa interaksi manusia dan komputer dititik beratkan pada perancangan dan evaluasi antarmuka pemakai (user interface). Antarmuka pemakai adalah bagian sistem komputer yang memungkinkan manusia berinteraksi dengan komputer. Ada tiga kategori pedoman desain HCI, yaitu: (Pressman: 2002:471-474) 1. Interaksi umum. Pedoman interaksi umum diantaranya meliputi: a. Konsisten: Gunakan format yang konsisten untuk misalnya pada pemilihan menu, masukan perintah, tampilan data. b. Mintalah verifikasi terhadap sembarang aksi destruktif yang siginifikan. Misal berikan pertanyaan kepada pemakai ketika ia meminta penghapusan file. c. Ijinkan kemudahan pembatalan sebagian besar aksi. d. Kurangi jumlah informasi yang harus diingat di antara aksi-aksi. e. Usahakan adanya efisiensi dalam dialog, gerakan, dan pemikiran. f. Memaafkan kesalahan: Sistem harus melindungi dirinya sendiri dari kesalahan yang dapat menyebabkan kegagalan pada sistem. g. Kategorikan aktivitas menurut fungsi dan atur geografi layar secara sesuai. h. Sediakan fasilitas help. 2. Tampilan informasi. Pedoman tampilan informasi diantaranya meliputi: a. Hasilkan pesan kesalahan yang berarti. b. Gunakan huruf besar dan kecil untuk membantu pemahaman. c. Jangan membanjiri pemakai dengan data, gunakan format yang representasi. 3. Input data. Pedoman-pedoman yang fokus pada input data diantaranya meliputi:
30
a. Minimalkan jumlah aksi input yang dibutuhkan dari pemakai. b. Jagalah konsistensi di antara tampilan informasi dan input data. c. Sediakan help untuk membatu semua aksi input.
2.10
Konsep Dasar PHP PHP (Hypertext Preprocessor), selanjutnya disebut PHP, dikenal sebagai
bahasa scripting yang menyatu dengan tag-tag HTML (Hypertext Markup Language), dieksekusi di server, dan digunakan untuk membuat halaman web yang dinamis (Azis, 2001:1). PHP termasuk dalam open source product, yang memungkinkan pengguna dapat merubah kode-kode program dan mendistribusikannya secara bebas. PHP juga diedarkan secara gratis. PHP juga dapat berjalan di berbagai web server semisal IIS, Apache, PWS, dan lain sebagainnya. Di awal Januari 2001, PHP telah dipakai lebih dari 5 juta domain diseluruh dunia, dan akan terus bertambah karena kemudahan aplikasi PHP ini dibandingkan dengan bahasa server side yang lain. Untuk informasi mengenai berapa banyak pengguna PHP saat ini kita dapat melihat di http://www.php.net/usage.php Adapun kelebihan-kelebihan dari PHP yaitu : 1. PHP diterbitkan secara gratis. 2. PHP dapat berjalan dalam web server yang berbeda dan dalam sistem operasi yang berbeda pula. PHP dapat berjalan di sistem operasi UNIX, Windows 98,NT dan Macintosh. 3. PHP mudah dibuat dan akses kecepatanya tinggi.
31
4. PHP juga dapat berjalan pada web server Microsoft Personal Web Server, Apache, IIS dan sebagainnya. 5. PHP adalah termasuk bahasa yang embedded (bisa ditempel atau ditempatkan dalam tag HTML). Untuk melakukan pemograman pada situs web dinamis, minimal dibutuhkan tiga buah program, yaitu: 1. PHP, 2. Apache sebagai web server, 3. MySQL sebagai basis data. Konsep kerja dari PHP adalah ketika seseorang mengetikkan alamat di web browser, maka browser akan mengirimkan perintah tersebut ke web server. Jika yang diminta adalah berkas (file) yang mengandung program server-side maka web server akan menjalankan terlebih dahulu program tersebut dan mengirimkannya hasilnya ke browser. Jika yang diminta adalah file HTML maka web browser akan langsung mengirimkan ke browser apa adanya (Purwanto, 2001:2).
2.10.1 Struktur Program PHP Kode program PHP menyatu dengan tag-tag HTML dalam satu file. Kode PHP diawali dengan tag . File yang berisi tag HTML dan kode PHP ini diberi ekstensi .php. Berdasarkan ekstensi ini, pada saat file diakses, server akan tahu bahwa file ini mengandung kode PHP. Server akan menterjemahkan kode ini dan menghasilkan keluaran (output) dalam bentuk tag HTML yang dikirim ke browser client yang mengakses file tersebut (Azis, 2001:5).
32
PHP bersifat case sensitive yang artinya PHP membedakan huruf kecil dan huruf besar untuk penulisan variabel. Misalnya variabel $p beda dengan variabel $P. Sedangkan untuk penulisa fungsi-fungsi, PHP tidak membedakan huruf besar dan huruf kecil. Ada tiga cara dalam penulisan script PHP yaitu: 1. 2. 3. <SCRIPT LANGUAGE=“php”> Script PHP
Sedangkan untuk penulisan komentar program, ada tiga macam cara penulisan komentar program yang dapat digunakan, yaitu: 1. C style, komentar diawali dengan tag /* dan diakhiri */, style ini digunakan untuk komentar yang lebih dari satu baris. 2. C++ style, komentar ini diawali dengan tag // dan hanya berlaku untuk satu bari komentar, untuk baris berikutnya harus diawali dengan tag // lagi. 3. Bourne Shell style, diawali dengan tag # untuk satu baris komentar.
2.11
Structured Query Language (SQL) SQL dapat diartikan sebagai bahasa standar yang digunakan untuk
berinteraksi dengan database relasional. SQL menawarkan beberapa alat utnuk berinteraksi dengan database, yaitu: (Fathansyah, 2001:195). 1. Data structure definition: SQL dapat menentukan konstruksi yang bermacammacam yang digunakan database untuk menyimpan data. a. Untuk membuat tabel menggunakan create table. create table mahasiswa (nim char(6), nama_mhs varchar(60), alamat_mhs varchar(60) tgl_lahir date)
33
b. Untuk menghapus tabel menggunakan drop table.
drop table mahasiswa c. Untuk menambahkan atribut baru menggunakan alter table. alter table mahasiswa add ip numeric(5,2) Data querying: SQL dapat mendapatkan data dalam database dan ditampilkan dalam format yang dapat dibaca.
2. Data querying: SQL dapat mendapatkan data dalam database dan ditampilkan dalam format yang dapat dibaca. Contoh: select nim, nama_mhs from mahasiswa 3. Data manipulation: SQL dapat memasukkan, memperbaharui, dan menghapus data. a. Memasukkan data. insert into mahasiswa(nim, nama_mhs, alamat_mhs, tgl_lahir) values (‘01502043’, ’jaka Janwar, ’jl.antasena blok e5/39’, ’08/10/1984) b. Memperbaharui data update mahasiswa set alamat=’Jl. Beringin 3 No.63 Tangerang’ where nim=’01501030’ c. Menghapus data delete from mahasiswa where nim=’01501030’
2.12
Teknik Pengujian
2.12.1 White Box Adalah meramalkan cara kerja perangkat lunak secara rinci, karenanya logikal
path
menyediakan
(jalur test
case
logika) yang
perangkat akan
lunak
mengerjakan
akan
ditest
kumpulan
dengan
kondisi
dan
34
atau
pengulangan
kesimpulan
white
secara box
spesifik.
testing
Secara
merupakan
sekilas
petunjuk
dapat
untuk
diambil
mendapatkan
program yang benar secara 100% Adapun cara pengujian White Box : a. metode desain test case yang menggunakan struktur control desain procedural untuk memperoleh test case. b. Disebut juga pengujian glassbox. c. Dengan pengujian whitebox, perekayasa dapat melakukan : i.
Memberikan jaminan bahwa semua jalur independen pada suatu modul telah digunakan paling tidak satu kali
ii.
Menggunakan semua keputusan logis pada sisi true and false.
iii.
Mengeksekusi semua loop pada batasan mereka dan pada batas operasional mereka.
iv.
Menggunakan struktur data internal untuk menjamin validitasnya.
12.2 Black Box Test case ini bertujuan untuk menunjukkan fungsi PL tentang cara beroperasinya, sebagaimana
apakah yang
pemasukan
diharapkan
dan
data apakah
keluaran
telah
berjalan
informasi
yang
disimpan
secara eksternal selalu dijaga kemutakhirannya. Adapun cara pengujian Black Box : a. Pengujian black box berfokus pada persyaratan fungsional perangkat lunak. b. Disebut juga pengujian behavioral atau pengujian partisi.
35
c. Black box memungkinkan perekayasa perangkat lunak mendapat serangkaian input yang sepenuhnya menggunkan semua persyartan fungsional untuk suatu program. d. Black Box berusaha menemukan : i.
Fungsi-fungsi yang tidak benar atau hilang
ii.
Kesalahan interface
iii.
Kesalahan dalam struktur data atau akses database eksternal.
iv.
Kesalahan kinerja
v.
Inisialisasi dan kesalahan terminasi.
e. Dengan mengaplikasikan teknik black box maka kita menarik serangkaian test case yang memenuhi criteria berikut ini : i.
Test case yang mengurangi, dengan harga lebih dari satu, jumlah test case tambahan yang harus di desain untuk mencapai pengujian yang dapat dipertanggungjawabkan.
ii.
Test case yang member tahu kita sesuatu mengenai kehadiran atau ketidakhadiran kelas kesalahan, daripada memberitahu kesalahan yang berhubungan hanya dengan pengujian spesifik.
2.13
Website Situs web kegunaan ini berkaitan dengan bagaimana mudah dan intuitif bagi
individu untuk belajar menggunakan dan berinteraksi dengan situs Web untuk dengan cepat dan mudah menyelesaikan tugas-tugas mereka (Preece, 2001). Ini biasanya adalah ukuran kualitas kehadiran situs Web, seperti yang dirasakan oleh pengguna (Agarwal & Venkatesh, 2002; John & Bass, 2001). Artinya, situs-situs Web yang sangat bermanfaat yang mudah untuk belajar, mengingat, dan
36
menggunakan. Situs web kegunaan berasal dari kerangka yang lebih luas dari kegunaan sistem, seperti yang dijelaskan dalam konsep-konsep dari literatur tentang interaksi manusia-komputer (HCI) (Schneiderman, 1998). Premis utama studi HCI adalah bahwa desain sistem informasi harus mencakup fitur dan karakteristik yang membuatnya mudah bagi pengguna untuk berinteraksi dengan dan menggunakan sistem. Kegunaan dari situs Web adalah penting untuk sejumlah alasan ( Huang , 2002) . Pertama , World Wide Web ( WWW ) adalah lingkungan yang terbuka dan terhubung , dan switching situs Web mudah . Untuk memastikan bahwa orang-orang benar-benar tinggal dengan situs web sampai transaksi selesai , situs Web harus digunakan . Dalam konteks ini , ElHs dan Kurniawan (2000) menyatakan bahwa browser sering tidak sabar untuk menyelesaikan transaksi mereka di situs Web yang tidak user friendly , yang tidak memfasilitasi pengambilan informasi , dan yang tidak menyajikan informasi dalam terorganisir dengan baik dan formulir yang bersangkutan . Kedua, WWW menyediakan akses ke berbagai peningkatan informasi , produk , dan jasa . Its pengguna berkisar dari ahli untuk pemula yang memiliki harapan dan keterampilan yang berbeda secara dramatis . Oleh karena itu , penting untuk memahami faktor-faktor yang meningkatkan kegunaan situs Web untuk berbagai jenis browser . Ketiga , penelitian sebelumnya menunjukkan bahwa kegunaan yang tinggi dikaitkan dengan hasil positif - pengguna terkait, seperti pengurangan jumlah kesalahan pengguna ( Siau , 2003) dan sikap yang lebih positif terhadap situs Web ( Lecerof & Paterno , 1998; Nielsen , 2000). Akhirnya , situs Web adalah antarmuka di mana karyawan dan pelanggan berinteraksi dengan organisasi. Dalam hal ini, itu adalah analog dengan toko bata - dan - mortir . Situs
37
web tinggi kegunaan , oleh karena itu, ini mirip dengan lingkungan toko dan menyenangkan user-friendly dan mempengaruhi lalu lintas situs Web. Ini memberi kesan yang kuat orientasi dan layanan pelanggan pikiran ( Heldal et al . , 2004) . Demikian juga , kegunaan rendah menggambarkan kebalikan dari sentimen tersebut. Tarafdar, M., & Zhang, J. (2005). 2.14
Interaksi Web Interaksi di Web dapat dilihat dari tiga sudut konseptual yang berbeda.
Pertama, interaksi-kedua konsumen off-line maupun online-jatuh ke dalam bidang word-of-mouth komunikasi. Kedua, interaksi di Web dapat dilihat dari perspektif komunitas virtual dan, ketiga, jejak konsumen meninggalkan di Web merupakan basis pengetahuan perusahaan dapat panen untuk mengumpulkan intelijen pemasaran. Pollach, I. (2008).