Aplikasi pemesanan spare part motor berbasis web

(1)

ERRY HANDOYO

104091002869

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI (UIN)

SYARIF HIDAYATULLAH

JAKARTA

2011 M / 1432 H


(2)

(3)

(4)

iv

BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.

Jakarta, Agustus 2011

Erry Handoyo 104091002869


(5)

v

dari banyak pihak. Maka perkenankanlah penulis untuk mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Ibunda Tercinta Siti Kasiyati dan Ayahanda Rijadi yang tidak pernah berhenti merawat, mendoakan, dan mendukung penulis dengan penuh kasih sayang. Terima kasih atas semua pengorbanan, usaha dan jerih payah Ayah dan Bunda untuk selalu membuat penulis merasa bahagia. 2. Saudariku, Desi Setiyani yang selalu penulis banggakan dan sayangi

sepenuh hati.

3. Fitriyanti, atas semua bentuk dukungan, motivasi dan kasih sayang yang selalu menemani hari-hari penulis.

4. Sahabat-sahabatku yang selalu setia menemani saat suka dan duka : Makhsus, Toni, Sigit, Danang, Umi, Nita, yang selalu bersama-sama berjuang menyelesaikan skripsi. Zahruddin, Taufiq, Arie Syuryadi, Rahmat Hidayat dan Robby Darmawan, terima kasih atas persahabatan indah yang kita miliki.

5. Teman-teman TI C 2004 : Alvin, Wahyuni, Syukrina, Hani, Endah, Desi,

Ziah, Sarah, Eni, Rizal, Razka, Budi, Asep, Malik, Sidiq, Fajar, Dwi, Rahmat Ruhyat, Agil, Rendy, Ariefati, Hirzi, Kaut, Anton dan Egi. Terima kasih atas keceriaan, dukungan dan motivasi yang selalu kalian tunjukkan,


(6)

vi

7. Teman-temanku di Agribisnis dan MIPA.

Semoga Allah selalu melimpahkan rahmat dan karunia-Nya kepada kalian semua dan melindungi kalian di setiap langkah.

Jakarta, Agustus 2011


(7)

vii

Perkembangan teknologi internet yang sangat cepat dari tahun ke tahun. Internet saat ini sangat dibutuhkan misalnya untuk media promosi suatu produk. Untuk menjual suatu produk, penjual masih menggunakan cara biasa yaitu dengan menjualnya di toko-toko. Dengan sistem penjualaan seperti itu, maka hanya terbatas saja pembeli yang mengetahui tentang produk yang dijual. Dengan adanya internet, penjual dapat mempromosikan sekaligus menjual produknya melalui website. Penelitian ini membahas mengenai proses pemesanan produk secara online yang akan diimplementasikan pada pemesanan produk spare part motor. Dalam pembuatan website aplikasi pemesanan ini nantinya akan menjadi acuan untuk dapat merancang proses pemesanan melalui media elektronik dan sebagai promosi produksi itu sendiri. Tools yang digunakan dalam pembuatan website penjualan spare part motor ini yaitu komponen virtue mart untuk sistem pemesanannya, joomla untuk template website dan content manajemen sistem (CMS), MySQL untuk databasenya, dan script PHP sebagai dasar bahasa pemrograman yang digunakan. Penelitian ini bertujuan untuk merancang suatu apliksasi pemesanan yang dapat membantu para pembeli spare part motor untuk melakukan pemesanan barang dengan mudah. Namun, transaksi pembayarannya dilakukan secara manual dan tidak terintegrasi dengan aplikasi.


(8)

viii

Assalaamu’alaikum Wr. Wb.

Alhamdulillah, rasa syukur tiada terkira penulis panjatkan kepada Allah Subhanahu Wata’ala. Rahmat dan salam semoga tercurahkan selalu kepada Rasulullah Muhammad SAW beserta keluarga, sahabat, dan pengikut-pengikut beliau (amin). Hanya berkat petunjuk dan pertolongan Allah-lah penulis dapat menyelesaikan skripsi yang berjudul : Aplikasi Pemesanan Spare Part Motor Berbasis Web.

Terwujudnya tulisan dalam bentuk skripsi ini, tentunya tidak terlepas dari bantuan dan bimbingan dari berbagai pihak. Rasa terima kasih penulis ucapkan kepada :

1. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains dan Teknologi.

2. Bapak Yusuf Durrachman, M.Sc, M.IT, selaku Ketua Program Studi Teknik

Informatika.

3. Bapak Herlino Nanang, MT, selaku dosen pembimbing I, dan

4. Ibu Fenty Eka Muzayyana, M.Kom, selaku dosen pembimbing II, yang telah memberikan bimbingan, waktu, dan perhatiannya dalam penyusunan skripsi ini.


(9)

ix

6. Ibunda dan Ayahanda tercinta Siti Kasiyati dan Rijadi atas kasih sayang tulusnya sepanjang masa.

Dalam penyusunan skripsi ini, penulis juga tidak luput dari berbagai masalah dan menyadari sepenuhnya bahwa penulisan ini masih jauh dari sempurna dan tidak lepas dari kesalahan dan kekurangan, oleh karena itu dengan senang hati penulis akan menerima semua saran dan kritik maupun ide-ide yang membangun dari rekan-rekan pembaca. Akhir kata semoga Allah membalas kebaikan mereka yang telah membimbing penulis dalam membuat skripsi ini. Semoga skripsi ini berguna bagi penulis dan pada pembaca umumnya.

Wassalaamu’alaikum Wr. Wb.

Jakarta, Agustus 2011 Penulis

Erry Handoyo NIM. 104091002869


(10)

x

PERNYATAAN ... iv

HALAMAN PERSEMBAHAN ... v

ABSTRAK ... vii

KATA PENGANTAR ...viii

DAFTAR ISI ... x

DAFTAR GAMBAR ... xii

DAFTAR TABEL ...xiii

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Rumusan Masalah ... 2

1.3 Batasan Masalah ... 3

1.4 Tujuan Penelitian ... 3

1.5 Manfaat Penelitian ... 4

1.6 Metodologi Penelitian ... 5

1.7 Sistematika Penulisan ... 6

BAB II LANDASAN TEORI ... 8

2.1 Definisi Informasi ... 8

2.2 Internet ... 8

2.3 Aplikasi Web ... 9

2.4 Metode Pengembangan Perangkat Lunak ... 9

2.4.1 Model RAD ... 10

2.4.2 Data Flow Diagram (DFD) ... 13

2.4.2.1 Tahapan Data Flow Diagram ... 15

2.4.3 Entity Relationship Diagram (ERD) ... 16

2.5 Content Management System ... 18

2.5.1 Joomla ... 19


(11)

xi

2.6.5 MySQL ... 27

2.7 Web Browser ... 27

BAB III METODOLOGI PENELITIAN ... 29

3.1 Metode Pengumpulan Data ... 29

3.2 Metode Pengembangan Sistem ... 30

3.3 Kerangka Berfikir Penelitian ... 34

BAB IV PEMBAHASAN DAN IMPLEMENTASI ... 35

4.1 Metodologi Pengumpulan Data ... 35

4.1.1 Studi Pustaka ... 35

4.1.2 Studi Lapangan ... 35

4.1.2.1 Wawancara ... 35

4.1.2.2 Observasi ... 36

4.1.3 Studi Literatur ... 38

4.2 Metode Pengembangan Sistem ... 39

4.2.1 Fase Perencanaan Syarat-syarat ... 39

4.2.2 Fase Perancangan ... 46

4.2.3 Fase Konstruksi ... 62

4.2.4 Fase Pelaksanaan ... 63

BAB V PENUTUP ... 65

5.1 Kesimpulan ... 65

5.2 Saran ... 65


(12)

xii

Gambar 2.2 Workshop Desain RAD ... 12

Gambar 2.3 Tampilan Adobe Photoshop CS3 ... 21

Gambar 2.4 Tampilan Dreamweaver 8 ... 23

Gambar 2.5 Skema PHP ... 26

Gambar 3.1 Model Membangun Sistem RAD ... 31

Gambar 3.2 Kerangka Berfikir Penelitian ... 34

Gambar 4.1 Diagram Sistem yang Berjalan ... 40

Gambar 4.2 Diagram Sistem Usulan ... 42

Gambar 4.3 Diagram Konteks ... 46

Gambar 4.4 Diagram Zero Sistem yang Diusulkan ... 47

Gambar 4.5 Diagram Level 2 Proses Ke-1 ... 48

Gambar 4.6 Diagram Level 2 Proses Ke-2 ... 49

Gambar 4.7 Diagram Level 2 Proses Ke-3 ... 50

Gambar 4.8 Entity Relationship Diagram ... 51

Gambar 4.9. Rancangan Halaman Index ... 54

Gambar 4.10 Rancangan Halaman Pooling ... 55

Gambar 4.11 Rancangan Halaman Produk ... 56

Gambar 4.12 Rancangan Halaman Shopping Cart ... 57

Gambar 4.13 Rancangan Halaman Registrasi ... 58

Gambar 4.14 Rancangan Halaman Guest Book ... 59

Gambar 4.15 Rancangan Halaman Contact Us ... 60

Gambar 4.16 Rancangan Halaman List Order ... 61


(13)

xiii

Tabel 4.1 Perbandingan Sistem Berjalan Dengan Sistem Usulan ... 42

Tabel 4.2 Tabel Produk ... 52

Table 4.3 Tabel User ... 52

Tabel 4.4 Tabel Order ... 53


(14)

1

BAB I

PENDAHULUAN

1.1Latar Belakang Masalah

Perkembangan teknologi dibidang informasi mendorong setiap instansi atau perusahaan untuk tetap mengikuti perkembangannya, terutama berkenaan dengan perkembangan teknologi informasi yang ada hubungannya dengan kegiatan perusahaan tersebut. Perkembangan teknologi informasi telah memberikan kontribusi yang cukup berarti dalam meningkatkan kegiatan usaha khususnya dalam hal pengolahan data yang memberi

dukungan terhadap pengambilan keputusan-keputusan bisnis serta

Perkembangan teknologi informasi telah memberikan kontribusi yang cukup berarti dalam meningkatkan kegiatan pelayanan.

Berdasarkan pada uraian diatas, pemanfaatan teknologi informasi dalam suatu aktivitas bisnis merupakan hal yang cukup penting. Begitu pentingnya sehingga hampir setiap perusahaan yang serupa menggunakan sistem pelayanan bisnis secara online, apalagi di zaman sekarang ini bukan hanya perusahaan -perusahaan yang sudah mempunyai tempat dan nama di dunia bisnis, perusahaan atau usaha rumahan pun bisa dijadikan lahan bisnis dengan sentuhan teknologi informasi sekarang ini. Setiap orang tidak diharuskan lagi dan diwajibkan lagi mempunyai tempat untuk usaha, letak strategis untuk usaha kemudian modal yang besar untuk sewa tempat dan lain sebagainya. Cukup dengan mempunyai suatu produk dan usaha rumahan pun


