• Tidak ada hasil yang ditemukan

BAB IV RANCANGAN SISTEM DAN PROGRAM USULAN

N/A
N/A
Protected

Academic year: 2024

Membagikan "BAB IV RANCANGAN SISTEM DAN PROGRAM USULAN"

Copied!
48
0
0

Teks penuh

(1)

35 4.1. Analisa Kebutuhan Software

Berdasarkan analisis pada sistem berjalan tersebut, dapat dilihat pentingnya untuk adanya suatu sistem yang diperlukan untuk memproses transaksi agar lebih mudah, yaitu kebutuhan dalam menggunakan aplikasi yang dapat memudahkan perusahaan untuk memberikan informasi kepada pelanggan agar jauh lebih cepat dan juga pemesanan ataupun penawaran dapat di lakukan secara online.

1. Tahapan Analisis

Sistem Informasi pada PT Hasta Prima Industri adalah sistem berbasis web online sebagai sarana yang memudahkan dalam proses transaksi, membantu memberikan informasi tentang produk ataupun promo yang sedang berlangsung.

Dengan requirement sebagai berikut:

a. Pengunjung

A1. Pengunjung dapat melihat profil perusahaan.

A2. Pengunjung dapat melihat tampilan produk yang akan di pesan berupa harga, spesifikasi, gambar dan deskripsi mengenai produk tersebut.

A.3. Pengunjung harus mengisi data diri untuk melakukan pemesanan barang dan mengetahui total harga yang harus dibayar ditambah ongkos kirim agar dapat dilanjutkan pada tahap pembayaran.

A4. Pengunjung dapat melihat petunjuk cara melakukan pemesanan barang.

(2)

pemesanan atau pengiriman barang.

b. Admin

B1. Admin dapat login dengan akun yang sudah didaftarkan B2. Admin dapat mengganti password

B3. Admin dapat mengelola manajemen modul B4. Admin dapat mengelola data kategori produk B5. admin dapat mengelola data produk

B6. Admin dapat mengelola data warna produk B7. Admin dapat mengelola data order atau pesanan B8. Admin dapat mengelola data ongkoskirim B9. Admin dapat mengelola review produk B10. Admin dapat mengelola kontak perusahaan 2. Use Case Diagram

Use casediagram merupakan gambaran interaksi atau prilaku actor-actor

yang terlibat terhadap PT Hasta Prima Industri. Berikut gambaran use case diagram

yang terdapat pada PT Hasta Prima Industri.

(3)

Gambar IV.1 Use Case Diagram untuk Pengunjung Tabel IV.1

Deskripsi Use Case Diagram untuk melihat Profil Perusahaan Use Case Name Halaman melihat Profil Perusahaan

ID A1

Goal Actor dapat melihat profil perusahaan Primary Actors Pengunjung

Pre-conditions Actor sudah masuk ke halaman utama UserMain Flow/Basic

Path

1. Actor mengunjungi website PT Hasta Prima Industri

2. Akan Tampil sejarah dan visi misi PT Hasta Prima Industri

Post-conditions Sistem dapat membuka halaman utama dan menampilkan profil perusahaan

Pengunj ung

Melihat Profil Perusahaan

Memesan Produk

Melihat Produk Mengisi Data Diri dan

Alamat Pengirirman

Melihat Cara Beli

Menghubungi Perusahaan

«extend» «include»

(4)

Deskripsi Use Case Diagram untuk Melihat Produk Use Case Name Halaman Pembelian Barang

ID A2

Goal Actor dapat melihat produk Primary Actors Pengunjung

Pre-conditions Actor sudah masuk ke halaman utama UserMain Flow/Basic

Path

1. Actor mengunjungi website PT Hasta Prima Industri 2. Akan tampil produk yang tersedia

3. Actor dapat melakukan pemesanan barang dengan terlebih dahulu mengisi data diri

4. Akan tampil jumlah harga yang harus dibayar ditambah dengan ongkos kirim

Post-Condition Sistem dapat membuka halaman utama dan menampilkan produk

Tabel IV.3

Deskripsi Use Case Diagram untuk Cara Beli Use Case Name Halaman Melihat Cara Beli

ID A3

Goal Actor dapat melihat cara beli Primary Actors Pengunjung

Pre-conditions Actor sudah masuk ke halaman utama UserMain Flow/Basic

Path

1 Actor mengunjungi website PT Hasta Prima Industri 2 Akan tampil petunjuk untuk melakukan pembelian Post-Condition Sistem dapat membuka halaman utamadan

menampilkan petunjuk cara melakukan pembelian Tabel IV.4

Deskripsi Use Case Diagram untuk Kontak Kami Use Case Name Halaman Kontak Kami

ID A4

Goal Actor dapat menghubungi Perusahaan Primary Actors Pengunjung

Pre-conditions Actor sudah masuk ke halaman utama UserMain Flow/Basic

Path

1. Actor mengunjungi website PT Hasta Prima Industri 2. Actor mengklik kontak kami

3. Akan tampil form yang bias diisi jika ada keluhan terkait pemesanan barang

Post-Condition Sistem dapat membuka halaman utama dan

menampilkan form untuk menghubungi perusahaan

(5)

Gambar IV.2. Use Case Diagram Admin Tabel IV.5

Deskripsi Use Case Diagram untuk login Use Case Name Halaman Login

ID B1

Goal Actor dapat masuk pada halaman utama Primary Actors Admin

Pre-conditions Actor harus memliki akun

Main Flow/Basic Path 1. Actor memasukan username dan password 2. Actor mengisi captcha

