bab 2 landasan teori - thesis.binus.ac.idthesis.binus.ac.id/doc/bab2/2007-2-00193-if-bab...
TRANSCRIPT
7
BAB 2
LANDASAN TEORI
2.1 Pengertian Sistem
Dari segi Etimologi, kata sistem sebenarnya berasal dari Bahasa Yunani
yaitu “Systema”, yang dalam Bahasa Inggris dikenal dengan “SYSTEM”, yang
mempunyai satu pengertian yaitu sehimpunan bagian atau komponen yang saling
berhubungan secara teratur dan merupakan satu keseluruhan yang tidak
terpisahkan. Sistem adalah sekelompok elemen yang terintegrasi dengan maksud
yang sama untuk mencapai suatu tujuan (internet).
Sistem adalah sekumpulan komponen yang saling berhubungan, saling
bekerja yang bersama-sama untuk mencapai tujuan dengan menerima input dan
menghasilkan output melalui suatu proses tertentu (internet).
Dari pengertian di atas dapat diambil kesimpulan bahwa sistem
merupakan suatu jaringan yang terdiri dari elemen-elemen yang terintegrasi satu
sama lainnya untuk mencapai tujuan.
2.2 Analisis dan Perancangan Aplikasi
2.2.1 Pengertian Analisis
Analisis merupakan proses mengekstrasi kebutuhan dari sebuah
sistem. Dapat pula dikatakan, bahwa analisis sebagai proses untuk
8
menetapkan apa yang harus dilakukan oleh sistem dalam rangka
memenuhi kebutuhan pemakai.
2.2.2 Pengertian Perancangan
Perancangan merupakan tahap penerjemahan dari keperluan atau
data yang telah dianalisis ke dalam bentuk yang mudah dimengerti oleh
pemakai. Ada tiga atribut yang penting dalam proses perancangan, yaitu :
struktur data, arsitektur perangkat lunak, dan prosedur rinci.
2.2.3 Pengertian Aplikasi
Aplikasi merupakan program yang dibuat untuk melaksanakan
suatu fungsi bagi pengguna atau aplikasi yang lain. Contoh aplikasi
adalah program pemroses kata dan web browser.
2.3 E-Learning
2.3.1 Pengertian E-Learning (Electronic Learning)
E-learning adalah sistem pembelajaran secara elektronik,
menggunakan media elektronik, internet, komputer, file multimedia
(suara, gambar, animasi dan video) (www.google.com).
Secara filosofis, dapat dijelaskan :
1. E-learning merupakan penyampaian informasi, komunikasi,
pendidikan, dan pelatihan secara online.
2. E-learning menyediakan seperangkat alat yang dapat memperkaya
nilai belajar secara konvensional (model belajar konvensional, kajian
9
terhadap buku teks, CD-ROM, dan pelatihan berbasis komputer),
sehingga dapat menjawab tantangan perkembangan globalisasi.
3. E-learning tidak berarti menggantikan model belajar konvensional di
dalam kelas, tetapi memperkuat model belajar tersebut melalui
pengembangan teknologi pendidikan.
Di sini terlihat bahwa e-learning merupakan kombinasi antara
informasi, komunikasi, pendidikan yang merupakan elemen inti dalam
strategi mencapai keberhasilan. Dalam hal ini, e-learning tidak identik
dengan e-training sebab e-learning menyangkut solusi terhadap
tantangan pembaharuan (update), sedangkan e-training adalah pelatihan
yang dilakukan melalui komputer berbasis internet dengan teknik
synchronous. Di dalam e-learning siswa mempunyai pilihan untuk
menetapkan konten (collaborative solution) dan kecepatan (self pace).
Di dalam internet terdapat bermilyar-milyar situs (website) dan
situs inilah yang merupakan sumber informasi tidak terbatas sebab setiap
saat jumlah situs ini akan terus bertambah seiring dengan terjadinya
pembaharuan sehingga seringkali kita mendengar ungkapan masa
sekarang adalah jaman atau masa informasi. Web atau juga disebut
dengan World Wide Web (WWW) terbentuk dari milyaran website yang
berisikan sejumlah informasi dari satu situs dan terhubung (link) dengan
informasi lain dari situs yang berbeda. Fungsi link inilah yang
menyebabkan seseorang mudah memperoleh informasi yang dibutuhkan
dalam waktu relatif singkat. Bagaimana seseorang dapat mencari dan
menemukan informasi yang diperlukan dari sedemikian banyak sumber
10
informasi dengan cara yang efektif dan efisien merupakan inti dari e-
learning.
2.3.2 Tipe E-Learning
2.3.2.1 Synchronous Training
Synchronous berarti “pada waktu yang sama”. Jadi,
synchronous adalah tipe pelatihan, di mana proses pembelajaran
terjadi ketika pengajar sedang mengajar dan murid sedang belajar.
Hal tersebut memungkinkan interaksi langsung antara guru dan
murid, baik melalui internet maupun intranet. Pelatihan e-learning
synchronous lebih banyak digunakan seminar atau konferensi
yang pesertanya berasal dari beberapa negara. Penamaan tersebut
sering pula dinamakan web conference atau webinar (web
seminar) dan sering digunakan kelas atau kuliah universitas
online.
Synchronous training mengharuskan guru dan semua murid
mengakses internet bersamaan. Pengajar memberikan makalah
dengan slide presentasi dan peserta web conference dapat
mendengarkan presentasi melalui hubungan internet. Peserta pun
dapat mengajukan pertanyaan atau komentar melalui chat
window.
Jadi, synchronous training sifatnya mirip pelatihan di ruang
kelas. Namun, kelasnya bersifat maya (virtual) dan peserta
tersebar di seluruh dunia dan terhubung melalui internet. Oleh
11
karena itu, synchronous training sering pula dinamakan virtual
classroom.
2.3.2.2 Asynchronous Training
Asynchronous berarti “tidak pada waktu yang bersamaan”.
Jadi, seseorang dapat mengambil pelatihan pada waktu yang
berbeda dengan pengajar memberikan pelatihan. Pelatihan ini
lebih populer di dunia e-learning karena memberikan keuntungan
lebih bagi peserta pelatihan karena dapat mengakses pelatihan
kapanpun dan di manapun.
Pelatihan berupa paket pelajaran yang dapat dijalankan di
komputer manapun dan tidak melibatkan interaksi dengan
pengajar atau pelajar lain. Oleh karena itu, pelajar dapat memulai
pelajaran dan menyelesaikannya setiap saat. Paket pelajaran
berbentuk bacaan dengan animasi, simulasi, permainan edukatif,
maupun latihan atau tes dengan jawabannya.
Akan tetapi, ada pelatihan asynchronous training yang
terpimpin, di mana pengajar memberikan materi pelajaran melalui
internet dan peserta pelatihan mengakses materi pada waktu yang
berlainan. Pengajar dapat pula memberikan tugas atau latihan dan
peserta mengumpulkan lewat e-mail. Peserta dapat berdiskusi atau
berkomentar dan bertanya melalui bulletin board.
12
2.3.3 Komponen E-Learning
Komponen-komponen utama dalam e-learning terdiri dari :
1. Pelajar
Memenuhi kebutuhan pelajar adalah dasar dari setiap e-learning yang
efektif. Ketika instruksi disampaikan dari jarak jauh, tantangan baru
muncul karena pelajar-pelajar terpisahkan satu sama lain dengan latar
belakang yang berbeda.
2. Fakultas
Keberhasilan suatu e-learning tergantung pada fakultas. Pesan
instruktur dalam e-learning adalah :
a. Memahami karakteristik dan kebutuhan pelajar tanpa adanya
kontak langsung.
b. Mengaplikasikan metode pengajaran yang sesuai dengan harapan
pelajar.
c. Mengembangkan teknologi penyampaian, sementara tetap
memfokuskan pada perannya sebagai pelajar.
d. Berfungsi secara efektif sebagai fasilitator yang mahir.
3. Fasilitator
Seorang fasilitator harus mengerti kebutuhan pelajar dan harapan
instruktur. Yang terpenting, fasilitator harus bersedia untuk mengikuti
arahan guru. Fasilitator yang menyediakan peralatan, mengumpulkan
tugas, mengawasi ujian, dan bertindak sebagai mata dan telinga
instruktur.
13
4. Staf pendukung
Staf pendukung memastikan detail-detail yang diperlukan bagi
keberhasilan program agar digunakan secara efektif. Kebanyakan
program e-learning yang sukses menggunakan staf pendukung untuk
mengurus pendaftaran pelajar, duplikasi dan distribusi materi,
pemesanan buku teks, penjadwalan fasilitas, pemrosesan rapor, dan
lain-lain.
5. Administrator
Administrator berfungsi sebagai pembuat kesepakatan, pembuat
keputusan, dan wasit. Mereka memastikan sumber daya teknologi
agar digunakan secara efektif untuk meneruskan misi akademik
institusi dan mempertahankan fokus akademik supaya tetap berada
pada jalur yang benar.
2.3.4 Keuntungan E-Learning
Kelebihan-kelebihan yang ditawarkan e-learning antara lain :
1. Biaya
Perusahaan tidak perlu mengeluarkan biaya untuk menyewa pelatih
dan ruang kelas, transportasi peserta pelatihan atau pelatih, dan biaya
lainnya.
2. Fleksibilitas waktu
Karyawan dan pelajar mudah mengakses e-learning. Ketika waktu
sudah tidak memungkinkan atau ada hal lain yang lebih mendesak,
mereka dapat meninggalkan pelajaran di e-learning saat itu juga.
14
3. Fleksibilitas tempat
Adanya e-learning membuat karyawan dan murid tidak perlu pergi
jauh ke ruang kelas selama komputer terhubung dengan komputer
yang menjadi server e-learning, sehingga mereka dapat
mengaksesnya dengan mudah.
4. Fleksibilitas kecepatan pembelajaran
E-learning dapat disesuaikan dengan kecepatan belajar masing-
masing siswa. Siswa mengatur sendiri kecepatan pelajaran yang
diikuti. Pelajar pun dapat memilih modul yang ingin dipelajari.
5. Standarisasi pengajaran
E-learning dapat menghapuskan perbedaan kemampuan dan metode
pengajaran yang diterapkan guru. Pelajaran e-learning selalu
memiliki kualitas sama setiap kali diakses dan tidak tergantung
suasana hati pengajar.
6. Efektivitas pengajaran
Penyampaian pelajaran e-learning dapat berupa simulasi dan kasus-
kasus, menggunakan bentuk permainan dan menerapkan teknologi
yang masih canggih.
7. Kecepatan distribusi
E-learning dapat cepat menjangkau karyawan yang berada di luar
wilayah pusat. Apabila ada perubahan materi pelatihan, administrator
hanya perlu mengubah di server e-learning.
15
8. Ketersediaan on-demand
E-learning dapat diakses sewaktu-waktu, sehingga kita dapat segera
mempraktikan pelajaran dan menyelesaikan tugas dengan baik.
9. Otomatisasi proses administrasi
E-learning menggunakan suatu Learning Management System (LMS)
yang berfungsi sebagai platform pelajaran-pelajaran e-learning. LMS
berfungsi pula menyimpan data-data pelajaran, dan proses
pembelajaran yang berlangsung.
2.3.5 Keterbatasan E-learning
E-learning memiliki beberapa keterbatasan yang harus diwaspadai oleh
pengelola pelatihan sebelum memutuskan menggunakan e-learning.
Keterbatasan tersebut antara lain :
1. Budaya
Penggunaan e-learning menuntut budaya self-learning, di mana
seseorang memotivasi diri sendiri agar mau belajar. Sebaliknya, pada
sebagian besar budaya pelatihan di Indonesia, motivasi belajar lebih
banyak tergantung pada pengajar.
2. Investasi
Walaupun e-learning menghemat banyak biaya, tetapi organisasi
harus mengeluarkan investasi awal yang cukup besar untuk mulai
mengimplementasikan e-learning.
16
3. Teknologi
Karena teknologi yang digunakan beragam, ada kemungkinan
teknologi tersebut tidak sejalan dengan yang sudah ada dan terjadi
teknologi sehingga e-learning tidak berjalan baik. Oleh karena itu,
kompatibilitas teknologi yang digunakan harus diteliti sebelum
memutuskan menggunakan paket e-learning.
4. Infrastruktur
Internet belum menjangkau semua kota di Indonesia. Akibatnya,
belum semua orang atau wilayah belum dapat merasakan e-learning
dengan internet.
5. Materi
Walaupun e-learning menawarkan berbagai fungsi, ada beberapa
materi yang tidak dapat diajarkan melalui e-learning. Pelatihan yang
memerlukan banyak kegiatan fisik, sulit disampaikan melalui e-
learning secara sempurna. Akan tetapi, e-learning dapat digunakan
untuk memberikan dasar-dasar pelatihan sebelum masuk ke praktek.
2.4 Learning Management System (LMS)
Learning Management System (LMS) adalah sistem yang membantu
administrasi dan berfungi sebagai platform e-learning content. Beberapa fungsi
dasar LMS adalah :
1. Katalog
Katalog yang baik harus dapat menampilkan informasi tentang suatu
pelajaran dengan lengkap, meliputi judul, tujuan, cakupan atau outline,
17
durasi, target pelajar, tanggal tersedia, materi pendahuluan, tes yang harus
diikuti, dan lain sebagainya.
2. Registrasi dan persetujuan
Memungkinkan seorang calon peserta pelatihan mendaftarkan diri secara
online, baik untuk pelajaran online maupun di kelas.
3. Menjalankan dan memonitor e-learning
LMS harus menjalankan materi pelajaran e-learning dengan baik dan
mempunyai kemampuan merekam kegiatan agar dapat dibuat laporannya.
4. Evaluasi
Fungsi ini dapat mengukur keahlian peserta pelatihan sebelum dan sesudah
pelatihan ini. Evaluasi ini harus dapat mengukur seberapa jauh peserta
pelatihan menyerap materi.
5. Komunikasi
LMS berguna pula sebagai sarana komunikasi bagi departemen pelatihan dan
anggota organisasi. Komunikasi di sini dapat berarti pengajar memberikan
bacaan tambahan kepada peserta pelatihan melalui sistem.
6. Laporan
Melalui LMS, para administrator pelatihan dapat memperoleh laporan berisi
data pelatihan.
7. Rencana pelatihan
LMS yang baik dapat mengikutsertakan rencana pelatihan atau training plan
atau development plan, jadi berdasarkan rencana pelatihan, LMS secara
otomatis merekomendasikan program pelatihan yang sesuai dan mengatur
jadwalnya.
18
8. Integrasi
Dengan integrasi yang baik, LMS akan mendapatkan daftar informasi
karyawan yang terbaru dari sistem SDM yang sudah ada.
2.5 Learning Content Management System (LCMS)
Learning Content Management System adalah sistem yang fungsi
utamanya menyusun dan mengatur materi atau content e-learning. Jadi, dalam
LCMS, seorang pengembang materi e-learning dapat menciptakan storyboard,
menggabungkan materi, mengubah isi materi, dan lain sebagainya.
LCMS dan LMS mempunyai perbedaan, antara lain : 1. Fungsi LMS
lebih terfokus pada proses pembelajaran, sedangkan fokus dari LCMS adalah
pembuatan materi atau content. 2. LMS dapat mengatur komunitas pelajar dalam
menggunakan materi e-learning yang disimpan dan dikelola oleh LCMS.
Kemudian, LCMS memberikan data mengenai proses pembelajaran kepada LMS
untuk disimpan. 3. Fungsi administrasi yang ditawarkan oleh LCMS lebih
sederhana dan tidak memiliki fungsi yang dimiliki LMS.
2.6 Rekayasa Perangkat Lunak
2.6.1 Pengertian Perangkat Lunak
Menurut Pressman (2001, p6), yang dimaksud perangkat lunak atau
software adalah :
1. Instruksi (program komputer) yang apabila dieksekusi akan
menghasilkan fungsi dan hasil yang diinginkan.
19
2. Struktur data yang memungkinkan sebuah program untuk
memanipulasi sebuah informasi.
3. Dokumen yang mendeskripsikan operasi dan kegunaan program.
Dengan kata lain, yang dimaksud dengan perangkat lunak adalah
kombinasi dari program komputer dan struktur data, yang disertai dengan
dokumentasi yang menyediakan metode logika dan prosedur yang
diinginkan.
Sedangkan yang dimaksud dengan rekayasa perangkat lunak,
menurut Pressman (2001, p20), adalah aplikasi dan pembelajaran dari
pendekatan terhadap pengembangan, pengoperasian, dan pemeliharaan
perangkat lunak, yang sistematik, berdisiplin, dan dapat diukur. Dengan
kata lain, yang dimaksud dengan rekayasa perangkat lunak adalah
penerapan teknik terhadap perangkat lunak.
Menurut Pressman (2001, p20), rekayasa perangkat lunak terdiri
dari beberapa tahapan yaitu proses (process), metode (method), dan
peralatan (tools). Dasar yang mendukung perangkat lunak adalah fokus
pada kualitas. Tahap proses dapat mendefinisikan sebuah framework dari
sebuah kegiatan penting yang harus dilakukan untuk menghasilkan
teknologi rekayasa perangkat lunak yang efektif. Metode rekayasa
perangkat lunak menyediakan teknik atau cara untuk membangun sebuah
perangkat lunak. Peralatan rekayasa perangkat lunak menyediakan
otomatisasi atau semi otomatisasi yang mendukung proses dan metode.
20
2.6.2 Karakteristik Perangkat Lunak
Menurut Pressman (2001, p6), perangkat lunak memiliki beberapa
karakteristik sebagai berikut :
a. Perangkat lunak dikembangkan atau dirancang, bukan diproduksi
seperti pada pengertian klasik.
Meskipun terdapat kemiripan antara pengembangan perangkat lunak
dan perangkat keras (hardware), namun pada dasarnya kedua hal
tersebut adalah berbeda. Keduanya memerlukan desain yang baik
untuk mencapai kualitas tinggi, namun produksi hardware dapat
menemukan masalah dalam kualitas, sedangkan dalam
pengembangan perangkat lunak, hal tersebut tidak terjadi (jika terjadi
maka mudah diperbaiki).
b. Perangkat lunak tidak habis dipakai.
Pada hardware rusak, terdapat spare part yang dapat
menggantikannya. Sedangkan pada perangkat lunak, tahap
pemeliharaan tidak semudah hardware karena tidak memiliki spare
part apapun. Saat perngkat lunak menemukan kegagalan, berarti
terjadi kesalahan pada desain atau proses.
c. Kebanyakan perangkat lunak dibuat berdasarkan pesanan walaupun
industri mengarah pada perakitan berbasiskan komponen.
Suatu komponen perangkat lunak harus dirancang dan mampu
diterapkan pada berbagai jenis program. Dengan demikian, komponen
perangkat lunak tersebut dapat digunakan berulangkali dan
21
dimanipulasi, sehingga memungkinkan untuk menghasilkan suatu
perangkat lunak yang berbeda.
2.7 System Development Life Cycle (SDLC)
Menurut Turban, Rainer, dan Potter (2001, pp477-486), yang dimaksud
dengan SDLC adalah kerangka terstruktur yang terdiri dari beberapa proses yang
berurutan yang diperlukan untuk membangun suatu sistem informasi. Pendekatan
waterfall digunakan untuk menggambarkan SDLC.
Gambar 2.1 An Eight-Stage SDLC
(Turban, Rainer, Potter, 2001, p477)
Tahap-tahap SDLC adalah sebagai berikut :
1. Investigasi Sistem (System Investigation).
Feasibility study atau pembelajaran terhadap segala kemungkinan yang dapat
terjadi adalah tahap terpenting dalam tahap system investigation. Dengan
22
feasibility study yang benar maka suatu perusahaan dapat terhindar dari
kesalahan yang dapat meningkatkan pengeluaran. Feasibility study
menentukan kemungkinan adanya keuntungan dari proyek pengembangan
sistem yang diajukan dan menilai proyek tersebut secara teknik, biaya, dan
sifat.
2. Analisis Sistem (System Analysis).
System Analysis adalah analisis terhadap masalah bisnis yang akan
diselesaikan dengan sistem informasi oleh perusahaan. Tahap ini
mendefinisikan masalah bisnis, mengidentifikasikan penyebab,
menspesifikasikan solusi, serta mengidentifikasi informasi-informasi yang
diperlukan. Tujuan utama dari tahap ini adalah untuk menggabungkan
informasi mengenai sistem yang ada dan menentukan kebutuhan dari sistem
yang baru. Beberapa hal yang dihasilkan dari tahap analisis adalah :
• Kekuatan dan kelemahan dari sistem yang telah ada.
• Fungsi-fungsi yang diperlukan oleh sistem yang baru untuk menyelesaikan
permasalahan.
• Kebutuhan informasi mengenai pengguna untuk sistem yang baru.
3. Desain Sistem (System Design).
Tahap ini menjelaskan bagaimana suatu sistem akan bekerja. Yang
dihasilkan oleh desain sistem adalah sebagai berikut :
• Output, Input, dan User Interface dari sistem.
• Hardware, software, database, telekomunikasi, personel, dan prosedur.
• Penjelasan bagaimana komponen terintegrasi.
23
4. Pemrograman (Programming).
Tahap ini mencakup penerjemahan spesifikasi desain ke dalam bahasa
komputer.
5. Pengujian (Testing).
Tahap ini dipergunakan untuk memeriksa apakah pemrograman komputer
telah menghasilkan hasil yang diinginkan dan diharapkan atas situasi
tertentu. Testing didesain untuk mendeteksi adanya error di dalam coding.
6. Penerapan (Implementation).
Implementasi adalah proses perubahan dari penggunaan sistem lama ke
sistem yang baru. Ada empat strategi yang dapat digunakan oleh suatu
perusahaan dalam menghadapi perubahan, yaitu :
• Parallel conversion : Perusahaan akan menerapkan kedua sistem, yang
lama dan yang baru, secara simultan dalam periode waktu tertentu.
• Direct conversion : Sistem yang baru akan langsung dterapkan dan
yang lama akan langsung didisfungsikan.
• Pilot conversion : Sistem yang baru akan dipergunakan dalam satu
bagian dari organisasi. Apabila sistem baru tersebut berhasil maka akan
digunakan pada bagian lain dari organisasi.
• Phased conversion : Sistem akan digunakan secara bertahap,
perkomponen atau modul. Satu persatu modul akan dicoba dan dinilai, bila
satu modul berhasil maka modul lain akan digunakan sampai seluruh sistem
berhasil dengan baik.
24
7. Pengoperasian dan Pemeliharaan (Operation and Maintenance).
Setelah tahap konversi berhasil maka sistem baru akan dioperasikan dalam
suatu periode waktu. Ada beberapa tahap dalam maintenance atau
pemeliharaan, yaitu :
a. Debugging the program : Proses yang berlangsung selama sistem berjalan.
b. Terus memperbaiki sistem untuk mengakomodasi perubahan dalam situasi
bisnis.
c. Menambah fungsi atau feature baru di dalam sistem.
2.8 Entity Relationship Diagram (ERD)
Menurut Whitten, Bentley, dan Dittman (2004, pp295-307), entity
relationship diagram adalah pemodelan data yang menggunakan beberapa notasi
untuk menggambarkan data yang berhubungan dengan entity dan relationship
yang dideskripsikan oleh data tersebut.
Ada beberapa konsep dasar bagi setiap model data :
1. Entity
Entity adalah sebuah kelas dari orang, tempat, objek, kejadian, atau konsep
mengenai apa yang diperlukan untuk mengambil dan menyimpan data.
Entity dilambangkan dengan
Beberapa kategori dari entity adalah sebagai berikut :
a. Orang : vendor, pelanggan, karyawan, dan lain-lain.
b. Tempat : ruangan, kantor cabang, gedung, dan lain-lain.
c. Objek : produk, mesin, bahan dasar, dan lain-lain.
25
d. Kejadian : invoice, pemesanan, penjualan, dan lain-lain.
e. Konsep :stok, dana, account, kualifikasi, dan lain-lain.
2. Atribut (Attribute)
Yang dimaksud dengan atribut adalah karakteristik dari entity.
a. Domain
Nilai yang diperbolehkan dari tiap atribut didefinisikan ke dalam tiga
properti yaitu :
- Tipe Data : properti dari atribut yang mengidentifikasikan tipe data
yang dapat disimpan ke dalam atribut.
- Domain : properti dari atribut yang mendefinisikan nilai apa yang
boleh diambil oleh suatu atribut.
- Default Value : suatu nilai yang akan disimpan apabila nilai tidak
dispesifikasikan oleh user.
b. Identifikasi (Identification)
Dengan banyaknya instance yang dimiliki oleh suatu entity maka
diperlukan suatu key yang unik untuk mengidentifikasikan setiap instance
berdasarkan data dari atribut. Yang dimaksud dengan key adalah suatu
atribut atau sekumpulan atribut yang mengasumsikan nilai yang unik dari
setiap bagian dari entity dan seringkali disebut identifier.
Candidate key adalah salah satu key yang memiliki kemungkinan
untuk dijadikan primary key. Primary key adalah candidate key yang unik
dan mengidentifikasikan sebuah bagian dari entity. Alternate key adalah
candidate key yang tidak dijadikan primary key.
26
3. Relasi (Relationship)
Yang dimaksud dengan relationship adalah sebuah hubungan antara satu
atau lebih entity. Cardinality adalah jumlah minimum dan maksimum dari
keberadaan suatu entity yang mungkin direlasikan dengan entity lain.
Degree adalah sejumlah entity yang berpartisipasi dalam sebuah
relationship. Foreign key adalah sebuah primary key yang digunakan oleh
entity lain untuk mengidentifikasikan instansi dari sebuah relationship.
Berikut ini adalah notasi dari cardinality :
1. Tepat satu (satu dan hanya satu) : nilai minimum dan maksimum
adalah satu (1).
2. Nol atau satu : nilai minimum adalah nol (0) dan nilai maksimum
adalah satu (1).
3. Satu atau lebih : nilai minimum adalah satu (1) dan nilai maksimum
adalah banyak (>1).
4. Nol, satu, atau lebih : nilai minimum adalah nol (0) dan nilai
maksimum adalah banyak (>1).
5. Lebih dari satu : nilai minimum dan maksimum adalah banyak (>1).
2.9 State Transition Diagram (STD)
Menurut Whitten, Bentley, dan Dittman (2004, p673), state transition
diagram adalah alat yang digunakan untuk menggambarkan urutan dan variasi
dari layar, yang dapat muncul selama user session.
Ada beberapa hal yang perlu diketahui dalam pembuatan sebuah STD,
yaitu :
27
1. State
Adalah sebuah kondisi dari keadaan, atau form, yang dapat digunakan oleh
komponen suatu sistem.
Disimbolkan dengan
Ada dua macam state, yaitu :
a. Current state
Keadaan terkini dari suatu sistem, atau pada state mana suatu sistem
berada pada saat ini. Keadaan ini disebut current state.
b. Final State
Final state adalah keadaan terakhir yang dapat dicapai oleh suatu sistem.
Contohnya : on atau off.
2. Transition
Merupakan simbol yang menyatakan suatu perubahan dari suatu keadaan ke
keadaan lain.
Disimbolkan dengan
3. Event
Adalah suatu kejadian pada lingkungan eksternal yang dapat dideteksi oleh
sistem. Kejadian tersebut dapat menyebabkan perubahan dari satu state ke
state lainnya.
4. Action
Saat event muncul, terjadi transisi sehingga komponen sistem menerima
perubahan state. Untuk itu dibutuhkan sebuah aksi untuk berpindah state.
Aksi disini akan menghasilkan sebuah output atau tampilan.
28
5. Output
Merupakan hasil keluaran dari kalkulasi dan lain sebagainya.
2.10 PHP
2.10.1 Sejarah PHP
Pada bulan Agustus-September 1994 Rasmus Lerdorf, seorang
programmer Unix dan Perl, saat sedang mencari kerja Ia menaruh
resumenya di web dan membuat skrip makro Perl CGI untuk mengetahui
siapa saja yang melihat resumenya. Skrip ini bekerja dengan cara
membaca sebuah file HTML berisi makro/tag, mengganti tag-tag melalui
regex, lalu mencetak hasilnya kembali. Tag ini berupa tanda # yang
ditaruh di awal baris, di bagian bawah halaman, dan menandai instruksi
untuk melakukan log dan mengirimi Rasmus e-mail manakala halaman
yang bersangkutan diakses.
Awal tahun 1995 – PHP 1 (Personal Home Page Tools), Rasmus
pada saat ini bekerja sebagai IT Consultant untuk mengembangkan sistem
dial up di Universitas Toronto, Kanada. Rasmus sebagai konsultan,
mengajari belasan programmer pemula untuk menggunakan PHP. Ia
memilih PHP karena lebih mudah diajarkan ketimbang Perl. PHP
akhirnya dipakai untuk membuat interface grafik berbasis web.
Rasmus menulis ulang PHP dalam C untuk meningkatkan
kecepatannya. Saat itu PHP 1 amat sederhana : berbasis makro, parsernya
bekerja per baris, dan hanya mengenal sepuluh buah fungsi. Kebutuhan
proyek di Toronto, Rasmus juga mengembangkan Form Interpreter, tool
29
untuk menanamkan SQL dalam halaman web dan untuk memproses
masukan dari form HTML.
Pada bulan September-Oktober 1995 kode PHP daerah FI ditulis
ulang dan digabungkan menjadi PHP/FI. Generasi kode berikutnya ini
baru disebut PHP/FI versi 2.0 setengah tahun lebih kemudian, namun di
akhir 1995 untuk pertama kalinya dirilis bagi publik secara gratis.
Rasmus memilih untuk membagikan kode ini karena percaya, jika
bermanfaat bagi dirinya, lalu bagi orang lain, pada akhirnya akan
membawa manfaat kembali pada dirinya.
Kemudian bulan April 1996 Rasmus menulis mod_php, modul
untuk memproses skrip PHP langsung dari Apache.Bulan Desember 1996
PHP/FI untuk pertama kalinya mendukung MySQL. PHP versi 2.0 in
juga sudah mulai mendukung Windows 32 bit (95/NT). Pada tanggal 6
Juni 1998 versi final PHP 3.0 dirilis setelah 7 bulan fase beta. Pada akhir
tahun 1998, PHP/FI mulai disertakan di Red Hat Linux 6.0 (PHP3 sejak
Red Hat 6.2 dan PHP4 sejak 7.0).
Zend Technologies, Ltd didirikan oleh Zeev dan Andi (Zend
merupakan gabungan dari kedua pendirinya) dengan kucuran dana dari
shimon Eckhouse dan Moshe Mizrachi. Pada tanggal 2 Maret 2000,
Zend.com diluncurkan sebagai portal bagi komunitas PHP. Pada 22 Mei
2000, setelah setahun lebih dalam masa penggodokan, versi final PHP4
dirilis oleh Zeev Suraski.
Pada bulan Oktober 2000, PHP 4.0.3 Highlight : dukungan
Sablotron, is_uploaded_file() untuk mengatasi lubang keamanan file
30
upload PHP. Pada tanggal 23-27 Juli 2001, diadakan konferensi
internasional resmi PHP pertama yang diselenggarakan oleh O’reilly di
San Diego, California. Pada 2 Agustus 2001, PHP-GTK 0.1 dirilis. Pada
8 November 2001, Zend Engine dirilis ulang dengan lisensi BSD.
Pengembangan PHP terus dilakukan sehingga sampai naskah ini disusun
versinya adalah PHP 4.0 yang diterbitkan pada awal Mei 2000
(Sutarman, S.Kom).
Sistem database yang didukung oleh PHP adalah :
1. Oracle
2. Sybase
3. mSQL
4. MySQL
5. Solid
6. Generic ODBC
7. Postgres SQL
2.10.2 Pengertian PHP
PHP dikenal sebagai sebuah bahasa scripting yang menyatu
dengan tag-tag HTML, dieksekusi di server, dan digunakan untuk
membuat halaman web yang dinamis seperti halnya Active Server Pages
(ASP) atau Java Server Pages (JSP).
Mengapa memilih PHP :
1. Life cycle yang singkat, sehingga PHP selalu up to date mengikuti
perkembangan teknologi internet dan diterbitkan secara gratis.
31
2. PHP mudah dibuat dan kecepatan akses tinggi
3. PHP termasuk bahasa yang embedded (bisa ditempel atau diletakkan
dalam tag HTML)
4. Cross platform, PHP dapat dipakai di hampir semua web server yang
ada di pasaran (Apache, AOLServer, fhttpd, phttpd, Microsoft IIS,
dll) yang dijalankan pada berbagai sistem operasi (Linux, FreeBSD,
Unix, Solaris, Windows).
5. PHP mendukung banyak paket database, baik yang komersil maupun
nonkomersil, seperti postgreSQL, mSQL, MySQL, Oracle, Informix,
Microsoft SQL Server, dll.
6. PHP termasuk server-side programming
PHP dapat diinstal sebagai bagian atau modul dari Apache web server
atau sebagai CGI script mandiri. Banyak keuntungan yang diperoleh
jika menggunakan PHP sebagai modul dari Apache, di antaranya :
1. Waktu eksekusi lebih cepat
2. Akses database yang lebih fleksibel
3. Tingkat keamanan lebih tinggi
2.11 Database
2.11.1 Sistem Basis Data
Data adalah fakta mengenai objek, orang, dan lain-lain.
Sedangkan informasi adalah hasil analisis dan sintesis terhadap data.
Basis data adalah kumpulan data, yang dapat digambarkan sebagai
aktifitas dari satu atau lebih organisasi yang berelasi. Sistem basis data
32
merupakan sistem penyimpanan informasi yang terorganisasikan secara
komputerisasi sehingga memudahkan pemakai dalam pengolahan dan
penggunaannya. Tujuan hal tersebut adalah untuk melakukan perawatan
informasi dan menyajikannya kapan saja dibutuhkan oleh pengguna.
Menurut Connoly (2002, p14), database adalah kumpulan data
yang terkomputerisasi dan terdiri dari record-record dan field-field.
Database merupakan salah satu komponen penting dalam sistem
informasi karena merupakan dasar dalam menyediakan informasi bagi
pemakainya. Tujuan dari database adalah untuk menyimpan dan
mengambil atau mengakses informasi secara cepat dan efisien.
Sistem database dapat dibagi menjadi empat komponen, yaitu:
1. Data yang bergantung pada konfigurasi sistem. Dalam sistem besar, data
harus terintegrasi dan dapat dipakai bersama.
2. Perangkat keras yang diperlukan manajemen database dalam mengolah
atau menyimpan database.
3. Piranti lunak yang menghubungkan antara fisik database dengan
pengguna yaitu sistem manajemen database (DBMS).
4. Pengguna yang menggunakan data secara optimal seperti pemrograman
piranti lunak untuk mengakses database, end user yang menggunakan
piranti lunak dalam mengakses database dan administrator yang
bertanggung jawab terhadap keseluruhan database.
33
2.11.2 DBMS
DBMS (database management system) adalah sekumpulan
program yang digunakan untuk menyimpan, memodifikasi, dan
mengekstrak informasi dari sebuah basis data. Terdapat berbagai DBMS,
mulai dari yang dapat dijalankan pada PC sampai yang harus dijalankan
pada mainframe. Untuk mendapatkan informasi dari basis data,
digunakan bahasa khusus dalam bentuk query. Setiap DBMS mendukung
bahasa query yang berbeda-beda.
Definisi lain, DBMS adalah perangkat lunak yang didesain untuk
membantu dalam hal pemeliharaan dan utilitas kumpulan data dalam
jumlah besar. DBMS dapat menjadi alternatif penggunaan secara khusus
untuk aplikasi, semisal penyimpanan data dalam field dan menulis kode
aplikasi yang spesifik untuk pengaturannya.
Komponen utama DBMS dapat dibagi menjadi 4 macam :
• Perangkat Keras
• Perangkat Lunak
• Data
• Pengguna
Pengunaan DMBS untuk mengelola data mempunyai beberapa
keuntungan, yaitu :
• Kebebasan data dan akses yang efisien
• Mereduksi waktu pengembangan aplikasi
• Integritas dan keamanan data
34
• Administrasi keseragaman data
• Akses bersamaan dan perbaikan dari terjadinya crashes (tabrakan dari
proses serentak).
Dalam database dikenal istilah SQL (Structured Query Language)
yang merupakan bahasa non-prosedural. Pernyataan SQL dikategorikan
ke dalam dua kategori utama, yang sebenarnya dianggap bahasa yang
berbeda yaitu pernyataan untuk memanipulasi data yang disebut DML
(Data Manipulation Language), dan pernyataan untuk mendefinisikan
objek database seperti misalnya label atau indeksnya yang disebut DDL
(Data Definition Language).
Pernyataan pada banyak DML dalam bahasa SQL juga dikenal
dengan istilah query. Ada dua jenis query, yaitu :
1. Selection query
Selection query mengambil informasi dari database dan tidak
memodifikasi database. Semua selection query diawali dengan
pernyataan “SELECT”.
2. Action query
Action query memodifikasi data pada tabel-tabel dalam database.
Semua action query diawali dengan salah satu pernyataan berikut
ini :
INSERT (menambahkan record baru pada database)
DELETE (menghapus suatu record dari database)
35
UPDATE (mengubah nilai atau isi dari suatu record
dalam database)
2.11.3 Database Relational
Database Relational merupakan database yang dalam gambaran
penggunaannya merupakan kumpulan dari tabel-tabel, di mana tabel
tersebut terdiri dari baris dan kolom atau dengan kata lain terdiri dari
kumpulan record dan field. Tabel tersebut kemudian dihubungkan dengan
satu field yang disebut sebagai key. Pada database relational terdapat dua
jenis field yang dapat menggambarkan hubungan, yaitu primary key dan
foreign key. Primary key adalah suatu field yang menghubungkan satu
tabel dengan tabel yang lainnya. Foreign key merupakan sebuah field
yang digunakan sebagai field tujuan yang dihubungkan dengan field dari
tabel pemanggil.
Jenis hubungan database relational dapat dibagi menjadi tiga, yaitu:
1. Hubungan one to one, di mana satu isi record pada satu tabel hanya dapat
berhubungan dengan satu record pada tabel lainnya.
2. Hubungan one to many atau many to one, di mana satu isi record pada
satu tabel dapat berhubungan dengan beberapa record pada tabel lainnya
atau sebaliknya.
3. Hubungan many to many, di mana satu isi record pada tabel A dapat
berhubungan dengan beberapa record pada tabel B. Dan sebaliknya satu
36
isi record pada tabel B dapat berhubungan dengan beberapa record pada
tabel A.
2.11.4 MyStructured Query Language (MySQL)
MySQL merupakan bahasa yang memiliki kemampuan cukup
baik untuk menunjang kerja user, baik yang telah berpengalaman dengan
database maupun untuk pemula. SQL digunakan untuk mencari informasi
(query), memanipulasi data (DML), mendefinisikan data (DDL), dan
bahasa pengendali dokumentasi.
Setiap pengguna basis data memerlukan bahasa pemrograman yang
dapat dipakai sesuai dengan fungsi dan tugasnya. Dalam basis data secara
umum dikenal dua bahasa, yaitu:
1. Data Definition Language (DDL) : bahasa yang dipakai untuk
menjelaskan objek dari basis data. DDL dipakai untuk mendefinisikan
kerangka basis data (berorientasi pada tipe pada objek basis data).
2. Data Manipulation Language (DML) : bahasa yang dipakai untuk
memanipulasi objek data dari basis data. DML dipakai untuk operasi
terhadap isi basis data.
2.12 Internet
2.12.1 Pengertian Internet
Istilah internet berasal dari bahasa Latin ”inter”, yang berarti
“antara”. Secara kata per kata internet berarti jaringan antara atau
37
penghubung. Memang itulah fungsinya, internet menghubungkan
berbagai jaringan yang tidak saling bergantung pada satu sama lain
sedemikian rupa, sehingga mereka dapat berkomunikasi. Sistem apa yang
digunakan pada masing-masing jaringan tidak menjadi masalah, apakah
sistem DOS atau UNIX.
Internet adalah sebuah sistem komunikasi global yang
menghubungkan komputer-komputer dan jaringan-jaringan komputer di
seluruh dunia, di mana setiap komputer memiliki alamat (internet
address) yang dapat digunakan untuk mengirimkan data atau informasi
(Anonim).
Internet adalah kumpulan jaringan komputer dunia yang disusun
oleh dua entity yaitu client web dan server web. Dalam hal ini komputer
yang dahulunya stand alone dapat berhubungan langsung dengan host-
host atau komputer-komputer lainnya (Anonim).
Definisi yang lain, internet adalah dua komputer atau lebih yang
saling berhubungan membentuk jaringan hingga meliputi jutaan
komputer di dunia (Anonim, 2003, p1).
2.12.2 Sejarah Internet
Pada tahun 1957 Uni Soviet meluncurkan satelit Sputnik.
Peluncuran satelit ini dirasakan sebagai suatu ancaman bagi negara
Amerika Serikat yang saat itu merupakan musuh utama Rusia. Presiden
Dwight D.Risenbower menyatakan perlunya membangun sebuah
teknologi yang membuat AS tetap sebagai negara superior. Kemudian
38
dibentuklah suatu badan yang disebut Advanced Research Projects
Agency (ARPA). ARPA bernaung di bawah Departemen Pertahanan
Amerika Serikat atau Department of Defense (DoD).
Pada tahun 1969, DoD memberi tugas kepada ARPA untuk
membangun sebuah mata rantai atau jaringan komunikasi antara DoD
dengan militer yang tidak dapat disabotase oleh musuh mereka.
Tujuannya adalah untuk membuat jaringan komputer yang tersebar untuk
menghindarkan terjadinya informasi terpusat, yang apabila terjadi perang
dapat mudah dihancurkan. Jadi bila salah satu bagian dari sambungan
jaringan terganggu dari serangan musuh, maka jalur yang melalui
sambungan itu secara otomatis dipindahkan ke sambungan lain.
Untuk itu dibuat Internetting Project, yang mengembangkan lebih
lanjut hasil yang telah dicapai dalam ARPANet, agar media komunikasi
baru ini juga dapat dimanfaatkan oleh berbagai sistem komputer yang
tergabung. Kemudian vendor-vendor komputer meramaikan lalu lintas
jaringan tersebut untuk berbagai kebutuhan sehingga terciptalah
INTERNET (Sutarman S.Kom).
2.13 Interaksi Manusia Dan Komputer
2.13.1 Pengertian Interaksi Manusia Dan Komputer
Interaksi manusia dan komputer adalah disiplin ilmu yang
berhubungan dengan perancangan, evaluasi serta implementasi sistem
komputer yang interaktif untuk digunakan oleh manusia. Interaksi
manusia dan komputer berkaitan dengan user interface (antarmuka
39
pemakai) yang digunakan oleh pengguna untuk berkomunikasi dan
berinteraksi dengan komputer.
Hal-hal yang perlu diperhatikan dalam merancang suatu
antarmuka yang user friendly, antara lain :
1. Waktu untuk belajar
Berapa lama waktu yang diperlukan bagi pengguna pada umumnya
untuk mempelajari bagaimana menggunakan perintah yang
berhubungan dengan suatu tugas.
2. Kecepatan kinerja
Berapa waktu yang diperlukan untuk menjalankan suatu tugas.
3. Tingkat kesalahan pengguna
Berapa banyak dan apa saja kesalahan yang dilakukan pengguna
dalam melakukan suatu tugas.
4. Daya ingat pengguna setelah jangka waktu tertentu
Berapa lama pengguna dapat mempertahankan pengetahuan mereka
setelah jangka waktu tertentu. Daya ingat pengguna dapat
dihubungkan dengan waktu belajar dan frekuensi penggunaan
memegang peranan penting dalam hal ini.
5. Kepuasan subyektif pengguna
Mencari tahu apakah pengguna sering menggunakan berbagai aspek
dari sistem. Jawabannya dapat diperoleh dari wawancara atau survei
tertulis yang memuat skala keputusan dan tempat bagi jawaban bebas.
40
2.13.2 Delapan Aturan Emas Perancangan Antarmuka
Dalam merancang suatu antarmuka (interface), seorang
pengembang harus memperhatikan sejumlah hal yang berkaitan dengan
antarmuka. Delapan aturan emas yang harus diperhatikan dalam
mengembangkan antarmuka yang baik, antara lain :
1. Berusaha untuk konsisten
Tindakan untuk konsisten diperlukan dalam situasi ketepatan
penulisan, pilihan menu, dan tampilan help dalam setiap halaman web
yang dibuat serta ke-konsisten-an dalam hal warna, layout, huruf
besar (capitalization), fonts, dll.
2. Memungkinkan pemakaian rutin bagi user dalam menggunakan
shortcuts
Ketika frekuensi penggunaan komputer meningkat maka orang yang
sudah terbiasa menggunakannya menghargai adanya singkatan
(shortcuts), special keys dan hidden command untuk mempercepat /
mempersingkat pengetikan.
3. Memberikan umpan balik yang informatif
Setiap tindakan user diperlukan respon / feedback dari sistem.
4. Merancang dialog yang memberikan penutupan (keadaan akhir)
Urutan tindakan (action) harus dikelompokkan menjadi beberapa
groups yang terbagi dari : awal, middle, dan akhir. Dengan adanya
dialog ini maka ada sebuah informasi yang dikirimkan oleh sistem
untuk memberitahukan bahwa sistem dapat memproses groups
tindakan selanjutnya.
41
5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang
sederhana
Diharapkan untuk sebisa mungkin mendesain sebuah sistem, di mana
user tidak membuat error yang serius. Contoh sistem yang dapat
mendeteksi kesalahan user dalam meng-input karakter pada textbox
yang bertipe numerik dengan menampilkan informasi mengenai cara
pengisian yang benar secara sederhana.
6. Memungkinkan pembalikan aksi yang mudah
Sedapat mungkin aksi dapat dibalikkan (di-undo). Contoh : ketika
user mengetahui bahwa tindakan (aksi) yang dilakukannya salah
dalam hal meng-input data / pengetikan nama dan alamat, maka user
tersebut dapat meng-undo tindakannya tersebut ke keadaan awal
(sebelumnya).
7. Mendukung pusat kendali internal (internal focus of control)
Pengguna yang berpengalaman sangat mendambakan control yang
kuat pada sistem, sehingga mereka menguasai sistem tersebut. Sistem
yang tidak terduga dan sulit dalam melakukan aksi akan menyulitkan
pengguna.
8. Mengurangi beban ingatan jangka pendek
Keterbatasan memori manusia untuk memproses informasi
memerlukan tampilan yang sederhana, tampilan halaman yang
banyak untuk digabungkan, dan waktu pelatihan yang cukup
diberikan untuk koding, membantu ingatan dan urutan dari actions.
42
2.13.3 Sepuluh Kesalahan Utama Pada Website
Ada beberapa hal yang harus dihindari dalam merancang suatu
website. Berikut ini adalah sepuluh kesalahan utama pada desain website :
1. Penggunaan frame
2. Penggunaan teknologi baru dengan serampangan
3. Gerakan teks dan animasi yang berjalan terus
4. URL yang kompleks
5. Halaman yatim
6. Halaman yang gulungannya terlalu panjang. Isi tepenting dari suatu
halaman dan navigasi harus tampak di bagian atas.
7. Kurangnya dukungan navigasi
8. Warna link yang standar
9. Informasi yang sudah basi (belum di-update)
10. Waktu download atau loading yang terlalu lama. Pemakai akan
kehilangan minat dalam 10-15 menit.