2012-2-01552-if bab2001

18
10 BAB 2 LANDASAN TEORI 2.1. Landasan Teori 2.1.1. Waterfall Model Model air terjun, terkadang disebut siklus hidup klasik, menunjukkan pendekatan, sistematis sekuensial untuk pengembangan perangkat lunak yang dimulai dengan pelanggan menspesifikasi persyaratan yang diinginkan dan berlangsung melalui perencanaan, pemodelan, konstruksi, dan penyebaran, yang berpuncak pada dukungan yang berkelanjutan dari perangkat lunak yang telah selesai. (Pressman, 2010, P.39) Gambar 2.1 Waterfall Model Tahapan dari Waterfall Model merefleksikan pokok-pokok dari aktivitas pengembangan: Communication (Requirements gathering) Layanan yang diberikan oleh sistem, batasan sistem, dan tujuan ditetapkan setelah melakukan konsultasi dengan pengguna

Upload: lhia-twister

Post on 05-Jan-2016

213 views

Category:

Documents


0 download

DESCRIPTION

kjb

TRANSCRIPT

Page 1: 2012-2-01552-IF Bab2001

10

BAB 2

LANDASAN TEORI

2.1. Landasan Teori

2.1.1. Waterfall Model

Model air terjun, terkadang disebut siklus hidup klasik,

menunjukkan pendekatan, sistematis sekuensial untuk pengembangan

perangkat lunak yang dimulai dengan pelanggan menspesifikasi

persyaratan yang diinginkan dan berlangsung melalui perencanaan,

pemodelan, konstruksi, dan penyebaran, yang berpuncak pada

dukungan yang berkelanjutan dari perangkat lunak yang telah selesai.

(Pressman, 2010, P.39)

Gambar 2.1 Waterfall Model

Tahapan dari Waterfall Model merefleksikan pokok-pokok dari

aktivitas pengembangan:

� Communication (Requirements gathering)

Layanan yang diberikan oleh sistem, batasan sistem, dan tujuan

ditetapkan setelah melakukan konsultasi dengan pengguna

Page 2: 2012-2-01552-IF Bab2001

11

sistem. Semua didefinisikan secara rinci dan dibuat sebagai

spesifikasi dari sistem.

� Planning (Estimating, scheduling, tracking)

Pada tahap ini, dilakukanlah perencanaan. Perencanaan untuk

pembuatan sistem melibatkan pengidentifikasian dan

penjelasan dari abstraksi sistem dan hubungannya, perkiraan

waktu pengerjaan, penjadwalan .

� Modelling (analysis design)

Pada tahap ini, perancangan design dari sistem yang ingin

dibuat seperti apa.

� Construction (Coding and system test)

Perancangan sistem dimulai pada tahap ini menjadi sebuah

pemrograman atau unit program. Lalu dilakukan pengujian unit

yang melibatkan verifikasi untuk memastikan apakah setiap

unit memenuhi spesifikasi sistem. Setiap unit program dan

program-program yang sudah ada diintegrasikan dan diuji

sebagai satu keutuhan sistem untuk memastikan apakah

kebutuhan sistem sudah terpenuhi. Setelah melakukan

pengujian, sistem baru disebarkan ke pengguna.

� Deployment (Delivery, support, feedback)

Dilakukan instalasi terhadap sistem dan digunakan dalam

prakteknya. Maintenance melibatkan koreksi terhadap error

yang tidak ditemukan pada tahap sebelumnya, memperbaiki

implementasi dari unit sistem dan meningkatkan layanan yang

diberikan oleh sistem sebagai kebutuhan baru yang ditemukan.

Page 3: 2012-2-01552-IF Bab2001

12

Serta memberikan bantuan kepada user yang mengalami

kendala.

2.1.2. Unified Modelling Language

Unified Modeling Language (UML) adalah “bahasa standar

untuk menulis denah perangkat lunak. UML dapat digunakan untuk

memvisualisasikan, menentukan, membangun, dan

mendokumentasikan artefak dari sistem perangkat lunak-intensif“.

Dengan kata lain, seperti arsitek bangunan membuat denah yang akan