3. Actor klik tombol ‘Login’ atau tekan tombol Enter pada keyboard

4. Sistem melakukan validasi akun

5. Sistem menyetujui username dan password 6. Sistem akan menampilan halaman utama

Admin

Ganti Passw ord

Kelola Ongkos Kirim

Kelola Rev iew Produk

Kelola Kontak Kami

Logout

Login Kelola Kategori

Produk

Kelola Produk

Kelola Order

«include»

«include»

«include»

«include»

«include»

«include»

«include»

«include»

(6)

Deskripsi Use Case Diagram untuk ganti password Use Case Name Halaman Ganti Password

ID B2

Goal Actor dapat mengganti password Pre-conditions Actor sudah berhasil login Post-conditions Password baru disimpan Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat megganti password

2. Klik tombol“ganti password” untuk membuka form ganti password

3. Masukan password ama, kemudian masukan password baru sebanyak 2 (dua) kali

4. Klik tombol “proses” untuk memproses pergantian password

Tabel IV.7

Deskripsi Use Case Diagramuntuk kelola kategori produk Use Case Name Halaman Kelola Kategori Produk

ID B3

Goal Actor dapat mengelola kategori produk Pre-conditions Actor sudah berhasil login

Post-conditions Kategori produk dapat disimpan Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat melihat daftar “Kategoriproduk”

2. Klik “tambah kategori” untuk membuka form kategori, kemudian masukan kategori yang baru untuk menambah kategori produk

3. Klik simpan pada form kategori untuk menyimpan data kategori produk

4. Klik “edit” untuk mengubah kategori

5. Klik ”hapus” pada form untuk menghapus kategori

yang akan di hapus

(7)

Deskripsi Use Case Diagram untuk kelola produk Use Case Name Halaman Kelola Produk

ID B4

Goal Actor dapat mengelola produk Pre-conditions Actor sudah berhasil login Post-conditions Data produk dapat disimpan Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat melihat daftar “produk”

2. Klik “tambah produk” untuk membuka form tambah produk, kemudian memasukan detail produk yang akan ditambahkan dan klik “browse”

untuk menyunting gambar produk

3. Klik simpan pada form untuk menyimpan data produk

4. Klik “edit” untuk mengubah data produk

5. Klik ”hapus” pada untuk menghapus produk yang akan di hapus

Tabel IV.9

Deskripsi Use Case Diagram untuk kelola order Use Case Name Halaman Kelola Order

ID B5

Goal Actor dapat mengelola order Pre-conditions Actor sudah berhasil login Post-conditions Data produk dapat disimpan Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat melihat daftar order melalui menu

“Order”

2. Maka akan tampil daftar order yang telah masuk

(8)

Deskripsi Use Case Diagram kelola ongkos kirim Use Case Name Halaman Kelola ongkos kirim

ID B6

Goal Actor dapat mengelola data ongkos kirim Pre-conditions Actor sudah berhasil login

Post-conditions Data tarif ongkos kirim dapat disimpan Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat melihat daftar ongkos kirim melalui menu “ongkos kirim”

2. Klik “tambah ongkos kirim” untuk membuka form,kemudian masukan nama kota dan ongkos kirimnya

3. Klik “Simpan” untuk menyimpan data ongkos kirim yang baru

4. Klik “Edit”untuk merubah tarif ongkos kirim 5. Klik “Hapus” untuk menghapus data ongkos kirim

Tabel IV.11

Deskripsi Use Case Diagram kelola review produk Use Case Name Halaman Kelola Review Produk

ID B7

Goal Actor dapat menyunting review produk dari pengunjung

Pre-conditions Actor sudah berhasil login

Post-conditions Data review dapat disunting ke halaman utama Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat melihat daftar review dari pengunjung 2. Klik “detail” pada daftar review kemudian klik

“On” pada status review kemudian klik “update”

untuk menyunting review kehalaman utama web

(9)

Tabel IV.12

Deskripsi Use Case Diagram kelola kontak kami Use Case Name Halaman Kelola Kontak Kami

ID B8

Goal Actor dapat membalas pesan dari pengunjung berbentuk email

Pre-conditions Actor sudah berhasil login

Post-conditions Pesan atau aduan dari pengunjung dapat direspon Primary Actors Admin

Main Flow/Basic Path 1. Actor dapat melihat daftar pengunjung yang menghubungi melalui web

2. Klik alamat email pengunjung untuk membalas pesan, kemudian klik “Kirim”

Tabel IV.13

Deskripsi Use Case Diagramlogout Use Case Name Halaman Logout

ID B9

Goal Actor dapat melihat dan mencetak laporan Pre-conditions Actor sudah berhasil login

Post-conditions Actor berhasil logout Primary Actors Admin

Main Flow/Basic Path Actor dapat keluar halaman admin dengan mengklik menu “Logout”

3. Activity Diagram

Gambar IV.3. Activity Diagram Pengunjung

act Use Case Model

System Pengunj ung

Mengakses Web

Menampilkan Halaman Utama

(10)

Gambar IV.4. Activity Diagram Lihat Profil Perusahaan

System Pengunj ung

Mengakses Web

Menampilkan Halaman Utama

(11)

Gambar IV.5. Activity Diagram Pembelian Produk

System Pengunj ung

Klik Menu

Produk Menampilkan

Semua Produk

Pilih Produk

Kilk Beli Sekarang

Menampilkan Keranj ang

Belanj a

Merubah Jumlah Beli

Klik Selesai Belanj a

Klik Belanj a Lagi

Menampilkan Form Data Anda Mengisi Data

Diri

Klik Proses

