BAB II LANDASAN TEORI
2.1.
Pemesanan Pemesanan dalam bahasa Inggris adalah Reservation yang berasal dari
kata “to reserve” yaitu menyediakan atau mempersiapkan tempat sebelumnya. Sedangkan reservation yaitu pemesanan suatu tempat fasilitas. Jadi secara umum reservation yaitu pemesanan fasilitas yang diantaranya akomodasi, meal, seat pada pertunjukan, pesawat terbang, kereta api, bus, hiburan, night club, discoutegue dan sebagainya. Pada bisnis perhotelan, booking/reservation/ pemesanan adalah reservasi kamar yang dilakukan oleh calon tamu beberapa waktu sebelum kedatangannya dengan cara, lewat telepon, faksimile, e-mail, ataupun datang langsung. Alasan pemesanan/reservasi menjadi sebuah media yang sangat efektif baik bagi produsen maupun bagi konsumen adalah produsen akan dapat melakukan evaluasi terhadap produk yang akan mereka jual melalui tingkat tinggi rendahnya jumlah pemesanan/reservasi jauh sebelum produk tersebut dijual (barang) ataupun diselenggarakan (jasa), dimana hasil evaluasi tersebut akan membantu produsen untuk menentukan langkah pemasaran yang akan diambil terhadap produk yang akan dijual tersebut. Sedangkan bagi konsumen melalui media pemesanan/reservasi dapat menimbang terlebih dahulu sebelum membeli produk sampai dengan waktu yang telah ditentukan (time limit). Sampai dengan time limit yang telah ditentukan produk yang telah dipesan tersebut tidak boleh dijual kepada konsumen lain, karena secara tertulis maupun tidak sampai dengan time limit produk tersebut telah dipriotaskan kepada konsumen yang telah melakukan pemesanan/reservasi. Hal ini akan sangat menguntungkan konsumen karena sampai dengan time limit yang ditentukan, konsumen dapat melakukan perbandingan dengan produk lain. 7
8
Selain itu, jika terjadi sesuatu dan lain hal yang mengharuskan konsumen untuk batal membeli produk tersebut, konsumen yang bersangkutan tidak harus membeli produk tersebut Untuk membantu mempermudah proses booking/reservation/pemesanan maka diperlukan sebuah sistem informasi. Sistem informasi merupakan sebuah kumpulan dari informasi yang saling terintegrasi untuk mendapatkan tujuan yang spesfik. Salah satu jenisnya adalah sistem informasi reservasi hotel yang merupakan bentuk lain dari pelayanan publik dengan menawarkan jasa dalam pendataan administrasi pada reservasi perhotelan. http://ejournal.undip.ac.id/index.php/transmisi/article/viewFile/3718/3406 diakses 21 april 2014. http://jurnal.uajy.ac.id/jbi/files/2012/02/05-WC-39-50.pdf.diakses 21 april 2014.
2.2.
Konsep Dasar Sistem Informasi
2.2.1. Sistem Suatu sistem dapat diartikan sebagai suatu kumpulan atau himpunan dari unsur, komponen, atau variable yang terorganisir, saling beinteraksi, saling tergantung satu sama lain, dan terpadu (Tata Sutabri, 2012:10). Definisi sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau menyelesaikan suatu sasaran tertentu (Verdi Yasin, 2012:260). A system is a collection of interrelated components that function together to achieve some outcome. (Satzinger et al., 2009: 6). Sistem adalah kumpulan dari komponen yang saling terkait yang berfungsi bersama-sama untuk mencapai tujuan.
9
Jadi sistem merupakan sekumpulan elemen yang saling terkait atau terpadu yang dimaksudkan untuk mencapai tujuan bersama. Sistem adalah suatu jaringan kerja dari prosedur – prosedur yang saling berhubungan, berkumpul bersama – sama untuk melakukan suatu kegiatan atau menyelesaikan
suatu
sasaran tertentu. 2.2.2. Karakteristik sistem Suatu sistem mempunyai karakteristik atau sifat tertentu yaitu mempunyai komponen – komponen (component), batasan sistem (boundary), lingkaran luar sistem (environments), penghubung (interface), masukan (input), keluaran (output), pengolahan sistem (process) dan sasaran (objectives).
Komponen Sistem (Component) Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi yang artinya saling bekerja sama membentuk suatu kesatuan. Komponen – komponen sistem atau elemen – elemen sistem dapat berupa suatu subsistem atau bagian – bagian dari sistem. Setiap subsistem mempunyai sifat – sifat dari sistem untuk menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan.
Lingkungan Luar Sistem (Environment) Lingkungan luar sistem (environment) dari suatu sistem adalah apapun diluar batas dari sistem yang mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat menguntungkan dan dapat juga bersifat merugikan sistem tersebut.
Penghubung Sistem (Interface) Penghubung (interface) merupakan media penghubung antara satu subsistem dengan subsiste yang lainnya. Melalui penghubung ini memungkinkan sumber – sumber daya dari satu subsistem ke subsistem yang lainnya. Keluaran
10
(output) dari satu subsistem akan menjadi masukan (input) untuk subsistem yang lainnya dengan melalui penghubung.
Masukan Sistem (Input) Masukan (input) adalah energi yang dimasukan ke dalam sistem. Masukan dapat berupa masukan perawatan (maintenance input) dan masukan sinyal (signal input) . Maintenance input adalah energi yang dimasukan supaya sistem tersebut dapat beroperasi. Signal input adalah energi yang diproses untuk mendapatkan keluaran. Sebagai contoh di dalam sistem komputer, program adalah maintenance input yang digunakan untuk mengoperasikan komputernya dan data adalah signal input untuk diolah menjadi informasi.
Keluaran Sistem (Output) Keluaran (output) adalah hasil dari energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna dan sisa pembuangan. Keluaran dapat merupakan masukan untuk subsistem yang lain atau kepada supra sistem. Misalnya untuk sistem komputer, panas yang dihasilkan adalah keluaran yang tidak berguna dan merupakan sisa pembuangan, sedangkan informasi adalah keluaran yang dibutuhkan.
Pengolahan Sistem (Process) Suatu sistem dapat mempunyai suatu bagian pengolah yang akan merubah masukan menjadi keluaran. Suatu sistem produksi akan mengolah masukan menjadi barang jadi. Sistem akuntansi akan mengolah data – data transaksi menjadi laporan – laporan keuangan dan laporan – laporan lain yang dibutuhkan oleh manajemen.
Sasaran Sistem (Objective) Suatu sistem pasti mempunyai tujuan (goal) atau sasaran (objectives). Apabila suatu sistem tidak mempunyai sasaran , maka operasi sistem tidak akan ada gunanya. Sasaran dari sistem sangat menentukan sekali masukan yang
11
dibutuhkan sistem dan keluaran yang akan dihasilkan sistem. Suatu sistem dikatakan berhasil bila mengenai sasaran atau tujuannya. 2.2.3. Data dan informasi Data merupakan bentuk jamak dari bentuk tunggal datum. Data adalah kenyataan yang menggambarkan suatu kejadian-kejadian dan kesatuan nyata (Tata Sutabri, 2012:1). Kejadian-kejadian adalah sesuatu yang terjadi pada saat tertentu didalam dunia bisnis. Bisnis adalah perubahan dari suatu nilai yang disebut transaksi. Dari definisi dan uraian data diatas dapat disimpulkan bahwa data adalah bahan mentah yang diproses untuk menyajikan informasi. Informasi adalah data yang telah diklasifikasikan atau diinterprestasi untuk digunakan dalam proses pengambilan keputusan. Sumber dari informasi adalah data (Tata Sutabri, 2012:29) Sistem informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian yang mendukung fungsi operasi organisasi yang bersifat manajerial dengan kegiatan strategi dari suatu organisasi untuk dapat menyediakan kepada pihak luar tertentu dengan laporanlaporan yang diperlukan (Tata Sutabri, 2012:46) Menurut (Satzinger et al., 2009: 6) an information system is a collection of interrelated components that collect, process, store, and provide as output the information needed to complete a business task . Jadi sebuah sistem informasi adalah kumpulan komponen yang saling terkait yang mengumpulkan, memproses, menyimpan, dan menyediakan sebagai output informasi yang diperlukan untuk menyelesaikan tugas bisnis. Sistem informasi sebagai seperangkat elemen atau komponen yang saling terkait yang dikumpulkan (input),memanipulasi (process), menyimpan, dan
12
menyebarkan (output) data dan informasi, dan memberikan reaksi korektif (feedback) untuk memenuhi tujuan (Stair Reynolds, 2010:10). Aktifitas dasar dari sistem informasi yaitu sebagai berikut: 1.
Input Melibatkan penangkapan atau pengumpulan data mentah dari dalam organisasi atau dari lingkungan eksternal untuk pengolahan dalam suatu sistem informasi.
2.
Process Melibatkan proses mengkonversi input mentah ke bentuk yang lebih bermakna.
3.
Output Mentransfer proses informasi kepada orang yang akan menggunakannya atau kepada aktivitas yang akan digunakan.
4.
Feedback Output yang dikembalikan ke anggota organisasi yang sesuai untuk kemudian membantu mengevaluasi atau mengoreksi tahap Input,
2.3.
PHP
2.3.1. Pengertian PHP PHP singkatan dari PHP : Hypertext Prepocessor yaitu bahasa pemrograman web server-side yang bersifat open source. PHP merupakan script yang terintegrasi dengan HTML dan berada pada server (server side HTML embedded scripting). PHP adalah script yang digunakan untuk membuat halaman website yang dinamis. Dinamis berarti halaman yang akan ditampilkan dibuat saat
13
halaman itu diminta oleh client. Mekanisme ini menyebabkan informasi yang diterima client selalu yang terbaru/up to date. Semua script PHP dieksekusi pada server dimana script tersebut dijalankan. PHP kependekan kata dari Hypertext Preprocessor adalah suatu bahasa pemrograman open source yang cocok digunakan dalam pengembangan web dan dapat di sisipkan pada sebuah script HTML. Penciptaan awal PHP adalah untuk mempermudah pengembangan sebuah web dalam penulisan dalam halaman web dinamis dengan cepat. Dari pemaparan di atas dapat di simpulkan bahwa PHP adalah akronim dari Hypertext Preprocessor, yaitu suatu bahasa pemrograman dimana berbasis kode – kode (script ) yang di pergunakan untuk mengolah suatu data dan bersifat server – side yang di tambahkan ke dalam HTML. 2.3.2. Sejarah PHP Hypertext Preprocessor (PHP) berkembang dengan sangat pesat. Berikut adalah sejarah perkembangan PHP : 1.
1995 – PHP pertama kali dibuat oleh Rasmus Lerdorf, yang diberi nama FI (Form Interpreted) dan digunakan untuk mengelola form dari web. Pada perkembangannya, kode tersebut dirilis ke umum sehingga mulai banyak dikembangkan oleh programmer di seluruh dunia.
2.
1997 – PHP 2.0 dirilis. Pada versi ini sudah terintegrasi dengan bahasa pemrograman C dan dilengkapi dengan modulnya sehingga kualitas kerja PHP meningkat secara signifikan. Pada tahun ini juga sebuah perusahaan yang bernama Zend merilis ulang PHP dengan lebih bersih, baik dan cepat.
3.
1998 – PHP 3.0 diluncurkan.
4.
1999 – PHP versi 4.0 dirilis. PHP versi ini paling banyak digunakan pada awal abad 21 karena sudah mampu membangun web komplek dengan stabilitas kecepatan yang tinggi.
14
5.
2004 – Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek. Lalu pada versi 6 PHP sudah support untuk Unicode. Juga banyak fitur
penting lainnya yang telah ditambahkan ke dalam PHP 6, antara lain : 1.
Support Unicode, dukungan terhadap penggunaan Unicode telah ditambahkan, sehingga lebih mudah untuk membangun dna memelihara aplikasi.
2.
Perbaikan keamanan.
3.
Fitur dan konstruksi baru, sejumlah fitur sintaks baru ditambahkan, seperti 64-bit integer type, membangun perulangan untuk array multidimensi, serta dukungan untuk labeled breaks. Adapun kelebihan dari Hypertext Prepocessor (PHP) antara lain:
1.
Kesederhanaan. User yang baru belajar pemrograman, alasan ini pasti merupakan
alasan
utama
untuk
memulai
belajar
PHP.
Karena
kesederhanaan tersebut, maka kita menjadi merasa mudah untuk belajar PHP. User yang sedikit tahu atau bahkan sama sekali tidak mengerti tentang pemrograman PHP bisa dengan cepat belajar dan mencoba membuat aplikasi web PHP. Selain itu, PHP memiliki banyak sekali fungsi built-in untuk menangani kebutuhan standar pembuatan aplikasi web. Dengan adanya fungsi-fungsi tersebut, maka tentu saja proses belajar PHP terutama dalam pengembangan aplikasi akan jauh lebih mudah karena semua sudah tersedia. Kita sebagai user tinggal memakai dan mengembangkannya. 2.
Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak.
3.
PHP adalah bahasa open source yang dapat digunakan di berbagai sistem operasi seperti: Linux, Unix, Macintosh, dan Windows. PHP dapat dijalankan secara runtime melalui console serta dapat menjalankan
15
perintah-perintah sistem. Open source artinya code-code PHP terbuka untuk umum dan kita tidak harus membayar biaya pembelian atas keaslian lisensi yang biasanya cukup mahal. Karena source code PHP tersedia secara gratis, maka hal tersebut memungkinkan komunitas milis-milis dan developer untuk selalu melakukan perbaikan, pengembangan, dan menemukan bug dalam bahasa PHP. 4.
Web server yang mendukung PHP dapat ditemukan di mana-mana, mulai dari Apache, IIS, Lighttpd, hingga Xitami dengan configurasi yang relatif mudah.
5.
PHP juga dilengkapi dengan berbagai macam pendukung lain seperti support langsung ke berbagai macam database yang populer, misal: Oracle, PostgreSQL, MySQL, dan lain-lain.
2.4.
MySQL MySQL (My Structure Query Language) adalah sebuah perangkat lunak
sistem manajemen basis data SQL (Database Management System) atau DBMS dari sekian banyak DBMS, seperti Oracle, MS SQL, PostgreSQL, dan lain-lain. 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 diseluruh dunia (Aditya Nugroho, 2011:61). MySQL pertama kali dirintis oleh seorang programer database bernama Michael Widenius. MySQL adalah sebuah implementasi dari sistem manajemen basis data relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). RDBMS dapat menangani data yang bervolume besar. Meskipun begitu, tidak menuntut resource yang besar. MySQL adalah database yang paling populer diantara database-database yang lainnya.
16
Kehandalan suatu sistem basis data (DBMS) dapat diketahui dari cara kerja pengoptimasinya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai pelayan basis data, MySQL mendukung operasi basis data transaksional maupun operasi basis data non-transaksional.
2.5.
Metode Pengembangan Perangkat Lunak Pada awal pengembangan perangkat lunak, para pembuat program
(programmer)
langsung
melakukan
pengkodean
perangkat
lunak
tanpa
menggunakan prosedur atau tahapan pengembangan perangkat lunak. Dan ditemuilah kendala-kendala seiring dengan perkembangan skala sistem-sistem perangkat yang semakin besar. SDLC dimulai dari tahun 1960-an, untuk mengembangkan sistem skala usaha besar secara fungsional untuk para kongklomerat pada zaman itu. Sistemsistem yang dibangun mengelola informasi kegiatan dan rutinitas dari perusahaanperusahaan yang berpotensi memiliki data yang besar dalam perkembangannya. SDLC atau Software Development Life Cycle atau sering disebut juga System 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 (berdasarkan base pactice atau cara-cara yang sudah teruji baik). Tahapan-tahapan yang ada pada SDLC secara global adalah sebagai berikut :
Inisiasi (Initiation) Tahap ini biasanya ditandai dengan pembuatan proposal proyek perangkat lunak.
Pengembangan konsep sistem (system concept development)
17
Mendefinisikan lingkup konsep termasuk dokumen lingkup sistem, analisis manfaat biaya, manajemen rencana, dan pembelajaran kemudahan sistem.
Perencanaan (planning) Mengembangkan rencana manajemen proyek dan dokumen perencanaan lainnya. Menyediakan dasar untuk mendapatkan sumber daya (resources) yang dibutuhkan untuk memperoleh solusi.
Analisis kebutuhan (requirements analysis) Menganalisis kebutuhan pemakai sistem perangkat lunak (user) dan mengembangkan kebutuhan user. Membuat dokumen kebutuhan fungsional.
Desain (design) Mentransformasikan kebutuhan detail menjadi kebutuhan yang sudah lengkap, dokumen desain sistem fokus pada bagaimana dapat memenuhi fungsi-fungsi yang dibutuhkan.
Pengembangan (development) Mengonversi desain ke sistem informasi yang lengkap termasuk bagaimana memperoleh dan melakukan instalasi lingkungan sistem yang dibutuhkan, membuat basis data dan mempersiapkan prosedur kasus pengujian, mempersiapkan berkas atau file pengujian, pengodean, pengompilasian, memperbaiki dan membersihkan program, peninjauan pengujian.
Integrasi dan pengujian (integration and 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.
18
Implementasi (implementation) Termasuk pada persiapan implementasi, implementasi perangkat lunak pada lingkungan produksi (lingkungan pada user) dan menjalankan resolusi dari permasalahan yang teridentifikasi dari fase integrasi dan pengujian.
Operasi dan pemeliharaan (operation and maintenance) Mendeskripsikan pekerjaan untuk mengoperasikan dan memelihara sistem informasi pada lingkungan produksi (lingkungan pada user), termasuk implementasi akhir dan masuk pada proses peninjauan.
Disposisi (disposition) Mendeskripsikan aktifitas akhir dari pengembangan sistem dan membangun data yang sebenarnya sesuai dengan aktifitas user.
2.5.1. Model SDLC Waterfall Model SDLC air terjun (waterfall) sering juga disebut model sekuensial linier (sequential linear) atau alur hidup klasik (classic life cycle). Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung (support). Berikut adalah gambar model air terjun.
Gambar 2.1 Ilustrasi SDLC Waterfall (Satzinger et al., 2009:41)
19
a.
Project planning Untuk mengidentifikasi ruang lingkup sistem baru, memastikan bahwa
proyek ini layak, dan mengembangkan jadwal, rencana sumber daya, dan anggaran untuk proyek. Kami mengidentifikasi lima kegiatan dalam perencanaan proyek:
b.
Mendefinisikan masalah.
Menghasilkan jadwal proyek.
Konfirmasi kelayakan proyek.
Staf proyek.
Peluncuran proyek.
Analysis Untuk memahami dan mendokumentasikan secara rinci kebutuhan bisnis
dan persyaratan pengolahan sistem baru. Enam kegiatan utama dianggap sebagai bagian dari fase ini:
c.
Kumpulkan informasi.
Mendefinisikan persyaratan sistem.
Membangun prototipe untuk penemuan persyaratan.
Prioritaskan persyaratan.
Menghasilkan dan mengevaluasi alternatif.
Rekomendasi ulasan dengan manajemen.
Design Untuk merancang sistem solusi berdasarkan persyaratan yang ditetapkan
dan keputusan yang dibuat selama analisis.
20
Enam kegiatan utama harus diselesaikan selama fase desain:
d.
Desain dan mengintegrasikan jaringan.
Desain arsitektur aplikasi.
Desain user interface.
Desain antarmuka sistem.
Desain dan mengintegrasikan database.
Prototype untuk rincian desain.
Implementation Untuk membangun, menguji, dan menginstal sistem informasi yang handal
dengan pengguna terlatih siap untuk mendapatkan keuntungan seperti yang diharapkan dari penggunaan sistem. Lima kegiatan utama membuat tahap implementasi:
Membangun komponen perangkat lunak.
Pastikan dan uji.
Mengkonversi data.
Pelatihan dan sistem dokumen.
Pasang sistem.
Dari kenyataan yang terjadi sangat jarang model air terjun dapat dilakukan sesuai alurnya karena sebab sebagai berikut :
Perubahan spesifikasi perangkat lunak terjadi di tengah alur pengembangan.
Sangat sulit bagi pelanggan untuk mendefinisikan semua spesifikasi diawal alur pengembangan. Pelanggan sering kali butuh contoh (Prototype) untuk menjabarkan spesifikasi kebutuhan sistem lebih lanjut.
Pelanggan tidak mungkin bersabar mengakomodasi perubahan yang diperlukan di akhir alur pengembangan.
21
Dengan berbagai kelemahan yang dimiliki model air terjun tapi model ini telah menjadi dasar dari model-model yang lain dalam melakukan perbaikan model pengembangan perangkat lunak. Model air terjun sangat cocok digunakan kebutuhan pelanggan sudah sangat dipahami dan kemungkinan terjadinya perubahan kebutuhan selama pengembangan perangkat lunak kecil. Hal positif dari model air terjun adalah struktur tahap pengembangan sistem jelas, dokumentasi dihasilkan di setiap tahap pengembangan, dan sebuah tahap dijalankan setelah tahap sebelumnya selesai dijalankan (tidak ada tumpang tindih pelaksanaan).
2.6.
UML (Unified Modeling Language) UML disebut sebagai tekhnik pendiagraman yang berorientasi objek yang
memiliki banyak permodelan sistem pengembangan projek dari analisis ke pendesainan. Bahasa pemodelan (sebagaian besar grafik) merupakan notasi dari metode yang digunakan untuk mendesain secara cepat. Bahasa pemodelan merupakan bagian terpenting dari metode. UML merupakan bahasa standar untuk penulisan blueprint software yang digunakan untuk visualisasi, spesifikasi, pembentukan dan pendokumentasian alat-alat dari sitem perangkat lunak. UML (Unified Modeling Language) adalah „bahasa‟ pemodelan untuk sistem atau perangkat lunak yang berparadigma „berorientasi objek (Nugroho 2010:6) TujuanUML diantaranya adalah : 1.
Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan sistem dan yang dapat saling menukar model dengan mudah dan dimengerti secara umum.
2.
Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemograman dan proses rekayasa.
22
3.
Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.
2.6.1. Use case diagram A use case is an activity the system performs, usually in response to a request by a user. The purpose of a use case diagram is to identify the ―uses,‖ or use cases, of the new system—in other words, to identify how the system will be used. (Satzinger et al., 2009: 242). Tujuan dari diagram use case adalah untuk mengidentifikasi bagaimana sistem baru akan digunakan. Dengan kata lain use case diagram adalah diagram fungsional yang didalamnya digambarkan fungsi dasar dari sistem yaitu tentang apa yang dapat dilakukan pengguna dan bagaimana sistem harus merespon terhadap aksi yang digunakan. Use case mendeskripsikan sebuah interaksi antara satu atau lebih actor dengan sistem informasi yang akan dibuat. Diagram ini digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Syarat penamaan pada use case adalah nama didefinisikan semudah mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut actor dan use case. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat sendiri, jadi walaupun simbol actor adalah gambar orang tapi actor belum tentu merupakan orang. Use case merupakan fungsionalitas yang disediakan sistem sebagai unitunit yang saling bertukar pesan antar unit atau actor Berikut adalah simbol-simbol yang ada pada diagram use case :
23
Tabel 2.1 Simbol Use Case Diagram (Rosa A.S.-M.Shalahuddin, 2011:138). Simbol Use Case
Deskripsi Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit
Nama use case
atau
aktor.
Biasanya
dinyatakan
dengan
menggunakan kata kerja di awal frase nama use case Aktor / Actor
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
Nama aktor
menggunakan kata benda di awal frase nama aktor.
Asosiasi / Association
Komunikasi antara actor dengan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan aktor
Ekstensi / extend
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan dapat berdiri
«extends»
sendiri walau tanpa use case tambahan itu, mirip dengan prinsip inheritance pada pemrogaman berorientasi objek, biasanya use case tambahan memiliki nama depan yang sama dengan use case yang ditambahkan
Generalisasi Generalization
/ Hubungan generalisasi dan spesialisai (umumkhusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya.
24
Include / uses
Ada dua sudut pandang yang cukup besar mengenai include di use case :
«uses»
Include berarti uses case yang ditambahkan akan selalu dipanggil saat use case tambahan dijalakan.
Include bearti uses case yang ditambahkan akan selalu melakukan pengecekan apakah use case yang ditambahkan telah dijalankan sebelum use case tambahan dijalankan.
Gambar 2.2 Contoh Use Case Diagram (Satzinger et al., 2009:244)
25
2.6.2. Activity diagram An activity diagram is simply a workflow diagram that describes the various user (or system) activities, the person who does each activity, and the sequential flow of these activities (Satzinger et al., 2009: 141). Diagram aktifitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktifitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem, bukan apa yang dilakukan actor. Berikut adalah simbol-simbol yang ada pada diagram aktivitas : Tabel 2.2 Simbol Activity Diagram(Rosa A.S.-M.Shalahuddin, 2011:134) Simbol
Deskripsi
Status awal
Status awal diagram aktivitas sistem
Aktivitas
Aktivitas yang dilakukan sistem, biasanya diawali dengan kata kerja.
Percabangan / decision
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
26
Swimlane
Memisahkan organisasi bisnis yang bertanggung jawab terhadap aktivitas yang terjadi.
Nama swinlane
Gambar 2.3 Contoh Activity Diagram (Satzinger et al., 2009:252)
27
2.6.3. Sequence diagram System sequence diagrams (SSDs) are used to define the inputs and outputs and the sequence of interactions between the user and the system for a use case. They are used in conjunction with detailed descriptions or with activity diagrams. In a sequence diagram, these information flows in and out of a system are called messages. The users are identified, and the detailed messages are described (Satzinger et al., 2009:242). Sequence diagram digunakan untuk menentukan input dan output dan urutan interaksi antara pengguna dan sistem untuk use case. Mereka digunakan bersama dengan deskripsi rinci atau dengan diagram aktivitas. Dalam diagram ini arus informasi masuk dan keluar dari sistem disebut pesan. Para pengguna diidentifikasi, dan pesan rinci dijelaskan. Diagram ini 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 sequence maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metodemetode yang dimiliki kelas yang diinstalasi menjadi objek itu. Berikut adalah simbol-simbol yang ada pada diagram sequence : Tabel 2.3 Simbol Sequence Diagram (Rosa A.S.-M.Shalahuddin, 2011:138) Simbol Actor
Deskripsi 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
Top Package::nama aktor
Garis hidup / lifeline
menggunakan kata benda. Menyatakan kehidupan suatu objek
28
Objek
Menyatakan objek yang berinteraksi pesan
nama objek : nama kelas
Waktu aktif
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan
Pesan tipe create
Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat
<
>
Pesan tipe call
Menyatakan suatu objek memanggil operasi / metode yang ada pada objek lain atau dirinya
1 : nama_metode()
sendiri, arah panah mengarah pada objek yang memiliki operasi/metode, karena ini memanggil operasi/metode
maka
operasi/metode
yang
dipanggil harus ada pada diagram kelas sesuai dengan objek yang berinterksi
29
Pesan tipe send
Menyatakan
bahwa
suatu
objek
mengirim
data/masukan/ informasi ke objek lainnya, arah 1 : masukan
panah mengarah pada objek yang menerima kembalian.
Pesan tipe return
Menyatakan bahwa suatu objek yang telah menjalankan
1 : keluaran
suatu
operasi
atau
metode
menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian.
Pesan tipe destroy
Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang diakhiri, sebaiknya jika ada create maka ada
<<destroy>>
destroy.
X
30
Gambar 2.4 Contoh Sequence Diagram (Satzinger et al., 2009:435) Penomoran pesan berdasarkan urutan interaksi pesan. Penggambaran letak pesan harus berurutan, pesan yang lebih atas dari lainnya adalah pesan yang berjalan lebih dahulu. 2.6.4. Class diagram The class diagram is used to show classes of objects for a system (Satzinger et al., 2009: 187). Class Diagram adalah sebuah model statis yang menggambarkan kelaskelas (classes) dan hubungan antar kelas yang tetap konstan dalam sistem dari waktu ke waktu.
31
Diagram ini menggambarkan struktur sistem dari segi pendefinisian kelaskelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.
Atribut merupakan variabel-variabel yang dimiliki suatu kelas
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-
fungsi sesuai dengan kebutuhan sistem. 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 Kelas yang mendefinisikan dan mengatur tampilan ke pemakai.
Kelas yang diambil dari pendefinisian use case Kelas yang menangani fungsi-fungsi yang harus ada, diambil dari pendefinisian use case.
Kelas yang diambil dari pendefinisian data Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data.
Berikut adalah simbol-simbol yang ada pada diagram kelas :
32
Tabel 2.4 Simbol Class Diagram (Rosa A.S.-M.Shalahuddin, 2011:123) Simbol Kelas
deskripsi Kelas pada struktur sistem
nama_kelas -attribute +operation()
Antarmuka / interface
Sama dengan konsep interface dalam pemrogaman berorientasi objek
Nama_interface Asosiasi / association
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai multiplicity.
Asosiasi berarah / direction Relasi antar kelas dengan makna kelas yang satu association
digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multicplicity.
Generalisasi
Relasi antar kelas dengan makna generalisasispesialisasi (umum-khusus)
Kebergantungan
/ Relasi antar kelas dengan makna kebergantungan
dependency
antar kelas.
Agregasi / aggregation
Realsi antar kelas dengan makna semua bagian (whole-part).
33
Gambar 2.5 Contoh Class Diagram (Satzinger et al., 2009:412)
2.7.
Pengujian Perangkat Lunak Pengujian perangkat lunak adalah sebuah proses yang dikatakan sebagai
siklus hidup dan merupakan bagian dari proses rekayasa perangkat lunak secara terintegrasi demi memastikan kualitas dari perangkat lunak serta memenuhi kebutuhan teknis yang telah disepakati dari awal (Rizky, 2011 : 14). Sebuah perangkat lunak perlu dijaga kualitasnya, dimana kualitas bergantung pada kepuasan pelanggan (customer). Kualitas perangkat lunak perlu dijaga untuk keperluan sebagai berikut : a. Agar dapat beratahan hidup di dunia bisnis perangkat lunak b. Dapat bersaing dengan perangkat lunak yang lain. c. Penting untuk pemasaran global (global marketing).
34
d. Mengefektifkan biaya agar tidak banyak membuang perangkat lunak Karena kegagalan pemasaran dan produksi. e. Mempertahankan pelanggan dan meningkatkan keuntungan 2.7.1. Metode pengujian black box Pengujian black box adalah pengujian yang dilakukan untuk 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 (Rosa A.S.-M.Shalahuddin, 2011:213) Sistem merupakan “kotak hitam” yang perilakunya hanya dapat ditentukan dengan mempelajari input dan output yang berkaitan. Nama lain untuk cara ini adalah pengujian fungsional karena penguji hanya berkepentingan dengan fungsionalitas dan bukan implementasi perangkat lunak. Dengan black box analisis sistem akan memperoleh kumpulan kondisi dari input yang akan mengerjakan seluruh keperluan fungsional program. Tujuan metode pengujian Black Box ini untuk mencari kesalahan - kesalahan pada: 1.
Fungsi yang salah atau hilang
2.
Kesalahan pada interface
3.
Kesalahan pada struktur data atau akses database
4.
Kesalahan performasi
2.7.2. Metode pengujian white box Pengujian white box adalah pengujian perangkat lunak dari segi desain dan kode program apakah mampu menghasilkan fungsi-fungsi , masukan dan keluaran yang sesuai dengan spesifikasi kebutuhan. Metode ini dilakukan dengan spesifikasi kebutuhan. Pengujian kotak putih dilakukan dengan memeriksa logic dari kode program (Rosa A.S.-M.Shalahuddin, 2011:214)
35
Dengan menggunakan metode white box , akan dapat diperoleh test case yang : 1.
Menjamin seluruh independent path di dalam modul yang dikerjakan sekurang-kurangnya sekali.
2.
Mengerjakan seluruh keputusan logical.
3.
Mengerjakan seluruh loop yang sesuai dengan batasannya.
4.
Mengerjakan seluruh struktur data internal yang menjamin validasi.