• Tidak ada hasil yang ditemukan

Perangkat Lunak yang digunakan

Implementasi Dan Pengujian

IV.1.2 Perangkat Lunak yang digunakan

Spesifikasi perangkat lunak yang digunakan dalam membangun aplikasi

E-Commerce berbasis web di Toko Kogasquare pada gambar IV.2 :

Tabel IV.2 Perangkat Lunak yang digunakan

No Perangkat Lunak Keterangan

1 Sistem Operasi Windows 7 Ultimate

2 Bahasa Pemrograman PHP

3 DBMS MySQL

4 Web browser Mozilla firefox 3.6.23

5 Code editor Macromedia Dreamweaver CS3

6 DFD modeler Microsoft Visio 2007

IV.2 Implementasi database

Pembuatan database dilakukan dengan menggunakan aplikasi DBMS

MySQL. Implementasi database dalam bahasa SQL adalah sebagai berikut:

1. Tabel level_user

CREATE TABLE `tbl_level_user` (

`id_level_user` tinyint AUTO_INCREMENT NOT NULL,

`level_user` varchar(255),

/* Keys */

PRIMARY KEY (`id_level_user`)

) ENGINE = InnoDB; 2. Tabel user

CREATE TABLE `tbl_user` (

`id_user` int AUTO_INCREMENT NOT NULL, `id_level_user` tinyint, `id_kota` int, `user_email` varchar(255), `user_password` varchar(100), `nama_depan` varchar(100), `nama_belakang` varchar(100), `jenis_kelamin` varchar(20), `alamat` tinytext, `phone` varchar(20), `kode_pos` int(6),

`insert_date` datetime, `last_login` datetime, `id_forgot_password` int,

`answer_forgot_password` varchar(100), `kode_aktifasi` varchar(50),

`is_active` tinyint DEFAULT '1', /* Keys */

PRIMARY KEY (`id_user`) ) ENGINE = InnoDB;

CREATE INDEX `fk_forgot_password` ON `tbl_user`

(`id_forgot_password`); CREATE INDEX `fk_level_user` ON `tbl_user`

(`id_level_user`);

CREATE INDEX `fk_user_kota` ON `tbl_user`

(`id_kota`); 3. Tabel kategori

CREATE TABLE `tbl_kategori` (

`id_kategori` int AUTO_INCREMENT NOT NULL, `nama_kategori` varchar(255),

`title` varchar(100),

`is_active` tinyint DEFAULT '1', /* Keys */

PRIMARY KEY (`id_kategori`) ) ENGINE = InnoDB;

4. Tabel jenis_produk

CREATE TABLE `tbl_jenis_produk` (

`id_jenis_produk` int AUTO_INCREMENT NOT NULL, `id_kategori` int,

`jenis_produk` varchar(100), /* Keys */

PRIMARY KEY (`id_jenis_produk`) ) ENGINE = InnoDB;

CREATE INDEX `fk_jenis_produk` ON `tbl_jenis_produk`

(`id_kategori`); 5. Tabel sub_jenis_produk

CREATE TABLE `tbl_sub_jenis_produk` (

`id_sub_jenis_produk` int AUTO_INCREMENT NOT NULL, `id_jenis_produk` int,

`jenis` varchar(20), /* Keys */

) ENGINE = InnoDB;

CREATE INDEX `fk_jenis_produk` ON `tbl_sub_jenis_produk` (`id_jenis_produk`); 6. Tabel jenis_buatan

CREATE TABLE `tbl_ jenis_buatan ` (

`id_ jenis_buatan ` int AUTO_INCREMENT NOT NULL, `desc_ jenis_buatan ` varchar(100),

/* Keys */

PRIMARY KEY (`id_ jenis_buatan `) ) ENGINE = InnoDB;

7. Tabel ukuran

CREATE TABLE `tbl_ukuran` (

`id_ukuran` int AUTO_INCREMENT NOT NULL, `ukuran` varchar(20),

`ket` varchar(50), /* Keys */

PRIMARY KEY (`id_ukuran`) ) ENGINE = InnoDB;

