Pembangunan Aplikasi E-Commerce Pada Toko Wenk's Sport
(2)
(3)
ii
ABSTRACT
DEVELOPMENT APPLICATIONS E-COMMERCE
IN THE STORE OF WENK
’S SPORT
By
Nova Kusniar
10107473
Wenk's Sport is a store that specializes in selling sports equipment like soccer clothes, football shoes, futsal shoes and balls. Current system of selling products at Wenk's Sport is not computerized, that is by consumers came directly to the store to select and purchase the desired products. Besides, in making the recapitulation of sales report is still carried out manually, so the sales report has not been properly detailed.
The method used in software development is using the waterfall method. While to analyze the currently running procedures was used Flowmap. To describe the relationship of data flows between the system and external components was used the context diagram. Data Flow Diagram (DFD) is used to describe flow of data that flows on the system, while in the database design are used data dictionary and Entity Relationship Diagram (ERD).
Application testing comprises of alpha testing where this testing is use the black box testing method that focuses on the functional requirements of software and beta testing is field test by interviewing the owner and employees of Wenk's Sport Shop and give the questionnaire to the general public as users of the application. Based on the test results it can be concluded that e-commerce application is considered easy to use, display was enough attractive, speed up data processing, expanding the scope of marketing, easier in promoting the product, allows consumers to make purchases of products and easier in making the recapitulation of sales report
Keyword : e-commerce, Data Flow Diagram, Entity Relationship Diagram, waterfall method
(4)
1
BAB 1
PENDAHULUAN
1.1 Latar Belakang Masalah
Toko Wenk’s Sport merupakan toko yang bergerak dalam bidang penjualan produk olahraga sepak bola. Toko Wenk’s Sport menjual produk berupa pakaian sepak bola, sepatu sepak bola, sepatu futsal dan bola. Dalam melakukan penjualan produk, penjualannya hanya berdasarkan konsumen yang datang langsung ke toko tersebut. Sementara rata-rata konsumen yang datang ke Toko
Wenk’s Sport sekitar tiga sampai lima orang per hari, hal ini dirasakan masih
kurang karena konsumen yang datang ke toko pun kebanyakan hanya pelanggan tetap dari toko dan untuk konsumen baru yang datang ke toko masih kurang.
Selanjutnya kendala yang muncul yaitu mengenai lingkup penjualan yang masih terbatas di sekitar Kabupaten Bandung, sehingga untuk pembeli yang berasal dari luar Kabupaten Bandung harus datang ke toko yang dirasakan kurang efektif dan menyita waktu. Sementara itu, promosi produk yang sedang berjalan di
toko Wenk’s Sport hanya lewat mulut ke mulut yang dirasa kurang memberikan
informasi yang tepat mengenai produk yang ditawarkan kepada para konsumen. Selain itu, dalam pembukuan untuk pembuatan laporan rekapitulasi penjualan masih dilakukan secara manual sehingga laporan penjualan belum terperinci secara baik.
Untuk memecahkan masalah yang terjadi, maka diperlukan suatu sistem yang dapat menangani permasalahan tersebut, salah satunya yaitu dengan
(5)
membangun suatu sistem perdagangan secara online atau lebih dikenal dengan istilah e-commerce ( electronic commerce).
E-Commerce didefinisikan sebagai proses pembelian dan penjualan produk, jasa dan informasi yang dilakukan secara elektronik dengan memanfaatkan jaringan komputer seperti internet [3]. Dengan perangkat keras seperti komputer dan fasilitas internet sebagai perangkat penunjangnya, maka memungkinkan untuk dibangun suatu aplikasi seperti sistem perdagangan online atau e-commerce yang dipandang dapat menunjang kegiatan bisnis perdagangan serta dapat dijadikan sebagai alat pemasaran dan media promosi untuk menawarkan produk toko Wenk’s Sport kepada konsumen dan konsumen dapat membeli produk tanpa harus datang langsung ke toko karena dengan e-commerce konsumen dapat melakukan pembelian kapan saja dan dimana saja
Berdasarkan hasil wawancara dengan pihak Toko Wenk’s Sport, serta mengacu dari permasalahan di atas, maka perlu di buat suatu sistem yang dapat menyelesaikan semua permasalahan yang ada saat ini. Pembangunan Aplikasi E-Commerce Pada Toko Wenk’s Sport adalah harapan untuk menyelesaikan berbagai permasalahan di atas guna mencapai efektifitas maupun efisiensi toko tersebut.
1.2 Rumusan Masalah
Mengacu dari latar belakang, ditemukan beberapa masalah yang dapat dirumuskan dalam suatu rumusan masalah yaitu bagaimana membangun aplikasi e-commerce pada toko Wenk’s Sport.
(6)
1.3 Maksud dan Tujuan
Berdasarkan permasalahan yang diteliti, maka maksud dari penulisan tugas akhir ini adalah membangun aplikasi e-commerce pada toko Wenk’s Sport. Sedangkan tujuan yang akan dicapai dalam penelitian ini adalah :
1. Mempermudah pemasaran dan penjualan serta mempermudah pembeli untuk melakukan pembelian produk tanpa harus datang ke toko Wenk’s Sport.
2. Mempermudah dalam membuat laporan rekapitulasi penjualan.
3. Memberikan informasi yang tepat mengenai produk yang ditawarkan oleh toko Wenk’s Sport.
1.4 Batasan Masalah
Berdasarkan penjelasan di atas, maka di buat beberapa batasan masalah agar pembahasan lebih terfokus dan sesuai dengan tujuan yang akan dicapai. Adapun batasan masalahnya adalah sebagai berikut:
1. Data yang diolah pada aplikasi ini yaitu data produk, data pembelian, data pembayaran, data pengiriman produk, data retur produk, data laporan.
2. Proses yang ada pada aplikasi ini adalah pengolahan data produk,pengolahan data pembelian, pengolahan data pembayaran, pengolahan data pengiriman produk, pengolahan data retur produk, dan pembuatan laporan.
3. Aplikasi ini menyediakan informasi mengenai produk yang ditawarkan oleh
Toko Wenk’s Sport, informasi pembelian, informasi pembayaran, informasi
(7)
4. Proses pengiriman barang dilakukan setelah pembeli melakukan pembayaran atas barang yang dipesan dan barang dikirim melalui jasa pengiriman barang seperti menggunakan jasa pengiriman JNE.
5. Untuk keamanan, aplikasi ini menggunakan Secure Socket Layer (SSL), IP-Dedicated, danfasilitas login untuk mengakses situs.
6. Aplikasi hanya memberikan fasilitas customer service online melalui Yahoo Messenger, dan hanya dapat melakukan integrasi dengan situs jejaring sosial facebook.
7. Aplikasi ini dibangun menggunakan bahasa pemrograman PHP dan MySQL sebagai DBMS yang didukung dengan aplikasi seperti Macromedia Dreamweaver sebagai editor HTML, Mozilla firefox dan chrome sebagai web browser.
8. Tahapan analisis aplikasi ini menggunakan metode terstruktur dengan model proses DFD (Data Flow Diagram) dan model data ERD (Entity Relation Diagram).
1.5 Metodologi Penelitian
Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut:
1. Tahap pengumpulan data
Metode pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut:
(8)
a. Studi Literatur.
Pengumpulan data dengan cara mengumpulkan literatur, jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan judul penelitian [1]. b. Observasi.
Teknik pengumpulan data dengan mengadakan penelitian dan peninjauan langsung terhadap permasalahan yang diambil [1].
c. Wawancara.
Pengumpulan data yang dilakukan dengan cara berkomunikasi langsung melalui tanya jawab secara langsung mengenai hal-hal yang ada kaitannya dengan topik yang di ambil [1].
2. Tahap pembuatan perangkat lunak.
Teknik analisis data dalam pembuatan perangkat lunak menggunakan paradigma perangkat lunak secara waterfall seperti tercantum pada gambar 1.1, yang meliputi beberapa proses diantaranya [2]:
a. System / Information Engineering
Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya ke dalam pembentukan perangkat lunak.
b. Analisis
Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan perangkat lunak.
(9)
c. Design
Tahap penerjemahan dari data yang di analisis ke dalam bentuk yang mudah dimengerti oleh user.
d. Coding
Tahap penerjemahan data atau pemecahan masalah yang telah di rancang ke dalam bahasa pemrograman tertentu.
e. Pengujian
Merupakan tahap pengujian terhadap perangkat lunak yang di bangun.
f. Maintenance
Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat mengalami perubahan–perubahan atau penambahan sesuai dengan permintaan user.
System Engineering
System Analysis
System Testing System
Design
System Coding
System Maintenance
Feedback
(10)
1.6 Sistematika Penulisan
Sistematika penulisan laporan tugas akhir ini di susun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :
BAB 1 PENDAHULUAN
Pada bab ini di bahas mengenai latar belakang masalah, perumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB 2 LANDASAN TEORI
Pada aplikasi ini menjelaskan berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan, teori program yang berkaitan dengan aplikasi yang digunakan, teori khusus yaitu berkaitan dengan istilah-istilah yang dipakai dalam pembuatan aplikasi e-commerce tersebut.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini berisi analisis kebutuhan dalam membangun aplikasi ini, analisis terhadap seluruh spesifikasi sistem yang mencakup analisis prosedur yang sedang berjalan, analisis pengguna dan analisis basis data, selain itu terdapat juga perancangan antarmuka untuk aplikasi yang akan di bangun sesuai dengan hasil analisis yang telah di buat.
BAB 4 IMPLEMENTASI DAN PENGUJIAN
Pada bab ini membahas tentang implementasi dan pengujian sistem yang telah dikerjakan serta menerapkan kegiatan implementasi dan pengujian pada aplikasi e-commerce yang telah di bangun.
(11)
BAB 5 KESIMPULAN DAN SARAN
Pada bab ini membahas kesimpulan dan saran yang sudah di peroleh dari hasil penulisan skripsi yang telah dilakukan.
(12)
9
BAB 2
TINJAUAN PUSTAKA
2.1 Tinjauan Perusahaan 2.1.1 Sejarah Toko Wenk’s Sport
Toko Wenk’s Sport merupakan toko yang bergerak dalam bidang penjualan produk olahraga sepak bola. Toko Wenk’s Sport didirikan pada tahun 2008 oleh Bapak Irwan Gunawan. Toko ini berlokasi di jalan raya Cikalongwetan No. 205 Kabupaten Bandung Barat.
Produk yang di jual di toko Wenk’s Sport antara lain: a. Pakaian Sepak Bola
b. Sepatu Sepak Bola c. Sepatu Futsal d. Bola
Dalam memproleh produk-produk yang akan dipasarkan, toko ini banyak menjalin kerjasama dengan toko lain yang memproduksi alat-alat olahraga sepak bola.
2.1.2 Visi dan Misi
Visi dari toko Wenk’s Sport adalah untuk mengembangkan usaha atau bisnis dalam bidang penjualan alat-alat olahraga, juga menguntungkan dalam industri perdagangan dan dapat meningkatkan kesejahteraan orang banyak.
(13)
Adapun misi dari toko Wenk’s Sport adalah senantiasa berusaha memberikan pelayanan terbaik bagi seluruh konsumen toko Wenk’s Sport, bahkan melebihi harapan konsumen sekaligus memberikan manfaat bagi semua kalangan masyarakat.
2.1.3 Struktur Organisasi
Struktur organisasi merupakan gambaran formal organisasi yang menunjukkan adanya pemisahan fungsi, uraian tugas, wewenang dan tanggung jawab yang di susun untuk membantu pencapaian hasil usaha perusahaan serta pengendaliannya secara efektif. Bentuk organisasi Toko Wenk’s Sport didasarkan atas tinjauan dari segi wewenang, tanggung jawab dan hubungan kerja dalam fungsi organisasi.
Toko Wenk’s Sport yang termasuk ke dalam kategori perusahaan perseorangan memiliki struktur organisasi sederhana yang dapat di lihat pada gambar 2.1.
pemilik toko
pegawai toko kasir bagian stok
barang
(14)
2.1.4 Deskripsi Tugas
Definisi tugas digunakan untuk mengetahui tugas, wewenang, tanggung jawab dari masing-masing bagian. Definisi tugas yang ada di toko Wenk’s Sport adalah sebagai berikut:
1. Pemilik Toko
Pemilik toko Wenk’s Sport memiliki tugas sebagai pengambil keputusan, mengontrol kinerja semua pegawai, melaksanakan pemeriksaan yang meliputi seluruh aspek kegiatan manajemen keuangan dan operasional agar pengelolaan dapat dilaksanakan secara efektif dan efisien.
2. Bagian Stok Barang
Bagian stok barang di toko Wenk’s Sport bertugas memeriksa persediaan barang.
3. Pegawai Toko
Pegawai toko bertugas untuk melayani konsumen. 4. Kasir
Kasir bertugas untuk menghitung uang hasil penjualan dan bertanggung jawab atas uang yang masuk, melaporkan hasil penjualan harian.
(15)
2.2 Landasan Teori 2.2.1 E-Commerce
2.2.1.1 Sejarah E-commerce
Saat awal ditemukannya jaringan komputer, kebanyakan perusahaan bisnis sekala besar di seluruh dunia, terutama di Amerika Serikat, menggunakan suatu bagian tertentu dari perdagangan elektronik (electronic commerce) untuk mengendalikan transaksi antarbisnis. EDI (Electronic Data Interchange), yang memungkinkan pertukaran dokumen antarbagian dalam suatu perusahaan dengan bentuk yang terstandarisasi di jaringan pribadi, telah di mulai pada sekitar tahun 1960-an di Amerika Serikat. Kemudian aplikasi-aplikasi perbankan berskala besar telah lama menggunakan jaringan terdedikasi (dedicated networks) untuk metode-metode pertransferan dana dengan menggunakan sistem EFT (Electronic Fund Transfer), yang merupakan metode pentransferan dana secara elektronik, yang dirancang untuk mengoptimalkan pembayaran yang dilakukan secara elektronik. Saat ini, dengan semakin maraknya penggunaan Internet, perdagangan secara elektronik (e-commerce) dilakukan oleh bisnis-bisnis dengan berbagai ukuran [3].
2.2.1.2 Keuntungan E-commerce
2.2.1.2.1 Keuntungan Bagi Perusahaan
Secara umum, ada berbagai manfaat yang dapat didapat perusahaan saat melakukan perdagangan secara elektronik. Beberapa manfaat itu adalah sebagai berikut [3]:
(16)
a. Memperpendek Jarak
Perusahaan-perusahaan dapat lebih mendekatkan diri dengan konsumen. Dengan hanya mengklik link-link yang ada pada situs-situs, konsumen dapat menuju ke perusahaan dimanapun saat itu konsumen berada.
b. Perluasan Pasar
Jangkauan pemesaran menjadi semakin luas dan tidak terbatas oleh area geografis dimana perusaan berada.
c. Perluasan Jaringan Mitra Bisnis
Pada perdagangan tradisional, sangat sulit bagi suatu perusahaan untuk mengetahui posisi geografis mitrakerjanya yang berada di negara-negara lain atau benua lain. Bagaimana pun juga mitra kerja sangat pentin untuk konsultasi dan kerjasama baik teknis maupun non-teknis. Dengan adanya perdagangan elektronik lewat jaringan internet, hal-hal tersebut bukan menjadi masalah yang besar lagi.
d. Efisien
Seperti di singgung di bagian sebelumnya, perdagangan elektronik akan sangat memangkas biaya-biaya operasional. Perusahaan-perusahaan yang berdagang secara elektronik tidak membutuhkan kantor dan toko yang besar, menghemat kertas-kertas yang digunakan untuk transaksi-transaksi, periklanan, serta pencatatan-pencatatan. Selain itu, perdagangan elektronik juga sangat efisien dari sudut waktu yang digunakan. Pencarian
(17)
informasi-informasi produk/jasa dan transaksi-transaksi bias dilakukan lebih cepatserta lebih akurat.
2.2.1.2.2 Keuntungan Bagi Konsumen
Perdagangan elektonik juga bermanfaat bagi pelanggan/konsumen. Beberapa manfaat itu adalah sebagai berikut [3]:
a) Efektif
Konsumen dapat memperoleh informasi tentang produk/jasa yang dibutuhkannya dan bertransaksi dengan cara yang cdepat dan murah.
b) Aman Secara Fisik
Konsumen tidak perlu mendatangi tokotempat perusahaan menjajakan harganya dan ini memungkinkan konsumen dapat bertransaksi dengan aman sebab di daerah-daerah tertentu mungkin sangat berbahaya jika berkendaraan dan membawa uang tunaidalam jumlah yang besar. c) Fleksibel
Konsumen dapat melakukan transaksi dari berbagai lokasi, baik dari rumah, kantor, warnet, atau tempat-tempat lainnya. Konsumen juga tidak perlu berdandan rapi seperti pada perdagangan tradisional umumnya.
2.2.1.2.3 Keuntungan Bagi Masyarakat Umum
Perdagangan elektonik juga bermanfaat bagi masyarakat umum. Beberapa manfaat itu adalah sebagai berikut [3]:
(18)
1. Mengurangi Polusi dan Pencemaran Lingkungan
Dengan adanya perdagangan elektronik yang dapat dilakukan dimana saja, konsumen tidak perlu melakukan perjalanan-perjalanan ke toko-toko, dimana hal ini pada gilirannya akan mengurangi jumlah kendaraan yang berlalu-lalang di jalanan. Berkurangnnya kendaraan di jalanan berarti menghemat bahan bakar (BBM) dan mengurangi tingkat polusi udara sebab gas-gas buangan kendaraan bermotor dapat mencemari lingkungan.
2. Membuka Peluang Kerja Baru
Era perdagangan elektronik akan membuka peluang-peluang kerja baru bagi yang tidak „buta’ teknologi. Muncul pekerjaan-pekerjaan baru seperti pemrogram computer, perancang web, ahli di bidang basis data, analisis sistem, ahli di bidang jaringan computer, dan sebagainya.
3. Menguntungkan Dunia Akademis
Berubahnya pola hidup masyarakat dengan hadirnya perdagangan elektronik, kalangan akademis akan semakin diperkaya dengan kajian-kajian psikologis, antropologis, sosial-budaya, dan sebagainya, yang berkaitan dengan cara dan pola hidup yang berkaitan dengan dunia maya. Selain itu, dampak langsung dari hadirnya Internet secara langsung akan menantang kiprah ilmuwan di bidang teknik komputer, teknik telekomunikasi, elektronika, pengembangan perangkat lunak, dan sebagainya.
(19)
4. Meningkatkan Kualitas Sumber Daya Manusia
Perdagangan elektronik, seperti juga teknologi komputer pada umumnya, hanya bias dilakukan oleh orang-orang yang tidak gaptek (gagap teknologi), sehingga pada gilirannya akan merangsang orang-orang untuk mempelajari teknologi komputer demi kepentingan mereka sendiri. Selain itu, dalam melakukan perdagangan elektronik, seseorang suatu saat mungkin akan „tersesat’ ke situs-situs berkualitas yang akan meningkatkan pemahaman orang yang bersangkutan.
2.2.1.3 Kerugian E-commerce
Di samping segala hal yang menguntungkandi atas, segala sesuatu ciptaan manusia pasti memiliki sisi negatif. Namun, dari sudut pandang manapun, perdagangan elektronik memiliki segi positif lebih banyak dari sisi negatifnya.
Sebagai langkah antisipasi, perlu memahami beberapa segi negatif perdagangan elektronik (atau internet pada umumnya) sebagai berikut [3]:
a. Meningkatkan Individualisme
Pada perdagangan elektronik, seseorang dapat bertransaksi dan mendapatkan barang/jasa yang diperlukannya tanpa perlu bertemu. Ini membuat beberapa orang menjadi berpusat pada diri sendiri (egois) serta individualistis dan merasa dirinya tidak terlalu membutuhkan kehadiran orang lain dalam hidupnya.
(20)
b. Terkadang Menimbulkan Kekecewaan
Apa yang di lihat di layar monitor komputer kadang berbeda dengan apa yang di lihat secara kasat mata. Seseorang yang membeli lukisan di Internet mungkin suatu saat akan mendapati lukisannya tidak memiliki warna yang sama dengan apa yang dilihatnya di layar monitor. Seseorang yang membeli sofa di Internet adalah contoh lain. Di layar monitor sofa yang akan dibelinya terlihat begitu nyaman diduduki. Kenyataannya? Sangat mungkin, apa yang terlihat begitu lembut di layar monitor ternyata pada kenyataanya tidak begitu adanya.
c. Tidak Manusiawi
Sering sekali orang pergi ke toko-toko dan pusat-pusat perbelanjaan (mall) tidak sekedar ingin memuaskan kebutuhannya akan barang/jasa tertentu. Mungkin orang itu melakukannya untuk penyegaran (refresing) atau bersosialisasi dengan rekan-rekan atau keluarganya. Perdagangan elektronik gagal di pandang dari sudut pandang seperti ini. Di internet, meski dapat mengobrol (chatting) dengan orang lain, mungkin orang itu tidak merasakan jabat tangannya, senyuman ramahnya, atau candanya.
Setelah melihat bagaimana perdagangan elektronik yang dilakukan secara seksama akan sangat menguntungkan baik perusahaan penjual, pembeli, maupun masyarakat pada umumnya. Meski demikian, dengan efek-efek negatifnya, perdagangan elektronik seharusnya tidak menggantikan perdagangan tradisional. Perdagangan tradisional menawarkan komunikasi, keakraban, kehangatan, dan sebagainya, dimana
(21)
hal ini tidak dapat di jumpai di perdagangan elektronik. Perdagangan elektronik sangat berorientasi transaksi. Perdagangan elektronik hanya sesuai pada situasi dan kondisi tertentu, dimana kontak langsung antara penjual dan pembeli tidak terlalu dibutuhkan.
2.2.1.4 Klasifikasi E-Commerce
Penggolongan E-Commerce yang lazim dilakukan orang ialah berdasarkan sifat transaksinya, antara lain [3]:
1. Business to Business (B2B)
Jenis transaksi di mana pembeli biasanya membeli dalam jumlah besar karena akan di jual kembali. Contoh penjualan grosir.
2. Business to Consumer (B2C)
Jenis transaksi dimana pembelinya perorangan dan tidak punya tujuan untuk menjualnya kembali biasanya semacam toko online yang menjual berbagai macam barang.
3. Consumer to Consumer (C2C)
Jenis transaksi di mana pembelinya perorangan yang tidak mempunyai tujuan untuk di jual kembali dan penjualnya juga perorangan yang tidak menyediakan bermacam-macam barang melainkan hanya beberapa barang saja. Contoh: online advertising.
(22)
4. Consumer to Business (C2B)
Termasuk ke dalam kategori ini adalah perseorangan yang menjual produk atau layanan kepada organisasi, dan perseorangan yang mencari penjual, berinteraksi dengan mereka dan menyepakati suatu transaksi.
2.2.2 Pengenalan CSS
CSS atau Cascading Style Sheet saat ini adalah sebuah elemen penting dalam pembuatan sebuah web. Sama pentingnya saat mendesain bentuk web pada Photoshop. Dengan CSS, dapat mendesign sejumlah halaman dengan aturan yang sama tanpa mengubah halaman-halaman tersebut satu persatu. Bayangkan saja jika mempunyai ratusan halaman dan harus mendesign ulang halaman tersebut satu persatu, hanya akan menghabiskan waktu. Dengan CSS, masalah tersebut akan diatasi. Dengan membuat sebuah file CSS kemudian meng-importnya ke dalam file halaman web, sehingga dapat memformat style semua halam web yang di buat.
Saat ini CSS merupakan aturan style yang banyak digunakan dikarenakan fleksibilitas dari tag, kemudahan dan lengkapnya atribut yang dimilikinya.
Penggunaan CSS dalam web akan lebih efisien dikarenakan CSS dapat digunakan secara berulang pada tag-tag tertentu, sehingga tidak usah mengetikkan ulang seluruh perintah pemformatan desain seperti halnya dalam HTML klasik [4].
(23)
2.2.3 Pengenalan PHP
PHP atau Hypertext Preprocessor adalah salah satu jenis bahasa pemograman web yang open source, sehingga dapat digunakan secara cuma-cuma. Selain gratis, PHP juga memiliki kelebihan diantaranya, kemudahan dalam menggunakannya serta dapat digunakan untuk membuat website dinamis.
Dengan PHP dapat membuat situs lebih interaktif. Misalnya untuk pengisian formulir, pengisian buku tamu, dll. PHP juga dapat menghubungkan website yang di buat dengan database, sehingga menciptakan website yang dinamis.
Struktur dari file PHP biasanya didahului oleh tag <?php serta di tutup dengan tag ?>. Dan file-nya ber-ekstensi .php.
<?php
Disini letek skrip-skrip PHP ?>
Setiap perintah juga harus dilengkapi dengan titik koma “;”. Serta variable PHP di tulis dengan tanda dolar ($) dan diikuti nama variabel tanpa spasi.
// Perintah diakhiri dengan “;” <?php
Perintah PHP1; Perintah PHP2; ?>
// Variabel tanpa spasi <?php
(24)
$variabelphp = “Nilai dari variabelphp”; $tulis = “value dari tulis”;
?>
Untuk menghubungkan web berbasis PHP dengan database, biasanya akan membutuhkan sebuah perantara koneksi. Kondisi ini dapat dibuat dengan mudah menggunakan tools Recordest yang ada pada Dreamweaver. Tapi untuk sederhananya sebagai berikut:
<?php
$servername = “localhost”; $username = “root”; $password = “password”; $database = “database”;
mysql_connect ($servername, $username, $password) or die (“Gagal Koneksi”);
mysql_select_db($database) or die (“Database tidak ada”); ?>
Kemudian simpan file tersebut pada folder root website, maka setiap file yang perlu untuk mengakses database akan memerlukan file koneksi tersebut. Gunakan fungsi require() atau include() pada halaman PHP yang memerlukan file koneksi [4].
(25)
2.2.4 HTML (Hypertext Markup Language)
Hypertext markup Language (HTML) dalam ilmu komputer merupakan bahasa pemformatan teks untuk dokumen-dokumen pada jaringan computer yang di kenal sebagai World Wide Web (atau sering disebut web saja). Dokumen-dokumen HTML merupakan berkas teks yang mengandung 2 bagian [3]:
1. Isi yaitu segala sesuatu yang ingin ditampilkan dan diperlihatkan dalam dokumen web.
2. Tag yang merupakan informasi pemformatan, yang tersembunyi dari pandangan pengguna, yang memberitahu browser tentang bagaimana caranya menampilkan isi dokumen ke hadapan pengguna.
HTML pada dasarnya merupakan himpunan bagian dari bahasa yang lebih luas jangkauannya yaitu Standard Generalized Markup Language (SGML), yang merupakan sistem pengkodean dan pemformatan untuk dokumen yang ditampilkan di layar computer maupun di kertas.
Dokumen-dokumen SGML terdiri dari 3 jenis informasi: data, structure, dan format. Data mencakup tidak hanya teks, grafik dan gambar, suara tetapi juga informasi-informasi yang tidak ditampilkan pada luaran misalnya basis data katalog pengiriman lewat surat yang memuat informasi rujukan tentang item tertentu yang berisi persediaan saat ini yang tidak tercantum dalam catalog tercetak.
Structure dokumen merujuk pada pengorganisasian data pada dokumen yang bersangkutan, misalnya bab-bab, subbab-subbab, daftar-daftar, gambar-gambar, judul-judul, indeks, dan daftar isi. Halaman-halaman World Wide Web
(26)
memuat struktur yang sama. Namun selain itu, HTML juga memuat link, atau hubungan dengan halaman-halaman World Wide Web yang lainnya.
Format merujuk pada bagaimana dokumen akan di lihat oleh para pengguna. Sebagai contoh, teks mungkin akan dimiringkan (italic), ditebalkan (bold), diberi garis bawah (underline), dan sebagainya.
World Wide Web pertama kali dikembangkan oleh fisikawan dan ilmuwan computer Inggris yang bernama Timothy Berners-Lee pada salah satu proyek yang diselenggarakan oleh Pusat Riset Nuklir Eropa (European Organization for Nuclear Research (CERN)) di Geneva, Swiss. Berners-Lee menggabungkan beberapa ide yang ada saat itu ke suatu sistem tunggal yang memudahkan para fisikiawan menggunakan data-data dan mengomunikasikannya lewat Internet. Yang juga penting, Berners-Lee menambahkan kemamapuan multimedia pada dokumen-dokumen web. Berners-Lee mulai bekerja dengan hypertext pada awal tahun 1980-an dan prototipe-nya diimplementasikan oleh CERN pada tahun 1989. Selanjutnya ide-ide Berners-Lee secara cepat menyebar ke universitas-universitas di seluruh dunia (dan akhirnya ke dunia komersial).
Beberapa tag dalam dokumen-dokumen HTML menentukan bagaimana teks-teks di format. Tag-tag yang lain memberitahu computer tentang bagaimana menanggapi aksi-aksi yang datang dari pengguna. Sebagai contoh, apa yang harus dilakukan komputer saat pengguna mengklikkan mouse-nya pada icon tertentu. Kemudian tag lain yang penting adalah link yang mengandung uniform Resource locator (ULR), yang merujuk pada dokumen lain di server yang sama atau computer lain yang ada di jaringan global Internet. Selain itu, HTML juga
(27)
memiliki penandaan untuk membuat formulir-formulir yang memungkinkan pengguna mengisi informasi tertentu dan mengirimkannya secara elektronik ke tempat-tempat lain di jaringan internet.
Perangkat lunak yang memungkinkan pengguna menjelajahi World Wide Webdan melihat dokumen-dokumen HTML dinamakan browser. Browser menafsirkan tag-tag HTML pada dokumen dan melakukan pemformatan saat dokumen yang bersangkutan ditampilkan di layar monitor.
Pada tahun 1989, Berners-Lee merumuskan suatu proposal tentang sebuah system hypertext yang memiliki 3 komponen sebagai berikut:
1. Antarmuka yang konsisten untuk semua jenis platform. Antarmuka ini harus menyediakan akses yang dapat digunakan oleh berbagai jenis computer. 2. Akses informasi yang bersifat universal. Setiap pengguna harus dapat
mengakses setiap informasu yang berbeda.
3. Antarmuka yang menyediakan akses keberbagai jenis dokumen dan protocol.
HTML 2.0 didefinisikan oleh Internet Engineering Task Force (IETF) dengan himpunan fitur dasar, termasuk kemampuan halaman yang bersifat interaktif. Versi selanjutnya menambahkan fitur-fitur tambahan seperti teks yang berkedip (blinking text), latar belakang yang dapat di atur, serta table-tabel. Versi-versi selanjutnya menambahkan kemampuan-kemampuan baru dan setiap saat browser harus dimodifikasi untuk dapat menyesuaikan diri dengan kemampuan-kemampuan baru tersebut. Saat ini standar untuk HTML dispesifikasi oleh W3C (world Wide Web Consortium).
(28)
2.2.5 JavaScript
JavaScript adalah bahasa skrip dan Netscape yang fungsinya mirip dengan VBScript namun bahasa dasarnya adalah adalah Java. Javascript di dukung oleh browser Netscape Navigator mulai versi 2.0. Javascript lebih mudah digunakan dari Java, tetapi tentu saja tidak memiliki kemampuan yang secanggih Java. Javascript menggunakan bahasa HTML sebagai antarmuka penggunanya. Java dapat membuat antarmuka secara lengkap. Pada sisi client, applet (sebuah aplikasi sikembangkan untuk dijalankan di browser) di pelihara dalam kode sumber. Pada server, mereka dikompilasimenjadi kode byte (bahasa antara), mirip dengan program-program yang dibuat dengan bahasa pemograman Java. Javascript berevolusi dari bahasa livescript dan Netscape dan kompatibel dengan bahasa pemograman Java. Javascript tidak sehebat Java, namun dapat digunakan bersama dengan Java. Sebagai contoh applet Javascript dapat digunakan untuk membuat form masukan pengguna dan melakukan validasi asupan, sementara program Java akan melakukan pemrosesan informasinya [3].
2.2.5.1 Kekurangan dan Kelebihan JavaScript
Beberapa kelebihan dari JavaScript diantaranya adalah sebagai berikut [3]: 1. Ukuran file relatif kecil
Kode JavaScript memiliki ukuran yang kecil sehingga ketika web yang mengnadung JavaScript ditampilkan di browser, maka akses tampilannya akan lebih cepat dibandingkan ketika membuka suatu web yang mengandung kode Java. Hal ini juga sangat berpengaruh dengan kinerja
(29)
server. Semakin kecil space suatu web yang di simpan dalam suatu server, maka kinerja server ketika di-browsing oleh user di internet akan tidak terlalu berat, selain itu sifat JavaScript yang client side tidak perlu lagi diolah oleh server ketika browser memanggilnya.
2. Mudah untuk dipelejari
Javascript merupakan bahasa semi pemograman yang merupakan gabungann antara bahasa pemograman Java dengan bahasa kode HTML sehingga di sebut bahasa hybrid, dan tidak memiliki aturan serumit Java. 3. Terbuka
Javascript tidak terikat oleh hardware maupun software tertentu, bahkan sistem operasi seperti Windows maupun Unix. Karena bersifat terbuka, maka dapat dibuat di baca di semua jenis computer.
Sedangkan, beberapa kekurangan JavaScript diantaranya adalah sebagai berikut:
1. Skrip tidak terenkripsi
Karena bersifat client server, maka kode yang di buat di text editor dan telah dijadikan semua halaman web di server, ketika user me-request halaman tersebut, maka kode javaScricpt akan langsung ditampilkan di browser. User bisa melihat dan meniru dari source-nya secara langsung tanpa enkripsi sedikitpun.
(30)
2. Kemampuan terbatas
Walaupun JavaScript mampu membuat halaman web menjadi interaktif dan dinamis, namun JavaScript tidak mampu membuat program aplikasi sendiri seperti Java.
3. Keterbatasn objek
Javascript tidak mampu membuat kelas-kelas yang bias menampung objek-objek tambahan seperti Java, karena JavaScript telah memiliki objek built-in pada struktur bahasanya.
2.2.6 Mengenal MySQL dan phpMyAdmin
MySql adalah database yang menghubungkan script PHP menggunakan perintah query dan escape character yang sama dengan PHP. MySQL mempunyai tampilan client yang mempermudah dalam mengakses database dengan kata sandi untuk mengijinkan proses yang boleh dilakukan.
Sedangkan phpMyAdmin merupakan halaman yang terdapat pada web server. Fungsi dari halaman ini adalah sebagai pengendali database MySQL menggunakan web server [5].
2.2.6.1 Perintah Membuat Database
Untuk membuat database badu di dalam server dengan menggunakan printah CREATE DATABASE. Berikut adalah contoh untuk membuat database [5].
(31)
Query OK, 1 row affected (0.28)
Pada perintah di atas, pernyataan “Query OK, 1 row affected (0.02)” menendakan bahwa perintah yang dijalankan dapat diterima oleh server. Sehingga maksud dari perintah akan diterapkan pada database MySQL.
Untuk melihat hasilnya, dapat menggunakan perintah SHOW seperti sebelumnya.
mysql> SHOW DATABASES;
2.2.6.2 Perintah Mengaktifkan Database
Setelah database di buat, maka dapat bekerja di dalam database tersebut dengan menggunakan perintah-perintah DML (Data Manipulation Language) dan DDL (Data Definition Language). Untuk dapat bekerja pada sebuah database, masuklah ke dalam database tersebut. Caranya adalah dengan menggunakan perintah USE. Perhatikan contohnya [5]:
mysql> USE nama database; Database changed
Setelah mendapatkan pesan “Database changed”, maka sekarang berada di dalam database. Di dalam database tersebut dapat menggunakan berbagai operasi DML dan DDL.
(32)
2.2.6.3 Perintah Membuat Tabel
Di dalam databse, dapat melakukan operasi DDL seperti perintah CREATE untuk membuat table. Struktur perintah untuk membuat table adalah sebagai berikut [5]:
Sintaks
CREATE TABLE namatabel (koloma TYPE(panjang), Kolomb TYPE(panjang),
………,
Kolomn TYPE(panjang));
2.2.6.4 Perintah Menampilkan Tabel
Melihat kondisi daftar table di dalam database yang sedang aktif. Perintah yang dapat digunakan adalah SHOW TABLES. Perhatikan contoh querynya sebagai berikut [5]:
mysql> SHOW TABLES;
2.2.6.5 Perintah mendeskripsikan Tabel
Semua desain kolom tabel yang telah di buat, dapat ditampilkan lagi dengan menggunakan perintah DESCRIBE atau DESC. Perhatikan caranya sebagai berikut [5]:
(33)
2.2.6.6 Perintah Memasukkan Data Pada Tabel
Setelah tabel terbentuk, dapat menggunakan perintah-perintah (Data Manipulation Language) seperti INSERT, UPDATE, dan DELETE untuk memanipulasi data yang ada didalamnya.
Perintah INSERT digunakan untuk memasukkan data baru ke dalam tabel, cara menggunakannya adalah sebagai berikut [5]:
Sintaks
INSERT INTO namatabel (koloma, kolomb, …, kolomn) Values („datakoloma‟, ‟datakolomb‟,„…‟, „datakolomn‟)
2.2.6.7 Perintah Menampilkan Isi Tabel
Setelah data dimasukkan, dapat melihat daftar data yang ada di dalam tabel dengan nama tabel yang telah di buat. Caranya adalah dengan menggunakan perintah SELECT, perhatikan contohnya sebagai berikut [5]:
mysql> SELECT * FROM namatabel;
2.2.6.8 Menampilkan Dengan Kondisi
Menampilkan data per kolom atau banyak kolom yang telah dikuasai, permasalahannya sekarang adalah bagaimana apabila hendak memilih baris data tertentu saja untuk di tampilkan. Apabila memiliki keinginan tersebut, maka dapat menggunakan parameter WHERE.
(34)
Parameter WHERE merupakan bentuk klausa SQL standar yang dimiliki oleh MySQL dalam membuat pengkondisian dalam permintaan/query. Sintaks penggunaannya adalah [5]:
Sintaks dasar
SELECT [* | kolom] FROM namatabel WHERE kondisi;
2.2.6.9Merubah Data dengan Kondisi
Perintah DML lain yang berkaiatan dengan data adalah UPDATE. Perintah ini dapat digunakan untuk meremajakan isi data lama pada atabel menjadi data terbaru. Penggunaan dari perintah tersebut dapat di lihat pada sintaks berikut [5]: Sintaks dasar
UPDATE namatabel SET koloma=‟databaru‟, Kolomb=‟databaru‟ WHERE kondisi;
2.2.6.10Menghapus Data dengan Kondisi
Dengan menggunakan parameter WHERE, dapat melakukan operasi penghapusan data dari tabel anggota. Perintah DML yang digunakan untuk menghapus data adalah DELETE. Berikut sintaksnya [5]:
Sintaks dasar
(35)
2.2.7 Basis Data (Database)
Definisi Basis Data (Database) dapat didefinisikan dalam sejumlah sudut pandang seperti [6]:
a. Sistem yang terkomputerisasi yang tujuan utamanya adalah memelihara informasi dan membuat informasi tersebut tersedia saat dibutuhkan.
b. Kumpulan data yang saling berhubungan yang di simpan di tempat penyimpanan dan dapat dimanfaatkan kembali dengan cepat dan mudah.
Sebuah basis data memerlukan system untuk memasukkan mengubah, menghapus, memanipulasi, dan dapat memperoleh data/informasi dengan praktis dan efisien, sistem tersebut dikenal dengan nama Database Management System (DBMS). DBMS mengatur proses pengambilan dan penyimpanan data seperti system operasi yang bertugas mengatur sumber daya di dalam komputer. DBMS akan menentukan bagaimana data di organisasi, di simpan, di ubah, dan di ambil kembali. DBMS juga menerapkan mekanisme pengamatan data, pemakaian data secara bersama-sama oleh beberapa aplikasi, dan menjaga kehandalan data (integritas data).
2.2.8 ERD
Pemodelan awal basis data yang paling banyak digunakan adalah menggunakan Entity Relationship Diagram (ERD). ERD dikembangkan berdasarkan teori himpunan dalam bidang matematika. ERD digunakan untuk pemodelan basis data relasional. Sehingga jika penyimpanan basis data
(36)
menggunakan OODBMS maka perancangan basis data tidak perlu menggunakan ERD. Berikut adalah simbol-simbol yang digunakan pada ERD [12]:
Simbol Deskripsi
Entitas / entity
nama_entitas
Entitas merupakan data inti yang akan di simpan; bakal tabel pada basis data
Atribut
nama_atribut
Field atau kolom data yang butuh di simpan dalam suatu entitas
Atribut kunci primer nama_kunci_primer
Field atau kolom data yang butuh di simpan dalam suatu entitas dan digunakan sebagai kunsinakses record yang diinginkan; biasanya berupa id
Atribut multinilai /
multivalue
nama_atribut
Field atau kolom data yang butuh di simpan dalam suatu entitas yang dapat memiliki nilai lebih dari satu
Relasi
nama_relasi
Relasi yang menghubungkan antar entitas; biasanya diawali dengan kata kerja
Asosiasi / association
1 O..*
Penghubung antara relasi dan entitas di mana di kedua ujungnya memiliki
multiplicity kemungkinan jumlah pemakaian
(37)
2.2.9 CDM
CDM (Conceptual Data Model) atau model konsep data merupakan konsep yang berkaitan dengan pandangan pemakai terhadap data yang di simpan dalam basis data. CDM sudah di buat dalam bentuk tabel-tabel tanpa tipe data yang menggambarkan relasi antar tabel untuk keperluan implementasi ke basis data.CDM merupakan hasil penjabaran labih lanjut dari ERD. Ada aturan-aturan yang harus diikuti dalam melakukan konversi ERD menjadi CDM.
Berikut adalah simbol-simbol yang ada pada CDM [12]:
Simbol Deskripsi
Entitas / tabel Entitas atau tabel yang menyimpan data dalam basis data
Relasi Relasi antar tabel yang terdiri atas nama relasi dan multiplicity
nama_tabel
1..*
1..*
nama relasi
(38)
2.2.10 PDM
Model Relasional atau Physical Data Model (PDM) adalah model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setipa kolom memiliki nama yang unik beserta tipe datanya. PDM merupakan konsep yang menerangkan detail dari bagaimana data di simpan di dalam basis data.
Berikut adalah simbol-simbol yang ada pada PDM [12]:
Simbol Deskripsi
Tabel Tabel yang menyimpan data dalam basis data
Relasi Relasi antar tabel yang terdiri dari
persamaan antara primary key (kunci primer) tabel yang di acu dengan kunci yang menjadi referensi acuan di tabel lain
nama_tabel
id_tbl 1 = id_fk_tbl2
Gambar 2.4 Simbol PDM
2.2.11 DFD
Data Flow Diagram (DFD) awalnya dikembangkan oleh Chris Gane dan Tris Saron pada tahun 1979 yang termasuk dalam Structured System Analysis and Design Methodology (SSADM) yang di tulis oleh Chris Gane dan Trish Saron. Sistem yang dikembangkan ini berbasis pada dekomposisi fungsional dari sebuah
(39)
sistem. Berikut adalahcontoh DFDyang dikembangkan oleh Chris Gane dan Trish Sarson [12]:
produsen atau konsumen
proses
aliran data
D4 nama penyimpadan data 1.2.3
Gambar 2.5 Contoh DFD yang Dikembangkan Chris Gane & Trish Sarson
Edward Yourdon dan Tom DeMarco memperkenalkan metode yang lainpada tahun1980-an di mana mengubah persegi dengan sudut lengkung (pada DFD Chris Gane dan Trish Sarson) dengan lingkaran untuk menotasikan. DFD Edward Yourdon dan Tom DeMarco populer digunakan sebagai model analisis sistem perangkat lunak untuk sistem perangkat lunak untuk sistem perangkat lunak yang akan diimplementasikan dengan pemrograman terstruktur.
(40)
Informasi yang ada di dalam perangkat lunak dimodifikasi dengan beberapa transformasi yang dibutuhkan. Data Floe Diagram (DFD) atau dalam bahasa Indonesia menjadi Diagram Alir Data (DAD) adalah representasi grafik yang menggambarkan aliran informasi dan transformasi informasi yang diaplikasikan sebagai data yang mengalir dari masukan (input) dan keluaran (output).
DFD dapat digunakan untuk merepresentasikan sebuah sistem atau perangkat lunak pada beberapa level abstraksi. DFD dapat di bagi menjadi beberapa level yang lebih detailuntuk merepresentasikan aliran informasi atau fungsi yang lebih detail. DFD menyediakan mekanisme untuk pemodelan fungsional ataupun pemodelan aliran informasi. Oleh karena itu, DFD lebih sesuai digunakan untuk memodelkan fungsi-fungsi perangkat lunak yang akan diimplementasikan menggunakan pemrograman terstruktur karena pemrograman terstruktur menbagi-bagi bagiannya dengan fungsi-fungsi dan prosedur-prosedur.
DFD tidak sesuai untuk memodelkan sistem perangkat lunak yang akan di bangun menggunakan pemrograman berorientasi objek. Paradigma pemrograman terstruktur dan pemrograman berorientasi objek merupakan hal yang berbeda. Jangan mencampuradukkan pemrograman terstruktur dan pemrograman berorientasi objek.
Notasi-notasi pada DFD (Edward Yourdon dan Tom DeMarco) adalah sebadai berikut:
(41)
Notasi Keterangan
proses atau fungsi atau prosedur; pada pemodelan perangkat lunak yang akan diimplementasikan dengan pemrograman terstruktur, maka pemodelan notasi inilah yang harusnya menjadu fungsi atau prosedur di dalam kode program.
catatan:
nama yang diberikan pada sebuah proses biasanya berupa kata kerja
file atau basis data atau penyimpanan (storage); pada pemodelan perangkat lunak yang akan diimplementasikan dengan pemrograman terstruktur, maka pemodelan notasi inilah yang harusnyadibuat menjadi tabel-tabel basis data yang dibutuhkan, tabel-tabel ini juga harus sesuai dengan perancangan tabel-tabel pada basis data (Entity Relationship Diagram (ERD), Conceptual Data Model (CDM), Physical Data Model (PDM)) catatan:
nama yang diberikan pada sebuah penyimpanan biasanya kata benda
entitas luar (external entity) atau masukkan (input) atau keluaran (output) atau orang yang memakai/ berinteraksi dengan perangkat lunak yang dimodelakan atau sistem lain yang terkait dengan aliran data dari sistem yang di modelakan. catatan:
nama yang digunakan pada masuan (input) atau keluaran (output) biasanya berupa kata benda aliran data; merupakan data yang di kirim antar proses, dari penyimpanan ke proses, atau dari proses ke masukkan (input) atau keluaran (output) catatan:
nama yang digunakan pada aliran data biasanya berupa kata benda, dapat di awali dengan kata data misalnya „data siswa’ atau tanpa kata data
misalnya „siswa’
(42)
Berikut ini adalah tahapan-tahapan perancangan dengan menggunakan DFD:
1. Membuat DFD Lebel 0 atau sering disebut juga Context Diagram DFD Level 0 menggambarkan sistem yang akan di buat sebagai suatu entitas tunggal yang berinteraksi dengan orang maupun sistem lain. DFD Level 0 digunakan untuk menggambarkan interaksi antara sistem yang akan dikembangkan dengan entitas luar.
2. Membuat DFD Level 1
DFD Level 1 digunakan untuk menggambarkan modul-modul yang adadalam sistem yang akan dikembangkan. DFD Level 1 merupakan hasil breakdown DFD Level 0 yang sebelumnya sudah di buat.
3. Membuat DFD Level 2
Modul-modul pada DFD Level1 dapat di-breakdown menjadi DFD Level 2. Modul mana saja yang harus di-breakdown lebih detail tergantung pada tingkat kedetailan modul tersebut. Apabila modul tersebut sudah cukup detail dan rinci maka modul tersebut sudah tidak perlu untuk di-breakdown lagi. Untuk sebuah sistem, jumlah DFD Level 2 sama dengan jumlah modulpada DFD Level 1 yang di-breakdown.
4. Membuat DFD Level 3 dan seterusnya
DFD Level 3, 4, 5, dan seterusnya merupakan breakdown dari modul pada DFD Level di-atasnya. Breakdown pada DFD Level 3, 4, 5, dan seterusnya aturannya sama persis dengan DFD Level 1 atau Level 2.
(43)
Pada suatu diagram DFDsebaiknya jumlah modultidak boleh lebih darin20 buah. Jika lebih dari 20 buah modul, diagram akan terlihat rumit dan susah untuk di baca sehingga menyebabkan sistem yang dikembangkan jugamenjadi rumit.
2.2.12 Kamus Data
Kamus data (data dictionary) dipergunakan untuk memperjelas aliran data yang digambarkan pada DFD. Kamus data adalah kumpulan daftar elemen data yang mengalir pada sistem perangkat lunak sehingga masukkan (input) dan keluaran (output) dapat dipahami secara umum (memiliki standar cara penulisan). Kamus data biasanya berisi[12]:
1. nama – nama dari data
2. digunakan pada – merupakan proses-proses yang terkait data 3. deskripsi – merupakan deskripsi data
4. informasi tambahan – seperti tipe data, nilai data, batas nilai data, dan komponen yang membentuk data
Komponen data memiliki beberapa simbol untuk menjelaskan informasi tambahan sebagai berikut:
(44)
Simbol Keterangan =
+ [|] {}n ( ) *…*
di susun atau terdiri dari dan
baik … atau ...
n kali di ulang/bernilai banyak data opsional
batas komentar
Gambar 2.7 Simbol Kamus Data
Kamus data pada DFD nanti harus dapt dipetakan dengan hasil perancangan basis data yang dilakukan sebelumnya. Jika ada kamus data yang tidak dapat dipetakan pada tabel hasil perancangan basis data berarti hasil perancangan basis data dengan perancangan dengan DFD masih belum sesuai, sehingga harus ada yang di perbaiki baik perancangan basis datanya, perancangan DFD-nya, atau keduanya.
2.2.13 Keamanan Untuk Aplikasi Web
Keamanan-keamanan untuk aplkasi web mencakup Secure-HTTP dan Secure Socket Layer, yang menyediakan otentikasi untuk server-server dan browser-browser, juga meningkatkan tingkat kepercayaan (confidentially) dan integritas datauntuk komunikasi yang berlangsung antara server web dan browser. S-HTTP secara spesifik di rancang untuk mendukung protocol HTTP (Hypertext Transfer Protocol) dalam hal otorisasi dan keamanan dokumaen. SSL
(45)
menawarkan metode perlindungan yang mirip, tetapi melindungi saluran komunikasi di antara 2 protokol bagian bawah dalam tumpukan protocol, yaitu antara lapisan aplikasi dan lapisan jaringan dan transpor menurut standar protocol TCP/IP. Selain hal di atas, SSL dapat juga digunakan untuk transaksi-transaksi selain yang berjalan di web, tetapi tidak di rancang untuk menangani keputusan keamanan berbasis pada otentikasi pada peringkat aplikasi atau dokumen. Ini berarti harus menggunakan metode yang lain untuk mengendalikan akses ke berkas-berkas (file) yang berbeda [3].
2.2.14 Mengenal Web Server
Web server adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HHTP atau HTTPS dari klien yang di kenal dengan web browser dan mengirimkan kembali hasilnya dalam bentu halaman-halaman webyang umumnya berbentuk dokumen HTML. Web server yang terkenal diantaranya adalah Apache dan Microsoft Internet Information Service (ISS). Apache (Server HTTP Apache atau server Web/WWW/Apache) adalah web server yang dapat dijalankan di banyak system operasi (Unix, BSD, Linux, Microsoft Windows dan Novell Netware serta platform lainnya) yang berguna untuk melayani dan memfungsikan situs web. Protokol yang digunakan untuk melayani fasilitas web/www ini menggunakan HTTP.
Sedangkan IIS (Internet Information Service) adalah sebuah HTTP web server yang digunakan dalam sistem operasi server Windows, mulai dari Windows NT 4.0 Server, Windows 2000 Server atau Windows Server 2003. Layanan ini
(46)
merupakan layanan terintegrasi dalam Windows 2000 Server, Windows Server 2003 atau sebagai add-on dalam Windows NT 4.0. Layanan ini berfungsi sebagai pendukung protocol TCP/IP yang berjalan dalam lapisan aplikasi (application layer). IIS juga menjadi fondasi dari platform Internet dan Internet Microsoft, yang mencakup Microsoft Site Server, Mivrosoft Commercial Internet System dan produk-produk Microsoft BackOffice lainnya [7].
2.2.15 Search Engine Optimalization (SEO)
Untuk membuat web lebih cepat terdaftar (terindex) search engine, wajib melakukan SEO. Berikut adalah beberapa trik-trik SEO yang mendasar [4]:
1. Menggunakan meta yang lengkap dalam tag head dari sebuah halaman website.
2. Setiap halaman menggunakan meta tag yang berlainan. Jangan membuat perulangan keyword pada website.
3. Menggunakan alt image (deskripsi gambar) pada setiap gambar.
4. Tidak melakukan farming link. Di sini berarti, tidak menampung link-link yang sangat banyak dalam sebuah halamn website.
5. Tetap rajin untuk meng-update website. Meskipun kecil, ini akan sangat berarti dalam pencarian website oleh search engine.
2.2.16 Macromedia Dreamweaver 8
Salah satu HTML web authoring yang popular digunakan oleh para webmaster yaitu Macromedia Dreamweaver 8. Macromedia Dreamweaver
(47)
mempunyai tool-tool yang lengkap untuk membuat sebuah website secara sempurna. Fitur editing secara visual yang dimiliki oleh program ini memungkinkan untuk membuat web tanpa harus mengenal kode-kode yang ada didalamnya, sehingga proses pembuatan web akan semakin praktis dan cepat [4].
2.2.17 World Wide Web (WWW)
Salah satu layanan aplikasi di Internet ini adalah World Wide Web (WWW), pelayanan yang cukup baru dikembangkan di Internet dan menjadi layanan aplikasi yang paling popular digunakan pemakai jaringan Internet dan perkembangannya terus dilakukan sampai saat ini untuk menyempurnakan teknologi ini. WWW atau yang biasa disebut dengan Web saja, bekerja menggunakan teknologi yang disebut hypertext, yang kemudian dikembangkan menjadi suatu protocol aplikasi yang disebut HTTP (Hypertext Transfer Protocol). Dengan adanya fasilitas ini menjadikan Web sebagai salah satu aplikasi yang paling luwes untuk menjelajahi Internet. Dengan menggunakan WWW, peng-aksesan beragam sumber informasi di Internet misalnya gopher, WAIS, ftp, mail dan sebagainya, dapat dilakukan melalui suatu cara yang menggabungkan beberapa jenis representasi dan metode pengaksesan informasi dan menyajikannya dalamberagam bentuk informasi seperti text, grafik, suara, animasi, video, dan sebagainya [3].
(48)
2.2.18 Electronic Mail (E-Mail)
Aplikasi ini adalah yang paling banyak digunakan, dan termasuk salah satu dari aplikasi pertama di Internet. Dengan E-mail, dapat mengirim dan menerima surat, pesan, dokumen, secara elektronik dengan pemakai lain di Internet yang mempunyai alamat e-mail [8].
2.2.19 Pengenalan Website
Website adalah sebuah media presentasi online untuk sebuah perusahaan atau individu. Website juga dapat digunakan sebagai media penyimpanan informasi secara online, seperti detik.com, okezone.com, vivenews.com, dan lain-lain.
Berdasarkan kedinamisan, website dapat dibedakan menjadi dua, yaitu website statis dan website dinamis. Website statis bersifat un-real time. Maksudnya website statis tidak dapat di ubah secara simultan dalam sebuah web based administrator, sehingga hanya bias di ubah ketika langsung mengakses file pada server dan melakukan perubahan pada source codenya. Sedangkan website dinamis adalah sebuah website yang dilengkapi sebuah pengaturan (administrator) yang dapat berfungsi sebagai sarana untuk mengubah data website secara real time tanpa menyentih sorce code dalam server.
Untuk menciptakan website dinamis ini diperlukan bahasa pemograman yang nantinya akan berfungsi untuk memproses data yang dimasukkan, kemudian akan diteruskan ke database, selanjutnya akan ditampilkan pada halaman web.
(49)
Beberapa contoh bahasa pemograman web yang dapat digunakan diantaranya adalah PHP, ASP, JSP dan ColdFusion.
Di sini dalam pembuatan website memilih PHP, karena PHP dapat dikatakan paling mudah dimengertidibandingkan bahasa-bahasa pemograman web lainnya. Meskipun, dalam penggunannya PHP sangat menguntungkan, tetapi masih banyak juga kalangan yang menganggap PHP sulit, terutama kalangan pemula yang mengiginkan kepraktisan dalam meng-generate kode-kode PHP. Namun, sekarang hal inisudah dapat diwujudkan dengan adanya tools Recordset dari Macromedia Dreamweaver [3].
(50)
199 4.1 Implementasi Sistem
Tahapan implementasi merupakan tahap penciptaan perangkat lunak, tahap kelanjutan dari kegiatan perancangan sistem. Tahap ini merupakan tahap dimana sistem siap untuk dioperasikan yang terdiri dari penjelasan mengenai lingkungan implementasi dan implementasi program.
4.1.1 Lingkungan Implementasi
Untuk mendukung aplikasi yang akan diterapkan pada lingkungan implementasi, maka dalam hal ini harus memperhatikan perangkat keras dan perangkat lunak yang menunjang dalam pembangunan aplikasi e-commerce.
4.1.2 Implementasi Perangkat Keras
Spesifikasi perangkat keras minimal yang dibutuhkan untuk mengimplementasikan perangkat keras adalah sebagai berikut:
Tabel 4.1 Perangkat Keras yang Dibutuhkan
No. Perangkat keras Spesifikasi
1. Prosessor Intel Pentium 4 2.0 GHz
2. Monitor LCD 14”
3. VGA VGA Card On-Board 64 Mb
4. Memori DDR2 512Mb
5. Keyboard Keyboard
6. Mouse Mouse
(51)
8. Modem Wired
4.1.3 Implementasi Perangkat Lunak
Spesifikasi perangkat lunak yang dibutuhkan untuk mengimplementasikan perangkat lunak adalah sebagai berikut:
Tabel 4.2 Perangkat Lunak yang Dibutuhkan
No. Perangkat Lunak Keterangan
1. Sistem Operasi Windows XP
2. Web Browser Mozilla Firefox, Google Chrome
3. Code Editor Macromedia dreamweaver 8
4. Database MySql 5.0.51a
4.1.4 Implementasi Database
Pembuatan database dilakukan dengan menggunakan aplikasi DBMS MySQL. Implementasi database dalam bahasa SQL adalah sebagai berikut:
Tabel 4.3 Implementasi Database
No. Nama Tabel Perintah
1. admin CREATE TABLE IF NOT EXISTS `admin` (
`username` varchar(40) NOT NULL, `password` varchar(40) NOT NULL, `nama` varchar(50) NOT NULL, `email` varchar(100) NOT NULL, `level` enum('Admin','Operator') NOT NULL,
`aktif` enum('Non Aktif','Aktif') NOT NULL DEFAULT 'Aktif',
PRIMARY KEY (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
2. harga_paket CREATE TABLE IF NOT EXISTS `harga_paket` (
`id_kota` varchar(6) NOT NULL, `id_paket_pengiriman` mediumint(3) unsigned NOT NULL,
(52)
`harga` int(7) unsigned NOT NULL, `lama` tinyint(2) unsigned DEFAULT NULL,
PRIMARY KEY
(`id_kota`,`id_paket_pengiriman`), KEY `id_paket_pengiriman`
(`id_paket_pengiriman`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT `harga_paket_ibfk_2` FOREIGN KEY (`id_kota`) REFERENCES `kota` (`id`) ON UPDATE CASCADE, ADD CONSTRAINT
`harga_paket_ibfk_3` FOREIGN KEY (`id_paket_pengiriman`) REFERENCES `paket_pengiriman` (`id`) ON UPDATE CASCADE;
3. jasa_pengiriman CREATE TABLE IF NOT EXISTS `jasa_pengiriman` (
`id` tinyint(2) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(255) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=3 ; 4. kategori_ukuran CREATE TABLE IF NOT EXISTS
`kategori_ukuran` (
`id_produk_kategori` tinyint(2) unsigned NOT NULL,
`id_ukuran` mediumint(3) unsigned NOT NULL,
PRIMARY KEY
(`id_produk_kategori`,`id_ukuran`), KEY `id_ukuran` (`id_ukuran`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1; ADD CONSTRAINT
`kategori_ukuran_ibfk_3` FOREIGN KEY (`id_produk_kategori`) REFERENCES `produk_kategori` (`id`) ON UPDATE CASCADE,
(53)
ADD CONSTRAINT
`kategori_ukuran_ibfk_4` FOREIGN KEY (`id_ukuran`) REFERENCES `ukuran` (`id`) ON UPDATE CASCADE;
5. konfirmasi_pembayaran CREATE TABLE IF NOT EXISTS `konfirmasi_pembayaran` (
`id_pembelian` int(7) unsigned NOT NULL,
`cara_bayar` enum('Setor
Tunai','ATM','Internet Banking','SMS Banking','PayPal') NOT NULL,
`waktu_pembayaran` date NOT NULL, `waktu_konfirmasi` datetime NOT NULL,
`bank`
enum('BCA','Mandiri','PayPal') NOT NULL,
`kurs` int(8) unsigned DEFAULT NULL,
`amount_paid` int(9) NOT NULL, `digit` varchar(14) NOT NULL, `rek_pembayar` varchar(255) NOT NULL,
`status`
enum('OK','Waiting','Gagal','Tunda') NOT NULL DEFAULT 'Waiting',
`admin` varchar(40) DEFAULT NULL, `sisa` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id_pembelian`), KEY `id_pembelian`
(`id_pembelian`),
KEY `admin` (`admin`), KEY `kurs` (`kurs`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT
`konfirmasi_pembayaran_ibfk_3` FOREIGN KEY (`admin`) REFERENCES `admin` (`username`) ON DELETE SET NULL ON UPDATE CASCADE,
ADD CONSTRAINT
(54)
FOREIGN KEY (`id_pembelian`) REFERENCES `pembelian` (`id`) ON UPDATE CASCADE,
ADD CONSTRAINT
`konfirmasi_pembayaran_ibfk_5` FOREIGN KEY (`kurs`) REFERENCES `kurs` (`id`) ON UPDATE SET NULL;
6. kota CREATE TABLE IF NOT EXISTS `kota` (
`id` varchar(6) NOT NULL, `nama` varchar(50) NOT NULL,
`propinsi` tinyint(2) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `propinsi` (`propinsi`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1;
ADD CONSTRAINT `kota_ibfk_1` FOREIGN KEY (`propinsi`) REFERENCES
`propinsi` (`id`) ON UPDATE CASCADE;
7. kurs CREATE TABLE IF NOT EXISTS `kurs` (
`id` int(7) unsigned NOT NULL AUTO_INCREMENT,
`kurs` int(6) unsigned NOT NULL, `update` datetime NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=19 ;
8. member CREATE TABLE IF NOT EXISTS `member`
(
`email` varchar(40) NOT NULL, `password` varchar(40) NOT NULL, `nama` varchar(50) NOT NULL, `alamat` mediumtext,
`kota` varchar(10) DEFAULT NULL, `kodepos` varchar(5) DEFAULT NULL, `telepon` varchar(15) DEFAULT NULL,
`join_date` date DEFAULT NULL, `kode_aktivasi` varchar(10) NOT NULL,
`aktif` tinyint(1) unsigned NOT NULL DEFAULT '0',
(55)
NULL DEFAULT 'Tidak', PRIMARY KEY (`email`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
9. paket_pengiriman CREATE TABLE IF NOT EXISTS `paket_pengiriman` (
`id` mediumint(3) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(255) NOT NULL, `id_jasa_pengiriman` tinyint(2) unsigned NOT NULL,
PRIMARY KEY (`id`), KEY `id_jasa_pengiriman` (`id_jasa_pengiriman`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=7 ; ADD CONSTRAINT
`paket_pengiriman_ibfk_1` FOREIGN KEY (`id_jasa_pengiriman`)
REFERENCES `jasa_pengiriman` (`id`) ON UPDATE CASCADE;
10. pembelian CREATE TABLE IF NOT EXISTS `pembelian` (
`id` int(7) unsigned NOT NULL, `status` enum('Batal','Belum Bayar','Sudah
Konfirmasi','Tunda','Lunas','Barang telah Dikirim','Barang telah
Diterima','Retur','Selesai') NOT NULL DEFAULT 'Belum Bayar', `member` varchar(40) NOT NULL, `total_pembelian` int(8) unsigned DEFAULT NULL,
`biaya_pengiriman` int(8) unsigned DEFAULT NULL,
`paket_pengiriman` mediumint(3) unsigned NOT NULL,
`waktu_pemesanan` datetime NOT NULL,
`jatuh_tempo` datetime NOT NULL, `penerima` varchar(100) DEFAULT NULL,
(56)
`kodepos` int(10) unsigned DEFAULT NULL,
`telepon` varchar(20) DEFAULT NULL,
`alamat` mediumtext,
`resi_pengiriman` varchar(20) DEFAULT NULL,
`tanggal_kirim` date DEFAULT NULL, `waktu_terima` datetime DEFAULT NULL,
`admin` varchar(40) DEFAULT NULL, PRIMARY KEY (`id`),
KEY `paket_pengiriman` (`paket_pengiriman`), KEY `kota` (`kota`), KEY `member` (`member`), KEY `admin` (`admin`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT `pembelian_ibfk_5` FOREIGN KEY (`member`) REFERENCES `member` (`email`) ON UPDATE CASCADE,
ADD CONSTRAINT `pembelian_ibfk_6` FOREIGN KEY (`paket_pengiriman`) REFERENCES `paket_pengiriman` (`id`) ON UPDATE CASCADE,
ADD CONSTRAINT `pembelian_ibfk_7` FOREIGN KEY (`kota`) REFERENCES `kota` (`id`) ON UPDATE CASCADE, ADD CONSTRAINT `pembelian_ibfk_8` FOREIGN KEY (`admin`) REFERENCES `admin` (`username`) ON UPDATE CASCADE;
11. pembelian_detail CREATE TABLE IF NOT EXISTS `pembelian_detail` (
`id_produk` mediumint(4) unsigned NOT NULL,
`id_warna` mediumint(3) unsigned NOT NULL,
`id_produk_kategori` tinyint(2) unsigned NOT NULL DEFAULT '0', `id_ukuran` mediumint(3) unsigned
(57)
NOT NULL,
`id_pembelian` int(7) unsigned NOT NULL,
`harga` int(8) unsigned DEFAULT NULL,
`banyak` tinyint(3) unsigned NOT NULL,
`diskon` tinyint(2) unsigned DEFAULT '0',
PRIMARY KEY
(`id_produk`,`id_warna`,`id_produk_k ategori`,`id_ukuran`,`id_pembelian`) ,
KEY `id_warna` (`id_warna`), KEY `id_ukuran` (`id_ukuran`), KEY `id_pembelian`
(`id_pembelian`),
KEY `id_produk_kategori` (`id_produk_kategori`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT
`pembelian_detail_ibfk_10` FOREIGN KEY (`id_pembelian`) REFERENCES `pembelian` (`id`) ON UPDATE CASCADE,
ADD CONSTRAINT
`pembelian_detail_ibfk_6` FOREIGN KEY (`id_produk`) REFERENCES `produk_stok` (`id_produk`) ON UPDATE CASCADE,
ADD CONSTRAINT
`pembelian_detail_ibfk_7` FOREIGN KEY (`id_warna`) REFERENCES
`produk_stok` (`id_warna`) ON UPDATE CASCADE,
ADD CONSTRAINT
`pembelian_detail_ibfk_8` FOREIGN KEY (`id_produk_kategori`)
REFERENCES `produk_stok`
(`id_produk_kategori`) ON UPDATE CASCADE,
(58)
`pembelian_detail_ibfk_9` FOREIGN KEY (`id_ukuran`) REFERENCES `produk_stok` (`id_ukuran`) ON UPDATE CASCADE;
12. produk CREATE TABLE IF NOT EXISTS `produk`
(
`id` mediumint(4) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(100) NOT NULL, `kategori` tinyint(2) unsigned NOT NULL,
`merk` tinyint(2) unsigned NOT NULL,
`harga` int(8) NOT NULL,
`diskon` tinyint(2) unsigned NOT NULL,
`date_input` date NOT NULL, `admin` varchar(40) NOT NULL, `berat` int(6) unsigned NOT NULL DEFAULT '0',
`satuan` varchar(20) NOT NULL DEFAULT 'pcs',
`keterangan` mediumtext,
`status` enum('Aktif','Non Aktif') NOT NULL DEFAULT 'Aktif',
`hit` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `produk_kat` (`kategori`), KEY `kategori`
(`kategori`,`merk`,`admin`), KEY `admin` (`admin`), KEY `merk` (`merk`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=17 ; ADD CONSTRAINT `produk_ibfk_5` FOREIGN KEY (`kategori`) REFERENCES `produk_kategori` (`id`) ON UPDATE CASCADE,
ADD CONSTRAINT `produk_ibfk_6` FOREIGN KEY (`merk`) REFERENCES `produk_merk` (`id`) ON UPDATE CASCADE,
(59)
ADD CONSTRAINT `produk_ibfk_7` FOREIGN KEY (`admin`) REFERENCES `admin` (`username`) ON UPDATE CASCADE;
13. produk_gambar CREATE TABLE IF NOT EXISTS `produk_gambar` (
`id` varchar(10) NOT NULL,
`id_produk` mediumint(4) unsigned NOT NULL,
`id_warna` mediumint(3) unsigned NOT NULL,
`judul` varchar(255) DEFAULT NULL, PRIMARY KEY (`id`),
KEY `id_warna` (`id_warna`), KEY `id_produk` (`id_produk`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1; ADD CONSTRAINT
`produk_gambar_ibfk_5` FOREIGN KEY (`id_produk`) REFERENCES
`produk_warna` (`id_produk`) ON UPDATE CASCADE,
ADD CONSTRAINT
`produk_gambar_ibfk_6` FOREIGN KEY (`id_warna`) REFERENCES
`produk_warna` (`id_warna`) ON UPDATE CASCADE;
14. produk_kategori CREATE TABLE IF NOT EXISTS `produk_kategori` (
`id` tinyint(2) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(255) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=4 ; 15. produk_merk CREATE TABLE IF NOT EXISTS
`produk_merk` (
`id` tinyint(2) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(200) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
(60)
16. produk_rating CREATE TABLE IF NOT EXISTS `produk_rating` (
`id_produk` mediumint(4) unsigned NOT NULL,
`id_warna` mediumint(3) unsigned NOT NULL,
`id_member` varchar(40) NOT NULL, `rating` enum('1','2','3','4','5') DEFAULT NULL,
PRIMARY KEY
(`id_produk`,`id_warna`,`id_member`) ,
KEY `id_member` (`id_member`), KEY `id_warna` (`id_warna`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1; ADD CONSTRAINT
`produk_rating_ibfk_3` FOREIGN KEY (`id_member`) REFERENCES `member` (`email`),
ADD CONSTRAINT
`produk_rating_ibfk_1` FOREIGN KEY (`id_produk`) REFERENCES
`produk_warna` (`id_produk`), ADD CONSTRAINT
`produk_rating_ibfk_2` FOREIGN KEY (`id_warna`) REFERENCES
`produk_warna` (`id_warna`); 17. produk_stok CREATE TABLE IF NOT EXISTS
`produk_stok` (
`id_produk` mediumint(4) unsigned NOT NULL,
`id_warna` mediumint(3) unsigned NOT NULL,
`id_produk_kategori` tinyint(2) unsigned NOT NULL,
`id_ukuran` mediumint(3) unsigned NOT NULL,
`stok` mediumint(3) unsigned NOT NULL,
`ordered` mediumint(3) unsigned NOT NULL DEFAULT '0',
(61)
(`id_produk`,`id_warna`,`id_produk_k ategori`,`id_ukuran`),
KEY `id_ukuran` (`id_ukuran`), KEY `id_warna` (`id_warna`), KEY `id_produk_kategori` (`id_produk_kategori`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT `produk_stok_ibfk_10` FOREIGN KEY (`id_produk_kategori`) REFERENCES `kategori_ukuran`
(`id_produk_kategori`) ON UPDATE CASCADE,
ADD CONSTRAINT
`produk_stok_ibfk_11` FOREIGN KEY (`id_ukuran`) REFERENCES
`kategori_ukuran` (`id_ukuran`) ON UPDATE CASCADE,
ADD CONSTRAINT
`produk_stok_ibfk_8` FOREIGN KEY (`id_produk`) REFERENCES
`produk_warna` (`id_produk`) ON UPDATE CASCADE,
ADD CONSTRAINT
`produk_stok_ibfk_9` FOREIGN KEY (`id_warna`) REFERENCES
`produk_warna` (`id_warna`) ON UPDATE CASCADE;
18. produk_warna CREATE TABLE IF NOT EXISTS `produk_warna` (
`id_produk` mediumint(4) unsigned NOT NULL,
`id_warna` mediumint(3) unsigned NOT NULL,
PRIMARY KEY
(`id_produk`,`id_warna`), KEY `id_warna` (`id_warna`) ) ENGINE=InnoDB DEFAULT
CHARSET=latin1;
ADD CONSTRAINT `produk_warna_ibfk_3` FOREIGN KEY (`id_produk`) REFERENCES `produk` (`id`) ON UPDATE CASCADE,
(62)
ADD CONSTRAINT
`produk_warna_ibfk_4` FOREIGN KEY (`id_warna`) REFERENCES `warna` (`id`) ON UPDATE CASCADE;
19. propinsi CREATE TABLE IF NOT EXISTS
`propinsi` (
`id` tinyint(2) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(50) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=43 ;
20. retur CREATE TABLE IF NOT EXISTS `retur` (
`tanggal` date NOT NULL,
`waktu_proses` datetime DEFAULT NULL,
`status` enum('Waiting','Sudah Direspon','Retur telah
Dikirim','Retur telah
Diterima','Retur Ditolak') NOT NULL DEFAULT 'Waiting',
`resi_retur` varchar(20) DEFAULT NULL,
`tanggal_kirim` date DEFAULT NULL, `waktu_terima` datetime DEFAULT NULL,
`id_pembelian` int(7) unsigned NOT NULL,
`admin` varchar(40) DEFAULT NULL, `rekening` tinytext,
`uang_retur` int(10) unsigned DEFAULT '0',
PRIMARY KEY (`id_pembelian`), KEY `id_pembelian`
(`id_pembelian`),
KEY `admin` (`admin`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT `retur_ibfk_1` FOREIGN KEY (`id_pembelian`) REFERENCES `pembelian` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, ADD CONSTRAINT `retur_ibfk_2`
(63)
FOREIGN KEY (`admin`) REFERENCES `admin` (`username`) ON DELETE CASCADE ON UPDATE CASCADE; 21. retur_detail CREATE TABLE IF NOT EXISTS
`retur_detail` (
`id_produk` mediumint(4) unsigned NOT NULL,
`id_warna` mediumint(3) unsigned NOT NULL,
`id_produk_kategori` tinyint(2) unsigned NOT NULL DEFAULT '0', `id_ukuran` mediumint(3) unsigned NOT NULL,
`id_pembelian` int(7) unsigned NOT NULL,
`jumlah` int(3) unsigned NOT NULL, `acc` int(3) unsigned DEFAULT '0', `alasan` enum('Barang tidak sesuai dengan pesanan','Barang rusak atau cacat') NOT NULL,
`status`
enum('Waiting','Diterima','Ditolak') NOT NULL DEFAULT 'Waiting',
PRIMARY KEY
(`id_produk`,`id_warna`,`id_produk_k ategori`,`id_ukuran`,`id_pembelian`, `alasan`),
KEY `id_pembelian` (`id_pembelian`), KEY `id_warna`
(`id_warna`,`id_ukuran`),
KEY `id_ukuran` (`id_ukuran`), KEY `id_produk_kategori`
(`id_produk_kategori`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ADD CONSTRAINT
`retur_detail_ibfk_10` FOREIGN KEY (`id_warna`) REFERENCES
`pembelian_detail` (`id_warna`) ON UPDATE CASCADE,
ADD CONSTRAINT
(64)
(`id_produk_kategori`) REFERENCES `pembelian_detail`
(`id_produk_kategori`) ON UPDATE CASCADE,
ADD CONSTRAINT
`retur_detail_ibfk_12` FOREIGN KEY (`id_ukuran`) REFERENCES
`pembelian_detail` (`id_ukuran`) ON UPDATE CASCADE,
ADD CONSTRAINT
`retur_detail_ibfk_13` FOREIGN KEY (`id_pembelian`) REFERENCES
`pembelian` (`id`) ON UPDATE CASCADE,
ADD CONSTRAINT
`retur_detail_ibfk_9` FOREIGN KEY (`id_produk`) REFERENCES
`pembelian_detail` (`id_produk`) ON UPDATE CASCADE;
22. ukuran CREATE TABLE IF NOT EXISTS `ukuran`
(
`id` mediumint(3) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(255) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=16 ;
23. warna CREATE TABLE IF NOT EXISTS `warna` (
`id` mediumint(3) unsigned NOT NULL AUTO_INCREMENT,
`nama` varchar(255) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT
CHARSET=latin1 AUTO_INCREMENT=27 ;
4.1.5 Implementasi Antarmuka
Implementasi antarmuka dilakukan dengan setiap tampilan program yang dibangun dan pengkodeannya dalam bentuk file program. Berikut ini adalah implementasi antarmuka untuk pengunjung, member, operator, dan admin.
(65)
Tabel 4.4 Implementasi Antarmuka Pengunjung
Menu Deskripsi Nama File
Depan Digunakan sebagai halaman depan dan terdapat beberapa menu diantaranya menu produk, cari, daftar, login dan keranjang
index.php
Semua produk Halaman yang digunakan untuk menampilkan semua kategori produk yang tersedia
produk.php
Produk Halaman yang digunakan untuk menampilkan data produk yang tersedia
produk_kategori.php
Produk detail Halaman yang digunakan untuk menampilkan data detail produk yang dipilih
produk_detail.php
Produk terbaru Untuk menampilkan produk terbaru
spesial_terbaru.php Produk diskon Untuk menampilkan produk
diskon
spesial_diskon.php Produk paling laku Untuk menampilkan produk paling
laku
spesial_terlaku.php
Pencarian Untuk mencari produk search.php
Lupa password Halaman yang digunakan untuk mengirimkan password baru
login_problem.php Daftar Halaman yang digunakan untuk
mendaftarkan diri menjadi member
registrasi.php Tentang cara belanja Halaman yang digunakan untuk
menampilkan tentang cara belanja
artikel.php Tentang alamat
pengiriman
Halaman yang digunakan untuk menampilkan tentang alamat pengiriman
artikel.php
Tentang biaya pengiriman
Halaman yang digunakan untuk menampilkan tentang biaya pengiriman
artikel.php
Tentang tracking Halaman yang digunakan untuk menampilkan tentang tracking
artikel.php Tentang pembayaran Halaman yang digunakan untuk
menampilkan tentang pembayaran
artikel.php Tentang stok Halaman yang digunakan untuk artikel.php
(66)
menampilkan tentang stok
Tentang kami Halaman yang digunakan untuk menampilkan tentang tami
artikel_detail.php Kontak Halaman yang digunakan untuk
menampilkan kontak
artikel_detail.php
Tabel 4.5 Implementasi Antarmuka Member
Menu Deskripsi Nama File
Depan Digunakan sebagai halaman depan dan terdapat beberapa menu diantaranya menu produk, cari, daftar, login dan keranjang
index.php
Semua Produk Halaman yang digunakan untuk menampilkan semua kategori produk yang tersedia
produk.php
Produk Halaman yang digunakan untuk menampilkan data produk yang tersedia
produk_kategori.php
Produk Detail Halaman yang digunakan untuk menampilkan data detail produk yang dipilih
produk_detail.php
Produk Terbaru Untuk menampilkan produk terbaru
spesial_terbaru.php Produk Diskon Untuk menampilkan produk
diskon
spesial_diskon.php Produk Paling Laku Untuk menampilkan produk
paling laku
spesial_terlaku.php Pencarian Untuk mencari produk search.php
Masuk Digunakan sebagai halaman login member
index.php Tentang cara belanja Halaman yang digunakan untuk
menampilkan tentang cara belanja
artikel.php
Tentang alamat pengiriman
Halaman yang digunakan untuk menampilkan tentang alamat pengiriman
artikel.php
Tentang biaya pengiriman
Halaman yang digunakan untuk menampilkan tentang biaya
(1)
253
DAFTAR PUSTAKA
[1] Sarwono jonathan, 2006, Metode Penelitian Kuantitatif dan Kualitatif, Graha Ilmu, Yogyakarta.
[2] Sommerville Ian, 2003, Software Enginering (Rekayasa Perangkat Lunak) edisi 6 jilid 1, Erlangga, Jakarta.
[3] Adi Nugroho. (2006), E-Commerce Memahami Perdagangan Modern di Dunia Maya, Informatika Bandung, Bandung.
[4] Komang Wiswakarma. (2009), Membuat Katalog Online dengan PHP dan CSS, Lokomedia, Yogyakarta.
[5] Bunafit Nugroho. (2008), Membuat Sistem Informasi Penjualan Berbasis WEB dengan PHP dan MySQL, Gava Media, Yogyakarta.
[6] Radiant Victor Imbar, Bernard R. Suteja. (2006), Pemograman Web Commerce dengan Oracle dan ASP, Informatika Bandung, Bandung. [7] Muhammad Sadeli. (2011), Membuat Toko Online dengan PHP untuk
Orang Awam, Maxikom, Palembang.
[8] Budhi Irawan. (2005), Jaringan Komputer, Graha Ilmu, Yogyakarta. [9] Riyanto. (2011), Sistem Informasi Penjualan dengan PHP dan MySQL,
Gava Media, Yogyakarta.
[10] Lukmanul Hakim. (2008), Membongkar Trik Rahasia Para Master PHP, Lokomedia, Yogyakarta.
[11] Lukmanul Hakim. (2009), Trik Rahasia Master PHP Terbongkar Lagi, Lokomedia, Yogyakarta.
(2)
254
[12] Rosa A.S, M. Shalahuddin. (2011), Modul Pembelajaran Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek), Modula, Bandung.
(3)
iii
KATA PENGANTAR
Assalammu’alaikum Wr.Wb.
Segala puji dan syukur penulis panjatkan kepada ALLAH SWT yang atas semua ijin-Nya hingga terselesaikannya skripsi ini yang berjudul ”PEMBANGUNAN APLIKASI E-COMMERCE PADA TOKO WENK’S SPORT”. Tak Lupa Shalawat serta Salam penulis panjatkan pada Nabi dan Rasul Muhammad SAW.
Adapun tujuan dari penyusunan skripsi ini adalah untuk memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di Program Studi Teknik Informatika, Universitas Komputer Indonesia.
Selama proses penyelesaian laporan ini, penulis tidak akan dapat menyelesaikannya tanpa bantuan dan dorongan dari berbagai pihak. Oleh karena itu ijinkanlah penulis untuk menyampaikan ucapan terima kasih yang mendalam serta penghargaan yang tidak terhingga kepada:
1. Allah SWT, yang telah memberikan rahmat dan hidayah-Nya kepada penulis sehingga dapat menyelesaikan skripsi ini dengan baik.
2. Nabi Muhammad SAW yang telah menyampaikan wahyu Allah.
3. Yth. Bapak Dr. Ir. Eddy Suryanto Soegoto, M.Sc., Selaku Rektor Universitas Komputer Indonesia.
4. Yth. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc., selaku Dekan Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.
(4)
iv
5. Yth. Ibu Mira Kania Sabariah, S.T., M.T., Selaku Ketua Jurusan Teknik Informatika Universitas Komputer Indonesia.
6. Yth. Bapak Taryana Suryana, S.T., M.Kom., selaku dosen wali kelas IF-11 angkatan 2007.
7. Yth. Ibu Kania Evita Dewi, S.Pd., M.Si. Selaku dosen pembimbing yang telah memberikan pengarahan dan masukan-masukan yang berharga kepada penulis dalam mengerjakan laporan tugas akhir.
8. Yth. Ibu Dian Dharmayanti, S.T. selaku dosen penguji 1 yang telah memberikan banyak masukan, pengarahan yang berarti bagi penulis.
9. Yth. Ibu Inne Novitasari, S.Si., M.Si., Selaku dosen penguji 3 yang telah memberi banyak masukkan yang berarti bagi penulis.
10. Seluruh dosen pengajar dan staff tata usaha.
11. Bapak Irwan Gunawan selaku pemilik Toko Wenk’s Sport beserta
pegawainya.
Selain itu tidak lupa juga penulis ucapkan terima kasih yang setulus-tulusnya dan penghargaan yang setinggi-tingginya kepada:
1. Kedua orang tua, Bapak Engkus Koswara (bapak sekaligus sosok yang paling penulis kagumi), Ibu Eni Sumarni (mamah terbaik dan terhebat di dunia), yang selalu senantiasa mendoakan penulis sepanjang waktu, dan memberikan semangat yang tidak ada hentinya serta memberikan dorongan baik moril maupun materil.
(5)
v
2. Keluarga besar di Garut Ibu Enok, Bapak Sukandi, Mang Ujang, Bi Ida, Bi Ima yang selalu senantiasa mendoakan penulis sepanjang waktu dan memberikan dorongan serta dukungan baik moril maupun materil.
3. Keluarga Besar di Bandung Ibu Suratman, Bi eulis yang selalu senantiasa mendoakan penulis sepanjang waktu dan memberikan dorongan serta dukungan baik moril maupun materil.
4. Adik-adikku Devi Nurgaha, Maya Ayu Lestari, Alif Vidya Kusumah yang selalu memberikan warna baru dalam hidup serta menjadi semangat bagi penulis untuk menjadi teladan bagi mereka.
5. Norman Gusrial S.Kom yang selalu memberikan pengarahan dan masukkan-masukkan yang berarti bagi penulis.
6. Yilya Eka Viani yang selalu menemani, memberikan semangat, memberikan inspirasi, dan merubah semuanya menjadi lebih indah.
7. Teman-temanku Dicky Jaya Umbara, Adnan Mursyidin, Egi M Mugni, Rio Artha, Rinaldi Rismansyah, Irfan Kushardiansyah, Zaid Arham, Andrianto, Mahardika, Lukman, Adi, Irwan Setiawan, Rahmi, Sarah, dan semua anak kelas IF-11 angkatan 2007, terimakasih untuk segala kebersemaan selama ini. 8. Semua pihak yang telah membantu dalam menyelesaikan skripsi ini yang
tidak bisa disebutkan satu persatu oleh penulis.
Demikian banyaknya bantuan dari berbagai pihak kepada penulis, tidak menutup kemungkinan bahwa hasil dari laporan ini masih banyak kekurangan dan masih jauh dari kesempurnaan. Untuk itu penulis akan selalu menerima segala masukkan yang ditujukan untuk menyempurnakan skripsi ini. Akhir kata, penulis
(6)
vi
berharap semoga skripsi ini dapat bermanfaat bagi penulis pada khususnya dan pembaca pada umumnya.
Wassalamu’alaikum Wr. Wb.
Bandung, Maret 2012