digunakan oleh sebuah perusahaan konstruksi, arsitek software

membuat diagram UML untuk membantu pengembang perangkat

lunak membangun perangkat lunak. Jika Anda memahami kosakata

UML (diagram elemen piktorial dan artinya), Anda dapat lebih mudah

memahami dan menentukan sistem dan menjelaskan desain sistem

yang kepada orang lain (Pressman, 2010, P.841).

2.1.2.1. Class Diagram

Untuk merancang kelas, termasuk atribut mereka,

operasi, dan hubungan mereka dan asosiasi dengan kelas

lainnya, UML menyediakan diagram kelas. Sebuah diagram

kelas memberikan pandangan statis atau struktural dari sistem.

Ini tidak menunjukkan sifat dinamis dari komunikasi antara

objek kelas dalam diagram. Unsur-unsur utama dari diagram

kelas adalah kotak, yang merupakan ikon yang digunakan

untuk mewakili kelas dan interface. Setiap kotak dibagi

Page 4: 2012-2-01552-IF Bab2001

13

menjadi bagian-bagian horisontal. Bagian atas berisi nama

kelas. Bagian tengah daftar atribut dari kelas. Atribut mengacu

pada sesuatu yang merupakan obyek yang dikenali oleh class.

Atribut biasanya diimplementasikan sebagai bidang kelas,

tetapi mereka tidak perlu. Mereka dapat menjadi nilai-nilai

yang dapat dihitung oleh kelas dari variabel atau nilai-nilai

yang bisa didapatkan kelas dari objek – objek lain. (Pressman,

2010, P.842)

Gambar 2.2 Contoh Class Diagram

2.1.2.2. Use-Case Diagram

Sebuah UML use case diagram adalah gambaran

dari semua kasus penggunaan dan bagaimana mereka

berhubungan. Ini memberikan gambaran besar dari

fungsi sistem. Sebagai contoh, aplikasi mesin penjual

otomatis mungkin memiliki tiga aktor yang mewakili

pelanggan, teknisi perbaikan, dan vendor yang mengisi

ulang mesin. Dalam diagram use case, kasus

penggunaan ditampilkan sebagai oval. Para aktor

terhubung oleh garis dengan kasus penggunaan yang

Page 5: 2012-2-01552-IF Bab2001

14

mereka lakukan. Perhatikan bahwa tidak ada rincian

kasus penggunaan termasuk didalam diagram dan

sebagai gantinya perlu disimpan secara terpisah.

Perhatikan juga bahwa kasus penggunaan ditempatkan

dalam persegi panjang tapi aktor tidak. Persegi panjang

ini adalah pengingat visual dari batas-batas sistem dan

bahwa aktor berada di luar sistem. Beberapa kasus

penggunaan dalam sistem yang mungkin berkaitan satu

sama lain. Misalnya, ada beberapa langkah yang sama

dalam "membakar" daftar lagu ke CD dan memuat

daftar lagu ke iPod. Dalam kedua kasus, pengguna

pertama menciptakan daftar kosong dan kemudian

menambahkan lagu dari perpustakaan ke dalam daftar.

Untuk menghindari duplikasi dalam kasus penggunaan,

biasanya lebih baik untuk membuat kasus penggunaan

baru yang mewakili kegiatan yang digandakan, dan

kemudian membiarkan kegunaan lain kasus ini

termasuk kasus penggunaan baru sebagai salah satu

langkah mereka (Pressman, 2010, P847-848).

Page 6: 2012-2-01552-IF Bab2001

15

Gambar 2.3 Contoh Use-Case Diagram

2.1.2.3. Sequence Diagram

Sebuah diagram urutan digunakan untuk

menunjukkan komunikasi yang dinamis antara obyek

selama pelaksanaan tugas. Ini menunjukkan urutan

temporal di mana pesan yang dikirim antara objek untuk

menyelesaikan tugas itu. Orang mungkin menggunakan

diagram urutan untuk menunjukkan interaksi dalam satu

kasus penggunaan atau di salah satu skenario dari

sistem perangkat lunak. Sebuah diagram urutan

