9
BAB 2 LANDAS AN TEORI
2.1
Customer Relationship Management (CRM) CRM didefinisikan sebagai sebuah filosofi yang berhubungan erat dengan firma bisnis,
karena CRM
merupakan
pendekatan
fundamental untuk
menjalankan sebuah bisnis. Pendekatan yang dilakukan tentu saja berfokus pada kepuasan
pelanggan
dengan
memenuhi
kebutuhan
pelanggan
dengan
menyediakan pelayanan yang baik. (Seybold, 2002, p5) Sedangkan, menurut Chaudhury dan Kuilboer (2002, p425), CRM didefinisikan sebagai sebuah perluasan inisiatif perusahaan yang meliputi fungsi pemasaran, penjualan, dan pelayanan pelanggan. Dengan meningkatkan pelayanan kepada pelanggan, perusahaan dapat menjalin hubungan yang baik dengan pelanggannya. Pelanggan jadi semakin nyaman berinteraksi dengan perusahaan tersebut dan berpotensi membeli produk atau jasa yang ditawarkan oleh perusahaan itu. Dengan meningkatnya peran teknologi informasi dalam segala bidang, CRM menjadi sangat penting, karena data pelanggan jadi bisa disimpan dalam suatu basis data dan semakin meningkatkan pelayanan yang diberikan oleh perusahaan dengan mempelajari data dan tranksaksi-tranksaksi yang pernah dilakukan oleh pelanggan tersebut.
10
2.1.1
Tujuan dan Fase CRM Tujuan dari CRM secara garis besar adalah, sebagai berikut: (Seybold, 2002, p5) a.
M endapatkan pelanggan baru (acquire new customers). Perusahaan mendapatkan pelanggan baru dengan memasarkan produk
dan
jasa
mereka
melalui
pelayanan
yang
terbaik
menggunakan konsep CRM. b.
M empertahankan pelanggan yang telah didapat (retain the right existing customers). Perusahaan bisa mempertahankan pelanggan yang telah mereka peroleh dengan meningkatkan pelayanan seusai dengan keinginan pelanggan, bukan pasar.
c.
M enjalin hubungan yang semakin baik dengan pelanggan (grow the relationships with existing customers). Dengan interaksi yang semakin baik, hubungan antara pelanggan dan perusahaan menjadi semakin baik pula dengan kurangnya salah pahan dan bisa saling mengerti keinginan satu sama lain. Sedangkan, menurut Kalakota dan Robinson (2001, p113), CRM
dibagi dalam tiga (3) fase, yaitu: a.
M endapatkan pelanggan baru (acquire).
b.
M eningkatkan keunggulan dari pelanggan yang telah ada (enhance).
c.
M empertahankan pelanggan yang menguntungkan (retain).
11
2.1.2
Jenis Aplikasi CRM Ada tiga (3) jenis aplikasi dalam CRM, yaitu: (Seybold, 2002, p6): a.
Operational CRM Otomatisasi proses bisnis yang terintegrasi, seperti Customer Touch Point, Chanels, dan front-back office integration. Tujuannya adalah memberikan nilai lebih kepada pelanggan dan meningkatkan kepuasan pelanggan. Aplikasi operational CRM dibagi menjadi dua (2) jenis, yaitu: •
Customer Facing Application Yaitu aplikasi yang dibuat untuk mendukung para staff perusahaan/organisasi dalam melayani pelanggan.
•
Customer Touching Application Yaitu pelanggan.
aplikasi
yang
langsung
berinteraksi
dengan
Aplikasi itu dapat bekerja apabila ada dari
permintaan pelanggan, otomatis secara periodik, atau jika event tertentu dari perusahaan. b.
Analytical CRM Analisis data yang dihasilkan oleh operational CRM, meliputi Data Mining. Tujuannya adalah menggunakan data pelanggan secara tepat sehinggan perusahaan dapat selalu mengetahui apa yang dipikirkan oleh pelanggannya. Contohnya, seperti Customer-Centric Intelligence Application.
12
c.
Collaborate CRM Aplikasi kolaborasi yang meliputi e-mail, personalized, ecommunities , dan sejenisnya.
Tujuan utamanya adalah menjadi
tempat berhubungan antara pelanggan yang tersebar dimana-mana dengan pihak perusahaan, serta menyebarkan loyalitas pelanggan ke pelanggan-pelanggan lain yang masih belum berada di level pelanggan yang loyal.
2.1.3
Perkembangan CRM menjadi E-CRM Perkembangan teknologi saat ini telah mempengaruhi seluruh aspek kehidupan. Begitu pula dengan dunia bisnis dan usaha, yang sekarang banyak menggunakan keuntungan dari teknologi, seperti halnya Internet. Keuntungan yang diberikan oleh Internet bagi dunia bisnis dan usaha antara lain perusahaan dapat memperkenalkan diri kepada seluruh dunia. Sejak Internet berkembang sangat pesat dan semakin mudah diakses,
banyak
perusahaan
mulai
mempertimbangkan
untuk
menggunakan Internet sebagai media promosi, bahkan sarana mencari uang dan mendapatkan keuntungan. CRM pun semakin berkembang seiring berubahnya strategi perusahaan dan kebutuhan informasi yang senantiasa up-to-date, cepat, dan terpercaya. M aka, CRM pun kini telah diaplikasikan dalam bentuk online dan
lebih
sering disebut
Relationship Management).
E-CRM
(Electronic Customer
13
E-CRM adalah CRM yang memanfaatkan proses bisnis dan datadata secara online. E-CRM secara konsisten mengatur pribadi relevan dan interaksi produktif, bermakna untuk membangun hubungan yang sukses dengan pelanggan, penjual, karyawan, investor, dan yang lainnya menggunakan teknologi baru. (Turban et.al, 2006, p320) E-CRM
merupakan
usaha
untuk
meningkatkan
loyalitas
penggunaan produk dan jasa yang diproduksi oleh perusahaan tertentu dengan menggunakan media Internet dengan mengelola relasi antara perusahaan dengan pelanggan (Sutedjo, 2003, p56).
2.1.4
Keuntungan E-CRM Keuntungan penggunaan E-CRM, antara lain: (Zikmund et. al, 2003, p6) a.
M eningkatkan mutu pelayanan kepada pelanggan.
b.
M enambah kesetiaan pelanggan.
c.
M enambah keakuratan dalam penawaran produk terhadap pelanggan.
d.
M emudahkan melakukan penjualan produk di pasar.
e.
Perusahaan mampu memberikan respon yang cepat dan baik kepada pelanggan.
f.
M engingkatkan efisiensi melalu otomatisasi.
g.
Dapat lebih mengenal siapa dan bagaimana pelanggan tersebut.
h.
M enggunakan umpan balik dari pelanggan untuk mengidentifikasi peluang-peluang pemasaran baru.
14
i.
M endapatkan informasi yang dapat dibagi dengan rekan bisnis perusahaan tersebut.
2.1.5
Tantangan E-CRM Beberapa tantangan yang dihadapi dari penerapan E-CRM, adalah sebagai berikut: (Brown, 2000, p161) a.
Dibutuhkan konsistensi, terkait dengan cara mengembangkan strategi saluran interaksi yang terintegrasi.
b.
Keseimbangan (Balance) dibutuhkan untuk mendapatkan persepsi yang benar antara self-service dan interaksi dengan bantuan agen.
c.
Teknologi diharapkan dapat mengadopsi teknologi yang tepat pada waktu yang tepat pula.
d.
M anajemen
perubahan,
untuk
mengenali bahwa strategi ini
merupakan perubahan yang radikal dimana seringkali terdapat ketidakcocokan antar sistem E-CRM yang dibangun dan pihak pelanggan tidak bisa menerima perubahan yang terjadi. e.
Perlu dilakukan pengukuran untuk mengetahui apa yang diharapkan pelanggan dari pelayanan berbasis web.
f.
Lingkungan pelayanan pelanggan yang baik untuk menghindari membangun pada fondasi yang lemah.
15
2.2
Model Proses Inkremental M enurut Pressman (2002, pp45-47), model inkremental menggabungkan elemen-elemen model sekuensial linier (diaplikasikan secara berulang) dengan filosofi prototipe iterative. M odel pertambahan memakai urutan-urutan linier di dalam model yang membingungkan, seiring dengan laju waktu kalender. Setiap urutan
linier
menghasilkan
pertambahan,
perangkat
lunak
“yang bisa
disampaikan”. Pada saat model pertambahan dipergunakan, pertambahan pertama sering merupakan produk inti (core product), yaitu sebuah model pertambahan yang dipergunakan, tetapi beberapa muka tambahan (beberapa diketahui dana beberapa tidak) tetap tidak disampaikan. Produk inti tersebut dipergunakan oleh pelanggan (atau mengalami pengkajian detail).
Sebagai hasil dari pemakaian
dan/atau evaluasi, maka dikembangkan rencana bagi pertambahan selanjutnya. Rencana tersebut menekankan modifikasi produk inti untuk secara lebih baik memenuhi kebutuhan para pelanggan dan penyampaian fitur serta fungsionalitas tambahan.
Proses ini diulangin mengikuti penyampaian setiap pertambahan
sampai menghasilkan produk yang lengkap. M odel pertambahan berfokus pada penyampaian produk operasional dalam setiap pertambahannya.
Pertambahan awal ada di versi stripped down dari
produk akhir, tetapi memberikan kemampuan untuk melayani pemakai dan juga menyediakan platform untuk evaluasi oleh pemakai.
16
Gambar 2.1 M odel Inkremental Perkembangan pertambahan, khususnya berguna pada saat staffing, tidak bisa dilakukan dengan menggunakan implementasi lengkap oleh batas waktu bisnis yang sudah disepakati untuk proyek tersebut. Jika produk inti diterima dengan baik, maka staf tambahan (bila dibutuhkan) bisa ditambahkan untuk mengimplementasi pertambahan selanjutnya. Sebagai tambahan, sistem mayor yang sedang pada masa perkembangan serta waktu penyampaiannya belum pasti, mungkin membutuhkan keberadaan perangkat keras yang baru.
Bisa juga
rencana tertentu dibuat untuk menghindari pemakaian perangkat lunak ini, sehingga memungkinkan fungsionalitas partial disampaiakan kepada pemakai tanpa harus banyak tertunda.
17
2.3
Teori-teori Basis Data M enurut Connoly dan Begg (2005, p7), File-Based System adalah suatu kumpulan dari program aplikasi yang memberikan pelayanan pada end-user, seperti pembuatan suatu laporan. Setiap program mendefinisikan dan mengatur datanya masing-masing.
Keterbatasan dari pendekatan file ini, diantaranya
adalah data yang terpisah dan terisolasi, data yang terduplikasi, ketergantungan data, format file yang tidak kompatibel, query yang tetap atau tidak dapat mengantisipasi perkembangan program aplikasi.
Akhirnya digunakannya
pendeketan dengan menggunakan database dan Database Management System (DBMS). 2.3.1
Definisi Data Dalam pendekatan basis data, tidak hanya berisi basis data itu sendiri, tetapi juga termasuk definisi atau deskripsi dari data yang disimpan.
Definisi data disimpan dalam sistem catalog, yang berisi
informasi tentang struktur tiap berkas, tipe dan format penyimpanan tiap item data, dan berbagai konstrain dari data.
Semua informasi yang
disimpan dalam sistem catalog biasa disebut meta-data.
2.3.2
Definisi Basis Data Basis Data (database) adalah sebuah koleksi dari file-file yang saling berhubungan secara internal (interrelated files) (Whitten et.al, 2003, p548).
18
Di dalam basis data, terdapat beberapa table yang berisikan fields dan records. Fields adalah implementasi fisik dari sebuah atribut data. Fields adalah unit terkecil dari data yang disimpan dalam basis data (Whitten et. al, 2003, p550). M enurut Connolly dan Begg (2005, p14), basis data adalah sekumpulan data yang terhubung secara logis yang digunakan secara bersama, dan sebuah penjelasan dari data ini, yang dirancang untuk memenuhi kebutuhan informasi dari sebuah organisasi.
2.3.3
Database Application Lifecycle M enurut Connolly dan Beeg (2002, p279), sistem basis data merupakan komponen dasar dari suatu organisasi yang besar dengan sistem informasi yang luas. Hal penting yang perlu diperhatikan dalam Database Application Lifecycle adalah bahwa tingkatannya tidak sepenuhnya berurutan. Dimana ada beberapa tingkatan yang berulang dengan alur balik, karena proses yang terjadi harus cek ulang pada proses sebelumnya jika hasil tidak optimal. Penilaian dari kesempatan teknologi informasi yang menghasilkan kekuatan kompetitif. Database Application Lifecycle merupakan tahapan dalam merancang suatau sistem basis data. Database Application L ifecycle digambarkan seperti bagan berikut ini:
19
Gambar 2.2 Database Application Lifecycle (Sumber : Connolly dan Begg, 2005, p272)
20
2.3.3.1 Database Planning M enurut Connolly dan Begg (2005, p273), perencanaan basis data adalah pengelolaan aktivitas yang memungkinkan tahapan aplikasi basis data tercapai dengan efektif dan efisien. Perencanaan basis data harus terintegrasi dengan keseluruhan strategi sistem informasi perusahaan. Terdapat 3 (tiga) persoalan utama yang menyangkut perumusan sebuah strategi sistem informasi, yaitu: -
M engenali rencana dan tujuan perusahaan, kemudian menentukan kebutuhan sistem informasi.
-
M engevaluasi sistem informasi yang sudah ada untuk menentukan kekuatan dan kelemahan yang ada.
-
M enaksir dari kesempatan teknologi informasi yang menghasilkan kekuatan yang kompetitif. Langkah penting dari tahap ini adalah mendefinisikan secara jelas
tentang pernyataan misi untuk proyek basis data. Pernyataan tersebut mendefinisikan tujuan utama dari aplikasi basis data. Bila pernyataan tersebut selesai, maka langkah selanjutnya adalah mendefinisikan sasarannya. Pernyataan dan sasaran ini perlu didukung oleh informasiinformasi tambahan yang menentukan pekerjaan apa saja yang harus diselesaikan, sumber-sumber yang mendukungnya, dan biaya yang harus dikeluarkan.
21
2.3.3.2 System Definition M enurut Connolly dan Begg (2005, p274), definisi sistem adalah menggambarkan jangkauan dan batasan dari aplikasi basis data dan pandangan-pandangan utama para pemakai. Sebelum mendesain suatu aplikasi basis data, penting untuk terlebih dahulu mengidentifikasikan batasan-batasan dari sistem yang sedang diteliti dan bagaimana keterkaitannya dengan bagian lain dari sistem informasi perusahaan. Perlu dipikirkan untuk kebutuhan yang akan datang selain dari sistem informasi perusahaan. Perlu dipikirkan untuk kebutuhan yang akan datang selain dari keadaan saat ini, dan tak lupa untuk mengidentifikasi pandangan pemakai yang merupakan aspek penting dari pengembangan aplikasi basis data karena membantu untuk memastikan bahwa tidak ada pemakai utama basis data yang terlupa ketika pengembangan aplikasi baru tersebut.
2.3.3.3 Requirement Collection and Analysis M enurut
Connolly
dan
Begg
(2005,p276),
analisis
dan
pengumpulan kebutuhan adalah proses dari analisis pengumpulan informasi tentang bagian organisasi yang akan dibuat aplikasi basis data dan menggunakan informasi ini untuk mengenali kebutuhan pemakai dari sistem baru. Beberapa teknik atau cara untuk mendapatkan informasi adalah dengan teknik Fact Finding. Fact Finding adalah teknik yang digunakan untuk mengidentifikasi kebutuhan.
22
2.3.3.4 Database Design M enurut Connolly dan Begg (2005, p284), perancangan basis data adalah proses pembuatan sebuah rancangan untuk sebuah basis data yang mendukung operasi dan tujuan dari perusahaan itu. Perancangan basis data dibagi menjadi 3 (tiga) tahapan, yaitu: a. Perancangan Basis Data Konseptual M enurut Connolly dan Begg (2005, p419), perancangan basis data konseptual merupakan suatu proses pembuatan model dengan menggunakan informasi yang diperoleh dari perusahaan, yang keberadaannya tidak tergantung dengan pertimbangan fisikal apapun. Perancangan konseptual merupakan tahapan pertama dari tahapan perancangan basis data dan menciptakan model data konseptual dari bagian perusahaan yang akan dibuat basis datanya. M odel data dibuat dengan
menggunakan suatu dokumentasi
informasi, yaitu spesifikasi kebutuhan yang dimiliki pemakai. Tujuan
dibangunnya
model
konseptual
adalah
untuk
membangun suatu model konseptual lokal dari suatu perusahaan atau badan. b. Perancangan Basis Data Logikal Perancangan basis data logikal adalah proses membangun sebuah model dan informasi yang diperoleh dari sebuah organisasi berdasarkan model data khusus, tetapi bebas dari hal yang berkaitan dengan DBMS dan pertimbangan fisik lainnya.
23
Tahap ini merupakan level selanjutnya dalam perancangan basis data yang menggambarkan data apa yang sebenarnya disimpan dalam basis data dan hubungannya. Tahap ini juga merupakan proses untuk membuat sebuah model informasi yang digunakan dalam suatu organisasi berdasarkan suatu data model spesifik, namun bebas dari DBMS tertentu dan pertimbangan fisik lainnya (Connolly dan Begg, 2005, p419). c. Perancangan Basis Data Fisikal M enurut Connolly dan Begg (2005, p419), perancangan basis data fisikal merupakan suatu proses pembuatan deskripsi dari implementasi basis data di penyimpanan secondary yang menjelaskan tentang hubungan utama, file organisasi dan indeks yang digunakan untuk memperoleh akses yang efisien ke data dan hubungan integritas constraint yang lainnya dan hal yang berkaitan dengan keamanan. Aktifitas
dari
perancangan
basis
data
fisikal
adalah
menerjemahkan model data logikal global ke dalam sasaran DBMS, dimana dengan membuat hubungan dasarnya (base relation) dengan menggunakan database design language yang tujuannya untuk memutuskan bagaimana representasi relasi utama yang diidentifikasi dalam model data logikal global ke dalam DBMS, merancang constraint perusahaan untuk kegiatan transaksi (update dan retrieve data), menentukan kebutuhan sumber daya sistem dan berkas organisasi. Perancangan basis data fisikal merupakan tahap ketiga dan terakhir dari perancangan basis data.
24
Hal-hal lainnya yang berhubungan dengan perancangan basis data adalah: 1. Primary Key, merupakan candidate key yang dipilih untuk secara unik
mengidentifikasi tiap-tiap
keberadaan
suatu
tipe entiti.
Pemilihan primary key umumnya didasari oleh beberapa hal, antara lain : key tersebut lebih sering dijadikan sebagai acuan, lebih ringkas, dan lebih unik. 2. Foreign Key, atribut atau himpunan atribut dalam suatu relasi yang cocok dengan candidate key dari beberapa (kemungkinan sama) relasi. 3. Alternate Key, candidate key yang tidak terpilih menjadi primary key. 4. Candidate Key,
rangkaian
minimal dari suatu atribut yang
mengidentifikasikan masing-masing kejadian dari tipe entiti secara unik. 5. Integrity constraint, batasan-batasan yang diberlakukan dalam rangka menjaga suatu basis data agar tidak menjadi tidak konsisten.
2.3.3.5 Pemilihan DBMS M enurut Connolly dan Begg (2005, p284), pemilihan DBMS adalah memilih DBMS yang sesuai untuk mendukung aplikasi basis data. Pemilihan DBMS dilakukan antara tahapan perancangan basis data konseptual dan perancangan basis data logikal.
25
Tujuannya untuk kecukupan sekarang dan kebutuhan yang akan data pada perusahaan, membuat keseimbangan biaya termasuk pembelian produk DBMS, dan piranti lunak untuk mendukung aplikasi basis data. M enurut Atzeni, Ceri, Paraboschi, dan Torlone (1999, p4), karakteristik DBMS, antara lain: 1. Tahan Uji Kapasitas sistem untuk menjaga isi dari basis data (atau setidaknya memungkinkan rekonstruksi) apabila terjadi kerusakan perangkat keras atau perangkat lunak.
Untuk memenuhi hal ini,
DBMS menyediakan fungsi spesifik untuk backup dan recovery. 2. Privasi Data Setiap pemakai yang dikenal melalui username yang spesifik terhadap akses pemakai tersebut pada DBMS, hanya berhak untuk melakukan sejumlah
operasi tertentu terhadap
data,
melalui
mekanisme otorisasi. 3. Efisiensi Kapasitas untuk melakukan operasi menggunakan sejumlah sumber daya (waktu dan ruang) yang diperlukan bagi tiap pemakai. Karakteristik ini tergantung pada teknik yang digunakan dalam implementasi DBMS dan sebaik apa produk yang dirancang. Perlu ditekankan bahwa DBMS menyediakan kombinasi fitur yang luas yang memerlukan banyak sumber daya, sehingga seringkali menempatkan persyaratan pada sumber daya yang disediakan oleh lingkungan operasional.
26
4. Efektifitas Kapasitas DBMS untuk membuat aktifitas pemakainya produktif dalam setiap segi. Hal ini jelas merupakan definisi umum dan tidak berhubungan dengan fungsi spesifik, dimana DBMS menyediakan berbagai pelayanan dan fungsi bagi tiap pemakai yang berbeda. Tugas merancang basis data dan aplikasi yang menggunakannya ditujukan untuk memastikan sistem yang baik dan efektif secara keseluruhan. M enurut Connolly dan Begg (2005, pp18-20), lingkungan DBM S memiliki beberapa komponen, antara lain: 1. Perangkat Keras (Hardware) Perangkat keras dapat bervariasi dari sebuah PC, sebuah mainframe, hingga sebuah jaringan komputer. Perangkat keras yang diperlukan tergantung pada kebutuhan organisasi dari DBMS yang digunakan.
DBMS memerlukan sejumlah minimum dari memori
utama dan ruang disk untuk dapat berjalan, namun konfigurasi minimum ini mungkin tidak dapat memberikan penampilan yang baik. 2. Perangkat Lunak (Software) Komponen perangkat lunak termasuk perangkat lunak DBMS tersebut dan aplikasi programnya, bersama dengan sistem operasi, termasuk perangkat lunak jaringan apabila DBMS digunakan melalui sebuah jaringan.
27
3. Data Komponen lingkungan DBMS yang paling penting dari sudut pandang pemakai adalah data. Data bertindak sebagai penghubung antara komponen mesin dan komponen manusia.
Basis data
mengandung data operasional dan meta-data, yaitu data mengenai data.
Struktur basis data disebut dengan schema.
Data juga
mengandung katalog sistem (system catalog). 4. Prosedur Prosedur mengarah kepada instruksi dan aturan yang mengatur perancangan dan penggunaan basis data. Pemakai sistem dan staf yang mengatur basis data memerlukan prosedur tertulis mengenai cara menggunakan atau menjalankan sistem, antara lain mengenai cara untuk masuk ke dalam DBMS, menjalankan dan menghentikan DBMS, membuat salinan cadangan dari basis data, mengatasi kerusakan perangkat keras atau perangkat lunak, dan mengubah struktur tabel, mengatur kembali basis data dalam berbagai disk, meningkatkan penampilan, ataupun menyimpan data ke dalam secondary storage. 5. M anusia (People) Komponen terakhir adalah orang-orang yang terlibat dengan sistem.
28
2.3.3.6 Application Design M enurut Connolly dan Begg (2002, pp287-288), perancangan aplikasi adalah merancang antarmuka pemakai dan program aplikasi, yang akan memproses basis data. Perancangan basis data dan aplikasi merupakan aktivitas yang dilakukan secara bersamaan pada Database Application Lifecycle. Dalam merancang aplikasi, harus memastikan antarmuka yang dirancang dapat memberikan informasi yang dibutuhkan (user-friendly).
2.3.3.7 Prototyping M enurut Connolly dan Begg (2005, p291-292), prototyping adalah membuat model kerja dari aplikasi basis data, yang memungkinkan perancang atau pemakai untuk mengevaluasi hasil akhir sistem, baik dari segi tampilan maupun fungsi yang dimiliki sistem. Tujuannya alah untuk memungkinkan pemakai menggunakan prototype untuk mengidentifikasi kelebihan dan kekurang sistem, atau memperbaiki dan melengkapi kekurangan dari aplikasi basis data baru. Dua strategi prototyping yang biasa digunakan, yaitu: -
Requirement prototyping, menggunakan prototype untuk menetapkan kebutuhan dari tujuan aplikasi basis data dan ketika kebutuhan sudah terpenuhi, prototype tidak digunakan lagi atau dibuang.
-
Evolutionary prototyping, menggunakan tujuan yang sama, tetapi perbedaannya adalah prototype tetap digunakan.
29
2.3.3.8 Implementation M enurut Connolly dan Begg (2002, p292), implementasi adalah mendefinisikan basis data secara eksternal, konseptual, dan internal. Implementasi merupakan realisasi dari basis data dan perancangan aplikasi.
Implementasi basis data dapat dicapai menggunakan Data
Definition Language (DDL) dari DBMS yang dipilih atau Graphical User Interface (GUI).
2.3.3.9 Data Convertion and Loading M enurut Connolly dan Begg (2005, pp292-293), data convertion and loading adalah mengambil data dari sistem yang lama untuk dipindahkan ke dalam sistem yang baru. Tahapan ini dibutuhkan ketika system basis data baru menggantikan sistem yang lama.
Pada masa
sekarang, umumnya DBMS memiliki kegunaan untuk memasukkan file ke dalam basis data baru yang tujuannya adalah untuk memungkinkan pengembang untuk mengkonversi dan menggunakan aplikasi program lama untuk digunakan oleh sistem baru.
2.3.3.10 Testing M enurut Connolly dan Begg (2005, p293), pengetesan adalah proses menjalankan program aplikasi untuk menemukan kesalahankesalahan.
Sebelum digunakan, aplikasi basis data yang baru yang
dikembangkan harus diuji secara menyeluruh. Untuk mencapainya harus
30
hati-hati dalam menggunakan perencanaan strategi uji dan menggunakan data asli untuk semua proses pengujian.
2.3.4
Tujuan Basis Data Tujuan dari basis data antara lain: -
M erupakan salah satu komponen penting dalam System Information, karena merupakan dasar dalam menyediakan informasi.
-
M enentukan kualitas informasi: akurat, tepat pada waktunya dan relevan, informasi dapat dikatakan bernilai bila manfaatnya bila efektif dibandingkan dengan biaya mendapatkannya.
2.3.5
-
M engurangi duplikasi data (data redundacy).
-
Hubungan data dapat ditingkatkan.
-
M engurangi pemborosan tempat simpanan luar.
Komponen-komponen Sistem Basis Data Sistem basis data terdiri dari 4 komponen utama, yaitu: 1. Data harus bersifat shared dan integrated yang dapat berupa single user maupun multi user. 2. Perangkat keras (hardware), merupakan komponen yang dibutuhkan untuk manajemen basis data. 3. Piranti lunak (software), merupakan komponen yang menghubungkan fisik basis data dengan user yang terdiri dari piranti lunak DBMS sendiri dan aplikasi program, serta sistem operasi.
31
4. Pengguna (user), ada 3 (tiga) jenis user dalam basis data, yaitu: a. Application Programmer, bertanggung jawab dalam penulisan program
aplikasi
dengan
menggunakan
berbagai
bahasa
pemrograman. b. End User, menggunakan data dalam basis data untuk keperluan tugas atau fungsinya. c. Database Administrator, bertanggung jawab terhadap keseluruhan basis data.
2.3.6
S truktur Data Dalam Sistem Basis Data Tingkatan struktur dalam basis data antara lain: a. Field, unit terkecil dari data record yang disimpan dalam basis data. b. Record, kumpulan field-field yang disimpan, yang saling berelasi membentuk data yang mempunyai arti. c. File, kumpulan seluruh occurrence dari satu tipe record yang tersimpan. d. Database, kumpulan data yang terintegrasi dari occurrence file atau tabel yang merupakan representasi data dari suatu model perusahaan.
32
2.4
Normalisasi Normalisasi merupakan sebuah teknik dalam perancangan logikal sebuah basis data, teknik pengelompokkan atribut dari suatu relasi sehingga membentuk struktur relasi yang baik (tanpa redundansi). Normalisasi adalah proses dekomposisi struktur data yang kompleks menjadi bentuk normal berdasarkan aturan mengenai ketergantungan data (Hoffer, et.al, 1999, p608). 2.4.1
Tahap-tahap Normalisasi Normal seharusnya berada dalam bentuk normal tertinggi dan bergerak dari bentuk normal satu dan seterusnya untuk setiap kali membatasi hanya satu jenis redundansi. (lima) bentuk normal.
Keseluruhannya cuma ada 5
Tiga bentuk normal pertama menekankan
redundansi yang muncul dari Function Dependencies, sedangkan bentuk keempat dan kelima menekankan redundansi yang muncul dari kasus Multi Valued Dependencies. Pada saat belum dinormalisasikan, suatu tabel masih dalam bentuk tidak normal atau unformal form, dimana relasi antara tabel masih terdapat repeating group atau ada kelompok atribut yang berulang.
Untuk mendapatkan bentuk tabel yang normal dan
terstruktur dengan baik tanpa ada error, harus dilakukan tahapan-tahapan normalisasi sebagai berikut:
33
a)
1NF, First Normal Form atau Bentuk Normal Pertama Sebuah tabel dikatakan mempunyai bentuk normal pertama jika sebuah tabel memiliki domain yang sederhana dan tidak ada repeating group. Aturan yang berlaku pada 1NF, yaitu:
b)
•
M endefinisikan atribut kunci
•
Tidak adanya group berulang
•
Semua atribut bukan kunci tergantung pada atribut kunci
2NF, Second Normal Form atau Bentuk Formal Kedua Sebuah tabel dikatakan mempunyai bentuk normal kedua jika sebuah tabel tidak memiliki ketergantungan parsial (hanya tergantung pada sebagian dari primary key). M aka dikatakan baik jika sebuah relasi adalah full function dependency (ketergantungan fungsional secara utuh) pada seluruh primary key dari relasi tersebut. Aturan yang berlaku, yaitu: • •
Sudah memenuhi dalam bentuk normal kesatu
Sudah tidak ada ketergantungan parsial, dimana seluruh field hanya tergantung pada sebagian field kunci.
c)
3NF, Third Normal Form atau Bentuk Normal Ketiga Sebuah tabel dikatakan memenuhi bentuk normal ketiga jika semua atribut yang bukan key (non key) dari suatu relasi bersifat mutally independent, dengan demikian tidak ada atribut non key yang bersifat functional dependent terhadap atribut non key yang lain. Aturan yang berlaku:
34
•
Sudah berada dalam bentuk normal kedua
•
Tidak ada ketergantungan transitif (dimana field bukan kunci ketergantungan pada field bukan kunci lainnya)
2.5
Helpdesk System Helpdesk pada dasarnya adalah sebuah center point dimana masalah atau issue dilaporkan dan diatur secara terurut dan diorganisasikan. Dari perspektif umum, helpdesk merupakan bagian pelengkap dari sebuah fungsi pelayanan, dan bertanggung jawab sebagai sumber dari pemecahan masalah atau issue lainnya (Anonim1). M enurut Wooten (2001, p5), “Helpdesk is a formal organization that provides support functions to users of the companies product, services, or technology.”
Jadi, helpdesk merupakan bagian dari perusahaan yang
menyediakan dokumen fungsi produk, servis, dan teknologi dari perusahaan tersebut. Sistem helpdesk dapat dibangun melalui banyak media, seperti telepon dan internet. Dengan menggunakan internet, sistem helpdesk yang dibangun dapat menerima informasi dengan cepat dari para penggunanya dan dapat juga memberikan solusi dengan cepat. Dalam dunia internet sekarang ini, helpdesk yang paling umum dijumpai adalah Frequently Ask Question (FAQ) dan penggunaan surat elektronik (e-mail).
35
Helpdesk adalah sebuah sistem pembantu utama yang berfungsi membantu semua kegiatan organisasi atau perusahaan dimana pegawai dapat menemukan jawaban atau solusi dari masalah yang dihadapinya, sehingga segala permintaan atau permohonan yang berhubungan organisasi tersebut dapat dipenuhi dengan baik. Helpdesk sendiri bersifat terpusat, maksudnya adalah sistem yang mampu terintegrasi dengan sistem lain walaupun berdiri sendiri (Remedy, 2000). Helpdesk dapat melakukan penghematan biaya pada organisasi teknologi informasi. Hal ini disebabkan karena: •
Helpdesk dapat menyelesaikan permasalahan lebih banyak dalam waktu yang lebih singkat.
•
Helpdesk menyediakan penyelesaian yang memungkinkan staf Helpdesk meneliti kasus yang berhubungan dengan informasi, dan memberikan jawaban atas kasus tersebut secepatnya.
•
Staf Helpdesk dapat menelusuri permintaan dan pengaturan, sehingga aktivitas lebih terencana.
•
Pegawai dapat menyelesaikan masalahnya sendiri, atau mengecek status permintaannya, sehingga dapat menghilangkan ketergantungan terhadap staf Helpdesk.
•
Hasil penyelesaian terhadap permasalahan dapat meningkatkan kepuasan pegawai dan daya produksi Helpdesk.
•
Pegawai mengirim pemberitahuan, yang dengan sendirinya memberitahu Helpdesk akan masalah atau berbagai permintaan yang ada, sehingga dapat diselesaikan dengan secepatnya.
36
•
Helpdesk dapat memberikan laporan perkembangan staf kerja setiap saat kepada pimpinan. M enurut Hinrichs (1997, p247), lingkungan yang diperlukan dalam
membangun Helpdesk adalah: •
Technical support, berupa server, hubungan antar jaringan, modem, dan peralatan teknis lainnya.
•
Database support, berupa piranti lunak, sistem operasi basis data yang dibutuhkan,
penyelesaian
teerhadap
kerusakan
database,
penyediaan
prosedur-prosedur yang dapat memperbaiki kerusakan. •
Publishing support, berupa prosedur otorisasi, informasi yang akurat.
•
Development support, berupa piranti lunak pembantu, perpustakaan, tips dan pemecahan masalah, dan jawaban atas pertanyaan yang sering diajukan.
2.6
Rekayasa Perangkat Lunak Rekayasa adalah semua hal yang berkaitan dengan analisis, desain, konstruksi, verifikasi, dan manajemen kesatuan teknik (atau sosial).
Dengan
tidak melihat kesatuan yang dikembangkan, pertanyaan-pertanyaan ini harus dimunculkan dan dijawab dalam melakukan rekayasa: (Pressman, 2002, pp2930) a.
M asalah apakah yang akan dipecahkan?
b.
Karakteristik kesatuan apakah yang dipakai untuk menyelesaikan masalah tersebut?
37
c.
Bagaimanakah kesatuan (dan pemecahan tersebut) diadakan?
d.
Bagaimanakah kesatuan tersebut dibangun?
e.
Pendekatan apakah yang akan dipakai untuk menemukan kesalahankesalahan yang dibuat dalam desain dan konstruksi dari kesatuan tersebut?
f.
Bagaimanakah kesatuan tersebut ditopang selama proses adaptasi yang lama pada saat koreksi, serta ketika perbaikan dibutuhkan oleh para pemakai kesatuan tersebut? Dalam pandangan umum, rekayasa perangkat lunak sering dianggap
sebagai bagian dari perekayasaan ulang proses bisnis (Pressman, 2002, p31). Rekayasa perangkat lunak harus diimbangi dengan sejumlah aktifitas pelindung (umbrella activities), seperti: (Pressman, 2002, p31) a.
Kontrol dan pelacakan proyek perangkat lunak.
b.
Review teknis formal.
c.
Jaminan kualitas perangkat lunak.
d.
M anajemen konfigurasi perangkat lunak.
e.
Penghasilan dan penyiapan dokumen.
f.
M anajemen reusabilitas.
g.
Pengukuran.
h.
M anajemen resiko. Jadi, dalam artian singkat, rekayasa perangkat lunak adalah disiplin yang
menyatukan proses, metode, dan alat-alat batu bagi perkembangan proses perangkat lunak komputer (Pressman, 2002, p59).
38
Fondasi dari rekayasa perangkat lunak sendiri adalah proses. Proses-proses yang terjadi adalah semacam perekat yang menjaga batasan teknologi secara bersama-sama dan memungkinkan perkembangan perangkat lunak yang tepat waktu dan rasional. Rangkaian proses tersebut membatasi kerangka kerja untuk serangkaian area proses kunci yang dibangun demi tercapainya tujuan dari pengembangan perangkat lunak (Pressman, 2002, p29). Sedangkan, metode-metode rekayasa perangkat lunak memberikan teknik untuk membangun perangkat lunak. M etode itu menyangkut sekumpulan tugas yang terdiri dari analisis kebutuhan, konstruksi program, desain, pengujian, dan pemeliharaan (Pressman, 2002, p29). Alat-alat bantu dapat memberikan topangan secara otomatis dan semiotomatis pada proses-proses dan metode-metode yang ada. Ketika alat-alat bantu tersebut diintegrasikan, akan diperoleh suatu informasi yang bisa digunakan oleh yang lain, sistem untuk menopang perkembangan perangkat lunak (Pressman, 2002, p29).
2.7
Data Flow Diagram (DFD) DFD digunakan untuk mendokumentasikan aliran data secara logikal melalui serangkaian proses dan prosedur yang mencakup sumber eksternal dan tujuan data. Kegiatan-kegiatan yang mentransform data dan menyimpan atau mengumpulkannya. Penggunaan DFD melalui gambar yang berbentuk jaringan grafik.
39
2.7.1
Simbol Dalam DFD Gambar aliran data sebagai modeling tool dipopulerkan oleh Tom the M arco (1978) dan Gean & Sarson (1979) dengan menggunakan pendekatan metode analisis sistem terstruktur. DFD dapat digunakan untuk mempresentasikan suatu sistem yang otomatis maupun manual dengan menggunakan simbol: 1. Entitas Eksternal (terminal) Entitas yang berada di luar sistem, yang memberikan data kepada sistem (source) atau yang menerima informasi dari sistem (sink). Entitas eksternal tidak termasuk dalam sistem. Simbol yang digunakan:
2. Process M enggambarkan apa yang dilakukan oleh sistem.
Proses
berfungsi untuk mentransformasikan suatu atau beberapa data masukan menjadi satu atau beberapa data keluaran sesuai dengan spesifikasi yang digunakan.
Setiap proses memiliki satu atau
beberapa data masukan, serta menghasilkan satu atau beberapa data keluaran. Proses ini sering disebut bubble. Simbol yang digunakan:
40
3. Data Flow M enggambarkan aliran data dari suatu entitas ke entitas lainnya. Tanda panah menggambarkan aliran data yang terjadi antara dua proses yang berurutan, dari data store ke process atau sebaliknya dari process ke sink. Simbol yang digunakan:
4. Data Store Data store berfungsi untuk sebagai tempat penyimpanan data. Proses dapat mengambil data atau memberikan data ke data store. Simbol yang digunakan:
2.7.2
Tingkatan Pada DFD Data Flow Diagram memiliki beberapa tingkatan. Tingkatan ini untuk menjelaskan diagram-diagram agar terlihat lebih jelas dan rinci. Tingkatan-tingkatan dalam DFD dijelaskan di bawah ini: 1. Diagram Konteks M enggambarkan seluruh input ke atau output ke system. Diagram konteks ini merupakan level tertinggi dari DFD.
41
2. Diagram Nol M erupakan rincian dari diagram konteks dan memperlihatkan data store yang digunakan. 3. Diagram Rinci M erupakan rincian diagram di atasnya.
M enjelaskan secara
rinci dari diagram nol.
2.8
Unified Modelling Language (UML) UML adalah sebuah bahasa yang telah menjadi standar dalam industri untuk memvisualisasi, menspesifikasi, merancang, dan mendokumentasi sistem piranti lunak (Booch et al, 1999, p14). UML menawarkan sebuah standar untuk merancang model sebuah sistem. memiliki notasi.
Seperti bahasa-bahasa lainnya, UML juga
Notasi UML merupakan sekumpulan bentuk khusus untuk
menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu dan UML menjelaskan bagaimana bentuk-bentuk tersebut didefinisikan. Jika ingin membangun suatu model dari suatu sistem yang kompleks, tidak mungkin user dapat memahaminya secara keseluruhan. Dengan meningkatnya kompleksitas sistem, visualisasi, dan pemodelan menjadi sangat penting. UML dibuat untuk merespon kebutuhan tersebut. M elihat dari faktor sejarah dan pendorong terbentuknya UML ini, dapat ditarik suatu kesimpulan mengenai tujuan dibentuknya UML, yaitu sebagai berikut:
42
1. M emberikan gambaran model konseptual piranti lunak dari suatu bahasa pemrograman yang tekstual sehingga dapat dimengerti oleh orang-orang yang non-programmer. 2. M embangun model yang tepat, tidak ambigu, dan lengkap yang dapat membantu dalam tahap-tahap dari analisis, perancangan, dan implementasi. 3. Dapat memodelkan beberapa jenis bahasa pemrograman, dan membantu memetakan kembali model tersebut ke suatu bahasa pemrograman yang lain. 4. M embantu dalam dokumentasi perancangan piranti lunak. UML mendefinisikan beberapa diagram, antara lain sebagai berikut: -
Use case diagram
-
Class diagram
-
Activity diagram
-
Sequence diagram
2.8.1
Use Case Diagram Use case diagram menggambarkan sekumpulan use case dan aktor, serta hubungannya (Booch et al, 1999, p234). Yang ditekankan adalah “apa” yang dilakukan terhadap sistem dan bukan “bagaimana”. Sebuah use case menggambarkan interaksi antara aktor dengan sistem. Contoh use case diagram:
43
Gambar 2.3 Use Case Diagram (Susanto, 2010)
Tabel 2.1 Relasi Pada Use Case Diagram (Booch, 1999) Simbol
Penjelasan Actor M enspesifikasikan seperangkat peranan user yang dapat perankan ketika berinteraksi dengan use case.
Association M enggambarkan interaksi antara aktor dan use case. Generalization Relasi antara use case, dimana salah satunya dalam bentuk yang lebih umum dari yang lain. Use Case Sebuah deskripsi dari seperangkat aksi-aksi yang berurutan yang ditampilkan sebuah sistem.
44
System Tempat seluruh aktivitas-aktivitas sistem yang sedang / berjalan. Dependency Untuk menggambarkan ketergantungan sebuah use case dengan use case lainnya. Include M enggambarkan bahwa keseluruhan dari sebuah use case merupakan fungsionalitas use case lainnya. Extend M enggambarkan hubungan antar use case dimana bahwa sebuah use case merupakan fungsionalitas use case lainnya, apabila kondisi tertentu dipenuhi.
2.8.2
Class Diagram Class adalah sebuah spesifikasi yang jika diinstasiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut atau properti)
suatu
sistem,
sekaligus
menawarkan
memanipulasi keadaan tersebut (metoda atau fungsi). Class memiliki 3 (tiga) area pokok, yaitu: 1. Nama (dan stereotype) 2. Atribut
layanan
untuk
45
3. M etoda Atribut dan metoda dapat memiliki salah satu sifat berikut: -
Private, tidak dapat dipanggil dari luar class yang bersangkutan.
-
Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya.
-
Public, dapat dipanggil oleh siapa saja.
Gambar 2.4 Class Dengan Atribut-atribut
Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metoda.
Interface tidak dapat
langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian, interface mendukung resolusi metoda pada saat run-time.
46
Gambar 2.5 Class Dengan Interface
Class diagram menggambarkan kumpulan class, interface, dan hubungan
antar class atau interface tersebut.
Class diagram
menggambarkan suatu gambaran desain statis dari suatu sistem (Booch et al, 1999, p107). Contoh class diagram:
Gambar 2.6 Class Diagram (M iller, 2008)
47
Tabel 2.2 Relasi Pada Class Diagram (Booch, 1999) Simbol
Penjelasan Class Sebuah deskripsi dari seperangkat objek yang berbagi atribut, operasi, dan relasi yang sama. Class terbagi atas 3 (tiga) bagian, yaitu nama class pada bagian atas, atribut class pada bagian tengah, dan operasi pada bagian bawah. Association M erupakan hubungan structural antar class yang saling berelasi. Aggregation M erupakan bentuk spesial dari hubungan asosiasi yang menspesifikasikan semua hubungan antara kumpulan (the whole) dan sebuah bagian (the part). Agregasi digambarkan dengan wajik tidak terisi. Multiplicity M enggambarkan jumlah objek yang berpartisipasi dalam hubungan antar class. Generalization M erupakan sebuah relasi spesialisasi / generalisasi dimana suatu class dapat lebih general atau lebih spesifik dari class lainnya.
48
2.8.3
Activity Diagram Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Contoh activity diagram:
Gambar 2.7 Activity Diagram (M iller, 2008)
49
Activity diagram merupakan state diagram khusus, dimana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing).
Oleh karena itu,
activity diagram tidak menggambarkan internal behaviour sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
Tabel 2.3 Relasi Pada Activity Diagram (Booch, 1999) Simbol
Nama Simbol Initial State
Penjelasan M erepresentasikan dimulainya alur kerja suatu sistem dalam activity diagram.
Action State
Sebuat
state
yang
menggambarkan
eksekusi dari aksi atomic.
Transition between
M engindikasikan bahwa suatu objek dari
activities
state pertama akan menampilkan aksi-aksi tertentu dan memasuki state kedua ketika peristiwa tertentu terjadi dan kondisi telah terpenuhi.
50
Decision points
M enentukan kapan alur dalam aktivitas menjadi bercabang.
Synchronization
M enspesifikasikan dua atau lebih aktivitas
bars
yang dapat dilakukan secara paralel.
Final state
M erepresentasikan diakhirinya alur kerja suatu sistem dalam activity.
2.8.4
Sequence Diagram Sequence diagram
menggambarkan
sekumpulan
objek
dan
interaksinya, termasuk message yang dikirim terhadap urutan waktu (Booch et al, 1999, p245). Sequence diagram biasa digunakan untuk menggambarkan
skenario
atau
rangkaian
langkah-langkah
yang
dilakukan sebagai tanggapan dari sebuah event untuk menghasilkan keluaran tertentu. Diawali dari apa yang memicu aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan keluaran yang dihasilkan. M asing-masing objek memiliki lifeline vertikal, sedangkan message digambarkan secara horizontal. Contoh sequence diagram:
51
Gambar 2.8 Sequence Diagram (M iller, 2008)
Tabel 2.4 Relasi Pada Sequence Diagram (Booch, 1999) Simbol
Penjelasan Object Lifeline M erupakan
sebuah
garis
yang
merepresentasikan adanya sebuah objek dalam jangka waktu tertentu. Message, return, callback message Penyampaian pesan dari satu objek ke objek lain atau ke diri sendiri.
52
Activation M enggambarkan periode waktu ketika pemrosesan terjadi dalam objek tersebut.
2.9
Internet Internet adalah sebuah jaringan komputer yang terdiri dari berbagai macam ukuran jaringan computer di seluruh dunia, mulai dari sebuah PC, jaringanjaringan lokal berskala kecil, jaringan-jaringan kelas menengah, hingga jaringanjaringan utama yang menjadi tulang punggung internet, seperti NSFnet, NEARnet, SURAnet, dan lain-lain. Jaringan-jaringan ini saling berhubungan atau berkomunikasi satu sama lain dengan berbasiskan protokol IP (Internet Protocol, RFC 793) pada network layer-nya (layer ke 3 dari 7 layer OSI model) dan TCP (Transmission Control Protocol, RFC 791) atau UDP (User Datagram Protocol, RFC 768) pada transport layer-nya (layer ke 4), sehingga setiap pemakai dari setiap jaringan dapat saling mengakses semua service atau layanan yang disediakan oleh jaringan lainnya. Sedangkan, bila ditinjau dari segi penulisannya, terdapat 2 (dua) arti internet, yakni: 1. Internet Jaringan internet (huruf “i” kecil sebagai huruf awal) adalah suatu jaringan
komputer yang mana komputer-komputer terhubung dapat
53
berkomunikasi walaupun perangkat keras dan perangkat lunaknya berlainan satu dengan lainnya (sering kali disebut internet working). 2. Internet Jaringan Internet (huruf “I” besar sebagai huruf awal) adalah jaringan dari sekumpulan jaringan (networks of networks) yang terdiri dari jutaan komputer yang dapat berkomunikasi satu sama lain dengan menggunakan suatu aturan komunikasi jaringan computer (protokol) yang sama. Protokol yang digunakan tersebut adalah Transmission Control Protocol / Internet Protocol (TCP/IP) (Tunardy, 2010).
2.9.1
Sejarah Internet Berikut sejarah kemunculan dan perkembangan internet. Pada awalnya, internet merupakan koperasi komputer yang tidak dimiliki siapapun.
Internet lahir pada tahun 1969 ketika sebuah
kelompok peneliti di Departemen Pertahanan Amerika berhubungan dengan 4 (empat) komputer di UCLA, Stanford Research Institute, Utah University, dan California University di Santa Barbara. Hubungan ini dilakukan untuk menciptakan sebuah jaringan untuk berkomunikasi antara satu dengan yang lain mengenai proyek-proyek pemerintah. Jaringan ini dikenal dengan istilah ARPAnet -- ARPA merupakan singkatan dari Advanced Research Project Agency yang merupakan bagian dari Departemen Keamanan AS. Tiga tahun kemudian, lebih dari 50 (lima puluh) universitas dan agensi-agensi militer telah terhubung bersama-sama dalam jaringan
54
(network), dan jaringan komputer yang lain mulai muncul di sekitar negara bagian dan di dunia. Seiring dengan perkembangan ARPAnet, yang diikuti pula dengan kerjasama jaringan antara militer dan kaum pendidik, dan eksperimen NASA mengenai jaringan komputer, jaringan ini mulai terhubungkan satu dengan yang lain (interconnected) – inilah awal mula dipakai istilan “Internet”. Dalam waktu bersamaan, infrastruktur internet terus berkembang. Pada pertengahan tahun 1980-an, National Science Foundation (NSF) membangun jaringan yang memiliki kecepatan tinggi, line yang berusia panjang, dan terhubungkan dengan pusat komputer di seluruh Amerika Serikat. NSFnet menggantikan jaringan ARPAnet. NSFnet kemudian bekerjasama dengan jaringan lain yang terdapat di lusinan universitas, laboratorium penelitian, dan perusahaan-perusahaan teknologi tinggi. Untuk beberapa tahun, lalu lintas komersial terlarang di internet. Barulah pada tahun 1991, pemerintah federal memperbolehkannya dengan membentuk Commercial Internet Exchange (CIX). Sekarang, jutaan konsumen telah mengakses internet.
Internet
dengan cepat menjadi pusat perbelanjaan, sebuah cybermall yang praktis. Hari ini, buku, butik, games, permata, tiket konser, pizza, atau lobster sekalipun telah ditawarkan oleh took-toko di internet dengan harapan puluhan juta pembeli potensial siap membeli produk yang ditawarkan (Anonim5).
55
2.9.2
WWW (World Wide Web) WWW adalah suatu sistem informasi di internet dimana dokumen hypermedia disimpan, dan dapat diperoleh dari alamat yang unik. WWW terdiri dari ratusan ribu halaman atau dokumen yang saling terkait dan dihubungkan melalui link yang disebut hypertext. Link ini dapat berupa text, file, dan multimedia.
2.9.3
Web Server M enurut Turban dan Lee (2006, p93), web server adalah suatu software yang berfungsi sebagai: •
Suatu software yang mengawali dan menyediakan akses, menentukan siapa yang dapat mengakses informasi tertentu di server.
•
Suatu software yang menjalankan script dan program eksternal yang memberikan fungsi tambahan bagi dokumen web atau akses ke basis data.
•
Suatu software yang mengelola dan menjalankan fungsi server maupun isi situs web tersebut.
•
Suatu software yang mencatat transaksi yang terjadi yang dilakukan oleh pengguna situs, yang berisikan karakter umum pengguna (misalnya browser yang digunakan oleh pengakses) dan isi yang mereka minati untuk bereaksi terhadap permintaan dari client atau user melalui browser.
56
2.9.4
Web Browser Web browser adalah sebuah perangkat lunak yang memungkinkan pengguna untuk menampilkan dan berinteraksi dengan text, gambar, and informasi yang ada pada halaman web pada sebuah di World Wide Web (WWW) atau local area network (LAN). Yang paling populer saat ini adalah Firefox 2.0, termasuk graphical browsers, yang berarti dapat menampilkan grafik ataupun teks dengan sama baiknya. Sebagian browser modern dapat mempresentasikan multimedia, termasuk suara dan video, meskipun memerlukan beberapa plug-in untuk format tertentu (Sufandi, 2010).
2.9.5 HTTP (Hyper Text Tran sfer Protocol) HTTP merupakan protocol client-server yang digunakan sebagai dasar peraturan dalam pertukaran file (teks, gambar, grafik, suara, video, dan file multimedia lainnya) pada WWW.
Sebagai family dari pada
protokol TCP/IP yang merupakan dasar bagi pertukaran informasi di internet, HTTP merupakan protokol aplikasi.
Konsep utama yang
dimiliki oleh HTTP adalah ide bahwa suatu file dapat mengandung referensi ke file yang lain (yang dapat menyebabkan permintaan informasi bertambah).
2.9.6
HTML (Hyper Text Markup Language) HTM L merupakan sebuah bahasa pemrograman khusus yang digunakan untuk membuat isi halaman web. Script HTM L terdiri atas
57
struktur baku yang memiliki sejumlah tag pembuka dan penutup (Wahana Komputer, 2007). Contoh:
Hello Bozz Hello Bozz
Ini contoh halaman web
2.10
Teori Khusus 2.10.1 Teknologi BlackBerry® (BB) Blackberry® adalah Perangkat Selular yang memiliki kemampuan layanan Push E-mail, Telepon, SMS, menjelajah Internet, dan berbagai kemampuan nirkabel lainnya.
Penggunaan gadget canggih ini begitu
fenomenal belakangan ini, sampai menjadi suatu kebutuhan untuk Fashion. BlackBerry® pertama kali diperkenalkan pada tahun 1997 oleh perusahaan Kanada, Research In Motion (RIM).
Kemampuannya
58
menyampaikan informasi melalui jaringan data nirkabel dari layanan perusahaan telepon genggam hingga mengejutkan dunia. Seperti yang telah disebutkan di atas mengenai keunggulan dari BlackBerry®, yaitu Push E-mail.
Dengan Push E-mail, semua e-mail
masuk dapat diteruskan langsung ke ponsel.
E-mail juga sudah
mengalami proses kompresi dan scan di BlackBerry® server sehingga aman dari virus. Pengguna tidak perlu mengakses Internet terlebih dulu dan membuka satu persatu e-mail yang masuk atau pemeriksaan e-mail baru.
Hal ini dimungkinkan karena pengguna akan terhubung secara
terus-menerus dengan dunia maya melalui jaringan telepon seluler yang tersedia. Kelebihan lainnya adalah kemampuan BlackBerry® yang dapat menampung e-mail hingga puluhan ribu tanpa ada risiko hang, asalkan masih ada memory tersisa. Semua layanan BlackBerry® ini dikenal sangan aman, baik e-mail, chatting, maupun browsing.
Untuk browsing Internet, data-data dari
website sudah dikompresi sehingga lebih cepat dibuka dan biaya akses menjadi murah (Anonim2).
2.10.2 MySQL MySQL merupakan sebuah Relational Database Management Systems (RDBMS) yang bersifat open source (Anonim3).
Dengan
menggunakan konsep RDM BS, MySQL tidak menyimpan data ke dalam sebuah area yang besar, namun menyimpan data-data ke dalam tabel-
59
tabel basis data. MySQL tetap menggunakan Structure Query Language (SQL) di dalam memproses data di dalam basis data. MySQL mengimplementasikan konsep client-server yang terdiri dari daemon mysqld dan beragam jenis aplikasi client dan library. MySQL pertama kali dikeluarkan Januari 1998. MySQL telah menjadi sebuah open source database server yang paling popular di seluruh dunia. MySQL adalah salah satu jenis database server yang sangat terkenal.
Kepopulerannya disebabkan MySQL menggunakan SQL
sebagai bahasa dasar untuk mengakses basis datanya. Selain itu, bersifat free (tidak perlu membayar untuk menggunakannya) pada berbagai platform (kecuali pada Windows, yang bersifat shareware atau perlu membayar setelah melakukan evaluasi dan memutuskan untuk digunakan untuk keperluan produksi).
Perangkat lunak MySQL sendiri bisa di-
download dari http://mysql.org atau http://mysql.com. MySQL termasuk jenis RDBM S (Relational Database Management System). Itulah sebabnya istilah seperti tabel, baris, dan kolom digunakan pada MySQL. Pada M ySQL, sebuah database mengandung satu atau sejumlah tabel.
Tabel terdiri atas sejumlah baris dan setiap bari
mengandung satu atau beberapa kolom (Kadir, 2003, p353).
60
2.10.3 PHP PHP merupakan singkatan dari PHP Hypertext Preprocessor yang digunakan sebagai bahasa script server-side dalam pengembangan web yang disisipkan pada dokumen HTM L. PHP merupakan software Open Source yang disebarkan dan dilisensikan secara gratis, serta dapat didownload secara bebas dari sistus resminya di http://www.php.net (Anonim4). PHP ditulis dengan menggunakan bahasa C. PHP memungkinkan web dapat dibuat menjadi dinamis sehingga maintenance situs web tersebut menjadi lebih mudah dan efisien. PHP diciptakan pertama kali oleh Rasmus Lerdorf pada tahun 1994. Pada awalnya, PHP digunakan untuk mencatat jumlah serta untuk mengetahui siapa saja pengunjung pada homepage-nya. Pada tahun 1996, PHP telah banyak digunakan dalam website di dunia. Sebuah kelompok pengembang software yang terdiri dari Rasmus, Zewe Suraski, Andi Gutman, Stig Bakken, Shane Caraveo, dan Jim Winstead
bekerja
sama
untuk
menyempurnakan
PHP
2.0.
Penyempurnaan terus dilakukan sehingga pada tahun 2007 dikeluarkan PHP 4.0.
Tidak berhenti di situ, kemampuan PHP terus bertambah.
Versi terbaru yang telah dikeluarkan adalah PHP 5.0x (Peranginangin, 2006, p2).
61
Kelebihan-kelebihan PHP adalah: 1. M engumpulkan data dari form. 2. M enghasilkan isi halaman web dinamis, dan kemampuan mengirim serta menerima cookies. 3. Dapat digunakan pada semua sistem operasi, antara lain: Linux, Unix, M icrosoft Windows, M ac OS X, RISC OS. 4. M endukung banyak web-server, seperti: Apache, Microsoft Internet Information Server (MIIS), Netscape, dan lainnya. 5. Dapat bekerja sebagai suatu CGI processor. 6. Tidak terbatas pada hasil output HTM L. 7. M engolah output gambar, file PDF, dan movies Flash. 8. Dapat menghasilkan teks, seperti XHTM L dan file XM L lainnya. 9. M endukung banyak database.
2.10.4 Eclipse
M enurut Koto (2010), Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse: •
M ulti-platform: Target sistem operasi Eclipse adalah M icrosoft Windows, Linux, Solaris, AIX, HP-UX dan M ac OS X.
62 •
M ulti-language:
Eclipse
dikembangkan
dengan
bahasa
pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. •
M ulti-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat
lunak,
seperti dokumentasi,
test perangkat
lunak,
pengembangan web, dan lain sebagainya.
Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. yang membuatnya populer
Selain itu, kelebihan dari Eclipse
adalah
kemampuannya untuk
dapat
dikembangkan oleh pengguna dengan komponen yang dinamakan plugin. Eclipse IDE lebih dikenal sebagai Java IDE.
Walaupun begitu
Eclipse IDE (lebih sering dipanggil dengan sebutan Eclipse Platform) sebenarnya adalah IDE untuk apa saja. Hampir semua bahasa pemrograman terkenal bisa diolah disini. Eclipse dapat dipergunakan untuk membuat beragam aplikasi seperti web sites, embedded Java™ programs, C++ programs, PHP, danEnterprise JavaBeans™, embedded device
applications, bahkan Flex™
projectdan Actionscript
3.0
project bisa dibuat melalui Flex Builder yang notabene adalah salah satu plug-inEclipse.
63
Platform Eclipse dirancang dan didesain untuk memenuhi beberapa keadaan dibawah ini : •
M endukung perakitan dan kompilasi berbagai tool yang berguna untuk pembuatan aplikasi.
•
M endukung plug-in (tool)
dari
vendorsoftwareindependen,
yang
pihak bisa
mana
saja
termasuk
diintegrasikan
kedalam
Platform Eclipse. •
Sebagai tool yang bisa membuat, mengedit dan memanipulasi filefile dari berbagai content type (contohnya : HTM L, Java, C, JSP, EJB, XM L, dan GIF, PHP, Actionscript, Perl) .
•
M endukung
pengembangan
lingkungan
aplikasi
(application
development environments) baik GUI (Graphical User Interface) dannon-GUI. •
Bisa dijalankan pada banyak sistem operasi, termasuk Windows® dan Linux™.
•
Berperan besar dalam mengembangkan bahasa pemrograman Java sebagai perangkat bahasa penulisan populer.
2.10.5 JDE khusus BB BlackBerry® Java® Application Development ini memberikan paket program lengkap untuk kemudahan pengembangan aplikasi nirkabel canggih (Anonim6):
64 •
API baru dan kemampuan yang disempurnakan.
•
Konektivitas nirkabel yang disederhanakan untuk Internet atau intranet perusahaan.
•
Kemudahan penyesuaian antarmuka pengguna.
•
Client-side logic.
•
Dukungan konten push.
•
Integrasi lokal dengan email, Personal Information M anagement (PIM ), multimedia, dan aplikasi smartphone BlackBerry.
•
Layanan berbasis lokasi.
•
M eningkatkan produktivitas pengembang.
•
M empermudah pengembangan aplikasi.
•
M enyediakan program lengkap dan Java API yang disempurnakan.
•
Berkomunikasi dengan sebagian besar bahasa umum pemrograman, protokol, dan format data.