library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1-00184-IF... · Web...
Transcript of library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2DOC/2012-1-00184-IF... · Web...
BAB 2
LANDASAN TEORI
2.1 Teori Umum
2.1.1 Rekayasa Perangkat Lunak (Software Engineering)
Menurut Pressman (2010, p1) software engineering meliputi proses,
koleksi dari method dan alat yang memungkinkan profesional untuk
membuat software computer berkualitas. Software engineers membangun
dan menyongkong software, dan secara virtual semua menggunakannya
secara langsung atau tidak langsung.
Software Engineering penting karena memungkinkan kita untuk
membangun sistem yang rumit secara teratur dan berkualitas.
LOOK
2.1.2 Software Process
Menurut Pressman (2010, p30) software process merupakan dialog
dimana pengetahuan diwujudkan dalam perangkat lunak. Proses ini
menyediakan interaksi antara pengguna dan desainer, antara pengguna
dengan alat berkembang, antara desainer dengan alat berkembang. Proses
tersebut berulang-ulang dimana alat berkembang sendiri berfungsi sebagai
media komunikasi, dengan masing-masing babak baru dari dialog yang
memunculkan pengetahuan yang lebih berguna bagi orang-orang yang
terlibat. Terdapat lima kerangka kerja umum untuk software process:
7
8
1. Komunikasi
2. Perencanaan
3. Pemodelan
4. Konstruksi
5. Penyebaran
2.1.2.1 Incremental Proccess Model
Incremental Proccess Model berdasarkan Pressman
(2010,p41) dibagi menjadi beberapa tahap:
a. Communication
Sangat penting untuk berkomunikasi dengan customer dan
para stakeholder untuk memahami tujuan proyek dan
mengumpulkan persyaratan yang membantu mendefinisikan
fitur perangkat lunak dan fungsinya.
b. Planning
Perencanaan mendefinisikan kerja rekayasa perangkat
lunak dengan menjelaskan teknik tugas yang dilakukan, resiko
yang mungkin, sumber daya yang akan diperlukan, produk
yang harus diproduksi, dan jadwal.
c. Modelling (analysis, design)
Software engineer membuat model untuk lebih memahami
persyaratan perangkat lunak dan desain yang akan mencapai
kebutuhan tersebut.
9
d. Construction (code, test)
Kegiatan ini menggabungkan generasi kode (baik manual
atau otomatis) dan pengujian yang diperlukan untuk
mengungkap kesalahan dalam kode.
e. Deployment (delivery, feedback)
Perangkat lunak (sebagai entitas lengkap atau sebagai
bagian yang telah selesai) dikirim ke customer untuk
dievaluasi dan mendapatkan umpan balik berdasarkan
evaluasi tersebut.
Gambar 2.1 Increment Process Model
(Sumber : Roger S. Pressman, Software Engineering : A
Practitioner’s Approach 7th edition, 2010)
Increment yang pertama biasanya merupakan core
product, yang merupakan kebutuhan dasar yang diberikan. Core
product akan digunakan oleh customer. Sebagai hasil dari
pemakaian atau evaluasi, rencana baru akan dibuat untuk
increment selanjutnya. Biasanya rencana akan berupa modifikasi
dari core product untuk memenuhi kebutuhan customer dan
10
menambahkan fitur serta fungsi. Proses ini akan dilakukan secara
berulang- ulang sampai product akhir selesai dibuat.
Pengembangan ini berguna ketika hanya sedikit staf yang
tersedia untuk menyelesaikan pelaksanaan dengan batas waktu
yang telah ditetapkan untuk proyek tersebut.
Keuntungan dari model proses incremental adalah apabila
terdapat penambahan modul, siklus yang sedang berjalan dapat
tetap berjalan seiring dengan pengerjaan siklus baru.
2.1.2.2 Incremental Process Model vs Waterfall Model
Berikut merupakan perbedaan model proses incremental
dan waterfall:
Apabila terjadi penambahan modul, siklus yang sedang berjalan
menurut model proses incremental dapat tetap berjalan seiring
dengan pengerjaan siklus baru. Sedangkan model proses waterfall
tidak mendukung penambahan modul dikarenakan model proses
waterfall membutuhkan semua persyaratan sejak awal proyek
berjalan.
2.1.3 Software Testing Fundamentals
Menurut Pressman (2010, p482) tujuan dari pengujian adalah untuk
menemukan dan memperbaiki sebanyak mungkin kesalahan dalam
program sebelum menyerahkan program kepada customer. Salah satu
11
pengujian yang baik adalah pengujian yang memiliki probabilitas tinggi
dalam menemukan kesalahan.
2.1.3.1 Black-Box Testing
Menurut Pressman (2010, p495) Black-Box testing
berfokus pada persyaratan fungsional perangkat lunak yang
memungkinkan engineers untuk memperoleh set kondisi input
yang sepenuhnya akan melaksanakan persyaratan fungsional
untuk sebuah program. Black-Box testing berusaha untuk
menemukan kesalahan dalam kategori berikut:
1. Fungsi yang tidak benar atau fungsi yang hilang
2. Kesalahan antarmuka
3. Kesalahan dalam struktur data atau akses database eksternal
4. Kesalahan perilaku (behavior) atau kesalahan kinerja
5. Inisialisasi dan pemutusan kesalahan
Tes ini dirancang untuk menjawab beberapa pertanyaan-
pertanyaan berikut ini:
1. Bagaimana validitas fungsional diuji?
2. Bagaimana perilaku dan kinerja sistem diuji?
3. Apa kelas input akan membuat kasus uji yang baik?
4. Apakah sistem sensitive terhadap nilai input tertentu?
5. Bagaimana batas-batas kelas data yang terisolasi?
12
6. Kecepatan dan volume data seperti apa yang dapat
ditolerir sistem?
7. Efek apakah yang akan menspesifikasikan kombinasi data
dalam sistem operasi?
2.1.4 Unified Modeling Language (UML)
Menurut Britton dan Doake, (2005, p13), Unified Modeling Language
(UML) adalah satu kumpulan diagram, yang dirancang secara khusus untuk
pengembangan berorientasi objek, dan telah menjadi standar industri untuk
pemodelan sistem berorientasi objek.
2.1.4.1 Use-Case Diagram
Menurut Britton dan Doake, (2005, p40) Use-Case
Diagram adalah diagram yang secara grafis menggambarkan
interaksi antara user dengan sistem.
1. Use-case
Use-case digambarkan dalam bentuk elips dengan label
nama use-case. Penulisan nama use-case menggunakan kata kerja
yang menegaskan bahwa use case mewakili proses.
Gambar 2.2 Use-Case
2. Actor
Figur berbentuk tongkat diberi label nama aktor.
Tujuannya, adalah untuk memanfaatkan nama aktor tersebut agar
13
mudah untuk mengidentifikasikannya. Figur tersebut juga
digunakan untuk aktor yang bukan manusia, misalnya komputer.
Gambar 2.3 Actor
3. Relationship
Garis yang menghubungkan actor dengan use-case. Garis
tersebut menunjukkan actor yang berkaitan dengan use-case yang
digunakan. Hubungan ini dikenal juga sebagai asosiasi
komunikasi. Hubungan yang digunakan dalam diagram use-case:
1. Communication Associations
Merupakan hubungan antara actor dan use-case, dimana tiap
actor dapat berhubungan dengan banyak use-case dan tiap
use-case dapat berhubungan dengan banyak actor.
Gambar 2.4 Associations
2. Inheritance
Merupakan hubungan dimana salah satu entitas mewarisi
karakteristik dari entitas lain.
Gambar 2.5 Inheritance
14
4. System Boundary
Garis yang digambarkan mengitari use-case untuk
memisahkan use-case dengan actor. Dapat diberi label untuk
mengindikasikan domain diagram.
Contoh Use-Case Diagram:
System Login
Gambar 2.6 Use-Case Diagram
5. Use-Case Descriptions
Merupakan dokumen narasi yang menjelaskan secara umum,
fungsi yang dibutuhkan dalam use-case. Use-case descriptions
menjelaskan tujuan dari use-case dan gambaran umum dari
peristiwa yang biasa terjadi. Dengan kata lain, deskripsi harus
ditulis sedemikian rupa sehingga meliputi urutan setiap
kejadian dan scenario yang berkaitan dengan use-case.
Contoh Use-Case Descripstions:
Tabel 2.1 Use-Case Descriptions
Use Case Login
Actor User
Description Use-Case ini mendeskripsikan proses login kedalam akun
15
Precondition User telah teregistrasi
Flow of Events User Action System Response
1. Memasukkan
username dan
password
2. Memvalidasi apakah
user telah terdaftar
dan apakah username
dan password yang
diinput benar atau
salah
3. Menampilkan
halaman utama
website
Alternative
1. Jika user menekan tombol Reset, data yang telah
diinput akan dihapus secara otomatis.
2. Jika user menekan tombol Login, system akan
memvalidasi apakah username dan password
yang diinput tersebut sesuai dengan data didalam
database. Jika tidak sesuai, maka akan muncul
pesan eror yang menyatakan username atau
password yang diinput salah. Jika username dan
password yang diinput sesuai, maka user akan
memasuki halaman utama dari website.
Postcondition User telah memasuki halaman utama website.
16
2.1.4.2 Class Diagram
Menurut Britton dan Doake, (2005, p117) Class Diagram
merupakan pusat dari analisis dan desain berorientasi objek yang
mendefinisikan struktur keseluruhan sistem dan struktur dari
setiap objek dalam sistem. Class diagram digunakan untuk
membuat model class, hubungan antar class, dan juga untuk
membuat model class dengan tingkat struktur yang lebih tinggi
yang terdiri dari koleksi class yang dikelompokkan dalam kelas
paket.
Visibility
Merupakan kemampuan untuk membatasi akses fitur
tertentu dari model atau program. Terdapat tiga level visibility
dalam UML yaitu:
1. Public
Dinotasikan dengan simbol “+”. Atribut public dan methods
public dapat diakses dan digunakan oleh class lain.
2. Protected
Dinotasikan dengan simbol “#”. Atribut protected dan
methods protected dapat diakses dan digunakan oleh class itu
sendiri dan turunan dari class tersebut.
17
3. Private
Dinotasikan dengan simbol “-“. Atribut private dan methods
private dapat diakses dan digunakan oleh class tersebut
sendiri.
Multiplicity
Menunjukkan angka dari objek dari masing-masing class
yang diperbolehkan untuk berpartisipasi dalam asosiasi.
Tabel 2.2 Tabel Multiplicitytion
Arti Contoh Notasi
Jumlah yang tepat Tepat 1
Tepat 6
1
6
Banyak 0 atau lebih
1 atau lebih, banyak
0..*
1..*, *
Kisaran tertentu 1 sampai 4, 0
sampai 6
1..4, 0..6
Pilihan 2 atau 4 atau 5 2,4,5
Unidirectional
Merupakan hubungan satu arah. Dimana arah tujuannya
diindikasikan melalui tanda anak panah. Sedangkan hubungan dua
18
arah, dapat digambarkan dengan garis dengan anak panah di
kedua ujung garis, atau garis tanpa anak panah.
Gambar 2.7 Contoh hubungan satu arah
Gambar 2.8 Contoh hubungan dua arah
Composition
Merupakan hubungan agregasi yang kuat, dimana dalam
hubungan composition, seluruh objek memiliki kepemilikan
eksklusif atas bagian-bagiannya dimana objek bagian hanya dapat
berpartisipasi dalam satu agregasi. Bagian tersebut hidup dan mati
dengan keseluruhan objek, dengan kata lain, apabila objek
dihapus, bagian-bagian yang lain akan ikut terhapus.
Gambar 2.9 Composition
Contoh Class Diagram:
Gambar 2.10 Class Diagram
19
2.1.4.3 Sequence Diagram
Menurut Britton dan Doake, (2005, p156) Sequence
Diagram menggambarkan dengan jelas dan sederhana aliran
kontrol antar objek yang diperlukan untuk melaksanakan
skenario. Sebuah skenario menguraikan urutan langkah-langkah
dalam satu contoh use-case dari pengguna. Dari sisi layar
komputer, sequence diagram menunjukkan bagaimana langkah-
langkah tersebut diterjemahkan kedalam pesan antar objek di
komputer.
Berikut ini merupakan elemen yang digunakan dalam
diagram sequence:
1. Actor
Digambarkan dengan symbol actor yang ada didalam diagram
use-case, yang digunakan untuk mewakili user.
Gambar 2.11 Actor
2. Sistem
Digambarkan dengan kotak, menunjukkan sistem secara
keseluruhan. Tanda titik dua ( : ) merupakan urutan notasi
diagram yang menunjukkan contoh sistem yang sedang
berjalan.
20
Gambar 2.12 Sistem
3. Garis kehidupan (Lifelines)
Garis vertikal putus-putus yang memanjang kebawah dari symbol
actor dan sistem yang mengindikasikan urutan kehidupan.
Gambar 2.13 Garis Kehidupan
4. Bar aktivasi
Bar didalam garis kehidupan (lifetime) yang menunjukkan periode
waktu ketika peserta aktif dalam interaksi.
Gambar 2.14 Bar Aktivasi
5. Pesan masuk (Input message)
Anak panah horizontal yang berasal dari actor menuju sistem
yang mengindikasikan pesan masuk.
Gambar 2.15 Pesan Masuk
6. Pesan keluar (Output message)
Garis anak panah horizontal putus-putus yang berasal dari sistem
menuju actor.
Gambar 2.16 Pesan Keluar
21
7. Iterasi
Menggambarkan pengiriman pesan yang diulang beberapa kali
sesuai dengan kondisi yang dijabarkan. Iterasi digambarkan
dalam bentuk bingkai yang disertai kondisi diujung bingkai.
*[wrong input]
Gambar 2.17 Iterasi
Contoh Sequence Diagram:
Gambar 2.18 Sequence Diagram
2.1.4.4 Activity Diagram
Menurut Britton dan Doake, (2005, p201) Activity
Diagram menggambarkan secara detail proses yang kompleks.
Dalam activity diagram, semua state adalah aktivitas, dan transisi
diantaranya dipicu oleh selesainya sebuah aktivitas, bukan oleh
sebuah peristiwa eksternal.
22
Berikut merupakan elemen yang digunakan dalam diagram
activity:
1. Initial node
Digambarkan dalam sebuah lingkaran penuh, yang
menandakan mulainya proses.
Gambar 2.19 Initial Node
2. Tindakan
Digambarkan dalam bentuk persegi panjang dengan ujung
yang membulat, yang merepresentasikan langkah individual.
Gambar 2.20 Tindakan
3. Aliran
Tanda anak panah dalam diagram mengindikasikan
perkembangan dari tindakan yang dilakukan.
Gambar 2.21 Aliran
4. Keputusan
Berbentuk belah ketupat, dengan satu aliran yang masuk, dan
dua atau lebih aliran yang keluar. Aliran yang keluar diberi
tanda untuk mengindikasikan kondisi.
23
Gambar 2.22 Keputusan
5. Merge
Berbentuk belah ketupat dengan dua atau lebih aliran yang
masuk dan satu aliran yang keluar.
Gambar 2.23 Merge
6. Aktivitas final
Digambarkan dengan sebuah lingkaran penuh didalam
lingkaran kosong yang menandakan berakhirnya suatu proses.
Gambar 2.24 Aktivitas Final
Contoh Activity Diagram:
Gambar 2.25 Activity Diagram
24
2.1.5 Interaksi Manusia dan Komputer (IMK)
2.1.5.1 Pengertian IMK
Menurut Shneiderman (2010, p22), interaksi manusia dan
komputer adalah disiplin ilmu yang berhubungan dengan
perancangan, evaluasi, dan implementasi sistem komputer
interatif untuk digunakan oleh manusia, serta studi fenomena-
fenomena besar yang berhubungan dengannya.
2.1.5.2 Eight Golden Rules
“Eight Golden Rules” terdiri dari:
a. Berusaha untuk konsisten (strive for consistency)
Berusaha membuat urutan yang konsisten dari tindakan
yang diperlukan dalam situasi yang sama. Tata letak,
kapitalisasi, font, warna yang digunakan semua harus
konsisten.
b. Melayani kegunaan universal (cater to universal usability)
Melayani kebutuhan pengguna yang beragam dan
memfasilitasi transformasi konten. Menambahkan fitur
untuk pemula seperti penjelasan, dan fitur untuk para ahli,
seperti shortcut dapat memperkaya desain antarmuka dan
meningkatkan kualitas sistem.
c. Umpan balik yang informatif (offer informative feedback)
Untuk setiap tindakan yang dilakukan user harus terdapat
umpan balik dari sistem. Untuk tindakan yang sering dan
25
kecil, umpan balik yang diberikan akan sederhana,
sedangkan untuk tindakan yang jarang dan besar, umpan
balik yang diberikan harus lebih substansial.
d. Desain dialog yang menghasilkan penutupan (designing
dialogs to yield closure)
Urutan tindakan harus memiliki awalan, tengah, dan
akhiran. Umpan balik informatif pada penyelesaian
tindakan, dapat memberikan indikator untuk mempersiapkan
tindakan selanjutnya.
e. Mencegah kesalahan (prevent errors)
Merancang suatu sistem yang mencegah user membuat
suatu kesalahan yang serius. Jika user membuat kesalahan,
antarmuka harus dapat mendeteksi kesalahan, dan
menawarkan instruksi sederhana, konstruktif, dan spesifik
untuk pemulihan.
f. Memungkinkan tindakan pembalikan yang mudah (permit
easy reversal of actions)
Tindakan yang dilakukan harus dapat kembali ke tindakan
sebelumnya. Fitur ini mengurangi kecemasan karena user
tahu bahwa kesalahan tidak dapat dibatalkan, dan
mendorong eksplorasi pilihan asing.
g. Dukungan pusat kendali internal (support internal locus of
control)
26
User yang berpengalaman menginginkan sensasi bahwa
mereka bertanggung jawab atas antarmuka dan antarmuka
menanggapi tindakan mereka.
h. Mengurangi beban ingatan jangka pendek (reduce short-
term memory loss)
Manusia yang memiliki kapasitas terbatas untuk memproses
informasi dalam ingatan jangka pendek, mengharuskan
desainer menghindari antarmuka dimana pengguna harus
mengingat informasi dari satu layar, dan kemudian
menggunakan informasi tersebut pada layar yang lain.
2.1.6 Basis Data (Database)
Menurut Connolly dan Begg (2010, p65), database merupakan
sekumpulan data logis yang terkait dan deskripsi data yang dirancang untuk
memenuhi kebutuhan informasi dari suatu organisasi.
2.1.6.1 The Database Management System (DBMS)
Menurut Connolly dan Begg (2010, p66), Merupakan
sistem perangkat lunak yang memungkinkan pengguna untuk
mendefinisikan, membuat, memelihara, dan mengontrol akses
ke basis data. DBMS memiliki beberapa fasilitas:
1. pengguna untuk memasukkan, merubah, Memungkinkan
pengguna untuk menentukan basis data, biasanya melalui
Data Definition Language (DDL). DDL memungkinkan
27
pengguna untuk menentukan jenis data, struktur, dan
kendala pada data yang akan disimpan dalam basis data.
2. Memungkinkan menghapus, dan mengambil data dari basis
data, biasanya melalui Data Manipulation Language (DML).
DML memiliki fasilitas untuk data yang disebut query
language. Bahasa query yang paling umum adalah
Structured Query Language (SQL) yang sekarang
merupakan bahasa standar untuk DBMS relasional.
3. Menyediakan akses control ke basis data. Contohnya:
a. Sistem keamanan (security system), mencegah pengguna
yang tidak sah mengakses basis data.
b. Sistem integritas (integrity system), yang
mempertahankan konsistensi data yang disimpan.
c. Concurrency Control System, yang memungkinkan
berbagi akses basis data.
d. Sistem control pemulihan (recovery control system),
yang mengembalikan keadaan basis data ke keadaan
semula yang konsisten.
e. Sebuah catalog yang dapat diakses pengguna, yang
berisi dari data dalam basis data.
2.1.6.2 Entity-Relationship Diagram (ERD)
Menurut Connoly dan Begg (2010, p371) Entity-
Relationship Diagram digunakan untuk mendapatkan
28
pemahaman yang tepat mengenai sifat dan bagaimana data
digunakan oleh perusahaan.
1. Entity
Entitas adalah objek yang berbeda dalam organisasi yang
akan direpresentasikan dalam database.
2. Relationship
Relationship merupakan hubungan antara entitas.
3. Attribute
Atribut merupakan properti yang mendeskripsikan beberapa
aspek dari objek.
Keys
Menurut Connoly dan Begg (2010, p150), keys digunakan
untuk mengidentifikasikan satu atribut atau lebih yang secara
unik mengidentifikasikan relasi.
1. Candidate key
Menurut Connoly dan Begg (2010, p381), candidate key
merupakan sebuah atribut atau sekumpulan atribut yang
secara unik mengidentifikasikan keberadaan setiap tipe
entitas.
29
2. Alternate key
Menurut Connoly dan Begg (2010, p151) alternate key
merupakan sebuah candidate key yang tidak terpilih untuk
menjadi primary key.
3. Composite key
Menurut Connoly dan Begg (2010, p382), composite key
merupakan candidate key yang terdiri dari dua atribut atau
lebih.
4. Primary key
Menurut Connoly dan Begg (2010, p151), primary key
merupakan candidate key yang dipilih untuk
mengidentifikasikan setiap kejadian tipe entitas secara unik.
5. Foreign key
Menurut Connoly dan Begg (2010, p151), foreign key
merupakan sebuah atribut atau sekumpulan atribut dalam
sebuah relasi yang mencocokkan candidate key dari
beberapa relasi.
Contoh Entity-Relationship Diagram:
Gambar 2.26 Entity-Relationship Diagram
30
2.1.7 E-Application
Menurut Commerchero, Delvecchio, Loughney, et al (2006, p30), E-
Application adalah sebuah aplikasi komputer berbasis jaringan yang
didesain untuk menangani aktivitas yang ada dalam dunia paralel. Untuk
menangani aktivitas virtual yang ada, aplikasi ini harus memahami
karakteristik dari dunia yang sedang direpresentasikannya.
2.2 Teori Khusus
2.2.1 PHP
Menurut Valade, (2006, p15), PHP merupakan scripting language yang
didesain untuk membuat web dinamis. Kata PHP berasal dari
PHP :HyperText Preprocessor yang dikembangkan oleh Rasmus Lerdorf.
(Anonymous1, 2012), PHP digunakan secara luas dalam bahasa script yang
sangat cocok digunakan untuk pengembangan web dan dapat ditanamkan
dalam HTTP.
Keuntungan PHP
Berikut ini merupakan keuntungan menggunakan PHP:
1. Cepat,karena terpasang pada HTML code response time yang diperlukan
pendek.
2. PHP dalam pengunaannya tidak memerlukan biaya (gratis).
31
3. PHP mudah dalam penggunaannya. PHP memiliki banyak fitur dan
fungsi spesial yang diperlukan untuk menciptakan dynamic web pages.
Bahasa PHP didesain agar dapat dengan mudah dimasukkan ke dalam
HTML file.
4. Dapat dijalankan pada berbagai operating system.
5. Technical Support tersedia secara luas, banyak pengguna yang
menyediakan bantuan secara gratis melalui forum, e-mail discussion
lists.
6. Aman, pengguna / user tidak melihat PHP code.
7. PHP didesain untuk mendukung database.
8. PHP dapat diubah. Open Source License memperbolehkan programmers
untuk memodifikasi software PHP, menambah atau merubah fitur sesuai
dengan lingkungan kerja mereka.
2.2.2 CodeIgniter (CI)
(Anonymous2, 2012), Code Igniter merupakan application development
framework, sebuat alat untuk membantu dalam pembuatan website yang
menggunakan PHP.
Tujuan dari Code Igniter adalah membantu dalam pembuatan project agar
dapat lebih cepat bila membuat code dari awal, dengan cara menyediakan
library – library yang dapat memudahkan tugas – tugas yang ada, serta antar
muka yang mudah dan struktur logikal untuk mengakses library tersebut.
Fitur utama dari code igniter:
32
1. Model-View-Controller Based System.
2. Extremely Light Weight.
3. Full Featured database classes with support for several platforms.
4. Active Record Database Support.
5. Form and Data Validation.
6. Session Management.
7. File Uploading Class.
8. Pagination.
9. Flexible URI Routing.
Code Igniter cocok apabila:
1. Anda menginginkan framework yang kecil.
2. Anda menginginkan performa yang bagus.
3. Anda memerlukan kompabilitas yang luas dengan standar hosting yang
menjalankan variasi versi php dan konfigurasi.
4. Anda menginginkan framework yang hampir tidak memerlukan
konfigurasi.
5. Anda menginginkan framework yang tidak mengharuskan penggunaan
command line dalam penggunaannya.
6. Anda menginginkan framework yang tidak harus mengikuti batasan
dalam aturan coding.
7. Anda tidak ingin mempelajari templating language.
8. Anda menginginkan solusi yang sederhana.
33
9. Anda perlu dokumentasi yang jelas.
2.2.3 PHPMyAdmin
(Anonymous3, 2012), phpMyAdmin merupakan software gratis
yang ditulis dalam bahasa PHP, yang bertujuan untuk memegang
administrasi dari MySQL dari World Wide Web (WWW). PhpMyAdmin
mendukung sebagian besar operasi pada MySQL. Operasi yang sering
digunakan sudah didukung dengan user interface seperti mengatur
database, table, field, relasi, index, users, permissions, dll, tapi tetap
mempunyai kemampuan untuk mengeksekusi SQL statement secara
langsung.
Nama phpMyAdmin merupakan gabungan dari PHP sebagai bahasa yang
digunakan dan MySQL sebagai database yang diatur. Meskipun namanya
cukup sederhana, beberapa orang salah mengingat nama phpMyAdmin
dan menyebutnya sebagai nama lain seperti myphpadmin, phpadmin,
phpmysqladmin.
Fitur – fitur pada phpMyAdmin:
1. Tampilan web yang menarik.
2. Mendukung hampir semua fitur MySQL seperti:
a. Menjelajah, men-delete database, table, view, field, indexes.
b. Create, copy, drop, rename, alter database, tables, fields, indexes.
c. Maintenance server, database dan table dengan proposal pada
konfigurasi server.
34
d. Execute, edit, bookmark SQL statement, batch-queries.
e. Manage MqSQL user, privileges.
f. Manage stored procedure, triggers.
3. Memasukkan data dari CSV dan SQL.
4. Mengeluarkan data ke beberapa format seperti: CSV, SQL, XML,
PDF, ISO/IEC 26300, OpenDocument Text, Spreadsheet, Word,
LATEX dan format lainnya.
5. Mengadministrasi beberapa server.
6. Menciptakan grafik PDF dari layout database.
7. Menciptakan complex queries dengan Query-ByExample (QBE).
8. Mencari secara menyeluruh pada database atau subset dari database.
9. Merubah data yang telah disimpan menjadi format lain menggunakan
set of predefined functions, seperti menampilkan BLOB-data sebagai
gambar atau download-link.
2.2.4 JavaScript
Menurut Flanagan, (2011,p1), JavaScript merupakan bahasa
pemrograman tingkat tinggi dan dinamis yang cocok untuk object
oriented dan functional programming style. JavaScript berasal dari sintaks
Java, yang merupakan bahasa pemrograman yang digunakan sebagian
besar website modern dan web browser baik dalam desktop, game
console, tablet, dan smart phone. Dengan adanya penerjemah JavaScript,
membuat JavaScript sebagai bahasa pemrograman yang paling banyak
digunakan. JavaScript merupakan bagian dari serangkaian teknologi yang
35
wajib dipelajari bagi Web Developer: HTML untuk menentukan isi dari
setiap halaman web, CSS untuk menentukan presentasi dari web, dan
JavaScript untuk menentukan tindakan dari halaman web.
2.2.5 AJAX
Menurut Phaneendra dalam jurnal “Minimizing Client-Server
Traffic Based On AJAX”, (2012,p11), Ajax bukanlah arsitektur seperti
MVC, atau pola desain, atau kerangka melainkan konsep. Ajax lebih dari
sekedar pendekatan untuk interaksi web. Pendekatan ini melibatkan
transmisi dari sejumlah kecil informasi dari dan ke server untuk
memberikan user respon yang paling mungkin. Ajax bermanfaat bagi
mereka yang telah menerapkan arsitektur MVC seperti aplikasi shopping
cart.
2.2.6 JQUERY
(Anonymous4, 2012), JQuery merupakan library JavaScript yang
cepat dan ringkas, yang menyederhanakan lintas dokumen HTML,
penanganan kejadian, dan interaksi Ajax untuk pengembangan web yang
cepat. Jquery dirancang untuk mengubah cara menulis JavaScript.
2.2.7 Pembelian
Menurut Assauri, (2008, p223), pembelian merupakan salah satu
fungsi penting dalam suatu perusahaan. Fungsi ini dibebani tanggung
jawab untuk mendapatkan kuantitas dan kualitas bahan-bahan yang
36
tersedia pada waktu dibutuhkan dengan harga yang sesuai dengan harga
yang berlaku.
Menurut Mulyadi, (2007,p.711) aktivitas dalam proses pembelian
barang adalah:
1. Permintaan pembelian.
2. Pemilihan pemasok.
3. Penempatan order pembelian.
4. Penerimaan barang.
5. Pencatatan transaksi pembelian.
Permintaan pembelian merupakan pekerjaan yang ditujukan untuk
memicu bagian pembelian melakukan pengadaan barang sesuai dengan
spesifikasi dan jadwal sebagaimana yang dibutuhkan oleh pemakai
barang. Sedangkan penerimaan barang merupakan aktivitas tentang
penerimaan kiriman dari pemasok sebagai akibat adanya order pembelian
yang dibuat oleh bagian pembelian.
2.2.8 Penjualan
Menurut Romney, (2003, p157), penjualan merupakan satu set rekursif
dari kegiatan bisnis dan operasi pemrosesan informasi terkait yang
dihubungkan dengan penyediaan barang, pelayanan pelanggan dan
penerimaan pembayaran dari penjualan tersebut.
37
Menurut Hall, (2011, p154), prosedur pemesanan penjualan meliputi
tugas-tugas yang terkait dalam penerimaan dan pemrosesan sebuah pesanan
klien, mengisi formulir pemesanan, dan pengiriman produk ke klien,
penagihan pelanggan pada saat tepat, dan akuntansi transaksi secara benar.
1. Penerimaan pesanan
Pada tahap ini, karyawan membuat sebuah Sales Order yang mencakup
informasi penting mengenai pelanggan, seperti nama pelanggan, alamat
pelanggan, nama, nomor, dan deskripsi barang yang dijual serta jumlah
dan harga satuan barang yang dijual. Setelah itu, karyawan membuat
sebuah salinan Sales Order dan menempatkannya dalam customer open
order file.
2. Pemeriksaan kredit
Pada tahap ini, pihak perusahaan melakukan pemeriksaan kelayakan
kredit pelanggan untuk menentukan batas kredit yang dapat dimiliki
oleh pelanggan, apakah pelanggan tersebut memiliki histori kredit yang
baik atau tidak. Fungsi penerimaan pesanan mengirimkan Sales Order
(credit copy) kepada fungsi pemeriksaan kredit untuk pengesahan.
Berkas pengesahan Sales Order yang dikembalikan memicu kelanjutan
proses penjualan dengan mengeluarkan informasi Sales Order secara
bersamaan ke fungsi yang beragam.
3. Pengambilan barang
Pada tahap ini, fungsi penerimaan pesanan meneruskan dokumen
pengeluaran stok barang kepada fungsi pengambilan barang dalam
gudang. Dokumen ini mengidentifikasikan barang-barang dalam
38
inventaris yang harus diambil dari rak gudang, juga menyediakan
otorisasi formal kepada personil gudang untuk mengeluarkan barang
yang ditentukan. Setelah mengambil barang, pesanan diverifikasi dan
dokumen pengeluaran stok yang sudah diverifikasi diteruskan ke fungsi
pengiriman barang.
4. Pengiriman barang
Sebelum kedatangan barang dan dokumen pengeluaran barang yang
sudah diverifikasi, divisi pengiriman menerima packing slip dan
shipping notice dari fungsi penerimaan pesanan. Packing slip akan
dikirimkan dengan barang untuk menggambarkan isi dari pesanan.
Shipping notice akan diteruskan kepada fungsi penagihan sebagai bukti
bahwa pesanan pelanggan sudah terpenuhi dan dikirim.
5. Penagihan pelanggan
Pada tahap ini, fungsi penagihan menerima Sales Order (invoice copy)
dari fungsi penerimaan pesanan. Dokumen ini ditempatkan dalam S.O
pending file hingga penerimaan shipping notice. Setelah shipping notice
diterima, barang-barang yang dikirim dicocokan dengan harga satuan
barang yang dipesan, pajak, dan ongkos kirim untuk ditambahkan ke
salinan invoice dari sales order. Sales Order yang sudah dilengkapi
merupakan tagihan pelanggan. Setelah itu, transaksi penjualan yang
sudah lengkap dicatat dalam jurnal penjualan.
39
2.2.9 Management
Menurut Robbins dan Mary (2005, p8), Manajemen merupakan suatu
proses menyelesaikan aktivitas secara efisien dan efektif dengan dan melalui
orang lain.