8. Tabel produk

CREATE TABLE `tbl_ produk` (

`id_ produk` int AUTO_INCREMENT NOT NULL, `id_sub_jenis_produk` int,

`id_ jenis_buatan ` int, `id_ukuran` int,

`set_special` tinyint DEFAULT '0', `desc_warna` varchar(255),

`desc_ukuran` varchar(255), `stok` mediumint, `berat_produk` float,

`berat` int DEFAULT '1', `diskon` float DEFAULT '0', `harga` float,

`desc_info` tinytext,

`set_new_produk` tinyint DEFAULT '0', `url_img_produk` varchar(255),

`url_img_detail` varchar(255), `insert_date` datetime, `li_class` varchar(50), `link_url` varchar(255),

`is_active` tinyint DEFAULT '1', /* Keys */

PRIMARY KEY (`id_ produk`) ) ENGINE = InnoDB;

CREATE INDEX `fk_produk_jenisbuatan` ON `tbl_produk`

CREATE INDEX `fk_produk_subjenisproduk` ON `tbl_produk`

(`id_sub_jenis_produk`); 9. Tabel transaksi

CREATE TABLE `tbl_transaksi` (

`id_transaksi` int AUTO_INCREMENT NOT NULL, `id_user` int,

`id_status_pembayaran` tinyint DEFAULT '2', `id_status_shipping` int, `tgl_transaksi` datetime, `total_transaksi` float, `id_media_pembayaran` int, `rek_bayar` varchar(20), `atas_nama_bayar` varchar(100), /* Keys */

PRIMARY KEY (`id_transaksi`) ) ENGINE = InnoDB;

CREATE INDEX `fk_status_pengiriman` ON `tbl_transaksi`

(`id_status_shipping`);

CREATE INDEX `fk_transaksi_media_pembayaran` ON `tbl_transaksi`

(`id_media_pembayaran`);

CREATE INDEX `fk_transaksi_status_pembayaran` ON `tbl_transaksi`

(`id_status_pembayaran`); CREATE INDEX `fk_transaksi_user` ON `tbl_transaksi`

(`id_user`); 10. Tabel detail_transaksi

CREATE TABLE `tbl_detail_transaksi` (

`id_detail_transaksi` int AUTO_INCREMENT NOT NULL, `id_transaksi` int, `id_user` int, `id_produk` int, `id_media_pembayaran` int, `qty` int, `sub_total` float, /* Keys */

PRIMARY KEY (`id_detail_transaksi`) ) ENGINE = InnoDB;

CREATE INDEX `fk_detail_transaksi_media_pembayaran` ON `tbl_detail_transaksi`

CREATE INDEX `fk_produk_detail` ON `tbl_detail_transaksi` (`id_produk`);

CREATE INDEX `fk_transksi_detail` ON `tbl_detail_transaksi`

(`id_transaksi`); 11. Tabel shipping

CREATE TABLE `tbl_shipping` (

`id_shipping` int AUTO_INCREMENT NOT NULL, `id_kota` int, `id_layanan_cargo` int, `id_transaksi` int, `id_media_pembayaran` int, `id_status_shipping` int, `id_harga_cargo` int, `shipping_date` date, `shipping_name` varchar(100), `shipping_address1` tinytext, `shipping_pos_code` mediumint(6), `shipping_phone` varchar(20), `shipping_price` float, `shipping_sub_total` float, /* Keys */

PRIMARY KEY (`id_shipping`) ) ENGINE = InnoDB;

CREATE INDEX `fk_harga_cargo` ON `tbl_shipping`

(`id_harga_cargo`);

CREATE INDEX `fk_shipping_cargo` ON `tbl_shipping`

(`id_layanan_cargo`);

CREATE INDEX `fk_shipping_kota` ON `tbl_shipping`

(`id_kota`);

CREATE INDEX `fk_shipping_media_pembayaran` ON `tbl_shipping`