Menampilkan Konfirmasi

Pesanan

(12)

Gambar IV.6. Activity Diagram Lihat Cara Belanja

Gambar IV.7. Activity Diagram Hubungi Perusahaan

System Pengunj ung

Klik Menu Cara Belanj a

Menampilkan Petunj uk Cara

Belaj a

act Use Case Model

System Pengunj ung

Klik Kontak

Kami Menampilkan Form

Hubungi Kami

Isi Data Diri dan Pesan

Klik Kirim

Menampilkan Konfirmasi Pesan

Terkirim

(13)

Gambar IV.8. Activity Diagram Admin untuk Login

Gambar IV.9. Activity Diagram Ganti Password

Sistem Admin

Masuk ke Halaman Admin Menampilkan Halaman Admin

Mengisi Username, Passw ord, dan Kode

Captcha

Klik Tombol Login Memv alidasi Akun

Ditolak

Menampilkan Halaman Utama Admin Diterima

act Use Case Model

System Admin

Klik Menu Ganti

Pasw ord Menampilkan Form

Ganti Passw ord

Input Passw ord Lama, Kemudian Input Passw ord

Baru 2 Kali Validasi Data

Ditolak

Menampilkan Halaman Utama Diterima

(14)

Gambar IV.10. Activity Diagram Kelola Kategori

System Admin

Klik Menu Kategori

Menampilkan Daftar Kategori

Tambah Kategori

Menampilkan Form Kategori Input Nama

Kategori

Klik Simpan

Klik Batal Hapus

Edit

(15)

Gambar IV.11. Activity Diagram Kelola Produk

System Admin

Klik Menu Produk

Menampilkan Daftar Produk

Tambah Produk

Menampilkan Form Produk Input Detail

Produk

Klik Simpan

Klik Batal Hapus

Edit

(16)

Gambar IV.12. Activity Diagram Kelola Order

Sistem Admin

Klik Menu Order Menampilkan Daftar Order

Klik Detail

Menampilkan Detail Order Ubah Status Order

Klik Ubah Status

(17)

Gambar IV.13. Activity Diagram Kelola Ongkos Kirim

System Admin

Klik Menu Ongkos

Kirim

Menampilkan Daftar Ongkos Kirim

Tambah Ongkos Kirim

Menampilkan Form Ongkos

Kirim Input Nama

Kota dan Ongkos

Klik Simpan

Klik Batal Hapus

Edit

(18)

Gambar IV.14. Activity Diagram Kelola Review Produk

System Pengunj ung

Klik Menu Rev iew Produk

Menampilkan Daftar Rev iew

Klik Detail

Menampilkan Detail Rev iew Ubah Status

Rev iew

Klik Update

Hapus

Batal Admin

(19)

Gambar IV.15. Activity Diagram Kelola Kontak Kami

Gambar IV.16. Activity Diagram Logout

System Pengunj ung

Klik Menu Kontak Kami

Menampilkan Daftar Hubungi Kami

Klik Link Email

Menampilkan Detail Pesan

Dari Pengunj ung Membalas

Pesan

Klik Kirim

Hapus

Batal

act Use Case Model

System Pengunj ung

Klik Menu Logout Menampilkan Form Login Admin

Admin

(20)

4.2.1. Database

1. Entity-relation Diagram (ERD)

Gambar IV.17Entity-relation Diagram

(21)

Gambar IV.18 Gambar Diagram Logical Record Structure 3. Spesifikasi File

a. Spesifikasi File Tabel Admin Nama Database : hastaprima Nama File : Tabel Admin Akronim : admin Tipe File : File Master Panjang Record : 340

Kunci Field : username

(22)

Spesifikasi File Table Admin

No Elemen Data Nama Field Type Size Keterangan

1 Username username Varchar 50 Primery Key

2 Password password Varchar 50 3 Nama Lengkap nama_lengkap Varchar 100

4 Email Email Varchar 100

5 No Telepon no_telp Varchar 20

6 Level Level Varchar 20

7 Blokir Blokir enum

b. Spesifikasi File Tabel Kategori Nama Database : hastaprima Nama File : Tabel Kategori Akronim : kategori Tipe File : FileMaster Panjang Record : 105

Kunci Field : id_kategori

Table IV.15

Spesifikasi File Table Kategori

No Elemen Data Nama Field Type Size Keterangan 1 ID Kategori Id_kategori Integer 5 Primary Key 2 Nama Kategori nama_kategori Varchar 50

3 seo Seo Varchar 50

c. Spesifikasi File Tabel Kontak Nama Database : hastaprima Nama File : Table Kontak Akronim : kontak Tipe File : FileMaster Panjang Record : 155

Kunci Field : id_kontak

(23)

Spesifikasi File Tabel Kontak

No Elemen Data Nama Field Type Size Keterangan

1 ID Kontak id_kontak Integer 5 Primary Key

2 Nama nama Varchar 50

3 Email email Varchar 100

4 Subjek subjek Varchar 100

5 Pesan pesan Text

6 Tanggal tanggal date

d. Spesifikasi File Tabel Ongkos Kirim Nama Database : hastaprima

Nama File : Table Ongkos Kirim Akronim : kota

Tipe File : File Master Panjang Record : 113

Kunci Field : id_kota

Table IV.17

Spesifikasi File Ongkos Kirim

No Elemen Data Nama Field Type Size Keterangan

1 ID Kota id_kota Integer 3 Primary key

2 Nama Kota nama_kota Varchar 100 3 Ongkos Kirim ongkos_kirim Integer 10 e. Spesifikasi File Tabel Modul

