2012-1-00848-IF Bab2001

25
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: 9

Transcript of 2012-1-00848-IF Bab2001

Page 1: 2012-1-00848-IF Bab2001

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

Page 2: 2012-1-00848-IF Bab2001

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.

Page 3: 2012-1-00848-IF Bab2001

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.

Page 4: 2012-1-00848-IF Bab2001

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.

Page 5: 2012-1-00848-IF Bab2001

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

Page 6: 2012-1-00848-IF Bab2001

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.

Page 7: 2012-1-00848-IF Bab2001

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

Page 8: 2012-1-00848-IF Bab2001

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.

Page 9: 2012-1-00848-IF Bab2001

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

Page 10: 2012-1-00848-IF Bab2001

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,

Page 11: 2012-1-00848-IF Bab2001

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.

Page 12: 2012-1-00848-IF Bab2001

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.

Page 13: 2012-1-00848-IF Bab2001

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

Page 14: 2012-1-00848-IF Bab2001

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

Page 15: 2012-1-00848-IF Bab2001

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.

Page 16: 2012-1-00848-IF Bab2001

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.