(`id_media_pembayaran`);

CREATE INDEX `fk_shipping_transaksi` ON `tbl_shipping`

(`id_transaksi`);

CREATE INDEX `fk_status_shipping` ON `tbl_shipping`

12. Tabel shipping detail

CREATE TABLE `tbl_shipping_detail` (

`id_shipping_detail` int AUTO_INCREMENT NOT NULL, `id_detail_transaksi` int,

`id_shipping` int, /* Keys */

PRIMARY KEY (`id_shipping_detail`) ) ENGINE = InnoDB;

CREATE INDEX `fk_shipping_detail_detail_transaksi` ON `tbl_shipping_detail`

(`id_detail_transaksi`);

CREATE INDEX `fk_shipping_detail_shipping` ON `tbl_shipping_detail`

(`id_shipping`); 13. Tabel status shipping

CREATE TABLE `t_status_shipping` (

`id_status_shipping` int AUTO_INCREMENT NOT NULL, `status_shipping` varchar(100),

/* Keys */

PRIMARY KEY (`id_status_shipping`) ) ENGINE = InnoDB;

14. Tabel cargo

CREATE TABLE `tbl_cargo` (

`id_cargo` tinyint AUTO_INCREMENT NOT NULL, `nama_cargo` varchar(100),

/* Keys */

PRIMARY KEY (`id_cargo`) ) ENGINE = InnoDB;

15. Tabel_layanan_cargo

CREATE TABLE `tbl_layanan_cargo` (

`id_layanan_cargo` int AUTO_INCREMENT NOT NULL, `id_cargo` tinyint,

`nama_layanan` varchar(100) CHARACTER SET `utf8` COLLATE `utf8_general_ci`,

`harga_kirim_per_kg` float, /* Keys */

PRIMARY KEY (`id_layanan_cargo`) ) ENGINE = InnoDB;

CREATE INDEX `fk_layanan_cargo` ON `tbl_layanan_cargo`

16. Harga Cargo

CREATE TABLE `tbl_harga_cargo` (

`id_harga_cargo` int AUTO_INCREMENT NOT NULL, `id_layanan_cargo` int, `id_kota` int, `harga_cargo` float, `lama_pengiriman` varchar(20), /* Keys */

PRIMARY KEY (`id_harga_cargo`) ) ENGINE = InnoDB;

CREATE INDEX `fk_harga_kota` ON `tbl_harga_cargo`

(`id_kota`);

CREATE INDEX `fk_harga_layanan_cargo` ON `tbl_harga_cargo`

(`id_layanan_cargo`); 17. Tabel Media pembayaran

CREATE TABLE `tbl_media_pembayaran` (

`id_media_pembayaran` int AUTO_INCREMENT NOT NULL, `nama_bank` varchar(20),

`no_rekening` varchar(30), `atas_nama` varchar(50), `path_img` varchar(255), `cab_bank` varchar(255),

`is_active` tinyint DEFAULT '1', /* Keys */

PRIMARY KEY (`id_media_pembayaran`) ) ENGINE = InnoDB;

18. Tabel status pembayaran

CREATE TABLE `tbl_status_pembayaran` (

`id_status_pembayaran` tinyint AUTO_INCREMENT NOT NULL, `status_pembayaran` varchar(50),

/* Keys */

PRIMARY KEY (`id_status_pembayaran`) ) ENGINE = InnoDB;

19. Tabel kota

CREATE TABLE `tbl_kota` (

`id_kota` int AUTO_INCREMENT NOT NULL, `id_provinsi` int,

`nama_kota` varchar(100), `kab_kota` varchar(100), /* Keys */

PRIMARY KEY (`id_kota`) ) ENGINE = InnoDB;

CREATE INDEX `fk_kota_provinsi` ON `tbl_kota`

(`id_provinsi`); 20. Tabel provinsi