Nama Database : hastaprima Nama File : Table Modul Akronim : modul Tipe File : FileMaster Panjang Record : 160

Kunci Field : id_modul

(24)

Spesifikasi File Tabel Modul

No Elemen Data Nama Field Type Size Keterangan

1 ID Modul id_modul Integer 5 Primary key

2 Nama Modul nama_modul Varchar 50

3 Link link Varchar 100

4 Status status enum

5 Aktif aktif enum

6 Urutan urutan Integer 5

f. Spesifikasi File Tabel Orders Nama Database : hastaprima Nama File : Table Orders Akronim : orders

Tipe File : File Transcations Panjang Record : 309

Kunci Field : id_orders

Table IV.19

Spesifikasi File Tabel Orders

No Elemen Data Nama Field Type Size Keterangan 1 ID Orders id_orders Integer 5 Primary key 2 Nama Customer nama_customer Varchar 50

3 Alamat alamat_lengkap Varchar 100 4 No Telepon telpon Varchar 50

5 Email email Varchar 50

6 Status Order status_order Char 50

7 Jam jam_order time

8 Tanggal tgl_order date

9 ID Kota id_kota Integer 4 Foreign Key

g. Spesifikasi File Tabel Detail Orders Nama Database : hastaprima

Nama File : Table Detail Orders

Akronim : orders_detail

Tipe File : File Transaction

Panjang Record : 20

(25)

Table IV.20

Spesifikasi File Tabel Detail Orders

No Elemen Data Nama Field Type Size Keterangan

1 ID Order id_orders Integer 5 Primary Key

2 ID Produk Id_produk Integer 5 Foreign Key

3 Jumlah jumlah Integer 10

h. Spesifikasi File Tabel Tipe Status Nama Database : hastaprima

Nama File : Table Order Sementara Akronim : orders_temp

Tipe File : FileTransaction Panjang Record : 230

Kunci Field : id_order_sementara Table IV.21

Spesifikasi File Tabel Order Sementara

No Elemen Data Nama Field Type Size Keterangan

1 ID Order

Sementara

id_orders_temp Integer 5 Primary key 2 ID Produk id_produk Integer 5 Foreign Key 3 ID Session id_session Varchar 100 Foreign Key

4 Jumlah jumlah Integer 20

5 Tanggal Order tgl_order_temp date

6 Jam Order jam_order_tem Varchar 100 i. Spesifikasi File Tabel Produk

Nama Database : hastaprima

Nama File : Table Produk

Akronim : produk

Tipe File : FileMaster

Panjang Record : 358

(26)

Table IV.22

Spesifikasi File Tabel Produk

No Elemen Data Nama Field Type Size Keterangan 1 ID Produk id_produk Integer 5 Primary Key 2 ID Kategori id_kategori Integer 5 Foreign Key

3 ID Warna id_warna Integer 3 Foreign Key

4 Nama Produk nama_produk Varchar 100

5 Seo seo Varchar 50

6 Deskripsi deskripsi text

7 Dimensi dimensi Varchar 20

8 Berat berat Double

9 Harga Awal h_awal Integer 20

10 Harga harga Integer 20

11 Ongkos Kirim ongkir Integer 20

12 Stok stok Integer 5

13 Tanggal Masuk tgl_masuk Date

14 Gambar gambar Varchar 100

15 Jumlah Beli dibeli Integer 4

16 Promo promo Char 3

17 Soon soon Char 3

j. Spesifikasi File Tabel Review Produk Nama Database : hastaprima

Nama File : Table Review Produk Akronim : review_produk Tipe File : FileTransaction Panjang Record : 90

Kunci Field : id_review

(27)

Spesifikasi File Tabel Review Produk

No Elemen Data Nama Field Type Size Keterangan 1 ID Review id_review Integer 3 Primary Key 2 Nama Customer nama_customer Varchar 30 Foreign Key

3 Email email Varchar 50 Foreign Key

4 Isi isi Longtext

5 ID Produk id_produk Integer 3

6 Status status Varchar 4

7 Tanggal tanggal Date

8 Jam jam Time

k. Spesifikasi File Tabel Warna Nama Database : hastaprima Nama File : Table Warna Akronim : warna Tipe File : FileMaster Panjang Record : 91

Kunci Field : id_warna

Table IV.24

Spesifikasi File Tabel Warna

No Elemen Data Nama Field Type Size Keterangan

1 ID Warna Id_warna Integer 11 Primary Key

2 Nama Warna nama_warna Varchar 30

3 Seo seo Varchar 50

(28)

1. Component Diagram

Gambar IV.19 Component Diagram Sistem Informasi Penjualan pada PT Hasta Prima Industri

2. Deployment Diagram

Gambar IV.20 Deployment Diagram Sistem Informasi Penjualan PT Hasta Prima

Industri

(29)

Gambar IV.21 Tampilan Halaman Utama Pengunjung

Gambar IV.22 Tampilan Halaman Produk

(30)

Gambar IV.23 Tampilan Halaman Cara Belanja

Gambar IV.24 Tampilan Hubungi Perusahaan

(31)

Gambar IV.25 Tampilan Form Login Admin

Gambar IV.26 Tampilan Halaman Utama Admin

Gambar IV.27 Tampilan Form Ganti Password

(32)

Gambar IV.28 Tampilan Kelola Modul

Gambar IV.29 Tampilan Kelola Kategori

Gambar IV.30 Tampilan Kelola Produk

(33)

Gambar IV.31 Tampilan Kelola Order

Gambar IV.32 Tampilan Kelola Ongkos Kirim