(15)

bisa dilakukan yaitu dengan cara mempromosikan dan memperkenalkan produknya melalui internet. Karena di era globalisasi sekarang ini setiap orang dalam mencari informasi hal pertama yang dilakukan cenderung mencari sesuatu melalui dunia maya, baik itu hanya sekedar referensi ataupun melakukan pemesanan online.

Berkaitan dengan tugas akhir ini penelitian difokuskan pada masalah pemanfaatan tujuan teknologi informasi yang dapat memberi dukungan aktif kelancaran usaha penjualan barang yang dilakukan oleh suatu perusahaan atau usaha rumahan yang diberi judul Aplikasi Pemesanan Spare Part Motor Berbasis Web .

1.2Rumusan Masalah

Berdasarkan observasi yang dilakukan di suatu Perusahaan terhadap sistem informasi pemesanan barang dikemukakan hal-hal yang menjadi permasalahan antara lain:

1. Bagaimana cara penyampaian informasi barang yang terdapat pada usaha pemesanan spare part motor berbasis web?

2. Bagaimana merancang sebuah aplikasi pemesanan barang yang sifatnya online?


(16)

1.3 Batasan Masalah

Masalah yang ada dalam sistem informasi penjualan barang ini dibatasi pada ruang lingkup seperti :

1. Sistem hanya memberikan informasi barang yang tersedia dan proses pemesanan barang tersebut.

2. Data yang diolah hanya data barang dan data Pengguna Sistem Informasi.

3. Sistem ini tidak membahas mengenai masalah persediaan barang. 4. Pembayaran transaksi dilakukan secara offline, dimana pembeli

melakukan transfer uang secara manual pada rekening yang ditetapkan.

5. Desain web menggunakan CMS (Content Management System)

Joomla dan komponen Virtue Mart.

6. Web server menggunakan Xampp dan database menggunakan

MySQL.

1.4 Tujuan Penelitian

Tujuan yang ingin dicapai dari tugas akhir ini adalah :

1.Mempermudah pihak CMR untuk mengelola pemesanan spare part motor

dan memperluas jangkauan konsumen.

2.Mempermudah bagi masyarakat atau dunia luar untuk mendapatkan informasi mengenai spare part motor dan melakukan pemesanan spare part motor secara langsung.


(17)

1.5Manfaat Penelitian

Manfaat yang didapat dalam menulis skripsi ini adalah :

1. Bagi Peneliti

a. Dapat mempelajari lebih jauh mengenai aplikasi berbasis web. b. Mengetahui secara langsung penggunaan atau peranan teknologi

informasi dan komunikasi di tempat penelitian.

c. Mengenal lebih jauh teknologi- teknologi informasi yang sedang berkembang saat ini.

2. Bagi Pengguna

a. Memudahkan akses terhadap informasi produk, karena dapat diakses melalui jaringan internet.

b. Memiliki sebuah aplikasi berbasis web yang mudah digunakan oleh masyarakat umum.

c. Menjadikan bengkel lebih maju sesuai dengan perkembangan teknologi.

3. Bagi Universitas

a. Memberikan kemajuan ilmu pengetahuan dalam bidang aplikasi berbasis web di lingkungan UIN Syarif Hidayatullah Jakarta. b. Memberi sumbangan ilmiah bagi perkembangan aplikasi berbasis

web.


(18)

1.6 Metodologi Penelitian

1. Metode pengumpulan data

Dalam pengumpulan data dan pencarian fakta untuk penelitian skripsi ini, peneliti menggunakan metode fact finding technique. Fact Finding Technique dilakukan untuk proses pengembangan system, di dalam Fact Finding Technique dilakukan proses pencarian dan penemuan fakta serta pencarian data dari suatu kasus yang akan membantu proses

pengembangan system suatu organisasi. Fact Finding Technique yang digunakan dalam penelitian ini adalah

a. Studi Pustaka

b. Observasi

c. Wawancara

d. Studi Literatur

2. Metode Pengembangan Sistem

Sistem pengembangan perangkat lunak yang penulis gunakan adalah sistem RAD (Rapid Application Development) yang dikembangkan oleh James Martin. Tahap-tahap sistem RAD meliputi (Kendall & Kendall, 2003:239):

1. Fase Menentukan Syarat-Syarat

Pada tahap ini dilakukan penentuan tujuan dan syarat-syarat informasi, yaitu dengan melakukan analisa kebutuhan masalah untuk pembuatan aplikasi pemesanan berbasis web, menentukan


(19)

tujuan dibuatnya aplikasi, lalu menentukan syarat-syarat yang diperlukan untuk membuat aplikasi.

2. Fase Perancangan

Pada tahap ini dilakukan perancangan proses-proses yang akan terjadi dalam sistem dan perancangan antar muka. Pada perancangan proses digunakan alat bantu DFD untuk memudahkan peneliti dalam merancang aplikasi pemesanan yang akan dibuat

3. Fase Konstruksi

Pada tahap ini dilakukan pengkodean terhadap rancangan-rancangan yang telah didefinisikan. Peneliti menggunakan PHP untuk bahasa pemrograman dan Joomla untuk template. Web Server Apache sebagai platform untuk menjalankan aplikasi, kemudian menggunakan MySQL sebagai database.

4. Fase Pelaksanaan

Pada tahap ini dilakukan pengujian terhadap sistem. Untuk uji aplikasi dilakukan dengan menggunakan metode blackbox.

1.7 Sistematika Penulisan

Pada dasarnya, penyusunan sistematika penulisan bertujuan untuk

memudahkan para pembaca dalam mengikuti apa yang dipaparkan dalam laporan tugas akhir ini. Sistematika penulisan tugas akhir ini disusun sebagai berikut :


(20)

BAB I PENDAHULUAN

Dalam bab ini berisikan latar belakang masalah, identifikasi

masalah, tujuan penelitian, batasan masalah, metodologi penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini menjelaskan tentang teori-teori yang berkaitan dengan isi laporan tugas akhir dan aplikasi web yang dibuat, diantaranya tentang internet, konsep aplikasi web yang interaktif, bahasa web scripting PHP dan database server MySQL.

BAB III METODOLOGI PENELITIAN

Bab ini menguraikan metode penelitian yang digunakan penulis,baik itu metode pengumpulan data maupun metode pengembangan sistem.

BAB lV PEMBAHASAN DAN IMPLEMENTASI

Dalam bab ini menganalisis objek penelitian, anlisis kebutuhan sistem, serta perancangan sistem yang akan dibuat. Dalam

implementasi diuraikan tentang pemilihan bahasa pemrograman yang digunakan, perangkat keras yang diperlukan, pemrograman dan pengujian aplikasi.

BAB V PENUTUP

Berisikan tentang kesimpulan dari seluruh pembahasan yang telah dikerjakan dari bab I sampai dengan bab IV serta saran–saran.


(21)

8 BAB II

LANDASAN TEORI

2.1 Definisi Informasi

Sumber Informasi adalah data. Data adalah fakta mentah mengenai orang, tempat, kejadian, dan hal-hal yang penting dalam organisasi (Whitten, 2004).

Menurut Davis (1999), Informasi adalah data yang sudah diolah menjadi bentuk yang berarti bagi penerimanya yang bermanfaat dalam pengambilan keputusan saat ini atau saat mendatang (Kadir, 2003).

2.2 Internet

Sebagai gambaran umum, internet adalah suatu jaringan komputer global terbentuk dari jaringan-jaringan komputer lokal dan regional, memungkinkan komunikasi data antar komputer-komputer yang terhubung ke jaringan tersebut.Asal usul Internet berasal dari jaringan komputer yang dibentuk pada tahun 1970an. Jaringan komputer tersebut disebut dengan Arpanet, yaitu jaringan komputer yang dibentuk oleh departemen pertahanan Amerika Serikat. Selanjutnya jaringan komputer tersebut diperbarui dan dikembangkan, dan sekarang penerusnya menjadi tulang punggung global untuk sumber daya informasi yang disebut dengan internet. Namun demikian membayangkan Internet sebagai sekedar jaringan Komputer adalah tidak tepat. Jaringan komputer hanyalah medium yang membawa informasi. Daya guna Internet terletak pada informasi itu sendiri,


(22)

bukan pada jaringan komputer. Sebaiknya memperhatikan Internet sebagai sumber daya informasi, bukan sebagai jaringan komputer.

2.3 Aplikasi Web

Aplikasi web dapat dibagi menjadi 2 kategori, yaitu web statis dan web dinamis (Kadir, 2003).

a. Web Statis

Web statis adalah aplikasi web yang berisi atau menampilkan informasi-informasi yang sifatnya statis (tetap). Disebut tetap karena pengunjung tidak dapat berinteraksi dengan web tersebut. Pada web statis pengunjung hanya dapat melihat isi dokumen pada halaman web. Web statis biasanya menggunakan pemrograman web HTML dan tidak memiliki database.

b. Web Dinamis

Web Dinamis adalah aplikasi web yang menampilkan informasi serta dapat berinteraksi dengan pengunjung dengan menggunakan form sehingga dapat mengolah informasi yang ditampilkan. Web dinamis biasanya menggunakan pemrograman web PHP dan memiliki database untuk menyimpan informasi, seperti MySQL.

2.4 Metode Pengembangan Perangkat Lunak

Ada beberapa model proses pengembangan perangkat lunak, namun pada skripsi ini hanya akan dibahas tentang RAD (Rapid Aplication Development) sebagai metode yang penulis pakai.


(23)

Beberapa alasan mengapa digunakan metode Rapid Application Development (RAD) adalah :

1. Aplikasi yang dikembangkan ini, merupakan aplikasi yang sederhana dan tidak memerlukan waktu yang lama dalam pengembangannya. Metode RAD mendukung untuk merancang aplikasi dalam jangka waktu yang pendek.

2. Aplikasi simulasi ini dalam implementasinya tidak memerlukan pemeliharaan, sehingga sangat cocok apabila digunakan metode RAD, karena metode ini tidak memiliki fase pemeliharaan.

3. Alasan utama penggunaan model pengembangan RAD adalah model pengembangan ini akan bekerja dengan baik bila diterapkan pada aplikasi berskala kecil.

2.4.1 Model RAD