menunjukkan panggilan metode menggunakan panah

horizontal dari pemanggil ke penerima, diberi label

dengan nama metode dan secara opsional termasuk

Page 7: 2012-2-01552-IF Bab2001

16

parameter, jenis mereka, dan jenis pengembalian

(Pressman, 2010, P848-850).

Gambar 2.4 Contoh Sequence Diagram

2.1.2.4. Activity Diagram

Sebuah diagram aktivitas UML menggambarkan

perilaku dinamis dari suatu sistem atau bagian dari

sistem melalui aliran kontrol antara aksi yang dilakukan

sistem. Sebuah diagram aktivitas UML menggambarkan

perilaku dinamis dari suatu sistem atau bagian dari

sistem melalui aliran kontrol antara aksi bahwa sistem

melakukan. Hal ini mirip dengan flowchart kecuali

bahwa suatu diagram aktivitas dapat menunjukkan

aliran bersamaan. Komponen utama dari suatu diagram

aktivitas adalah Node aksi, diwakili oleh persegi

panjang bulat, yang sesuai dengan tugas yang dilakukan

oleh sistem perangkat lunak. Panah dari satu node aksi

Page 8: 2012-2-01552-IF Bab2001

17

lainnya menunjukkan aliran kontrol. Artinya, panah

antara dua node aksi berarti bahwa setelah aksi pertama

selesai aksi kedua dimulai. Sebuah titik hitam pekat

membentuk node awal yang menunjukkan titik awal

kegiatan. Sebuah titik hitam yang dikelilingi oleh

lingkaran hitam adalah node akhir yang menunjukkan

akhir kegiatan. Fork merupakan pemisahan kegiatan

menjadi dua atau lebih kegiatan bersamaan. Hal ini

digambarkan sebagai bar hitam horizontal dengan satu

panah menunjuk kepadanya dan dua atau lebih anak

panah menunjuk darinya. Setiap panah keluar mewakili

aliran kontrol yang dapat dijalankan bersamaan dengan

arus yang sesuai dengan panah keluar lainnya. Kegiatan

bersamaan ini dapat dilakukan pada komputer dengan

menggunakan benang yang berbeda atau bahkan

menggunakan komputer yang berbeda.

Page 9: 2012-2-01552-IF Bab2001

18

Gambar 2.5 Contoh Activity Diagram

Sebuah node keputusan berkaitan dengan suatu

cabang di aliran kontrol berdasarkan kondisi. Seperti

node ditampilkan sebagai segitiga putih dengan panah

masuk dan dua atau lebih anak panah keluar. Setiap

panah keluar diberi label dengan penjaga (suatu kondisi

di dalam tanda kurung siku). Aliran kontrol mengikuti

panah keluar penjaga yang benar. Dianjurkan untuk

memastikan bahwa kondisi mencakup semua

kemungkinan sehingga tepat satu dari mereka benar

Page 10: 2012-2-01552-IF Bab2001

19

setiap kali node keputusan tercapai (Pressman, 2010,

P853-854).

2.1.3. Software Engineering

Software engineering adalah disiplin teknik yang berkaitan

dengan semua aspek produksi perangkat lunak dari tahap awal

spesifikasi sistem sampai pemeliharaan sistem setelah itu perangkat

lunak sudah mulai digunakan. Dalam definisi ini, ada dua frase kunci:

1. Disiplin teknik membuat sesuatu bekerja. Mereka

menerapkan teori, metode, dan alat-alat di mana keduanya tepat.

Namun, mereka menggunakannya selektif dan selalu mencoba untuk

menemukan solusi untuk masalah bahkan ketika tidak ada teori dan

metode yang dapat aplikatif. Insinyur juga mengakui bahwa mereka

harus bekerja untuk kendala organisasi dan keuangan sehingga mereka

mencari solusi dalam kendala.

2. Semua aspek rekayasa perangkat lunak production software

tidak hanya berkaitan dengan proses teknis dari pengembangan

perangkat lunak. Ini juga mencakup kegiatan seperti manajemen

proyek perangkat lunak dan pengembangan alat, metode, dan teori

