7
2.1
Internet adalah kumpulan jaringan terbesar yang menghubungkan jutaan
perangkat dengan perangkat lainnya di seluruh dunia (Shelly & Vermaat,
2011:11).
2.2
World Wide Web (WWW)
atau Web
terdiri atas sekumpulan dokumen
elektronik di seluruh dunia.Setiap dokumen disebut dengan Web Page, yang
dapat mengandung teks, grafik, animasi, audio dan video (Shelly & Vermaat,
2011:80).
2.3
Web 2.0adalah website yang menyediakan sarana bagi pengguna untuk
berbagi informasi personal, serta memungkinkan pengguna memodifikasi
konten website (Shelly & Vermaat, 2011:462).
2.4
Hypertext Markup Language (HTML)
merupakan sebuah bahasa yang
digunakan programmer
untuk membentuk suatu dokumen untuk ditampilkan
ke dalam web (Shelly & Vermaat, 2011:678).
2.5
Cascading Style Sheet (CSS)
merupakan suatu bahasa yang digunakan
untuk menjelaskan bagaimana suatu dokumen yang ditulis dengan markup
language ditampilkan seperti HTML
ditampilkan. Dengan CSS, user
dapat
mengontrol bagaimana suatu teks ditampilkan, style
dari font, jumlah spasi
antar paragraf, ukuran kolom, background, serta berbagai efek visual lainnya.
Salah satu keuntungan utamanya adalah CSS
dapat digunakan di berbagai
halaman, dengan kata lain user
dapat mengubah style dari satu website tanpa
perlu mengubah style
dari setiap halaman satu per satu. (Pouncey & York,
2011:3)
|
8
2.6
JavaScript
adalah sebuah bahasa pemograman yang memungkinkan
dalam menyempurnakan aplikasi web statis dengan menyediakan konten yang
dinamis, dan interaktif.
Dengan keahlian tersebut dapat membuat suatu
halaman lebih berwarna sehingga menarik pengunjung untuk tetap ingin
mengunjungi halaman tersebut. (Wilton & McPeak, 2011:).
2.7
JQuery
adalah sebuah libraryJavaScript
yang dibuat untuk membantu
para perancang dan pengembang web dalam menulis dan memperluas interaksi
JavaScript
secara cepat dan singkat dengan menggunakan kumpulan fungsi
yang telah ditentukan menggunakan fungsi asli dari JavaScript
itu sendiri
(Rutter, 2011:2).
2.8
Javascript Object Notation (JSON) merupakan format data yang paling
sering digunakan sebagai tempat pertukaran data.JSON
dikembangkan oleh
Douglas Crockford.JSON
adalah format, bukan sebuah bahasa.JSON
dapat
digunakan di web aplikasi untuk melakukan transfer data (Sai Srinivas
Sriparasa, 2013:1)
2.9
Asynchronous Javascript and XML (AJAX) adalah kumpulan teknologi
yang memberikan client-side
bagian dari aplikasi web untuk terus menerus
memperbarui bagian dari dia sendiri dari web server.
Dengan menggunakan
AJAX user tidak perlu mengirimkan web form ataupun meninggalkan halaman
yang sedang dikunjungi. Bahasa pemograman client side
seperti JavaScript
membuat perintah secara asynchronous
dan non-blocking
untuk meminta
bagian data dari suatu halaman yang dapat berupa data mentah yang kemudian
akan diubah menjadi HTML pada client side, ataupun berupa data yang sudah
siap untuk ditanamkan di halaman HTML(Hoffman & Sullivan, 2007:2).
2.10
PHP : Hypertext Preprocessor (PHP)adalah
sebuah bahasa
pemograman server-sidedan bersifat Open Sourceyang dirancang secara khusus
untuk web. Dalam halaman HTML
dapat dicantumkan kodingan PHP yang
|
9
akan dikerjakan setiap kali halaman tersebut dikunjungi (Welling & Thomson,
2005:2).
2.11
Model-View-Controller (MVC)
adalah sebuah pola perancangan
software yang dibangun dengan menghubungkan 3 komponen utama yaitu
model, view, dan controller (Pitt, 2012:1).
Model merupakan tempat untuk menyimpan logika bisnis dalam aplikasi
dimana logika bisnis yang dimaksud berupa hal
hal spesifik yang
menjelaskan tentang bagaimana aplikasi menyimpan data, atau menggunakan
third party services, untuk memenuhi kebutuhan bisnis.View merupakan tempat
untuk menyimpan semua elemen user interface dalam aplikasi, seperti markup
HTML, CSS dan file javascript. Controller
merupakan komponen yang
menghubungkan Model
dan View.Controller mengontrol bagaimana aplikasi
akan merespon terhadap interaksi user dalam suatu view.
2.12
Codeigniter (CI) merupakan salah satu frameworkPHP yang digunakan
untuk mengembangkan web aplikasi. Tujuannya adalah untuk memungkinkan
user
untuk mengembangkan proyek lebih cepat dibandingkan harus menulis
code dari awal dengan cara menyediakan sekumpulan libraries
untuk task
task
yang biasa diperlukan, tampilan user interface
yang sederhana, serta
struktur logika untuk mengakses libraries tersebut. CI memungkinkan user
untuk meminimalkan jumlah code
dalam perancangan aplikasi. (Anonymous,
2006)
2.13
Menurut Shneiderman dan Plaisant (2005, 74), ada delapan aturan emas
yang dapat diaplikasikan dalam perancangan user interface, yaitu:
1.
Strive for consistency(berusaha untuk konsisten)
Banyak bentuk dari konsistensi yang harus diperhatikan dalam merancang
user interface.Beberapa diantaranya adalah harus memiliki konsistensi
dalam urutan aksi di situasi yang serupa, memiliki menu, warna, layout dan
font yang sama.
|
10
2.
Cater to universal usability(menyediakan fungsi yang umum)
User interface harus dapat menjawab kebutuhan dari user yang berbeda-
beda. Contohnya dengan menambahkan fitur explanation untuk novice user
dan menambahkan fitur shortcut untuk
expert user.
3.
Offer informative feedback(memberikan umpan balik yang informatif)
Untuk setiap aksi yang dilakukan diharapkan adanya suatu umpan balik
bagi user.Respon yang diberikan tergantung dari aksi yang dilakukan oleh
user.
4.
Design dialog to yield closure.(merancang dialog untuk mengakhiri suatu
aksi)
Urutan suatu aksi haruslah diorganisasi berdasarkan kelompok tertentu dari
awal, tengah dan akhir. Umpan balik yang informatif pada akhir suatu aksi
kepada userakan memberikan kepuasan kepada user
bahwa aksi yang
mereka lakukan telah berhasil dengan baik dan menjadi pertanda untuk
melakukan aksi selanjutnya.
5.
Prevent errors(mencegah kesalahan)
Perancangan suatu sistem haruslah dibuat sedemikian rupa sehingga user
tidak melakukan kesalahan.Jika user melakukan kesalahan maka sistem
seharusnya dapat mendeteksi dan menawarkan.recovery yang sederhana,
konstruktif dan spesifik.
6.
Permit easy reversal of actions(mudah untuk kembali ke aksi sebelumnya)
Setiap aksi haruslah dirancang sedemikian rupa, sehingga user
dapatkembali ke keadaan sebelum aksi dijalankan. Hal ini dapat membuat
user lebih berani untuk mengeksplorasi sistem yang dibuat dan memilih
options yang tidak familiar.
7.
Support internal locus of control(mendukung pusat kendali internal)
User
yang berpengalaman biasanya memiliki keyakinan bahwa mereka
bertanggungjawab terhadap sistem dan sistem akan memberikan respon
terhadap aksi yang mereka lakukan. Respon yang mengejutkan, urutan yang
aneh dalam memasukkan data dan kesulitan dalam memperoleh informasi
yang diperlukan serta ketidakmampuan dalam mendapatkan hasil sesuai
aksi tertentu akan menimbulkan kekacauan dan keraguan bagi user.
8.
Reduce short term memory load(mengurangi beban memori jangka pendek)
|
![]() 11
Keterbatasan manusia dalam mengelola memori jangka pendek membuat
user membutuhkan suatu tampilan yang sederhana, pengaturan dalam
multipage, pergerakan window yang sesedikit mungkin serta waktu training
yang cukup dan optimal.
2.14
Menurut Whitten (2007:317), Data flow diagram adalah sebuah model proses
yang digunakan untuk menggambarkan aliran data yang ada pada suatu sistem
atau proses yang dikerjakan. Notasi pada data flow diagram yang digunakan
adalah:
Lambang
Pengertian
Penjelasan
External Agent
Manusia, organisasi,
atau unit organisasi
yang berinteraksi
dengansistem
Process Name
Nama
proses
yang
dikerjakan oleh sistem
Data Flow
Arusdatayangkeluar
danyangmasukdalam
sistem
Data Store
Tempat
penyimpanan
data
|
![]() 12
2.15
Menurut Whitten dan Bentley (2007: 371), UML (Unified Modelling
Languange) adalah satu set permodelan yang digunakan untuk menggambarkan
sistem informasi berorientasi objek. UML berguna untuk memberikan
gambaran jelas tentang sistem yang akan dibangun. Contoh nyata dari UML
adalah permodelan untuk membangun sebuah rumah. UML akan menyediakan
perspektif mengenai listrik, air conditioning, plumbing dan lain-lain.
2.15.1
Menurut Whitten dan Bentley (2007: 371), Use case diagram
adalah jenis UML yang menggambarkan interaksi antara sistem, sistem
eksternal dan pengguna. Dengan kata lain, use case diagram
menggambarkan siapa saja yang akan menggunakan dan bagaimana
user akan menggunakan sistem.
Use Case Diagram terdiri dari beberapa bagian yaitu (Whitten &
Bentley, 2007:246):
2.15.1.1
Aktor adalah semua hal yang berinteraksi dengan use
case di dalam sistem. Aktor digambarkan dengan stick figure
yang diberi nama peran dari actor tersebut.
|
![]() 13
2007:247)
Terdapat 4 tipe utama dari actor pada use case diagram:
a.
Primary business actor
Primary business actor
adalah stakeholder
yang
mendapatkan keuntungan dari eksekusi use case dengan
menerima sesuatu yang terukur atau nilai yang dapat diamati.
b.
Primary system actor
Primary system actor
adalah stakeholder
yang secara
langsung berinteraksi dengan sistem yaitu untuk
menggerakkan sistem tertentu.
c.
External server actor
External server actor adalah stakeholder
yang menanggapi
permintaan dari use case.
d.
External receiver actor
External receiver actor adalah stakeholder
yang bukan
merupakan aktor utama tetapi mendapatkan
hasil yang
terukur atau nilai yang dapat diamati dari use case.
2.15.1.2
Relationship
digambarkan sebagai garis di antara 2
simbol dalam use case diagram. Arti dari masing-masing
relationship berbeda tergantung dari garis yang digambarkan
dan jenis symbol yang menghubungkan.
Ada 3 jenis relationship dalam use case diagram yang
dipakai pada pembuatan aplikasi ini yaitu:
|
![]() 14
1.
Associations
Association adalah relasi antara aktor dengan use case
yang digambarkan dengan sebuah garis dengan atau tanpa
anak panah. Association dengan anak panah berarti use
case digerakkan oleh aktor sedangan tanpa anak panah
mengindikasikan interaksi antara use case dengan
external server atau receiver actor.
2.
Depends On
Depends On adalah sebuah relasi yang mengindikasikan
bahwa sebuah use case tidak dapat dilakukan sebelum
use case diselesaikan. Depends On digambarkan dengan
garis berpanah dengan label <<depends on>>.
3.
Inheritance
Inheritance pada use case diagram adalah relasi antara
aktor yang dibuat untuk menyederhanakan
|
![]() 15
penggambaran ketika seorang abstract actor mewariskan
perannya kepada aktor-aktor lain.
2.15.2
Use Case Narrative adalah deskripsi tekstual dari business event
dan bagaimana user akan
berinteraksi dengan sistem untuk
menyelesaikan suatu tugas. (Whitten & Bentley, 2007:250)
|
![]() 16
|
![]() 17
2.15.3
Menurut Whitten dan Bentley (2007: 400), Class diagram
adalah jenis UML yang menggambarkan struktur kelas dan hubungan
antar kelas dalam suatu sistem.
Sebuah kelas dengan kelas lainnya terhubun dalam sebuah garis
yaitu association beserta dengan multiplicity-nya.Berikut adalah notasi
dari association dan multiplicity antar class (Whitten & Bentley,
2007:377):
Bentley, 2007:377)
|
![]() 18
Di dalam class diagram terdapat konsep aggregation dan
composition. Aggregation adalah hubungan dimana sebuah class whole
mengandung satu atau banyak class part sedangkan composition adalah
hubungan dimana kelas whole bertanggungjawab untuk masa aktif kelas
part miliknya. Composition adalah hubungan yang lebih kuat daripada
aggregation. (Whitten & Bentley, 2007:378)
Bentley, 2007:379)
Bentley, 2007:379)
|
19
2.15.4
Sequence diagram adalah jenis UML yang menggambarkan
bagaimana aktor berinteraksi dengan sistem dalam sebuah use case.
Diagram ini mengilustrasikan bagaimana pesan terkirim dan diterima
dalam suatu urutan. (Whitten & Bentley, 2007:394)
Notasi yang digunakan dalam sequence diagram adalah sebagai
berikut (Whitten & Bentley, 2007:394-395):
1.
Actor,
Actor adalah yang berinteraksi dengan sistem dan memulai use case.
2.
System
System
merupakan box yang mengindikasikan sistem sebagai
keseluruhan. Tanda titik dua (:) adalah notasi standar pada sequence
diagramuntuk mengindikasikan sistem yang berjalan.
3.
Lifeline
Lifeline
merupakan garis putus-putus yang arahnya vertikal dari
aktor untuk mengindikasikan panjang dari sequence tersebut.
4.
Activation bar
Activation bar
adalah bar yang diatur pada lifeline untuk
mengindikasikan kehidupan atau keaktifan dari sequence.
5.
Input message
Input message adalah panah horisontal dari actor ke sistem untuk
mengindikasikan pesan yang di-input. Pada UML Convention, input
message
diawali dengan huruf kecil, ditulis tanpa spasi dan kata
tambahan diawali dengan huruf kapital.
6.
Output message
Output message adalah panah horisontal dari sistem ke actor dengan
garis putus-putus.
7.
Receiver actor
Receiver actor adalah actor-actor lain atau sistem eksternal yang
menerima pesan sistem.
8.
Frame
Frame adalah sebuah box yang melingkupi satu atau lebih pesan
untuk dibagi-bagi ke dalam fragment.
|
![]() 20
2.16
2.16.1
Database adalah kumpulan data terintegrasi yang dikelola dan
dikontrol secara terpusat.Database biasanya menyimpan informasi
tentang lusinan atau ratusan class.
Informasi yang disimpan ini
termasuk class attributes bersamaan dengan hubungan antar class.
(Satzinger et al, 2005:398)
|
21
2.16.2
Database Management System (DBMS) adalah sistem software
yang mengelola dan mengontrol akses ke dalam database.DBMS dijual
dan di-install terpisah dari komponen sistem software
lainnya.(Satzinger et al, 2005:398)
2.16.3
Table adalah sebuah data dua dimensi yang terdiri dari baris dan
kolom.Table dapat disebut sebagai relation. (Satzinger et al, 2005:409)
2.16.4
Attribute adalah sebuah kolom dalam relational database.
Attribute dapat disebut sebagai field. (Satzinger et al, 2005:410)
2.16.5
Menurut Satzinger et al (2005:410), Key adalah atribut yang
mengandung nilai unik untuk setiap baris dalam sebuah tabel di
relational database. Terdapat banyak jenis key dalam relational
database, contohnya adalah primary key dan foreign key. Primary key
adalah key yang digunakan untuk mengidentifikasi secara unik sebuah
baris dalam tabel di relational database. Foreign key adalah attribute
value yang disimpan dalam sebuah tabel dan juga merupakan primary
key pada tabel lain di dalam sebuah relational database.
2.17
Menurut Satzinger et al, (2005: 409), untuk mengubah sebuah class
diagram menjadi relational database diperlukan beberapa langkah yaitu:
1.
Membuat tabel untuk setiap class.
Tahapan pertama dalam membuat relational database adalah dengan
memindahkan setiap class pada class diagram menjadi sebuah tabel. Nama
atribut dari tabel disamakan dengan class diagram
dan kamus data untuk
mencegah kebingungan.
2.
Memilih primary key untuk setiap tabel.
|
22
Pada tahap ini designer harus memilih primary key
untuk masing-masing
tabel.Jika dalam sebuah tabel telah ada sebuah atau sekumpulan atribut
yang unik maka atribut tersebut dapat dipilih sebagai primary key.Bila
dalam tabel tersebut belum ada atribut unik maka designer harus membuat
primary key.
3.
Menambahkan foreign key untuk menunjukkan one-to-many associations.
Foreign key
menunjukkan hubungan antar tabel yang memiliki
associations.
4.
Membuat tabel baru untuk menunjukkan hubungan many-to-many.
Bila terdapat many-to-many associations, tabel tersebut harus dipisahkan
menjadi beberapa tabel dan memiliki lebih dari satu primary key.
5.
Merepresentasikan hirarki dari class.
Hirarki dari class ditunjukkan dengan hubungan parent class dengan child
class, dimana child class
mewarisi sebagian atau keseluruhan atribut dan
method
dari parent class.
Pewarisan sifat ini dapat digambarkan dengan 2
cara, yaitu:
a.
Mengkombinasikan seluruh tabel ke dalam sebuah tabel yang
mengandung seluruh atribut dari semua class kecuali keys yang dibuat
pada child class.
b.
Menggunakan tabel-tabel terpisah untuk merepresentasikan setiap child
class dan menggunakan primary key dari parent class
sebagai primary
key dari tabel-tabel child class.
6.
Mendefinisikan referential integrity.
Memastikan bahwa setiap foreign key
mereferensi kepada sebuah primary
key dari tabel lain.
7.
Mengevaluasi kualitas skema dan membuat perbaikan yang diperlukan.
Sebuah high quality data model harus memiliki fitu-fitur berikut:
a.
Keunikan dari setiap baris tabel dan primary keys.
b.
Tidak memiliki data redundan.
c.
Kemudahan dalam mengimplementasikan perubahan data model
di
masa yang akan datang.
Salah satu cara dalam melakukan evaluasi redundansi data adalah
normalisasi. Normalisasi adalah sebuah teknik yang memastikan
kualitas dari database schema dengan meminimalisir redundansi
|
23
data.Normalisasi didasari oleh functional dependency dan beberapa
bentuk normal yaitu:
a.
First Normal Form (1NF)
Sebuah tabel dikatakan dalam bentuk ini bila tidak memiliki
sekumpulan atribut yang berulang.
b.
Second Normal Form (2NF)
Sebuah tabel dikatakan dalam bentuk ini bila sudah dalam 1NF dan
setiap atribut non key
memiliki functional dependency terhadap
keseluruhan primary key.Functional dependency sendiri adalah
hubungan one-to-one antara dua atribut.
c.
Third Normal Form
Sebuah tabel dikatakan dalam bentuk ini bila sudah dalam 2NF dan
tidak ada atribut non key yang bergantung pada non key lainnya.
8.
Memilih tipe data yang sesuai dan batasan nilai untuk setiap kolom bila
diperlukan.
2.18
Terdefinisi dalam 4 nilai (Pressman, 2010:65), yaitu:
1.
Interaksi dan personal lebih penting dari pada proses dan alat.
2.
Perangkat lunak yang berfungsi
lebih penting daripada dokumentasi yang
lengkap.
3.
Kolaborasi dengan klien lebih penting dari pada negosiasi kontrak.
4.
Respon terhadap perubahan lebih penting daripada mengikuti rencana.
2.19
XP (Extreme Programming)
merupakan metode yang paling sering
digunakan dari Agile Software Development.XP
terdiri atas 5 nilai yang
membentuk dasar dari setiap tugas yang dilakukan sebagai bagian dari XP
(Pressman, 2010:72).
1.
Communication atau Komunikasi
2.
Simplicity atau Kemudahan
3.
Feedback atau umpan balik
4.
Courage atau keberanian
5.
Respect atau rasa hormat
|
![]() 24
Proses dari XP terdiri atas 4 tahap (Pressman, 2010:73), yaitu:
Gambar 2.11 Proses dalam Extreme Programming (Pressman,2010:73)
1.
Planning (Perencanaan)
Aktivitas perencanaan dimulai dengan mengumpulkan kebutuhan
(requirement)
2.
Design (Perancangan)
Proses desain pada XP mengikuti prinsip KIS (Keep It Simple). Desain yang
simple lebih diutamakan dibandingkan dengan representasi yang kompleks.
Jika ditemukan masalah selama proses perancangan, XP
menyarankan
untuk segera membuat prototype operasional dari masalah desain tersebut,
dan kemudian mengimplementasikan dan mengevaluasinya. Tujuannya
adalah mengurangi resiko ketika implementasi yang sebenarnya dilakukan.
3.
Coding
Setelah story dikembangkan dan desain awal dikerjakan, para developer
tidak langsung melakukan coding tetapi mengevaluasi setiap story yang
telah didesain. Konsep mendasar yang digunakan selama tahap ini adalah
pair programming.
|
25
4.
Testing (Pengujian)
Dalam tahap ini terdapat dua pengujian yaitu individual unit test dan
acceptance test (customer test). Individual unit test merupakan tahap
pengujian integrasi serta validasi fungsionalitas sebuah sistem.Acceptance
test yang dikenal dengan customer test merupakan tahap pengujian terhadap
fitur-fitur utama untuk dievaluasi kembali sesuai dengan tahap
perencanaan.
2.20
SQL
adalah
suatu
bahasa
pemograman
yang digunakan untuk
menghasilkan, memanipulasi, dan mengambil data dari suatu database
relasional. Dengan mempelajari SQL akan memberikan manfaat seperti lebih
mudah dalam memahami kerangka database yang digunakan untuk menyimpan
data aplikasi (Beaulieu, 2009:ix).
2.21
Event Management
didefinisikan sebagai organisasi dan koordinasi
dari aktivitas yang dibutuhkan untuk mencapai tujuan dari event (Bladen et
all, 2012:2).
2.22
Menurut Kamus Besar Bahasa Indonesia (kbbi.web.id), manajemen
adalah penggunaan sumber daya secara efektif untuk mencapai sasaran. Kata
ini memiliki arti yang hampir sama dengan kata pengelolaan yang menurut
Kamus Besar Bahasa Indonesia berarti mengendalikan, menyelenggarakan atau
proses melakukan kegiatan tertentu dng menggerakkan tenaga orang lain.
2.23
E-learning adalah semua kegiatan pelatihan menggunakan media
elektronik atau teknologi informasi (Effendi dan Zhuang, 2005:6).
2.24
HTML5 Canvas adalah area bitmap dari layar yang dapat dimanipulasi
dengan JavaScript.HTML5 Canvas
menggambar kembali layar bitmap pada
|
26
setiap frame menggunakan API canvas yang dipanggil melalui
JavaScript(Fulton dan Fulton, 2013:1).
2.25
TCPDF
merupakan library dari PHP
yang digunakan untuk men-
generate laporan dalam bentuk PDF, termasuk teks, tabel, konversi dari bentuk
HTML, hyperlink, dan gambar. Web services
dapat menggunakan TCPDF
untuk membuat sebuah dokumen secara dinamis dan dapat dilihat melalui web
browser ataupun dikirim melalui email(Whitington, 2011:117).
|