Menurut Martin (Pressman, 2002: 42), Rapid Aplication Development (RAD) adalah sebuah model proses perkembangan perangkat lunak sekuensial linier yang menekankan pada siklus perkembangan cepat dengan menggunakan pendekatan konstruksi berbasis komponen. Sehingga apabila kebutuhan dipahami dengan baik, maka sistem fungsional yang utuh dapat diselesaikan dalam waktu kira-kira 60 – 90 hari. Menurut Martin (Kendall & Kendall, 2003:239), fase dalam RAD dibagi menjadi empat, yaitu :


(24)

1. Fase Perencanaan Syarat-syarat

Pada fase ini pengguna tingkat tinggi memutuskan fungsi apa saja yang harus difiturkan oleh aplikasi tersebut.

2. Fase Desain Pengguna

Pada fase ini pengguna diminta membahas aspek-aspek desain non-teknis dari sistem dengan bimbingan penganalisis. Kerena tingginya sifat interaktif, fase ini sering digabungkan dengan fase konstruksi pada workshop desain RAD.

3. Fase Konstruksi

Pada fase ini setiap desain yang diciptakan dalam fase

sebelumnya selanjutnya ditingkatkan untuk dilakukan

pengkodean sistem. Kemudian setelah tahap ini selesai dilakukan uji kemampuan untuk mendapatkan komentar, dan revisi dari pengguna tingkat tinggi.

4. Fase Pelaksanaan

Tahap terakhir adalah dimana aplikasi baru diuji coba dan pengenalan terhadap aplikasi.


(25)

Gambar 2.2. Workshop Desain RAD (Kendal & Kendal, 2003: 240)

Menurut Butler (Pressman 2002: 41), seperti semua model proses yang lain, pendekatan RAD memiliki kekurangan :

1. Bagi proyek yang besar tetapi berskala, RAD memerlukan sumber daya manusia yang memadai untuk menciptakan jumlah tim RAD yang baik.

2. RAD menurut pengembang dan pelanggan memiliki komitmen di dalam aktifitas rapid-fire yang diperlukan untuk melengkapi sebuah sistem, di dalam kerangka waktu yang sangat

Umpan balik pengguna

Menggunakan masukan dari pengguna


(26)

diperpendek. Jika komitmen tersebut tidak ada dari tiap kontituen, proyek RAD akan gagal.

2.4.2 Data Flow Diagram (DFD)

Pendekatan analisis terstruktur diperkenalkan oleh DeMarco (1978) dan Gane Sarson (1979) melalui buku metodologi struktur analisis dan desain sistem informasi. Mereka menyarankan untuk menggunakan data flow diagram (DFD) dalam menggambarkan atau membuat model sistem.

DFD (Data Flow Diagram) adalah sebuah teknik grafis yang

menggambarkan aliran informasi dan transformasi yang

diaplikasikan pada saat data bergerak dari input menjadi output yang digambarkan dalam bentuk diagram yang menggunakan notasi-notasi yang berupa simbol-simbol tertentu yang menunjukkan proses atau fungsi, aliran data, tempat penyimpanan data, dan entitas eksternal (Pressman,2002: 364).

Terdapat dua bentuk DFD yang ada sekarang ini, yaitu DFD Fisikal (Diagram Arus Data Fisik) dan DFD Logikal (Diagram Arus Data Logika).

DFD fisikal lebih tepat digunakan untuk menggambarkan sistem (sistem yang lama). Penekanannya yaitu bagaimana proses-proses dari sistem diterapkan (dengan cara apa, oleh siapa dan dimana) termasuk proses-proses manual, dengan mempertimbangkan lingkungan fisik dimana data tersebut mengealir (misanya lewat


(27)

telepon, surat, dan sebagainya) atau lingkungan fisik dimanadata tersebut akan disimpan (misalnya file kartu, hardisk, tape disk, dan sebagainya).

DFD adalah alat yang digunakan pada metodologi pengembangan sistem yang terstruktur (Structur Analys and Design) dan merupakan alat bantu yang cukup populer sekarang ini, karena dapat menggambarkan arus data dalam sistem dengan struktur yang jelas.

Beberapa simbol dalam DFD dapat dilihat pada tabel di bawah ini :

Tabel 2.1 Simbol DFD

Nama Simbol Keterangan Gambar Simbol 1. Kesatuan Luar Merupakan kesatuan

(entity) dilingkungan luar sistem yang dapat berupa orang, organisasi atau sistem lainnya yang berada

di lingkungan luarnya

yang memberikan input atau menerima output dari luar.

2. Arus Data Arus Data (Data Flow) di DFD yang bersimbol suatu

panah, arus data ini

mengalir diantara proses, simpanan data (Data store)


(28)

(External Entity). Arus data ini menunjukan arus data yang berupa masukan untuk sistem atau hasil dari proses sistem.

3. Proses Suatu kegiatan kerja yang

dilakukan oleh orang,

mesin atau komputer dari hasil suatu arus data yang akan keluar dari proses.

4. Simpanan Data

Simpanan Data (Data

Store) merupakan

simpanan dari data yang dapat berupa :

A. Suatu file atau database di sistem komputer B. Suatu arsip atau catatan

manual

C. Suatu kotak tempat

data dimeja seseorang

D. Suatu tabel acuan

manual

E. Suatu agenda atau buku

2.4.2.1Tahapan Data Flow Diagram

Langkah-langkah di dalam membuat data flow diagram dibagi menjadi tiga tahap, yaitu sebagai berikut:


(29)

1. Context Diagram

Diagram ini dibuat untuk menggambarkan sumber serta tujuan data yang akan diproses atau dengan kata lain diagram tersebut digunakan untuk menggambarkan sistem secara umum dari keseluruhan sistem sistem yang ada.

2. Diagram Zero

Diagram ini dibuat untuk menggambarkan tahapan proses yang ada di dalam context diagram, yang penjabarannya lebih terperinci.

3. Diagram Detail

Diagram ini dibuat untuk menggambarkan arus data secara lebih mendetail lagi dari tahapan proses yang ada didalam zero diagram.

2.4.3 Entity Relationship Diagram (ERD)

Entity Relationship Diagram merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi. ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu:

a. Entiti : Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain (Fathansyah,


(30)

1999: 30). Simbol dari entiti ini biasanya digambarkan dengan persegi panjang.

b. Atribut : Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips.

c. Hubungan / Relasi : Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi dapat digambarkan sebagai berikut:

Relasi yang terjadi diantara dua himpunan entitas (misalnya A dan B) dalam satu basis data yaitu (Kadir, 2002: 48) :

1). Satu ke satu (One to one)

Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B.

2). Satu ke banyak (One to many)

Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A.


(31)

3). Banyak ke banyak (Many to many)

Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.

2.5 Content Management Sistem

CMS (Content Management System) adalah suatu sistem yang digunakan untuk mengelola dan memfasilitasi proses pembuatan, pembaharuan, dan publikasi content secara bersama (collaborative content management). Content mengacu pada informasi dalam bentuk teks, grafik, gambar maupun dalam format-format lain yang perlu dikelola dengan tujuan memudahkan proses pembuatan, pembaharuan, distribusi, pencarian, analisis, dan meningkatkan fleksibilitas untuk ditransformasikan ke dalam bentuk lain. Terminologi CMS sendiri cukup luas, di antaranya mencakup software aplikasi, database, arsip, workflow, dan alat bantu lainnya yang dapat dikelola sebagai bagian dari mekanisme jaringan informasi suatu perusahaan maupun global.

CMS (Content Management System) terbukti merupakan sebuah aset penting bagi perusahaan untuk mengelola content situs web dan portal secara efisien dan efektif. Saat ini, berbagai perusahaan mengkombinasikan content tak berstruktur dengan transaksi tradisional dan application logic untuk membangun aplikasi berbasis Web. Web application ini mewujudkan interaksi yang lebih personal dengan para user-nya, dan meningkatkan kinerja perusahaan dengan menyediakan layanan mandiri bagi para karyawan, partner, penyedia barang dan pelanggan. Aplikasi berbasis Web


(32)

yang semakin berdaya, secara tidak langsung meningkatkan peranan dan pentingnya CMS sebagai bagian dari infrastruktur aplikasi perusahaan.

Dengan adanya CMS yang terintegrasi dengan sebuah WebSite akan memberikan suatu nilai lebih yang akan meningkatkan fungsionalitas dan fleksibiltas dari Web Site tersebut, terlebih pada WebSite yang tujuan pemanfaatannya sebagai media promosi dan membangun citra konsumen, dimana kontinuitas dan inovasi dalam pemasaran produk-produk secara berkala dan berkesinambungan sebagai suatu hal yang memegang peranan penting dalam tercapainya target pemasaran.

2.5.1 Joomla

Joomla adalah Contant management system (cms) Sumber terbuka yang bebas ditulis dengan bahasa pemograman php dan data base MySQL baik untuk internet maupun intranet Joomla menyertakan banyak fitur untuk meningkatkan kinerja termasuk page caching , web indexing , RSS freed , halaman untuk dicetak , web side searchingdan dukungan Internasionalisasi. Nama Joomla berasal dari sebutan phonetic sebuah kata bahasa Swahili “Jomla”dengan arti kebersamaan atau kesatuan pilihan nama mencerminkan komitmen para pengembang dan komunitasnya saat membentuk Joomla ketika terjadi perpecahan dari Mambo di bulan Agustus 2005. Joomla dibangun sebagai fork dari mambo dengan rilis perdana Joomla 1.0.0 pada tanggal 16 september 2005 mengembangkan versi dari mambo.


(33)

Menurut roadmap Joomla 2.0 code base akan ditulis ulang sekelompok dibangun mengadopsi GNU (General Publik Licence).

Untuk membuat suatu Informasi Electronik yang mulai berkembang saat ini diperlukan suatu CMS Content Management system / server php yang digunakan untuk pembuatan/desain grafis, dan juga memiliki penulis yang kreatif untuk mengisi halaman-halaman web site dengan Mambo ataupun Joomla, tidak menjadi masalah karena seluruh tool memiliki fungsi yang sama. Meskipun program ini menggunakan bahasa php, bukan berarti harus paham seluruhnya tentang kode php. Bagi mereka tidak memahami kode HTML, Javascript, ASP, CGI, , maupun php tidak perlu takut untuk mempelajarinya karena meskipun tidak tahu tentang kode-kode tersebut, orang bisa membuat sebuah web secara cepat dengan beberapa fitur yang sangat kompleks yang dihubungkan dengan dalam suatu jaringan local atau luas (internet).