untuk mendukung produksi perangkat lunak.

Teknik adalah tentang mendapatkan hasil kualitas yang

diperlukan dalam jadwal dan anggaran. Hal ini sering kali melibatkan

kompromi membuat insinyur tidak dapat perfeksionis. Orang-orang

menulis program untuk diri mereka sendiri, bagaimanapun, bisa

Page 11: 2012-2-01552-IF Bab2001

20

menghabiskan waktu sebanyak yang mereka inginkan pada

pengembangan program (Sommerville, 2011, P.7-9).

2.1.4. MySQL

MySQL adalah salah satu jenis database yang banyak

digunakan untuk membuat aplikasi berbasis web yang dinamis.

MySQL termasuk jenis RDBMS (Relational Database Management

System). MySQL ini mendukung bahasa pemrograman PHP. MySQL

juga mempunyai query atau bahasa SQL (Structured Query Language)

yang simple dan menggunakan escape character yang sama dengan

PHP (Kurniawan, 2010:16).

MySQL adalah sebuah program open source. Open source

berarti bahwa memungkinkan bagi siapa saja untuk menggunakan dan

memodifikasi software tersebut. Siapa saja dapat mengunduh MySQL

dari internet dan menggunakannya secara gratis. MySQL dapat

diunduh pada halaman web www.mysql.com/downloads/ . Source code

pada MySQL dapat dipelajari dan diubah sesuai dengan kebutuhan

pemakainya. Perangkat lunak MySQL menggunakan GPL (General

Public License) untuk menentukan apa yang boleh dan tidak boleh

dilakukan dengan perangkat lunak dalam situasi yang berbeda.

2.1.5. PHP

PHP adalah bahasa pemrograman untuk dijalankan melalui

halaman web, umumnya digunakan untuk mengolah informasi di

internet. Sedangkan dalam pengertian lain PHP adalah singkatan dari

Page 12: 2012-2-01552-IF Bab2001

21

PHP Hypertext Preprocessor yaitu bahasa pemrograman web server-

side yang bersifat open source atau gratis. PHP merupakan script yang

menyatu dengan HTML dan berada pada server (server side HTML

embedded scripting) (Kurniawan, 2010:2)

PHP adalah bahasa pemrograman script yang paling banyak

dipakai saat ini. PHP adalah script yang digunakan untuk membuat

halaman web yang dinamis. Dinamis berarti halaman yang akan

ditampilkan dibuat saat halaman itu diminta oleh client. Mekanisme ini

menyebabkan informasi yang diterima client selalu yang terbaru atau

up to date. Semua script PHP dieksekusi pada server dimana script

tersebut dijalankan.

2.1.6. Database

Database adalah Sebuah koleksi bersama data secara logis

berhubungan (dan deskripsi dari data ini), yang dirancang untuk

memenuhi kebutuhan informasi dari suatu organisasi. Database

adalah, satu kemungkinan besar, repositori data yang dapat digunakan

secara bersamaan oleh banyak departemen dan pengguna. Semua data

yang dibutuhkan oleh para pengguna yang terintegrasi dengan jumlah

minimum duplikasi. Yang penting, database biasanya tidak dimiliki

oleh satu departemen atau pengguna tetapi merupakan sumber daya

perusahaan bersama. Serta memegang data operasional organisasi,

database memegang deskripsi data ini. Untuk alasan ini, database juga

didefinisikan sebagai kumpulan self-describing catatan terintegrasi.

Deskripsi data, yaitu metadata - 'data tentang data,' yang dikenal

sebagai sistem katalog atau kamus data. Ini adalah sifat self-describing

Page 13: 2012-2-01552-IF Bab2001

22

dari database yang menyediakan apa yang dikenal sebagai

independensi data. Ini berarti bahwa jika data baru struktur

ditambahkan ke database atau struktur yang ada dalam database yang

dimodifikasi, maka aplikasi database yang menggunakan database

tidak terpengaruh, asalkan mereka tidak secara langsung bergantung

pada apa yang telah dimodifikasi. Istilah terakhir dalam definisi

