BAB 2 TINJAUAN PUSTAKA 2.1. Hotel Hotel adalah usaha yang menggunakan suatu bangunan yang khusus disediakan, dimana setiap orang dapat menginap, makan serta memperoleh pelayanan dan fasilitas lainnya dengan melakukan pembayaran (BPS Propinsi Sultra, 2011). Hotel menyediakan serangkaian properti yang digunakan oleh setiap orang yang menginap dan pada saat yang sama akan memberikan keuntungan untuk pemilik hotel. Fungsi utama dari sebuah hotel yaitu menyediakan akomodasi penginapan. Sebuah hotel besar dikelola oleh pengelola umum dan komite pelaksana yang terdiri dari pelaksana penting yang mengepalai departmen utama. Pelaksana penting tersebut terdiri dari divisi direktur kamar, makanan dan minuman, pemasaran dan penjualan, sumber daya manusia, akuntan atau pengawasan dan teknisi atau fasilitas (Walker, 2010:122). Hotel dapat diklasifikasikan menurut lokasi, harga dan jenis layanan yang ditawarkan. Hal ini memungkinkan para tamu dapat membuat seleksi sesuai kriteria pribadi. Hotel yang berada di tengah kota, memenuhi kebutuhan orang-orang yang melakukan perjalanan untuk alasan bisnis maupun berlibur. Hotel yang berada di tengah kota memberikan penawaran yaitu hotel dengan kelas mewah, skala menengah, bisnis, ekonomi. Hotel yang berada di bandara merupakan salah satu klasifikasi yang memberikan kemudahan bagi para tamu dalam menyeleksi hotel. Hal ini mempermudah para tamu yang tiba di bandara dan berangkat dari bandara. Boutique hotels menawarkan pengalaman menginap yang berbeda dengan hotel besar lainnya. Boutique hotels memiliki arsitektur unik, gaya, ukuran dan dekorasi yang berbeda. Hotel konvensi menyediakan fasilitas dan memenuhi kebutuhan kelompok untuk menghadiri dan 7
8 mengadakan konvensi. Terlepas dari segmen pasar, hotel konvensi juga menarik para wisatawan musiman. Hotel konvensi memiliki banyak tempat serba guna di dalam maupun di sekitar komplek hotel (Walker, 2010:100). 2.2. Regresi Linier Ganda Regresi linier ganda menggambarkan hubungan antara satu variabel dependen dengan variabel penjelas sebanyak k ( regresi linier ganda, nilai dari variabel dependen
and
, 2012). Dalam
untuk n pengamatan dengan
variabel penjelas dapat ditulis seperti persamaan (2.1) (Hayter, 2012: 608). (2.1) Keterangan : yi
= variabel dependen pada pengamatan ke-i (i = 1, 2, ... , n)
β0
= konstanta
βk
= koefisien regresi ke –
xik
=
εi
= residual yang diasumsikan homoskedastisitas, tidak terdapat autokorelasi, dan
( = 1,2, … , p)
variabel penjelas ke- pada pengamatan ke-i (i = 1, 2, ... , n)
berdistribusi normal dengan mean nol dan variance σ 2 . Persamaan (2.1) di estimasi menggunakan model pada persamaan (2.2). (2.2) Uji signifikansi parameter regresi dilakukan dengan 2 cara, yaitu uji serentak dan uji parsial. 1.
Uji Serentak
9 Hipotesis yang digunakan dalam uji serentak sebagai berikut: H0 : β1 = β2 = ... = βk = 0 H1 : paling tidak ada satu Persamaan (2.3) merupakan statistik uji serentak. (2.3) Pengambilan keputusan adalah apabila Fhitung > Fα
(k, n-k-1)
dengan k adalah
parameter maka H0 ditolak pada tingkat signifikansi α. Artinya paling sedikit ada satu βk yang tidak sama dengan nol. Pengambilan keputusan juga dapat melalui p-value dimana H0 ditolak jika p-value < α. Tabel 2.1 Analysis Of Variance (ANOVA) Sumber
Degrees of freedom
Sum of
Mean
(Df)
Square
Square
Regresi
k
SSR
MSR
Residual
n-k-1
SSE
MSE
Total
n-1
SST
F-Statistic
MSR/MSE
p-value P(Fk,n−k−1 > F)
(2.5) (2.6) (2.7) (2.8) (2.9) p-value yang kecil dalam Tabel 2.1 menunjukkan bahwa variabel dependen berhubungan dengan setidaknya satu dari variabel penjelas (Hayter, 2012:612).
10 Persamaan (2.9) menunjukkan nilai proporsi variance variabel dependen yang dapat dijelaskan oleh variabel penjelasnya (Hill, Griffths and Lim, 2011:137).
11
2.
Uji Parsial
Uji parsial bertujuan untuk mengetahui apakah parameter tersebut telah signifikan atau tidak. Hipotesis yang digunakan untuk uji parsial adalah sebagai berikut: H0 : βk = 0 H1 : βk ≠ 0 Persamaan (2.4) merupakan statistik uji parsial. (2.4) Pengambilan keputusannya yaitu apabila |thitung| > t(1-α/2,n-k) atau p value < α maka H0 ditolak pada tingkat signifikansi α, artinya ada pengaruh 2.3.
terhadap model.
Uji Asumsi Klasik Dalam model regresi ganda, terdapat asumsi klasik yang diperlukan untuk
mendapatkan estimator Ordinary Least Squared (OLS) yang bersifat Best Linear Unbiased Estimator (BLUE). Dalam uji asumsi klasik, terdapat empat uji yang harus terpenuhi yaitu uji normalitas residual, uji autokorelasi residual, uji heteroskedatisitas residual dan uji multikolinearitas (Rosadi, 2011:71-75). 2.3.1. Uji Normalitas Residual Uji normalitas residual dilakukan untuk menguji apakah dalam model regresi, variabel penggangu atau residual memiliki distribusi normal. Uji statistik yang
12 digunakan untuk menguji normalitas residual adalah dengan uji statistik non-parametrik Kolmogorov-Smirnov (Priantinah dan kusuma, 2012). Hipotesis yang digunakan adalah: H0 : Residual berdistribusi Normal H1 : Residual tidak berdistribusi Normal Statistik uji yang digunakan yaitu (Hyter, 2012:717): (2.10) dan
(2.11)
Pengambilan keputusan adalah H0 ditolak jika
dimana q adalah nilai
berdasarkan Tabel Kolmogorov Smirnov. Selain itu juga dapat melalui p-value, dimana H0 ditolak jika p-value kurang dari α. 2.3.2. Uji Heteroskedastisitas Residual Uji heterokedastisitas residual bertujuan untuk menguji apakah model regresi terjadi kesamaan variance dari residual satu pengamatan ke pengamatan yang lain. Model
regresi
yang
baik
adalah
yang
homokedastisitas
atau
tidak
terjadi
heteroskedastisitas. Hipotesis yang digunakan adalah: H0 : residual variance konstan (homoskedastisitas) H1 : residual variance berubah-ubah (heteroskedastisitas) Untuk menguji heteroskedastisitas, dapat dilakukan dengan menggunakan uji Breusch-Pagan (BP) (Rosadi, 2011:73). Statistik uji yang digunakan yaitu: (2.12) Statistik BP berdistribusi
dengan derajat bebas k yang merupakan banyaknya
variabel penjelas, tidak termasuk konstanta.
13 Pengambilan keputusan adalah H0 ditolak jika
dimana
adalah nilai
berdasarkan tabel chi-square. Selain itu juga dapat melalui p-value, dimana H0 ditolak jika p-value kurang dari α.
14
2.3.3.
Uji Autokorelasi Residual Uji autokorelasi residual dilakukan untuk mengetahui residual bersifat
independen satu dengan yang lain. Pengujian yang dilakukan untuk menguji autokorelasi dapat menggunakan uji Durbin-Watson. Hipotesis yang digunakan adalah: H0 : Tidak autokorelasi residual pada variabel H1 : Terdapat autokorelasi residual pada variabel Statistik uji yang digunakan yaitu (Gujarati, 2003: 467): (2.13) Pengambilan keputusan jika
atau
tolak H0.
2.3.4.
Uji Multikolinearitas Uji Multikolinearitas bertujuan untuk menguji apakah terdapat korelasi antar
variabel penjelas pada model regresi. Model regresi yang baik adalah tidak terjadi korelasi
diantara
variabel
penjelas.
Untuk
mengetahui
suatu
model
terjadi
multikolinearitas, dapat digunakan matriks korelasi. Jika nilai korelasi antar variabel penjelas (
) melebihi 0,60 terdapat gejala multikolinieritas (Sunyoto, 2011:79).
Bentuk korelasi untuk matriks
sebagai berikut:
15 Dimana
dan
Selain itu, multikolinearitas juga dapat dilihat dari nilai tolerance atau l Variance Inflation Factor (VIF). Untuk pengambilan keputusan dalam menentukan ada atau tidaknya multikolinearitas yaitu dengan kriteria sebagai berikut: 1. Jika nilai VIF > 10 atau jika nilai tolerance < 0, 1 maka ada multikolinearitas dalam model regresi. 2. Jika nilai VIF < 10 atau jika nilai tolerance > 0, 1 maka tidak ada multikolinearitas dalam model regresi. Nilai VIF diperoleh dari persamaan (2.14) sebagai berikut (Asadi, Raoufa dan Nassiri, 2012): (2.14) Dimana: j adalah perwakilan dari variabel penjelas ke-j.
adalah koefisien determinasi untuk
regresi yang dibentuk antara variabel ke-j (variabel penjelas) sebagai variabel dependen. Ketika terdapat multikolinearitas, model regresi yang ditetapkan oleh metode OLS memiliki koefisien variabel yang stabilitasnya rendah sehingga hasil estimasi yang diperoleh tidak dapat digunakan dengan baik. Selain itu, kesimpulan yang diperoleh dari model regresi tidak sesuai (Yang, Biyun, and Ju, 2008). 2.4. Best Subset Regression Dalam pembuatan model regresi, tidak tertutup kemungkinan model awal yang diperoleh masih kurang optimal. Alasan pertama adalah terjadinya overspecified, yaitu terlalu banyak variabel yang dimasukan ke dalam model. Alasan kedua, model tidak
16 mengandung variabel yang tepat. Dan alasan ketiga, model tidak memiliki hubungan matematis yang benar (Freund, Wilson, and Sa, 2006). Terdapat beberapa metode untuk menyeleksi variabel penjelas yang layak masuk dalam model sehingga diperoleh model terbaik. Salah satu diantaranya yaitu Best Subset Regression (Hanum, 2011). Best Subset Regression mengidentifikasi model regresi terbaik yang dapat dibentuk dengan variabel penjelas. Selain itu, Best Subset Regression digunakan untuk mengklasifikasi model terbaik (Asadi, Raoufar and Nassiri, 2012). Metode ini merupakan cara yang efisien untuk mengidentifikasi model dalam mengestimasi variabel dependen dengan beberapa variabel penjelas (Nirmalraj dan Malliga, 2011). Best Subset Regression memulai pemilihan dengan model yang paling sederhana yaitu dengan satu variabel penjelas. Selanjutnya dilanjutkan dengan variabel penjelas lain satu per satu sampai didapat model yang memenuhi kriteria terbaik. 2.5. Statistik C-p Mallow Statistik C-p Mallow dikembangkan oleh Colin Mallows sebagai alat dalam menentukan estimasi untuk pengunaan jumlah variabel penjelas regresi. Statistik C-p Mallow membandingkan ketepatan dan bias dari model penuh dengan model subset terbaik dari jumlah variabel penjelas. Sebuah model dengan terlalu banyak variabel penjelas dapat menghasilkan model yang tidak tepat. Sedangkan untuk model dengan satu variabel penjelas terlalu sedikit sehingga dapat menghasilkan estimasi bias (Nirmalraj dan Malliga, 2011). Pada statistik C-p Mallow, model yang baik memiliki nilai statistik C-p Mallow mendekati jumlah parameter. Selain itu, diketahui juga model dengan nilai C-p Mallow yang kecil yang akan digunakan (Lindsey dan Sheather, 2010:650-669).
17 Untuk menilai kebaikan model, digunakan mean squared error (MSE) dengan varian dan biasnya. Persamaan (2.15) merupakan statistik C-p Mallow yang disarankan oleh Colin Mallow. C-p =
–
(2.15)
Dimana: MSE adalah rata-rata kuadrat residual untuk model penuh, SSE (p) adalah jumlah kesalahan kuadrat untuk model bagian yang mengandung p variabel penjelas, n adalah ukuran sampel. 2.6.
Regresi Ridge Regresi Ridge dapat digunakan untuk mengatasi korelasi yang tinggi antara
beberapa variabel penjelas. Regresi Ridge merupakan metode estimasi koefisien regresi yang diperoleh melalui penambahan konstanta bias c pada diagonal
. Nilai c untuk
koefisien regresi ridge diantara 0 hingga 1. Meskipun metode ini menghasilkan estimasi koefisien regresi yang berbias, estimator ini bisa mendekati nilai parameter yang sebenarnya (Ohyver, 2011). Pada regresi ridge, variabel x dan y merupakan matriks dari koefisien regresi standardized (Freund, Wilson, and Sa, 2011:216). Persamaan (2.16) merupakan model regresi koefisien yang telah di standardized. Nilai estimasi regresi ridge dapat diperoleh dari persamaan (2.17). (2.16) (2.17) Untuk memperoleh koefisien regresi standardized digunakan persamaan (2.18) sampai persamaan (2.23) (Ryan, 1997:9:113).
18 =
(2.18)
=
(2.19)
=
=
(2.20)
Dimana =
(2.21)
=
(2.22)
=
(2.23)
Dimana: = matriks korelasi,
= vektor korelasi, c = nilai antara 0-1, I = matrixs identitas.
Umumnya sifat dari estimasi ridge memiliki variance yang minimum sehingga diperoleh dari nilai VIF-nya yang merupakan diagonal utama dari matriks pada persamaan (2.24) (Nanang, 2009). Pemilihan nilai VIF digunakan dengan memilih nilai VIF yang mendekati nilai satu (Kutner, Nachtsheim, Neter, and Li, 2006:435). (2.24) Koefisien
regresi
,
…,
disebut
dengan
koefisien
regresi
standardized. Pengembalian estimasi koefisien regresi ke dalam persamaan (2.1) dilakukan dengan menggunakan hubungan dari persamaan (2.25) dan (2.26). (2.25) (2.26)
2.7. Bahasa Pemograman Java
19 Java dikembangkan oleh tim yang dipimpin oleh James Gosling di sun Microsystem. Awalnya disebut Oak, yang dirancang pada tahun 1991 untuk digunakan dalam chip tertanam dalam peralatan elektronik konsumen. Pada tahun 2005, berganti nama java, itu didesain ulang untuk mengembangkan aplikasi internet (Liang, 2011:32). Java adalah fitur lengkap yang pada umumnya merupakan bahasa pemrograman yang bertujuan untuk digunakan dalam mengembangkan kuat aplikasi mission-critical. Java layaknya C++ karena sama-sama bahasa pemrograman yang berorientasi objek dimana pemrogramannya yang menggunakan kelas (class) untuk membentuk objek. Java memungkinkan pengguna untuk mengembangkan dan menyebarkan aplikasi di internet untuk server, komputer desktop dan perangkat genggam kecil. Spesifikasi bahasa Java dan Java application program interface (API) menjelaskan standar bahasa java. Spesifikasi bahasa java merupakan definisi teknis dari bahasa yang mencakup sintaks dan semantik dari bahasa pemrograman java. Sedangkan Java API berisi kelas standar dan antarmuka untuk mengembangkan program java (Liang, 2011:34). Desain API untuk java GUI pemrograman adalah contoh penerapan object oriented principle yang sangat baik. Ketika java diperkenalkan, kelas GUI yang tergabung dalam sebuah perpustakaan dikenal sebagai Abstract Windows Toolkit (AWT). AWT digunakan secara baik untuk mengembangkan antarmuka pengguna grafis sederhana, tetapi tidak untuk pengembangan proyek lengkap GUI. Selain itu, AWT rentan terhadap bug platform yang spesifik. AWT komponen antarmuka pengguna digantikan oleh perpustakaan yang paling kuat, serbaguna, dan fleksibel yang dikenal sebagai komponen Swing. Komponen Swing tergambar langsung pada kanvas menggunakan kode java, kecuali untuk komponen subclass dari java.awt.window atau
20 java.awt.panel yang harus dipersiapkan menggunakan GUI asli pada platform tertentu (Liang, 2011:430).
21
2.7.1. NetBeans NetBeans merupakan sebuah proyek open-source yang sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan memiliki hampir 100 mitra (dan terus bertambah). Produk dasar NetBeans adalah NetBeans Integrated Development Environment (IDE) dan NetBeans Platform. NetBeans IDE merupakan sebuah lingkungan pengembangan untuk programmer menulis, mengompilasi, mencari kesalahan dan menyebarkan program. Netbeans IDE ditulis dalam Java - namun dapat mendukung bahasa pemrograman lain. Terdapat banyak modul untuk memperluas Netbeans IDE. Netbeans IDE adalah sebuah produk bebas dengan tanpa batasan bagaimana digunakan. NetBeans Platform merupakan sebuah fondasi yang modular dan dapat diperluas yang dapat digunakan sebagai perangkat lunak dasar untuk membuat aplikasi desktop yang besar (Anonim: 2013). 2.8. Rekayasa Perangka Lunak Rekayasa perangkat lunak merupakan disiplin ilmu (engineering discipline) yang berkaitan pada semua aspek dalam produksi perangkat lunak dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Dalam definisi ini, ada dua frase kunci. 1. Engineering discipline Para pekerja (engineer) menerapkan teori, metode, dan alat-alat mana yang sesuai. Namun, engineer menggunakannya secara selektif dan selalu mencoba untuk menemukan solusi-solusi untuk masalah bahkan ketika tidak ada teori dan metode yang berlaku.
22
2. All aspect of software production Engineer
perangkat
lunak
tidak
hanya
memperhatikan
proses
teknis
dari
pengembangan perangkat lunak. Hal tersebut juga mencakup kegiatan seperti manajemen proyek dan alat-alat pengembangan perangkat lunak, metode, dan teori untuk mendukung produksi perangkat lunak. Ada empat kegiatan mendasar yang umum untuk semua proses perangkat lunak. Kegiatan-kegiatan ini adalah: 1.
Spesifikasi perangkat lunak, di mana pelanggan mendefinisikan perangkat lunak yang akan diproduksi dan kendala pada operasi.
2.
Pengembangan perangkat lunak, di mana perangkat lunak ini dirancang dan diprogram.
3.
Validasi perangkat lunak, di mana perangkat lunak tersebut akan diperiksa untuk memastikan bahwa itu merupakan permintaan dari pelanggan.
4.
Evolusi perangkat lunak, di mana perangkat lunak tersebut dimodifikasi untuk mencerminkan perubahan pelanggan dan persyaratan pasar (Sommervile, 2011:7-9) Terdapat banyak proses model yang digunakan dalam rekayasa perangkat lunak.
Model
proses
ini
secara
terstruktur
menunjukkan
urutan
proses
dalam
pengembangan perangkat lunak. Model proses yang peneliti gunakan dalam penelitian ini adalah model waterfall. Model waterfall adalah model klasik yang bersifat sistematis yaitu berurutan dalam membangun perangkat lunak. Model proses Waterfall digunakan jika kebutuhan dari klien telah terdefinisi dengan jelas serta alur kerja yang akan dilakukan juga telah jelas. Langkah-langkah dalam membangun
23 perangkat lunak dengan model ini adalah sebagai berikut: 1.
Requirements analysis and definiton, yaitu mengumpulkan kebutuhan dengan lengkap lalu dianalisis dan didefinisikan.
2. System and software design,yaitu pengerjaan desain setelah semua kebutuhan telah dikumpulan. 3.
Implementation and unit testing,yaitu pengkodean menggunakan bahasa pemrograman yang sudah ditentukan.
4.
Integration and system testing,yaitu penyatuan unit-unit program kemudian dilakukan pengujian secara menyeluruh.
5. Operation and maintenance,yaitu mengoperasikan program dilingkungannya dan melakukan pemeliharaan (Sommervile, 2011:29-33)
Gambar 2.1 Waterfall Model Sumber: SoftwareEngineering (2011) 2.9.
Object Oriented Programming (OOP) Menurut Liang (2011:288) Object-oriented programming (OOP) melibatkan
24 pemograman menggunakan objek-objek. Objek merupakan sebuah entitas yang dapat diidentifikasi dengan jelas. Objek merepresentasikan perancangan software yang berorientasi objek dilakukan dengan membagi fungsi-fungsi berdasarkan pembagian tanggung jawab yang ditetapkan pada setiap class yang dibuat. Objek dari jenis yang sama didefinisikan menggunakan class umum. Class merupakan rancangan yang didefinisikan apa yang dimiliki dan apa yang dapat dilakukan oleh objek. Class java menggunakan variabel untuk menentukan data field dan metode untuk menentukan tindakan. Class juga menyediakan metode dengan tipe khusus yang dikenal sebagai konstruktor yang dipakai untuk membuat objek baru. Konstruktor harus memiliki nama yang sama sebagai class itu sendiri. Konstruktor diakses menggunakan keyword new. Contoh penggunaannya adalah sebagai berikut: Public class Circle1{ Public static void main(String[] args) { Circle1 circle1 = new Circle1(); System.out.println(“The area of the circle of radius” +circle1.radius+ ”is” +circle1.getArea()); } } Secara garis besar, suatu bahasa pemrograman dapat dikatakan sebagai Object Oriented Programming (OOP) apabila program tersebut mendukung konsep enkapsulasi (encapsulation), polimorfisme (polymorphism), dan pewarisan (inheritance). Selain konsep-konsep ini, ada beberapa konsep fundamental lainnya, seperti class, objek, dan
25 message.
26
2.10. Unified Modelling Language (UML) Pemodelan sistem adalah proses pengembangan model abstrak dari suatu sistem, dengan masing-masing model menyajikan pandangan berbeda atau perspektif sistem itu. Pemodelan sistem umumnya merepresentasikan sistem menggunakan beberapa jenis notasi grafis, yang sekarang hampir selalu didasarkan pada notasi dalam Unified Modeling Language (UML). UML adalah sebuah bahasa yang digunakan untuk menspesifikasikan, memvisualisasikan, membangun, dan mendokumentasikan artefak dari sistem software, begitu pula dengan model bisnis dan sisten non-software lain. UML secara universal diterima sebagai pendekatan standar untuk mengembangkan model sistem perangkat lunak. UML memiliki berbagai jenis diagram dan sebagainya mendukung terciptanya banyak berbagai jenis model sistem. Terdapat use case modeling, activity diagram, class diagram dan sequence diagram yang dapat mewakili suatu sistem. 2.10.1. Use Case Modeling Use case modeling adalah sebuah pendekatan yang memfasilitasi pengembangan yang berpusat pada pengguna. Terdapat dua bagian dalam use case modeling, yaitu use case diagram dan use case narrative (Whitten dan Bentley, 2007 p245). 1.
Use case diagram menggambarkan interaksi antara sistem, eksternal sistem dan pengguna. Berikut bagian-bagian dari use case diagram : a. Use Case Use case merupakan pengidentifikasi model dan penggambaran fungsi sistem. Use case digambarkan dalam bentuk elips mendatar yang memiliki keterangan pada bagian atas, bawah, atau dalam dari elips tersebut.
27
28
b.
Actor Actor adalah user yang akan berinteraksi dalam sistem dengan melakukan use case untuk bertukar informasi. Actor digambarkan dalam bentuk stick figure dengan label peran actor tersebut dalam sistem.
c.
Relationship Relationship adalah hubungan dari dua symbol dalam use case diagram yang digambarkan dalam bentuk garis.
Gambar 2.2. Contoh Use Case Diagram Sumber: (Whitten dan Bentley, 2007) 2.
Use Case Narrative merupakan salah satu bagian dari use case modeling yang berisikan rincian dari setiap event dan menerangkan bagaimana user berinteraksi dengan sistem selama event terjadi.
29
Gambar 2.3. Contoh Use Case Narrative Sumber: (Sommervile, 2011) 2.10.2. Activity Diagram Activity diagram digunakan untuk menggambarkan proses dari aktivitas dalam suatu sistem. Activity diagram fleksibel, dapat digunakan selama analisis dan desain (Whitten dan Bentley, 2007 p390). Terdapat beberapa notasi yang terlibat dalam activity diagram, diantaranya dapat dilihat pada Tabel 2.2. Tabel 2.2. Notasi-Notasi Activity Diagram Notasi
Keterangan
Notasi ini menggambarkan awal proses dari Initial Node
activity diagram
Notasi ini menggambarkan sebuah aktivitas yang jika
disusun
menggambarkan Actions activity diagram.
secara
keseluruhan
keseluruhan
aktivitas
akan dalam
30
Notasi ini menggambarkan jalannya aktivitas dalam activity diagram. Flow
Notasi ini menggambarkan keadaan bersyarat, yaitu decision dan merge. 1. Decision Satu aliran akan masuk ke dalam decision dan menghasilkan dua atau lebih aliran lainnya yang merupakan hasil pilihan dari kondisi yang ada. Decision/Merge
2. Merge Dua atau lebih aliran hasil dari decision akan masuk
ke
dalam
merge
dan
menggabungkannya menjadi satu aliran.
Notasi ini menggambarkan akhir proses dari Activity Final
activity diagram
31
Gambar 2.4. Contoh Activity Diagram Sumber: (Whitten dan Bentley, 2007) 2.10.3. Class Diagram Class diagram merupakan gambaran grafik struktur objek statis dari sistem dimana kelas objek menunjukkan bahwa sistem terdiri dari hubungan antar kelas objek. Pada sebuah kelas objek terdiri dari tiga elemen bagian yakni nama class, attribute, dan method. Attribute merupakan karakteristik dari suatu objek kelas dan method merupakan operasi/fungsi yang dapat dilakukan oleh kelas objek tersebut. Pada elemen
32 attribute dan method ada tiga visibility yang digunakan yakni public (+), private (-), dan protect (#). Visibility public menunjukkan attribute atau method dapat dipanggil oleh kelas objek yang lain. Visibility private menunjukkan attribute atau method hanya dapat dipanggil oleh class objek yang bersangkutan, sedangkan visibility protect menunjukkan hanya dapat dipanggil oleh class objek yang bersangkutan dan anak class objek yang mewarisinya. Terdapat keterikatan relasi, antara lain (Connolly & Begg, 2010: 385): Relasi One-to-One (1:1) Hubungan antara entitas yang paling banyak berpasangan dengan satu entitas saja. Relasi One-to-Many (1:*) Hubungan antar entitas di mana satu entitas dapat berhubungan dengan banyak entitas lainnya. Contohnya entitas A dapat berhubungan banyak dengan entitas B tetapi entitas B hanya dapat berhubungan dengan entitas A. Relasi Many-to-Many (*:*) Hubungan antar entitas di mana entitas C dapat berhubungan banyak dengan entitas D dan entitas D dapat berhubungan banyak dengan entitas C.
33
Gambar 2.5. Contoh Class Diagram Sumber: (Whitten dan Bentley, 2007) 2.10.4. Sequence Diagram Sequence diagram merupakan diagram yang menggambarkan interaksi antara aktor dan sistem pada skenario use case. Berikut adalah Tabel 2.3. yang menunjukkan notasi notasi yang ada dalam sequence diagram.
34
Tabel 2.3. Notasi-notasi Sequence Diagram Nama
Notasi
Fungsi Sebagai
1. Actor
sesuatu
yang
berinteraksi pada sistem. Dilambangkan dengan kotak
2. System : Name of System
yang
berisikan
nama
sistemnya. Tanda titik dua menunjukkan
urutan
pengerjaan pada sistem. Garis
3. Lifelines
4. Activation Bar
vertical
putus-putus
|
yang memanjang ke bawah
|
dari notasi aktor dan notasi
|
sistem, yang menunjukkan
|
urutan kehidupan sistem.
Bar/batang jalur
yang
melewati
hidup
yang
menunjukkan periode waktu ketika peserta aktif dalam interaksi. 5. Input Message
Digambarkan dengan anak panah
dari
aktor
menuju
35 sistem
yang
menunjukkan
adanya pesan/operasi yang masuk ke sistem. 6. Output Message
Digambarkan dengan anak panah putus-putus dari sistem ke aktor yang menunjukkan message
input
telah
dikerjakan pada sistem. 7. Receiver Actor
Aktor
lain
eksternal
atau
yang
sistem
menerima
pesan dari sistem utama.
8. Frame
Kotak yang menyertakan satu atau
lebih
pesan
untuk
membagi-bagi dari sebuah urutan
fragmen.
Didalam
kotak
tersebut
terdapat
fragmen ditunjukkan kurung siku.
opsional
yang
dalam
tanda
36
Gambar 2.6. Contoh Sequence Diagram Sumber: (Whitten dan Bentley, 2007)
2.10.5. Model-View-Controller Model-View-Controller (MVC) merupakan sebuah arsitektur perangkat lunak yang memisahkan antara logika aplikasi dari antarmuka penggunanya sehingga memungkinkan untuk pemeliharaan dan pengembangan secara independen. MVC memisahkan data aplikasi ( Model ) dari tampilannya ( View ) dan cara memprosesnya ( Controller ) (Taftazani, R dan Rochim, F, 2012).
Gambar 2.5. Contoh Model-View-Controller Sumber: (Sommervile, 2011)
37 2.11. Interaksi Manusia dan Komputer Interaksi manusia dan komputer adalah ilmu yang mempelajari bagaimana manusia berinteraksi dengan komputer dan pengaruh dari interaksi manusia dan komputer (Shneiderman et.al., 2010). Interaksi manusia dan komputer berhubungan dengan evaluasi antarmuka pemakai (user interface). Antarmuka pemakai adalah sebagian sistem komputer yang memungkinkan manusia berinteraksi dengan komputer. Menurut Haesen (2009), Storyboard adalah visualisasi ide dari aplikasi yang akan dibangun. Storyboard banyak digunakan untuk membangun sebuah websites, perangkat lunak, dan proyek media seperti iklan, film, dan lain-lain. Storyboard dapat membantu untuk mendefinisikan parameter pada sumber dan waktu yang tersedia, mengorganisir dan fokus pada cerita, mengetahui media apa yang baik digunakan untuk setiap cerita, dan memprediksi mas alah yang akan terjadi pada perangkat lunak. Storyboard terdiri dari scenes yang berkaitan satu sama lain dan urutan visualisasi di skenario narrative. Visualisasi ini membuat narrative story lebih terperinci dan jelas. 2.12. R-Language R-Language merupakan perangkat lunak yang tersedia di bawah persyaratan dari GNU General Public License Free Software Foundation dalam bentuk sumber kode. Perangkat lunak ini berjalan pada berbagai sistem operasi, termasuk Windows, Mac OS, UNIX, dan sistem serupa, termasuk FreeBSD dan Linux. R adalah bahasa dan lingkungan untuk komputasi statistik dan grafis, menyediakan berbagai macam metode statistik (analisis time series, model linier dan nonlinier, uji statistik klasik, dan sebagainya) dan teknik grafis (Cryer and Chan, 2004:423). R telah menjadi platform fleksibel dan kuat untuk melakukan analisis statistik. Untuk mendapatkan software ini, dapat mengunjungi situs web di www.r-project.org.
38 Sintaks R secara umum ekuivalen dengan perangkat lunak statistika komersial S+ untuk sebagian besar keperluan analisis statistika, pemograman dengan R hampir identik dengan pemograman S+ (Rosadi, 2011:2). Terdapat beberapa alasan lain untuk lebih memilih menggunakan R daripada perangkat lunak statistik lain nya yaitu dengan melihat kelebihan dari perangkat lunak R. Menurut Rosadi (2011:2-3), kelebihan dari R adalah: 1. Portabilitas Jika memilih perangkat lunak ini, pengguna bebas untuk mempelajari dan menggunakannya sampai kapan pun. 2. Multiplatform R merupakan sistem operasi multiplatform, lebih kompatibel daripada perangkat lunak statistika mana pun yang pernah ada. 3. Umum dan berada di barisan terdepan Berbagai metode analisis statistik (metode klasik maupun metode baru) telah diprogramkan ke dalam R-Language. Dengan demikian, perangkat lunak ini dapat digunakan untuk berbagai macam analisis statistika, baik pendekatan klasik maupun pendekatan statistika modern. 4. Dapat deprogram Pengguna dapat memprogramkan metode baru atau mengembangkan modifikasi dari fungsi-fungsi analisis statistika yang telah ada dalam sistem R. 5. Bahasa berbasis analisis matriks. R-Language sangat baik untuk melakukan pemograman dengan basis matriks. 6. Fasilitas grafik yang relative baik.