BAB II LANDASAN TEORI
2.1 Kursus Menurut Sihombing (2001 : 89) kursus pendidikan luar sekolah yang diselenggaran atau kursus adalah satuan pendidikan luar sekolah yang terdiri atas sekumpulan warga masyarakat yang memberikan pengetahuan, ketrampilan, dan sikap mental bagi warga belajar. Kursus sebagai salah satu satuan pendidikan pada jalur pendidikan luar sekolah tugas kelembagaan untuk merealisasikan tujuan pendidikan luar sekolah. Kursus adalah lembaga pelatihan yang termasuk ke dalam jenis pendidikan nonformal. Kursus merupakan suatu kegiatan belajar-mengajar seperti halnya sekolah. Perbedaannya adalah bahwa kursus biasanya diselenggarakan dalam waktu pendek dan hanya mempelajari satu keterampilan tertentu. Dengan kata lain, kursus merupakan tempat khusus untuk belajar selain disekolah. Biasanya diperuntukkan bagi pelajar atau mahasiswa yang membutuhkan pelajaran tambahan selain disekolah. Peserta yang telah mengikuti kursus dengan baik biasanya memperoleh sertifikat atau surat keterangan telah mengikuti pembelajran. Pelaksanaan pembelajaran kursus yang baik tentunya perlu perencanaan yang baik. Menentukan strategi pembelajaran merupakan salah satu komponen perencanaan yang harus dipertimbangkan dengan baik dan melaksanakan proses pembelajaran. pembelajaran merupakan sebuah proses interaksi antara peserta didik dan pendidik dalam mencapai tujuan secara efektif dan efesien.
6
http://digilib.mercubuana.ac.id/
7
2.2 Video Streaming Video merupakan suatu media yang sangat penting untuk komunikasi dan hiburan selama puluhan tahun ini. Pertama kali, video diolah dan ditransmisikan dalam bentuk analog. Perkembangan di bidang komputer telah membantu terbentuknya video digital. Salah satu penerapan video digital yang digunakan dalam transmisi data adalah video streaming. Video streaming ialah teknologi pengiriman data, video atau audio dalam bentuk yang dekompresi melalui jaringan internet yang ditampilkan oleh suatu player secara realtime. Pengguna memerlukan player yang merupakan aplikasi khusus untuk melakukan dekompresi dan mengirimkan data berupa video tampilan layar monitor dan data berupa speaker. Sebuah player dapat berupa suatu bagian dari browser atau sebuah perangkat lunak. Streaming media merupakan membagi data dan encoding, kemudian mengirimkannya melalui jeringan dan pada saat data sampai pada pengguna maka akan dilakukan decoding serta pembacaan data. Ciri-ciri aplikasi streaming yaitu distribusi audio, video dan multimedia pada jaringan secara realtime. Transfer media data digital dari server dan diterima oleh pengguna sebagai realtime stream sehingga pengguna tidak perlu menunggu keseluruhan data di-download karena server mengirim data yang diperlukan setiap selang waktu tertentu. Hal ini memungkinkan untuk menjalankan file content seketika dengan periode buffer pendek. Adapun bermacam-macam format atau ekstensi video yang biasa kita temui sehari-hari yang cukup luas dikenal masyarakat antara lain : AVI (Audio Video Interleaved) adalah format video yang dikembangkan oleh Microsoft dan mulai diperkenalkan ke public pada tahun 1991 sebagai bagian dari teknologi video for windows miliknya. Format video ini cukup populer karena kualitas gambar yang diberikan cukup baik. MPEG adalah format video yang distandarisasi oleh Moving Picture Expert Group yang terbentuk oleh 350 perusahaan dan organisasi. Ukuran file dengan format MPEG lebih kecil dari ukuran file dengan format AVI.
http://digilib.mercubuana.ac.id/
8
MP4 atau pemutar MP4 merupakan sebuah media yang bisa memutar music maupun video yang populer. Pada awal kelahirannya, banyak orang yang tergila-gila pada perangkat ini agar dapat memutar music maupun video dimana saja dan kapan saja. Perangkat ini penerus dari generasi MP3. Player yang hanya mampu memutar musik dalam format mp3. Namun, pada awal kebangkitan perangkat music ini, nama itu sebenarnya kurang tepat diberikan kepada perangkat portable tersebut karena tidak dapat memutar data dengan format mp4. Justru fungsinya tidak jauh berbeda dengan MP3 Player hanya dapat memutar music dalam format mp3. Namun dengan seiringnya waktu, MP4 Player berubah menjadi perangkat portable yang dapat memutar data dengan berbagai format. Mp4 adalah sebuah singkatan dari format MPEG-14 Part 14. Format ini merupakan sebuah standar yang menggunakan spesifikasi MPEG-4. MPEG sendiri adalah sebuah format yang bertugas untuk mengkompres algoritma gambar bergerak. Kemudian, MPEG dibagi dalam beberapa tingkatan sesuai dengan kualitas dan spesifikasinya masing-masing. MP4 adalah format yang telah menyesuaikan diri pada video maupun audio. Oleh karenanya, MP$ dapat memutar suara saja, video saja, atau bahkan keduamya. Bukan hanya itu, MP4 sendiri juga memiliki fitur untuk dapat melakukan streaming di internet. Maka dari itu format MP4 ini dipakai untuk media pembelajaran Portal Kursus Online. 3GP adalah format video yang distandarisasi oleh Third Generation Partnership Project untuk 3G UMTS jasa multimedia agar bias digunakan pada ponsel. FLV (Flash Video) adalah format video yang dikembangkan oleh Macromedia dan bias digunakan untuk mengirim video melalui internet dengan bantuan Adobe Flash Player. SWF (Small Web Format) adalah format video yang juga dikembangkan oleh Macromedia. SWF file dapat berisi animasi atau applet dari berbagai tingkat interaktif dan fungsi.
http://digilib.mercubuana.ac.id/
9
MOV adalah format video yang dikembangkan oleh perusahaan Apple. MOV file dapat berisi video, animasi, grafis, 3D dan virtual reality content. 2.3 Bootstrap Twitter Bootstrap atau Bootstrap adalah sebuah alat bantu untuk membuat sebuah tampilan halaman website yang dapat mempersepat pekerjaan seorang pengembang website ataupun pendesain halaman website. Sesuai namanya, website yang dibuat dengan alat bantu ini memiliki tampilan halaman yang sama / mirip dengan tampilan twitter atau desainer juga dapat mengubah tampilan halaman website sesuai kebutuhan. Twitter Bootstrap dibangun dengan teknologi HTML dan CSS yang dapat membuat layout halaman website, tabel, tombol, form, navigasi, dan komponen lainnya dalam sebuah website hanya dengan memanggil fungsi CSS (class) dalam berkas HTML yang telah didefinisikan. Selain itu juga terdapat komponenkomponen lainnya yang dibangun menggunakan JavaScript. 2.4 Vline Vline membuat komunikasi real-time atau waktu kenyataan, kondisi pengoprasian dari suatu sistem perangkat keras dan perangkat lunak yang dibatasi oleh ruang dan waktu dan memiliki tenggat waktu yang jelas. Vline menawarkan WebRTC video chat platform terkemuka yang dapat dimanfaatkan dalam dua cara. Link vline memungkinkan siapa saja memulai chatting video dalam satu klik. Vline dipimpin oleh pengembang berpengalaman berfokus pada bagaimana teknologi mengubah cara orang terlibat dengan satu sama lain. Web browser mobile, mobile OS berbasis web, dan real-time file sharing hanya beberapa dari bagian front line yang inovatif. 2.4.1 WebRTC WebRTC (Web Real-time Communication) adalah sebuah proyek terbuka dan gratis yang akan memungkinkan berbagi macam web browser untuk melakukan aktivitas Real-time Communication (RTC) lewat sejumlah
http://digilib.mercubuana.ac.id/
10
JavaScript API yang simple. Dukungan ini telah hadir untuk Chrome versi web, dan merupakan proyek kerjasama antara Google, Mozilla dan Opera. Lewat fitur ini, pengguna akan bisa melakuka video chat dengan menggunakan kamera serta microphone dari tablet/smartphone, tanpa perlu aplikasi lain seperti skype misalnya. Pengguna akan terus mendapatkan tiap kali sebuah website akan mencoba merequest ijin akses, dan hal lain akan menyebabkan deretan notifikasi yang hadir terus menerus. Hal ini dimaksudkan agar aktivitas video chat tidak akan diintai oleh pihak lain. 2.5 Web Portal Web Portal adalah sebuah web juga, tetapi memiliki kelebihan pada isinya. Didalam suatu web portal, kita akan melihat banyak sekali fasilitas yang jarang kita jumpai pada web pribadi, web universitas dan lain-lain. Web portal sendiri mulai menjadi populer ketika akhir pertengahan 1999 dan menjadi aplikasi internet yang sedang hangat-hangatnya pada tahun 2000. Beberapa proyek kecil yang di sebut “micro portal” diantaranya adalah Slashdot dan proyek weblogs. Sebuah portal sebenarnya terdiri atas banyak elemen, misalnya adalah infrastruktur atau teknologi dari portal itu sendiri atau bisa juga berupa sumber daya manusia. Misalnya pencari berita jika portal informasi berita, manager (CEO) yang mengelola portal itu sendiri. 2.5.1 Perkembangan Web Portal Teknologi yang digunakan adalah teknologi web dinamis. Teknologi web dinamis, tentunya isi yang ada dapat diubah dengan mudah dan cepat. Ini berdampak pada informasi yang ada merupakan informasi yang terbaru. Bahasa yang digunakan tidak hanya HTML saja tetapi harus ada bahasa pemograman yang bekerja di sisi server, sever-side programming. Bahasa pemogramannya bias menggunakan ASP (Active Server Pages), CGI (Common Gateway Interface), PHP (Hypertext PreProcessor) atau CFM (Cold Fusion). Karena mempunyai data yang berjumlah besar dan masingmasing saling berhubungan, dibutuhkan Database. Database yang digunakan bukan database dekstop aplikasi, tetapi levelnya telah mencapai server, yaitu
http://digilib.mercubuana.ac.id/
11
database server yang mempunyai kemampuan menampung data besar, misalnya Microsoft SQL Server. Oracle, PostgreSQL,MySQL. Dengan adanya hubungan antara bahasa pemograman server-side dengan database server, maka halam web menjadi dinamis, dan dengan pemograman server-side, pemilik website tidak dipusingkan dengan perbedaan yang ada pada setiap pengakses website tersebut. Web portal dikembangkan menjadi sebuah web e-commerce, meskipun tidak semuanya sehingga arus pendapat juga semakin tinggi. Kondisi yang demikian mendorong teknologi web portal semakin berkembang kearah keamanan data pengunjung, misalnya menggunakan enkripsi data dengan SSL (Secure Socket Layer) dengan jurnal kunci bit yang tinggi, atau menggunakan protocol http yang lebih aman yaitu https (HyperText Transfer Protocol Secure).
2.6 Metode Waterfall Metode waterfall merupakan model klasik yang sederhana dengan aliran system linier. Output dari setiap tahap merupakan input bagi tahap berikutnya. Model ini pertama kali diperkenalkan oleh Winston Royce tahun 1970. Tahap penelitian model waterfall meliputi metodelogi berupa:
Rekayasa Sistem / Pemodelan Sistem Desain Pengkodean dan pengujian Uji Coba Penerapan Pemeliharaan
Gambar 2.1 Metode Waterfall
http://digilib.mercubuana.ac.id/
12
1. Tahapan Rekayasa Sistem dan Pemodelan Sistem Tahap ini sangat menekankan pada masalah pengumpulan kebutuhan pengguna pada tingkat system dengan mendefinisikan konsep system. Rekayasa system meliputi pengumpulan perangkat lunak. Untuk memahami perangkat lunak yang dibangun perekayasaan perangkat lunak harus memahami domain informasi, untuk kerja, dan antar muka yang diperlukan. Kebutuhan baik untuk sistem maupun perangkat lunak didokumentasikan dan dilihat lagi dengan user. Perangkat lunak yang diperlukan dalam aplikasi ini seperti Windows 7, Codeigniter, Note++, XAMPP, Google Chrome. 2. Desain Proses pembuatan desain tahap awal merancang tampilan website, kelas kursus, dan video yang di tampilkan. Sehingga menghasilkan desain interface yang atraktif. Proses desain menerjemahkan kebutuhan kedalam sebuah representasi perangkat lunak yang dapat diperkirakan demi kualitas sebelum
dimulai pemunculan kode. Sebagai
persyaratan, desain
didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak. Dalam mendesain web ini menggunakan Bootstrap sebagai templatenya. 3. Pengkodean Pengkodean merupakan penerjemah design dalam bahasa yang bisa dikenali oleh komputer. Dilakukan oleh programmer yang akan menterjemahkan transaksi yang diminta oleh user. Tahap ini lah yang merupakan tahapan secara nyata dalam mengerjakan suatu sistem. Dalam artian pengguna komputer akan dimaksimalkan dalam tahapan ini. setelah pengkodean selesai makan akan dilakukan pengujian terhadap sistem yang telah dibuat tadi. Tujuan pengujian adalah menemukan kesalahan-kesalahn terhadap sistem tersebut dan kemudian bias diperbaiki. 4. Penerapan Tahap ini bias dikatakan terakhir dalam pembuatan sebuah sistem setelah melakukan analisa, desain dan pengkodean maka sistem yang sudah jadi akan digunakan oleh guru dan murid.
http://digilib.mercubuana.ac.id/
13
5. Pemeliharaan Perangkat lunak akan mengalami perubahan setelah disampaikan kepada user. Perubahan akan terjadi kesalahan-kesalahan ditentukan karena perangkat lunak harus disesuaikan untuk menampang perubahanperubahan didalam lingkungan luarnya. Pemeliharaan perangkat lunak menerapkan lagi setiap tahap program sebelumnya dan tidak membuat yang baru lagi. 2.7 Basis Data Menuurut Fathansyah (2012 : 2) Basisdata terdiri atas 2 kata, yaitu Basis dan Data kurang lebih dapat diartikan sebagai markas atau gudang. Tempat bersarang / berkumpul. Sedangkan Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang diwujudkan dalam bentuk angka, huruf, symbol teks, gambar, bunyi, atau kondisinya. Sebagai suatu kesatuan istilah, Basis Data (Database) sendiri dapat didefinisikan dalam sejumlah sudut pandang seperti :
Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasikan sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.
Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi yang tidak perlu, untuk memenuhi berbagai kebutuhan.
Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.
Tujuan utama dalam pengelola data dalam sebuah basis data adalah agar kita dapat memperoleh menemukan kembali data (yang kita cari) dengan mudah dan cepat. Disamping itu, pemanfaatan basis data untuk pengelolaan data, juga memiliki tujuan – tujuan lain seperti berikut ini :
http://digilib.mercubuana.ac.id/
14
Kecepatan dan Kemudahan (Speed) Pemanfaatan basis data memungkinkan kita untuk dapat menyimpan data atau melakukan perubahan / manipulasi terhadap data atau menampilkan kembali data tersebut dengan lebih cepat dan mudah.
Efisiensi Ruang Penyimpanan (Space) Dengan basis data, efisiensi atau optimalisasi penggunaan ruang penyimpanan dapat dilakukan, karena kita dapat melakukan penekanan jumlah redudansi data baik dengan menerapkan sejumlah pengkodean atau dengan membuat relasi-relasi (dalam bentuk table) antar kelompok data yang saling berhubungan.
Keakuratan (Accuracy) Pemanfaatan pengkodean atau pembentukan relasi antardata bersama dengan penerapan aturan atau batasan (constraint) tipe data, domain data, keunikan data, dan sebagainya, yang secara ketat dapat diterapkan dalam sebuah basis data, sangat berguna untuk menekankan ketidak akuratan penyimpanan data.
Ketersediaan (Availability) Dengan pemanfaatan teknologi jaringan komputer, data yang berada di suatu cabang, dapat juga diakses (menjadi tersedia / available) bagi cabang lain.
Kelengkapan (Completeness) Untuk mengkomodasi kebutuhan kelengkapan data yang semakin berkembang, maka kita tidak hanya dapat menambah record-record data, tetapi juga dapat melakukan perubahan struktur dalam basis data, baik dalam bentuk penambahan objek baru (table) atau dengan penambahan fileld-filed baru pada sebuah table.
Keamanan (Security) kita dapat menemukan siapa-siapa (pemakaian) yang boleh menggunakan basis data beserta objek-objek didalamnya dan menentukan jenis-jenis operasi apa saja yang boleh dilakukannya.
http://digilib.mercubuana.ac.id/
15
Kebersamaan Pemakaian (Sharability) Pemakaian basis data sering kali tidak terbatas pada satu pemakaian saja, atau di satu lokasi saja oleh satu sistem atau aplikasi saja. Basis data yang dikelola oleh sistem (aplikasi) yang mendukung lingkungan multi-user, akan dapat memenuhi kebutuhan ini, tetapi tetap dengan menjaga / menghindari munculnya persoalan baru seperti inkonsistensi data (karena data yang sama diubah oleh banyak pemakai pada saat yang bersamaan) atau kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data).
2.8 Unified Modeling Language Unified Modeling Language (UML) adalah keluarga garis notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemograman berorientasi objek (Fowler,2005:1). UML adalah sebuah bahasa yang telah menjadi standart yang berdasarkan grafik atau gambar untuk memvisualisasikan, menspesifikasikan, membangun,dan pendokumentasian
dari
sebuah
pengembangan
sistem
perangkat
lunak
berorientasi objek (Object Oriented). UML merupakan suatu kumpulan teknik terbaik yang sudah terbukti sukses dalam memodelkan sistem yang besar dan kompleks yang dikembangkan oleh Booch, Object Modelling Technique (OMT) dan Object Oriented Spftware Engineering (OOSE). Metode Booch atau atau yang kita kenal dengan metode Design Object Oriented yang dibuat oleh Gardy Booch. Metode ini menjadikan proses analisis dan design ke dalam empat tahapan interaktif, yaitu : 1. Identifikasi kelas-kelas dan objek-objek 2. Identifikasi semantic dari hubungan objek dan kelas 3. Perincian interface 4. Implementasi Dengan menggabungkan UML, metode Booch OMT dan OOSE lalu ditambahkan dengan elemen-elemen baru yang lebih efektif dan lebih ekspresif
http://digilib.mercubuana.ac.id/
16
dari metode lainnya. UML terdiri atas 13 jenis diagram resmi seperti tertulis dalam table berikut. Tabel 2.1 Jenis Diagram Resmi UML No
Diagram
Kegunaan
1.
Activity
Behaviour Prosedural dan paralel
2.
Class
Class, Fitur, dan hubung-hubungan
3.
Communication
Interaksi antar objek; penekanan pada jalur
4.
Component
Struktur dan koneksi komponen
5.
Composite
Dokumposisi runtime sebuah class
Structure 6.
Deployment
Pemindahan artifak ke node
7.
Interaction
Campuran sequence dan activity diagram
overview 8.
Object
Contoh konfigurasi dari contoh-contoh
9.
Package
Struktur hirarki compile-time
10.
Sequence
Interaksi antar objek; penekanan pada sequence
11.
State machine
Bagaimana even mengubah objek selama aktif
12.
Timing
Interaksi antar objek; penekanan pada timing
13.
Use case
Bagaimana pengguna berinteraksi dengan sebuah sistem
2.8.1 Use Case Diagram Use case diagram adalah layanan (services) atau fungsi-fungsi yang disediakan oleh sistem untuk pengguna-penggunanya (Hendri et al, 2008). Use case diagram menggambarkan fungsionalitas dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah Use case diagram mempresentasikan sebuah interaksi antara pengguna sistem dengan sistem. Use case diagram menggambarkan sebuah pekerjaan tertentu, misalnya login ke sistem, membuat sebuah daftar belanja, dan sebagainya. Actor adalah sebuah entitas manusia atau sistem yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.
http://digilib.mercubuana.ac.id/
17
Notasi-notasi yang digunakan dalam pemodelan dengan use case dapat dilihat pada table berikut ini : Tabel 2.2 Notasi Use case Diagram Notasi
Deskripsi Actor,
segala
sesuatu
digunakan
untuk
menggambarkan pelaku atau pengguna yang sedang berinteraksi langsung. Use case berfungsi menggambarkan spesifikasi pekerjaan
(job
specification)
dan
deskripsi
pekerjaan (job description), serta keterkaitan antar pekerjaan (job). Aliran
proses
(relationship),
berguna
untuk
menggambarkan hubungan antara usecase dengan use case lainnya. Aliran perpanjang (extension points), berguna untuk menggambarkan hubungan antara use case dengan use case yang diperpanjang (extended use case) maupun
dengan
use
case
yang
dimasukkan
(included use case). Aliran yang digunakan untuk menggambarkan hubungan antar actor dengan use case. <<extended>>
Kondisi yang mendeskripsikan apa yang terjadi antara use case dengan use case yang diperpanjang.
<
>
Include adalah kondisi aliran proses langsung (directed relationship) antara dua use case yang secara langsung menyatakan kelakuan (behavior) dari use case yang dimasukkan.
http://digilib.mercubuana.ac.id/
18
<>
Adalah kondisi yang mendeskripsikan apa yang terjadi antara actor dengan use case.
2.8.2 Activity Diagram Activity diagram merupakan bagian dari model dinamis yang digunakan untuk menggambarkan work flow atau proses sistem kita. Diagram ini menunjukkan bagaimana suatu proses dimulai, kemudian alur proses dari setiap keputusan yang ada hingga berakhirnya proses. Serta diagram ini juga mungkin untuk menampilkan proses yang terjadi secara parallel. Activity diagram memungkinkan siapapun yang melakukan proses untuk memilih urutan dalam melakukannya. Dengan kata lain, diagram hanya menyebutkan aturan-aturan rangkaian dasar yang harus kita ikuti. Hal ini penting untuk pemodelan bisnis karena proses-proses sering muncul secara paralel. Notasi-notasi yang digunakan dalam pemodelan activity dapat dilihat pada table 2.4. Tabel 2.3 Notasi Activity Diagram No. 1.
Notasi
Keterangan Titik awal, digunakan untuk menggambarkan awal dari diagram aktifitas
2.
Titik akhir, digunakan untuk menggambarkan akhir dari diagram aktifitas
3.
Aktivitas, digunakan untuk menggambarkan aktifitas dalam diagram aktifitas
4.
Pilihan utuk pengembalian keputusan, digunakan untuk menggambarkan kelakuan pada kondisi tertentu.
5.
Akhir alur (flow final), digunakan untuk menghancurkan semua tanda yang dating dan tak memiliki efek alur dalam aktifitas.
http://digilib.mercubuana.ac.id/
19
6.
Fork ; digunakan untuk menunjukkan kegiatan-kegiatan yang dilakukan secara paralel tau untuk menggabungkan dua kegiatan paralel menjadi satu.
7.
Rake ; menunjukkan adanya dokumposisi
8.
Tanda waktu
9.
Node Fork memiliki satu aksi yang masuk dan beberapa aksi yang keluar.
10
Join mode digunakan untuk menggambarkan beberapa aksi yang masuk dan satu aksi yang keluar.
11.
Tanda Pengiriman
12.
Tanda Penerimaan
2.8.3 Squance Diagram Sebuah squance diagram secara khusus menjabarkan aktifitas sebuah scenario tunggal. Diagram tersebut menunjukkan sebuah objek contoh dan pesan-pesan yang melewati objek-objek di dalam use case diagram (Fowler, 2005). Sequence diagram menggambarkan interaksi dengan menampilkan setiap partisipan dengan garis air vertical pesan atau ke bawah. Sequence diagram biasa digunakan untuk menggambarkan scenario atau menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diagram ini juga menunjukkan serangkaian pesan yang dipertukarkan oleh objek-objek yang melakukan suatu tugas atau aksi tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apayang dihasilkan. Masing-masing objek,
http://digilib.mercubuana.ac.id/
20
termasuk actor memiliki lifeline vertical. Pesan digambarkan sebagai garis berpanah dari suatu objek ke objek lainnya. Notasi-notasi yang digunakan dalam pemodelan sequence diagram terlihat dalam table berikut : Tabel 2.4 Notasi Pemodelan Sequence Diagram No.
Notasi
1.
Keterangan Aktor, Merupakan sebuah peranan yang dimainkan seseorang pengguna dalam kaitannya dengan sistem.
2.
Activation, Menggabarkan waktu yang dibutuhkan suatu objek untuk menyelesaikan suatu aktivitas.
3.
Object 1
4.
Participant (Obyek), Simbol yang digunakan untuk menyederhanakan diagram. Lifeline, Digambarkan dengan garis putus-putus, yang menggambarkan bahwa hadirnya objek terhadap waktu.
5.
Aliran Pesan, Diagambarkan dengan tanda panah, yang menggambarkan komunikasi antar objek.
2.8.4 Class Diagram Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat atau membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.
Atribut merupakan variable-variable yang dimiliki oleh suatu kelas
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas.
http://digilib.mercubuana.ac.id/
21
Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsifungsi sesuai dengan kebutuhan sistem. Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis-jenis kelas berikut :
Kelas main
kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalan kan.
Kelas yang menangani sistem.
Kelas yang mendefinisikan dan mengatur tampilan kepemakaian.
Kelas yang diambil dari pendefinisian use case.
Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian use case.
Kelas yang diambil dari pendefinisian data.
Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basisdata. Berikut adalah symbol-symbol yang sering digunakan pada saat pembuatan class diagram. Tabel 2.5 Simbol-simbol yang ada pada Class Diagram Simbol
Deskripsi Kelas pada struktur sistem.
Class 1
Antarmuka / interface
Sama dengan konsep interface dalam pemograman berorientasi objek.
Nama_interface Asosiasi / association
Relasi antar kelas dengan umum, asosiasi biasanya juga disertai dengan multiplicity.
Asosiasi association
berarah
/
directed Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity.
http://digilib.mercubuana.ac.id/
22
Generalisasi
Relasi
antar
kelas
dengan
makna
generalisasi-spesialisasi (umum-khusus) Kebergantungan / dependency
Relasi
antar
kelas
dengan
makna
kebergantungan antar kelas.
2.9 Topology Web atau Internet Internet adalah suatu sistem global dari seluruh jaringan yang saling terhubung menggunakan standar Internet Protokol Suit (TCP/IP) untuk melayani milyaran pengguna di seluruh dunia. Berikut contoh gambar cara kerja web atau internet:
Gambar 2.2 Topologi web atau internet Gambaran secara umum cara kerja interhubung ke internet yaitu sebuah komputer client yang terhubung ke internet pada awalnya harus terhubung ke server. Server bertugas mengatur akses dan mengirim data-data dari dan ke dalam internet yang diminta oleh client. Sedangkan penghubung antara client dengan server yaitu protocol, contohnya http:// adalah hypertext transfer protocol yang menunjukkan terhubung nya komputer dengan jaringan.
http://digilib.mercubuana.ac.id/
23
Protocol atau IP (Internet Protokol) tersebut adalah deretan angka biner antara 32 bit-128 bit yang dipakai sebagai alamat identifikasi untuk komputer host dalam jaringan internet. Domain Name Sytem (DNS) merupakan sistem terdistribusi yang akan mengkonversikan nama host/mesin/domain ke alamat IP dan sebaliknya. Cara kerja DNS secara umum yaitu, Pada komputer client sebuah program aplikasi misalnya http, meminta pemetaan IP Address (forwar lookup query). Sebuah program aplikasi pada host mengakses domain sistem disebut dengan resolver, resolver menghubungi DNS server, yang bisa disebut nama server. Name server memeriksa ke local database, jika ditemukan name server mengembalikan IP address ke resolver, jika tidak ditemukan akan meneruskan query tersebut ke name server root server. Terakhir barulah si client bisa secara langsung menghubungi sebuah website / server yang diminta dengan menggunakan IP address yang diberikan oleh DNS server. Contohnya sebagai berikut: 1. Saat kita mengetikkan http://mercubuana.ac.id pada web browser, maka aplikasi http (resolver) akan mengirimkan query ke name server DNS Server local atau DNS Server Internet Service Provider. 2. Pertama name server akan menghubungi server root. Server root tidak mengetahui IP address domain tersebut, ia hanya akan memberikan IP address server id. 3. Selanjutnya name server akan bertanya lagi pada server id berupa IP address domain mercubuana.ac.id. server id tidak mengetahui IP address domain tersebut, ia hanya akan memberikan IP address server ac.id. 4. Kemudian name server akan bertanya ke server ac.id tentang IP address mercubuana.ac.id. dan server ac.id hanya akan mengetahui dan memberikan jawaban barupa IP address server mercubuana.ac.id.
http://digilib.mercubuana.ac.id/
24
5. Lalu name server akan bertanya ke server mercubuana.ac.id tentang IP address mercubuana.ac.id. Dan barulah mercubuana.ac.id mengetahui dan menjawab berapa IP address domain mercubuana.ac.id. 6. Terakhir barulah komputer client bisa secara langsung menghubungi domain mercubuana.ac.id dengan menggunakan IP address yang (belom kelar) 7. IP address milik mercubuana.ac.id kemudian akan disimpan sementara oleh DNS server untuk keperluan nanti. Proses ini disebut caching yang berguna untuk mempercepat pencarian nama domain yang telah dikenalnya.
2.10 PHP PHP (Hypertext Preprocessor) merupakan salah satu bahasa pemograman skrip yang dirancang untuk membangun aplikasi web. Ketika dipanggil dari web browser, program yang di tulis PHP akan di-parsing di dalam web server oleh interpreter PHP dan di terjemahkan kedalam dokumen HTML, yang selanjutnya akan ditampilkan kembali ke web browser. Karena pemrosesan program PHP dilakukan dilingkungan web server, PHP dikatakan sebagai bahasa sisi server (server-side), oleh karena itu kode PHP tidak akan terlihat pada saat user memilih perintah “View Source” pada web browser yang mreka gunakan. Selain menggunakan PHP, aplikasi web juga dapat dibangun dengan Java (JSPJavaServer Pages dan Servlet), Perl, maupun ASP (Active Server Pages). PHP (Hypertect Preprocessor) merupakan bahasa pemograman skrip yang paling banyak digunakan atau dalam kata lain bias diartikan sebuah bahasa pemograman web yang bekerja disisi server yang dapat melakukan konektifitas pada database yang dimana hal ini tidak dapat dilakukan hanya dengan menggunakan sintaks HTMLbiasa. Sifat severside berarti pengerjaan skrip dilakukan deserver, kemudian hasilnya dikirim ke browser. PHP merupakan skrip yang dijalankan deserver, dimana kode yang menyusun program tidak perlu diedarkan kepemakai sehingga kerahasiaan kode dapat dilindungi.
http://digilib.mercubuana.ac.id/
25
Cara kerja aplikasi web yang ditulis dengan PHP dapat diilustrasikan dengan gambar dibawah ini:
Web Browser
2
Apache
Internet 7
8
3
6 PH P 5
1 Address
MyS QL
www.latihan.com/soal.php
4 Disk Drive
Gambar 2.3 Cara Kerja PHP Berikut adalah penjelasan dari gambar diatas: 1. User menulis www.latihan.com/soal.php ke dalam address dan web browser (Mozila, Firefox, Opera, Google Chrome, dll). 2. Web
Browser
mengirimkan
pesan
diatas
ke
komputer
server
(www.latihan.com) melalui internet, meminta halaman soal.php. 3. Web Server (misalnya Apache), program yang berjalan dikomputer server, akan menangkap pesan tersebut, lalu meminta interpreter PHP (program lain yang juga berjalan dikomputer server) untuk mencari file soal.php dalam disk drive. 4. Interpreter PHP membaca file soal.php dari disk drive. 5. Interpreter PHP akan menjalankan perintah-perintah atau kode PHP yang ada dalam file latihan.php. jika kode dalam file soal.php melibatkan akses terhadap database (misal MySQL) maka interpreter PHP juga akan menghubungkan perintah perintah yang berkaitan dengan database.
http://digilib.mercubuana.ac.id/
26
6. Interpreter PHP mengirimkan halaman dalam bentuk HTML ke Apache. 7. Melalui internet, Apache mengirimkan halaman yang diperoleh dari interpreter PHP ke komputer user sebagai respon atas permintaan yang diberikan 8. Web browser dalam komputer user akan menampilkan halaman yang dikirim oleh Apache. 2.10.1 Struktur PHP Kode PHP menyatu dengan tag-tag HTML dalam suatu file. Kode PHP diawali dengan tag . file yang berisi tag HTML dank ode PHP ini diberi ekstensi .php. berdasarkan ekstensi ini, pada saat file diakses, server akan tahu bahwa file ini mengandung kode PHP. Server akan menterjemahkan kode ini dan menghasilkan keluaran (output) dalam bentuk tag HTML yang dikirim ke browser client yang mengakses file tersebut. Berikut contoh struktur penulisan : 1.
2.11 HTML HTML (Hypertext Markup Language) adalah suatu bahasa yang digunakan untuk menulis halaman web. HTML dirancang untuk digunakantanpa tergantung dengan platform tertentu (platform independent). Dokumen HTML adalah suatu dokumen teks biasa, dan disebut sebagai markup language karena mengandung tanda – tanda (tag) tertentu yang digunakan untuk menentukan tampilan suatu teks dan tingkat kepentingan dari teks tersebutdalam suatu dokumen. Pada dokumen HTML yang termasuk sistem hyper-text, kita tidak
http://digilib.mercubuana.ac.id/
27
harus membaca dokumen tersebut secara urut dari atas ke bawah atau sebaliknya, tetapi kita dapat menuju pada topik tertentu secara langsung dengan menggunakan teks penghubung yang akan membawa anda ke suatu topic atau dokumen lain secara langsung. HTML merupakan pengembangan dari standar pemformatan dokumen teks yaitu SGML (Standart Generalized Markup Languag). Sejak awal perkembangan sampai sekarang ini telah tersedia bermacam – macam level (versi) HTML. 2.11.1 Dasar – Dasar HTML HTML (Hypertext Markup Language) merupakan protocol yang digunakan untuk mentransfer data antara web server ke web browser. Protokol ini mentransfer dokumen – dokumen web yang ditulis atau berformat HTML (Hypertext Markup Language). Dikatakan markup language karena HTML berfungsi untuk memformat file dokumen teks biasa untuk bias ditampilkan pada web browser dengan bantuan tanda – tanda yang sudah ditentukan. Hal tersebut dapat dilakukan degan menambahkan elemen atau yang sering disebut sebagai tag. Elemen HTML biasanya berupa tag yang berpasangan dan sebagai tag ditandai dengan simbol < dan >. Pasangan dari sebuah tag ditandai dengan tanda „/‟. Misalnya pasangan dari tag adalah . Dalam hal ini disebut sebagai elemen dan biasanya dalam suatu elemen terdapat atribut-atribut untuk mengatur elemen itu. Jadi misalnya elemen bila ditulis dengan atributnya adalah sebagai berikut: . Dalam penulisan tag HTML tidak case sensitive, artinya penggunaan huruf kecul ataupun besar tidak menjadi masalah.
http://digilib.mercubuana.ac.id/
28
2.11.2 Struktur Dasar HTML Script dituliskan dalam text editor seperti Notepad, kemudian disimpan dengan ekstensi .htm atau .html. kemudian untuk mencobanya dapat langsung dibuka dengan web browser, seperti Internet Explorer atau Nescape Navigator, cukup dengan perintah File|open, kemudian browse nama file dan lokasi dimana file HTML tadi disimpan. Atau sebagai latihan dapat pula disimpan dilokasi document root web server dan memanggilnya dengan nama komputer dan filenya. Berikut contoh struktur penulisannya: berisi teks yang akan muncul pada title bar browser berisi tentang text, gambar, atau apapun yang ingin ditampilkan pada halaman web ada pada bagian ini.
2.12 CSS CSS (casacading Style Sheet) digunakan untuk membantu anda dalam mendesain isi halaman web. Ketika anda memiliki sebuah halaman web yang terdiri dari beberapa file, untuk melakukan pemformatan pada halaman tersebut, anda tidak perlu memformat satu persatu, tetapi anda cukup membuat satu file di CSS. CSS dapat dipasang pada dokumen HTML yang telah jadi. CSS memiliki tiga bagian yaitu Selector, Properti dan Nilai. Penulisan property dan nilai dipisahkan oleh tanda titik-dua (:), jika nilai terdiri dari satu kata, penulisan nilai dapat dengan tanda petik dua, misalnya penulisan “Times New Roman”. Dibawah ini adalah contoh bentuk penulisan CSS:
http://digilib.mercubuana.ac.id/
29
Selector { Property:nilai } Body { Color:#336699 } /*jika nilai lebih dari satu kata penulisannya*/ Body { Font-family:”Palatino Linotype”,”Book Antiqua”,serif; }
2.13 JavaScript Javascript diperkenalkan pertama kali oleh netscape pada tahun 1995. Pada awalnya bahasa ini dinamakan “LiveScript” yang berfungsi sebagai bahasa sederhana untuk browser Netscape Navigator 2. Pada masa itu bahasa ini banyak dikritik karena kurang aman, pengembangannya yang terkesan buru-buru dan tidak ada pesan kesalahan yang di tampilkan setiap kali kita membuat kesalahan pada saat menyusun suatu program. Kemudian sejalan dengan giatnya kerjasama antara Netscape dan sun (pengembang bahasa programan “Java” ) pada masa itu, maka Netscape memberikan nama “JavaScript” kepada bahasa tersebut pada tanggal 4 Desember 1995. Pada saat yang bersamaan Microsoft sendiri mencoba untuk mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” di browser Internet Explorer 3. Javascript adalah bahasa yang berbentuk kumpulan skrip yang pada fungsinya berjalan pada suatu dokumen HTML, sepanjang sejarah internet bahasa ini adalah bahasa skrip pertama untuk web. Bahasa ini adalah bahasa pemrograman untuk memberikan kemampuan tambahan terhadap bahasa HTML dengan mengijinkan pengeksekusian perintah perintah di sisi user, yang artinya di sisi browser bukan di sisi server web. Javascript merupakan suatu bahasa yang perkembangannya lambat di bandingkan dengan Java yang berkembang sangat cepat. Di Javascript kita tidak mungkin menyembunyikan kode skrip yang kita tulis, kode langsung di tulis di
http://digilib.mercubuana.ac.id/
30
dalam dokumen HTML dan sangat mudah terlihat, sedangkan di Java, kode sudah berbentuk setengah terkompilasi (dalam bentuk applet) dan tidak mungkin terlihat dari dalam dokumen HTML, satu mesin virtual di sisi user yang bertanggung jawab untuk menterjemahkan program di dalam applet tersebut setiap kali halaman HTML yang memuat applet tersebut dipanggil oleh browser. Dibandingkan dengan applet java yang cukup lambat dibuka oleh browser, bisa kita katakan bahwa Javascript cukup cepat di panggil (diload) oleh navigator. Berikut adalah kelebihan dan kekurangan dari JavaScript, yaitu:
Kelebihan 1. Cepat, Anda meletakan JavaScript di dalam file HTML, jadi bisa sekaligus dan cepat dalam memanipulasi halaman Web. Program yang dibuat oleh JavaScript
juga dapat
langsung dicoba pada browser tanpa harus
dikompilasi terlebih dahulu, sehingga memotong waktu pembuatan jadi lebih cepat. 2. Mudah, Karena JavaScript hanya memiliki sedikit sintaks, penghafalannya tidak sulit dilakukan. Semua perintahnya juga memiliki bahasa Inggris sederhana yang mudah dihafal dan dimengerti. Walaupun JavaScript memiliki banyak kesamaan dengan Java, ia tidak memiliki aturan maupun sintaks yang serumit Java. Setiap orang yang memiliki kemampuan programming terbataspun dapat menggunakannya. 3. Terbuka, JavaScript tidak terikat oleh system operasi, pereangkat keras, atau program tertentu. Ia bersifat terbuka dan fleksibel. JavaScript dapat dibuat pada komputer PC yang menggunakan system operasi Windows dan dibaca oleh komputer mainframe yang memakai UNIX, misalnya. 4. Ukurannya Kecil, Program JavaScript relative berukuran sangat kecil jika dibandingkan dengan program-program yang dibuat dengan Java. Hal ini dapat mengurangi beban penyimpanan pada komputer server dan mempersingkat waktu download-nya
Kekurangan 1. Kemampuan terbatas, JavaScript walaupun mampu memperindah sebuah halaman Web, ia tidak dapat digunakan untuk melakukan tugas-tugas yang lain seperti membuat program aplikasi sendiri.
http://digilib.mercubuana.ac.id/
31
2. Objek terbatas, JavaScript hanya memiliki beberapa objek yang sudah built-in pada struktur bahasanya. Anda tidak dapat membuat kelas-kelas yang bisa menampung objek-objek tambahan sepertti pada Java. 3. Tidak dapat disembunyikan, Setiap orang dapat membaca program JavaScript yang Anda buat. Hal ini dapat mengakibatkan pencontekan atau penggunaan program Anda secara luas dan tidak terkendali. Siapa saja yang membuka halaman Web yang berisi skrip JavaScript, ia dapat meniru dan mengambil skrip tersebut untuk kepentingan pribadi. 2.14 Framework Framework di dalam pemograman komputer adalah abstraksi dari kodekode umum yang menyediakan fungsionalitas umum yang bisa di kesampingkan atau digunakan secara selektif oleh kode pengguna berdasarkan fungsionalitas tertentu. Framework sama dengan pustaka software dimana abstraksi kodenya bisa digunakan kembali yang telah ditentukan dalam API (Application Programming Interface). Framework atau kerangka kerja yang berkaitan dengan web mengijinkan pengembang web untuk mengembangkan struktur aplikasi web yang menyediakan class-class dan fungsi-fungsi yang bias digunakan dalam pengembangan aplikasi web sehingga bisa mengurangi waktu pengembangan secara signifikan. Memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah framework (dengan syarat programmer mengikuti pola standar yang ada). Umumnya framework menyediakan fasilitas-fasilitas yang umun dipakai sehingga tidak perlu membangun dari awal. Misalnya validasi, ORM, pagination, multiple Database, scaffolding pengaturan session, error handing. 2.14.1 CodeIgniter (CI) CodeIgniter merupakan salah satu framework untuk aplikasi web yang menggunakan platform PHP. CodeIgniter ini merupakn framework yang sangat ringan, berukuran ke CodeIgniter dan bekerja dengan baik. Framework ini sangat bagus untuk pemula karena hanya perlu belajar sedikit saja. Untuk aplikasi yang besar juga bagus. CodeIgniter dikembangkan oleh EllisLab dan
http://digilib.mercubuana.ac.id/
32
memiliki dokumentasi yang mudah dimengerti. Berikut adalah alasan mengapa CodeIgniter menjadi framework yang bagus untuk digunakan :
Footprint yang keCodeIgniter namun memiliki kinerja yang bagus
Pendekatan MVC dalam pengembangannya
Menghasilkan URL yang sesuai dengan mesin pencari (Search Engine Friendly)
Mudah untuk dikembangkan
Berjalan baik di PHP
Mendukung Databse kebanyakan termasuk MySQL, MySQLi, MS SQL, Postgres, Oracle, SQLite, dan ODBC.
Pengaman aplikasi sangat diutamakan
Pengoperasian cache yang mudah
Banyak pustaka (libraries) dan helpers yang membantu kita dalam pembuatan aplikasi atau operasi yang kompleks seperti email, manipulasi gambar, validasi form, uploading file, session, aplikasi sehingga dapat menghemat sumber daya.
Gambar 2.4 Flowchart CodeIgniiter
http://digilib.mercubuana.ac.id/
33
2.14.2 MVC (Model, View, Controller) Beberapa permasalahn dapat muncul ketika suatu aplikasi yang sangat kompleks terdiri dari berbagai elemen mencangkup data akses, bisnis logic, dan presentasi suatu tampilan. Masalah tersebut terjadi karena ketergantungan antar elemen yang sangat tinggi, yang pada akhirnya berakibat pada sulitnya proses maintenance. Ketergantungan yang sangat tinggi (high couple) ini pula yang menyebabkan suatu elemen tidak dapat re-usable untuk aplikasi yang lain. Sehingga proses develop juga akan berjalan tidak efektif. Sebagai gambaran kasar seperti ini, semisal pada lapisan bisnis (business logic) terdapat beberapa elemen atau class diberikan method dan properti untuk keperluan akses ke Database ini. Apabila terjadi pada pola Database, tentu kita akan melakukan perbaikan pada seluruh class yang mempunyai method untuk akses ke Database. Hal ini akan berbeda jika koneksi ke Database dijadikan sebuah elemen class yang mandiri. Gambaran tersebut memang terlalu simple atau bahkan mungkin sangat jauh dari optimal untuk menggambarkan relevansi
implementasi MVC, tapi paling tidak sedikit
membuka pandangan. Untuk sederhananya MVC merupakan kependekan dari Model, View, Controller. MVC ini adalah bentuk pemograman yang digunakan untuk mengembangkan aplikasi berbasis web. Bentuk ini memisahkan antara antarmuka pengguna (user interface) dengan backend (yaitu interaksi dengan Database). Implementasi yang baik membiarkan pengembang mengubah user interface-nya fleksibilitas sebuah aplikasi dengan pemanggilan kembali Model atau Model yang sudah ada. Berikut adalah deskripsi dari MVC :
Model: Mempresentasikan struktur data yang dibangun. Umumnya kelas model berisi fungsi-fungsi yang membantu developer untuk mengelola, memasukkan, dan mengupdate informasi dalam Database
View:.view merupakan informasi yang disajikan untuk user, berupa tampilan user interface. View umumnya adalah tampilan sebuah halaman web itu sendiri, tetapi dalam CodeIgniter, view dapat juga menjadi bagian-
http://digilib.mercubuana.ac.id/
34
bagian atau penggalan-penggalan halaman seperti header atau footer. View dapat juga sebagai halaman RSS, atau tipe-tipe halaman lainnya.
Controller: Controller bertugas sebagai penghubung antara Model, View dan beberapa resource lainnya yang dibutuhkan untuk memproses HTTP request dan untuk meng-generate sebuah halaman web. Jadi secara singkat urutan dari sebuah request adalah sebagai berikut :
user berhubungan dengan view, dimana view inilah semua informasi ditampilakan. Saat user melakukan permintaan atau request, missal klik tombol maka request tersebut akan diproses oleh Controller. Apa yang harus dilakukan, data apa yang diiginkan, apakah ingin melihat data, atau memasukkan data atau mungkin melakukan validasi data terlebih dahulu, semua diproses oleh controller. Kemudian Controller akan meminta Model untuk menyelesaikan request, entah itu melakukan query atau apapun. Dari Model, data akan dikirimkan kembali untuk di proses lebih lanjut didalam Controller dan baru dari Controller data akan ditampilkan di View.
2.15 MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basisdata. SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunanya tidak cocok dengan pengguna GPL. MySQL merupakan implementasi dari sistem manajemen basisdata relasional RDBMS (Relational Database Management System) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). SQL (Structured Query Language) merupakan bahasa yang dirancang untuk berkomunikasi
dengan
database.
Tujuan
dirancang
http://digilib.mercubuana.ac.id/
SQL
ialah
untuk
35
mengefisiensikan dan menyederhanakan dalam membaca atau menulis data dari atau kedalam database. Terdapat tiga elemen penting dalam SQL.
1. Data Definition Language (DDL) Statmen-statmen yang berhubungan dengan pembuatan objek (misalnya table) dan pengelolaan strukturnya. 2. Data Manipulation Language (DML) Statmen-statmen yang berhubungan dengan pemanipulasian data didalam table 3. Data Control Language (DCL) Statmen-statmen control seperti COMMIT dan ROLLBACK
2.16 XAMPP XAMPP merupakan perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemograman PHP. Nama XAMPP merupakan singkatan dari X (empat sistem operasional apapun), Apache, MySQL, dan PHP. Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halam web yang dinamis. Berikut adalah tampilan utama pada XAMPP.
http://digilib.mercubuana.ac.id/
36
Gambar 2.5 Tampilan XAMPP 1.8.1 Sebelum menjalankan suatu aplikasi web anda harus menceklis form yang terdapat pada XAMPP Control Panel Application untung Running Apache dan MySQL terlebih dahulu agar hasil lebih maksimal. Berikut tampilannya
Gambar 2.6 Tampilan Running Apache dan MySQL XAMPP memiliki tiga bagian penting yang biasa digunakan pada umumnya yaitu:
http://digilib.mercubuana.ac.id/
37
a. HTDOC Merupakan folder tempat untuk meletakkan berkas-berkas yang dijalankan seperti PHP, HTML, dan Skrip lainnya. b. PHPMyAdmin Merupakan
bagian
mengelola
basisdata
MySQL
yang
terdapat
dikomputer. Cara membukanya dengan buka browser lalu ketikan alamat http://localhost/phpmyadmin,
maka
akan
muncul
tampilan
utama
phpMYAdmin. c. CONTROL PANEL Hanaya mengelola layanan service XAMPP. Seperti memulai (start) atau menghentikan program atau layanan.
2.17 pengujian black box Pengujian dilakukan dengan cara menjalankan atau mengeksekusi unit atau modul yang kemudian diamati apakah hasil dari unit tersebut sesuai dengan proses yang diinginkan. Dengan kata lain black box merupakan user testing, pengujian perangkat lunak dengan metode black box melibatkan client atau pelanggan Black Box memiliki klasifikasi testing yang mencangkup beberapa pengujian :
Pengujian Fungsional : Pada pengujian ini, perangkat lunak diuji untuk persyaratan fungsional. Pengujian dilakukan dalam bentuk tertulis untuk memeriksa apakah aplikasi berjalan seperti yang diharapkan. Walaupun pengujian fungsional sudah sering dilakukan dibagian akhir dari siklus pengembang, masingmasing komponen dan proses dapat diuji pada awal pengembangan, bahkan sebelum sistem berfungsi, pengujian ini sudah dapat dilakukan pada seluruh sistem. Pengujian fungsional meliputi seberapa baik sistem melaksanakan
fungsinya,
termasuk
perintah-perintah
manipulasi data, pencarian data dan proses bisnis.
http://digilib.mercubuana.ac.id/
pengguna,
38
Pengujian Beban Pada pengujian ini aplikasi akan diuji dengan beban berat atau masukan, seperti yang terjadi pada pengujian situs web, untuk mengetahui apakah aplikasi gagal atau kinerjanya menurun. Pengujian beban beroprasi pada tingkat beban standar, biasanya beben tertinggi akan diberikan ketika sistem dapat menerima dan tetap berfungsi dengan baik. Pengujian tidak bertujuan untuk merusak sistem dengan banyak membatasi dan menghilangkan kesulitan bagi pengguna dan memengaruhi area yang kuat untuk usabilitas maksimum.
Tujuan pengujian pada black box ini berusaha menemukan kesalahan seperti : a. Fungsi yang salah atau hilang. b. Kesalahan pada interface. c. Kesalahan pada struktur data atau akses basis data. d. Kesalahan performasi. e. Kesalahan inisialisasi dan tujuan akhir.
http://digilib.mercubuana.ac.id/