CREATE TABLE `tbl_provinsi` (

`id_provinsi` int AUTO_INCREMENT NOT NULL, `nama_provinsi` varchar(100),

/* Keys */

PRIMARY KEY (`id_provinsi`) ) ENGINE = InnoDB;

21. Tabel news

CREATE TABLE `tbl_news` (

`news_id` int AUTO_INCREMENT NOT NULL, `id_user` int, `news_title` varchar(255), `news_date` datetime, `news_content` text, `is_active` tinyint, /* Keys */

PRIMARY KEY (`news_id`), /* Foreign keys */

CONSTRAINT `fk_news_user` FOREIGN KEY (`id_user`)

REFERENCES `tbl_user`(`id_user`) ON DELETE RESTRICT

ON UPDATE RESTRICT ) ENGINE = InnoDB;

CREATE INDEX `fk_news_user` ON `tbl_news`

(`id_user`); 22. Tabel testimonial

CREATE TABLE `tbl_testimonial` (

`id_guestbook` int AUTO_INCREMENT NOT NULL, `id_user` int,

`insert_date` datetime, `subject` varchar(255), `message` tinytext,

`is_active` tinyint DEFAULT '0', /* Keys */

PRIMARY KEY (`id_guestbook`) ) ENGINE = InnoDB;

CREATE INDEX `fk_guestbook_user` ON `tbl_testimonial`

(`id_user`);

23. Tabel forgot password

CREATE TABLE `tbl_forgot_password` (

`id_forgot_password` int AUTO_INCREMENT NOT NULL, `question` varchar(255),

/* Keys */

PRIMARY KEY (`id_forgot_password`) ) ENGINE = InnoDB;

24. Tabel Shop Chart

CREATE TABLE `tbl_shop_chart` (

`order_id` int AUTO_INCREMENT NOT NULL, `id_produk` int,

`session_id` varchar(255), `qty` int,

`order_date` datetime, /* Keys */

PRIMARY KEY (`order_id`) ) ENGINE = InnoDB;

CREATE INDEX `fk_shop_chart_produk_kategori` ON `tbl_shop_chart`

(`id_produk`); Tabel Retur