CMS adalah software computer yang memfasilisasikan pembuatan documen atau contant secara gotong royong dan kolaboratif , CMS acap kali di artikan sebagai Aplikasi Web untuk mengelola web site dan contant web , sementara untuk mengedit dan membuat artikel disertakan software khusus client , ia juga dapat digunakan untuk menyimpan documen perusahaan terutama seperti operators manuals , tecnical manuals , sales guides dan sebagainya, solusi cms banyak tersedia dalam bentuk open source yang bebas


(34)

pungli dengan teknik yang lebih luas portal system wiki system bared group ware.

2.6 Tools Pengembangan Aplikasi 2.6.1 Adobe Photoshop

Adobe Photoshop adalah merupakan software standar

profesional untuk pengolahan citra atau gambar (image) yang memberikan lingkungan komprehensif bagi para desainer grafis profesional untuk membuat desain grafis yang rumit untuk kebutuhan percetakan, situs web, dan media lainnya (Sardi, 2004).

Gambar 2.3 Tampilan Adobe Photoshop CS3

2.6.2 Macromedia Dreamweaver 8

Macromedia dreamweaver 8 adalah sebuah aplikasi yang digunakan untuk membuat web sites dibuat dengan kombinasi


(35)

tampilan visual tools, dikembangkan dengan banyak feature aplikasi dan didukung dengan code editing, didesign untuk bisa disesuaikan dengan setiap tingkatan kemampuan pemakai. Dreamweaver 8 dimasukkan banyak kemampuan baru untuk membantu membuat dan mengatur website, baik dari pemula sampai dengan tingkat lanjut. Aplikasi ini mendukung dengan sangat praktis dan dilengkapi dengan teknologi terbaru. Dreamweaver 8 bisa dijalankan pada operation system windows 2000, windows xp, dan Macintosh Mac OS® X 10.3 dan 10.4. dreamweaver 8 tidak bisa dijalankan pada windows 98, windows 2000 server, windows 2003 server, atau Macintosh OS 10.2.x atau dibawah seri ini.

Fungsi coding Dreamweaver tidak hanya mendukung coding HTML tetapi juga CSS (Cascading Style Sheet), Javascript, Coldfusion, ASP (Active Server Pages), JSP (Java Server Pages), dan Dreamweaver juga memungkinkan anda membangun website dengan server berbahasa CFML (ColdFusion Markup Language), ASP.net, ASP, JSP, dan PHP.

Dreamweaver 8 juga mempunyai kemampuan untuk mendukung pemrograman server side dan client side. Server side digunakan untuk memproses data yang berhubungan dengan server, misalnya pengolahan database. Client side merupakan bahasa pemrograman tambahan sekaligus sebagai pelengkap dari bahasa pemrograman lainnya


(36)

Gambar 2.4 Tampilan Dreamweaver 8

2.6.3 XAMPP

Xampp merupakan suatu paket yang terdiri dari Apache, MySQL, PHP, dan Perl yang dapat digunakan untuk membantu proses instalasi produk tersebut (Sukarno, 2006).

XAMPP merupakan pengembangan dari LAMP (Linux Apache, MySQL, PHP and PERL), XAMPP merupakan project non profit yang dikembangkan oleh Apache Friends yang didirikan Kai ’Oswalad’, Seidler dan Kay Vogelgesang pada tahun 2002, project

mereka ini bertujuan mempromosikan penggunaan Apache Web

Server. Xampp ditemukan pada musim semi tahun 2002.

Adapun keuntungan dari Xampp antara lain (Sukarno, 2006): 1.Xampp dapat berjalan pada operating system Linux dan Windows.

Dan kemungkinan juga akan berjalan di Machintosh.

2.Mudah bagi programmer apabila ingin berganti versi PHP, cukup melakukan switch versi.


(37)

2.6.4 PHP

PHP adalah sebuah bahasa pemrograman yang diperintahnya dilaksanakan pada server dan kemudian hasilnya ditampilkan pada komputer klien. PHP juga merupakan HTML embedded, yaitu perintah PHP dituliskan bersamaan dengan perintah-perintah HTML. Dapat dikatakan tanpa HTML, maka PHP dapat digunakan

sebagaimana mestinya. HTML (HyperText Markup Language)

sendiri merupakan bahasa untuk membuat tampilan web. Jadi, disini ada sinergi dari dua bahasa yang saling menguatkan, yaitu PHP dan HTML (Arbai, 2004).

Menurut dokumen resmi PHP, PHP singkatan dari PHP Hypertext Preprocessor yang merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server. Hasilnyalah yang dikirimkan ke klien, tempat pemakai menggunakan browser.

Secara khusus, PHP dirancang untuk membentuk web dinamis. Artinya, dapat membentuk suatu tampilan berdasarkan permintaan terkini. Misalnya, bisa menampilkan isi database ke halaman Web. Pada prinsipnya, PHP mempunyai fungsi yang sama dengan skrip-skrip seperti ASP(Active Server Page), Cold Fusion, ataupunPerl.

Kelahiran PHP bermula saat Rasmus Lerdorf membuat sejumlah skrip Perl yang dapat mengamati siapa saja yang melihat-lihat daftar riwayat hidupnya, yakni pada tahun 1994. Skrip-skrip ini


(38)

selanjutnya dikemas menjadi tool yang disebut “personal home page”, paket inilah yang menjadi cikal-bakal PHP. Pada tahun 1995, Rasmus menciptakan PHP/FI versi 2. pada versi inilah pemrogram dapat menempelkan kode terstruktur didalam tag HTML. Yang menarik, kode PHP juga bisa berkomunikasi dengan database dan melakukan perhitungan-perhitungan yang kompleks sambil jalan.

Pada saat ini, PHP cukup popular sebagai peranti pemrograman Web, terutama di lingkungan Linux. Walaupun demikian, PHP sebernarnya juga dapat berfungsi pada server-server yang berbasis UNIX, Windows NT, dan Macintosh. Bahkan versi untuk Windows 95/98 pun tersedia.

Script PHP menyatu dengan file HTML, dieksekusi dan bekerja di komputer server (server side). PHP banyak digunakan untuk membuat website yang dinamis. Dibawah ini adalah salah satu contoh bagaimana script PHP menyatu dalam file HTML:

Sample.php 1 <html> 2 <head>

3 <title>sample php</title> 4 <head>

5 <body> 6


(39)

8 echo “uji sample php “; 9 ?>

10

11 </body> 12 </html>

Baris ke-1 hingga ke-6 dan baris-10 hingga ke-12 adalah file HTML. Script PHP disisipkan pada baris ke-7 yang diawali dengan tag pembuka <?php pada baris ke-7. perintah untuk melakukan operasi terdapat pada baris ke-8. akhir script PHP ditandai dengan tag penutup ?> pada baris ke-9.

PHP pertama kali diperkenalkan oleh Ramus Lerdoft pada tahun 1995 untuk keperluan dinamisasi web site pribadinya. Saat ini PHP telah berkembang seiring dengan sambutan komunitas open source di Internet. PHP juga memenuhi

kebutuhan akan bahasa scripting server side yang sederhana, kuat, dan memiliki konektivitas dengan beragam database server. Salah satu database server yang paling populer adalah MySQL.

permintaan HTTP

Gambar 2.5Skema PHP

Web

Server Skrip PHP

Kode HTML Mesin PHP


(40)

2.6.5 MySQL

MySQL adalah salah satu jenis database server yang sangat terkenal, kepopulerannya disebabkan MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses databasenya. Selain itu, ia bersifat free (tidak perlu membayar untuk menggunakannya) pada berbagai platform (kecuali pada Windows, yang bersifat shareware atau perlu membayar setelah melakukan evaluasi dan memutuskan untuk digunakan untuk keperluan produksi). Perangkat lunak MySQL

sendiri bisa di-download dari http://www.mysql.org atau

http://www.mysql.com.

2.7 Web Browser

Abdul Kadir mendefinisikan web browser sebagai perangkat lunak yang berguna untuk mengakses informasi web ataupun untuk melakukan transaksi via web. Beberapa contoh browser yang ada saat ini seperti: Internet Explorer, Mozila Firefox, Opera, Netscape, Safari. Cara kerja browser yaitu dengan membaca dokumen HTML yang diambil dari web server melalui ISP sebagai koneksi internet, kemudian ditampilkan melalui browser pada komputer (Kadir 2003).

Web browser berkomunikasi dengan web server lewat jaringan

komunikasi mengunakan protokol HTTP. Browser mengirim pesan

meminta dokumen atau layanan tertentu web server. Web server kemudian menanggapi dengan mengirim dokumen atau menjalankan layanan tertentu di server dan mengirim hasil menggunakan protokol HTTP. Kemudian


(41)

browser akan menerima dokumen (HTML) tanggapan dari web server dan menampilkanya dilayar (Hariyanto, 2004). Protokol HTML dirancang untuk dapat menggabung semua protokol internet seperti Goper, Telnet, WAIS, dan sebagainya dalam satu protokol tunggal. Semua layanan protokol lain dikemas sebagai layanan-layanan yang disediakan lewat interaksi web browser dan web server.


(42)

29

BAB III

METODOLOGI PENELITAN

3.1. Metode Pengumpulan Data

Metode penelitian yang diterapkan dalam mendapatkan data dan informasi yang mendukung dalam penelitian ini, sebagai berikut:

1. Studi Pustaka

Penelitian kepustakaan digunakan sebagai dasar pembahasan secara teoritis dengan menggunakan data yang diperoleh dari lapangan dan mengevaluasi hasil penelitian lapangan, teori-teori dan pandangan dari buku-buku, bahan kuliah, pencarian melalui internet dan sumber-sumber lainnya dalam penulisan karya tulis ini.

2. Studi Lapangan

Dalam melakukan penelitian di lapangan akan didapatkan data yang terdapat dalam dokumen-dokumen instansi terkait, serta langsung mengamati, mengevaluasi sistem informasi penjualan pada perusahaan-perusahaan lain yang sudah mengimplementasikan sistem tersebut. Pada penelitian ini juga akan dilakukan wawancara dengan narasumber atau pihak-pihak yang berhubungan dengan masalah tersebut.

a. Teknik Wawancara, yaitu dengan langsung bertatap muka dengan pihak-pihak terkait yaitu pembeli spare part motor.

b. Teknik Observasi, yakni dengan melakukan pengamatan langsung terhadap hal-hal yang berhubungan dengan sistem informasi


(43)

pemesanan tersebut. Observasi dilakukan pada bengkel CBR Motor Racing.

3. Studi Literatur

Studi literatur ini dilakukan dengan melihat penelitian dan skripsi sejenis yang sudah ada. Merujuk pada penelitian yang telah dilakukan oleh (Indah Sartika, Perancangan dan pembuatan sistem promosi dan penjualan barang pada PT Papasamsu, 2004), dan (Denny Chandra Haryanto, Pembuatan website untuk pemesanan barang di perusahaan X, 2003).