Gambar IV.33 Tampilan Kelola Review Produk

(34)

Gambar IV.34 Tampilan Kelola Hubungi Kami 4.3. Code Generation

Form Produk

<script LANGUAGE="JavaScript">

<!--

function confirmSubmit(ttt,id) { var msg;

msg= "Anda yakin akan menghapus produk " + ttt + " - ID = "+ id +"?";

var agree=confirm(msg);

if (agree) return true ; else

return false ; }

// -->

</script>

<?php

$aksi="modul/mod_produk/aksi_produk.php";

switch($_GET['act']){

// Tampil Produk default:

echo "<div class='top_admin_box'><h2>Produk</h2></div>

<input type=button value='Tambah Produk'

onclick=\"window.location.href='?module=produk&act=tambahproduk';\

">

<table id='list'>

<tr><th>No</th><th>Nama Produk</th><th>Harga</th><th>Harga Awal</th><th>Stok</th><th>Tgl.

masuk</th><th>Promo</th><th>Soon</th><th>Aksi</th></tr>";

$p = new Paging;

$batas = 10;

$posisi = $p->cariPosisi($batas);

$tampil = mysql_query("SELECT * FROM produk ORDER BY id_produk DESC LIMIT $posisi,$batas");

$no = $posisi+1;

(35)

$tanggal=tgl_indo($r['tgl_masuk']);

$harga=format_rupiah($r['harga']);

$h_awal=format_rupiah($r['h_awal']);

echo "<tr><td>$no</td>

<td>$r[nama_produk]</td>

<td>$harga</td>

<td>$h_awal</td>

<td align=center>$r[stok]</td>

<td>$tanggal</td>

<td>$r[promo]</td>

<td>$r[soon]</td>

<td><a

href=?module=produk&act=editproduk&id=$r[id_produk]>Edit</a> |

<a onclick=\"return

confirmSubmit('$r[nama_produk]','$r[id_produk]')\"

href=$aksi?module=produk&act=hapus&id=$r[id_produk]>Hapus</a></td>

</tr>";

$no++;

}

echo "</table>";

$jmldata = mysql_num_rows(mysql_query("SELECT * FROM produk"));

$jmlhalaman = $p->jumlahHalaman($jmldata, $batas);

$linkHalaman = $p->navHalaman($_GET['halaman'], $jmlhalaman);

echo "<div id=paging>Hal: $linkHalaman</div><br>";

break;

case "tambahproduk":

?>

<script type="text/javascript" language="javascript">

function validasiProduk() {

var x=document.forms["form"]["nama_produk"].value;

var y=document.forms["form"]["harga"].value;

var z=document.forms["form"]["deskripsi"].value;

var b=document.forms["form"]["agen"].value;

var a=document.forms["form"]["file"].value;

var ext = a.substring(a.lastIndexOf(".") + 1);

if (x=="" || y=="" || z=="" || a=="" || b=="-") {

alert("Data Anda kurang lengkap :)");

return false;

}

else if (ext =="dbf" || ext =="DBF") {

return true;

}

else if (ext !="dbf" || ext !="DBF") {

alert("Data harus dalam format .DBF :)");

return false;

} }

(36)

<?php

echo "<div class='top_admin_box'><h2>Tambah Produk</h2></div>

<form onSubmit=\"return validasiProduk()\" name=\"form\"

method='POST' action='$aksi?module=produk&act=input' enctype='multipart/form-data'>

<table>

<tr><td width=70>Nama Produk</td><td> : <input type=text name=\"nama_produk\" size=60>";

if (isset($_GET['f']) AND $_GET['f']=='nama') { echo "<br><font color=red>Namaproduk sebaiknya diisi</font>";

}

echo "</td></tr>";

echo "<tr><td>Kategori</td><td> :

<select name='kategori'>";

$tampil=mysql_query("SELECT * FROM kategori ORDER BY nama_kategori");

while($r=mysql_fetch_array($tampil)){

echo "<option

value=$r[id_kategori]>$r[nama_kategori]</option>";

}

echo "</select> Pilih Kategori</td></tr>

<tr><td>Warna</td><td> :

<select name='warna'>";

$data=mysql_query("SELECT * FROM warna ORDER BY nama_warna");

while($r2=mysql_fetch_array($data)){

echo "<option

value=$r2[id_warna]>$r2[nama_warna]</option>";//`id_produk` ,

`id_kategori` , `id_merk` , `nama_produk` , `seo` ,

`deskripsi` , `dimensi` , `berat` , `h_awal` , `harga` ,

`stok` , `tgl_masuk` , `gambar` , `dibeli` , `promo` , `soon`

}

echo "</select> Pilih Warna</td></tr>

<tr><td>Harga</td><td> : <input type=text name='harga'

size=10>&nbsp;&nbsp;Harga Awal : <input type=text name='h_awal' size=10>&nbsp;&nbsp;Ongkir : <input type=text name='ongkir' size=10>";

if (isset($_GET['f']) AND $_GET['f']=='harga') { echo "<br><font color=red>Harga Produk harus diisi</font>";

}

echo "</td></tr>

<tr><td>Dimensi(PxLxT)</td><td> : <input type=text name='dimensi' size=10>&nbsp;&nbsp;Berat : <input type=text name='berat' size=4>*dalam Kg</td></tr>

<tr><td>Stok</td><td> : <input type=text name='stok' size=3>&nbsp;&nbsp;Promo : <select name='promo'>

<option value='off' selected> Off </option>

<option value='on' selected> On </option>

</select>

(37)

&nbsp;&nbsp;Segera Hadir : <select name='soon'>

