10 BAB 2 LANDASAN TEORI 1.1 Teori Umum Teori-teori yang bersifat umum yang digunakan dalam merancang aplikasi. Teori-teori yang digunakan meliputi teori Interaksi Manusia dan Komputer (IMK), Rekayasa Piranti Lunak (RPL), Unified Modeling Language (UML), web server, PHP Hypertext Preprocessor (PHP), dan database. 1.1.1 Interaksi Manusia dan Komputer (IMK) Interaksi Manusia dan Komputer (IMK) atau yang biasa juga dikenal sebagai Human Computer Interaction (HCI) adalah sebuah disiplin ilmu yang berfokus pada desain, evaluasi, dan implementasi dari sistem komputer interaktif untuk digunakan oleh manusia dengan studi terhadap fenomena- fenomena besar mengenai HCI tersebut (Anonim1, 2012). 1.1.1.1 Lima Faktor Manusia Terukur Mengacu pada pendapat Shneiderman dan Plaisant (2010), terdapat 5 (lima) faktor manusia terukur yang digunakan sebagai indikator evaluasi mengenai tingkat kualitas dari sebuah desain yaitu: 1. Waktu belajar Menyatakan berapa lama waktu yang dibutuhkan oleh user untuk mempelajari bagaimana menggunakan berbagai aksi yang relevan dalam melakukan suatu tugas.
49
Embed
BAB 2 LANDASAN TEORI Teori Umum - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00158-IF Bab2001.pdf · Berikut merupakan lapisan atau layer dari sebuah rekayasa
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
10
BAB 2
LANDASAN TEORI
1.1 Teori Umum
Teori-teori yang bersifat umum yang digunakan dalam merancang aplikasi.
Teori-teori yang digunakan meliputi teori Interaksi Manusia dan Komputer (IMK),
Rekayasa Piranti Lunak (RPL), Unified Modeling Language (UML), web server,
PHP Hypertext Preprocessor (PHP), dan database.
1.1.1 Interaksi Manusia dan Komputer (IMK)
Interaksi Manusia dan Komputer (IMK) atau yang biasa juga dikenal
sebagai Human Computer Interaction (HCI) adalah sebuah disiplin ilmu
yang berfokus pada desain, evaluasi, dan implementasi dari sistem komputer
interaktif untuk digunakan oleh manusia dengan studi terhadap fenomena-
fenomena besar mengenai HCI tersebut (Anonim1, 2012).
1.1.1.1 Lima Faktor Manusia Terukur
Mengacu pada pendapat Shneiderman dan Plaisant (2010),
terdapat 5 (lima) faktor manusia terukur yang digunakan sebagai
indikator evaluasi mengenai tingkat kualitas dari sebuah desain
yaitu:
1. Waktu belajar
Menyatakan berapa lama waktu yang dibutuhkan oleh
user untuk mempelajari bagaimana menggunakan berbagai aksi
yang relevan dalam melakukan suatu tugas.
11
2. Kecepatan performa
Menyatakan berapa lama waktu yang diperlukan untuk
mengerjakan suatu tugas.
3. Tingkat kesalahan oleh user
Mengukur berapa banyak dan jenis kesalahan apa yang
dilakukan oleh user ketika mengerjakan tugas. Sistem tersebut
harus memiliki tingkat kesalahan yang rendah bila sedang
digunakan oleh user.
4. Daya ingat
Seberapa baik user dapat memelihara ingatan mereka
dalam jangka waktu tertentu. Daya ingat berkaitan dengan waktu
belajar dan frekuensi user dalam menggunakan sistem, semakin
sering user menggunakan sistem maka semakin mudah user
mengingat sistem tersebut.
5. Kepuasan subjektif
Menyatakan tingkat kepuasan user dalam melihat
keseluruhan aspek pada antarmuka (interface). Hal tersebut dapat
dilakukan dengan melakukan interview atau kuesioner.
1.1.1.2 Delapan Aturan Emas
Berdasarkan Shneiderman dan Plaisant (2010), terdapat
Delapan Aturan Emas (Eight Golden Rules) yang digunakan sebagai
pedoman dalam merancang suatu antarmuka pengguna (user
interface) yang baik, yaitu:
12
1. Mempertahankan konsistensi
Bentuk konsistensi dalam perancangan antarmuka
pengguna (user interface) meliputi penggunaan warna, layout,
kapitalisasi, pemilihan jenis huruf, dan hal lainnya yang harus
konsisten diterapkan secara keseluruhan.
2. Memenuhi kegunaan yang umum
Mengenali kebutuhan user yang beragam dan
memudahkan dalam melakukan perubahan konten. Mencari
perbedaan user pemula dan user ahli, rentang usia, keterbatasan
kemampuan fisik, perbedaan teknologi merupakan panduan
dalam merancang interface. Menambahkan fitur-fitur untuk user
pemula seperti menambahkan penjelasan, dan memberi fitur-fitur
seperti shortcut untuk intermediate user dan untuk user ahli
membuat tampilan yang kompleks dapat meningkatkan kualitas
dari desain interface.
3. Memberikan umpan balik yang informatif
Pada setiap aksi yang dilakukan oleh user harus
disediakan umpan balik. Umpan balik tersebut harus dapat
memberikan visualisasi hasil dari aksi yang telah dilakukan oleh
user.
4. Merancang dialog penutupan
Urutan dalam setiap aksi haruslah terorganisasi ke dalam
suatu kelompok dengan urutan awal, tengah, dan akhir sehingga
mudah dimengerti oleh user.
13
Adanya umpan balik dapat memberikan pilihan untuk
menyiapkan ke kelompok aksi yang selanjutnya.
5. Memberikan penanganan kesalahan yang sederhana
Suatu sistem yang baik harus dapat menghindarkan user
dari kesalahan sebelum kesalahan itu terjadi. Jika user membuat
suatu kesalahan, antarmuka (interface) harus dapat mendeteksi
kesalahan dan memberikan informasi yang spesifik kepada user
untuk menangani kesalahan.
6. Memberikan kemudahan untuk kembali ke tindakan
sebelumnya
Sistem harus dapat memungkinkan untuk melakukan
pembalikan aksi. Hal ini dapat mengurangi kegelisahan user
karena user mengetahui bahwa kesalahan dapat diperbaiki.
Dengan demikian user akan semakin termotivasi untuk
melakukan penjelajahan yang tidak biasa dipakai dan user tidak
bingung jika mendapatkan pesan kesalahan.
7. Mendukung pusat kendali internal (internal locus of control)
User yang sudah berpengalaman menginginkan bahwa
mereka bertanggungjawab atas sebuah sistem maka sistem dapat
memberikan respons terhadap setiap aksi yang dilakukan oleh
user karena manusia yang memegang kontrol sistem.
14
8. Mengurangi beban ingatan jangka pendek
Keterbatasan manusia dalam mengolah informasi dalam
memori jangka pendek membutuhkan antarmuka (interface) yang
sederhana dan mengurangi pergerakan window. Yang dimaksud
pergerakan window seperti ketika user harus mengingat suatu
informasi pada satu layar dan informasi tersebut digunakan pada
layar yang lain.
1.1.2 Rekayasa Piranti Lunak
Rekayasa piranti lunak merupakan sebuah layered technology dalam
pembentukan suatu sistem atau aplikasi. Rekayasa piranti lunak meliputi
sebuah proses, metode untuk mengelola rekayasa dari sebuah software, dan
tools. Berikut merupakan lapisan atau layer dari sebuah rekayasa piranti
lunak.
Gambar 2.1 Layer dari Rekayasa Piranti Lunak
(Sumber: Pressman, Roger S., Software Engineering: A Practitioner’s
Approach 7th edition, 2010)
15
Dasar dari rekayasa piranti lunak ada pada layer proses. Proses
menentukan framework apakah yang harus digunakan sehingga
pembentukan teknologi rekayasa piranti lunak dapat berjalan secara efektif.
Proses dari sebuah software telah membentuk manajemen kontrol dasar dari
proyek software dan menentukan konteks metode teknis yang mana yang
akan digunakan, produk kerja (model, dokumen, data, laporan, formulir)
yang dihasilkan, hal-hal penting apa saja yang harus diperhatikan, mengecek
kembali kualitas yang akan dihasilkan, dan mengelola perubahan-perubahan
apa saja yang akan dilakukan.
Metode dari rekayasa piranti lunak menyediakan secara teknis
bagaimana membangun sebuah software. Metode meliputi sebuah daftar dari
tugas yang akan dikerjakan, termasuk komunikasi, analisis kebutuhan,
perancangan antarmuka, pembuatan program, percobaan program, dan
dukungan.
Tools dari rekayasa piranti lunak menyediakan dukungan otomatis
atau semi otomatis bagi proses dan metode yang digunakan. Ketika tools
telah terintegrasi satu sama lainnya, maka informasi yang dihasilkan oleh
sebuah tools dapat digunakan oleh tools yang lainnya (Pressman, 2010).
1.1.2.1 Agile Development
Agile development merupakan proses software modern yang
saat ini banyak digunakan karena proses ini didesain dengan cara
yang memungkinkan bagi development team untuk beradaptasi
secara cepat dengan perubahan-perubahan yang ada.
16
Perubahan-perubahan tersebut meliputi kebutuhan user,
kemajuan teknologi, perubahan budget serta perubahan lain yang
berdampak pada pengembangan software. Agile development
mengutamakan komunikasi yang efektif dengan user terutama
dengan sesama development team (Pressman, 2010).
1.1.2.2 Extreme Programming (XP)
Berdasarkan Pressman (2010), XP merupakan salah satu
pendekatan dalam agile development. Semua sifat-sifat dan
karakteristik yang ada pada agile development juga terdapat dalam
XP.
Dalam XP, terdapat 5 (lima) nilai yang menjadi dasar dalam
semua kegiatan XP, yaitu:
a. Komunikasi (communication)
Untuk mencapai komunikasi yang baik antara software
engineers dan para stakeholder, seperti fitur apa yang dibutuhkan
dan kegunaan software, XP menekankan adanya kolaborasi yang
baik, komunikasi yang efektif mengenai konsep software serta
adanya umpan balik terus menerus.
b. Kesederhanaan (simplicity)
Dalam mencapai kesederhanaan, XP membatasi
developer untuk merancang kebutuhan yang mendesak dibanding
kebutuhan yang akan datang.
17
Hal ini bertujuan agar mudah diimplementasikan pada
pemrograman. Jika perancangan ingin diubah atau ditingkatkan,
dapat dilakukan refactoring. Refactoring yang dimaksud adalah
mengubah struktur internal desain atau source code tetapi tidak
mengubah fungsi eksternal serta perilakunya.
c. Umpan balik (feedback)
Umpan balik berasal dari 3 (tiga) sumber yaitu
implementasi software itu sendiri, user, dan anggota development
team yang lain. Umpan balik diberikan setelah software
dilakukan pengujian (testing) apakah setiap operasi berjalan
sesuai fungsi yang ditetapkan. Umpan balik dilihat dari
implementasi output, fungsi, dan karakteristik use case.
d. Keberanian (courage)
Setiap tindakan yang dilakukan dalam praktek XP
menuntut keberanian atau kata yang tepat adalah disiplin.
Developer team dalam XP harus mempunyai kedisiplinan
(keberanian) dalam merancang kebutuhan sekarang, mengenali
kebutuhan di masa yang akan datang yang mungkin akan
berubah secara drastis, sehingga menuntut untuk merubah
perancangan bahkan source code.
18
e. Menghargai (respect)
Setiap anggota developer team memiliki nilai yang harus
dihargai oleh sesama anggota dan juga user dalam
pengembangan software tersebut. Ketika telah mencapai
keberhasilan dalam mengembangkan software, maka team akan
menghargai pula proses XP itu sendiri.
Terdapat 4 (empat) tahapan utama dalam perancangan
menggunakan XP berdasarkan Pressman (2010), yaitu:
1. Planning
Pada tahapan ini, developer team dimulai dengan
mengumpulkan persyaratan (requirement) yang memungkinkan
team mengerti tentang teknikal yang diperlukan dalam
pengembangan software. Kemudian team mulai melakukan
penyusunan user stories untuk menggambarkan output apa yang
diperlukan, fitur, dan kegunaan software yang akan dibuat.
Setiap story diberikan nilai dan diurutkan oleh user.
Developer kemudian menentukan waktu yang dikerjakan pada
setiap story ketika terdapat story yang membutuhkan waktu lebih
dari tiga minggu, user diminta untuk membagi story ke beberapa
bagian yang lebih sederhana.
Saat developer mengerjakan, user dapat menambahkan
story baru, mengubah nilai story bahkan menghapusnya. XP
team kemudian mempertimbangkan kembali dan melakukan
modifikasi sesuai rencananya.
19
2. Design
XP menerapkan prinsip KIS (Keep It Simple) dalam
desain atau perancangan. Desain yang digunakan menerapkan
implementasi dari story yang telah dibuat tanpa ditambahkan
atau dikurangi.
3. Coding
Pada tahapan ini, XP mendukung adanya proses
refactoring. Refactoring merupakan proses untuk mengubah
software system dimana struktur code berubah dan menjadi
sederhana namun hasil akhir yang ditampilkan tetap sama.
Setelah story selesai disusun dan tahap awal perancangan telah
selesai, developer team sebaiknya tidak langsung coding
melainkan melakukan testing dan evaluasi pada setiap story.
Setelah melewati testing, developer mulai melakukan coding.
4. Testing
Pada tahap ini, program yang telah selesai akan dilakukan
pengujian code dengan menggunakan unit test yang telah tersedia
dan dilakukan pengujian dengan menggunakan acceptance test
yang berasal dari user.
20
Gambar 2.2 Extreme Programming
(Sumber: Pressman, Roger S., Software Engineering: A
Practitioner’s Approach 7th edition, 2010)
1.1.3 Unified Modeling Language (UML)
Unified Modeling Language (UML) adalah satu kumpulan aturan atau
konvensi pemodelan yang digunakan untuk menentukan atau
menggambarkan sebuah sistem software yang berhubungan dengan objek.
Pada umumnya UML digunakan untuk menentukan, menggambarkan,
merancang dan mendokumentasikan model, deskripsi dari software atau
sistem perangkat lunak (Whitten dan Bentley, 2007).
1.1.3.1 Class Diagram
Class Diagram merupakan suatu gambaran objek-objek yang
menyusun sebuah sistem dan hubungan antar class tersebut (Whitten
dan Bentley, 2007).
21
Suatu class diagram terdapat 3 (tiga) bagian, yaitu:
1. Class Name
Merupakan nama dari suatu class yang digunakan sebagai
pembeda dari suatu objek.
2. Class Attributes
Merupakan atribut-atribut atau data yang ada pada class
tersebut.
3. Class Behaviors
Merupakan fungsi atau operasi yang dimiliki oleh class
tersebut.
Gambar 2.3 Struktur Class
Dalam suatu sistem, satu class dapat memiliki hubungan
dengan class lain. Hubungan yang terjadi antar class tersebut, yaitu:
1. Asosiasi
Asosiasi merupakan hubungan antara class yang satu dengan
class yang lain. Hubungan antar class tersebut dapat dibedakan
menjadi 2 (dua) jenis, yaitu:
22
a. Bi-directional
Pada hubungan bi-directional, masing-masing class memiliki
peran dalam hubungan tersebut.
Gambar 2.4 Contoh Bi-directional
b. Uni-directional
Pada hubungan uni-directional, hanya satu class yang
memiliki peran dalam hubungan tersebut.
Gambar 2.5 Contoh Uni-directional
2. Agregasi
Agregasi merupakan hubungan antar 2 (dua) class dimana satu
class merupakan bagian dari class lain. Pada hubungan agregasi
ini, jika suatu class yang menjadi bagian dari class yang lain
tidak akan dihapus meskipun class yang memilikinya dihapus.
Gambar 2.6 Contoh Agregasi
23
User
Order
3. Komposisi
Komposisi merupakan hubungan yang lebih erat antar 2 (dua)
class dibandingkan dengan agregasi. Pada hubungan ini, suatu
class yang menjadi bagian class yang lain akan terhapus ketika
class yang memilikinya dihapus.
Gambar 2.7 Contoh Komposisi
4. Generalisasi
Generalisasi atau sering disebut sebagai inheritance. Generalisasi
merupakan hubungan antara super class dan sub class. Semua
sub class akan memiliki apa yang dimiliki super class, tetapi
super class tidak memiliki apa yang hanya dimiliki oleh sub
class.
Gambar 2.8 Contoh Generalisasi
24
5. Visibility
Visibility digunakan untuk menentukan bagaimana suatu class
lain menggunakan attributes atau operation dari suatu class.
Tabel 2.1 Tabel Penjelasan Visibility
Visibility Simbol Deskripsi
Public + Visible pada semua class yang
berhubungan
Protected # Visible pada super class dan sub class
Private - Visible pada terhadap super class
Package ~ Visible pada semua class dalam satu paket
6. Multiplicity
Multiplicity mengindikasikan berapa banyak objek dari suatu
class yang terhubung dengan class lain.
Tabel 2.2 Tabel Penjelasan Multiplicity
Multiplicity Deskripsi
0 Nol
1 Satu (bisa tidak ditulis)
* Banyak
0..* Nol atau lebih
1..* Satu atau lebih
0..1 Nol atau satu
25
1.1.3.2 Use Case Diagram
Berdasarkan Whitten dan Bentley (2007), use case diagram
merupakan diagram yang menjelaskan interaksi antara sistem, sistem
eksternal dan user. Use case menggambarkan siapa yang
menggunakan sistem dan dengan cara apa user berinteraksi dengan
sistem.
1. Use Case
Menjelaskan atau mengidentifikasi suatu fungsi sistem
yang akan dikerjakan oleh user. Use case biasanya digambarkan
dalam bentuk elips dan nama dari use case bisa ditulis di atas,
bawah maupun di dalam elips (Whitten dan Bentley, 2007).
Gambar 2.9 Contoh Use case
2. Aktor
Segala sesuatu yang berinteraksi dengan sistem seperti
user, organisasi maupun sistem eksternal (Whitten dan Bentley,
2007).
Gambar 2.10 Contoh Aktor
26
user
transfer*
*
System
3. System Boundary
System boundary merupakan suatu batas pemisah antara
suatu sistem dengan daerah di luar sistem. System boundary
menentukan konfigurasi, ruang lingkup dan fungsi sistem
(Whitten dan Bentley, 2007).
Gambar 2.11 Contoh system boundary
4. Relationship
Berdasarkan Whitten dan Bentley (2007), terdapat
beberapa hubungan antar dua simbol di dalam use case diagram,
yaitu:
a. Associations
Menggambarkan adanya hubungan antara aktor dan
use case. Hubungan yang terjadi dapat digambarkan dengan
simbol garis dengan atau tanpa anak panah.
27
Simbol garis dengan anak panah menunjukan aktor
mengindikasikan use case. Simbol garis tanpa anak panah
menunjukan hubungan antara use case dengan aktor
penerima.
Gambar 2.12 Contoh Association Relationship
b. Extends
Menggambarkan bahwa suatu use case merupakan
hasil extends dari suatu use case awal dan memiliki fungsi
tertentu dari use case awal.
Gambar 2.13 Contoh Extends Relationship
28
c. Uses (Includes)
Menggambarkan bahwa terdapat dua atau lebih use
case menjalankan fungsi atau langkah yang sama. Langkah-
langkah yang sama tersebut akan membentuk suatu use case
baru yang disebut juga use case abstrak. Use case abstrak
digunakan untuk mengurangi redundansi dalam use case
diagram.
Mengatur Playlist
Play
Pause
Volume
«uses»
«uses»
«uses»
Gambar 2.14 Contoh Uses Relationship
d. Depends On
Menggambarkan bahwa suatu use case yang saling
berhubungan tidak bisa dilakukan jika use case tertentu
belum dilakukan.
Gambar 2.15 Contoh Depends On Relationship
29
e. Inheritance
Menggambarkan bahwa terdapat suatu aktor abstrak
yang berhubungan dengan dua atau lebih aktor dalam sistem.
Aktor yang berhubungan memiliki langkah yang dimiliki
aktor abstrak. Aktor abstrak digunakan untuk
menyederhanakan suatu rancangan diagram.
Gambar 2.16 Contoh Inheritance Relationship
1.1.3.3 Use Case Narrative
Use case narrative merupakan suatu penjelasan berupa teks
tentang use case dan menjelaskan bagaimana aktor berinteraksi
dengan sistem dalam menjalankan tugas (Whitten dan Bentley,
2007).
Tabel 2.3 Contoh Use Case Narrative
Use Case Melakukan Log In
Actor User
User
Admin Casier
Melihat data
Mengubah data
mencatat transaksi
<<inherits>><<inherits>>
**
*
*
* *
30
Description Use case ini mendeskripsikan proses melakukan
log in pada aplikasi
Precondition User telah melakukan proses instalasi aplikasi
pada smartphone kemudian menjalankan
aplikasi tersebut
Flow of Events User memilih tombol log in pada menu utama
pada aplikasi kemudian mengisi data-data yang
diperlukan seperti username dan password
Postcondition User berhasil log in pada aplikasi
2.1.3.4 Sequence Diagram
Berdasarkan Whitten dan Bentley (2007), sequence diagram
merupakan suatu model logika dari use case dengan menggambarkan
interaksi antara aktor dan sistem. Terdapat beberapa elemen yang
ada pada sequence diagram, yaitu:
a. Aktor (Actor)
Simbol yang digunakan untuk mewakili user dalam berinteraksi
dengan suatu objek.
Gambar 2.17 Aktor
31
b. Object
Simbol yang digunakan untuk mewakili kelas-kelas dalam class
diagram.
Gambar 2.18 Object
c. Lifelines
Simbol yang digunakan untuk menunjukkan suatu life dari suatu
objek.
Gambar 2.19 Lifelines
d. Activation bars
Simbol yang digunakan untuk menggambarkan lamanya suatu
objek digunakan.
32
Gambar 2.20 Activation bars
e. Input messages
Simbol yang digunakan untuk menyampaikan method dari suatu
objek.
Gambar 2.21 Input messages
f. Output messages
Simbol yang digunakan untuk menyampaikan jawaban dari
method yang disampaikan dari suatu objek.
Gambar 2.22 Output messages
g. Self-call
Simbol yang digunakan untuk menyampaikan method ke objek
itu sendiri.
33
Gambar 2.23 Self-call
h. Frame
Simbol yang digunakan untuk menandakan area pada diagram
yang mengalami perulangan (loop), mengalami seleksi
(alternate) dan memiliki suatu ketentuan (optional).
Gambar 2.24 Frame
2.1.3.5 Activity Diagram
Berdasarkan Whitten dan Bentley (2007), activity diagram
merupakan suatu gambaran alur dari sebuah proses bisnis, langkah
pada suatu use case dan logika dari suatu objek. Terdapat beberapa
elemen yang digunakan pada activity diagram, yaitu:
1. Initial node
Simbol yang digunakan untuk menandakan dimulainya suatu
proses.
Gambar 2.25 Initial node
Loop
34
2. Actions
Simbol yang digunakan untuk menunjukkan suatu aktivitas.
Gambar 2.26 Actions
3. Flow
Simbol yang digunakan untuk menunjukkan jalur dari suatu
aktivitas ke aktivitas lain.
Gambar 2.27 Flow
4. Decision dan Merge
Simbol yang digunakan untuk menunjukkan suatu keadaan
kondisional.
a. Decision
Kondisi untuk memilih salah satu jalur aktivitas.
b. Merge
Kondisi bergabungnya jalur aktivitas yang dipisahkan oleh
decision.
Gambar 2.28 Decision dan Merge
35
5. Fork dan Join
Simbol yang digunakan untuk menunjukkan adanya keadaan
paralel.
a. Fork
Menunjukkan adanya dua atau lebih actions yang
berlangsung secara bersamaan.
b. Join
Menunjukkan proses paralel yang sudah berakhir.
Gambar 2.29 Fork dan Join
6. Activity final
Simbol yang digunakan untuk menandakan berakhirnya suatu
proses.
Gambar 2.30 Activity final
2.1.4 Web Server
Web server merupakan sebuah web yang menyediakan fasilitas untuk
menyimpan dan mengakses informasi dan layanan. User dapat mengaksesnya
melalui browser.
36
Web server juga merupakan sebuah perangkat lunak dalam server
yang berfungsi menerima permintaan(request) berupa halaman web melalui
HTTP atau HTTPS dari client yang dikenal dengan browser web dan
mengirimkan kembali (response) hasilnya dalam bentuk halaman-halaman
web yang umumnya berbentuk dokumen HTML (Eaglestone dan Ridley,
2001).
2.1.5 PHP Hypertext Preprocessor (PHP)
PHP merupakan sebuah bahasa pemrograman untuk membangun
website yang dinamis dan interaktif. Secara umum, program PHP banyak
digunakan pada web server dan menampilkan halaman web sesuai
permintaan user.
Salah satu kelebihan PHP adalah PHP dapat diimplementasikan
(embed) dengan HTML. PHP banyak digunakan pada Internet Service
Providers (ISPs) serta perusahaan web hosting sehingga banyak developer
menggunakannya saat ini (Doyle, 2010).
37
2.1.6 Database
Database merupakan kumpulan data yang berelasi secara logika
beserta deskripsinya, dirancang untuk memberikan informasi yang
dibutuhkan oleh suatu organisasi. Itu berarti bahwa database merupakan
tempat penyimpanan data yang besar dimana data tersebut dapat digunakan
oleh banyak pengguna secara bersamaan. Seluruh item database tidak hanya
dimiliki oleh satu departemen melainkan dapat digunakan sebagai sumber
daya bersama dalam suatu perusahaan (Connolly dan Begg, 2010).
2.1.7 Teknologi Mobile Phone
Mobile phone merupakan sebuah portable device yang
memungkinkan user untuk dapat melakukan serta menerima panggilan
telepon melalui gelombang radio atau transmisi satelit. Menurut Fling (2009),
mobile phone berkembang dengan pesat di pasar mobile global.
Mobile phone pada awalnya memiliki ukuran yang besar dan antena
yang panjang, namun seiring dengan berkembangnya teknologi, mobile
phone saat ini memiliki ukuran yang lebih kecil dibanding pendahulunya
(seperti pada gambar 2.31 dilihat dari kiri ke kanan).