3.2. Metode Pengembangan Sistem

Metode membangun sistem adalah metode-metode, prosedur-prosedur, konsep-konsep pekerjaan, aturan-aturan yang akan digunakan untuk mengembangkan suatu sistem infomasi (Sutabri, 2004: 68).

Metode membangun sistem terdiri dari beberapa model dari proses perangkat lunak yang umum digunakan, diantaranya: Model Sekuensial Linear (Waterfall), Model Prototipe, Model RAD (Rapid Application Development), dan Model Spiral (Pressman, 2002: 27).

Penulis memilih penelitian dengan menggunakan metode membangun sistem model pendekatan RAD (Rapid Application Development). Penulis menggunakan model RAD karena melihat dari aplikasi yang dikembangkan adalah aplikasi yang sederhana dan tidak membutuhkan waktu yang lama, metode RAD adalah metode yang diperuntukkan untuk jangka pendek sesuai dengan aplikasi yang dikembangkan.


(44)

Model RAD yang pada awalnya diusulkan oleh James Martin (1991) (http://en.wikipedia.org/wiki/Rapid_application_development), merupakan suatu pendekatan berorientasi objek terhadap membangun sistem yang mencakup suatu metode membangun perangkat-perangkat lunak.

Tujuannya adalah mempersingkat waktu pengerjaan aplikasi serta proses yang dihasilkan didapat secara cepat dan tepat. Berikut merupakan gambar dari model RAD, yang terlihat pada gambar 3.1 (Kendall & Kendall, 2003: 237), di bawah ini :

Gambar 3.1. Model membangun sistem RAD

Model RAD memiliki empat fase yaitu fase perencanaan syarat-syarat, fase perancangan, fase konstruksi, dan fase pelaksanaan (Kendall & Kendall, 2003: 238). Berikut adalah penjelasan masing-masing fase dalam penelitian ini.

Menentukan tujuan dan syarat-syarat informasi

Membangun sistem Bekerja dengan pengguna

untuk sistem perancangan

Memperkenalkan sistem Fase Perancangan syarat-syarat

Menggunakan masukan dari pengguna

Fase Perancangan Fase Konstruksi

Umpan balik pengguna


(45)

1. Fase Perencanaan Syarat-Syarat

Pada tahap ini dilakukan pengidentifikasian tujuan-tujuan aplikasi atau sistem serta untuk mengidentifikasi syarat-syarat informasi yang ditimbulkan dari tujuan-tujuan tersebut. Secara terperinci yang penulis lakukan pada tahap Tujuan dan Syarat-syarat Informasi adalah:

a. Menganalisa sistem yang berjalan.

b. Mengidentifikasi permasalahan yang ada..

c. Memberikan solusi permasalahan yang dihadapi.

Hasil yang penulis dapatkan dari tahap Tujuan dan Syarat-syarat Informasi adalah:

a. Memperoleh informasi mengenai sistem pemesanan spare part motor yang berjalan.

b. Memperoleh informasi dari permasalahan dalam melakukan pencatatan secara manual.

c. Dibutuhkan aplikasi yang dapat mencatat dan menyimpan data pemesanan dan data pembeli dengan menerapkan sistem pemesanan online.

2. Fase Perancangan

Pada tahap ini dilakukan perancangan proses yaitu perancangan proses-proses yang akan terjadi di dalam sistem.


(46)

a. Perancangan Proses

Perancangan proses-proses yang akan dilakukan didalam sistem menggunakan bagan alir DFD (Data Flow Diagram) yakni dengan membuat diagram konteks, diagram level nol, dan diagram level satu pada sistem yang akan diusulkan.

b. Perancangan Basis Data

Pada aplikasi sistem pemesanan ini digunakan database sebagai pelengkap program seperti registrasi, proses pemesanan, input data produk dan proses penyimpanan data produk. Database yang digunakan adalah database MySQL.

c. Perancangan Antarmuka (User Interface)

Pada perancangan antarmuka (user interace) dilakukan langkah menganalisis atau merencanakan tampilan untuk tata letak sesuai dengan fungsi aplikasi.

3. Fase Konstruksi

Pada tahap ini dilakukan pembuatan program terhadap

rancangan-rancangan yang telah didefinisikan. Pembuatan program yang dilakukan menggunakanbahasa pemrograman PHP, joomla sebagai template CMS, dan adobe photoshop untuk mengedit gambar-gambar pada website.


(47)

4. Fase Pelaksanaan

Pada tahapan ini dilakukan pengujian terhadap aplikasi sistem pemesanan yang telah dibuat, pada pengujian terhadap aplikasi ini, penulis menggunakan pengujian black-box yaitu suatu pengujian yang berfokus pada persyaratan fungsional perangkat lunak (Pressman, 2002: 551). Sebagai akhir dari fase pelaksanaan penulis juga meminta tanggapan user tentang aplikasi ini untuk bahan evaluasi.

3.2. Kerangka Berfikir Penelitian

Gambar 3.2 Kerangka Berfikir Penelitian Metode Pengumpulan

Data

Metode Pengembangan Sistem

Fase Perancangan Fase Perencanaan Syarat-Syarat

Fase Konstruksi

Fase Pelaksanaan Studi Pustaka

Studi Lapangan

Wawancara

Observasi

Perancangan Proses

Perancangan Basis Data

Perancangan Antar Muka Studi Literatur


(48)

35 BAB IV

PEMBAHASAN DAN IMPLEMENTASI

4.1. Metodologi Pengumpulan Data

Penyusunan skripsi ini dilakukan dengan menggunakan beberapa metode yang dapat mendukung penulisan, baik dalam pengumpulan data maupun informasi yang diperlukan, untuk mendapatkan kebenaran materi uraian pembahasan.

4.1.1. Studi Pustaka

Studi pustaka digunakan dengan membaca dan mempelajari referensi yang ada, e-book, serta mencari referensi tambahan dari internet. Buku utama yang digunakan peneliti yaitu : Super Market Online (Dedik, 2010), Membangun Website Dengan CMS Joomla (Hidayat, 2009), Membangun Website Dinamis Interaktif dengan PHP-MySQL (Windows & Linux) (Muhammad, 2006) dan buku-buku selengkapnya yang digunakan dapat dilihat pada daftar pustaka.

4.1.2. Studi Lapangan

Studi Lapangan dilakukan dengan mendatangi langsung tempat penelitian, yaitu pada bengkel CBR Motor Racing.

4.1.2.1. Wawancara

Disini dilakukan tanya jawab oleh peneliti sambil bertatap muka antara pewawancara dengan narasumber


(49)

yaitu Bapak Umar Aryo Seno (Pemilik CBR Motor Racing) yang dilakukan pada tanggal 23 Juni 2011 di bengkel CMR Jakarta.

4.1.2.2. Observasi

Pada metode Observasi, peneliti melakukan

pengamatan langsung di lapangan untuk mengetahui secara langsung keadaan objek penelitian yang sebenarnya. Hal ini bertujuan untuk memperoleh penjelasan mengenai data-data dan informasi yang dibutuhkan dalam penelitian pada bengkel CBR Motor Racing Jakarta.

1. Gambaran Umum Perusahaan

CMR (CBR Motor Racing) merupakan suatu usaha rumahan yang sudah dirintis oleh pemiliknya sejak tahun 2008. Bermula dari suatu komunitas forum Motor Honda CBR dan pemiliknya hobi dalam hal memodifikasi sekaligus service motor, lambat laun pemilik CMR tersebut ingin memulai bisnisnya ke penjualan suku cadang motor khususnya Honda CBR. Dimulai dari aksesoris, service sampai ke suku cadang yang susah dicari sekalipun dapat dicari di sini.

Memulai dengan memperkenalkan

produk-produknya melalui jejaring sosial facebook ternyata mendapatkan respon yang sangat baik dari masyarakat


(50)

yang mencari produk seperti aksesoris dan sparepart. Dikarenakan penjual menjual produknya yang sifatnya unik dan susah di cari di pasaran. Dengan pelanggan yang semakin hari semakin bertambah memberikan peluang pada usaha ini untuk dapat mengembangkan lagi usahanya. Namun selain mendapat peluang usaha yang besar tidak terlepas dari permasalahan yang timbul seperti kompleksitas pemesanan yang tinggi memungkinkan pihak CMR harus dapat memanajemen dengan baik setiap pemesanan yang dilakukan oleh pelangannya. Tidak hanya memperkenalkan suatu produknya saja melalui media internet ini juga harus bisa memberikan fasilitas kepada pelanggannya agar dapat melakukan pemesanan secara online untuk memberikan kenyamanan dalam melakukan pemesanan produk.

Hal-hal diatas tersebut dapat dilakukan apabila ada suatu sistem yang dapat memenuhi permasalahan-permasalahan diatas yaitu dengan dibuatkannya sistem informasi pemesanan online berbasis website. Untuk itu CMR ingin membuat sistem pemesanan dan penjualan online berbasiskan website. Jadi setiap pelanggan yang


(51)

ingin memesan produk tinggal langsung memesannya melalui situs yang akan dibuat tersebut.

2. Hasil Observasi

Observasi yang dilakukan pada bengkel CMR memberikan kesimpulan bahwa promosi penjualan spare part motor dengan menggunakan media brosur dan promosi dari mulut ke mulut kurang efektif, karena pelanggan yang datang tidak terlalu banyak. Selain itu, pencatatan pemesanan spare part motor masih dilakukan secara manual. Hal ini memungkinkan terjadinya kesalahan pencatatan ataupun hilangnya data. Pembeli pun harus memesan barang secara langsung dengan datang ke bengkel sehingga pelayanan yang diberikan kurang. Oleh karena itu diperlukan suatu aplikasi pemesanan online dengan sebuah

teknologi masa kini yang dapat memberikan

kemudahan terhadap pembeli.

4.1.3 Studi Literatur

Studi literatur ini dilakukan dengan melihat penelitian dan skripsi sejenis yang sudah ada. Merujuk pada penelitian yang telah dilakukan oleh (Indah Sartika, Perancangan dan pembuatan sistem promosi dan penjualan barang pada PT Papasamsu, 2004), dan (Denny Chandra Haryanto, Pembuatan website untuk pemesanan


(52)

barang di perusahaan X, 2003). Kelebihan yang akan ditambahkan pada aplikasi yang akan dibuat antara lain yaitu : menambahkan fitur status order pada admin, dan form guest book agar konsumen selain member, juga dapat berinteraksi.

4.2. Metode Pengembangan Sistem

4.2.1. Fase Perencanaan Syarat – Syarat

Pada tahap ini dilakukan analisa kebutuhan masalah untuk pembuatan aplikasi, mengedintifikasi permasalahan, dan

memberikan solusi terhadap permasalahan yang dihadapi.

1. Analisa Kebutuhan Masalah

a. Analisa Sistem Yang Sedang Berjalan

Sistem yang berjalan pada bengkel CMR adalah sebagai berikut :

1. Informasi tentang produk disebarkan melalui pembagian selebaran atau brosur, promosi dari mulut ke mulut, dan media massa lainnya kepada masyarakat umum.

2. Pemesanan dan pembelian oleh konsumen dilakukan

dengan cara datang langsung ke bengkel.

Bagan alir sistem yang sedang berjalan digambarkan pada gambar 4.1 dibawah ini :


(53)

Gambar 4.1 Diagram Sistem yang Berjalan

b. Kelemahan Sistem yang Berjalan

Berdasarkan analisa sistem berjalan di atas, maka didapat kelemahan sistem yang berjalan sebagai berikut:

1. Promosi produk yang dilakukan menggunakan media

konvensional seperti promosi dari mulut ke mulut dan media cetak kurang efektif karena tidak menjangkau pembeli secara luas.

2. Pembeli harus datang sendiri untuk membeli produk yang diinginkannya sehingga pembeli hanya terbatas pada orang yang mau datang ke tempat penjualan saja.


(54)

3. Data pembelian yang dicatat secara manual juga berpotensi terjadi kesalahan atau human error.

c. Solusi Pemecahan Masalah

Pemecahan masalah yang penulis lakukan dalam menyelesaikan masalah adalah dengan pembuatan aplikasi pemesanan spare part secara online berbasis web. Website yang dibuat akan dijadikan sebagai media promosi sekaligus untuk memesan barang dimana penjual telah memasukkan data barang-barang yang akan dijual.

d. Analisis Sistem Usulan

Dengan adanya website pemesanan barang, masyarakat yang ingin mencari informasi produk mengenai spare part kendaraan bermotor tidak perlu repot untuk datang langsung ke bengkel-bengkel tertentu masyarakat bisa mengakses website tersebutmelalui komputer tanpa ada batasan waktu. Konsumen juga dapat melakukan pemesanan langsung secara online.

Bagan alir sistem yang sedang berjalan digambarkan pada gambar 4.2 dibawah ini :


(55)

Gambar 4.2 Diagram Sistem Usulan

Tabel 4.1 Perbandingan sistem berjalan dengan sistem usulan

No Sistem Berjalan Sistem yang Diusulkan Hasil yang Ingin Dicapai

1 Pembeli atau

konsumen

melakukan untuk memesan harus datang langsung ke toko

Pembeli atau konsumen bisa melakukan

pemesanan di rumah dengan menggunakan fasilitas internet. Dengan menggunakan aplikasi pemesanan berbasis web.

Data transaksi melalui sistem pemesanan ini dapat

dilakukan dengan mudah dan cepat yang dapat dilakukan dimana saja dan kapan saja tanpa batas waktu. Sehingga menguntungkan kedua belah pihak (penjual dan pembeli).


(56)

2 Untukpromosi produk mengunakan media iklan seperti brosur, majalah dan koran, hal tersebut sangat banyak mengeluarkan biaya ketika ingin

melakukan promosi secara terus menerus setiap ada produk baru.

Produk dapat di

promosikan melalui media internet seperti forum forum sosial diantarnya facebook, twitter, frienster dan media sosial lainnya.

Setiap ada produk baru yang akan ditawarkan dapat diolah melalui fasilitas admin.

3 Perhitungan dan

pengecekan stok barang masih dilakukan secara manual dengan pencatatan melalui kertas.

Pengecekan data stok barang dilakukan secara komputerisasi dengan aplikasi sederhana

misalnya exel dan access.

Stok barang bisa di manajemen oleh admin melalu fasilitas stok barang yang tersedia di website tersebut.

4 Media penyimpanan

masih bersifat manual, dengan media kertas dan dokumen atau data-data tidak tersusun secra terstruktur dan rapih.

Penyimpanan tersusun secara rapih dan terstruktur dengan menggunakan basis data dalam aplikasi pemesanan berbasis web ini.

Dengan adanya basis data ini, dapat memudahkan dalam pengolahaan data,yaitu mencari maupun mendapatkan data-data tersebut dan data tersebut dapat tersimpan secra aman dan rapih di dalam basis data.


(57)

2. Tujuan

Peneliti bertujuan untuk membuat suatu aplikasi pemesanan barang berbasis web yang dapat diakses kapanpun dimanapun dengan menggunakan internet, sehingga proses promosi dan pemesanan produk kepada konsumen menjadi mudah.

3. Syarat-syarat

Untuk mewujudkan tujuan tersebut dibutuhkan beberapa syarat minimum dalam pembuatan aplikasi pemesanan spare part motor berbasis web ini yaitu meliputi hal-hal sebagai berikut : 1. Webserver

Web server merupakan syarat mutlak suatu aplikasi berbasis web. Web server merupakan platform untuk

menjalankan suatu aplikasi berbasis web. Untuk

pengembangan aplikasi ini dibutuhkan minimum Web Server Apache 2.0

2. Bahasa Pemrograman

Bahasa pemrograman dibutuhkan untuk dapat

membangun sebuah aplikasi, agar komputer dapat melakukan berbagai operasi dan fungsi sesuai dengan keinginan user. Untuk itu dibutuhkan suatu bahasa pemrograman yang dapat digunakan untuk membuat aplikasi client server. Bahasa pemrograman yang dibutuhkan dalam pengembangan aplikasi ini adalah Joomla versi 1.0 dan PHP 5.2.5.


(58)

3. Database

Pengelolaan database akan digunakan untuk pelengkap program seperti proses login serta proses pemesanan dan penyimpanan file produk. Database yang dibutuhkan adalah database MySQL 5.0.5.1.

Spesifikasi perangkat lunak dan perangkat keras minimum yang diperlukan dalam pembuatan aplikasi ini adalah sebagai berikut :

2. Perangkat Lunak :

a. Paket web server Xampp versi 1.6.6a (Apache 2.0., PHP 5.2.5.,, MySQL 5.0.5.1)

b. Macromedia Dreamweaver 8.

c. Mozilla Firefox 3.0.

d. Microsoft Windows XP.

3. Perangkat Keras :

a. Personal Computer

1) Processor : Intel Pentium IV.