<option value='off' selected> Off </option>

<option value='on' selected> On </option>

</select>";

if (isset($_GET['f']) AND $_GET['f']=='stok') {

echo "<br><font color=red>Stok harus diisi</font>";

} echo "</td></tr>";

echo "<tr><td valign='top'>Deskripsi</td><td><textarea name='deskripsi' style='width: 450px; height:

250px;'></textarea></td></tr>

<tr><td>Gambar</td><td> : <input type=file name='gambar' size=40>

<br>Tipe gambar harus JPG/JPEG dan ukuran lebar maks: 400 px</td></tr>

<tr><td colspan=2><input type=submit value=Simpan>

<input type=button value=Batal

onclick=self.history.back()></td></tr>

</table></form>";

break;

case "editproduk":

$edit = mysql_query("SELECT * FROM produk WHERE id_produk='$_GET[id]'");

$r = mysql_fetch_array($edit);

echo "<div class='top_admin_box'><h2>Edit Produk</h2></div>

<form method=POST enctype='multipart/form-data' action=$aksi?module=produk&act=update>

<input type=hidden name=id value=$r[id_produk]>

<table>

<tr><td width=70>Nama Produk</td><td> : <input type=text name='nama_produk' size=60 value='$r[nama_produk]'></td></tr>

<tr><td>Kategori</td><td> : <select name='kategori'>";

$tampil=mysql_query("SELECT * FROM kategori ORDER BY nama_kategori");

while($w=mysql_fetch_array($tampil)){

if ($r[id_kategori]==$w[id_kategori]){

echo "<option value=$w[id_kategori]

selected>$w[nama_kategori]</option>";

} else{

echo "<option

value=$w[id_kategori]>$w[nama_kategori]</option>";

} }

echo "</select></td></tr>

<tr><td>warna</td><td> : <select name='warna'>";

(38)

nama_warna");

while($w2=mysql_fetch_array($tampil2)){

if ($r[id_warna]==$w[id_warna]){

echo "<option value=$w2[id_warna]

selected>$w2[nama_warna]</option>";

} else{

echo "<option

value=$w2[id_warna]>$w2[nama_warna]</option>";

} }

echo "</select></td></tr>

<tr><td>Harga</td><td> : <input type=text name='harga'

value=$r[harga] size=10>Harga Awal: <input type=text name='h_awal' value=$r[h_awal] size=10>Ongkir: <input type=text name='ongkir' value=$r[ongkir] size=8></td></tr>

<tr><td>Dimensi(PxLxT)</td><td> : <input type=text name='dimensi' value=$r[dimensi] size=10>&nbsp;&nbsp;Berat :

<input type=text name='berat' value=$r[berat] size=4>*dalam Kg</td></tr>

<tr><td>Stok</td><td> : <input type=text name='stok'

value=$r[stok] size=3>&nbsp;&nbsp;Promo : <select name='promo'>

<option value='off' selected> Off </option>

<option value='on' selected> On </option>

</select>

&nbsp;&nbsp;Segera Hadir : <select name='soon'>

<option value='off' selected> Off </option>

<option value='on' selected> On </option>

</select></td></tr>

<tr><td valign='top'>Deskripsi</td><td><textarea name='deskripsi' style='width: 450px; height:

250px;'>$r[deskripsi]</textarea></td></tr>

<tr><td>Gambar</td><td> :

<img src='../foto_produk/small_$r[gambar]'></td></tr>

<tr><td>Ganti Gbr</td><td> : <input type=file name='gambar' size=30> *)</td></tr>

<tr><td colspan=2>*) Apabila gambar tidak diubah, dikosongkan saja.</td></tr>

<tr><td colspan=2><input type=submit value=Update>

<input type=button value=Batal

onclick=self.history.back()></td></tr>

</table></form>";

break;

}

(39)

a<?php

session_start();

include "../../../config/koneksi.php";

include "../../../config/library.php";

include "../../../config/fungsi_thumb.php";

include "../../../config/fungsi_seo.php";

$module=$_GET[module];

$act=$_GET[act];

// Hapus produk

if ($module=='produk' AND $act=='hapus'){

mysql_query("DELETE FROM produk WHERE id_produk='$_GET[id]'");

header('location:../../media.php?module='.$module);

}

// Input produk

