2012-1-00848-if bab2001
TRANSCRIPT
BAB 2
LANDASAN TEORI
Pada bab ini akan menjelaskan tentang teori-teori yang digunakan dalam
pembuatan sistem manajemen ini.
2.1. HTML
Menurut Alexander F.K Sibero (2011 : 19), HTML atau dengan singkatan
Hyper Text Markup Language adalah bahasa pemograman yang digunakan dalam
web sebagai bahasa untuk pertukaran dokumen web.
Struktur HTML terdiri dari tag pembuka dan tag penutup. Contoh struktur
dokumen HTML sebagai berikut:
Gambar 2. 1 Contoh Struktur Dokumen HTML
9
10
2.2. Web server
Menurut Alexander F.K. Sibero (2011 : 11), Web server adalah sebuah
komputer yang terdiri dari perangkat keras dan perangkat lunak. Secara bentuk
fisik dan cara kerjanya, perangkat keras web server dengan PC dibedakan oleh
kapasitas dan kapabilitasnya. Perangkat lunak dalam web server memiliki
karakteristik dan teknologi yang digunakan untuk mengatur kerja sistemnya.
Contoh-contoh perangkat lunak web server antara lain :
Tabel 2. 1 Perangkat Lunak Web server
Vendor Produk Sistem Operasi
Apache Software Foundation Apache Web server Cross Platform
Microsoft Corp. Internet Information Services (IIS) Windows Only
Oracle Corp. iPlanet Web server Cross Platform
2.3. PHP
Menurut Alexander F.K. Sibero (2011 : 49), PHP adalah pemograman
intrepreter yaitu proses penerjemahan source code menjadi kode mesin yang
dimengerti komputer secara langsung pada saat source code dijalankan.
PHP adalah singkatan dari Hypertext Preprocessor. PHP disebut sebagai
Server Side Programming dikarenakan seluruh prosesnya dijalankan pada server.
Script PHP yang dibuat harus tersimpan dalam sebuah server dan dieksekusi atau
diproses dalam server tersebut. Dengan menggunakan PHP, sebuah halaman web
akan lebih interaktif dan dinamis.
11
PHP tidak dapat dijalankan tanpa menggunakan software pendukung yang
bekerja di komputer lokal. Software pendukung yang harus di instalasi, yaitu
Apache, PHP, phpMyAdmin, dan database MySQL. Software pendukung ini
terdapat dalam sebuah paket software, seperti Xampp dan Appserver.
2.4. UML
Menurut Scott W. Ambler (2005 : ix), models digunakan oleh developer
profesional untuk berkomunikasi antara pekerjaan mereka dengan project
stakeholders dan dengan developer lainnya. Unified Modeling Language (UML)
menjadi bagian penting dalam pembuatan software sejak diperkenalkan pada tahun
1997.
UML merupakan bahasa desain model yang menjelaskan hubungan antara
desain dan kode dengan sebuah sistem. The Object Management Group (OMG)
merilis versi 1.1 pada 1997 yang menggabungkan Booch Notation, Object
Modeling Technique (OMT), dan Object-Oriented Software Engineering (OOSE).
UML termasuk sebuah set diagram konsisten yang digunakan untuk
menjelaskan dan komunikasi kebutuhan sistem software, desain, dan kode.
UML terdiri dari koleksi artefak yang digunakan untuk menangkap
kebutuhan dan desain sistem software. UML yang biasa digunakan selama
kegiatan antara lain:
2.4.1.Use-case Diagram
Menurut Scott W. Ambler (2005 : 33), use-case diagram
memperlihatkan hubungan antara aktor dan use-case dalam sebuah
sistem.
12
Use-case sering digunakan untuk :
- Memberikan gambaran tentang semua atau sebagian dari
persyaratan penggunaan untuk sistem atau organisasi dalam
bentuk model penting
- Mengkomunikasikan lingkup sebuah proyek yang dibangun
Use-case model terdiri dari satu atau banyak use-case
diagram dan didukung oleh dokumentasi seperti spesifikasi
use-case dan definisi aktor.
Use-case memiliki dua tingkat use-case diagram, yaitu :
- User level, yang menggambarkan bagaimana user
berinteraksi dengan sistem.
- Developer level, yang menggambarkan bagaimana
komponen sistem akan berinteraksi.
User level dalam use-case ditempatkan pada kebutuhan sistem
sedangkan developer level menyediakan kebutuhan untuk subsistem.
Use-case digunakan untuk memodelkan sistem/subsistem dari
aplikasi. Sebuah use-case diagram menangkap fungsi tertentu dari
sistem.
Use-case diagram membutuhkan :
- Aktor, yang berfungsi sebagai yang menjalankan sistem.
- Use-case, yang berfungsi sebagai kegiatan yang akan
dijalankan oleh aktor.
- Garis penghubung yang menghubungkan aktor dengan use-
case yang dijalankan.
13
Gambar 2. 2 Scott W. Ambler, 2005 : 36 Figure 15
2.4.2.Activity Diagram
Menurut Scott W. Ambler (2005 : 113), activity diagram setara
dengan berorientasi objek seperti flow chart dan diagram aliran data.
Activity diagram digunakan untuk mengeksplorasi logika seperti:
- Operasi yang kompleks,
- Aturan bisnis yang kompleks,
- Use-case tunggal,
- Use-case yang banyak,
- Proses bisnis,
- Proses yang bersamaan,
- Proses perangkat lunak
14
Activity diagram pada dasarnya adalah flow chart untuk
mewakili bentuk aliran satu aktifitas dengan aktifitas lainnya.
Activity diagram dapat digambarkan sebagai operasi dari sistem.
Gambar 2. 3 Scott W.Ambler, 2005 : 127 Figure 46
2.4.3 Class Diagram
Menurut Scott W. Ambler (2005 : 47), class diagram
menampilkan semua kelas yang terdapat dalam sistem, hubungan
mereka, dan operasi dan atribut dari class.
Class diagram sering digunakan untuk :
- Menjelaskan konsep domain dalam bentuk model.
- Menganalisis persyaratan dalam bentuk model analisis dan
konseptual.
- Menggambarkan desain secara rinci berorientasikan objek
atau objek berbasiskan software.
15
Class diagram merupakan diagram statis. Class diagram
mewakili pandangan statis dari aplikasi. Class diagram tidak hanya
digunakan untuk memvisualisasikan, menggambarkan, dan
mendokumentasikan perbedaan aspek dari sistem, tetapi juga untuk
membangun kode executable dari aplikasi software.
Class diagram menampilkan koleksi dari class, interface,
associations, collaborations, dan constraints. Hal ini juga dikenal
sebagai diagram struktural.
Class diagram memberikan pandangan dari kelas desain dari
sistem. Class diagram mengandung representasi dari kelas dan paket
dan bagaimana mereka berhubungan.
Gambar 2. 4 Scott W.Ambler, 2005 : 50 Figure 19
16
2.4.4.Conceptual Diagram
Menurut Robinson, Brooks, Kotiadis, & Van Der Zee (2010 : 1),
conceptual model adalah suatu proses abstrak model dari sebuah
kenyataan atau usulan sistem.
Conceptual diagram digunakan untuk memodelkan konsep-
konsep yang ada dalam aplikasi.
Gambar 2. 5 Robinson, Brooks, Kotiadis, & Van Der Zee, 2010 : 11 Figure 1.2
2.4.5.Sequence Diagram
Menurut Scott W. Ambler (2005 : 80), sequence diagram adalah
teknik permodelan yang dinamik, seperti communication diagram.
Sequence diagram sering digunakan untuk:
- Validasi logika dan melengkapi skenario yang digunakan
- Mengeksplorasikan desain karena sequence diagram
menyediakan jalan untuk langkah visualisasi melalui
permintaan dari definisi class.
17
Sequence diagram merupakan jenis interaction diagram yang
menunjukkan bagaimana proses beroperasi satu sama lain. Sequence
diagram menunjukkan interaksi objek yang diatur dalam urutan waktu.
Sequence diagram biasanya berkaitan dengan realisasi use-case dalam
logical view dari pengembangan sistem. Garis putus-putus
menunjukkan bahwa ada kegagalan dalam pencetakan diagram.
Sequence diagram mengikat use-case diagram dan class
diagram bersama. Sequence diagram menunjukkan bagaimana class
diagram bekerja sama untuk melaksanakan use-case.
Sequence diagram dapat disebut event diagram, event scenario
dan timing diagram.
Gambar 2. 6 Scott W. Ambler, 2005 : 82 Figure 30
18
2.5. Database Management System
Menurut Connoly dan Beff (2005 : 16), DBMS adalah sebuah sistem
software yang memungkinkan pengguna untuk mendefinisikan, membuat,
memelihara, dan mengendalikan akses terhadap database.
DBMS merupakan perantara bagi user dengan database. Cara berinteraksi
antara user dengan database diatur oleh sebuah bahasa yaitu bahasa database.
Bahasa database terdiri atas sejumlah perintah yang dapat dituliskan oleh user
untuk kemudian diproses oleh DBMS untuk melakukan aksi tertentu. Contoh-
contoh bahasa database antara lain:
- SQL,
- dBase,
- QUEL, dll.
2.6. MySQL
Menurut Alexander F.K Sibero (2011 : 97), MySQL adalah suatu RDBMS
(Relational Database Management System) yaitu sistem aplikasi yang
menjalankan fungsi pengolahan data. MySQL dikembangkan oleh MySQL AB
yang kemudian diakuisisi Sun Microsystem dan terakhir dikelola oleh Oracle
Coorporation.
2.6.1.Data Definition Language (DDL)
Data Definition Language (DDL) adalah suatu tata bahasa
definisi data pada MySQL. DDL digunakan untuk mendefinisikan
suatu DATABASE, TABLE, TABLESPACE, LOGFILE GROUP,
19
SERVER INDEX. DDL umunya digunakan untuk mendefinisikan suatu
data atau record.
Data Definition Language terdiri dari :
- CREATE
Create digunakan untuk mendefinisikan suatu struktur,
wadah yang dipergunakan sebagai media suatu data atau
record, dan atribut pendukung lainnya.
- ALTER
Alter digunakan untuk mengubah definisi suatu struktur,
wadah yang dipergunakan sebagai media suatu data atau
record, dan atribut pendukung lainnya.
- DROP
Drop digunakan untuk menghapus suatu struktur, wadah
yang dipergunakan sebagai media suatu data atau record, dan
atribut pendukung lainnya.
- RENAME
Rename digunakan untuk mengganti nama suatu struktur,
wadah yang dipergunakan sebagai media suatu data atau
record. Penggunaan RENAME hanya berlaku untuk
DATABASE dan TABLE.
20
2.6.2.Data Manipulation Language (DML)
Data Manipulation Language (DML) adalah suatu tata bahasa
manipulasi data yang terdapat pada MySQL. DML digunakan untuk
memanipulasi data pada TABLE Database.
2.6.3.Stored Procedure
Stored Procedure adalah suatu fungsi yang tersimpan dalam
database yang berisi kumpulan perintah untuk pengolahan data yang
dapat dijalankan oleh program maupun sesama fungsi dalam database.
2.7. Waterfall Model
Menurut Roger S. Pressman (2010 : 39), Waterfall model menyarankan
pendekatan yang sistematis bagi software developer yang dimulai dari tahap
communication, planning, modeling, construction, dan diakhiri oleh deployment.
Gambar 2. 7 Roger S. Pressman, 2010 : 39 Figure 2.3
- Communication
Tahap communciation merupakan tahap pengumpulan kebutuhan secara
intensif dan fokus kepada software yang ingin dibuat. Communication terdiri
dari project initation dan requirements gathering.
21
- Planning
Tahap planning merupakan perencanaan dalam menyelesaikan software
yang akan dibuat. Pada tahap ini developer membuat perkiraan waktu yang
diperlukan. Tahap ini terdiri dari estimating, scheduling, dan tracking.
- Modeling
Tahap modeling adalah tahapan perancangan aplikasi. Biasanya terdapat
proses yang difokuskan pada empat bagian dari program, seperti struktur data,
arsitektur software, representasi software, dan detail algoritma. Tahap ini terdiri
dari analisis dan desain.
- Construction
Tahap construction adalah tahapan dimana penerjemahan desain menjadi
coding. Setelah penerjemahan coding selesai, testing pun dilakukan. Proses ini
menekankan pada logika internal pada aplikasi. Proses ini terdiri dari coding
dan testing.
- Deployment
Tahap deployment terdiri atas delivery, support, dan feedback. Pada tahap
ini, developer menyiapkan aplikasi yang menyediakan fungsi dan fitur yang
bermanfaat. Developer juga menyediakan dokumentasi untuk semua fitur dan
fungsi. Tahap ini developer juga mendapatkan feedback yang berakhir pada
perubahan fungsi dan fitur dari software yang telah dibuat.
2.8. CSS
Menurut Keith Schengili-Roberts (2000 : 9), Cascading Style Sheet (CSS)
adalah alat yang ampuh untuk memenuhi kebutuhan web authors yang ingin
22
mengatur lebih baik tentang bagaimana halaman web ditampilkan. CSS tidak
mempengaruhi fungsi dasar seperti hyperlink dalam halaman web.
CSS digunakan untuk mengatur halaman web supaya terlihat lebih rapi dan
dapat membuat tampilan pengguna yang sangat bagus.
2.9. World Wide Web
Dalam buku Keith Schengli-Roberts, World Wide Web muncul pada tahun
1991 sebagai hasil dari proyek computer engineer Tim Berners-Lee di Eropa
untuk riset nuklir (CERN) di Jenewa, Swiss. Tujuannya adalah untuk mendapatkan
cara berkomunikasi antara satu sama lainnya dengan komputer yang berbeda dan
diinformasikan melalui internet.
2.10. CodeIgniter
CodeIgniter merupakan salah satu framework PHP. CodeIgniter
dikembangkan oleh Rick Ellis. Pada situsnya (www.ellislab.com) menjelaskan
tujuan dari pembuatan framework CodeIgniter adalah untuk menghasilkan
framework yang akan dapat digunakan untuk pengembangan proyek pembuatan
website secara lebih cepat dibandingkan dengan pembuatan website dengan cara
pengkodean secara manual.
Fitur-fitur yang didukung oleh CodeIgniter antara lain :
- Sistem berbasis Model View Controller
- Compatible dengan PHP versi 4
- Ringan dan cepat
- Terdapat dukungan untuk berbagai database, dll
23
2.11. MVC
MVC merupakan metode pengembangan sistem yang dibagi atas komponen
Model, View, Controller secara terstruktur. Salah satu penggunaan metode MVC
adalah framework CodeIgniter pada PHP.
- Model
Model merupakan komponen yang berinteraksi langsung dengan
database. Sistem-sistem seperti tampilan, penambahan, perubahan, dan
penghapusan data terletak dalam komponen model.
- View
View merupakan komponen yang berinteraksi langsung dengan user
atau pengguna. Sistem-sistem seperti menampilkan hasil dari permintaan
pada komponen controller yang berinteraksi langsung dengan komponen
model.
- Controller
Controller merupakan komponen penghubung antara view dan
model. Controller berfungsi sebagai pengambilan inputan dari view dan
mengirim inputan tersebut ke dalam komponen model
2.12. JetBrains PhpStorm
JetBrains PhpStorm merupakan salah satu aplikasi yang dibuat untuk
membangun halaman web berbasis PHP. PhpStorm menyediakan platform untuk
kode PHP, HTML, dan JavaScript. Aplikasi inilah yang digunakan dalam
pembuatan halaman web sistem manajemen restoran.
24
2.13. PhpMyAdmin
Menurut Alexander F.K. Sibero (2011 : 376), phpMyAdmin merupakan
aplikasi web yang digunakan untuk administrasi database MySQL. Sebelum
menjalankan phpMyAdmin, kita harus menjalankan software pendukungnya,
seperti Xampp.
Fitur administrasi phpMyAdmin antara lain :
- Pembuatan, Mengubah, dan Menghapus Database
- Pembuatan, Mengubah, dan Menghapus Tabel
- Menampilkan, Menambahkan, Mengubah, dan Menghapus Data
- Membuat dan Menghapus View
- Menampilkan dan Menghapus Indeks Kolom
2.14. Xampp
Xampp merupakan salah satu paket web server yang umumnya digunakan
oleh web developer. Xampp berisi antara lain server web Apache, intrepreter PHP,
dan database MySQL.