2) RAM : Memory 256 MB

3) Harddisk : 80 GB

4) VGA : 128 MB


(59)

4.2.2 Fase Perancangan

Tahapan selanjutnya dalam RAD setelah menganalisis masalah pada sistem yang berjalan adalah tahap perancangan sistem yang bertujuan untuk mengatasi permasalahan-permasalahan yang ada dan memberikan usulan rancangan sistem.

1.Perancangan Data Flow Diagram (DFD)

DFD merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi yang dapat digunakan untuk penggambaran analisa maupun rancangan sistem yang mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat program. Berikut merupakan gambaran umum website Pemesanan barang Online dalam bentuk DFD.

a. Diagram Konteks

Diagram konteks merupakan diagram yang

memperlihatkan aplikasi sebagai bentuk satu proses yang terjadi atau pemetaan yang terjadi.

Gambar 4.3 Diagram Kontex Data Pelanggan dan Data Pemesanan Produk

Olah data Pemesanan dan Produk Info Produk dan

Bukti Pembayaran Memesan Produk Konsumen

Aplikasi Pemesanan

Spare Part Motor Online


(60)

Dalam konteks diagram pada gambar 4.3 terdapat dua entity yang menunjang proses aplikasi ini yaitu konsumen dan administrator

b. Diagram Zero

Diagram ini untuk mendetailkan setiap proses yang terjadi pada diagram zero sistem yang diusulkan.

Konsumen registrasi Admin

Pemesanan

Mengelola data

Username,Password user

User, status user User, status user

Nama konsumen,alamat,produk Transaksi,alamat produk bukti_pemesanan user User,,status User username Nama Produk, jumlah produk Stok produk Produk Username, produk order Order status

Gambar 4.4 Diagram Zero sistem yang diusulkan

1.0 2.0 3.0 Order status Stok produk Nama produk Kategori Stok produk Username, Password


(61)

Pada gambar 4.4 ini, terdapat entity yaitu konsumen dan admin. Sistem ini memiliki tiga proses yaitu : proses 1.0 yakni proses registrasi, proses 2,0 yakni proses pemesanan barang, dan proses 3.0 yakni proses mengolah data.

c. Diagram Rinci

1)Diagram Rinci / Level 2 proses ke-1

Diagram Gambar 4.5 menjelaskan secara detail dari proses 1 yaitu proses mengolah data user yakni pendaftaran user dan proses mempebaharui data user yang diperoleh dan disimpan di database user.


(62)

2)Diagram Rinci / Level 2 proses ke-2

Diagram Gambar 4.6 menjelaskan secara detail dari proses 2 yaitu proses memilih produk, yaitu pemilihan produk yang dilakukan oleh konsumen. Kemudian proses menentukan produk, yakni konsumen telah menentukan produk apa saja yang akan dibeli. Setelah itu proses konfirmasi pemesanan,yaitu konsumen mengkonfirmasi pemesanannya dan akan disimpan dalam database order. Pada proses Melihat data pemesanan, admin dapat melihat data pemesanan yang ada dalam database order.


(63)

3)Diagram Rinci / Level 2 proses ke-3

admin Mengedit status

pemesanan Menghapus data pemesanan Menambah produk Mengedit produk order Order status Nama konsumen Nama produk Kategori Stok produk Order status Nama konsumen 3.1 3.2 3.3 3.4 Nama produk Kategori Stok produk produk Nama produk Kategori Stok produk Nama produk Kategori Stok produk Menghapus produk

Nama produk Nama produk

Gambar 4.7 Diagram Level 2 proses ke-3

3.5

Diagram pada gambar 4.7 menjelaskan secara detail dari proses 3 yaitu proses mengedit status pemesanan, menghapus data pemesanan, menambah produk, mengedit produk yang tersimpan dalam database produk, dan menghapus produk.


(64)

2. Perancangan Basis Data

Basis data dalam aplikasi absensi ini diimplementasikan menggunakan Mysql yang terintegrasi dengan PHP.

a. Entity Relationship Diagram (ERD)

Perancangan basis data ini termasuk didalamnya meliputi

bentukan ER Diagram yang berikutnya akan

diimplementasikan dalam bentuk tabel-tabel dengan

