Pengembangan aplikasi pembelajaran berbasiskan Teknologi Vidio on Demand pada Fakultas Sains dan Teknologi UIN Syahid Jakarta

(1)

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)