8 BAB II LANDASAN TEORI
2.1. Teori- Teori Umum 2.1.1. Pengertian Software Engineering Menurut Pressman (2010,p13) software engineering adalah teknologi yang berlapis. Setiap pendekatan rekayasa perangkat lunak harus berakhir pada komitmen organisasi ke kualitas. Manajemen mutu total, six sigma, dan filosofi
yang
sama
mengembangkan
budaya
proses
perbaikan
berkesinambungan, dan budaya ini akhirnya mengarah pada pengembangan pendekatan yang semakin efektif untuk rekayasa perangkat lunak. Landasan yang mendukung software engineering adalah kualitas. Menurut
Pressman
(2010,p13-14)
komponen
metodologi
pengembangan perangkat lunak dapat dibagi dalam tiga unit, yaitu : 1.
Proses Proses rekayasa perangkat lunak adalah lem yang memegang lapisan
teknologi bersama dan memungkinkan pengembangan rasional dan tepat waktu dari perangkat lunak computer. Proses mendefinisikan kerangka kerja untuk satu set area proses kunci yang harus dibentuk untuk pengiriman yang efektif dari teknologi rekayasa perangkat lunak. Bidang utama membentuk dasar bagi control manajemen proyek perangkat lunak dan menetapkan konteks dimana metode teknis telah diterapkan, produk
9 kerja telah dihasilkan, milestone telah dibangun, kualitas dijamin, dan perubahan dikelola dengan baik. 2. Metode Metode rekayasa perangkat lunak memberikan teknik bagaimana membangun perangkat lunak. Metode mencakup array yang luas dari tugas-tugas yang mencakup analisis kebutuhan, desain, konstruksi program, pengujian dan dukungan, rekayasa perangkat lunak relay metode pada serangkaian prinsip dasar yang mengatur setiap area teknologi dan termasuk aktivitas permodelan dan teknik lain. 3. Peralatan Alat rekayasa perangkat lunak memberikan dukungan otomatis atau semi-otomatis untuk proses atau metode. Ketika alat terintegrasi sehingga informasi yang dibuat oleh satu alat yang dapat digunakan oleh yang lain, sebuah sistem untuk mendukung pengembangan perangkat lunak, yang disebut
Compute-Aided
Software
Engineering
didirikan.
CASE
menggabungkan software, hardware, dan database software engineering untuk membuat lingkungan rekayasa perangkat lunak untuk analog CAD / CAE (Computer-Aided Design / Engineering) untuk hardware.
Gamb ar 2.1 Software Engineering Layers (Pressman, 2010, p14)
10
2.1.1.1. Waterfall Model Menurut
Pressman
(2010,p39)
salah
satu
model
pengembangan sistem adalah dengan model waterfall. Waterfall model adalah model yang paling popular dan sering dianggap sebagai pendekatan klasik dalam daur hidup pengembangan sistem. Adapun tahapannya sebagai berikut : 1. Communication Pada tahap ini akan dilakukan inisiasi proyek, seperti menganalisis masalah yang ada dan tujuan yang akan dicapai. Selain itu dilakukan juga requirement gathering, dimana akan dikumpulkan requirement dari user melalui analisis kuisioner. 2. Planning Pada tahap ini merupakan tahap dimana akan dilakukan estimasi mengenai kebutuhan-kebutuhan yang diperlukan untuk membuat sebuah sistem. Selain itu, penjadwalan dalam proses pengerjaan juga ditentukan pada tahap ini. 3. Modeling Kemudian mulai masuk pada tahap perancangan dimana perancang menerjemahkan kebutuhan sistem kedalam representasi untuk menilai kualitas sebelum tahap selanjutnya dikerjakan. Tahap ini lebih difokuskan pada atribut program, seperti struktur data, arsitektur perangkat lunak, dan detail prosedur.
11 4. Construction Tahap ini merupakan tahap dimana perancangan diterjemahkan ke dalam bahasa yang dimengerti oleh mesin. Selain itu dilakukan pengetesan / pengujian terhadap sistem yang telah dibuat. 5. Deployment Setelah proses pengkodean dan pengujian selesai, dilakukan pengiriman yang artinya implementasi kepada masyarakat luas. Pada tahap ini juga dilakukan pemeliharaan, perbaikan, dan pengembangan agar sistem tersebut tetap dapat berjalan sesuai sebagaimana mestinya.
Gambar 2.2 Waterfall Model
2.1.2. Pengertian Analisis Sistem Menurut Laudon dan Laudon (2004,p389-390), analisis sistem adalah suatu proses identifikasi terhadap masalah yang akan diseslesaikan oleh sebuah organisasi dengan menggunakan sistem informasi, yang terdiri dari
12 pendefinisian masalah dan identifikasi spesifikasi kebutuhan yang harus dipenuhi oleh solusi dari sistem.
2.1.3. Database 2.1.3.1. Pengertian Database Menurut Turban et.al (2005, p444), database adalah kumpulan logis dari sejumlah file yang saling berhubungan. File adalah kumpulan logis dari sejumlah record yang saling berhubungan. Record adalah kumpulan logis dari sejumlah field yang saling berhubungan. Field adalah kumpulan logis dari sejumlah karakter yang membentuk kata atau angka. Sehingga kumpulan field tergabung menjadi record. Record record tersebut membentuk file, lalu file-file tersebut bergabung membentuk kesatuan menjadi database.
Kegunaan dari database adalah : 1. Menghilangkan redundency data. 2. Keterbatasan akses data. 3. Meningkatkan keamanan. 4. Multiple User. 5. Independensi data (kebebasan data).
13 2.1.3.2. Jenis Database Beberapa database yang sering digunakan oleh programmer. Seperti MySQL, Oracle, dan Microsoft Access. Masing-masing database memiliki kekurangan sendiri-sendiri. Untuk database yang akan kami gunakan adalah MySQL, sebab sifatnya yang open source membantu kami dalam penyusunan skripsi ini. 2.1.4. Internet Dalam penerapan e-learning internet memiliki banyak peranan penting. Dengan adanya akses internet memungkinkan akses terhadap elearning dapat berbagi tanpa ada batasan jarak dan waktu. 2.1.4.1. Pengertian Internet Menurut Turban et.al (2006, p478), internet adalah jaringan besar yang menghubungkan jaringan komputer dari bisnis, organisasi, lembaga pemerintah, dan sekolah diseluruh dunia, dengan cepat, langsung, dan hemat. Setiap komputer di internet memiliki alamat yang sudah ditetapkan, alamat ini adalah alamat IP (internet protocol address), yang secara khusus mengidentrifikasinya dari komputer lainnya. Alamat IP terdiri dari angkaangka, dalam 4 bagian dan dipisahkan atas titik. Misalnya, alamat IP untuk suatu komputer adalah 168.172.64.10. Domain name sistem (DNS) adalah sistem yang diatur oleh Internet Coorporation For Assigmend Name (CANN) dan yang menetapkan nama untuk setiap situs di internet.
14 2.1.4.2. Word Wide Web (WWW) Menurut Turban et.al (2006, p482), World Wide Web adalah sistem standar yang digunakan oleh internet secara universal, berfungsi untuk menyimpan, menelusuri, memformat, dan menampilakan informasi melalui arsitektur client/server. Sebuah web dibangun oleh hypertext standar yang disebut HyperText Markup Languange (HTML), yang memformat dokumen dan memadukan link hypertext dinamis ke dokumen-dokumen lain yang disimpan didalam computer. Istilah-istilah dalam World Wide Web : 1. Website : sebuah komputer yang dikaitkan ke internet yang berisi hypermedia yang dapat diakses dari komputer lain melalui suatu hyperlink. 2. Web page : suatu file hypermedia yang disimpan disuatu website yang diidentifikasi oleh suatu alamat yang unik. 3. Hypertext Link : suatu penunjuk yang terdiri dari teks atau grafik yang digunakan untuk mengakses hypertext yang disimpan didalam website. 4. Universal Resource Locator (URL) : alamat dari suatu web page. 5. Browser : Suatu sistem perangkat lunak yang memungkinkan kita mengambil hypermedia dengan mengetikkan parameter pencarian atau mengklik suatu grafik. 6. File Transfer Protocol (FTP) : suatu perangkat lunak yang memungkinkan kita menyalin file ke komputer kita dari website mana saja.
15 7. Transfer Control Protocol/ Internet Protocol (TCP/IP) : standar komunikasi data yang digunakan untuk berkomunikasi diinternet dalam tukar menukar data dari suatu komputer ke komputer lain. 8. Web Server : suatu aplikasi pada suatu situs web yang bertanggung jawab merespon file dari web browser. 9. Web Browser : program aplikassi yang digunakan untuk menjelajahi informasi yang ada dihalaman web dan untuk mendapatkan dokumen dari web tersebut. 10. Hypertext Transfer Protocol (HTTP) : suatu protokol yang digunakan agar client dapat tetap berhubungan dengan web server atau sebaliknya. 11. Hypertext Markup Languange (HTML) : suatu format data standar yang digunakan untuk membuat dokumen hypertext agar dapat dibaca dari suatu platform satu ke platform lainnya, tanpa melakukan perubahan. 2.1.4.3. Browser Menurut Turban et.al (2006, p483), browser adalah aplikasi piranti lunak yang digunakan oleh pengguna untuk mengakses suatu website. Browser digunakan sebagai alat akses universal karena memberikan tampilan yang sama, namun sistem operasinya berbeda. Dua browser yang saat ini sangat populer digunakan adalah Microsoft Internet Explorer dan Mozilla Firefox.
2.1.5. Unified Modelling Languange (UML)
16 Menurut Fowler (2005, P1) Unified Modelling Languange (UML) adalah keluarga notasi grafis yang di dukung oleh meta- model tungal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek (OO). Beberapa jenis diagram UML menurut Whitten (2007, p381) antara lain sebagai berikut : 1. Class Diagram Diagram ini digunakan untuk menggambarkan struktur objek-objek yang membentuk sistem dan hubungan antar objek tersebut. Primary key dan foreign key tidak harus disebutkan dalam class diagram.
17 Gambar 2.3 Contoh Class Diagram(Whitten, 2007, p406)
Tabel 2.1 Multiplicity untuk Class Diagram (Whitten, 2007, p377)
2. Usecase Diagram Diagram usecase secara grafis menggambarkan interaksi antara sistem, sistem eksternal dan pengguna. Mendeskripsikan siapa yang akan menggunakan sistem dan dalam cara apa pengguna mengharapkan interaksi dengan sistem tersebut.
18
Gambar 2.4 Contoh Use Case Diagram(Whitten, 2007, p246)
Tabel 2.2 Penjelasan Diagram Use Case (Whitten, 2007, p 246- 247) 3. Sequence Diagram Diagram ini digunakan untuk menggambarkan bagaimana objek saling berinteraksi selama eksekusi suatu operasi. Sebuah sequence diagram hanya pada salah satu jalur pada usecase sehingga mungkin saja terdapat beberapa diagram untuk sebuah usecase.
Notasi yang digunakan dalam sequence diagram :
19 1. Actor berupa aktor yang memulai pada usecase dengan symbol yang sama 2. System berupa kotak yang menunjukan sistem yang sedang berjalan, ditandai dengan notasi titik dua (:) pada awal nama sistem. 3. Lifelines berupa garis putus-putus menurun dari symbol aktor dan sistem. 4. Activation bars berupa balok yang terletak diatas lifeline, menunjukan periode wakti ketika terdapat interkasi secara aktif. 5. Input message berupa anak panah mendatar dari aktor ke sistem yang menunjukan pesan masuk, dimana kata pertama diawali dengan huruf kecil sedangkan kata berikutnya diawali dengan huruf besa dan tidak ada spasi, diikuti dengan tanda kurung yang berisi parameter yang dibutuhkan. 6. Output message berupa anak panah mendatar dengan garis putusputus dari sistem ke aktor yang menunjukan pesan keluar. 7. Receive Actor berupa aktor lain yang menerima pesan dari sistem. 8. Frame berupa kotak yang menambahkan pesan terpisah untuk menunjukan perulangan, alternatif atau pilihan
4. Activity Diagram Diagram ini digunakan untuk menggambarkan langkah-langkah aktivasi pada suatu sistem dan mampu menjelaskan aksi terjadi ketika suatu operasi dieksekusi serta menunjukkan hasilnya karena urutan proses ditunjukan lengkap dengan mekanisme.
20 Notasi yang digunakan dalam activity diagram : 1. Initial node berupa lingkaran yang menunjukan awal proses. 2. Action berupa bujur sangkar dengan sudut membulat yang menunjukan langkah-langkah aktivitas sistem. 3. Flow berupa anak panah yang menunjukan kemajuan aksi dan dilengkapi dengan kata-kata jika berasal dari decision. 4. Decision berupa wajik yang memiliki sebuah flow masuk dan dua atau lebih flow keluar, dimana flow keluar menadakan kondisi yang ada. 5. Merge berupa wajik yang memilik dua atau lebih flow masuk dan sebuah flow keluar, menyatukan flow sebelumnya terpisah pada decision. 6. Fork berupa balik hitam yang memiliki sebuah flow masuk dan dua atau lebih flow keluar, dimana aksi yang terjadi berikut dapat terjadi dalam urutan apapun atau dapat juga terjadi secara bersamaan. 7. Join berupa balik hitam yang memiliki dua atau lebih flow masuk dan sebuah flow keluar, dimana seluruh aksi sebelumnya telah diselesaikan. 8. Activity final berupa lingkaran ganda yang menunjukan akhir proses. 9. Subactivity indicator berupa fork yang terdapat dalam suatu aksi, menunjukan bahwa aksi tersebut terpecah pada activity diagram terpisah.
21 10. Connector berupa lingkaran dengan huruf didalamnya untuk melompat ke bagian lain dengan huruf yang sama sesuai dengan arah flow.
Gambar 2.5 Contoh Activity Diagram (Whitten, 2007, p392)
2.1.6. Interaksi Manusia dan Komputer Interaksi manusia dan komputer atau Human Computer Interaction(HCI) adalah ilmu yang mempelajari bagaimana berinteraksi anatara manusia dengan
22 seperangkat komputer dan pengaruh komputer dalam pengembangannya untuk berinteraksi dengan manusia (Shneiderman, 2010, p88). Interaksi manusia dengan komputer melibatkan perancangan antar muka pemakai yang memiliki 8 faktor yang harus di perhatikan, atau yang sering diketahui yaitu 8 aturan emas diantaranya : 1. Berusaha kosisten Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah yang dilakukan pada prompt, menu, atau layar bantuan 2. Menyediakan kebutuhan universal Penyesuaian perbedaan kebutuhan dari berbagai user ( tingkatan kemahiran,kelompok umur, pengetahuan) seperti dengan menambahkan penjelasan bagi pemula dan shorcut bagi user yang sudah lebih ahli (expert). 3. Memberikan umpan balik infomatif Untuk setiap tindakan user, sebaikanya disertakan suatu sistem umpan balik. Untuk tindakan umpan balik yang sederhana. Tetapi untuk tindakan penting, maka umpan balik sebaiknya lebih substansial. Misal muncul suatu pesan ketika salah menekan tombol pada waktu input data atau muncul pesan kesalahannya. 4. Merancang dialog yang memberikan punutupan (Keadaan akhir)
23 Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dari bagian awal, tengah, sampai akhir. Pada bagian akhir tindakan, sebaiknya diberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan berikutnya. 5.Memberikan
pencegahan
dan
penanganan
kesalahan
yang
sederhana. Sedapat mungkin sistem yang dirancang agar pengguna tidak melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi
kesalahan
dengan
cepat
dan
memberikan
mekanisme yang sederhana dan mudah dipahami untuk penanganan kesalahan.
6. Mudah untuk kembali ke tindakan sebelumnya. Hal ini dapat mengurangi kekhawatiran pengguna karena mengetahui kesalahan yang dilakukan dapat dibatalkan, sehingga pengguna tidak takut untuk mengekplorasi pilihanpilihan lain yang belum biasa digunakan. 7.Mendukung pusat kendali internal (internal focus of control) User adalah pengontrol sistem dan sistem akan merespon tindakan
yang
dilakukan.
Sebaiknya
sistem
dirancang
sedemikian rupa sehingga pengguna menjadi inisiator dari pada responden.
24 8. Mengurangi beban ingatan jangka pendek. Karena keterbatasan ingatan manusia maka interface sebaiknya dibuat dengan tampilan yang sederhana, serta tidak memakan waktu untuk melatih. dan mengetahui urutan-urutan tindakan.
2.2. Teori Khusus 2.2.1. E-learning 2.2.1.1. Pengertian e-learning Menurut Effendi dan Zhuang (2005, p6) dalam bukunya menulis bahwa terminologi e-learning sendiri mengacu pada semua kegiatan pelatihan yang menggunakan media elektronik atau teknologi informasi.
2.2.1.2. Jenis e-learning Berdasarkan waktunya, e-learning dibedakan menjadi dua jenis, yaitu Synchronous dan Asynchronous, Effendy dan Zhuang (2005,p7). 1.
Synchronous Training Synchronous Training adalah tipe pelatihan dimana guru dan murid berada pada waktu yang sama dalam suatu proses pembelajaran, sehingga interaksi langsung antara guru dengan
25 murid sangat dimungkinkan. Intinya, e-learning jenis ini mirip dengan pembelajaran di kelas- kelas seperti biasa, hanya saja kelasnya bersifat maya.Salah satu contoh: Synchronous Training adalah penggunaan web conference dalam proses pembelajaran. 2. Asynchronous Training Asynchronous Training adalah tipe pelatihan dimana guru dan murid berada pada waktu yang berbeda dalam suatu proses pembelajaran, sehingga siswa dapat mengakses materi dan melakukan kegiatan pembelajaran setiap saat. E-learning jenis ini memang tidak memungkinkan interaksi langsung antara siswa dengan pengajar seperti halnya Synchronous Training, namun interaksi tersebut masih dapat dimungkinkan dengan cara tidak langsung seperti misalnya dengan e- mail ataupun bulletin board/forum .
2.2.1.3. Materi atau Content Materi adalah pelajaran e-learning yang akan diikuti oleh anggota organisasi/pelajar, Effendy dan Zhuang (2005, p92). Desain materi untuk elearning tentu berbeda dengan desain untuk pelajaran di kelas. Desain materi untuk e-learning menghasilkan produk akhir berupa naskah atau story board yang berisi tampilan layer dan materi yang menawarkan beberapa fungsi
26 berbeda dibanding pelatihan di kelas. Hal-hal yang harus diperhatikan dalam desain materi pelajaran e- learning adalah sebagai berikut: 1. Tampilan Latar belakang tampilan hendaknya menarik secara visual namun tidak mengganggu konsentrasi belajar. Misalnya, pemilihan gambar yang halus dan warna yang tidak terlalu kuat agar tidak mengganggu tulisan pada materi pelajaran. 1) Grafik 2D maupun 3D dengan warna yang menarik. 2) Penyertaan foto sebagai contoh aplikasi materi pada dunia nyata 3) Animasi secukupnya agar pelajar tetap konsentrasi pada pelajaran.
2. Interaksi Interaksi antara pelajar dengan e-learning sangat diperlukan agar pelajar dapat memahami materi dengan lebih baik. Interaksi oleh siswa dapat dilakukan terhadap tampilan, dimana siswa harus memberikan response atau inisiatif dalam pelajaran. Misalnya: 1) Roll-over:
suatu
keterangan
akan
muncul
ketika
pelajar
menunjukkan suatu objek dengan mouse. 2) Hot text: dengan meng-klik suatu objek, suatu keterangan akan muncul. 3) Drag and drop: Pelajar dapat mengklik dan memindahkan suatu objek ke bagian lain dari layer. 3. Kontrol Pelajar dapat mengontrol kecepatan belajarnya melalui
27 mekanisme berikut: 1. Menu Pelajar dapat melihat daftar bab dalam suatu mata pelajaran, sehingga ia dapat memilih bab mana yang akan ia pelajari. 2. Panel Panel yang dimaksud dapat disebut juga user interface. Dengan panel ini, siswa dapat berpindah halaman, berhenti belajar sementara, dan sebagainya. 3. Help Help
merupakan
bantuan
bagi
siswa
dalam
belajar
menggunakan e-learning. Misalnya, tombol apa yang harus ditekan, apa yang harus dilakukan, dan sebagainya. Kondisi tampilan dalam pelajaran e-learning haruslah jelas dan mudah dimengerti. Tampilan harus disertai pesan error atau peringatan yang berisi informasi yang berhubungan dengan masalah yang muncul atau proses yang sedang dilakukan. Misalnya ketika konfigurasi tidak sesuai, siswa menyalahi prosedur, koneksi dengan server terputus, dan sebagainya. 4. Bentuk Materi pelajaran e-learning dapat dikemas dalam bentuk: 1)
Text-based Materi dikemas dalam bentuk tulisan dan disertai dengan
sedikit gambar, persis seperti pada buku.
28 2)
Text with graphic and animation Pengemasan materi dengan bentuk ini sama seperti pada
text based, hanya saja lebih banyak penyisipan gambar dan animasi. Bentuk ini jika didesain dengan baik dapat membuat elearning menjadi lebih efektif. Bentuk ini sering digunakan untuk paket pelajaran bersifat teknis seperti pelajaran cara penggunaan software tertentu.
3)
Blended learning Bentuk ini sangat populer di dunia pelatihan. Bentuk ini
merupakan penggabungan materi e-learning dengan pelatihan di kelas. Materi e-learning sebagai materi pembuka diberikan sebelum kelas dimulai, sedangkan di kelas berfungsi sebagai praktik latihan, diskusi, dan sebagainya. 4)
Virtual classroom Virtual Classroom termasuk synchronous learning, dimana
pelajar dan pengajar berinteraksi langsung secara online. Jadi, Bentuk ini sama seperti Blended learning, hanya saja pada bentuk ini, pertemuan di kelas pada blended learning diganti menjadi pertemuan di kelas virtual. 5.
Susunan Penyusunan materi e-learning sebaiknya menggunakan
cara learner-centric atau berdasarkan alur pikir pelajar sendiri. Pada learner-centric, materi disusun sedemikian rupa agar dapat
29 memancing keingintahuan pelajar agar mau belajar lebih jauh. Urutan topik pelajaran atau konsep dasar pelajaran itu sendiri tidak perlu terlalu diperhatikan. Materi yang pertama kali diberikan adalah materi yang paling menarik minat pelajar, misalnya materi yang paling rumit namun sering dijumpai sehari-hari. Bentuk simulasi di dalam permainan merupakan salah satu bentuk materi yang dapat menarik minat pelajar untuk belajar.
2.2.1.4. Keuntungan dan kerugian e-learning E-learning tentunya memiliki kelebihan dan keterbatasan. 2.2.1.4.1. Keuntungan e-learning Menurut Effendi dan Zhuang (2005, p9-14), elearning memiliki keuntungan sebagai berikut: 1) E-learning mampu mengurangi biaya pelatihan. E-learning memungkinkan perusahaan / sekolah mengurangi biaya untuk berbagai kebutuhan sewa pelatih, transport pelatih, perawatan kelas (kebersihan kelas, penggantian meja/bangku yang rusak), operasional kelas (spidol, ac/kipas), makan siang pelatih, dan biaya lainnya. 2) Fleksibilitas Waktu Seringkali pelajar (dalam hal ini pelajar yang
30 merangkap karyawan pada suatu perusahaan) kesulitan menghadiri
kegiatan
pembelajaran
karena
terlalu
disibukkan oleh pekerjaan kantornya. Dalam hal ini, elearning memungkinkan pelajar untuk menyesuaikan waktu belajarnya. Pelajar dapat mengakses e-learning secara langsung kapanpun ia ingin mengaksesnya. Jadi jika ada waktu luang, pelajar dapat mengisinya dengan belajar. 3) Fleksibilitas Tempat Proses
pembelajaran
dengan
e-learning
tidak
memerlukan kelas dan segala perlengkapannya. Pelajar maupun pengajarpun tidak perlu bersusah payah menempuh perjalanan jauh dan melelahkan hanya untuk hadir di kelas. Dengan menggunakan internet, pelajar maupun pengajar dapat mengakses e-learning untuk melangsungkan kegiatan belajar mengajar dimanapun mereka berada. 4) Fleksibilitas Kecepatan Pembelajaran Pada dasarnya, siswa memiliki gaya belajar yang berbeda. Dengan demikian, kemampuan tiap siswa untuk memahami suatu materi pelajaran pun berbeda. Ada siswa yang dapat memahami suatu materi hanya dalam 1-2 kali membaca, namun ada juga yang baru bisa memahami materi setelah 3-5 kali membaca, dan seterusnya. Terlebih lagi, di kelas seringkali guru, dengan waktu belajar yang terbatas, hanya sempat menjawab beberapa pertanyaan saja.
31 E-learning memungkinkan penyesuaian belajar bagi para pelajar. Pelajar yang daya belajarnya tinggi, dapat melanjutkan ke materi yang selanjutnya dan berarti dapat menguasai banyak materi. Sedangkan pelajar yang daya belajarnya rendah, dapat memilih materi yang dianggapnya sesuai dengannya dan mempelajarinya dengan perlahan. Selain itu, pengajar pun memiliki waktu lebih banyak untuk menjawab pertanyaan-pertanyaan yang muncul dari para pelajar. 5) Standarisasi Pengajaran Setiap guru memiliki kemampuan mengajar dan metode pengajaran yang berbeda, sehingga dikenal guru favorit, yaitu guru yang kemampuan belajar atau metode pengajarannya disukai oleh pelajar. Dengan e-learning, semua pelajar memiliki kemampuan mengajar dan metode pembelajaran yang sama, sehingga kualitas pelajaran yang disampaikan kepada setiap pelajar akan relatif sama. 6) Efektivitas Pengajaran E-learning sebagai teknologi baru, dapat memikat perhatian
para
pembelajaran
pelajar
akan
sehingga
meningkat.
jumlah
Penyampaian
peserta materi
pelajaran pun diiringi simulasi dan kasus dalam bentuk permainan dengan menerapkan teknologi animasi yang canggih. Dengan demikian, diharapkan pelajar dapat lebih mudah memahami suatu materi.
32
7) Kecepatan Distribusi E-learning dapat diakses dari berbagai lokasi yang berada di luar wilayah pusat. Perusahaan/sekolah hanya perlu menyiapkan bahan pembelajaran di pusat, lalu pelajar maupun pengajar yang ada di daerah dapat langsung mengaksesnya. Jika suatu saat materi perlu diubah, maka Perusahaan/sekolah hanya perlu mengubah materi yang ada di pusat saja. Secara otomatis, ketika pelajar maupun pengajar di daerah mengakes e-learning, materi yang tampil pun akan berubah sesuai revisi yang dilakukan di pusat. 8) Ketersediaan On-Demand E-learning, karena mudah diakses, dapat dianggap sebagai “buku saku” yang dapat membantu pekerjaan setiap saat. Misalnya pelajar mengalami suatu kesulitan dalam penggunaan
suatu
aplikasi.
Pelajar
tersebut
dapat
mengkases e- learning lalu membaca materi yang berhubungan dengan kesulitannya. Dalam beberapa menit saja, ia dapat mempraktekan materi pelajarannya dan sekaligus menyelesaikan pekerjaannya .
2.2.1.4.2. Keterbatasan e-learning Keterbatasan e-learning adalah sebagai berikut, Effendy
33 dan Zhuang, (2005, p15): 1. Budaya Beberapa orang merasa tidak nyaman mengikuti kegiatan
pembelajaran
dengan
komputer.
E-learning
menuntut budaya self-learning, sedangkan siswa di Indonesia pada umumnya masih bergantung pada guru. Pada pembelajaran di kelas, 60% energi dari pengajar dan 40% energi dari siswa. Sedangkan pada e-learning, 100% energi dari siswa. Pelajar maupun pengajar pun apabila tidak terbiasa dengan komputer, akan mengalami kesulitan dalam memanfaatkan e-learning. 2. Investasi Investasi awal untuk membangun e-learning cukup mahal. Investasi tersebut dapat berupa biaya desain dan pembuatan program learning management sistem, paket pembelajaran, dan biaya lain-lain seperti promosi dan change management sistem serta infrastruktur seperti komputer, server, jaringan, dan sebagainya
2.2.2. PHP Menurut Nurah Ratu Anugrah (2010), PHP merupakan singkatan rekursif (akronim berulang) dari PHP Hypertext Preprocessor. PHP adalah bahasa pemrograman script yang paling banyak dipakai saat ini atau dalam kata lain bias
34 diartikan sebuah bahasa pemrograman web yang bekerja di sisi server(server side scripting) yang dapat melakukan konektifitas pada database yang mana hal itu tidak dapat di lakukan hanya menggunakan sintaks-sintaks HTML biasa. PHP banyak dipakai untuk memrogram situs web dinamis, walaupun tidak tertutup kemungkinan digunakan untuk pemakaian lain. Keunggulan dari PHP antara lain a) Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunanya b) Web server yang mendukung PHP dapat di temukan di mana-mana dari mulai apache, IIS, nginx hingga Xitami dengan konfigurasi yang relative mudah c) Dalam sisi pengembangan lebih mudah, Karen abanyaknya milis-milis dan developer yang siap membantu dalam pengembangan. d) Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak e) PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah sistem 2.2.2.1. CodeIgniter
Menurut Supono (2010), CodeIgniter adalah aplikasi open source yang berupa framework dengan model MVC (Model, View, Controller) untuk membangun website dinamis dengan menggunakan PHP. CodeIgniter memudahkan developer untuk membuat aplikasi web dengan cepat dan mudah dibandingkan dengan membuatnya dari awal. CodeIgniter dirilis pertama kali
35 pada 28 Februari 2006. Versi terakhir adalah 1.7.2 dapat dilihat di website resminya.
Framework secara sederhana dapat diartikan kumpulan dari fungsifungsi/prosedur-prosedur dan class-class untuk tujuan tertentu yang sudah siap digunakan sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang pemrograman, tanpa harus membuat fungsi atau class dari awal.
Ada beberapa alasan mengapa menggunakan Framework:
1. Mempercepat dan mempermudah pembangunan sebuah aplikasi web. 2. Relatif memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah framework (dengan syarat programmer mengikuti pola standar yang ada) 3. Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding, pengaturan session, error handling, dll 4. Lebih bebas dalam pengembangan jika dibandingkan CMS
Ada beberapa kelebihan CodeIgniter (CI) dibandingkan dengan Framework PHP lain : 1. Performa sangat cepat : salah satu alasan tidak menggunakan framework adalah karena eksekusinya yang lebih lambat daripada PHP from the scracth, tapi Codeigniter sangat cepat bahkan mungkin
36 bisa dibilang codeigniter merupakan framework yang paling cepat dibanding framework yang lain. --? 2. Konfigurasi yang sangat minim (nearly zero configuration) : tentu saja untuk menyesuaikan dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk menggunakan codeigniter dengan setting standard, anda hanya perlu merubah sedikit saja file pada folder config. 3. Banyak komunitas: dengan banyaknya komunitas CI ini, memudahkan kita untuk berinteraksi dengan yang lain, baik itu bertanya atau teknologi terbaru. 4. Dokumentasi yang sangat lengkap : Setiap paket instalasi codeigniter sudah disertai user guide yang sangat bagus dan lengkap untuk dijadikan permulaan, bahasanya pun mudah dipahami. 2.2.2.2. Model View Controller
Model View Controller merupakan suatu konsep yang cukup populer dalam pembangunan aplikasi web , berawal pada bahasa pemrograman Small Talk , MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data , user interface , dan bagian yang menjadi kontrol aplikasi . Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu :
1. View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML,
37 yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model. 2. Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view. 3. Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi.
Gambar 2.6 Perbedaan teknik klasik dan teknik MVC
Dengan
menggunakan
prinsip
MVC
suatu
aplikasi
dapat
dikembangkan sesuai dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan
38
.
2.2.3. Entity Relationship Diagram (ERD) Menurut Connoly dan begg (2010,p371-395), Entity Relation Diagram digunakan untuk menggambarkan struktur logical database dalam bentuk diagram ERD, serta menyediakan cara yang sederhana dan mudah untuk memahami bagian berbagai komponen dalam desain database. ERD memiliki 3 komponen yaitu : 1. Entity Entity adalah benda yang memiliki identifikasi yang berbeda . Entity dapat digambarkan sebagai persegi yang berisi nama dari entity tersebut. 2. Relationship Relationship adalah hubungan antara entity. Entity merupakan pengikut dari relationship. Relationship dapat digambarkan dalam bentuk belah ketupat yang mana berisi nama dari relasi tersebut. Relationship dapat berupa hubungan one-to-one, one-to-many, atau many-to-many . a. Hubungan one-to-one (1 atau 1...1) Hubungan dimana setiap entity yang ada hanya dapat mempunyai maksimal 1 (satu) hubungan dengan entity yang lain. b. Hubungan one-to-many (1...*) Hubungan dimana setiap entity yang dapat mempunyai satu atau lebih dari satu hubungan dengan entity yang lain.
39 c. Hubungan many-to-many (*...*) Hubungan dimana setiap entity dapat mempunyai lebih dari satu relasi dengan entity lainnya. 3.
Property atau atribut Property atau atribut adalah sifat atau karakteristik deskriptif suatu entitas. Setiap property atau atribut mempunyai key diataranya primary key (PK) dan foreign key (FK), yang bertujuan untuk menunjukkan hubungan atara kedua entitas.
2.2.4. State Transition Diagram (STD) Menurut Pressman (2010, p502) STD mengindikasikan bagaimana sistem memberlakukan kebiasaan sebagai sebuah konsekuensi kejadian di luar.
Untuk
menyelesaikannya, STD merepresentasikan banyak mode perilaku pada sistem dan jenis transisi yang dibuat dari suatu state ke state lain. STD menyediakan dasar untuk pemodelan perilaku.