Pengembangan aplikasi pembelajaran berbasiskan Teknologi Vidio on Demand pada Fakultas Sains dan Teknologi UIN Syahid Jakarta
Pengembangan Aplikasi Pembelajaran Berbasiskan Teknologi Video On Demand
Pada Fakultas Sains dan Teknologi UIN Syahid Jakarta
MUHAMMAD QURROTA A’YUN
Skripsi
Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta
PROGRAM STUDI SISTEM INFORMASI FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA
2008 M / 1429 H
(2)
Pengembangan Aplikasi Pembelajaran Berbasiskan Teknologi Video On Demand
Pada Fakultas Sains dan Teknologi UIN Syahid Jakarta
Skripsi
Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
Muhammad Qurrota Ayun 103093029716
Menyetujui, Pembimbing I
DR. Eko Syamsuddin H, M.Eng
Pembimbing II
Zaenuddin Bey F, M.Sc Mengetahui,
Ketua Program Studi Sistem Informasi
Ir. M. Qomarul Huda, M.Kom NIP. 150 326 908
(3)
PENGESAHAN UJIAN
Skripsi berjudul ”Pengembangan Aplikasi Pembelajaran Berbasiskan
Teknologi Video On Demand Pada Fakultas Sains dan Teknologi UIN Syahid
Jakarta” yang ditulis oleh Muhammad Qurrota Ayun, NIM 103093029716 telah diuji dan dinyatakan lulus dalam sidang Munaqosyah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta pada tanggal 12 Juni 2008. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar sarjana strata satu (S1) Program Studi Sistem Informasi.
Menyetujui : Penguji 1
Yasni Djamain, M.Kom
Penguji 2
Ditdit N. Utama, MMSI
Pembimbing 1
DR. Eko Syamsuddin H, M.Eng
Pembimbing 2
Zaenuddin Bey Fananie, M. Sc Mengetahui :
Dekan Fakultas Sains dan Teknologi
DR. Syopiansyah Jaya Putra, M.Sis NIP : 150 317 956
Ketua Program Studi Sistem Informasi
M. Qomarul Huda, M. Kom NIP : 150 326 908
(4)
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR- BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANA PUN.
Jakarta, Juni 2008
Muhammad Qurrota A’yun
(5)
ABSTRAK
Muhammad Qurrota A’yun, Pengembangan Aplikasi Pembelajaran Berbasiskan
Teknologi Video On Demand Pada Fakultas Sains dan Teknologi Universitas
Islam Negeri Syarif Hidayatullah Jakarta, dibimbing oleh DR. Eko Syamsuddin
H, M.Eng, dan Zainuddin Bey F, M.Sc.
Mayer (1997) mangatakan bahwa pembelajaran dengan multimedia dapat menyerap informasi 50 % lebih banyak dari pembelajaran konvensional. Hal itu didukung penelitian yang menyebut bahwa efektifitas belajar sangat dipengaruhi gaya belajar dan bagaimana cara pembelajar belajar. Bobbi DePorter (1999) mengatakan 10% informasi diserap dari apa yang kita baca, 20% dari apa yang kita dengar, 30% dari apa yang kita lihat, 50% dari apa yang kita lihat dan dengar, 70% dari apa yang kita katakan, 90% dari apa yang kita katakan dan lakukan.
Saat ini sistem pembelajaran di Fakultas Sains dan Teknologi (FST) masih konvensional dan belum terlalu memanfaatkan teknologi informasi sebagai media pembelajarannya.
Untuk itu penulis mengembangkan aplikasi pembelajaran berbasiskan teknologi video on demand guna menciptakan sistem pembelajaran alternatif, yakni dengan media video. Aplikasi ini berbasis web, dibuat dengan bahasa pemrograman PHP, database MySql dan menggunakan FFmpeg, Mencoder, serta
FLVTool sebagai perangkat encoding dan streaming-nya. Metodologi yang
digunakan dalam mengembangkan aplikasi ini adalah dengan model Waterfall.
Kata Kunci : Aplikasi Pembelajaran, Video On Demand, Streaming Media,
Waterfall.
(6)
KATA PENGANTAR
Bismillahirrahmanirahim
Puji dan syukur kita panjatkan kepada Allah SWT atas limpahan Rahmat dan Karunia yang telah diberikan sehingga penulis dapat menyelesaikan laporan skripsi ini dengan sebaik-baiknya. Shalawat dan salam senantiasa tercurah kepada insan yang paling sempurna sepanjang masa, Nabi Muhammad SAW yang dengan jasanya telah membawa kita dari zaman kebodohan menuju zaman yang berilmu pengetahuan.
Skripsi yang berjudul Pengembangan Aplikasi Pembelajaran
Berbasiskan Teknologi Video On Demand Pada Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta merupakan salah satu tugas wajib mahasiswa sebagai persyaratan untuk memperoleh gelar Strata Satu (S1) pada Program Studi Sistem Informasi Fakultas Sains dan Teknologi Syarif Hidayatullah Jakarta.
Penulis menyadari bahwa penelitian skripsi ini tidak dapat terlaksana dengan baik tanpa bantuan dan bimbingan dari semua pihak. Pada kesempatan ini, perkenankan penulis mengucapkan terimakasih kepada :
1. Ayahanda Drs. Supiyan dan Ibunda Dra. Susilahati, M.Sc tercinta yang selalu memberikan dukungan, semangat, motivasi, kasih sayang, doa, dan dukungan finansial guna memperjuangkan pendidikan bagi anaknya serta adikku Muttaqiena Imaamaa yang saya banggakan.
(7)
2. Bapak DR. Eko Syamsuddin H, M.Eng dan Bapak Zainuddin Bey F, M.Sc selaku dosen pembimbing skripsi yang secara kooperatif telah memberikan bimbingan dan dukungan dari berbagai segi. Terima kasih atas kemurahan hati Bapak telah meluangkan segenap waktu, tenaga dan pikirannya untuk membimbing penulis.
3. Ibu Yasni Djamain, M.Kom dan Bapak Ditdit N. Utama, MMSI. Selaku dosen penguji skripsi, atas masukan dan sarannya bagi perbaikan skripsi penulis.
4. Bapak DR. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains dan Teknologi.
5. Bapak Ir. M. Qomarul Huda, M.Kom dan Ibu Nur Aeni Hidayah, MMSI selaku Ketua dan Sekretaris Program Studi Sistem Informasi. Juga Ibu Nia Kumaladewi sebagai dosen penasihat akademis penulis.
6. Dosen-dosen : Bapak Muhammad Yusuf, Bapak Abdusy, Bapak Amir Dahlan, Bapak Aries Susanto, Bapak Zulfiandri, Bapak Bakrie La Katjong, Bapak Adil Siregar, Bapak Ade Chandra, Bapak Rudi Otomona, Ibu Haniah, Ibu Bintan, Ibu Khodijah, dan semua dosen yang tanpa mengurangi rasa hormat penulis, tidak dapat disebutkan satu per satu. 7. Kautsarina (TI 2004) my romantic purple atas segala bentuk dukungannya. 8. Teman-teman sekelasku di Sistem Informasi 2003 B yang telah memberi
warna tersendiri bagi penulis dalam menuntut ilmu di bangku kuliah : Rafeequl, Chandra, Yudho, Helmi, Dayat, Muttaqin, Linggo, Hanif,
(8)
Luthfi, Irvan, Andi, Abdurahman, Arif, Fahmi, Umar, Sarifah, Fitri, Puji, Kiki, Cindy, Achie, Ika,, Efi, Yuli, Eghi, Rohilahima, dan Dede.
9. Seluruh rekan-rekan HIMSI dan HIMTI.
10. Rekan-rekan di majalah RENRO : Qudsi, Qohar, Dewi, Diah, Khaidar, Maskoy, Arul, Risma, Iyah, Rina, Sarah, Heru, Pipit, Ana, Ubet, Adit dan rekan-rekan yang tak bisa disebutkan satu per satu.
11. Rekan-rekan di Dapur Seni : Ical, Irfan, Ezy, Epot, Ano, Pandu, Hafizh, Uwin, Doddy, Santo, Fetty, Endang, Yuni, Rian, Evan, Lia, Farah, dan rekan-rekan yang tak bisa disebutkan satu per satu.
12. Rekan-rekan di Himpunan Mahasiswa Islam (HMI) Cabang Ciputat. 13. Rekan-rekan di United Indonesia yang memberi keceriaan bagi penulis. 14. Semua rekan mahasiswa yang secara langsung maupun tidak langsung
telah memberikan bantuan dan dukungan moril bagi penulis dalam menyelesaikan skripsi ini.
Penulis menyadari laporan ini masih banyak kekurangan. Oleh karena itu, masukkan berupa saran dan kritik yang membangun sangat penulis harapkan demi peningkatan manfaat dari laporan ini. Akhir kata, penulis mengucapkan terimakasih kepada semua pihak yang telah membantu penyelesaian laporan ini.
Wassalam
Ciputat, Juni 2008
Muhammad Qurrota Ayun
(9)
DAFTAR ISI
Halaman Judul... Halaman Persetujuan Pembimbing... Halaman Pengesahan... Halaman Pernyataan... ABSTRAK... KATA PENGANTAR... DAFTAR ISI... DAFTAR GAMBAR... DAFTAR TABEL... i ii iii iv v vi ix xiv xvii
BAB I PENDAHULUAN
1.1 Latar Belakang... 1.2 Perumusan Masalah... 1.3 Pembatasan Masalah... 1.4 Tujuan Penelitian... 1.5 Manfaat Penelitian... 1.6 Metodologi Penelitian... 1.7 Sistematika Penulisan...
1 2 2 3 3 4 6 ix
(10)
BAB II LANDASAN TEORI
2.1 Computer Software (Aplikasi Komputer)... 8
2.1.1 Software Development Process... 8
2.1.2 Waterfall Model... 10
2.1.3 Data Flow Diagram... 12
2.1.4 Entity Relationship Diagram... 13
2.1.5 Normalisasi... 17
2.1.6 State Transition Diagram... 18
2.2 Konsep Dasar Pembelajaran... 19
2.2.1 Definisi Belajar... 19
2.2.2 Pembelajaran Dalam Perkuliahan... 19
2.2.3 Efektifitas Penyerapan Informasi dan Gaya Belajar... 20
2.2.4 Pembelajaran Multimedia... 21
2.3 Konsep Dasar Video On Demand... 23
2.3.1 Pengertian Video... 23
2.3.2 Karakteristik Video... 24
2.3.3 Pengertian Video On Demand... 26
2.3.4 Pemanfaatan Video On Demand dalam Pembelajaran... 28
2.4 Streaming Media... 30
2.4.1 Video Streaming... 34
2.4.2 Streaming Networks... 35
2.4.3 FFmpeg... 37
(11)
2.4.4 Mplayer / Mencoder... 38
2.4.5 Flash Video ... 39
2.5 Local Area Network (LAN) ... 40
2.5.1 Konsep Dasar TCP/IP... 41
2.5.2 Wireless LAN (WLAN) ... 43
BAB III METODOLOGI PENELITIAN 3.1 Metode Pengumpulan Data... 45
3.1.1 Observasi... 45
3.1.2 Interview / Wawancara... 46
3.1.3 Studi Pustaka... 48
3.2 Metode Pengembangan Aplikasi ... 48
3.2.1 Analysis... 49
3.2.2 Design... 50
3.2.3 Code... 50
3.2.4 Test... 51
BAB IV PEMBAHASAN 4.1 Persiapan... 52
4.1.1 Gambaran umum Fakultas Sains dan Teknologi... 52
4.1.2 Visi dan Misi Fakultas Sains dan Teknologi... 53
4.1.3 Struktur Organisasi Fakultas Sains dan Teknologi... 54
4.1.4 Fasilitas dan Infrastruktur Fakultas Sains dan Teknologi... 55
(12)
4.2 Analysis... 4.2.1 Data Gathering... 4.2.2 Identify... 4.2.3 Software Requirements... 4.2.4 Project Definition... 4.3 Design... 4.3.1 Process Modelling... 4.3.2 Data Modelling... 4.3.3 Perancangan Struktur Aplikasi... 4.3.4 State Transition Diagram... 4.3.5 Desain Antarmuka... 4.4 Code... 4.4.1 Kode Program... 4.4.2 Perancangan Antarmuka Program... 4.5 Test...
4.5.1 Ujicoba Mandiri... 4.5.2 Ujicoba Lapangan... 4.6 Fitur dan Rekomendasi Spesifikasi Sistem Untuk Implementasi...
4.6.1 Fitur Sistem dan Kebutuhan Aplikasi... 4.6.2 Rekomendasi Spesifikasi Sistem Untuk Implementasi...
58 58 60 61 63 69 69 72 77 80 96 109 109 109 111 111 118 123 123 125 xii
(13)
BAB IV PENUTUP
5.1 Kesimpulan... 5.2 Saran...
DAFTAR PUSTAKA...
LAMPIRAN A : Interview
LAMPIRAN B : Form Kuesioner Ujicoba LAMPIRAN C : Hasil Perancangan Antarmuka LAMPIRAN D : Kode Program
130 131
132
(14)
DAFTAR GAMBAR
Gambar 2.1 : Model pengembangan sistem dengan Waterfall...
Gambar 2.2 : Arsitektur Video On Demand... Gambar 2.3 : Video On Demand sebagai layanan hiburan oleh
Akamai dan Payvision... Gambar 2.4 : Aplikasi-aplikasi streaming media. ... Gambar 2.5 : Beberapa aplikasi yang dapat berafiliasi dengan FFmpeg... Gambar 2.6 : OSI Layer Model. ... Gambar 4.1 : Struktur Organisasi Fakultas Sains dan Teknologi... Gambar 4.2 : Diagram Konteks... Gambar 4.3 : Diagram Nol... Gambar 4.4 : Diagram Rinci / Level 1... Gambar 4.5 : Diagram Rinci / Level 2... Gambar 4.6 : Bentuk tidak normal... Gambar 4.7 : Bentuk normal pertama... Gambar 4.8 : Bentuk normal kedua... Gambar 4.9 : Bentuk normal ketiga... Gambar 4.10 : Entity Relationship Diagram... Gambar 4.11 : Struktur menu utama... Gambar 4.12 : Struktur menu admin... Gambar 4.13 : Struktur menu user... Gambar 4.14 : Struktur menu video...
10 27 28 32 38 42 54 79 70 71 72 73 73 74 74 75 77 78 79 80 xiv
(15)
Gambar 4.15 : STD Upload Video... Gambar 4.16 : Flow Chart proses Upload Video... Gambar 4.17 : File asli tersimpan pada folder upload...
Gambar 4.18 : File yang telah dikonversi tersimpan pada folder flvfiles...
Gambar 4.19 : Thumbnail image dari video yang di-upload disimpan pada
folder thumb...
Gambar 4.20 : STD Edit dan Delete Video oleh User... Gambar 4.21 : STD Edit dan Delete Video oleh Admin... Gambar 4.22 : STD Add User... Gambar 4.23 : STD Edit dan Delete User... Gambar 4.24 : STD Change Password... Gambar 4.25 : STD Add Sub Category... Gambar 4.26 : STD Edit dan Delete Sub Category... Gambar 4.27 : STD Search... Gambar 4.28 : Desain halaman Index... Gambar 4.29 : Desain halaman Login... Gambar 4.30 : Desain halaman Admin... Gambar 4.31 : Desain halaman Add User... Gambar 4.32 : Desain halaman Add Sub Category... Gambar 4.33 : Desain halaman View All User... Gambar 4.34 : Desain halaman View All Categories... Gambar 4.35 : Desain halaman User... Gambar 4.36 : Desain halaman My Videos...
81 82 83 84 84 86 87 89 90 92 93 94 95 96 97 98 99 99 100 101 101 102 xv
(16)
Gambar 4.37 : Desain halaman Change Password... Gambar 4.38 : Desain halaman form Upload Video 1... Gambar 4.39 : Desain halaman form Upload Video 2... Gambar 4.40 : Desain halaman Video... Gambar 4.41 : Desain halaman Play Video...
Gambar 4.42 : Tampilan JW FLV Media Player... Gambar 4.43 : Desain halaman Help... Gambar 4.44 : Hasil rancangan halaman Play... Gambar 4.45 : Screenshot video player... Gambar 4.46 : Hasil rancangan halaman Video... Gambar 4.47 : Server dalam ujicoba... Gambar 4.48 : Client 1 dalam ujicoba... Gambar 4.49 : Client 2 dalam ujicoba... Gambar 4.50 : Client 3 dalam ujicoba... Gambar 4.51 : Wireless Router dalam ujicoba...
103 104 105 106 107 108 108 109 110 110 111 113 114 115 116
(17)
DAFTAR TABEL
Tabel 2.1 : Simbol DFD... Tabel 2.2 : Simbol ERD... Tabel 2.3 : Tabel perbandingan beberapa format video. ... Tabel 4.1 : Tabel User... Tabel 4.2 : Tabel Video... Tabel 4.3 : Tabel Kategori... Tabel 4.4 : Tabel Subkategori...
Tabel 4.5 : Atribut yang di-inject ke dalam database oleh FLV Tool...
Tabel 4.6 : Spesifikasi server... Tabel 4.7 : Spesifikasi Client 1... Tabel 4.8 : Spesifikasi Client 2... Tabel 4.9 : Spesifikasi Client 3... Tabel 4.10 : Blackbox Testing ScienceTech VOD System... Tabel 4.11 : Hasil kuesioner dosen tentang antarmuka sistem... Tabel 4.12 : Hasil kuesioner dosen tentang struktur navigasi... Tabel 4.13 : Hasil kuesioner dosen tentang prosedur pengoperasian... Tabel 4.14 : Hasil kuesioner dosen tentang fasilitas... Tabel 4.15 : Hasil kuesioner dosen tentang kesimpulan... Tabel 4.16 : Hasil kuesioner mahasiswa tentang antarmuka sistem... Tabel 4.17 : Hasil kuesioner mahasiswa tentang struktur navigasi... Tabel 4.18 : Hasil kuesioner mahasiswa tentang prosedur...
14 16 40 75 76 76 76 85 112 113 114 115 117 119 119 120 120 121 121 121 122 xvii
(18)
Tabel 4.19 : Hasil kuesioner mahasiswa tentang fasilitas... Tabel 4.20 : Hasil kuesioner mahasiswa tentang kesimpulan...
(19)
Viii BAB I PENDAHULUAN
1.1 Latar Belakang
Dalam waktu relatif singkat Fakultas Sains dan Teknologi (FST) menjadi salah satu fakultas di Universitas Islam Negeri Syarif Hidayatullah Jakarta (UIN Syahid) yang paling diminati calon mahasiswa. Hal ini tak lepas dari usaha keras civitas akademika FST dalam mencapainya.
Sebagai fakultas dengan slogan Cyber Multimedia Campus, FST
idealnya membuat inovasi-inovasi yang dapat lebih mendekatkan diri pada slogan tersebut. Misalnya membuat inovasi dalam hal belajar mengajar seperti menyediakan aplikasi yang memungkinkan pembelajaran melalui multimedia. Mayer (1997) mangatakan bahwa pembelajaran dengan multimedia dapat menyerap informasi 50 % lebih banyak dari pembelajaran konvensional. Hal itu didukung penelitian yang menyebut bahwa efektifitas belajar sangat dipengaruhi gaya belajar dan bagaimana cara pembelajar belajar. Bobbi DePorter (1999) mengatakan 10% informasi diserap dari apa yang kita baca, 20% dari apa yang kita dengar, 30% dari apa yang kita lihat, 50% dari apa yang kita lihat dan dengar, 70% dari apa yang kita katakan, 90% dari apa yang kita katakan dan lakukan.
Didasari oleh penelitian-penelitian tersebut penulis berusaha
mengembangkan aplikasi pembelajaran dengan teknologi video on demand pada FST.
(20)
2
1.2 Perumusan Masalah
Atas dasar teori yang dipaparkan pada latar belakang, maka perumusan masalah penelitian ini adalah bagaimana mengembangkan aplikasi pembelajaran pada Fakultas Sains dan Teknologi yang sesuai dengan kebutuhan pengguna.
Sehingga pada fokusnya penulis mengajukan sebuah solusi dengan
mengembangkan Aplikasi Pembelajaran Berbasiskan Teknologi Video On
Demand pada Fakultas Sains dan Teknologi UIN Syahid Jakarta.
1.3 Pembatasan Masalah
Penulis membatasi masalah yang ada pada penelitian ini pada
Pengembangan Aplikasi Pembelajaran Berbasiskan Teknologi Video On
Demand. Diantaranya membahas beberapa hal berikut :
1. Pemanfaatan teknologi video sebagai media pembelajaran alternatif. 2. Menganalisis dan merancang aplikasi pembelajaran berbasiskan
teknologi Video On Demand.
3. Merancang prototype aplikasi berbasis web sebagai antarmuka untuk
navigasi sistem.
1.4 Tujuan Penelitian
Tujuan dari penelitian ini adalah menjawab berbagai permasalahan yang telah penulis uraikan pada perumusan masalah. Yaitu :
(21)
3
1. Mengembangkan aplikasi pembelajaran sebagai perangkat pendukung pembelajaran dengan video pada Fakultas Sains dan Teknologi
2. Mengembangkan aplikasi pembelajaran dengan teknologi video on
demand sesuai kebutuhan pengguna pada Fakultas Sains dan
Teknologi.
1.5 Manfaat Penelitian
Berikut manfaat yang dapat diperoleh dari penelitian ini : 1. Bagi Penulis.
a. Menerapkan ilmu-ilmu yang diperoleh selama kuliah.
b. Untuk memenuhi salah satu syarat kelulusan strata satu (S1) Program Studi Sistem Informasi Fakultas Sains dan Teknologi.
c. Membuat dan menghasilkan sebuah aplikasi pembelajaran yang berguna bagi Universitas, khususnya Fakultas Sains dan Teknologi. 2. Bagi Akademik
a. Mengetahui kemampuan mahasiswa dalam menguasai materi teori yang telah diperoleh selama kuliah.
b. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan sebagai bahan evaluasi.
c. Memberikan gambaran tentang kesiapan mahasiswa dalam
(22)
4
3. Bagi Pengguna
a. Tersedianya aplikasi pembelajaran alternatif dengan media video. b. Membantu dosen dalam menerapkan pembelajaran dengan media
video.
c. Sebagai bahan evaluasi akan pentingnya teknologi dalam kehidupan bermasyarakat terutama pendidikan.
1.6 Metodologi Penelitian
Metode penelitian yang penulias lakukan terdiri dari metode pengumpulan dana dan metode pengembangan aplikasi. Metode pengumpulan data terdiri dari aktivitas berikut ini.
1. Observasi.
Melalui observasi atau pengamatan langsung, penulis dapat menemukan berbagai data yang dibutuhkan dalam melakukan penelitian. Penulis melakukan pengamatan langsung tentang proses pembelajaran di FST.
2. Wawancara / Interview
Wawancara memungkinkan penulis sebagai pewawancara
(interviewer) untuk mengumpulkan data secara tatap muka langsung
dengan orang yang diwawancarai (interviewee). Hal ini membuat
(23)
5
3. Studi Pustaka
Untuk menambah referensi akan teori-teori yang diperlukan penulis melakukan studi pustaka dengan membaca dan mempelajari secara mendalam literatur-literatur yang mendukung penelitian ini. Diantaranya buku-buku, diktat, catatan, makalah dan artikel baik cetak maupun elektronik
Untuk metode pengembangan aplikasi yang penulis gunakan
adalah metode Waterfall, berikut tahapan-tahapan dalam metode Waterfall
menurut Pressman (2001, 29) : 1. Analisis (Analysis)
Analisis merupakan tahap awal dimana dilakukan proses pengumpulan data, identifikasi masalah, dan analisis kebutuhan sistem hingga aktivitas pendefinisian sistem. Tahap ini bertujuan untuk menentukan solusi yang didapat dari aktivitas-aktivitas tersebut.
2. Perancangan (Design)
Pada tahap ini dilakukan pembuatan model dari perangkat lunak. Maksud pembuatan model ini adalah untuk memperoleh pengertian yang lebih baik terhadap aliran data dan kontrol, proses- proses fungsional, tingkah laku operasi dan informasi-informasi yang terkandung di dalamnya. Terdiri dari aktivitas utama pemodelan proses, pemodelan data dan desain antarmuka.
(24)
6
3. Pengkodean (Code)
Pada tahap ini hasil dari perancangan mulai diterjemahkan ke dalam bahasa mesin melalui bahasa pemrograman. Terdiri dari dua aktivitas yaitu pembuatan kode program dan pembuatan antarmuka program untuk navigasi sistem.
4. Ujicoba (Test)
Selanjutnya program harus diuji coba dimana di fokuskan terhadap tiga aktivitas yakni logika internal perangkat lunak, pemastian bahwa semua perintah yang ada telah dicoba, dan fungsi eksternal untuk memastikan bahwa dengan masukan tertentu suatu fungsi akan menghasilkan keluaran sesuai dengan yang dikehendaki.
1.7 Sistematika Penulisan
Dalam skripsi ini, pembahasan yang penulis sajikan terbagi dalam lima bab, yang secara singkat akan diuraikan sebagai berikut :
BAB I PENDAHULUAN
Bab ini membahas tentang latar belakang, perumusan masalah, pembatasan masalah, tujuan dan manfaat penelitian, metodologi penelitian dan sistematika penulisan. 7
BAB II LANDASAN TEORI
(25)
dalam penelitian skripsi.
BAB III METODOLOGI PENELITIAN
Pada bab ini akan dijelaskan metodologi yang digunakan penulis dalam melakukan penelitian.
BAB IV PEMBAHASAN
Dalam bab ini diuraikan hasil analisis dan perancangan dari aplikasi yang dibuat.
BAB V PENUTUP
Bab ini adalah bab terakhir yang menyajikan kesimpulan serta saran dari apa yang telah diterangkan dan diuraikan pada bab-bab sebelumnya.
(26)
LANDASAN TEORI
2.1 Computer Software (Aplikasi Komputer)
Menurut Pressman (2001 : 3), sebuah definisi formal dari aplikasi adalah instruksi-instruksi yang dieksekusi untuk menyediakan fungsi-fungsi tertentu. Lebih jauh dijelaskan bahwa aplikasi / perangkat lunak komputer merupakan sebuah produk yang dikembangkan oleh pengembang perangkat
lunak (software engineer) yang mencakup program yang dapat dieksekusi oleh
komputer dengan berbagai ukuran dan arsitekturnya.
Aplikasi / perangkat lunak komputer sangat penting karena memiliki pengaruh yang cukup dekat akan berbagai aspek dalam kehidupan dan telah menyerap ke dalam budaya dan aktivitas keseharian manusia. Aplikasi harus dirancang agar dapat digunakan pada berbagai keperluan
2.1.1 Software Development Process (Proses Pengembangan Aplikasi)
Dalam Pressman (2001 : 19) dijelaskan bahwa pengembangan aplikasi adalah sebuah proses pembelajaran sosial karena aplikasi seperti penanaman modal yang mengandung berbagai pengetahuan. Pada
prosesnya pengembangan melibatkan interaksi antara user dan
pengembang, user dengan teknologi, dan pengembang dengan teknologi.
(27)
9
Dari sudut pandang pengembang, produk dari proses ini dapat berupa program / aplikasi, dokumen dan berbagai data yang diproduksi sebagai konsekuensi dari aktivitas proses pengembangan ini.
Pengembangan aplikasi, menurut Jogiyanto (1999 : 35) dapat berarti menyusun suatu aplikasi yang baru untuk menggantikan aplikasi yang secara keseluruhan atau memperbaiki sistem yang telah ada. Namun tidak menutup kemungkinan aplikasi yang baru dibuat karena suatu kebutuhan. Berikut ini adalah beberapa alasan akan perlunya aplikasi dikembangkan.
1. Adanya Masalah.
Permasalahan yang timbul dapat berupa ketidakberesan dari sistem atau aplikasi yang lama sehingga tidak dapat beroperasi seperti yang diharapkan. Selain itu juga dapat disebabkan karena pertumbuhan organisasi yang menuntut adanya sesuatu yang baru.
2. Untuk meraih kesempatan-kesempatan (Opportunities).
Aplikasi yang dibuat karena adanya kesempatan baru untuk bersaing dan memperoleh nilai-nilai tertentu. Hal ini antara lain dikarenakan pesatnya kemajuan berbagai bidang, terutama teknologi informasi.
3. Adanya instruksi-instruksi (Directives).
Aplikasi yang baru juga dapat juga terjadi karena adanya instruksi-instruksi baik dari internal perusahaan seperti pimpinan ataupun eksternal, misalnya peraturan pemerintah.
(28)
10
2.1.2 Waterfall Model
Untuk mengembangkan aplikasi dibutuhkan metode atau model
pengembangannya, salah satunya adalah model waterfall. Metode
Waterfall adalah sebuah metode pengembangan aplikasi dengan
pendekatan sekuensial. Pendekatan model ini terlihat mengalir menurun
seperti air terjun (waterfall) melalui beberapa tahap. Menurut Wikipedia
(http://en.wikipedia.org/wiki/Waterfall_model), penggunaan istilah
waterfall pertama kali dikenal melalui sebuah artikel karya Winston W.
Royce (1929-1995) yang dipublikasikan pada tahun 1970 meskipun pada
artikel itu Royce belum menggunakan istilah waterfall.
Gambar 2.1 : Model pengembangan sistem dengan Waterfall.
Pressman (2001 : 29)
Dalam Pressman (2001 : 78), metode ini bisa juga disebut dengan linear sequential model, menggunakan pendekatan sistematis dan
(29)
11
sekuensial dalam pengembangan aplikasi, dimulai melalui proses analisis, desain, pengkodean dan ujicoba.
Model waterfall tersusun atas aktivitas- akivitas berikut ini :
1. Analysis (Analisis)
Hal pertama yang harus dilakukan dalam tahap analisis adalah komunikasi dengan berbagai pihak yang terkait mulai dari mengidentifikasi dan mendefinisikan permasalahan, menentukan keperluan untuk semua elemen dan aplikasi.
Pengetahuan ini terasa perlu ketika aplikasi harus berinteraksi dengan elemen-elemen yang lain seperti perangkat keras, manusia dan basis data.
2. Design (Perancangan)
Perancangan menentukan bagaimana suatu aplikasi
menyelesaikan apa yang harus diselesaikan. Pada tahap ini dilakukan pembuatan model dari aplikasi. Maksud pembuatan model ini adalah untuk memperoleh pengertian yang lebih baik terhadap aliran data dan kontrol, proses-proses fungsional, tingkah laku operasi dan informasi-informasi yang terkandung di dalamnya.
Perancangan dilakukan mulai dari tingkat global sampai ke tingkat rincian tertentu. Pada tahap ini dilakukan beberapa aktivitas, seperti pemodelan proses serta pemodelan data.
(30)
12
3. Code (Pengkodean)
Code atau pengkodean adalah tahap dimana aplikasi yang
telah dianalisis dan dirancang mulai diterjemahkan ke dalam bahasa mesin melalui bahasa pemrograman. Jika rancangan dibuat secara detil maka pengkodean akan menjadi aktivitas yang cepat. Pada tahap ini lakukan pengkodean program dan juga antarmuka program.
4. Test (Ujicoba)
Ketika pengkodean telah selesai dilakukan selanjutnya aplikasi harus diuji coba. Proses uji coba di fokuskan terhadap tiga aktivitas yakni logika internal aplikasi, pemastian bahwa semua perintah yang ada telah dicoba, dan fungsi eksternal, untuk memastikan bahwa dengan masukan tertentu suatu fungsi akan menghasilkan keluaran sesuai dengan yang dikehendaki.
2.1.3 Data Flow Diagram (DFD)
Menurut Al Fatta (2007 : 119), Data Flow Diagram (DFD) atau
diagram aliran data merupakan diagram yang digunakan untuk menggambarkan proses-proses yang terjadi pada perangkat lunak yang akan dikembangkan. Dengan model ini, data-data yang terlibat pada masing-masing proses dapat diidentifikasi. Untuk membaca suatu DFD kita harus memahami dulu elemen-elemen yang menyusunnya, yaitu :
(31)
13
1. Process (Proses)
Aktivitas atau fungsi yang dilakukan untuk alasan bisnis yang spesifik, biasanya berupa manual maupun terkomputerisasi.
2. Data Flow (Aliran Data)
Satu data tunggal atau kumpulan logis suatu data, selalu diawali atau berakhir pada proses.
3. Data Store (Penyimpanan Data)
Kumpulan data yang disimpan dengan cara tertentu. Data
yang mengalir disimpan dalam data store dan aliran data di-update
atau ditambahkan ke data store.
4. External Entity (Entitas Eksternal)
Orang, organisasi, atau sistem yang berada di luar perangkat lunak tetapi berinteraksi dengan perangkat lunak.
Selain itu, menurut Ladjamudin (2005 : 64), DFD juga terdiri dari beberapa hirarki, yaitu :
1. Diagram Konteks
Diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Dalam diagram konteks hanya ada satu proses dan tidak ada store.
2. Diagram Nol
Diagram yang menggambarkan proses dari DFD. Diagram Nol memberikan pandangan secara menyeluruh mengenai sistem,
(32)
14
menunjukkan tentang fungsi-fungsi utama atau proses yang ada, aliran data dan entitas eksternal
3. Diagram Rinci
Diagram yang menguraikan proses apa yang ada dalam diagram nol atau diagram level di atasnya.
Berikut ini adalah tabel perbandingan simbol DFD yang digunakan oleh beberapa ahli.
Tabel 2.1 : Simbol DFD. Ladjamudin (2005 : 72) Simbol Gane/Sarson Yourdon/De Marco Entitas Luar
Proses
Arus Data Aliran Data Aliran Data
Penyimpanan
(33)
15
2.1.4 Entity Relationship Diagram (ERD)
Menurut Ladjamudin (2005 : 142), Entity Relationship Diagram
(ERD) adalah suatu model jaringan yang menggunakan susunan data yang disimpan dalam sistem secara abstrak. ERD juga merupakan model
jaringan data yang menekankan pada struktur-struktur dan relationship
data. ERD terdiri dari beberapa elemen, yaitu : 1. Entity
Entity adalah sesuatu apa saja yang ada di dalam sistem,
nyata maupun abstrak dimana data tersimpan. Entity diberi nama
dengan kata benda dan dapat berupa orang, benda, lokasi, kejadian (terdapat unsur waktu di dalamnya).
2. Relationship
Relationship adalah hubungan alamiah yang terjadi antar
entity. Pada umumnya relationship diberi nama dengan kata kerja
dasar, sehingga memudahkan untuk melakukan pembacaan relasinya (kalimat aktif atau pasif).
3. Relationship Degree
Relationship degree atau derajat relationship adalah jumlah
entity yang berpartisipasi dalam satu relationship.
4. Atribut
Atribut adalah sifat atau karakteristik dari tiap entity
maupun relationship. Atribut merupakan elemen dari tiap entity
(34)
16
5. Cardinality
Cardinality atau kardinalitas merujuk kepada jumlah
hubungan maksimum yang terjadi dari entitas yang satu ke entitas yang lain dan begitu juga sebaliknya. Terdapat tiga macam
kardinalitas relasi, yaitu : one to one, one to many atau many to one
dan many to many.
Notasi yang biasa digunakan dalam ERD dapat dilihat pada tabel di bawah ini :
Tabel 2.2 : Simbol ERD. Ladjamudin (2005 : 149),
Notasi Keterangan
Entitas
Entitas, adalah suatu objek yang dapat diidentifikasi dalam lingkungan pemakai.
Relasi
Relasi, menunjukkan adanya hubungan di antara sejumlah entitas yang berbeda.
Atribut
Atribut, berfungsi mendeskripsikan karakter
entitas (atribut yang berfungsi sebagai key
diberi garis bawah).
Garis, sebagai penghubung antara relasi dengan entitas, relasi dan entitas dengan atribut
(35)
17
2.1.5 Normalisasi
Menurut Sutanta (2004 : 172), normalisasi dapat diartikan sebagai suatu teknik yang mendekomposisi data dalam cara-cara tertentu untuk mencegah timbulnya permasalahan pengolahan data dalam basis data.
Teori normalisasi dibangun menurut konsep level normalisasi. Level normalisasi dijelaskan berdasarkan kriteria tertentu pada bentuk normal. Berikut level kriterianya.
1. Unnormalized Form (UNF)
Relasi UNF mempunyai kriteria sebagai berikut :
a. Jika relasi mempunyai bentuk non flat file (terjadi akibat data disimpan sesuai dengan kedatangannya, sehingga tidak memiliki struktur yang sama, terjadi duplikasi atau tidak lengkap).
b. Jika relasi memuat set atribut berulang.
c. Jika relasi memuat atribut non atomic value.
2. First Normal Form (1NF)
Relasi 1NF mempunyai kriteria sebagai berikut : a. Jika seluruh atribut dalam relasi bernilai atomik. b.
Jika seluruh atribut dalam relasi bernilai tunggal. c. Jika relasi tidak memuat set atribut berulang.
d. Jika semua record mempunyai sejumlah atribut yang sama.
3. Second Normal Form (2NF)
(36)
18
a. Jika memenuhi kriteria 1NF.
b. Jika semua atribut non kunci FD pada PK.
4. Third Normal Form (3NF)
Relasi UNF mempunyai kriteria sebagai berikut : a. Jika memenuhi kriteria 2NF.
b. Jika setiap atribut non kunci tidak TDF (nontransitive
dependency) terhadap PK.
2.1.6 State Transition Diagram (STD)
Menurut Pressman (2001 : 302), STD mengindikasikan bagaimana perangkat lunak berlaku sebagai konsekuensi dari kejadian eksternal yang menyebabkan perubahan suatu kondisi. Untuk merealisasikannya, STD
menghadirkan model dari suatu kejadian yang disebut dengan state. Dalam
STD, proses yang terjadi digambarkan dengan transisi antar state.
Ada dua macam simbol yang menggambarkan proses dalam STD, yaitu :
1. Gambar persegi panjang yang menunjukan kondisi (state) dari
sistem.
2. Gambar panah yang menunjukan transisi antar state. Tiap panah
diberi label dengan ekspresi aturan. Label yang diatas menunjukan kejadian yang menyebabkan transisi terjadi. Label yang bawah menunjukan aksi yang terjadi akibat dari kejadian tadi.
(37)
19
2.2 Konsep Dasar Pembelajaran 2.2.1 Definisi Belajar
Menurut Hakim (2000 : 1), belajar adalah suatu proses perubahan di dalam kepribadian manusia, dan perubahan itu ditampakkan dalam bentuk peningkatan kualitas dan kuantitas tingkah laku seperti peningkatan kecakapan, pengetahuan, sikap, kebiasaan, pemahaman, keterampilan, daya pikir, dan lain-lain kemampuan.
Dalam Wikipedia Indonesia (http://id.wikipedia.org/wiki/Belajar) dituliskan bahwa belajar adalah perubahan yang relatif permanen dalam perilaku atau potensi perilaku sebagai hasil dari pengalaman atau latihan yang diperkuat.
Beberapa definisi dan penjelasan di atas menghasilkan kata kunci yaitu perubahan perilaku, sehingga belajar dapat dikatakan sebagai proses dari suatu perubahan perilaku.
Adapun input dari proses belajar itu sendiri sangat beragam. Baik dari subjek tertentu seperti guru dan dosen, maupun dari objek seperti buku dan media lain seperti televisi, radio dan internet.
2.2.2 Pembelajaran Dalam Perkuliahan
Seperti yang tertulis pada Wikipedia Indonesia
(http://id.wikipedia.org/wiki/Pembelajaran), secara umum pembelajaran adalah proses interaksi peserta didik dengan pendidik dan sumber belajar
(38)
20
pada suatu lingkungan belajar. Pembelajaran merupakan bantuan yang diberikan pendidik agar dapat terjadi proses pemerolehan ilmu dan pengetahuan, penguasaan kemahiran dan tabiat, serta pembentukan sikap dan kepercayaan pada peserta didik. Dengan kata lain, pembelajaran adalah proses untuk membantu peserta didik agar dapat belajar dengan baik.
Dalam perkuliahan, pendidik adalah dosen sedangkan peserta didik adalah mahasiswa. Dapat dikatakan secara singkat bahwa pembelajaran dalam perkuliahan merupakan suatu proses transfer informasi dari dosen kepada mahasiswa.
Karena adanya suatu interaktifitas, dari penjelasan diatas maka dapat dijabarkan bahwa definisi proses pembelajaran dalam perkuliahan adalah suatu upaya bersama antara dosen dan mahasiswa untuk berbagi dan mengolah informasi dengan tujuan agar pengetahuan yang terbentuk dalam diri peserta pembelajaran dan menjadi landasan belajar secara mandiri dan berkelanjutan.
2.2.3 Efektifitas Penyerapan Informasi dan Gaya Belajar
Pada sebuah makalah berjudul Pemanfaatan Teknologi Informasi dan Komunikasi dalam Pembelajaran oleh Entis Sutisna, Bobbi DePorter (1999) dalam suatu penelitiannya mengatakan bahwa 10% informasi diserap dari apa yang kita baca, 20% dari apa yang kita dengar, 30% dari
(39)
21
apa yang kita lihat, 50% dari apa yang kita lihat dan dengar, 70% dari apa yang kita katakan, 90% dari apa yang kita katakan dan lakukan.
Hal tersebut di atas memiliki makna bahwa ada suatu tingkatan efektifitas penyerapan informasi dan kaitannya dengan gaya belajar seorang pembelajar.
2.2.4 Pembelajaran Multimedia
Dalam Andleigh (1996 : 13), dijelaskan bahwa multimedia berasal dari kata multi yang berarti banyak dan media berarti bentuk atau sarana komunikasi. Dalam bidang komputer, multimedia adalah aplikasi atau presentasi berbasis komputer yang menggabungkan dua atau lebih media seperti teks, suara, gambar, video, dan animasi. Multimedia dapat memberikan lebih banyak cara dalam menampilkan sebuah data atau informasi.
Dalam kaitannya dengan pembelajaran, Mayer (1997 : 1-10) menjelaskan pembelajaran dengan multimedia mencakup tiga proses
kognitif penting. Yang pertama, selecting (menyeleksi). Diaplikasikan
pada informasi verbal berbasis teks dan juga informasi visual yang
menyediakan image / gambar. Yang kedua, organizing
(mengorganisasikan). Diaplikasikan untuk membuat model berbasis verbal
dan modelberbasis visual dari menjadi sebuah penjelasan. Yang ketiga,
(40)
22
corresponding events dalam model berbasis verbal dan model berbasis
visual.
Model-model ini dijelaskan lebih dalam oleh Mayer dengan berbagai eksperimen mencakup lima prinsip utama bagaimana pemanfaatan multimedia dapat membantu pembelajar mengerti penjelasan ilmiah. Berikut penjelasannya :
1. Multiple Representation Principle.
Prinsip pertama adalah lebih baik mempresentasikan penjelasan dengan dua mode penyajian dibanding hanya satu
mode. Pembelajar yang membaca sebuah bacaan yang
mengandung materi ilustrasi visual di dekat materi teks menyerap sekitar 65 % informasi dibanding hanya membaca teks saja. Prinsip
ini juga disebut dengan Multimedia Effects.
2. Contiguity Principle.
Prinsip ini menjelaskan bahwa pembelajar lebih dapat mengerti penjelasan dengan materi verbal dan visual yang disajikan pada waktu yang bersamaan daripada pada waktu yang terpisah. Pembelajar yang mendengarkan penjelasan bersamaan dengan presentasi viual menyerap 50 % informasi lebih banyak dibanding pembelajar yang melihat materi visual tidak bersamaan dengan materi verbal.
(41)
23
3. Split Attention Principle.
Prinsip ini menjelaskan bahwa kata-kata lebih baik disajikan secara audio daripada visual. Pembelajar yang melihat materi visual sambil mendengarkan narasi audio menyerap 50 % informasi lebih banyak daripada pembelajar yang melihat materi visual dengan membaca teks pada layar.
4. Individual Differences Principle.
Prinsip ini menjelaskan bahwa multimedia effects,
contiguity effects, dan split-attention effects tergantung dari
perbedaam individual dari tiap-tiap pembelajar. Pada dasarnya pembelajar dengan tigkat pengetahuan tinggi dapat menyerap
informasi lebihbanyak dari pembelajar dengan tingkat
pengetahuan lebih rendah.
5. Coherence Principles.
Prinsip ini menjelaskan bahwa pembelajar lebih dapat menyerap informasi dari sebuah materi logis yang merupakan kesimpulan dari materi verbal dan visual daripada versi panjang dari materi tersebut.
2.3 Konsep Dasar Video On Demand 2.3.1 Pengertian Video
Menurut Wikipedia (http://en.wikipedia.org/wiki/Video), video adalah teknologi pemrosesan sinyal elektronik. Lebih dalam lagi teknologi
(42)
24
ini menangkap, merekam, memproses, menyimpan, mentrasmisikan dan
merekonstruksikan sekuen-sekuen dari gambar diam/still image yang
merepresentasikan adegan-adegan dalam sebuah gerakan. Jadi pada dasarnya video adalah sekumpulan dari gambar-gambar diam yang dikonstruksi secara cepat dalam satuan waktu, biasanya dalam format
frame per second (FPS).
Video merupakan salah satu elemen dalam multimedia dan di dalamnya terdapat dua atau lebih komponen pembentuk. Terutama gambar yang bergerak dan suara.
Awalnya teknologi video dikembangkan untuk sistem
pertelevisian, tapi dalam perkembangannya teknologi ini kemudian dapat diimplementasikan pada berbagai bidang baik itu hiburan, bisnis, pendidikan atau pemebalajaran dan lain sebagainya.
2.3.2 Karakteristik Video
Menurut Wikipedia (http://en.wikipedia.org/wiki/Video), video memiliki beberapa kararteristik, diantaranya :
1. Frame Rate
Frame Rate adalah suatu ukuran dari frekuensi yang
dimiliki oleh video. Satuannya adalah Frame Per Second (FPS)
yang menyatakan berapa kali gambar ditampilkan dalam waktu satu detik. Format PAL yang digunakan Eropa, Asia dan Australia
(43)
25
digunakan di USA, Canada dan Jepang memiliki frame rate
sebanyak 29, 97 FPS.
Pada dasarnya frame rate video dapat diatur sedemikian
rupa dan sesuai kebutuhan, namun untuk menunjukan ilusi gambar
bergerak dibutuhkan frame rate minimal 15 FPS.
2. Resolusi
Resolusi adalah ukuran dari video dilihat dari lebar dan tingginya. Format PAL memiliki ukuran standar 720 x 576 pixel. Sedangkan format NTSC memiliki ukuran standar 720 x 480 pixel.
3. Aspect Ratio
Aspect Ratio adalah perbandingan lebar dan tinggi suatu
video. Ada ukuran standar dan juga widescreen. Ukuran standar
memiliki aspect ratio 4:3 sedangkan widescreen memiliki aspect
ratio 16 :9 atau 16 :10. Sehingga pada ukuran widescreen akan
didapatkan ruang komposisi gambar yang lebih lebar. 4. Kompresi
Video butuh dikompresi untuk menentukan ukuran dan kualitas agar sesuai kebutuhan. Biasanya digunakan pada video digital. Beberapa standar kompresi video adalah MPEG 1, MPEG 2, MOV,WMV, FLV dan lain sebagainya.
(44)
26
2.3.3 Pengertian Video On Demand
Seperti yang telah dijelaskan pada sub bab 2.3.1, video merupakan salah satu elemen dalam multimedia dan di dalamnya terdapat dua atau lebih komponen pembentuk, terutama gambar yang bergerak dan suara.
Secara harfiah, On Demand berarti ”sesuai permintaan”. Dalam hal
ini On-Demand merujuk pada suatu pelayanan dimana user (pengguna)
dapat mengakses dan menentukan sendiri atau me-request layanan apa
yang diinginkannya. Untuk itu diperlukan suatu sistem dan jaringan yang dapat menjembatani pelayanan tersebut.
Dari penjelasan di atas dan kutipan dari Wikipedia
(http://en.wikipedia.org/wiki/Video_on_demand), Video On Demand
adalah suatu sistem yang mengijinkan para user untuk memilih dan
menonton materi video atau klip melalui jaringan sebagai bagian dari
interactive system (sistem interaktif).
Sistem Video On Demand dapat berjalan dengan dua cara. Cara
pertama adalah dengan men-download terlebih dahulu materi videonya
untuk kemudian ditonton tanpa terikat waktu. Sedangkan cara kedua
adalah dengan streaming, yaitu teknologi dimana user dapat menonton
video secara real time.
Pada awalnya sistem Video On Demand digunakan untuk layanan
penyiaran, dalam hal ini televisi. Adalah Hongkong Telecom, sebuah perusahaan TV berbayar di Hongkong yang pertama kali menggunakan
(45)
27
Video On Demand dalam industri penyiaran komersil pada tahun 1999.
Lalu diikuti oleh Oceanic Cable pada tahun 2000 di Hawaii.
Gambar 2.2 : Arsitektur Video On Demand
(http://www.ece.ubc.ca/~irenek/techpaps/vod/)
Dalam perkembangannya sistem Video On Demand digunakan
dalam berbagai indutri, misalnya industri periklanan. Dewasa ini Sistem
Video On Demand juga digunakan dalam bidang pendidikan, yakni
sebagai sistem pendukung dari teknologi dan media pembelajaran.
Sebagai produk dari teknologi pembelajaran, sistem ini dapat menunjang pengajar untuk manambah alternatif media pebelajaran. Dalam
(46)
28
tujuannya, tentu untuk membantu efektifitas penerimaan informasi kepada orang yang diajarnya.
Gambar 2.3 : Video On Demand sebagai layanan hiburan oleh Akamai dan Payvision. (http://www.payvision.eu/akamai/images/)
2.3.4 Pemanfaatan Video On Demand Dalam Pembelajaran
Seiring perkembangan teknologi video, streaming, dan juga
jaringan yang kian pesat, maka teknologi tersebut dapat dimanfaatkan dalam berbagai bidang. Dewasa ini banyak aplikasi yang memanfaatkan
(47)
29
banyak berputar pada industri-industri hiburan seperti broadcasting,
advertising dan juga commerce.
Penerapan Video On Demand yang saat ini sangat populer adalah
YouTube, yaitu situs di internet yang menempatkan diri sebagai video
server berbasis web sehingga dapat diakses siapa saja selama terhubung ke
jaringan internet. Keunggulan situs ini adalah user dapat meng-upload
sendiri file video mereka untuk disimpan pada server YouTube. Selain itu
user dapat menjelajah berbagai video yang tersimpan di sana lalu memilih
video untuk ditontonnya yang berlangsung secara real time karena video
tidak di-download melainkan di-streaming kepada user.
Sistem seperti ini memudahkan user karena tak perlu membuang
waktu untuk men-download dahulu dan menyimpannya. Karena media
penyampaiannya melalui internet, maka kecepatan akses video sangat
tergantung pada besarnya bandwidth yang digunakan user. Sehingga
YouTube melakukan kompresi pada video dengan format FLV dan MP4
dengan tujuan agar user dengan bandwidth rendah sekalipun tetap dapat
menikmati video, tetapi hal ini berakibat pada rendahnya kualitas video yang ditampilkan.
Konsep yang sama dapat diterapkan pada bidang lain, yaitu
pembelajaran. Video On Demand dapat digunakan sebagai media alternatif
dalam pembelajaran karena teknologi video adalah suatu hal yang cukup ideal untuk mewujudkan pembelajaran multimedia.
(48)
30
Penjabarannya adalah seperti ini.
1. Dosen dapat mengakses, meng-upload dan menampilkan materi
video kapan saja ketika mengajar selama notebook/komputer dosen
terhubung ke jaringan dimana video server berada. Dalam hal ini
dosen tak perlu men-download materi video itu kembali karena
ditampilkan secara streaming.
2. Selain dosen, mahasiswa juga dapat mengaksesnya untuk mengulang pelajaran ketika tak sedang belajar tatap muka selama
ia terkoneksi dengan jaringan dimana video server berada.
2.4 Streaming Media
Menurut Azikin (2005 : 1), streaming adalah sebuah teknologi untuk
memainkan file video atau audio secara langsung ataupun dengan pre-
recorded dari sebuah mesin server (web server).
Sementara dalam penjelasan yang terdapat pada Wikipedia
(http://en.wikipedia.org/wiki/Streaming_media), streaming media adalah suatu
produk multimedia yang secara konstan ditampilkan kepada end-user ketika
didistribusikan oleh provider. Streaming media lebih merujuk kepada metode
bagaimana suatu media didistribusikan melalui jaringan komunikasi. Bukan merujuk kepada media itu sendiri.
Pada prakteknya streaming media juga bisa dipaparkan sebagai suatu
teknologi untuk memainkan atau menjalankan file (audio maupun video) dari
(49)
31
tersebut mengalami proses encoding terlebih dahulu dengan menggunakan
data rate tertentu yang cocok untuk ditransmisikan melalui internet atau
jaringan yang sesuai dengan kapasitas bandwidth dari user.
Untuk itu harus dilakukan encoding file-file media audio maupun
video dengan bermacam-macam kecepatan data rate, kemudian user dapat
menyesuaikan dengan kecepatan jaringannya ataupun kecepatan dari sistem
akses datanya. User dapat melihat file audio maupun video dari server
streaming secara langsung dengan langsung memainkannya. Ini menghindari
waktu yang lama untuk melihat suatu file besar.
Kualitas dari file streaming tergantung dari besarnya bandwidth, isi dari file-file tersebut (motion/non-motion), dan besarnya data yang dialirkan dalam satuan detik ketika melintasi jaringan. Ketika audio atau video digital mempunyai durasi lebih dari beberapa detik bahkan bermenit-menit, besarnya ukuran file untuk menyimpan data tersebut menuntut kapasitas penyimpanan yang juga besar.
Ketika file tersebut dihubungkan ke internet atau suatu jaringan, maka
user yang mengakses file tersebut akan mengalami delay yang sangat lama
antara me-request data file tersebut dengan melihat tampilan audio atau video
tersebut. Hal ini disebabkan data yang besar itu membutuhkan waktu untuk
download terlebih dahulu sebelum dimainkan. Dalam hal ini teknologi
streaming mengeliminasi hal tersebut.
Menurut Austerberry (2005 : 135), Streaming media potensial
(50)
32
pemasaran, pendidikan dan juga hiburan. Beberapa aplikasi menggunakan
streaming sebagai fokus utama, tapi lainnya hanya menggunakan sebagai
suatu tool (alat) saja.
Gambar 2.4 : Aplikasi-aplikasi streaming media. Austerberry (2005 : 135)
Berikut beberapa aplikasi nyata yang menggunakan teknologi
streaming :
1. Internet Radio
Internet radio adalah aplikasi radio yang memanfaatkan
jaringan internet sebagai media penyampaiannya. Pada radio konvensional yang menggunakan sinyal analog cakupan siaran sangat terbatas, yakni hanya daerah tertentu yang menerima
(51)
33
jangkauan sinyal radio. Pada internet radio setiap orang dapat
mengakses siaran radio selama ia terhubung ke internet
2. Internet Protocol Television (IPTV)
Hampir serupa dengan konsep internet radio, IPTV atau
Internet Protocol Television adalah televisi yang menggunakan
internet protocol sebagai media penyampaiannya. Contohnya
adalah WowTV.
3. Video Conference
Video conference adalah suatu aplikasi yang
memungkinkan user melakukan konferensi jarak jauh namun tetap
dapat saling bertatap muka antar user. Aplikasi ini dapat meminimalisir aspek waktu, tenaga dan biaya terutama jika antara
user yang satu dengan yang lain berada pada tempat yang
berjauhan. Biasanya aplikasi ini digunakan pada rapat perusahaan
yang berjauhan dan juga e-learning atau pembelajaran jarak jauh.
4. Video On Demand (VOD)
Video On Demand merupakan aplikasi yang
memungkinkan user untuk memilih media yang akan diaksesnya.
Aplikasi seperti ini dapat ditemui pada situs YouTube, Google
Video ataupun situs semacamnya dimana user dapat memilih
sendiri video yang akan ditontonnya. Selain itu dengan Video On
(52)
34
database / library video sehingga memudahkan sistem pengelolaan
file-file video.
2.4.1 Video Streaming
Video Streaming merupakan salah satu bentuk implementasi dari
aplikasi teknologi streaming. Dalam hal ini media nya adalah video. Pada
prinsipnya video streaming mengeliminir proses download sebuah file
video sehingga user tak perlu menyimpannya. Pada sisi user, ketika
sebuah file dialirkan (di-stream), maka terciptalah sebuah buffer space
kecil pada komputer user dan data file mulai di-download kedalamnya.
Segera setelah buffer ini penuh (dalam satu satuan waktu), maka file tersebut dapat mulai dijalankan. Selama file dijalankan, data yang diambil adalah yang berasal dari buffer, namun secara bersamaan data yang
selanjutnya juga di-download. Selama kecepatan download data sama
dengan kecepatan play file, maka tampilan akan berjalan mulus.
Ada beberapa hal penting yang perlu diperhatikan dari penerapan
streaming ini. Yang pertama adalah data dari file video tersebut tidak
penah benar-benar eksis dalam komputer user. Setelah data yang ada di
buffer dimainkan, maka akan di-overwrite dengan data yang berikutnya.
Jadi user tidak pernah meng-copy file tersebut secara komplit ke dalam komputernya. Hal ini menyebabkan setiap kali ingin melihat file tersebut,
maka user harus melakukan hubungan dengan server streaming lagi agar
(53)
35
memungkinkan user untuk mengakses file video yang notabene
berkapasitas besar pada komputer yang tidak memiliki kapasitas penyimpanan yang cukup.
2.4.2 Streaming Networks
Dalam literatur yang ditulis oleh Jean-Paul Saman yang berjudul
Streaming Networks With VLC (2006 : 3-10), sebuah streaming network
atau jaringan streaming dapat diatur dalam beberapa cara yang berbeda.
Kesemuanya itu memiliki keuntungan dan kerugiannya masing-masing. Berikut beberapa diantaranya.
1. Broadcast
Dalam Broadcast streaming, server mengirimkan stream ke
semua user melalui jaringan. Itu berarti stream akan tersebar.
Kelebihan :
a. Semua stream tersedia dimanapun pada jaringan.
Kelemahan :
a. Semua stream dikirimkan ke subnet utuh secara
berkesinambungan.
b. Bandwidth dari jaringan tidak secara efisien terpakai.
c. Semua client mendapat stream yang sama.
(54)
36
2. Unicast
Dalam Unicast streaming, server mengirimkan stream ke
client yang telah didefinisikan dengan Ip address masing-masing.
melalui jaringan. Setiap stream dikirim ke port atau Ip address
yang berbeda. Kelebihan :
a. Setiap client memiliki stream masing-masing.
b. Penggunaan bandwidth lebih baik.
Kelemahan :
a. Semua stream dikirimkan ke subnet utuh secara
berkesinambungan.
b. Bandwidth dari jaringan tidak secara efisien terpakai.
c. Stream tetap dikirim meski client tidak meminta.
d. Client tak dapat mengontrol stream. 3. Multicast
Dalam multicast streaming, server mengirim stream kepada
grup tertentu dalam jaringan. Kelebihan :
a. Penggunaan bandwidth menjadi lebih baik,
dididuplikasikan pada ajringan terdekat daripada client. Semua client, server, switch dan router harus mendukung
(55)
37
Kelemahan :
a. Banyak client membagi stream yang sama dan tak dapat
mengontrolnya.
b. Server mengirim stream kepada switch / router terdekat
walau tak ada satu clientpun yang mengakses.
4. Video On Demand (VOD)
Dalam Video On Demand streaming, server tidak mengirim
stream secara default melainkan server menunggu permintaan
client untuk mengirim stream.
Kelebihan :
a. Setiap client memiliki stream masing-masing dan dapat
mengontrolnya sendiri.
b. Hanya stream yang diminta yang akan dikirim melalui
jaringan.
c. Penggunaan bandwidth menjadi lebih baik dan efisien.
Kelemahan :
a. Setiap client harus memulai stream baru pada server
2.4.3 FFmpeg
Menurut Wikipedia (http://en.wikipedia.org/wiki/Ffmpeg),
FFmpeg (Fast Forward Moving Picture Experts Group) adalah sebuah
software yang dapat merekam, mengkonversi, dan mengalirkan (stream)
(56)
38
command line dan merupakan komposisi dari berbagai codec open source.
Termasuk di dalamnya adalah libavcodec, sebuah library codec audio dan
video yang umum digunakan dalam proyek-proyek multimedia.
FFmpeg dikembangkan dalam sistem operasi Linux tetapi dapat dikompilasi dalam banyak sistem operasi lainnya seperti Apple Mac OS X dan Microsoft Windows. FFmpeg merupakan software bebas yang dirilis
di bawah GNU General Public License.
Gambar 2.5 : Beberapa aplikasi yang dapat berafiliasi dengan FFmpeg. (http://en.wikipedia.org/wiki/Image:FFmpeg.svg)
2.4.4 Mplayer / MEncoder
Menurut Wikipedia (http://en.wikipedia.org/wiki/Mplayer),
Mplayer adalah sebuah multi platform media player yang bersifat open
source dan tak berbayar yang didistribusikan di bawah GNU General
Public License. Mplayer dapat berjalan pada beberapa sistem operasi
termasuk Linux, Microsoft Windows dan Apple Mac OS X. Sebagai multi
(57)
39
file. Dengan fungsinya itu Mplayer juga dapat melakukan streaming pada
berbagai format file.
MPlayer memiliki suatu perangkat terintegrasi yang memiliki
fungsi utama menormalisasikan dan mengkonversi rate dan bitrate pada
file yaitu Mencoder.
Dalam Wikibooks (http://en.wikibooks.org/wiki/Mplayer),
dijelaskan bahwa MEncoder merupakan perangkat berbasis command line
yang berfungsi untuk encoding, decoding dan filtering file. Dalam hal ini,
MEncoder sebagai bagian dari MPlayer dapat berafiliasi dengan perangkat
lunak lain seperti FFmpeg dalam aplikasi streaming media.
2.4.5 Flash Video
Menurut Wikipedia (http://en.wikipedia.org/wiki/Flash_Video), Flash Video adalah sebuah format file yang biasa digunakan untuk menyampaikan video melalui aplikasi berbasis web terutama dalam
jaringan internet. Flash Video memiliki ekstensi FLV yang bisa diplay
menggunakan Adobe Flash Player (dulu dikenal dengan nama
Macromedia Flash Player). Flash Video dapat ditampilkan pada berbagai
macam sistem operasi melalui beberapa web browser yang dilengkapi plug
in Adobe Flash Player dan beberapa aplikasi pihak ketiga seperti MPlayer,
VLC Media Player, atau Quicktime.
Sebenarnya ada berbagai macam format video yang tersedia untuk ditampilkan pada aplikasi berbasis web, namun saat ini pilihan terbaik
(58)
40
adalah menggunakan Flash Video. Berikut tabel perbandingan beberapa parameter antara berbagai format video pada aplikasi berbasis web.
Tabel 2.3 : Tabel perbandingan beberapa format video. (http://www.jeroenwijering.com/?item=FLV_Video_Compression)
2.5 Local Area Network (LAN)
Local Area Network (LAN) atau jaringan lokal adalah sekumpulan dua
atau lebih komputer yang berada dalam batasan jarak lokasi satu dengan yang lain yang saling terhubung baik langsung atau tidak langsung. Menurut
Syafrizal (2005 : 16) LAN dibatasi oleh area yang relatif kecil, umumnya
dibatasi oleh area lingkungan. Biasanya jarak antar node tidak lebih jauh dari
sekitar 200 meter.
Dalam kaitannya dengan konfigurasi, tipe LAN dibagi menjadi dua bagian yaitu jaringan peer to peer dan jaringan server base. Peer-to-peer
network atau disingkat peer-network merupakan contoh jaringan yang
(59)
41
tidak ada autentifikasi terpusat, autentifikasi diatur tersendiri di setiap node
yang memberikan layanan. Server yang dimaksud di sini bukanlah benda fisik
tetapi sebuah terminologi dimana node yang memberikan layanan dinamakan
server dan node yang mengakses layanan tersebut dinamakan klien. Secara
simultan sebuah node dapat menjalankan layanan server dan klien.
Pada jaringan server-base sebuah server mengatur akses resource
untuk workstation atau client. Server menjalankan Network Operating System
(NOS) untuk menyediakan layanan dan mengautentifikasi workstation dan
klien menjalankan software NOS-client. Server bisa berbentuk dedicated
yang berfungsi hanya sebagai server namun ada juga yang mempunyai dua
fungsi sekaligus sehingga bisa dipakai juga sebagai layaknya sebuah
workstation.
2.5.1 Konsep Dasar TCP/IP
TCP/IP merupakan singkatan dari Transmission Control Protocol
dan Internet Protocol. Menurut Syafrizal (2005 : 96), TCP/IP adalah
sekumpulan protokol yang terdapat di dalam jaringan komputer yang digunakan untuk berkomunikasi atau bertukar data antar komputer. Maka TCP/IP merupakan protokol standar pada jaringan internet yang menghubungkan banyak komputer yang berbeda jenis mesin mupun sistem operasi agar dapat berinteraksi satu sama lain.
TCP terdiri dari beberapa layer atau lapisan yang memiliki fungsi tertentu dalam komunikasi data. Setiap fungsi dari layer selain dapat
(60)
42
bekerjasama dengan layer pada tingkat lebih rendah atau lebih tinggi, juga
bisa berkomunikasi dengan layer sejenis pada remote host (peering).
Gambar 2.6 : OSI Layer Model.
(http://www.mironov.com/articles/osi_layers/)
IP adalah jantung TCP/IP yang memiki peran sebagai pembawa
data yang independen. IP dibagi atas kelas network yaitu A, B, dan C. IP
ditulis dalam bilangan desimal dari 0 sampai 255. Data yang mengalir
antar layer atau antar host dienkapsulasi dan diberi header agar tiap layer
bisa memprosesnya. Sebuah host tidak tahu alamat IP gateway di network
lain, tetapi data mengalir ke host tujuan di network lain melalui gateway
network-nya setelah diberi penentuan routing alamat IP.
Sebagai sebuah protocol, IP dianalogikan sebagai suatu bahasa
(61)
43
lainnya. Jika bahasa yang digunakan ini berbeda, maka komunikasi pun tidak dapat dilakukan. Berawal dari konsep itulah, maka dikenal istilah TCP/IP yang digunakan untuk menyeragamkan semua protokol yang digunakan untuk dapat berkomunikasi dengan seluruh penjuru dunia yang terhubung dengan jaringan.
2.5.2 Wireless LAN (WLAN)
Menurut Wikipedia (http://en.wikipedia.org/wiki/Wireless_LAN),
Wireless local area network (WLAN) adalah sistem komunikasi data yang
fleksibel dan dapat diimplementasikan seperti ekstensi sebagai alternatif
untuk wired LAN. Dengan menggunakan teknologi radio frequency,
wireless LAN mengirim dan menerima data lewat udara, meminimisasi
penggunaan koneksi kabel. Serta, wireless LAN mengkombinasikan
konektivitas data dengan user mobility.
Penggunaan jaringan yang semakin luas di dunia bisnis dan
pertumbuhan penggunaan internet serta online services yang semakin
cepat mendorong memperoleh keuntungan dari shared data dan shared
resources. Dengan wireless LAN, pengguna dapat mengakses shared
informasi tanpa mencari tempat untuk plug in dan Network Manager dapat
men-set up jaringan tanpa meng-install atau menarik kabel.
Wireless LAN mempunyai kelebihan di bidang produktifitas,
kepercayaan dan mengurangi cost dibandingkan wired network. Berikut
beberapa diantaranya.
(62)
1. Mobility.
Dengan sistem wireless LAN, pengguna dapat mengakses
informasi real-time dimanapun. Mobility mendorong produktivitas
dan keuntungan pelayanan dibandingkan wired network.
2. Installation Speed and Simplicity.
Instalasi sistem wireless LAN lebih cepat dan mudah serta
dapat meminimisasi penggunaan kabel. 3. Installation Flexibility.
Teknologi wireless memungkinkan jaringan dipasang
ditempat dimana wired network tidak bisa dipasang.
4. Reduced Cost-of-Ownership.
Untuk investasi awal harga hardware wireless LAN lebih
mahal dibandingkan hardware wired LAN, namun beban
pemeliharaan dan life-cycle lebih rendah. Untuk beban jangka
panjang tergantung pada perubahan dan ekspansi. 5. Scalability.
Sistem wireless LAN dapat dikonfigurasi dalam beberapa
macam topologi tergantung kebutuhan aplikasi dan instalasi.
Konfigurasi dapat dengan mudah diubah dari peer-to-peer network
yang cocok untk jumlah pengguna yang sedikit sampai pada full
(63)
BAB III
METODOLOGI PENELITIAN
3.1 Metode Pengumpulan Data
Dalam penulisan skripsi ini penulis mendapatkan berbagai data yang diinginkan melalui beberapa metode, diantaranya :
3.1.1 Observasi
Observasi atau pengamatan merupakan salah satu teknik pengumpulan fakta/data (fact finding technique) yang cukup efektif. Dalam hal ini penulis melakukan pengamatan terhadap beberapa hal :
1. Proses pembelajaran di Fakultas Sains dan Teknologi UIN Syahid Jakarta (FST UIN)
Penulis mengamati alur dan proses pembelajaran yang berjalan pada FST UIN dengan melakukan pengamatan langsung ke dalam kelas sehingga didapat metode-metode dan perangkat yang digunakan dosen dalam mengajar.
Selain itu juga dilakukan pengamatan tentang fasilitas yang tersedia untuk mendukung proses pembelajaran tersebut, misalnya ruang kelas dan kelengkapan pembelajaran lainnya.
2. Fasilitas dan infrastruktur yang dimiliki oleh FST UIN
Penulis mengamati fasilitas dan infrastruktur apa saja yang dimiliki oleh FST UIN. Mulai dari jumlah dan kelengkapan
(64)
46
ruangan kelas, perangkat komputer dan jaringan komunikasi data hingga perangkat pengajaran yang tersedia.
3. Pengamatan terhadap beberapa aplikasi yang terkait dengan judul penelitian penulis.
Penulis mengamati beberapa web application yang
menggunakan teknologi video sharing dan streaming seperti
Youtube (www.youtube.com), PHPMotion (www.phpmotion.com) , Videoku (www.videoku.tv) dan beberapa aplikasi lainnya.
Dari aplikasi-aplikasi tersebut, penulis mengamati
arsitektur aplikasi, teknologi yang digunakan serta pemanfaatannya dalam masyarakat sebagai studi perbandingan untuk penelitian yang penulis lakukan.
3.1.2 Interview / Wawancara
Wawancara merupakan salah satu teknik pengumpulan data yang diakui penting dan banyak di lakukan dalam pengembangan aplikasi.
Wawancara memungkinkan penulis sebagai pewawancara (interviewer)
untuk mengumpulkan data secara tatap muka langsung dengan orang yang
diwawancarai (interviewee).
Oleh karena itu wawancara perlu dilakukan untuk meneliti lebih dalam akan kemungkinan diterapkannya aplikasi yang penulis rancang. Dalam hal ini penulis melakukan wawancara dengan beberapa pihak yang terlibat dalam proses pembelajaran di FST UIN, diantaranya :
(65)
47
1. Dosen
Penulis mewawancarai dosen dengan tujuan untuk mengumpulkan informasi mengenai beberapa hal, yaitu :
a. Metode pembelajaran yang digunakan dosen. b. Perangkat ajar yang digunakan dosen. 2. Mahasiswa
Penulis mewawancarai mahasiswa dengan tujuan untuk mengumpulkan informasi mengenai beberapa hal, yaitu :
a. Metode pembelajaran yang digunakan dosen.
b. Perangkat ajar yang digunakan dosen dalam perkuliahan. c. Gaya belajar yang disukai oleh mahasiswa.
d. Metode pembelajaran yang diharapkan oleh mahasiswa. 3. Staff Fakultas
Penulis mewawancarai staff fakultas dengan tujuan untuk mengumpulkan informasi mengenai beberapa hal, yaitu :
a. Jaringan komputer yang terdapat pada FST UIN. b. Perangkat komputer yang tersedia.
c. Perangkat ajar yang tersedia.
(66)
48
3.1.3 Studi Pustaka
Untuk menambah referensi akan teori-teori yang diperlukan penulis melakukan studi pustaka dengan membaca dan mempelajari secara mendalam literatur-literatur yang mendukung penelitian ini. Diantaranya buku-buku, diktat, catatan, makalah dan artikel baik cetak maupun elektronik.
Untuk mendukung literatur yang dipelajari, penulis juga berpartisipasi ke dalam beberapa milis dan forum online baik dalam maupun luar negeri guna menambah wawasan serta melakukan diskusi dengan beberapa pihak yang berpengalaman akan sistem ini. Beberapa diantaranya, forum CHIP Online, forum VideoLAN dan forum Videohelp.
3.2 Metode Pengembangan Aplikasi
Dalam pengembangan aplikasi pembelajaran berbasiskan teknologi
video on demand ini penulis memilih untuk menggunakan model Waterfall
(gambar 2.3). Berikut alasannya :
1. Aplikasi yang penulis coba kembangkan ini bukanlah sistem dengan skala teramat besar.
2. Aplikasi ini lebih cocok dikembangkan dengan proses yang terstruktur dan sekuensial.
Berikut proses yang akan penulis lakukan dalam mengembangkan
(67)
49
3.2.1 Analysis (Analisis)
Proses pengembangan diawali dari tahap analisis dimana dalam tahap analisis ini penulis melakukan beberapa aktivitas, yaitu pengumpulan data, identifikasi masalah, analisa kebutuhan aplikasi, hingga definisi proyek. Semua aktivitas pada tahap ini akan dijelaskan dengan deskriptif analitis.
3.2.1.1 Data Gathering (Pengumpulan Data)
Penulis mengumpulkan data dengan mengamati bagaimana motode yang digunakan dosen-dosen di FST dalam mengajar, terutama pada kelas teori. Selain itu penulis juga mengamati fasilitas-fasilitas dan juga infrastruktur yang dimiliki oleh FST untuk mendukung proses pembelajaran tersebut.
Selain melakukan observasi, penulis juga melakukan wawancara kepada mahasiswa dan dosen guna menggali informasi lebih dalam tentang proses pembelajaran yang mereka lakukan, karena mahasiswa dan dosen merupakan aktor utama dalam proses pembelajaran di kampus.
3.2.1.2 Identify (Identifikasi Masalah)
Selanjutnya dilakukan identifikasi permasalahan yang didapat dalam aktivitas pengumpulan data sebelumnya. Proses identifikasi ini difokuskan pada keperluan masing-masing aktor pada aplikasi.
(68)
50
3.2.1.3 Software Requirement (Kebutuhan Aplikasi)
Berdasarkan identifikasi masalah di atas, penulis mulai
menganalisis, menentukan dan menggali lebih dalam kebutuhan- kebutuhan yang diperlukan oleh aplikasi hingga akhirnya didapat solusi konkrit dari aplikasi yang akan dikembangkan.
3.2.1.4 Project Definition (Definisi Proyek)
Project definition sebagai penjelasan akan solusi yang telah
ditentukan sebelumnya dibutuhkan untuk mendefinisikan aplikasi secara rinci, baik itu nama, deskripsi, batasan-batasan serta fitur aplikasi.
3.2.2 Design (Perancangan)
Tahap kedua setelah analisis adalah perancangan, pada tahap ini
penulis mulai melakukan pemodelan berdasarkan hasil analisis.
Perancangan dilakukan mulai dari tingkat global sampai ke tingkat rincian tertentu. Pada tahap ini dilakukan beberapa aktivitas seperti pemodelan proses dengan DFD, pemodelan data dengan ERD dan beberapa diagram pemodelen lainnya secara rinci.
3.2.3 Code (Pengkodean)
Tahap pengkodean ini merupakan sebuah tahap konstruksi aplikasi secara nyata. Pada tahap ini dilakukan dua hal yaitu membuat kode program dan juga merancang antarmuka program sebagai navigasi.
(1)
} if(swf) { this.setAttribute('swf', swf); }
} if(id) { this.setAttribute('id', id); }
if(w) { this.setAttribute('width', w); } //next button
if ($page < $counter - 1) $pagination.= "<a
href=\"$targetpage?page=$next&headline=$headline\">next »</a>"; else
$pagination.= "<span class=\"disabled\">next »</span>";
$pagination.= "</div>\n"; }
?>
SWFOBJECT.JS
/**
* SWFObject v2.0: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
*
* SWFObject is (c) 2006 Geoff Stearns and is released under the MIT License:
* http://www.opensource.org/licenses/mit-license.php *
*/
if(typeof deconcept == "undefined") var deconcept = new Object();
if(typeof deconcept.util == "undefined") deconcept.util = new Object();
if(typeof deconcept.SWFObjectUtil == "undefined") deconcept.SWFObjectUtil = new Object();
deconcept.SWFObject = function(swf, id, w, h, ver, c, quality, xiRedirectUrl, redirectUrl, detectKey) {
if (!document.getElementById) { return; } this.DETECT_KEY = detectKey ? detectKey : 'detectflash';
this.skipDetect =
deconcept.util.getRequestParameter(this.DETECT_KEY); this.params = new Object();
this.variables = new Object(); this.attributes = new Array();
if(h) { this.setAttribute('height', h); } if(ver) { this.setAttribute('version', new deconcept.PlayerVersion(ver.toString().split("."))); }
this.installedVer =
deconcept.SWFObjectUtil.getPlayerVersion(); if (!window.opera && document.all && this.installedVer.major > 7) {
// only add the onunload cleanup if the Flash Player version supports External Interface and we are in IE
deconcept.SWFObject.doPrepUnload = true; }
if(c) { this.addParam('bgcolor', c); } var q = quality ? quality : 'high'; this.addParam('quality', q);
this.setAttribute('useExpressInstall', false); this.setAttribute('doExpressInstall', false); var xir = (xiRedirectUrl) ? xiRedirectUrl : window.location;
this.setAttribute('xiRedirectUrl', xir); this.setAttribute('redirectUrl', '');
if(redirectUrl) { this.setAttribute('redirectUrl', redirectUrl); }
}
deconcept.SWFObject.prototype = {
useExpressInstall: function(path) {
this.xiSWFPath = !path ? "expressinstall.swf" : path;
this.setAttribute('useExpressInstall', true); },
setAttribute: function(name, value){ this.attributes[name] = value; },
getAttribute: function(name){
return this.attributes[name]; },
addParam: function(name, value){ this.params[name] = value; },
getParams: function(){ return this.params;
(2)
},
addVariable: function(name, value){ this.variables[name] = value; },
getVariable: function(name){ return this.variables[name]; },
getVariables: function(){ return this.variables; },
getVariablePairs: function(){
var variablePairs = new Array(); var key;
var variables = this.getVariables(); for(key in variables){
variablePairs.push(key +"="+ variables[key]);
}
return variablePairs; },
getSWFHTML: function() { var swfNode = "";
if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) { // netscape plugin architecture
if
(this.getAttribute("doExpressInstall")) {
this.addVariable("MMplayerType", "PlugIn");
this.setAttribute('swf', this.xiSWFPath);
}
swfNode = '<embed type="application/x- shockwave-flash" src="'+ this.getAttribute('swf') +'" width="'+ this.getAttribute('width') +'" height="'+
this.getAttribute('height') +'"';
swfNode += ' id="'+
this.getAttribute('id') +'" name="'+ this.getAttribute('id') +'" ';
var params = this.getParams(); for(var key in params){ swfNode += [key] +'="'+ params[key] +'" '; }
var pairs = this.getVariablePairs().join("&");
if (pairs.length > 0){ swfNode += 'flashvars="'+ pairs +'"'; }
swfNode += '/>'; } else { // PC IE
if
(this.getAttribute("doExpressInstall")) {
this.addVariable("MMplayerType", "ActiveX");
this.setAttribute('swf', this.xiSWFPath);
}
swfNode = '<object id="'+
this.getAttribute('id') +'" classid="clsid:D27CDB6E-AE6D-11cf- 96B8-444553540000" width="'+ this.getAttribute('width') +'" height="'+ this.getAttribute('height') +'">';
swfNode += '<param name="movie" value="'+ this.getAttribute('swf') +'" />';
var params = this.getParams(); for(var key in params) {
swfNode += '<param name="'+ key +'" value="'+ params[key] +'" />';
}
var pairs = this.getVariablePairs().join("&");
if(pairs.length > 0) {swfNode += '<param name="flashvars" value="'+ pairs +'" />';}
swfNode += "</object>"; }
return swfNode; },
write: function(elementId){
if(this.getAttribute('useExpressInstall')) { // check to see if we need to do an express install
var expressInstallReqVer = new deconcept.PlayerVersion([6,0,65]);
if
(this.installedVer.versionIsValid(expressInstallReqVer) && !this.installedVer.versionIsValid(this.getAttribute('version')) ) {
(3)
this.addVariable("MMredirectURL", escape(this.getAttribute('xiRedirectUrl')));
document.title =
document.title.slice(0, 47) + " - Flash Player Installation"; this.addVariable("MMdoctitle", document.title);
} }
if(this.skipDetect || this.getAttribute('doExpressInstall') ||
this.installedVer.versionIsValid(this.getAttribute('version'))) {
var n = (typeof elementId == 'string') ? document.getElementById(elementId) : elementId;
n.innerHTML = this.getSWFHTML(); return true;
}else{
if(this.getAttribute('redirectUrl') != "") {
// see http://blog.deconcept.com/2006/01/11/getvariable- setvariable-crash-internet-explorer-flash-6/
try{
var axo = new
ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); }catch(e){
try {
var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
PlayerVersion = new deconcept.PlayerVersion([6,0,21]);
axo.AllowScriptAccess = "always"; // throws if player version < 6.0.47 (thanks to Michael
Williams @ Adobe for this code) } catch(e) {
if (PlayerVersion.major == 6) { return PlayerVersion;
} }
try {
l'));
}
document.location.replace(this.getAttribute('redirectUr
} }
return false; }
axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
} catch(e) {} }
if (axo != null) {
PlayerVersion = new
deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));
} /* ---- detection functions ---- */
deconcept.SWFObjectUtil.getPlayerVersion = function(){ var PlayerVersion = new
deconcept.PlayerVersion([0,0,0]);
if(navigator.plugins && navigator.mimeTypes.length){ var x = navigator.plugins["Shockwave Flash"]; if(x && x.description) {
PlayerVersion = new
deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split("."));
} }else{
// do minor version lookup in IE, but avoid fp6 crashing issues
}
return PlayerVersion; }
deconcept.PlayerVersion = function(arrVersion){ this.major = arrVersion[0] != null ? parseInt(arrVersion[0]) : 0;
this.minor = arrVersion[1] != null ? parseInt(arrVersion[1]) : 0;
this.rev = arrVersion[2] != null ? parseInt(arrVersion[2]) : 0;
}
deconcept.PlayerVersion.prototype.versionIsValid = function(fv){
if(this.major < fv.major) return false; if(this.major > fv.major) return true;
(4)
if(this.minor < fv.minor) return false; if(this.minor > fv.minor) return true; if(this.rev < fv.rev) return false; return true;
}
if (typeof objects[i][x] == 'function') {
objects[i][x] = function(){}; }
} /* ---- get value of query string param ---- */ }
deconcept.util = { }
getRequestParameter: function(param) { var q = document.location.search ||
// fixes bug in fp9 see
http://blog.deconcept.com/2006/07/28/swfobject-143-released/ document.location.hash; if (deconcept.SWFObject.doPrepUnload) {
if(q) {
var pairs = q.substring(1).split("&"); for (var i=0; i < pairs.length; i++) {
if (pairs[i].substring(0,
deconcept.SWFObjectUtil.prepUnload = function() { __flash_unloadHandler = function(){}; __flash_savedUnloadHandler = function(){}; window.attachEvent("onunload",
pairs[i].indexOf("=")) == param) {
return
deconcept.SWFObjectUtil.cleanupSWFs); }
(5)
/* fix for video streaming bug */
deconcept.SWFObjectUtil.cleanupSWFs = function() {
var objects = document.getElementsByTagName("OBJECT"); for (var i=0; i < objects.length; i++) {
objects[i].style.display = 'none'; for (var x in objects[i]) {
load); } /* add Array. push if needed (ie5) */ if (Array .proto type.p ush == null) { Array. protot ype.pu sh = functi on(ite m) { this[t his.le ngth] = item; return this.l ength; }}
/* add some aliase s for ease of use/ba ckward s compat ibilit y */ var getQue ryPara mValue = deconc ept.ut il.get Reques tParam eter; var FlashO bject = deconc ept.SW FObjec t; // for legacy suppor t var SWFObj ect = deconc ept.SW FObjec t;
(6)