BAB 2 LANDASAN TEORI
2.1 Teori Umum 2.1.1 Pengertian Sistem Menurut pendapat Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010:6) Sistem adalah kumpulan komponen-komponen yang saling berkaitan yang berfungsi bersama untuk mencapai beberapa hasil. Menurut Marakas, G. M., O’Brien, J. A. (2013:25) Sistem adalah sekelompok komponen yang saling bekerja sama menuju tujuan bersama dengan menerima input dan menghasilkan output dalam proses transformasi yang terorganisir. Berdasarkan definisi diatas, dapat disimpulkan bahwa sistem adalah sekumpulan komponen yang saling berkaitan dan memiliki tujuan yang sama dengan mengubah input hingga menghasilkan output suatu proses.
2.1.2 Pengertian Informasi Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010, p.7), informasi adalah data yang dikumpulkan, disimpan, dan diproses untuk menghasilkan sesuatu yang bermanfaat bagi orang lain. Menurut Marakas, G. M., O’Brien, J. A. (2013:32) Informasi adalah data yang telah dikonversi ke dalam konteks yang berarti dan berguna bagi end user tertentu. Dengan demikian, data yang biasanya mengalami proses nilai tambah dimana (1) bentuk mereka dikumpulkan, dimanipulasi, dan diorganisir. (2) Konten mereka dianalisis dan dievaluasi. (3) Mereka ditempatkan dalam konteks yang tepat bagi pengguna. Jadi dapat diibaratkan data merupakan bahan baku yang dibutuhkan untuk membuat suatu ledakan dan informasi merupakan ledakan tersebut. Berdasarkan definisi diatas,
dapat disimpulkan bahwa
informasi adalah data yang sudah diolah dan dapat digunakan oleh para pengguna sesuai dengan kebutuhan yang bermanfaat untuk
11
12 proses pengambilan keputusan.
2.1.3 Pengertian Sistem Informasi Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:6) sistem informasi adalah kumpulan komponen-komponen yang saling berkaitan yang mengumpulkan, memproses, menyimpan, dan menyediakan sebagai keluaran informasi yang dibutuhkan untuk menyelesaikan tugas-tugas bisnis. Menurut Marakas, G. M., O’Brien, J. A. (2013:6) Sistem Informasi dapat berupa kombinasi yang terorganisir antara orang, perangkat keras, perangkat lunak, jaringan komunikasi, dan sumber daya yang terkumpul, berubah, dan menyebarkan informasi dalam sebuah organisasi. Manusia bergantung pada sistem informasi untuk melakukan komunikasi dengan peralatan fisik (hardware), instruksi pemrosesan informasi atau prosedur (software), jaringan komunikasi (network), dan data (data resources). Menurut R.Kelly Rainer dan Casey G.Cegielski (2011:54) Keuntungan dari sistem informasi untuk perusahaan yaitu: − IT will reduce the numbers of middle managers IT membuat manajer lebih produktif dan meningkatkan jumlah karyawan yang dapat melaporkannya kepada manajer. − IT will change the manager’s job Salah satu tugas manajer yang paling penting yaitu membuat keputusan. Banyak manajer telah melaporkan bahwa IT akhirnya dapat memberikan mereka waktu untuk bisa merasakan kerja di lapangan. Sekarang, manajer dapat mengumpulkan informasi untuk membuat keputusan lebih cepat dengan menggunakan mesin pencari dan intranet. Dampak kemungkinan lain pada pekerjaan manajer yaitu perubahan dalam persyaratan manajerial. Penggunaan itu mungkin
menyebabkan
organisasi
untuk
13 mempertimbangkan
kembali
kualitas
yang
mereka
inginkan dalam manajer yang baik. − Will My job be Eliminated Salah satu perhatian utama dari setiap karyawan baik yang full-time maupun yang part-time adalah keamanan pekerjaan.
Karena
kesulitan
ekonomi,
peningkatan
persaingan global, permintaan kustomisasi, meningkatkan tuntutan
konsumen,
banyak
perusahaan
telah
meningkatkan investasi mereka dalam bidang IT. Faktanya komputer memiliki kecerdasan dan kemampuan yang menguntungkan secara kompetitif sehingga dapat menggantikan SDM dengan mesin yang berkembang dengan pesat. − IT impact employees at work Internet dapat mendorong seseorang untuk melakukan aktivitas di dalam ruangan, seperti berbelanja atau bekerja sehingga dapat menyebabkan efek psikologis yang negatif, sehingga internet dapat memberikan pengisolasian bahkan lebih daripada komputer dan televisi. − IT provides Quality-of-life improvement IT dapat memberikan kepada karyawan yang dapat meningkatkan kualitas waktu senggang secara signifikan. IT juga menempatkan karyawan secara konstan sehingga mereka tidak benar-benar jauh dari pekerjaan mereka, bahkan ketika mereka berlibur. Berdasarkan uraian diatas, dapat disimpulkan sistem informasi merupakan sekumpulan komponen yang saling terkait yang berguna untuk mengumpulkan dan menyebarkan informasi dalam sebuah organisasi. Berdasarkan uraian diatas pula dapat disimpulkan bahwa sistem informasi memiliki banyak keuntungan terutama untuk menjalankan proses bisnis dengan baik.
14 2.1.4 Pengertian Data Menurut Thomas Connolly dan Carolina Begg (2010:70), data adalah komponen yang paling penting dalam DBMS, berasal dari sudut pandang end-user. Data bertindak sebagai jembatan yang menghubungkan antara mesin dengan pengguna.Selain sebagai komponen yang penting dalam sistem informasi. Menurut R.Kelly Rainer dan Casey G.Cegielski (2011:10), data merupakan elemen yang menggambarkan sesuatu, kejadian, aktivitas, dan transaksi yang direkam, diklasifikasikan dan disimpan tetapi tidak diatur untuk menyampaikan arti khusus. Berdasarkan definisi diatas, dapat disimpulkan data adalah sekumpulan kejadian atau aktivitas yang dikumpulkan kemudian diolah untuk menjadi sebuah informasi yang berguna. Data merupakan salah satu komponen penting dalam lingkungan Sistem Informasi.
2.1.5 Pengertian Database Menurut Thomas Connolly dan Carolina Begg (2010:65), Database adalah kumpulan data yang dibagi dan terhubung secara logikal dan deskripsi dari data yang dirancang untuk memenuhi kebutuhan informasi yang diperlukan oleh perusahaan. Penggunaan database memiliki beberapa keuntungan, antara lain: − Mengurangi ataupun menghilangkan duplikasi data − Meningkatkan integritas data − Memelihara sifat indepedensi data − Meningkatkan keamanan data − Memelihara konsistensi data − Data lebih mudah dimanipulasi − Data mudah digunakan dan diakses Berdasarkan definisi diatas, dapat disimpulkan bahwa database merupakan
kumpulan
dari
data
yang
disimpan
dan
saling
berhubungan dan data dapat diolah dan dimanipulasi, serta bisa ditampilkan dan diambil datanya untuk kebutuhan informasi.
15 2.1.6 Pengertian Analisis Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:4), analisis sistem adalah proses untuk memahami dan menspesifikasikan ke dalam detil sebuah sistem informasi apa yang harus dicapai. Pendekatan analisa sistem untuk memecahkan masalah: − Mencari dan memahami masalah − Berusaha untuk menyelesaikan masalah dengan biaya yang tepat − Mendefinisikan persyaratan untuk menyelesaikan masalah − Mengembangkan solusi yang menjadi alternatif − Memilih solusi yang terbaik dan membuat rekomendasi − Mendefinisikan rincian dari solusi yang terpilih − Mengimplementasikan solusi − Melakukan evaluasi dan monitoring untuk meyakinkan hasil sesuai dengan yang ingin dicapai. Menurut Whitten, J.L., Bentley, L.D. (2007:160), analisis sistem adalah teknik pemecahan masalah yang menguraikan sistem ke dalam komponen-komponen yang bertujuan untuk mempelajari dengan baik bagaimana bagian komponen tersebut bekerja dan berinteraksi untuk mencapai tujuan mereka. Sedangkan
dalam
dunia
e-business,
menurut
Chaffey
(2011:582), analisis untuk e-business berkaitan dengan memahami bisnis dan kebutuhan pengguna untuk sistem baru. Kegiatan analisis pun dapat dipecah menjadi dua bagian yaitu memahami proses saat ini, kemudian meninjau kemungkinan alternatif untuk menerapkan solusi terbaru. Berdasarkan definisi diatas, dapat disimpulkan bahwa Analisis Sistem adalah sebuah proses atau teknik pemecahan masalah yang dilakukan
dengan
cara
mempelajari
masalahnya,
penyebabnya hingga mendapatkan solusi yang baik.
tentukan
16 2.1.7 Pengertian Perancangan Menurut pendapat Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010:4) perancangan sistem adalah proses penentuan secara rinci bagaimana
banyak
komponen
dari
sistem
informasi
harus
diimplementasikan secara fisik. Menurut Whitten, J.L., Bentley, L.D. (2007:160), perancangan sistem adalah teknik pemecahan masalah yang saling melengkapi dengan analisis sistem yang menyusun kembali potongan komponen sistem ke suatu sistem yang lebih baik. Dalam proses ini mungkin melibatkan menambahkan, menghapus dan mengubah potongan relatif terhadap sistem asli. Menurut Chaffey (2011:594), untuk mewujudkan sistem yang baik, perancangan merupakan hal yang sangat penting karena proses perancangan menentukan bagaimana struktur sistem pada akhirnya. Berdasarkan definisi diatas, dapat disimpulkan bahwa Perancangan adalah proses mendesain sistem baru yang dilihat dari banyaknya masalah-masalah yang terjadi pada komponen-komponen dari sistem informasi.
2.1.8 Pengertian dan Tahapan Prototipe Menurut pendapat Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010:42), Prototipe adalah sebuah model kerja awal yang menunjukkan beberapa aspek dari sistem yang lebih besar. Untuk setiap prototipe, proses pembangunan mengikuti tahap berurutan melalui analisis, desain, konstruksi, pengujian, integrasi dengan komponen prototipe sebelumnya, dan perencanaan untuk prototipe berikutnya. Ketika merencanakan untuk prototipe berikutnya selesai, siklus kegiatan dimulai lagi. Menurut Whitten, J.L., Bentley, L.D. (2007:98), Prototipe merupakan skala kecil dari model kerja kebutuhan pengguna atau desain yang diusulkan untuk sistem yang akan dibuat. Sedangkan tekniknya disebut prototyping. Setiap prototipe yang dibuat dapat direvisi untuk dihilangkan fungsi atau fitur tertentu untuk menjadi sebuah implementasu yang baik.
17 Jadi dapat disimpulkan, bahwa Prototipe adalah suatu versi sistem yang dibuat oleh developer untuk memberikan contoh gambaran dari sistem yang akan dibuat.
2.1.9 Pengertian Internet Menurut Sebesta R.W (2011:27), Internet adalah sekumpulan komputer dan perangkat lainnya yang saling terhubung sehingga memungkinkan mereka untuk berkomunikasi satu sama lain. Menurut Hidayat (2010:1) Internet seolah menjelma menjadi bagian hidup masyarakat modern saat ini. Internet merupakan sumber informasi, berita, ilmu pengetahuan serta memungkinkan ketidak adanya batasan antar ruang dan waktu dalam berkomunikasi dengan berbagai orang di berbagai belahan dunia. Berdasarkan definisi diatas, dapat disimpulkan bahwa Internet merupakan
sebuah
jaringan
komputer
global
yang
dapat
mengabungkan jaringan pengguna di seluruh dunia untuk memberikan informasi yang diinginkan.
2.1.10 Website Menurut Sebesta R.W (2011:27), Website adalah kumpulan dari perangkat lunak dan protokol yang sudah melakukan instalasi pada komputer melalui internet. Menurut Hidayat (2010:2), Website dapat diartikan sebagai kumpulan halaman-halaman yang digunakan untuk menampilkan informasi teks, gambar diam atau gerak, animasi, suara, dan atau gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait, yang masing-masing dihubungkan dengan jaringan-jaringan halaman. Berdasarkan definisi diatas, dapat disimpulkan bahwa website adalah sebuah tempat dalam Internet yang menyajikan informasi dengan berbagai macam konten dan format seperti text, images, dan lain-lain.
18 2.1.10.1
Jenis-Jenis Website Menurut
Hidayat
(2010:3),
Seiring
dengan
berkembang pesatnya teknologi informasi sekarang ini, website pun juga mengalami perkembangan yang sangat berarti. Dalam pengelompokan jenis, web dapat dibagi menjadi beberapa jenis, yaitu bedasarkan fungsi, sifat atau style dan bahasa pemrograman yang digunakan. Berikut jenisjenis web: A. Jenis-jenis web bedasarkan sifat atau style: a. Website Dinamis, merupakan sebuah website yang menyediakan konten atau isi yang selalu berubah-ubah setiap saat. Bahasa pemrograman yang digunakan antara lain PHP, ASP, .NET dan memanfaatkan database MySQL atau MS SQL. b. Website
Statis,
merupakan
website
yang
kontennya sangat jarang berubah. Bahasa pemrograman yang digunakan adalah HTML dan belum memanfaatkan database. B. Berdasarkan pada fungsinya, website terbagi atas: a. Personal website, website yang berisi informasi pribadi seseorang. b. Commercial website, website yang dimiliki oleh sebuah perusahaan yang bersifat bisnis. c. Government website, website yang dimiliki oleh instansi pemerimtah, pendidikan, yang bertujuan
memberikan
pelayanan
kepada
pengguna. d. Non-profit Organization website, dimiliki oleh organisasi yang bersifat non-profit atau tidak bersifat bisnis. C. Ditinjau
dari
segi
bahasa
digunakan, website terbagi atas:
pemrograman
yang
19 a. Server
Side,
menggunakan
merupakan bahasa
website
yang
pemrograman
yang
tergantung kepada tersedianya server. Seperti PHP, ASP, .NET dan lain sebagainya. Jika tidak ada server, website yang dibangun menggunakan bahasa pemrograman di atas tidak akan berfungsi sebagaimana mestinya. b. Client
Side,
adalah
website
yang
tidak
membutuhkan server dalam menjalankannya, cukup diakses melalui browser saja. Misalnya, HTML.
2.1.10.2
Kriteria Website yang Baik Merujuk kepada “Nine Essential Principles for Good Web Design” yang dikembangkan oleh Collins Ta’eed (2007), terdapat Sembilan prinsip yang akan menentukan website tersebut baik atau tidak dari segi desain web. Sembilan prinsip tersebut meliputi: 1.
Precedence Precedence berarti tampilan desain website tersebut harus menarik dan mempunyai informasi yang baik. Ada 5 aspek yang diperhatikan dalam precedence: -
Posisi, akan mempengaruhi apa yang akan dilihat oleh user
-
Warna, kombinasi warna harus sesuai agar menarik dan menujukkan jati diri website tersebut
-
Kontras, buatlah hal-hal yang menonjol dengan kontras yang lebih baik
-
Ukuran, ukuran website yang sesuai dan ukuran konten isi informasi yang sesuai
2.
Elemen desain
Spacing Ruang jeda atau spasi di perlukan sebagai lahan istirahat antara satu konten dengan yang lainnya,
20 sehingga mata tidak mengalami kelelahan saat mengakses informasi yang tersedia. Tetapi ruang kosong yang terdapat dalam suatu website tidak disarankan. Ada 3 aspek yang harus diperhatikan mengenai spacing:
3.
-
Line Spacing
-
Padding
-
White Space
Navigation Elemen
–
elemen
mengarahkan
gerak
visual mata
yang sesuai
ada
mampu
dengan
arah
informasi dan komunikasi yang diharapkan. Ada 2 aspek yang harus diperhatikan: -
Navigation,
kemana
pengguna
bisa
pergi?
Buatlah navigation button yang mengarahkan arah kemana pengguna harus pergi. Contoh alternatifnya adalah penggunaan rollover. -
Orientation, Dimana pengguna sekarang? Hal ini sangat penting agar pengguna tahu sedang dimana Ia sekarang. Contoh alternatifnya adalah penggunaan Breadcrumb (navigation).
4.
Design to Build Yaitu menjamin bahwa semua elemen utama desain terdapat dalam website. Ada beberapa hal yang harus diperhatikan seperti apakah desain tersebut dapat benar-benar dilakukan? Apa yang terjadi jika ukuran layar dirubah? Dan beberapa hal lainnya.
5.
Typography Hal yang paling penting dalam sebuah konten website adalah font. Jenis huruf, ukuran huruf, paragraf, dan warna huruf sangat berpengaruh karena menentukan tingkat kenyamanan pengunjung untuk mendapatkan informasi yang ada.
21 6.
Usability Desain website bukan hanya semata – mata hanya bagus,
namun
sebaiknya
juga
harus
memiliki
kegunaan bagi pengguna, itu adalah yang paling penting agar informasi yang terkandung dapat memuaskan pengguna. 7.
Alignment Tulisan dalam website seharusnya rapi dan berada dalam garis yang lurus serta tertata rapi.
8.
Clarity Menciptakan desain yang tajam untuk website, misalnya dari segi pixel agar tampilan website terlihat jelas dan sempurna.
9.
Consistency Tampilan halaman website antara satu dengan yang lainya harus konsisten atau sama dari segi bentuk, warna, ukuran, elemen informasi atau peletakan konten agar tidak membingungkan pembaca dan terlihat professional.
2.1.10.3
Bahasa Pemrograman Website
2.1.10.3.1
HTML Menurut Markup
Chaffey
Language
atau
(2011:128), HTML
Hypertext
adalah
standar
internasional yang ditetapkan oleh World Wide Web Consortium untuk memastikan bahwa setiap halaman web yang ditulis sesuai dengan definisi dalam standar yang akan muncul sama di web browser. Menurut Sebesta R.W (2011:56), maksud asli dari HTML berbeda dengan bahasa teks-format lainnya yang menentukan semua rincian penyajian teks, seperti gaya font, ukuran dan warna. HTML dirancang untuk menentukan struktur dokumen pada tingkat yang lebih
22 tinggi dan lebih abstrak, karena dokumen HTML yang ditentukan, harus dapat ditampilkan pada berbagai sistem komputer menggunakan browser yang berbeda. Berdasarkan definisi diatas, dapat disimpulkan bahwa HTML adalah bahasa yang digunakan untuk menampilkan informasi pada halaman web. HTML menampilkan informasi dalam bentuk hypertext serta mendukung perintah-perintah yang dapat digunakan untuk mengatur tampilan informasi tersebut.
2.1.10.3.2
CSS Menurut Sebesta R.W (2011:112), style sheet adalah mekanisme sintaksis untuk menentukan gaya informasi
suatu
web.
Style
sheet
pertama
dispesifikasikan untuk digunakan dokumen XHTML, dan disebut sebagai Cascading Style Sheet (CSS1) yang dikembangkan pada tahun 1996 oleh W3C. Pada pertengahan tahun 1998, standar kedua dirilis yaitu CSS2. CSS2 menambahkan banyak properti dan nilai properti untuk CSS1 serta memperluas kontrol presentasi ke media lain selain web browser, seperti printer. Dan yang terakhir adalah CSS3 yang telah dikembangkan sejak akhir 1990-an. Menurut Welling, L., Thomson, L. (2009:858) Cascading
Style
Sheet
digunakan
untuk
lebih
menyempurnakan tampilan statis menjadi dinamis. Dengan menggunakan CSS memungkinkan developer untuk mengubah definisi tag, class atau ID, dalam satu dokumen (style sheet) dan memiliki perubahan yang berlaku di semua halaman yang memiliki link ke sheet tersebut CSS dapat mengendalikan gambar, warna bagian tubuh pada teks, warna tabel, ukuran border,
23 warna border, warna hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin kiri, kanan, atas, bawah, dan parameter lainnya. CSS adalah bahasa style sheet yang digunakan untuk mengatur tampilan
dokumen.
Dengan
adanya
CSS
memungkinkan kita untuk menampilkan halaman yang sama
dengan
format
yang
berbeda.
CSS
memungkinkan kita untuk menampilkan halaman yang sama dengan format yang berbeda. Berdasarkan definisi diatas, dapat disimpulkan CSS merupakan salah satu bahasa pemrograman web yang digunakan untuk mengendalikan tampilan web sehingga web menjadi lebih baik dan lebih menarik.
2.1.10.3.3
PHP Menurut Sebesta R.W (2011:45) PHP adalah bahasa server-side scripting yang dirancang khusus untuk aplikasi web. Kode PHP tertanam dalam dokumen XHTML, seperti halnya dengan Javascript. Namun, kode ini ditafsirkan pada server sebelum dokumen XHTML di request ke klien. Sebuah dokumen yang diminta, yang mencakup kode PHP akan diolah untuk menafsirkan kode PHP dan dimasukkan outputnya ke dalam dokumen XHTML. Browser tidak pernah melihat kode PHP yang tertanam dan tidak menyadari bahwa dokumen yang diminta awalnya termasuk kode tersebut. PHP memungkinkan akses sederhana
untuk
data
formulir XHTML,
sehingga dapat mengolah dengan mudah. PHP juga menyediakan dukungan banyak sistem manajemen database yang berbeda. Fleksibilitas membuat PHP menjadi bahasa yang sangat baik untuk pembuatan program yang membutuhkan akses Web ke database.
24 Menurut Welling dan Thomson (2009:2), PHP adalah bahasa server-side scripting yang dirancang untuk web. Dalam suatu halaman HTML, kode PHP dapat disisipkan yang kemudian akan di eksekusi setiap
kali
halaman
itu
dikunjungi.
PHP
diinterpretasikan pada server web dan mengeluarkan HTML atau output lainnya yang akan dilihat oleh pengunjung halaman itu. PHP berjalan pada sisi server sehingga PHP disebut juga sebagai bahasa Server Side Scripting.
Artinya
bahwa
dalam
setiap/untuk
menjalankan PHP, wajib adanya web server. PHP ini bersifat open source sehingga dapat dipakai secara cuma-cuma dan mampu lintas platform, yaitu dapat berjalan pada sistem operasi Windows maupun Linux. PHP juga dibangun sebagai modul pada web server apache dan sebagai binary yang dapat berjalan sebagai CGI. Kelebihan PHP diantaranya: a.
Performance PHP sangat cepat serta memiliki performa yang tinggi dan kinerja yang baik dalam melayani transaksi yang besar
b.
Scalability PHP
memiliki
"shared-nothing"
architecture. Ini berarti bahwa developer secara efektif dan murah dapat menerapkan skala horisontal dengan sejumlah besar server komoditas c. Database Integration PHP memiliki driver untuk berintegrasi dengan banyak DBMS seperti PostgreSQL, mSQL, Oracle dbm, FilePro, Hyperwave, InterBase, SyBase databases, dll.
25 d.
Built-in Libraries Karena
PHP
dirancang
untuk
pengembangan web, PHP memiliki fungsi library yang berlimpah untuk melakukan banyak tugas. e. Cost PHP merupakan basa pemrograman tak berbayar. Pengguna bisa mendownload kapan saja tanpa harus mengeluarkan biaya. f. Ease of Learning PHP PHP memiliki karakteristik yang sama dengan
bahasa
pemrograman
dasar
sehingga mudah dipelajari. g.
Object-Oriented Support Pada PHP 5 sudah mendukung penuh fitur yang ada pada object oriented seperti inheritance,
method,
constructor,
dan
destructor. h.
Portability PHP dapat dijalankan pada sistem operasi yang berbeda sepert UNIX, LINUX, dan Windows.
i. Flexibility of Development Approach PHP
mengizinkan
mengimplementasikan
developer
untuk
simple
task
menggunakan framework seperti Model View Controller (MVC) Berdasarkan definisi diatas, dapat disimpulkan PHP adalah bahasa pemograman yang berguna untuk membantu merancang suatu tampilan website yang dinamis dan dapat digabungkan dalam tag HTML.
26 2.1.10.3.4
Javascript Menurut Sebesta R.W (2011:44), Javascript adalah bahasa client-side scripting yang digunakan di Web
Programming.
memvalidasi
data
Javascript formulir
dan
digunakan untuk
untuk
membuat
dokumen XHTML dinamis. Kode Javascript biasanya tertanam dalam dokumen XHTML, yang di-download dari server web ketika mereka diminta oleh browser. Kode Javascript dalam dokumen XHTML ditafsirkan oleh browser klien. Salah satu aplikasi yang paling penting dari Javascript adalah untuk secara dinamis membuat dan memodifikasi dokumen. Javascript mendefinisikan hirarki objek yang cocok dengan model hirarkis dokumen XHTML. Unsur dokumen XHTML diakses melalui benda-benda ini, memberikan dasar untuk dokumen dinamis. Berdasarkan definisi diatas, dapat disimpulkan Javascript adalah bahasa naskah berorientasi objek pada web browser yang digunakan untuk menambah fungsi interaktif yang membuat aplikasi web menjadi dinamis.
2.1.10.3.5
JQuery Menurut Beighly (2010:8) JQuery adalah Open Source add-on pustaka Javascript yang menekankan pada interaksi antara Javascript dan HTML. JQuery merupakan kode Javascript yang telah ditulis, dan tinggal menambahakan satu atau dua koding untuk memanggil koding JQuery. JQuery banyak digunakan sebagai aplikasi untuk mempercantik tampilan suatu aplikasi web. JQuery memiliki banyak keuntungan, diantara lain adalah: − Mudah digunakan dan dipelajari. − Ringkas dan ringan.
27 − Tidak perlu me-reload 1 halaman untuk dijalankan. − Reusabillitas yang tinggi. − Lisensi bebas Dari penjelasan diatas, dapat disimpulkan bahwa JQuery merupakan library Javascript yang dapat digunakan untuk memudahkan pembuatan website. JQuery tidak sekedar sebagai framework Javascript, namun memiliki kehandalan dan kelebihan yang cukup banyak, sehingga menyebabkan banyak developer web menggunakannya.
2.1.10.3.6
MySQL Menurut
Sebesta
(2010:589),
MysQL
merupakan aplikasi basis data yang gratis, efisien, dan paling banyak digunakan. MySQL didistribusikan secara gratis dibawah lisensi GPL (General Public License). Menurut
Welling
dan
MySQL sangatlah cepat,
Thomson
kuat,
dan
(2009:3) merupakan
Relational Database Management Systems (RDBMS) yang memungkinkan Anda secara efisien untuk menyimpan,
mengurutkan
dan
mengambil
data.
MySQL server control dapat mengakses data Anda untuk memastikan bahwa beberapa pengguna dapat bekerja dengan itu secara bersamaan, dan untuk menyediakan akses cepat untuk itu serta untuk memastikan bahwa hanya pengguna yang berwenang yang dapat memperoleh akses. Oleh karena itu, MySQL
adalah
multiuser
dan
server
yang
multithreaded. MySQL juga menggunakan Structured Query Language (SQL), yaitu standar bahasa query database.
28 Menurut Welling dan Thompson (2009:8), MySQL memiliki banyak keunggulan diantaranya: a. Performance MySQL memiliki kecepatan proses yang lebih tinggi dibandingkan dengan produk perangkat lunak DBMS lainnya. b. Low Cost MySQL bersifat open source dan dapat diperoleh secara gratis. Namun MySQL menyediakan seri produk berlisensi dengan berbagai keunggulan yang bisa diperoleh dengan biaya yang rendah. c. Easy of Use MySQL menggunakan bahasa pemrograman basis data SQL yang digunakan di semua produk perangkat lunak DBMS lainnya. d. Portability MySQL dapat dioperasikan pada sistem operasi yang
berbeda
seperti
UNIX,
LINUX,
dan
Windows. e. Availability of Support Tidak semua produk open source menyediakan support, training, consulting dan certification, tetapi Anda dapat mendapatkan semua itu dengan menggunakan MySQL AB Dari penjelasan diatas, dapat disimpulkan bahwa MySQL merupakan aplikasi basis data yang dapat digunakan untuk menyimpan maupun mengambil data yang diinginkan.
2.1.11 Site Map Menurut Chaffey (2011:608) Site Map adalah penggambaran grafik dan tulisan dari hubungan antara kelompok yang berbeda dari konten pada website. Dengan adanya site map akan memudahkan user untuk menemukan informasi yang mereka inginkan dengan cepat.
29 Berdasarkan pengertian diatas, dapat disimpulkan bahwa site map merupakan penggambaran dari suatu website untuk memudahkan user menguasai website dengan cepat.
2.1.12 Interaksi Manusia dan Komputer Konsep utama dari Interaksi Manusia dan Komputer adalah bagaimana membuat sistem yang mudah dipelajari, digunakan, dan user friendly. Menurut Ben Shneiderman (2009:88), terdapat delapan aturan emas dalam perancangan interface, yaitu: 1. Strive for Consistency Dalam merancang sebuah interface harus konsisten dalam situasi yang sama. Warna, tata letak, kapitalisasi, font dan sebagainya harus digunakan secara konsisten. Begitu pula dengan prompt, menu, dan help screen, juga harus konsisten. 2. Enable Frequent Users to Use Shortcuts Dalam merancang sebuah interface, designer harus mengenali kebutuhan pengguna yang beragam jenisnya. Ada
baiknya
jika
menggunakan
shortcut
untuk
penggunaan berulang. Dimana designer menyediakan shortcut keys yang dapat mengurangi jumlah interaksi untuk menyelesaikan suatu tugas. 3. Offer Informative Feedback Dalam setiap aksi yang dilakukan pengguna harus dapat memberikan feedback yang informatif. Contohnya, ketika pengguna mengklik suatu button maka sebaiknya button tersebut berubah secara visual berupa tampilan pesan atau mengeluarkan suara tertentu. 4. Design Dialog to Yield Closure Urutan aksi harus tersusun jelas mana yang merupakan awal, tengah dan akhir suatu tugas. Feedback penyelesaian aksi yang inovatif, memberikan kepuasan pada operator
30 atau pengguna, perasaan lega, serta indikasi bahwa cara tersebut jelas mempersiapkan aksi berikutnya. 5. Offer Simple Error Handling Dalam merancang sistem, desainer harus memperkirakan yang memungkinkan pengguna tidak melakukan atau membuat kesalahan yang fatal. Jika pengguna membuat kesalahan, interface harus dapat mendeteksi kesalahan dan menawarkan
instruksi
sederhana
serta
bagaimana
pemulihannya. 6. Permit Easy Reversal of Actions Pengguna harus diberikan kebebasan terhadap pilihanpilihan yang ada. Oleh karena itu sebaiknya merancang interface yang dapat memberikan kesempatan kepada pengguna untuk membatalkan aksi yang dilakukannya. 7. Support Internal Locus of Control Pengguna harus merasa bahwa Ia berkuasa atas sistem, dan sistem selalu menuruti perintahnya. Dengan adanya pengaturan internal, pengguna dapat menggunakan sistem sesuai kebutuhan dengan memberikan user control untuk setiap aksi atau kegiatan yang dilakukan. 8. Reduce Short-Term Memory Load Kemampuan manusia dalam memproses informasi dalam jangka waktu pendek memiliki keterbatasan, sehingga diperlukan
rancangan
interface
yang
mengurangi
kemungkinan pengguna untuk mengingat key word pengerjaannya, misalnya dengan memberikan header.
2.2 Teori Khusus 2.2.1
Pengertian Pariwisata Menurut Undang - Undang Republik Indonesia No 10 Tahun 2009 Pasal 1 tentang Kepariwisataan, Pariwisata adalah berbagai macam kegiatan perjalanan yang dilakukan dengan mengunjungi tempat tertentu untuk tujuan rekreasi, pengembangan pribadi, atau
31 mempelajari keunikan daya tarik wisata yang dikunjungi dalam jangka waktu sementara, baik secara individu maupun kelompok, dan didukung oleh masyarakat, pengusaha, Pemerintah dan Pemerintah Daerah. Orang yang melakukan wisata disebut sebagai wisatawan. Menurut McCabe (2009:2), Pariwisata dapat didefinisikan sebagai jumlah hubungan yang timbul dari kegiatan orang yang bepergian ke tempat-tempat di luar lingkungan mereka selama tidak lebih dari satu tahun berturut-turut untuk bersantai, bisnis dan keperluan lainnya. Berdasarkan
uraian
diatas,
dapat
disimpulkan
bahwa
Pariwisata adalah kegiatan perjalanan terencana yang dilakukan dengan meninggalkan rumah dan mengunjungi satu tempat ke tempat yang lain guna untuk rekreasi, dan bersenang-senang. 2.2.1.1
Tujuan Pariwisata Menurut Undang - Undang Republik Indonesia No 10 Tahun 2009 Pasal 3 tentang Kepariwisataan, Pariwisata berfungsi untuk memenuhi kebutuhan jasmani, rohani, dan intelektual setiap orang dengan Selain itu, Pariwisata juga bertujuan untuk meningkatkan pendapatan negara serta meningkatkan kesejahteraan rakyat. Dan berdasarkan Undang - Undang Republik Indonesia No 10 Tahun 2009 pasal 4 tentang Kepariwisataan, menyebutkan bahwa tujuan pariwisata adalah untuk: - Meningkatkan pertumbuhan ekonomi - Meningkatkan kesejahteraan rakyat - Menghapus kemiskinan - Mengatasi pengangguran - Melestarikan alam, lingkungan, dan sumber daya - Memajukan kebudayaan - Mengangkat citra bangsa - Memupuk rasa cinta tanah air - Memperkukuh jati diri dan kesatuan bangsa, dan - Mempererat persahabatan antarbangsa
32 Jadi dapat disimpulkan bahwa pariwisata memiliki banyak sekali tujuan yang menguntungkan baik untuk diri sendiri maupun untuk negara. Untuk diri sendiri, pariwisata akan meningkatkan kebutuhan jasmani dan rohani. Sedangkan untuk negara, pariwisata akan meningkatkan pertumbuhan ekonomi agar tercapainya kesejahteraan rakyat.
2.2.1.2
Usaha Pariwisata Menurut Undang - Undang Republik Indonesia No 10 Tahun 2009 Pasal 1 tentang Kepariwisataan, Usaha Pariwisata adalah usaha yang menyediakan barang dan/atau jasa bagi pemenuhan
kebutuhan
wisatawan
dan
penyelenggaraan
pariwisata. Orang - orang yang melakukannya disebut sebagai Pengusaha Pariwisata. Menurut Undang – Undang Republik Indonesia nomor 10 tahun 2009 pasal 14 ayat 1 tentang Kepariwisataan, menyebutkan bahwa usaha pariwisata meliputi: a. Daya tarik wisata b. Kawasan pariwisata c. Jasa transportasi wisata d. Jasa perjalanan wisata e. Jasa makanan dan minuman f. Penyediaan akomodasi g. Penyelenggaraan kegiatan hiburan dan rekreasi h. Penyelenggaraan pertemuan, perjalanan insentif, konferensim dan pameran i. Jasa informasi pariwisata j. Jasa konsultan pariwisata k. Jasa pramuwisata l. Wisata tirta, dan m. Spa Berdasarkan uraian diatas, dapat disimpulkan bahwa usaha pariwisata merupakan hal yang penting karena usaha
33 pariwisata merupakan kunci untuk memenuhi kebutuhan para wisatawan.
2.2.1.3
Pemasaran Pariwisata Menurut Peraturan Pemerintah Republik Indonesia Nomor 50 Tahun 2011 Pasal 1 Tentang Rencana Induk Pembangunan Kepariwisataan Nasional, Pemasaran Pariwisata adalah
serangkaian
proses
untuk
menciptakan,
mengkomunikasikan, menyampaikan produk wisata dan mengelola relasi dengan wisatawan untuk mengembangkan Kepariwisataan dan seluruh pemangku kepentingannya. Menurut McCabe (2009:4) Pemasaran Pariwisata adalah kegiatan menciptakan kebutuhan untuk menekankan pesan yang menarik bagi konsumen mengenai suatu objek wisata, serta menjaga loyalitas wisatawan terhadap objek wisata tersebut. Berdasarkan uraian diatas, dapat disimpulkan bahwa Pemasaran Pariwisata adalah kegiatan untuk menciptakan kesan dan pesan menarik kepada wisatawan terhadap suatu objek wisata. Pemasaran Pariwisata merupakan hal yang penting karena merupakan salah satu komponen penting dalam pembangunan pariwisata nasional. Dan untuk mewujudkan pembangunan pemasaran pariwisata yang baik yaitu dengan cara
mengembangkan
pemasaran
dan
promosi
untuk
meningkatkan wisatawan dengan tema tertentu atau basis tertentu. Contohnya dengan website.
2.2.2
Modified Balanced Scorecard (mBSC) Menurut Stepchenkova et al. (2010:612), modified balanced scorecard (mBSC) merupakan salah satu instrumen yang paling dikenal dalam evaluasi website pariwisata. MBSC itu sendiri pertama dicanangkan oleh Morrison, Taylor, Morrison, dan Morrison (1999) yang kurang lebih dimodelkan berdasarkan
34 Balanced Scorecard (BSC) oleh Kaplan dan Norton (1992) yang digunakan untuk mengukur kinerja organisasi melalui 4 perspektif yaitu perspektif customer, perspektif financial, perspektif learning and growth, dan perspektif internal business processes. Keempat perspektif tersebut seimbang untuk mencapai tujuan organisasi. MSBC digunakan sebagai kerangka pengukuran kinerja yang seimbang antara kinerja sektor keuangan dan non keuangan, sehingga kinerja organisasi dapat diukur menjadi empat perspektif yaitu customer friendliness and usability (Customer), marketing effectiveness (Marketing Effectiveness), the level of information presented (Destination Information), dan technical functionality (Technical). Berikut penjelasan mengenai keempat perspektif tersebut: 1. Perspektif Customer Pada perspektif ini, kinerja website akan dievaluasi berdasarkan sudut pandang potensial pengunjung. Kriteria yang dinilai antara lain: tingkat aksesibilitas website, kemudahan dalam menjangkau website, kemampuan pengunjung untuk melakukan navigasi di dalam website, daya tarik website, informasi yang disediakan di dalam website dan kemudahan dalam menemukan informasi kontak. 2. Perspektif Marketing Effectiveness Pada perspektif ini, kinerja website akan dievaluasi berdasarkan sudut pandang efektifitas pemasaran sebuah website. Kriteria yang dinilai antara lain: usability, kemampuan untuk mengsegmentasikan kelompok wisatawan yang spesifik, brand yang direpresentasikan oleh website, kapasitas website untuk memperlihatkan produk yang tersedia, penciptaan relasi atau skema database marketing, partnership dan seberapa banyak value yang ditawarkan. 3. Perspektif Destination Information Pada perspektif ini, kinerja website akan dievaluasi berdasarkan sudut pandang yang menggambarkan kebutuhan informasi apa yang diperlukan oleh customer, termasuk
35 kebutuhan informasi umum mengenai destinasi wisata tersebut. Kriteria yang dinilai antara lain: atraksi, event, dan festival, fasilitas, transportasi dan infrastruktur, informasi umum mengenai perjalanan, kepatuhan hukum, informasi meeting point, informasi spesifik untuk wisatawan profesional dan informasi untuk media. 4. Perspektif Technical Dalam jurnalnya, pada perspektif ini, Stepchenkova mengevaluasi kinerja website menggunakan dua layanan eksternal yaitu NetMechanic.com dan LinkPopularity.com. NetMechanic digunakan untuk memeriksa jumlah broken link, kode HTML untuk penggunaan tag yang buruk, kesalahan bahasa, kecocokan website dengan berbagai browser, dan keseluruhan waktu load. Sedangkan LinkPopularity.com digunakan untuk melihat seberapa banyak hubungan website yang dimiliki. Menurut Suroto Adi (2014:624), untuk mengevaluasi kinerja penggunaan teknologi web dalam sektor pariwisata dapat dilakukan menggunakan
modified
balanced
scorecard
(mBSC)
dengan
variabilitas 4 indikator perspektif, yaitu (1) Perspektif pengguna, yaitu evaluasi yang dilakukan dengan melihat apakah informasi yang disajikan berguna dan menarik, (2) Perspektif Efektivitas Pemasaran, yaitu evaluasi yang dilakukan dengan melihat apakah informasi yang dihasilkan untuk mendukung promosi dan pemasaran, (3) Perspektif Fungsi Organisasi, yaitu evaluasi yang dilakukan dengan melihat apakah informasi dalam website mencerminkan fungsi organisasi, dan (4) Perspektif Teknis, yaitu merupakan evaluasi fungsi teknis website secara keseluruhan. Berdasarkan uraian diatas, dapat disimpulkan bahwa modified balanced scorecard (mBSC) adalah perkembangan dari balanced scorecard, yang dapat digunakan sebagai kerangka dalam pengukuran kinerja sistem.
36 2.2.3
Rata-Rata (Mean) Menurut
Trihendradi
(2013:41),
rata-rata
atau
mean
merupakan jumlah dari nilai-nilai yang dibagi dengan jumlah nilai individu dengan rumus sebagai berikut:
=
atau µ =
Keterangan: = nilai rata – rata suatu sampel
µ
= nilai rata – rata suatu populasi = jumlah dari nilai individu
n
= banyaknya nilai individu suatu sampel
N
= banyaknya nilai individu suatu populasi nilai varian dan standar deviasi pada dasarnya adalah mencari nilai rata – rata deviasi.
2.2.4
Simpangan Baku (Standard Deviation) Menurut Trihendradi (2013:48), pada dasarnya simpangan baku berguna untuk mencari nilai rata-rata deviasi. Deviasi adalah perbedaan nilai antara nilai data individu, dengan nilai rata-ratanya. Nilai deviasi tidak langsung dijumlah total, tetapi dikuadratkan terlebih dahulu. Saat menghitung nilai standar deviasi, hal yang harus diperhatikan adalah darimana data itu berasal. Apakah berasal dari sampel atau berasal dari populasi. Bila datanya berasal dari sampel, maka akan menggunakan denumenator n-1, dan jika datanya populasi, maka akan menggunakan N.
Keterangan: xi
= nilai
n
= banyaknya data = rata-rata
37 2.2.5
Integrasi Sistem Menurut Juric et al. (2007:1), Sekarang ini integrasi sistem antar perusahaan yang berbeda menjadi sangat penting. Kebutuhan informasi up-to-date yang dapat diakses dari (hampir) di mana-mana, dan berkembang pesatnya e-business, mengharuskan developer untuk mencari solusi yang baik dalam mengintegrasikan sistem karena integrasi memiliki banyak jenis, arsitektur, bahasa pemrograman dan platform yang beragam.
2.2.5.1
Jenis-Jenis Integrasi Menurut Juric et al. (2007:25), jenis integrasi dapat dibagi menjadi lima, yaitu a. Data-Level Integration Integrasi Level Data berfokus pada perpindahan antar aplikasi dengan tujuan membagi data yang sama ke beberapa aplikasi yang berbeda. Dari sudut pandang teknis, integrasi ini merupakan integrasi yang paling sederhana karena memiliki beberapa tools yang memudahkan dan mempercepat sharing data. Selain itu, integrasi ini tidak memerlukan perubahan aplikasi.
Gambar 2.1 Integrasi Level Data Juric et al. (2007:25) Masalah dalam integrasi ini terletak pada kompleksitas database dan jumlah data. Teknologi untuk memindahkan data antar database saat ini
38 masih belum begitu dikenal. Kemudian, kita harus memahami data apa yang disimpan dan dimana data tersebut disimpan, kapan dan bagaimana data diekstrak serta harus mengerti jenis dan struktur database tujuan. b. Application Integration Integrasi Aplikasi berfokus pada sharing fungsionalitas logika bisnis bukan hanya data murni seperti Integrasi Level Data. Integrasi ini biasanya dicapai
melalui
Programming
penggunaan
Interfaces
(API).
Application Aplikasi
yang
mengekspos fungsionalitasnya melalui API dapat diakses fungsionalitasnya secara programatik tanpa menggunakan User Interface. Tujuan integrasi aplikasi ada dua, yaitu memahami dan menggunakan API untuk mengakses fungsionalitas yang diperlukan, serta untuk menutupi perbedaan antar teknologi yang digunakan untuk API.
Gambar 2.2 Integrasi Aplikasi Juric et al. (2007:27)
39 c. Business Process Integration Integrasi
Proses
Bisnis
memungkinkan
dukungan proses bisnis dalam enterprise dimana solusi yang ada merupakan bagian dari langkah proses bisnis. Integrasi ini mengekspos fungsionalitas sebagai
abstraksi
dari
metode
bisnis
melalui
interface. Integrasi ini juga menampilkan sistem informasi enterprise seperti yang diinginkan atau seperti yang akan dibangun dengan kebutuhan yang jelas untuk apa sistem terintegrasi. Aplikasi yang sudah ada akan dimodelkan ulang dengan cara yang dapat mengekspos fungsionalitas lapisan proses bisnis dan sesuai dengan arsitektur modern. Dan pada akhirnya potongan-potongan yang berbeda akan direkatkan bersama menggunakan permodelan proses bisnis
dan
execution
language
seperti
BPEL
(Business Process Execution Language).
Gambar 2.3 Integrasi Proses Bisnis Juric et al. (2007:28) SOA, BPEL dan teknologi terkait menyediakan kesempatan baru untuk membuat sistem informasi terintegrasi menjadi lebih fleksibel dan dapat beradaptasi dengan perubahan proses bisnis. Dengan integrasi ini akan disediakannya dukungan yang lebih
40 baik dan lebih dekat dengan kebutuhan bisnis sehingga sistem informasi akan menjadi lebih kokoh. d. Presentation Integration Setelah mencapai integrasi proses bisnis, biasanya dilanjutkan dengan integrasi presentasi. Sebab aplikasi yang ada sekarang dimodelkan dan dibungkus pada lapisan tengah (middle sedangkan
yang
mengekspos
service
tier),
melalui
interface level tinggi. Integrasi ini menghasilkan sistem
terintegrasi
yang
menyediakan
lapisan
presentasi yang menyatu, yang melalui ini pengguna dapat mengakses fungsionalitas dari sistem yang terintegrasi. Karena menggunakan lapisan presentasi yang dibangun baru, pengguna tidak akan menyadari keragaman aplikasi yang ada yang mengeksekusi di balik sistem. Lapisan presentasi juga mengakses fungsi melalu interface umum, yang disediakan oleh lapisan bisnis (yang telah dikembangkan pada integrasi proses bisnis). Integrasi presentasi dipertimbangkan sebagai langkah definisi dan implementasi dari user interface umum dari sebuah portal untuk sistem informasi. Juga dipertimbangkan sebagai cara mengekstrasi data dari aplikasi yang ada melalui user interface. e. Business to Business Integration Saat ini integrasi pada aplikasi dalam suatu perusahaan
tidaklah
cukup.
kebutuhan
pertumbuhan
Saat
yang
ini
terdapat
memungkinkan
integrasi antar perusahaan, yang sering disebut sebagai integrasi B2B. Kebutuhan saat ini tidaklah lagi sekedar melakukan publish catalog offline pada halaman web. Tetapi yang diharapkan adalah selalu online dan up-to-date.
41 Salah satu prasyarat untuk membangun ebusiness yang efisien adalah sebuah sistem enterprise yang terintegrasi pada level proses bisnis. Hanya saja perbedaannya
adalah
pada
integrasi
ini
memungkinkan pemrosesan request secara ondemand. Pelanggan saat ini mengharapkan respon sesegera mungkin dan tidak puas dengan pemrosesan batch and delay beberapa hari untuk konfirmasi order atau sekedar ingin bertanya mengenai produk tertentu. Respon yang cepat, yang diraih melalui integrasi
dari
sistem
back-end
(enterprise
information) dan front-end (presentation) merupakan kunci faktor yang sukses.
2.2.5.2
Service Oriented Architecture Menurut Juric et al. (2007:57), Service Oriented Architecture (SOA) adalah enterprise architecture dimana aplikasi dirancang untuk menyediakan layanan yang dapat digunakan untuk integrasi bisnis. SOA memiliki dua kunci, yaitu service dan architecture. Service pada dasarnya merupakan pandangan luar aplikasi dalam organisasi TI, dimana setiap aplikasi menyediakan "business services" yang diperlukan untuk mengakses dari aplikasi lain. Sedangkan architecture
adalah
pendekatan
organisasi
luas
untuk
"menggunakan" jasanya. SOA memiliki mekanisme sederhana untuk
menggunakan
access-interface
untuk
Integrasi
Enterprise. Arsitektur ini memiliki kekuatan utama yaitu komponen atau service tersebut dibangun dan berinteraksi satu sama lain secara bebas dan lepas. Selain itu, SOA juga memberikan stabilitas, scalable, serta infrastruktur yang baik untuk perusahaan dalam hosting dan akses layanan dengan tingkat yang diperlukan kualitas layanan. SOA memerlukan services, service consumption, dan infrastructure untuk memanggil services dari client, memerlukan middleware
42 infrastructure untuk mengirimkan request ke server, dan membutuhkan service container untuk meng-execute services tersebut. Menurut
Shahzadam
et
al.
(2008:245),
SOA
merupakan solusi yang dapat digunakan untuk menyelaraskan teknologi informasi dengan tujuan bisnis. Dengan mengadopsi SOA akan dapat membawa ke arah keseragaman dalam departemen TI/SI yang dapat pula membawa pada peningkatan penggunaan sumber daya luar perusahaan. SOA merupakan arsitektur
yang
memungkinkan
perusahaan
untuk
meningkatkan fleksibilitas dan kelincahan. Tetapi untuk mencapai keunggulan ini, organisasi harus merangkul SOA sebagai perubahan gaya hidup. SOA adalah cara baru untuk merancang sistem, dan teknologi ini menunjukkan arah baru kepada para pengguna untuk berpikir secara berbeda tentang proses bisnis. SOA membutuhkan pola pikir yang berbeda, dan itu membutuhkan disiplin. Untuk meningkatkan peluang untuk sukses, sebuah organisasi harus membangun disiplin melalui program pemerintahan yang kuat. Di samping meningkatkan fleksibilitas dan kelincahan, SOA dapat mengaktifkan manfaat sebagai berikut: a. Mengurangi Biaya Kebanyakan manfaat SOA sulit untuk diukur, tetapi
sejumlah
organisasi
telah
mampu
menunjukkan penghematan biaya yang signifikan melalui penggunaan SOA. b. Mengurangi Redundansi Salah satu tujuan utama dari SOA adalah untuk melaksanakan fungsi sekali dan menggunakannya kembali di semua aplikasi yang membutuhkannya. Sebuah inisiatif SOA dapat membantu organisasi mengidentifikasi fungsi berlebihan dan menghindari duplikat aplikasi.
43 c. Konsistensi, keamanan, dan penyesuaian yang lebih baik Jika aturan bisnis diimplementasikan dalam layanan, maka semua aplikasi yang menggunakan layanan ini akan menerapkan aturan bisnis secara konsisten. Manfaat ini dapat sangat berguna ketika mengimplementasikan aturan yang sangat berat, seperti yang terkait dengan keamanan dan peraturan hukum. d. Peningkatan
kepuasan,
produktivitas,
efisiensi,
efektivitas SOA memungkinkan akses ke data atau fungsi apapun kepada aplikasi membutuhkan. Oleh karena itu, service-oriented applications harus mendukung proses bisnis yang lebih efektif, dan juga, serviceoriented
applications
harus
meningkatkan
pengalaman pengguna. Untuk aplikasi internal, pengalaman pengguna yang lebih baik akan membuat karyawan lebih produktif dan efisien. Untuk aplikasi eksternal, pengalaman pengguna yang lebih baik akan meningkatkan kepuasan pelanggan. Berdasarkan uraian diatas dapat disimpulkan bahwa Service Oriented Architecture (SOA) merupakan arsitektur yang memungkinkan dua atau banyak perusahaan untuk saling mengintegrasikan data untuk mendukung proses bisnis mereka.
2.2.5.3
Enterprise Service Bus Menurut Juric et al. (2007:45), Enterprise Service Bus (ESB) adalah infrastruktur software yang bertindak sebagai lapisan perantara (middleware). ESB memungkinkan untuk menghubungkan services yang diimplementasikan dalam teknologi yang berbeda (seperti EJBs, messaging systems, CORBA components, dan legacy applications) dengan cara
44 yang mudah. ESB berfungsi untuk menambah fleksibilitas komunikasi dan kendali atas penggunaan layanan yang mencakup: a. Kemampuan menangkap pesan, yang memungkinkan untuk menangkap pesan request untuk layananlayanan dan pesan response dari layanan, serta memberikan pemrosesan tambahan. Dengan cara ini, ESB dapat bertindak sebagai intermediary. b. Kemampuan routing, yang memungkinkan ESB melakukan routing pesan ke layanan-layanan yang berbeda didasarkan pada isi (content), asal, atau atribut lain. c. Kemampuan
transformasi,
yang
memungkinkan
transformasi pesan sebelum dikirimkan ke layananlayanan. Untuk pesan format XML, transformasi semacam
ini
(Extensible
dilakukan
menggunakan
XSLT
Stylesheet
Language
for
Transformations) atau XQuery engine. d. Kendali atas deployment, usage, dan maintenance layanan-layanan. Hal ini memungkinkan adanya logging, profiling, load
balancing,
penggunaan
performance
tuning,
layanan-layanan,
ongkos
distributed
deployment, on-the-fly reconfiguration, dsb. e. Fitur manajemen lain yang mencakup definisi korelasi antar pesan, definisi path komunikasi yang handal, definisi security constraints yang berkaitan dengan pesan services. Menurut Binildas (2008:16), ESB merupakan sebuah pola arsitektural untuk SOA. ESB adalah kumpulan layanan middleware
yang
menyediakan
kemampuan
integrasi.
Middleware Services ini merupakan jantung dari ESB yang menempatkan
pesan
untuk
dapat
diroutekan
dan
45 ditrasnformasikan. Aplikasi melakukan koneksi ESB melalui intelligent conncetors. Konektor ini abstrak karena hanya mendefinisikan transport binding protocols dan service interface, bukan merupakan rincian implementasi nyata. Konektor ini intelegent karena mempunyai logic built-in pada ESB untuk melakukan binding service secara selektif pada saat runtime. Kemampuan ini meningkatkan kecerdasan untuk aplikasi dengan menggunakan late binding dari service dan melakukan penundaan pilihan service. Menurut Binildas (2008:16), Pendekatan services bus untuk integrasi menggunakan teknologi yang menyediakan bus untuk integrasi aplikasi. Aplikasi yang berbeda tidak akan berkomunikasi secara langsung satu sama lain, melainkan mereka akan berkomunikasi melalui backbone middleware SOA ini. Fitur yang paling membedakan ESB dengan lainnya adalah sifat terdistribusi dari topologi integrasi. Kebanyakan solusi ESB didasarkan pada Web Services Description Language (WSDL) dan menggunakan format Extensible Markup Language (XML) untuk terjemahan dan transformasi pesan.
Gambar 2.4
Enterprise Service Bus
Binildas (2008:16)
46 Menurut Binildas (2008:16), Fitur dan fungsionalitas utama yang didukung ESB: a. Addressing dan routing b. Synchronous dan asynchronous style c. Multiple transport dan protocol bindings d. Content transformation and translation e. Business process orchestration f. Event processing g. Adapters untuk berbagai platform h. Integration
of
design,
implementation,
dan
deployment tools i. QOS
features
like
transactions,
security,
dan
persistence j. Auditing, logging, dan metering k. Management and monitoring Menurut Utomo, W.H., Wellem, T. (2014:369), ESB memiliki beberapa kelebihan yaitu yang pertama saat terjadinya masalah ketidak cocokan antar protokol komunikasi yang digunakan antara pemakai layanan dan penyedia layanan. Hal itu dapat menyebabkan pemakai layanan tidak dapat melakukan permintaan layanan yang disediakan oleh penyedia layanan. Tetapi dengan adanya ESB dapat mengatasi masalah ini dengan menyediakan fasilitas untuk mengkonversi sebuah protokol transport/komunikasi ke dalam protocol lain yang diperlukan. Misalnya fasilitas ini akan mentransformasikan protokol HTTP ke dalam protokol SMTP. Melalui fasilitas ini, aplikasi dapat saling berkomunikasi walaupun protokol antara pemakai layanan dan penyedia layanan tidak sama. Kemudian, yang kedua berkaitan dengan ketidaksesuaian antara format pesan yang digunakan oleh pemakai layanan dan penyedia layanan. Masalah ini dapat dipecahkan oleh ESB yang menyediakan fasilitas untuk melakukan transformasi format pesan yang digunakan oleh penyedia layanan maupun pemakai
47 layanan. Misalnya, fasilitas ini dapat melakukan transformasi pesan SOAP ke dalam format lain berbasis XML. Berdasarkan uraian diatas, maka dapat disimpulkan bahwa ESB adalah infrastruktur software yang bertindak sebagai middleware antar penyedia layanan dengan pemakai layanan
dan
dapat
menghubungkan
layanan
yang
diimplementasikan dalam teknologi yang berbeda.
2.2.6
Object-Oriented Analysis Design (OOAD) Menurut Whitten, J.L., Bentley, L.D. (2007:25), ObjectOriented Analysis and Design (OOAD) merupakan sebuah kumpulan alat dan teknik untuk pengembangan sistem yang akan memanfaatkan object technologies untuk membangun sistem dan perangkat lunak. OOAD sangat terkait dengan dua hal yaitu Object Oriented Analysis (OOA) dan Object-Oriented Design (OOD). Menurut Whitten, J.L., Bentley, L.D. (2007:370), ObjectOriented Analysis (OOA) merupakan pendekatan yang digunakan untuk mempelajari objek yang ada untuk melihat apakah mereka dapat digunakan kembali atau diadaptasikan untuk penggunaan lain serta digunakan untuk mendefinisikan objek baru serta merubah objek yang akan digabungkan dengan objek lain yang telah ada menjadi aplikasi bisnis berbasis komputer yang berguna. Sedangkan Menurut Whitten, J.L., Bentley, L.D. (2007:648) Object-Oriented Design (OOD) merupakan pendekatan yang digunakan untuk memperinci solusi sistem yang dipandang dari objek yang berkolaborasi, atribut objek dan klasifikasi dari objek tersebut. Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010:60), Object Oriented Analysis (OOA) adalah suatu cara untuk menentukan seluruh tipe objek yang bekerja di dalam sistem dan menggambarkan interaksi user yang dibutuhkan untuk menyelesaikan tugas-tugas. mendefinisikan
Sedangkan semua
Object-Oriented tipe
objek
yang
Design diperlukan
(OOD) untuk
berkomunikasi dengan orang dan perangkat di dalam sistem, menunjukkan bagaimana objek berinteraksi untuk menyelesaikan
48 suatu tugas, dan menyempurnakan definisi masing – masing tipe objek
sehingga bisa diimplementasikan dengan bahasa dan
lingkungan yang spesifik.
2.2.6.1
Tahapan Object-Oriented Analysis Design (OOAD) Menurut Whitten, J.L., Bentley, L.D. (2007:383) ObjectOriented Analysis (OOA) memiliki 3 tahap penting yang harus dilakukan, yaitu: a. Membuat model dari deskripsi fungsional sistem Pada tahap ini akan dibuatnya Use case Diagram yang berisi informasi umum dari sistem yang bertujuan untuk mendokumentasikan secara cepat kebutuhan apa saja yang diperlukan oleh sistem. Kemudian diagram tersebut akan ditambahkan detail-detail yang dapat merubah Use case Diagram menjadi Analysis Use case Diagram atau Use case Description. b. Mencari dan mengidentifikasi objek Tahap selanjutnya adalah mencari objek dengan cara mencari kata-kata yang berpotensi untuk menjadi objek dari dokumentasi yang ada (biasanya carilah disetiap nouns
atau
kata
benda).
Kemudian
setelah
mendapatkan semua kata benda, kata-kata tersebut harus disaring lagi karena tidak semuanya sesuai dengan sistem yang sedang dikembangkan. c. Mengorganisasikan
objek
dan
mengidentifikasi
hubungan setiap objek Tahap selanjutnya adalah menyusun objek yang telah diidentifikasi sebelumnya dan mendokumentasikan setiap hubungan yang terjadi antar objek. Menurut Whitten, J.L., Bentley, L.D. (2007:651) ObjectOriented Design (OOD) memiliki 3 tahap penting yang harus dilakukan, yaitu: a. Memperbaharui Use case Diagram
49 Tahap pertama pada OOD adalah memperbaharui use case yang telah dibuat pada OOA. Setiap Use case akan ditambahkan detail bagaimana aktor akan berhubungan dengan sistem dan bagaimana sistem akan memprosesnya. b. Membuat class interaction, behavior dan state yang membantu skenario use case Terdapat beberapa tahapan, yaitu: a) Mengidentifikasi dan mengklarifikasikan kelas dari desain use case Pada
tahap
inilah
akan
diidentifikasikan
interaksi antar class, tugas-tugas class serta behavior pada setiap class. b) Mengidentifikasi atribut class Setelah mengetahui tugas class masing-masing, tahap
selanjutnya
adalah
mengidentifikasi
atribut-atribut yang termasuk di dalam class c) Mengidentifikasi behaviors dan responsibilities class Tahap
ini
dapat dilakukan
menganalisa behaviors
use dan
case,
dengan
cara
mengasosiasikan
responsibilities
class,
membangun class yang memiliki behavior yang kompleks dan lain-lain c. Memperbarui Model Object untuk Mencerminkan Lingkungan Implementasi
2.2.6.2
Unified Modeling Language Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010:61), Unified Modeling Language (UML) adalah suatu set standarisasi dari konstruksi model dan pengembangan notasi yang dikhususkan untuk pengembangan object-oriented. Menurut Whitten, J.L., Bentley, L.D. (2007:371), Unified Modeling Language (UML) adalah seperangkat model
50 konvensi
yang
digunakan
untuk
menentukan
atau
menggambarkan objek dalam suatu sistem perangkat lunak. Jadi dapat disimpullkan bahwa UML adalah suatu permodelan yang digunakan untuk menciptakan desain berupa diagram yang dapat menggambarkan sistem yang akan dibangun.
2.2.6.2.1
Use Case Diagram Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010, p.242) Use case Diagram merupakan suatu aktivitas yang dilakukan oleh sistem, biasanya merupakan sebuah respon untuk permintaan dari pengguna sistem.
Gambar 2.5 Use Case Diagram Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:244) Menurut (2007:246),
Use
Whitten, case
J.L.,
Diagram
Bentley,
L.D.
menggambarkan
interaksi antara sistem dan pengguna. Dengan kata lain, secara grafis Use case Diagram menggambarkan siapa yang akan menggunakan sistem dan dalam cara apa
pengguna
dengan sistem.
mengharapkan
untuk
berinteraksi
51 Whitten, J.L., Bentley, L.D. (2007:385) juga mengatakan bahwa Use case Diagram dapat dibagi menjadi dua tipe, yaitu − Business Use case Business Use case adalah use case yang dibangun untuk kebutuhan bisnis yang fokus pada visi, misi dan tujuan dari berbagai kepentingan perusahaan. Business use case juga mencerminkan pandangan dari perilaku yang diinginkan dari sebuah sistem. − System Use case System Use case adalah use case yang digunakan untuk menentukan persyaratan rinci, membantu dalam estimasi dan perencanaan, menentukan persyaratan programming serta menjadi dokumentasi dasar bagi pengguna. Pembuatan System use case dikembangkan dari Business
Use
case
sehingga
dapat
mengembangkan sistem dengan baik dan memenuhi kebutuhan pelanggan. Berdasarkan uraian diatas, dapat disimpulkan bahwa use case diagram merupakan suatu diagram yang menggambarkan hubungan antara aktor dengan sistem.
2.2.6.2.2
Use Case Description Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010, p.172), Use Case Description adalah tahapan mendetail dan sebuah deskripsi diagram untuk membuat sebuah pemahaman akan sebuah sistem agar lebih menjamin kebutuhan user akan sistem. Use Case Description sendiri terdiri dari 3 jenis: − Brief Description
52 Merupakan deskripsi yang mencatat mengenai deskripsi singkat dari suatu use case yang sederhana, dimana digunakan pada sistem yang kecil dan dapat dengan mudah dipahami. Biasanya hanya memiliki satu skenario saja.
Gambar 2.6 Use Case Description - Brief Description Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:172) − Intermediate Description Merupakan deskripsi yang membahas lebih lanjut dan mencantumkan internal flow dari aktivitas yang terjadi sesuai dengan use case, beserta dengan exception condition, sebuah dokumentasi yang digunakan apabila terjadi hal-hal yang tidak sesuai dengan proses.
Gambar 2.7 Use Case Description - Intermediate Description Satzinger, J.W., Jackson, R.B., & Burd, S.D.(2010:173) − Fully Developed Description Merupakan deskripsi dengan mengunakan metode formal untuk mendokumentasikan seluruh proses yang terjadi pada sebuah use case.
53
Gambar 2.8 Use Case Description - Fully Developed Description Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:174) Menurut
Whitten,
J.L.,
Bentley,
L.D.
(2007:246), dalam bukunya Use Case Description disebut sebagai Use Case Narrative yang merupakan deskripsi tekstual dari use case dan bagaimana pengguna akan berinteraksi dengan sistem untuk menyelesaikan
tugas.
Ketika
Anda
sedang
mempersiapkan Use Case Narrative, hal yang penting untuk dilakukan adalah membuat dokumen high level untuk mendapatkan pemahaman tentang peristiwa dan besarnya sistem. Kemudian kembali ke masing-masing use case dan memperluas daftar untuk sepenuhnya didokumentasikan ke dalam use case narrative. Berdasarkan uraian diatas, dapat disimpulkan bahwa use case description merupakan suatu deskripsi
54 yang menjelaskan mengenai detail dari sebuah use case yang telah didefinisikan. Use case Description berguna agar alur sistem dapat terstruktur dengan baik.
2.2.6.2.3
Class Diagram Menurut
Whitten,
J.L.,
Bentley,
L.D.
(2007:400), class diagram adalah penggambaran grafis dari struktur objek statis sistem dan menunjukkan kelas objek bahwa sistem terdiri dari apa saja serta hubungan antara objek antar class.
Pada diagram ini juga
mencakup multiplicity, generalization/specialization relationship, dan aggregation relationships. Untuk membuat sebuah class diagram berikut merupakan langkah-langkah yang dapat dilakukan: − Step 1: Find the Potential Objects Hal pertama yang harus dilakukan adalah mencari potential object. Langkah ini dilakukan dengan meninjau setiap use case untuk menemukan kata benda yang sesuai dengan badan usaha atau kegiatan. Untuk menemukannya dapat menggunakan metode nouns-highlighted, yaitu dengan cara menhighlight semua kata benda yang terdapat pada use
case
analysis.
Setiap
benda
yang
ditemukan dalam mengkaji use case akan ditambahkan ke daftar potential object yang akan dianalisis lebih lanjut − Step 2: Select the Proposed Objects Tidak semua kata benda pada daftar mewakili objek bisnis yang harus berada dalam lingkup domain masalah. Dengan menganalisis masing-masing kandidat kita
55 akan dapat menentukan apakah calon harus tinggal atau dihapus dari daftar. Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010, p.187), Class diagram digunakan untuk
menunjukkan
objek
class
untuk
sistem.
Notasinya dari Unified Modelling Language (UML), yang telah menjadi standar untuk model yang digunakan dengan pengembangan system object oriented.
Gambar 2.9 Notasi Domain Class Diagram Satzinger J.W., Jackson, R.B., & Burd, S.D. (2010:187) Salah
satu
jenis
class
diagram
UML
menunjukkan hal-hal dalam pekerjaan domain user disebut sebagai domain model class diagram. Tipe lain dari notasi class diagram UML digunakan untuk membuat desain class diagram ketika merancang class perangkat lunak. Di class diagram, persegi panjang mewakili kelas, dan garis yang menghubungkan persegi panjang menunjukkan asosiasi antara kelas. Dalam persegi panjang (kotak) terbagi dua, bagian atas berisi nama kelas, dan bagian bawah merupakan atribut kelas. Nama kelas selalu diawali dengan huruf kapital, dan atribut nama selalu diawali dengan huruf kecil. Diagram class digambarkan dengan menampilkan kelas dan asosiasi antara kelas. Hubungan di dalam class diagram ada tiga, yaitu sebagai berikut:
56 1.
Aggregation Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:190), Agregasi Merupakan hubungan
antara
objek
dengan
bagian-
bagiannya di mana bagian-bagian tersebut dapat muncul secara terpisah. Berikut adalah contoh dari agregasi:
Gambar 2.10 Aggregation Relationship Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:191) 2. Association Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D.
(2010:188), Asosiasi Merupakan
class yang merepresentasikan many-to-many relationship antara dua class lainnya. Berikut adalah contoh dari asosiasi:
57 Gambar 2.11 Association Relationship Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:188) 3. Generalization Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:190) Generalisasi merupakan suatu super class yang menjelaskan properties umum kepada kelas-kelas khusus yang disebut dengan subclass. Berikut adalah contoh dari generalisasi:
Gambar 2.12 Generalization Relationship Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:190) Menurut (2010:187),
Satzinger,
Domain
Jackson,
Class
&
Burd
Diagram
juga
menggunakan multiplicity. Multiplicity adalah jumlah asosiasi yang dapat terjadi di antara hal-hal yang spesifik, misalnya seorang kustomer dapat memesan banyak order.
58 Gambar 2.13 Multiplicity dalam Class Diagram Satzinger, J.W., Jackson, R.B., & Burd, S.D (2010:188) Berdasarkan uraian diatas, dapat disimpulkan bahwa domain class diagram merupakan diagram yang menggambarkan objek - objek penting dalam suatu sistem, dimana objek tersebut dibutuhkan datanya dan dapat diolah untuk kepentingan perusahaan.
2.2.6.2.4
Entity Relationship Diagram Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D.
(2010:57), Entity Relationship Diagram
adalah analisis terstruktur dan informasi rekayasa model data yang diperlukan oleh sistem. Berikut merupakan contoh ERD:
Gambar 2.14 Entity Relationship Diagram Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:57)
2.2.6.2.5
User Interface Menurut Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:530), salah satu kegiatan utama dalam perancangan sistem adalah merancang user interface. Merancang user interface berarti merancang input dan output yang terlibat ketika pengguna berinteraksi dengan komputer untuk melaksanakan tugas. Untuk merancang sebuah user interface, developer harus memperhatikan beberapa hal seperti 8 aturan emas dan untuk perancangan user interface pada website juga harus memperhatikan 9 prinsip yang harus diperhatikan dalam membuat web design.
59
Gambar 2.15 User Interface Satzinger, J.W., Jackson, R.B., & Burd, S.D. (2010:551)
60