CREATE TABLE `tbl_retur` (

`id_retur` int(11) NOT NULL AUTO_INCREMENT, `id_transaksi` int(11) DEFAULT NULL,

`no_resi` char(15) DEFAULT NULL, `tgl_retur` date DEFAULT NULL, `tgl_update` datetime DEFAULT NULL,

`status` enum('Pengajuan Retur','Retur Sedang

Diproses','Retur Dibatalkan','Retur Dikonfirmasi','Telah

Diterima Toko','Sedang Dikirim','Telah Diterima Customer') DEFAULT NULL,

`global_status` enum('Belum

Selesai','Dibatalkan','Selesai') DEFAULT NULL COMMENT

'0=>Belum Selesai, 1=>Telah Selesai', PRIMARY KEY (`id_retur`),

KEY `FK_tbl_retur_tbl_transaksi` (`id_transaksi`),

CONSTRAINT `FK_tbl_retur_tbl_transaksi` FOREIGN KEY

(`id_transaksi`) REFERENCES `tbl_transaksi` (`id_transaksi`) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1; Tabel Detail Retur

`id_detail_retur` int(11) NOT NULL AUTO_INCREMENT, `id_retur` int(11) DEFAULT NULL,

`id_detail_transaksi` int(11) DEFAULT NULL, `jlh_retur` int(11) DEFAULT NULL,

`alasan_retur` enum('Barang Rusak') DEFAULT NULL,

`alasan_ditolak` enum('Tidak Valid','Stok Barang Tidak Ada') DEFAULT NULL,

`status`

enum('Diproses','Diterima','Ditolak','Dibatalkan') DEFAULT

'Diproses',

`tgl_update` datetime DEFAULT NULL, PRIMARY KEY (`id_detail_retur`),

KEY `FK_tbl_detail_retur_tbl_retur` (`id_retur`),

KEY `FK_tbl_detail_retur_tbl_detail_transaksi`

(`id_detail_transaksi`),

CONSTRAINT `FK_tbl_detail_retur_tbl_detail_transaksi`

FOREIGN KEY (`id_detail_transaksi`) REFERENCES

`tbl_detail_transaksi` (`id_detail_transaksi`) ON DELETE CASCADE ON UPDATE CASCADE,

CONSTRAINT `FK_tbl_detail_retur_tbl_retur` FOREIGN KEY (`id_retur`) REFERENCES `tbl_retur` (`id_retur`) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;

IV.3 Implementasi Antar Muka

Implementasi antar muka dilakukan dengan setiap tampilan program yang

dibangun dan pengkodeannya dalam bentuk file program. Berikut ini adalah

implementasi antarmuka untuk pengguna. Adapun untuk tampilan implementasi

aplikasi E-commerce berbasis Web di Toko Kogasquare akan dilampirkan pada

halaman lampiran.

Tabel IV.3 Implementasi antar muka

Menu Deskripsi Nama File

Login admin Digunakan sebagai halaman

login admin Index.php

Ganti password admin Digunakan jika admin ingin

admin Digunakan untuk melihat

data admin admin. php

kota

Digunakan untuk melihat, menambah, dan merubah data kota

kota. php

provinsi

Digunakan untuk melihat, menambah, dan merubah data provinsi

provinsi. php

kategori

Digunakan untuk melihat, menambah, dan merubah data kategori

kategori. php

Jenis_buatan

Digunakan untuk melihat, menambah, dan merubah data jenis_buatan

Jenis_buatan. php

Jenis produk

Digunakan untuk melihat, menambah, dan merubah

data jenis produk jenis_produk. php

Sub jenis produk

Digunakan untuk melihat, menambah, dan merubah data sub jenis produk

Sub_jenis_produk. php

produk

Digunakan untuk melihat, menambah, dan merubah data produk

produk.php

Testimonial

Digunakan untuk memberikan saran, kritik dan masukan ataupun memberikan komentar.

Shipping Digunakan untuk melihat data harga pengiriman.

Lihat transaksi

Digunakan untuk melihat data transaksi, data detail transaksi, dan mengubah status transaksi.

Lihat_transaksi.php

Retur

Digunakan untuk melihat data retur, dan mengubah status retur

Retur.php

Detail retur

Digunakan untuk melihat detail ratur yang ada di transaksi

Registrasi member Digunakan untuk melakukan

pendaftaran member Register_user.php

Login member Digunakan sebagai halaman

login member Login_user.php

Ganti password member

Digunakan jika member

ingin merubah password Ganti_password.php

Ubah Profil Digunakan untuk mengubah

profil member Edit_profile. Php

Produk Digunakan untuk melihat

seluruh data barang yang ada Produk.php

Detail produk

Digunakan untuk melihat seluruh data barang yang ada secara detail.

Details_produk.php

Keranjang belanja

Digunakan untuk melihat, merubah, menghapus detail transaksi yang akan dilakukan

cart.php

Lihat transaksi

Digunakan untuk melihat

history transaksi yang pernah

dilakukan

Lihat_transaksi.php

Logout

Digunakan User (admin, super administrator,

member)Untuk dapat keluar

dari aplikasi

Logout.php

IV.4 Pengujian Perangkat Lunak

Pengujian sistem merupakan hal terpenting yang bertujuan untuk

menemukan kesalahan – kesalahan atau kekurangan – kekurangan pada perangkat lunak yang diuji. Pengujian bermaksud untuk mengetahui perangkat lunak yang

dibuat sudah memenuhi kriteria yang sesuai dengan tujuan perancangan perangkat

Pengujian perangkat lunak ini menggunakan pengujian black box.

Pengujian black box berfokus pada persyaratan fungsional perangkat lunak.

IV.5 Pengujian Alpha

Pengujian alpha dilakukan dengan menggunakan metode black box. Untuk

pengujian alpha ini yaitu pada pengujian sebagai pengguna.

Dokumen terkait