keterkaitan atau keterhubungannya diantara tabel tersebut. Perancangan DFD yang telah digambarkan sebelumnya kemudian dilanjutkan dengan perancangan database yang akan digunakan pada aplikasi ini dengan penggambaran database ER (Entity Relationship) Diagram sebagai berikut :

Gambar 4.8 Entity Relationship Diagram (ERD) M M

M

Admin olah

Usernam Passwor

User order Produk

password Nama Alamat Telp Email idProdk Nama Gambar Keterang Harga Kategori idorder IDUser*

Jumlah order idProduk ** idAdmin 1 Status Stok idUser* usernam


(65)

b. Spesifikasi Tabel

1. Nama Database : commercedb

Nama Tabel : Produk

Primary Key : idProduk

Foreign Key : -

Tabel 4.2 Tabel Produk

No Nama Field Type Size Keterangan

1 Id_produk* INT 4 ID Produk

2 Kategori Varchar 55 Kategori Produk 3 Nm_prdk Varchar 55 Nama Produk

4 Hrg_Prdk INT 6 Harga Produk

5 Gambar Varchar 55 Gambar Produk 6 Ket Text 55 Keterangan Produk

2. Nama Tabel : User

Primary Key : idUser

Foreign Key : -

Tabel 4.3 Tabel User

No Nama Field Type Size Keterangan

1 Id_user* INT 4 ID User

2 Username Varchar 55 Username 3 Password Varchar 55 Password User

4 Nama Text 55 Nama User

5 Email Text 55 Email User

6 Alamat Text 55 Alamat User


(66)

3. Nama Tabel : Order

Primary Key : idOrder

Foreign Key : idUser, idProduk

Tabel 4.4 Tabel Order

No Nama Field Type Size Keterangan

1 id_Order* INT 4 ID Produk

2 Jumlah_Order INT 55 Kategori Produk 3 Status_Order Varchar 55 Nama Produk 4 id_User** INT 4 Harga Produk 5 id_Produk** INT 4 Gambar Produk

3. Rancangan Tampilan (User Interface) 1. Rancangan Tampilan Home

Halaman ini merupakan halaman depan dari semua halaman yang ada pada website ini. Halaman ini juga dapat disebut sebagai halaman pembuka, karena pada saat pertama website dibuka maka halaman inilah yang akan tampil sebelum halaman yang lainnya. Tampilan menu utama terdiri dari beberapa menu yang dapat membuka halaman lain seperti tampilan Home,Store Online, GuestBook, Contact dan Admin. Rancangan halaman selanjutnya sama rancangan tampilan Home hanya yang membedakannya adalah isinya. Rancangan tampilan menu utama dapat dilihat pada gambar 4.9


(67)

Gambar 4.9 Rancangan Halaman Index

2. Rancangan Tampilan Pooling

Pada rancangan tampilan atau halaman pooling ini akan menampilkan persentasi dari pertanyaan yang diajukan kepada para pengunjung website. Apakah website tersebut bermanfaat atau tidak bagi pengunjung website. Ketika di input pilihannya maka akan mucul persentasi dari setiap jawaban yang ada. Untuk rancangannya dapat dilihat pada gambar 4.10 berikut :

:: BANNER ::

:: BANNER::

Home | Store Online | GuestBook | Admin

Daftar Pengunjung

Main Menu Link Link2 Link3 Link4

Login Form UserName Password Password

LOGIN

Time

Pools Text Selamat Datang


(68)

Gambar 4.10 Rancangan Halaman Pooling

3. Rancangan Tampilan Store Online

Pada rancangan halaman produk ini akan menjelaskan mengenai produk - produk yang akan diperjualbelikan secara online, dengan terlebih dahulu memilih kategori produk yang akan dipesan kemudian pilih produk yang akan dipesan, tetapi sebelumnya pengunjung website haruslah melakukan registrasi terlebih dahulu apabilia ingin melakukan pemesanan produk.

:: BANNER::

Home | Store Online | GuestBook | Admin Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Login Form UserName

Password

LOGIN

Time

Pools

Bagaimana pendapat anda tentang fasilitas toko online pada website ini?

a. Sangat Baik

--- 90% b. Baik

--- 45 % c. Biasa Saja --- 22 % d. Tidak Baik -- 10 %


(69)

Untuk rancangan halamn produk adalah seperti pada gambar 4.11.

Gambar 4.11 Rancangan Halaman Produk

4. Rancangan Tampilan Shopping Cart

Dalam rancangan halaman shooping cart ini yang merupakan halaman yang akan mengakumulasikan harga pemesanan setiap produk yang telah dipesan oleh pengunjung website ataupun konsumen. Dijelaskan dalam halaman ini

Gambar Produk

Gambar

Add To Chart

:: BANNER::

Home | Store Online | GuestBook | Admin Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Time

Pools Ket …

xxxxxxxxxxxxx xxxxxxxxxxxx


(70)

mengenai penambahan produk dan penambahan item per produk. Untuk rancangannya dapat dilihat pada gambar 4.12.

Gambar 4.12 Rancangan Halaman Shopping Cart

5. Rancangan Tampilan Registrasi

Halaman registrasi ini dibuat untuk mengisi data – data pengunjung, seperti nama, alamat, telp, email dan lain sebagainya. Pada halaman registrasi ini nantinya akan menjadi acuan untuk biodata pengunjung yang dapat dijadikan subjek apabila pengunjung itu melakukan pemesanan produk ataupun

:: BANNER::

Home | Store Online | GuestBook | Admin Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Time

Pools

Shooping Cart

Nama Harga Quantity Subtotal Update

xxxx Rp. xxx Rp.xxx Hapus

Sub-Total: Rp. xxx Total : Rp. xxx


(71)

mengisi forum tanya jawab yang ada pada website tersebut. Untuk rancangan halaman registrasi dapat dilhat pada gambar 4.13.

Gambar 4.13 Rancangan Halaman Registrasi

6. Rancangan Halaman GuestBook

Dalam halaman forum atau guest book ini dimaksudkan untuk setiap pengunjung dapat mengisi forum tersebut. Untuk forum itu bisa berisi komentar maupun saran ataupun pertanyaan – pertanyan yang berhubungan dengan website ini. Untuk rancangannya dilhat pada gambar 4.14.

:: BANNER::

Home | Store Online | GuestBook | Admin Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Time


(72)

Gambar 4.14 Rancangan Halaman Guest Book

7. Rancangan Halaman Contact Us

Rancangan halaman kontak kami ini dimaksudkan untuk mencantumkan alamat pemilik ata toko ini dengan alamatnya sendiri dimana lokasi pemilik atau toko itu berada. Untuk rancangannnya dilhat pada gambar 4.15.

:: BANNER::

Home | Store Online | GuestBook | Admin Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Login Form UserName Password

LOGIN

Nama :

Subjek :

Icon :

Message :

Image :

File Attach :


(73)

Gambar 4.15 Rancangan Halaman Contact Us

8. Rancangan Halaman List Order

Halaman List Order berisi daftar order yang telah dimasukkan oleh user. Pada daftar order, terdapat nama user, order detail, tanggal order, status order, dan jumlah total harga barang yang dipesan. Tampilan halaman List Order dilhat pada gambar 4.16.

:: BANNER::

Home | Store Online | GuestBook | Admin Daftar Pengunjung

Main Menu Link1 Link2 Link3 Link4

Login Form UserName Password

LOGIN

Time

Pools

::Contact Us::

Jl. raya Pasar Lama No. 18 Lewiliang - Bogor Indonesia Country 443212

Phone

0251-8647424

Email


(74)

Gambar 4.16 Rancangan Halaman List Order

9. Rancangan Order Detail

Pada halaman Order Detail, ditampilkan keterangan lengkap dari pemesanan yang dilakukan oleh pembeli. Order Detail mencakup informasi order, informasi pembeli,dan informasi produk yang dibeli. Tampilannya dilhat pada gambar 4.17.

:: BANNER::

Admin Product Orders

Oder Number

Name Order Detail

Order Date


(75)

Gambar 4.17 Rancangan Halaman Order Detail

4.2.3 Fase Konstruksi

Pada tahap ini penulis melakukan pembangunan sistem aplikasi yang telah dirancang sebelumnya. Pembangunan aplikasi meliputi pemenuhan kebutuhan hardware (perangkat keras) dan Software (perangkat lunak) yang digunakan.

1.Pemrograman

Pada tahap ini penulis menggunakan bahasa pemrograman

dengan PHP, sedangkan software yang digunakan dalam

pembuatan aplikasi ini yaitu Joomla dan komponen Virtue Mart sebagai template CMS, Adobe Photoshop CS2 untuk mengedit gambar-gambar, Macromedia Dreamweaver 8, dan sebagai software yang menunjang database, penulis menggunakan MySQL.

:: BANNER::

Admin Product Orders

Order Information Costumer Information

Name : Contact : Email : Order Items

Product Name : Price : Quantity : Subtotal :


(76)

2. Spesifikasi Hardware dan Software 1. Perangkat Keras (Hardware)

1. Processor Genuine Intel(R) Core(TM) 2 Duo CPU T6570 @ 2.1GHz.

2. Harddisk 320 GB.

3. Memory DDR 2 GB.

4. Monitor dengan resolusi 1280x800 pixel.

2. Perangkat Lunak (Software)

Spesifikasi perangkat lunak (software) yang penulis gunakan dalam perancangan aplikasi ini dijelaskan sebagai berikut :

1. Sistem Operasi : Windows XP Service Pack 2.

2. Webserver : Xampp v 1.6.6a (Apache 2.0, PHP 5.2.5, MySQL 5.0.5.1)

3. Browser : Mozilla Firefox 3.5.2.

4. Adobe Photoshop CS3.

5. Macromedia Dreamweaver 8

4.2.4 Fase Pelaksananaan

Pada tahap ini dilakukan pengujian terhadap sistem dan melakukan pengenalan terhadap sistem. Penulis menggunakan metode pengujian dengan pendekatan blackbox testing. Metode blackbox testing melakukan pengujian tanpa melihat source code program dan


(1)

$memLimit = @ini_get('memory_limit'); if( stristr( $memLimit, 'k') ) {

$memLimit = str_replace( 'k', '', str_replace( 'K', '', $memLimit )) * 1024;

}

elseif( stristr( $memLimit, 'm') ) {

$memLimit = str_replace( 'm', '', str_replace( 'M', '', $memLimit )) * 1024 * 1024;

}

if( $memLimit < 16777216 ) {

@ini_set('memory_limit', '16M'); }

$option = mosGetParam( $_REQUEST, 'option' );