elseif ($module=='produk' AND $act=='input'){

if ($_POST['nama_produk']=="") {

header('location:../../media.php?module=produk&act=tambahproduk&f=

nama');

}

elseif($_POST['harga']==""){

header('location:../../media.php?module=produk&act=tambahpro duk&f=harga');

}

elseif($_POST['stok']==""){

header('location:../../media.php?module=produk&act=tambahpro duk&f=stok');

} else {

$lokasi_file = $_FILES['gambar']['tmp_name'];

$tipe_file = $_FILES['gambar']['type'];

$nama_file = $_FILES['gambar']['name'];

$acak = rand(1,99);

$nama_file_unik = $acak.$nama_file;

$produk_seo = seo_title($_POST[nama_produk]);

// Apabila ada gambar yang diupload if (!empty($lokasi_file)){

UploadImage($nama_file_unik);

$sql = mysql_query("INSERT INTO produk(nama_produk,

seo,

id_kategori, id_warna, h_awal, harga,

(40)

ongkir, dimensi, berat, stok, promo, soon, deskripsi, tgl_masuk, gambar)

VALUES('$_POST[nama_produk]', '$produk_seo',

'$_POST[kategori]', '$_POST[warna]',

'$_POST[h_awal]',

'$_POST[harga]', '$_POST[ongkir]',

'$_POST[dimensi]',

'$_POST[berat]',

'$_POST[stok]', '$_POST[promo]',

'$_POST[soon]', '$_POST[deskripsi]',

'$tgl_sekarang', '$nama_file_unik')");

if (!$sql) {

"Error (no picture):".mysql_error();

} }

else{

$sql = mysql_query("INSERT INTO produk(nama_produk,

seo,

id_kategori,

id_warna, h_awal, harga,

ongkir, dimensi, berat, stok,

promo, soon, deskripsi,

(41)

VALUES('$_POST[nama_produk]', '$produk_seo',

'$_POST[kategori]', '$_POST[warna]',

'$_POST[h_awal]',

'$_POST[harga]', '$_POST[ongkir]',

'$_POST[dimensi]',

'$_POST[berat]',

'$_POST[stok]', '$_POST[promo]',

'$_POST[soon]', '$_POST[deskripsi]',

'$tgl_sekarang')");

if (!$sql) {

"Error (picture):".mysql_error();

} }

header('location:../../media.php?module='.$module);

} }

// Update produk

elseif ($module=='produk' AND $act=='update'){

$lokasi_file = $_FILES['gambar']['tmp_name'];

$tipe_file = $_FILES['gambar']['type'];

$nama_file = $_FILES['gambar']['name'];

$acak = rand(1,99);

$nama_file_unik = $acak.$nama_file;

$produk_seo = seo_title($_POST[nama_produk]);

// Apabila gambar tidak diganti if (empty($lokasi_file)){

$sql = mysql_query("UPDATE produk SET nama_produk = '$_POST[nama_produk]',

seo = '$produk_seo', id_kategori =

'$_POST[kategori]',

id_warna = '$_POST[warna]',

h_awal

= '$_POST[h_awal]',

harga = '$_POST[harga]', ongkir

= '$_POST[ongkir]',

dimensi

= '$_POST[dimensi]',

berat

= '$_POST[berat]',

stok = '$_POST[stok]',

(42)

= '$_POST[promo]',

soon

= '$_POST[soon]',

deskripsi = '$_POST[deskripsi]'

WHERE id_produk = '$_POST[id]'");

if (!$sql) {

"Error (no picture):".mysql_error();

} } else{

UploadImage($nama_file_unik);

$sql = mysql_query("UPDATE produk SET nama_produk = '$_POST[nama_produk]',

seo = '$produk_seo', id_kategori =

'$_POST[kategori]',

id_warna = '$_POST[warna]',

h_awal

= '$_POST[h_awal]',

harga = '$_POST[harga]', ongkir

= '$_POST[ongkir]',

dimensi

= '$_POST[dimensi]',

berat

= '$_POST[berat]',

stok = '$_POST[stok]', promo

= '$_POST[promo]',

soon

= '$_POST[soon]',

deskripsi = '$_POST[deskripsi]',

gambar = '$nama_file_unik' WHERE id_produk = '$_POST[id]'");

if (!$sql) {

"Error (picture):".mysql_error();

} }

header('location:../../media.php?lokasi='.$nama_file_unik.'&module

='.$module);

}

?>

(43)

Table IV.25

Hasil Pengujian Black Box Testing Form Login No Skenario

Pengujian

Test Case Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Mengosongkan

semua isian data lalu mengklik tombol login

Username (kosong) Password (kosong)

Sistem akan menolak dan keluar pesan

“Anda Belum Mengisi Username”

Sesuai harapan

Valid

2 Hanya mengisi data username dan mengosongkan data password lalu mengklik tombol login

Username:

admin Password:

(kosong)

Sistem akan menolak dan keluar pesan

“Anda Belum Mengisi Password”

Sesuai harapan

Valid

3 Hanya mengisi data username dan password dan tidak menginputkode captchalalu mengklik tombol login

Username:

(admin) Password:

(Admin) Kode Captcha:

(kosong)

Sistem akan menolak dan keluar pesan

“Anda Belum Mengisi Kode Captcha”

Sesuai harapan

Valid

Table IV.26

Hasil Pengujian Black Box Testing Form Ganti Password No Skenario

Pengujian

Test Case Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Mengosongkan

semua isian data lalu mengklik tombol proses

Password lama(koson g)

Password baru (kosong)

Sistem akan menolak dan keluar pesan

“Anda Harus Mengisikan Semua Data pada Form Ganti Password”

Sesuai harapan

Valid

2 Hanya mengisi data password

Password lama:

Sistem akan menolak dan

Sesuai harapan

Valid

(44)

mengosongkan data password baru lalu mengklik tombol login

Passwordba ru:

(kosong)

“Anda Harus Mengisikan Semua Data pada Form Ganti Password”

3 Mengisi password lama yang

salahdan mengisi password baru lalu mengklik tombol login

Password lama:

(admin234) Passwordba ru:

(Admin1)

Sistem akan menolak dan keluar pesan

“Anda salah memasukan password lama anda”

Sesuai harapan

Valid

Table IV.27

Hasil Pengujian Black Box Testing FormTambah Produk No Skenario

Pengujian

Test Case

Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Mengosongkan

semua isian data lalu mengklik tombol save

Semua field (kosong)

Sistem akan menolak dan akan

mengeluarkan pesan “Nama Produk Harus diisi.

Sesuai harapan

Valid

2 Hanya mengisi Nama Produk, Harga dan Stok dikosongkan

Nama Produk:

(Cangkir) Harga:

(kosong) Stok:

(kosong)

Sistem akan menolak dan akan

mengeluarkan pesan “Harga Harus di Isi”

Sesuai harapan

Valid

3 Hanya mengisi Nama Produk dan Harga, Stok dikosongkan

Nama Produk:

(Cangkir) Harga:

(5000) Stok:

(kosong)

Sistem akan menolak dan akan

mengeluarkan pesan “Stok Harus di Isi”

Sesuai harapan

Valid

(45)

Hasil Pengujian Black Box Testing FormOrder No Skenario

Pengujian

Test Case

Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Merubah status

order menjadi lunas atau dikirim, lalu mengklik ubah status

Status (Lunas) Atau (Dikirim)

Sistem akan menampilkan perubahan status order pada daftar order

Sesuai harapan

Valid

Table IV.29

Hasil Pengujian Black Box Testing FormTambah Ongkos Kirim No Skenario

Pengujian

Test Case

Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Menginput nama

kota dan Ongkos Kirim

Nama Kota (Bali) Ongkos (50.000)

Sistem akan menampilkan perubahan status order pada daftar order

Sesuai harapan

Valid

Table IV.30

Hasil Pengujian Black Box Testing Kelola Review Produk No Skenario

Pengujian

Test Case

Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Merubah status

review menjadi On

Status Review (On)

Sistem akan menampilkan review pada produk di Halaman Pengunjung

Sesuai harapan

Valid

(46)

Hasil Pengujian Black Box Testing FormTambah Kategori No Skenario

Pengujian

Test Case

Hasil yang diharapkan

Hasil Pengujia

n

Kesimpul an 1 Mengosongkan

semua isian data lalu mengklik tombol Simpan

Semua field (kosong)

Sistem akan menolak dan akan

mengeluarkan pesan “Anda Belum Mengisikan Kategori”.

Sesuai harapan

Valid

4.5. Support

4.5.1. Publikasi Web

Sistem Informasi Penjualan pada PT Hasta Prima Industri dipublikasikan secara umum melalui internet, karena sistem ini ditujukan untuk memperluas penjualan dan agar mudah diakses oleh calon pembeli.

4.5.2. Spesifikasi Hardware dan Software

Pada tahapan ini penulis memberikan spesifikasi hardware dan software

yang sesuai kebutuhan sistem yang penulis bangun, adapun spesifikasi tersebut

adalah sebagai berikut:

(47)

Spesifikasi Hardware dan Software

Kebutuhan Ketrangan

Sistem Operasi Windows atau Linux

Processor Intel Core i3 2,5 Ghz atau lebih

RAM 2 GB atau lebih

Harddisk 100 Gb atau lebih

DVD-Rom 16x

Monitor LED 18 inch

Keyboard Standard

Printer Laser Jet

Browser Mozilla Firefox atau Google Chrome

Software XAMPP, Sublime Text, Navicat

Premium,Heidysql

4.6. Spesifikasi Dokumen Sistem Usulan a. Nama Dokumen : Daftar Order

Fungsi : Daftar Pesanan

Sumber : Customer

Tujuan : Marketing

Frekuensi : Setiap Hari

Media : Kertas

Jumlah : Satu Lembar Bentuk : Lampiran B.1 b. Nama Dokumen : Daftar Order

Fungsi : Permintaan penyediaan barang

Sumber : Marketing

Tujuan : Warehouse

Frekuensi : Setiap Hari

Media : Kertas

(48)

Bentuk : Lampiran B.1 c. Nama Dokumen : Daftar Order

Fungsi : Daftar Pesanan

Sumber : Customer

Tujuan : Marketing

Frekuensi : Setiap Hari

Media : Kertas

Jumlah : Satu Lembar

Bentuk : Lampiran B.2

Gambar

Gambar IV.4. Activity Diagram Lihat Profil Perusahaan
Gambar IV.5. Activity Diagram Pembelian Produk
Gambar IV.7. Activity Diagram Hubungi Perusahaan
Gambar IV.6. Activity Diagram Lihat Cara Belanja
+7

Referensi

Dokumen terkait

Deskripsi Use Case Diagram Bagian keuangan dapat mengelola Data perkiraan, Jurnal.. Use Case Name Mengelola data perkiraan

Admin dapat menambahkan, merubah atau menghapus data tracking Dapat mengelola data chatting... Use Case

Cari Cetak Laporan extand Verifikasi Kartu Identitas Anak (KIA) extand Detail extand Hapus Cetak Kelola Testimoni.1. Deskripsi Use Case Diagram Data Profil Admin

Gambar IV.2 Use Case Diagram Administrator Tabel IV.2 Diskripsi Use Case Diagram Administrator Use Case Name Penjualan Online Admin Requirements B1-B6 Goal Admin dapat menambah,

Admin menekan tombol checklist Tabel IV.8 Deskripsi Use Case Diagram Mengelola Absensi Use Case Name Mengelola Absensi Requirement A8 Goal Admin dapat menambah absen masuk,

Deskripsi Use Case Diagram Sistem Informasi Penerimaan Siswa Baru Mengelola Halaman hasil pendaftran: Tabel Tabel Tabel Tabel IV.2IV.2IV.2IV.2 Deskripsi Deskripsi Deskripsi

Use case diagram Sisfo Penjualan Restoran halaman pramusaji Gambar IV.1 Use case diagram Pramusaji Deskripsi Use case Diagram Pemesanan Menu Halaman Pramusaji Tabel IV.1 Deskripsi

Use Case Diagram Calon Pendaftar Sumber : Hasil Pengolahan 2018 Gambar IV.2 Use Case Diagram Calon Pendaftar Tabel IV.2 Deskripsi Use Case Diagram Calon Pendaftar Use Case