database yang kita harus menjelaskan adalah 'logika terkait. "Ketika

kita menganalisis kebutuhan informasi organisasi, kami mencoba

untuk mengidentifikasi benda-benda penting yang perlu diwakili dalam

database dan hubungan logis antara benda-benda. (Connolly and Begg,

2008, P.7-8)

2.1.7. Internet

Internet merupakan sebuah kumpulan dari jaringan komputer

yang saling berhubungan. Pada kenyataannya internet merupakan

kependekan dari “Interconnected Network”. Internet dimana yang

menggunakan sekumpulan aturan, dan menghubungkan jaringan

komputer seluruh dunia. Jaringan antar komputer dan internet yang

menghubungkan mereka satu sama lain dalam bentuk yang mewakili

electronic commerce .(Schneider, G.P,2011,p55).

2.1.8. Website

Website atau situs dapat diartikan sebagai kumpulan halaman

yang menampilkan informasi data teks, data gambar diam atau gambar

gerak, data animasi, suara, video, dan atau gabungan dari semuanya,

baik yang bersifat statis maupun dinamis yang membentuk satu

rangkaian bangunan yang saling terkait dimana masing – masing

Page 14: 2012-2-01552-IF Bab2001

23

dihubungkan dengan jaringan – jaringan halaman (hyperlink). Bersifat

statis apabila isi informasi website tetap, jarang berubah, dan isi

informasinya searah hanya dari pemilik website. Bersifat dinamis

apabila isi informasi website selalu berubah – ubah, dan isi

informasinya interaktif dua arah berasal dari pemilik serta pengguna

website. Website merupakan salah satu wadah yang menawarkan

informasi dan hiburan, serta situs transaksi e-commerce antara bisnis

dan pemasok serta pelanggan (O’Brien, 2006, p262).

2.1.9. World Wide Web (WWW)

Berners-Lee menyebut HTML yang telah dihyperlink

merupakan sebuah World Wide Web. Web ditanggap sangat cepat oleh

kelompok Science Researcher. Web pages deprogram secara spesifik

untuk tetap ada dalam bentuk permanen. Web menyediakan akses ke

dalam web pages yang telah dimodifikasi yang dibuat berdasarkan

respon query daripada user.(Schneider, G.P,2011,p61).

2.1.10. E-Business

Menurut Carter (2002, p3) E-business memiliki banyak tipe dari

berbagai arti yang berbeda – beda terhadap orang yang berbeda pula.

Arti – arti ini memiliki arti dari yang umum sampai arti khusus.

• IBM menggunakan arti yang mereferensi kepada konsep yang

lebih besar yang membuat semua orang memilih e-commerce

dan menggunakan e-commerce untuk aktivitas yang melibatkan

transaksi bisnis.

Page 15: 2012-2-01552-IF Bab2001

24

• Sebagian orang menggunakan aturan untuk memilih kepada

aktivitas e-commerce yang melibatkan transaksi bisnis.

Menurut Buku ini, e-business lebih cenderung untuk mengatur

tipe – tipe bisnis melalui internet. Tipe ini melibatkan cara

mengatur “Virtual Business” atau “Electronic Storefronts”

dalam World Wide Web. Meskipun beberapa organisasi baru

dapat mengatur semua bisnis mereka seperti cara lain

menjangkau customer mereka.

• Sebagian orang menggunakan aturan aktivitas e-

commerce yang mengatur secara eksklusif antara bisnis, yang

sering diartikan sebagai b2b e-commerce.

2.1.11. Interaksi Manusia dan Komputer (IMK)

Menurut Schneiderman (2010, p88-89) Interaksi Manusia dan

Komputer merupakan disiplin ilmu yang berhubungan perancangan,

evaluasi, dan implementasi sistem komputer interaktif untuk digunakan

oleh manusia serta studi fenomena – fenomena besar yang

berhubungan dengannya. Tujuan dari ilmu ini adalah untuk

membangun atau merancang suatu sistem yang aman, sesuai dengan

kebutuhan, efektif, efisien dan dapat dipakai. Konsep utama dari

interaksi manusia dan komputer adalah bagaimana membuat sistem

