BAB 2 LANDASAN TEORI 2.1 Definisi E-Learning Dikutip dari buku Clark dan Mayer (2008, p13), E-Learning merupakan instruksi pembelajaran jarak jauh dengan teknologi komputer melalui media CDROM, internet, atau intranet dengan berbagai fitur antara lain : o Meliputi isi konten yang relevan untuk pembelajaran yang objektif o Menggunakan metode instruksi seperti contoh-contoh soal latihan untuk membantu pembelajaran o Menggunakan elemen dari media seperti words dan pictures untuk mengirimkan isi konten dan metode o Membangun skill dan pengetahuan baru yang menghubungkan antar individu untuk mencapai pembelajaran atau untuk meningkatkan performasi organisasi Pembelajaran melalui e-learning mencakup konten (informasi) dan metode instruksi (teknik) yang membantu setiap orang untuk mempelajari konten tersebut. Pembelajaran ini didistribusikan melalui komputer dengan menggunakan words dalam sebuah form atau printed text gambar-gambar ilustrasi, foto, animasi, atau video yang dimaksudkan untuk membantu para pembelajar untuk mencapai pembelajaran objektif secara mandiri atau meningkatkan performasi mereka dalam berorganisasi.
6
7
2.2 Definisi E-Quiz
Menurut Wikipedia (http://en.wikipedia.org/wiki/Quiz), kuis adalah bentuk permainan atau olahraga pikiran dimana pemain (sebagai individu atau dalam tim) berusaha untuk menjawab pertanyaan dengan benar. Di beberapa negara, kuis juga merupakan penilaian singkat yang digunakan dalam bidang pendidikan dan sejenisnya untuk mengukur pertumbuhan pengetahuan, kemampuan, atau keterampilan. Kuis biasanya mencetak gol di poin dan kuis banyak yang dirancang untuk menentukan pemenang dari kelompok peserta - biasanya peserta dengan skor tertinggi.
Sehingga dapat disimpulkan bahwa e-quiz ialah suatu bentuk permainan pikiran dengan teknologi komputer melalui media internet yang digunakan dalam bidang pendidikan untuk mengukur kemampuan dari peserta kuis dalam menjawab pertanyaan dengan benar.
2.3 Definisi Social Networking
Dikutip dari IT Glossary, definisi dari Social Networking merupakan sebuah bentuk layanan internet yang ditujukan sebagai komunitas online bagi orang yang memiliki kesamaan aktivitas, ketertarikan pada bidang tertentu, atau kesamaan latar balakang tertentu. Social networking lazim disebut sebagai jaringan pertemanan. Layanan social network biasanya berbasis web, dilengkapi dengan beragam fitur bagi penggunanya agar dapat saling berkomunikasi dan berinteraksi.
8
Social Networking atau jejaring sosial merupakan konsep pengembangan yang bisa dimanfaatkan didalam dunia pendidikan. Social networking diaplikasikan kedalam bentuk situs jejaring sosial. Selain berguna untuk menjalin silaturrahim juga berguna untuk menunjang didalam meningkatkan efektifitas belajar. Bentuk social networking ini dapat dikembangkan dengan cara membentuk komunitas berupa kelompok belajar dan diskusi sesuai dengan minat dan bidang orang-orang yang terlibat didalamnya. Bentuk-bentuk pembelajaran yang bisa dimanfaatkan menggunakan situs jejaring sosial ini seperti: 1. Membuatkan grup dengan yang membahas satu bidang misalnya sistem informasi. 2. Membuat batasan grup secara umum ataupun hanya terbatas daerah, sekolah ataupun terbatas pelajaran tertentu saja. 3. Membuat kelompok kecil yang terdiri dari belasan orang yang hanya menerima anggota setelah disetujui. 4. Mengirimkan pesan ke seluruh anggota dan meminta tanggapan.
Potensi-potensi
yang
terdapat
disitus
jejaring
sosial
inilah
dapat
meningkatkan proses pembelajaran secara digital.
2.4 Web 2.0. Menurut Tim O’reilly (2005), kosakata Web 2.0 didefinisikan sebagai “Web 2.0 adalah sebuah revolusi bisnis di dalam industri komputer, yang terjadi akibat
9
pergerakan Internet sebagai sebuah platform bisnis dan suatu usaha untuk mengerti aturan-aturan agar sukses di platform tersebut. Aturan utamanya adalah membangun aplikasi yang memanfaatkan efek jaringan dengan tujuan untuk mendapatkan pengguna yang lebih banyak”.
Prinsip-prinsip dari Web 2.0, antara lain sebagai berikut :
-
Web sebagai sebuah platform
-
Data sebagai pengendali utama
-
Efek jaringan diciptakan oleh partisipasi arsitektur
-
Inovasi dalam sistem rakitan yang menyatukan fitur dari yang terdistribusi menuju pengembangan yang independen
-
Model bisnis ringan yang dikembangkan dengan konten dan layanan syndication
2.5 Hypertext Transfer Protocol (HTTP)
Hypertext Transfer Protocol merupakan sebuah metode atau cara yang digunakan untuk mengirimkan informasi di dalam World Wide Web. Digunakan sebagai cara untuk mengirimkan dan menerima informasi Hypertext Markup Language (HTML).
Pengembangan HTTP dikoordinasikan oleh World Wide Web Consortium dan Internet Engineering Task Force. Titik puncaknya adalah menghasilkan sebuah seri dari RFCs, dikenal dengan RFC 2616 (pada tahun 1999), dan untuk selanjutnya
10
diartikan sebagai HTTP/1.1, sebuah versi dari HTTP yang masih digunakan sampai saat ini.
HTTP adalah protokol pengirim dan penerima antara klien dan server. Web browser dapat diartikan sebagai klien, dan dapat juga disebut atau diartikan sebagai "pengguna". Sedangkan server tujuan merupakan penyedia dan penghasil data atau informasi, termasuk file, gambar dan lain sebagainya.
2.6 Unified Modelling Language (UML)
a. Pengertian UML
Menurut Whitten et al. (2004, p430), UML merupakan sekumpulan konvensi tentang pemodelan yang digunakan untuk menspesifikasi atau menggambarkan sistem software di dalam hal-hal tentang objek.
b. Diagram-diagram UML
i. Use Case Diagram
Menurut Whitten et al. (2004, p271), use case diagram adalah diagram yang menggambarkan interaksi antara system, external system dan user. Dengan kata lain, diagram ini menjelaskan siapa yang akan menggunakan sistem tersebut dan bagaimana cara user tersebut berinteraksi dengan sistem.
11
Gambar 2.1 Use Case Diagram
(Sumber : Joseph Schmuller, Teach yourself UML, 1999, p385)
ii. Class Diagram
Menurut Whitten et al. (2004, p441), class diagram menggambarkan struktur objek yang terdapat pada sebuah sistem. Diagram ini menunjukkan objek-objek yang terdapat pada suatu sistem serta relasi antar objek-objek tersebut.
12
Gambar 2.2 Class Diagram
(Sumber : Joseph Schmuller, Teach yourself UML, 1999, p380)
iii. Sequence Diagram
Menurut Whitten et al. (2004, p441), sequence diagram menggambarkan bagaimana objek berinteraksi antara satu dengan yang lain melalui message dalam eksekusi dari sebuah use case atau sebuah operasi. Diagram ini menggambarkan bagaimana message dikirim dan diterima antar objek dan urutannya.
13
Gambar 2.3 Sequence Diagram
(Sumber : Joseph Schmuller, Teach yourself UML, 1999, p383)
iv. Activity Diagram
Menurut Whitten et al. (2004, p442), activity diagram digunakan untuk menggambarkan alur aktivitas dari proses bisnis atau dari sebuah use case secara berurutan. Diagram ini juga digunakan untuk menggambarkan action (tindakan) yang akan dieksekusi ketika suatu proses sedang berjalan dan beserta hasil dari proses eksekusi tersebut.
14
Gambar 2.4 Activity Diagram
(Sumber : Joseph Schmuller, Teach yourself UML, 1999, p378)
2.7 Interaksi Manusia dan Komputer (IMK)
Menurut definisi dari ACM SIGCHI, Interaksi Manusia dan Komputer (IMK) atau Human-Computer Interaction adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk
15
digunakan oleh manusia, serta studi fenomena-fenomena besar yang berhubungan dengannya.
Antarmuka merupakan unsur pokok dalam setiap pengembangan sistem yang ada. Oleh karena itu, penting untuk mengetahui faktor-faktor apa saja yang menentukan dalam merancang suatu antarmuka.
Menurut Sneiderman (1998, p15), ada lima faktor manusia terukur yang dapat dijadikan sebagai pusat evaluasi, yaitu:
1. Waktu belajar, berapa lama waktu yang dibutuhkan oleh user untuk mempelajari cara relevan untuk melakukan suatu tugas?
2. Kecepatan kinerja, berapa lama waktu yang diperlukan untuk mengerjakan suatu tugas?
3. Tingkat kesalahan, berapa banyak kesalahan dan kesalahan-kesalahan apa yang bisa terjadi saat user mengerjakan tugas-tugas tersebut? 4. Daya ingat, bagaimana kemampuan pemakai mempertahankan pengetahuannya setelah jangka waktu tertentu? 5. Kepuasan subjektif, bagaimana kepuasan user terhadap berbagai aspek dari sistem? Selain itu, menurut Sneiderman (1998, p74-75), disebutkan pula ada delapan aturan emas yang digunakan dalam merancang antarmuka, yaitu:
16
a. Berusaha untuk konsisten, seperti penggunaan warna, layout, jenis huruf yang konsisten. b. Memungkinkan frekuensi user menggunakan shortcut, karena dengan adanya shortcut dapat meningkatkan interaksi dengan user. c. Memberikan umpan balik yang informatif yang memberikan kejelasan dari setiap aksi yang dilakukan oleh user. d. Merancang dialog yang memberikan penutupan. e. Memberikan penanganan kesalahan dan penanganan kesalahan yang sederhana. f. Memungkinkan membalikkan aksi yang mudah. g. Mendukung pusat kendali internal, dimana sistem hendaknya mampu membuat user sebagai bagian dari system itu sendiri dan memiliki kebebasan sendiri. h. Mengurangi beban ingatan jangka pendek dimana user hendaknya mudah dalam menjelajahi situs dengan petunjuk-petunjuk yang sederhana dan mudah diingat. 2.8 Database Menurut Connoly (2002, p12), sebelum database dikenal, penyimpanan data menggunakan pendekatan berbasis file. Namun pendekatan ini memiliki kelemahan dalam pengaksesan data dari dua atau lebih file karena data dari masing-masing file terpisah dan terisolasi. Kelemahan lain dari pendekatan ini yaitu duplikasi data yang tidak terkontrol, data dependence, misalnya diperlukannya suatu program baru untuk mengubah struktur field, format file yang tidak compatible karena struktur
17
file tergantung aplikasi bahasa pemrograman, misalnya file hasil bahasa pemrograman C sulit diproses bersama-sama dengan file hasil program COBOL. Selain itu, pendekatan berbasis file mempunyai query yang tetap karena sangat tergantung pada program aplikasi sehingga tidak dapat menangani query tambahan. Dengan munculnya teknologi media penyimpanan data, yaitu Direct Access Storage Device (DASD), cara penyimpanan dan pengaksesan data berkembang pesat yang memicu timbulnya database (Inmon, 2002, p4). DASD sendiri adalah media penyimpanan yang berbeda dengan magnetic type, dimana pengaksesan ke sebuah data yang diinginkan dapat dilakukan secara langsung begitu mengetahui alamat data tersebut dalam media penyimpanan, tanpa harus melalui data lainnya. a.
Pengertian Data Menurut Garcia-Molina et. al. (2002, p14), data adalah fakta yang dapat
atau tidak dapat diproses (disuling, dirangkum atau diperbaiki) dan tidak berpengaruh secara langsung pada user. Sebaliknya, informasi menyebabkan user melakukan suatu tindakan yang dapat ia lakukan atau tidak dilakukan. Berdasarkan ini dapat dilihat bahwa data merupakan suatu bentuk keruangan yang belum diolah atau dimanipulasi. Data yang didapatkan pada suatu perusahaan umumnya diperoleh dari hasil kegiatan operasi sehari-hari atau hasil dari transaksi yang dilakukan.
18
b.
Pengertian Database Menurut Connolly (2002, p14), database adalah kumpulan data yang
berhubungan secara logikal, dan penjelasan dari data ini dirancang untuk menemukan informasi yang dibutuhkan oleh perusahaan. Sedangkan menurut
Wikipedia
(http://en.wikipedia.org/wiki/Database),
database
merupakan kumpulan elemen data atau fakta yang disimpan di komputer secara sistematis. Berdasarkan pengertian database di atas, dapat disimpulkan bahwa database merupakan kumpulan data yang berhubungan secara sistematis untuk memenuhi kebutuhan informasi perusahaan. Dengan database, data bukan hanya dapat digunakan oleh satu bagian perusahaan saja tapi dapat juga digunakan secara bersama-sama oleh bagian lainnya. c. DBMS (Database Management System) Menurut Connolly (2002, p16), DBMS adalah sistem perangkat lunak yang memungkinkan user untuk mendefinisikan, membuat, memelihara dan mengontrol akses ke database. Sedangkan menurut Wikipedia (http://en.wikipedia.org/wiki/Database), DBMS adalah program komputer yang digunakan untuk mengatur sebuah database. Dari definisi DBMS di atas dapat disimpulkan bahwa DBMS merupakan perangkat lunak yang digunakan untuk membuat struktur, memasukkan, memelihara, mengatur dan mengakses data. Dibandingkan
19
dengan pendekatan berbasis file yang struktur fisikal dan penyimpanan datanya sangat tergantung pada program aplikasi, pada pendekatan database, struktur fisikal dan penyimpanan data diatur oleh DBMS. d. Entity Relationship Diagram (ERD) Menurut Whitten et. al. (204, 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. 2.9 Linear Sequential Model Menurut Pressman (2001, p28), linear sequential model menawarkan sebuah pendekatan yang sistematis dan sekuensial dalam pengembangan piranti lunak yang dimulai dari level sistem dan perkembangannya dengan melalui tahap analis, desain, coding dan testing.
Gambar 2.5 Linear Sequential Model (Sumber : Pressman, Software Engineering, 2001, p29)
20
a. Analisis Analisis adalah sebuah proses pengumpulan kebutuhan yang dikhususkan dan difokuskan dalam pembuatan piranti lunak. b. Desain Desain adalah sebuah proses yang menerjemahkan hasil dari analisis dalam bentuk representasi piranti lunak sehingga dapat dinilai kualitasnya. c. Coding Coding adalah proses dimana hasil dari desain diterjemahkan kembali dalam bentuk bahasa pemrograman yang dapat dimengerti oleh mesin. d. Testing Setelah coding dilakukan, maka dilakukan tahap testing untuk mengetahui kesalahan yang tidak terdeteksi sebelumnya atau hasil dari proses yang tidak diinginkan. 2.10 CSS (Cascading Stylesheet) CSS atau Cascading Stylesheet adalah sebuah bahasa stylesheet berbentuk markup language yang digunakan untuk mendeskripsikan sebuah representasi tampilan untuk sebuah dokumen. CSS biasanya digunakan untuk menghias halaman web dalam bentuk HTML atau XHTML.
21
2.11 HTML/XHTML (Hypertext/Extensible Markup Language) XHTML merupakan penerus dari HTML. XHTML merupakan sebuah rekomendasi yang terpisah dari HTML. W3C tetap merekomendasikan untuk tetap menggunakan XHTML 1.0, XHTML 1.1, dan HTML 4.01 untuk digunakan dalam web publishing. Perlunya reformulasi HTML menjadi XHTML disebabkan karena W3C merasa adanya kebutuhan agar sebuah konten World Wide Web dapat diakses dari perangkat mobile selain komputer-komputer tradisional karena kompleksitas sintaks dari HTML yang memerlukan sumber daya dan waktu yang cukup banyak. 2.12 MySQL Menurut Nugroho (2004,p29), MySQL adalah sebuah program pembuat database yang bersifat opensource, yang artinya siapa saja boleh menggunakannya dan tidak akan dicekal. MySQL juga merupakan program pengakses database yang bersifat jaringan sehingga dapat di gunakan untuk aplikasi multiuser atau multiguna. Kelebihan lainnya dari MySQL adalah bahasa query standar yang di miliki SQL (Structure Query Language).
MySQL mendukung operasi basis data transaksional maupun operasi basisdata non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basis data kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus
22
non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basis data transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.
Keistimewaan MySQL
1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis.
3.
Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik.
4.
Performance tuning, MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.
23
5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain.
6.
Perintah dan fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query).
7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi.
8.
Skalabilitas dan pembatasan. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
9.
Konektivitas.
MySQL
dapat
melakukan
koneksi
dengan
klien
menggunakan protokol TCP/IP, Unix soket (UNIX), atau Named Pipes (NT).
10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meskipun demikian, bahasa Indonesia belum termasuk di dalamnya.
24
11. Antar-muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface).
12.
Klien dan peralatan. MySQL dilengkapi dengan berbagai peralatan (tool) yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.
13.
Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL atau Oracle.
2.13 PHP (PHP Hypertext Preprocessor) Menurut Castagnetto, dkk (1999, p8), PHP adalah singkatan rekursif dari PHP Hypertext Preprocessor yang merupakan bahasa scripting yang tempat pengolahannya berada di server. Hal ini berarti PHP dapat bekerja dalam dokumen HTML yang menempatkan hasil permintaan scripting PHP. Dengan PHP, situs yang dibuat tidak berupa kumpulan halaman statik yang informasinya tidak sering diperbaharui. Keuntungan menggunakan PHP antara lain : Kesederhanaan dari bahasa PHP dan mesin scripting. Siklus pengembangan yang lebih pendek karena pemudahan dalam pembuatan modul
dan
komponen-komponen
yang
pengembangan berikutnya. Memiliki konektivitas ke server basis data.
dapat
digunakan
lagi
pada
25
Bersifat open source dan tidak bergantung pada platform manapun.
2.14 Dreamweaver
Adobe Dreamweaver adalah sebuah HTML editor professional untuk mendesain secara visual dan mengelola situs web maupun halaman web. Dreamweaver membuatnya jadi lebih mudah dengan menyediakan tool yang sangat berguna dalam meningkatkan kemampuan den pengalaman membuat web.
Dreamweaver juga mengikutsertakan banyak tool untuk kode-kode dalam hal web beserta fasilitas-fasilitasnya antara lain : Referensi HTML, CSS, Java Script, Debugger, dan Editor Code yang mengizinkan pengeditan kode JavaScript XML, dan dokumen teks lain secara langsung delam Dreamweaver.
2.15 JQuery JQuery pertama kali dirilis pada tahun 2006 oleh John Resig. JQuery merupakan suatu framework (library) Javascript yang menekankan bagaimana interaksi antara Javascript dan HTML. JQuery memungkinkan penambahan fungsionalitas dalam bentuk plug-in. Slogan dari JQuery ialah “Write less, do more” yang kurang lebih maksudnya adalah kesederhanaan dalam penulisan code, tapi dengan hasil yang lebih banyak.
26
Fitur-fitur JQuery
DOM DOM traversal and modification Events CSS manipulation Effects and animations Ajax Extensibility melalui plug-ins Utilities - browser version dan setiap fungsi-fungsinya Mendukung cross-browser
2.16 XSS (Cross Site Scripting)
XSS merupakan kependekan yang digunakan untuk istilah cross site scripting. XSS merupakan salah satu jenis serangan injeksi code (code injection attack). XSS dilakukan oleh penyerang dengan cara memasukkan kode HTML atau client script code lainnya ke suatu situs. Serangan ini akan seolah-olah datang dari situs tersebut. Akibat serangan ini antara lain penyerang dapat mem-bypass keamanan di sisi klien, mendapatkan informasi sensitif, atau menyimpan aplikasi berbahaya.