if( !defined( '_VM_PARSER_LOADED' )) { global $my;

$_REQUEST['Itemid'] = intval( mosGetParam($_REQUEST, 'Itemid', 0) ); // Filter the PHP_SELF var and clean it

$_SERVER['PHP_SELF'] = htmlspecialchars( $_SERVER['PHP_SELF'], ENT_QUOTES );

$page = mosgetparam($_REQUEST, 'page', ""); $func = mosgetparam($_REQUEST, 'func', "");

if( $my->id > 0 ) {

// This is necessary to get the real GID $my->load( $my->id );

}

if( !file_exists( $mosConfig_absolute_path.

"/administrator/components/com_virtuemart/virtuemart.cfg.php" )) {

die( "<h3>The configuration file for VirtueMart is missing!</h3>It should be here: <strong>"

. $mosConfig_absolute_path.

"/administrator/components/com_virtuemart/virtuemart.cfg.php</strong>" ); }

// the configuration file for the Shop require_once( $mosConfig_absolute_path.

"/administrator/components/com_virtuemart/virtuemart.cfg.php" );

// The abstract language class

require_once( CLASSPATH."language.class.php" );

// load the Language File

if (file_exists( ADMINPATH. 'languages/'.$mosConfig_lang.'.php' )) require_once( ADMINPATH. 'languages/'.$mosConfig_lang.'.php' ); else

require_once( ADMINPATH. 'languages/english.php' );

/** @global vmLanguage $VM_LANG */

$GLOBALS['VM_LANG'] = $GLOBALS['PHPSHOP_LANG'] =& new vmLanguage();

/** @global Array $product_info: Stores Product Information for re-use */ $GLOBALS['product_info'] = Array();

/** @global Array $category_info: Stores Category Information for re-use */ $GLOBALS['category_info'] = Array();

/** @global Array $category_info: Stores Vendor Information for re-use */ $GLOBALS['vendor_info'] = Array();

// load the MAIN CLASSES

// CLASSPATH is defined in the config file require_once(CLASSPATH."ps_database.php"); require_once(CLASSPATH."ps_main.php"); require_once(CLASSPATH."ps_cart.php"); require_once(CLASSPATH."ps_html.php"); require_once(CLASSPATH."ps_session.php"); require_once(CLASSPATH."ps_function.php"); require_once(CLASSPATH."ps_module.php");


(2)

require_once(CLASSPATH."ps_perm.php");

require_once(CLASSPATH."ps_shopper_group.php"); require_once(CLASSPATH."vmAbstractObject.class.php"); require_once(CLASSPATH."htmlTools.class.php");

require_once(CLASSPATH."phpInputFilter/class.inputfilter.php"); require_once(CLASSPATH."Log/Log.php");

$vmLoggerConf = array( 'buffering' => true );

/**

* This Log Object will help us log messages and errors * See http://pear.php.net/package/Log

* @global Log vmLogger */

$vmLogger = &vmLog::singleton('display', '', '', $vmLoggerConf, PEAR_LOG_TIP);

$GLOBALS['vmLogger'] =& $vmLogger; // Instantiate the DB class $db = new ps_DB();

// Instantiate the permission class $perm = new ps_perm();

// Instantiate the HTML helper class $ps_html = new ps_html();

// Constructor initializes the session! $sess = new ps_session();

// Initialize the cart $cart = ps_cart::initCart();

// Instantiate the module class $ps_module = new ps_module(); // Instantiate the function class $ps_function = new ps_function();

// Instantiate the ps_shopper_group class $ps_shopper_group = new ps_shopper_group();

// Set the mosConfig_live_site to its' SSL equivalent

if( $_SERVER['SERVER_PORT'] == 443 || @$_SERVER['HTTPS'] == 'on' || @strstr( $page, "checkout." )) {

// temporary solution until we have // $mosConfig_secure_site

$GLOBALS['real_mosConfig_live_site'] = $GLOBALS['mosConfig_live_site'];

$GLOBALS['mosConfig_live_site'] = ereg_replace('/$','',SECUREURL); $mm_action_url = SECUREURL;

} else {

$mm_action_url = URL; }

// Enable Mambo Debug Mode when Shop Debug is on if( DEBUG == "1" ) {

$GLOBALS['mosConfig_debug'] = 1; $database->_debug = 1;

}

// Set Mambo's Cookies for the SSL Domain as well // This makes it possible to use Shared SSL $sess->prepare_SSL_Session();

// the global file for PHPShop

require_once( ADMINPATH . 'global.php' );

$currency_display = vendor_currency_display_style( $vendor_currency_display_style );

/** load Currency Display Class **/


(3)

/** @global CurrencyDisplay $CURRENCY_DISPLAY */ $GLOBALS['CURRENCY_DISPLAY'] =& new

CurrencyDisplay($currency_display["id"], $currency_display["symbol"], $currency_display["nbdecimal"], $currency_display["sdecimal"],

$currency_display["thousands"], $currency_display["positive"], $currency_display["negative"]);

// Get default and this users's Shopper Group

$shopper_group = $ps_shopper_group->get_shoppergroup_by_id( $my->id );

// User authentication

$auth = $perm->doAuthentication( $shopper_group );

if( $option == "com_virtuemart" ) {

// Get sure that we have float values with a decimal point! @setlocale( LC_NUMERIC, 'en_US', 'en' );

// some input validation for limitstart if (!empty($_REQUEST['limitstart'])) {

$_REQUEST['limitstart'] = intval( $_REQUEST['limitstart'] ); }

$mosConfig_list_limit = isset( $mosConfig_list_limit ) ? $mosConfig_list_limit : SEARCH_ROWS;

$keyword = substr( urldecode(mosgetparam($_REQUEST, 'keyword', '')), 0, 50 );

unset( $_REQUEST["error"] );

// Cast all the following fields to INT $parseToIntFields =

array('user_id','product_id','category_id','manufacturer_id','id','cid','vendor_id ','country_id','currency_id',

'order_id','module_id','function_id','payment_method_id','coupon_id','produ ct_type_id') ;

foreach( $parseToIntFields as $intField ) { if( !empty($_REQUEST[$intField]) && is_array($_REQUEST[$intField]) ) {

mosArrayToInts( $_REQUEST[$intField]); } else {

$_REQUEST[$intField] = $$intField = intval( mosgetparam($_REQUEST, $intField, 0) );

} }

$_SESSION['session_userstate']['product_id'] = $product_id = $_REQUEST['product_id'];

$_SESSION['session_userstate']['category_id'] = $category_id = $_REQUEST['category_id'];

$user_info_id = mosgetparam($_REQUEST, 'user_info_id' ); $myInsecureArray = array('keyword' => $keyword,

'user_info_id' => $user_info_id,

'page' => $page,

'func' => $func );

/**

* This InputFiler Object will help us filter malicious variable contents

* @global vmInputFiler vmInputFiler */

$GLOBALS['vmInputFilter'] = $vmInputFilter = new vmInputFilter(); // prevent SQL injection

if( $perm->check('admin,storeadmin') ) {

$myInsecureArray = $vmInputFilter->safeSQL( $myInsecureArray );


(4)

$myInsecureArray = $vmInputFilter->process( $myInsecureArray );

// Re-insert the escaped strings into $_REQUEST

foreach( $myInsecureArray as $requestvar => $requestval) { $_REQUEST[$requestvar] = $requestval; }

} else {

// Strip all tags from all input values

$_REQUEST = $vmInputFilter->process( $_REQUEST ); $_REQUEST = $vmInputFilter->safeSQL( $_REQUEST ); }

// Limit the keyword (=search string) length to 50 $_SESSION['session_userstate']['keyword'] = $keyword = substr(mosgetparam($_REQUEST, 'keyword', ''), 0, 50);

$vars = $_REQUEST;

// Check if we have to run a Shop Function // and if the user is allowed to execute it

$funcParams = $ps_function->checkFuncPermissions( $func );

/********************************************** ** Get Page/Directory Permissions

** Displays error if directory is not registered,

** user has no permission to view it , or file doesn't exist ************************************************/

if (empty($page)) {// default page if (defined('_PSHOP_ADMIN')) {

$page = "store.index"; }

else {

$page = HOMEPAGE; }

}

// Let's check if the user is allowed to view the page // if not, $page is set to ERROR_PAGE

$pagePermissionsOK = $ps_module->checkModulePermissions( $page );

$ok = true;

if ( !empty( $funcParams["method"] ) ) {

// Get the function parameters: function name and class name $q = "SELECT

#__{vm}_module.module_name,#__{vm}_function.function_class";

$q .= " FROM #__{vm}_module,#__{vm}_function WHERE "; $q .= "#__{vm}_module.module_id=#__{vm}_function.module_id AND ";

$q .=

"#__{vm}_function.function_method='".$funcParams["method"]."' AND "; $q .=

"#__{vm}_function.function_class='".$funcParams["class"]."'";

$db->query($q); $db->next_record();

$class = $db->f('function_class');

if( file_exists( CLASSPATH."$class.php" ) ) { // Load class definition file

require_once( CLASSPATH.$db->f("function_class").".php" );

$classname = str_replace( '.class', '', $funcParams["class"]);

// create an object

$string = "\$$classname = new $classname;"; eval( $string );

// RUN THE FUNCTION

// $ok = $class->function( $vars ); $cmd = "\$ok = \$".$classname."->" . $funcParams["method"] . "(\$vars);";


(5)

if ($ok == false) { $no_last = 1;

if( $_SESSION['last_page'] != HOMEPAGE ) { $page = $_SESSION['last_page']; }

$my_page= explode ( '.', $page ); $modulename = $my_page[0];

$pagename = $my_page[1]; $_REQUEST['keyword']= $_SESSION['session_userstate']['keyword'];

$_REQUEST['category_id']= $_SESSION['session_userstate']['category_id'];

$_REQUEST['product_id']=$product_id = $_SESSION['session_userstate']['product_id'];

} }

else {

$vmLogger->debug( "Could not include the class file $class" );

}

if (!empty($vars["error"])) { $error = $vars["error"]; }

if (!empty($error)) {

echo vmCommonHTML::getErrorField($error); }

} else {

$no_last = 0; //$error=""; }

if ($ok == true && empty($error) && !defined('_DONT_VIEW_PAGE')) { $_SESSION['last_page'] = $page;

} }

// I don't get it, why Joomla uses masked gid values! if( !defined( '_PSHOP_ADMIN' )) {

if( class_exists('jfactory')) { $my =& JFactory::getUser(); } else {

$my = $mainframe->getUser(); }

if( isset( $my->_table )) { $my = $my->_table; }

}

// the Log object holds all error messages

// here we flush the buffer and print out all messages $vmLogger->printLog();

// Now we can switch to implicit flushing $vmLogger->_buffering = false;

define( '_VM_PARSER_LOADED', 1 ); }


(6)