yang mudah dipelajari dan digunakan.

2.1.11.1. Eight Golden Rules

Elemen-elemen dari delapan aturan emas antara lain adalah:

1. Konsistensi

Page 16: 2012-2-01552-IF Bab2001

25

Konsisten terhadap seluruh aksi harus sama dalam segala

keadaan. Penginformasian yang sama harus dugunakan

dalam notifikasi, menu, dan help, serta warna, layout, font,

dan kapitalisasi yang konsisten. Pengecualian, seperti

konfirmasi menghapus harus dibatasi.

2. Memenuhi kebutuhan universal

Mengenali kebutuhan user yang beragam, dan desain

untuk plasticity, dan memfasilitasi transformasi konten.

Pemula sampai pakar, rentang umur, ketidakmampuan,

dan keragaman teknologi yang memperkaya kebutuhan

akan desain. Penambahan fitur untuk pemula, seperti

penjelasan, dan fitur untuk yang pakar, seperti shortcut,

dan pengembalian yang cepat dapat memperkaya desain

interface dan dapat meningkatkan kualitas dari sistem itu.

3. Menawarkan umpan balik yang informatif

Untuk setiap aksi dari user, harus ada umpan balik. Untuk

aksi yang sering dan minor, respon dapat secara sederhana,

tetapi dalam aksi yang jarang dan mayor, responnya harus

secara substansial. Presentasi visual dari obyek yang

menarik untuk menampilkan perubahan secara eksplisit.

4. Dialog desain untuk menghasilkan

penutupan

Page 17: 2012-2-01552-IF Bab2001

26

Setiap aksi harus disusun dalam kelompok dengan

permulaan, pertengahan, dan akhir. Umpan balik

informatif pada penyelesaian sekelompok tindakan

memberikan operator kepuasan prestasi, rasa lega, sinyal

untuk menjatuhkan rencana kontingensi dari pikiran

mereka, dan indikator untuk mempersiapkan tindakan

kelompok berikutnya.

5. Mencegah kesalahan

Sebisa mungkin, mendesain sistem yang memungkinkan

user tidak dapat membuat kesalahan yang fatal. Jika user

membuat kesalahan, interface-nya harus mendeteksi

adanya kesalahan, dan menganjurkan instruksi yang

mudah, membangun, dan spesifik untuk pemulihan. Aksi

yang sangat menyalahkan harus meninggalkan status

sistem tidak dirubah, atau interface-nya harus memberi

instruksi tentang memulihkan status tersebut.

6. Mengijinkan pengembalian aksi yang mudah

Sebanyak mungkin, aksi harus bisa dikembalikan. Fitur ini

mencerminkan kesungguhan, sejak user mengetahuui

bahwa kesalahan dapat diperbaiki, dan keinginan untuk

mengeksplorasi opsi yang tidak familiar. Unit yang data

dikembalikan mungkin berupa aksi tunggal, data-entry

task, atau sekumpulan aksi yang lengkap.

Page 18: 2012-2-01552-IF Bab2001

27

7. Mendukung pusat kendali internal

User yang berpengalaman menyadari secara kuat

keinginan bahwa mereka berpartisipasi dalam interface

dan respon dari interface tersebut terhadap aksi mereka.

Mereka tidak ingin mengejutkan atau menganti sifat yang

familiar, dan mereka terganggu dengan data-entry yang

berantakan, kesulitan dalam mendapatkan informasi yang

diinginkan, dan ketidakmampuan untuk menghasilkan

hasil yang diinginkan.

8. Mengurangi beban ingatan jangka pendek

Keterbatasan manusia dalam memproses informasi dalam

ingatan jangka pendek membuat pendesain menghindari

interface yang membuat user harus mengingat informasi

dari suatu tampilan, dan juga menggunakan informasi

tersebut dalam tampilan lain. Ini menandakan bahwa

handphone tidak harus mengisi kembali nomer ponsel,

alamat website harus terlihat jelas, halaman yang banyak

harus dapat dikonsolidasi, dan waktu training yang cukup

untuk aksi yang kompleks.