Tempat / Tgl Lahir : Bandung, 18 Agustus 1989 Jenis Kelamin : Laki-laki
Alamat : Jl. Sarijadi Blok 10 No 59 RT 03 RW 04, Bandung Jawa Barat.
Telepon : 085624654859 Email : [email protected] Pendidikan Formal :
1. 1995 - 2001 : SD Negeri 8 Sarijadi - Bandung 2. 2001– 2004 : SLTP Negeri 12 Bandung 3. 2004– 2007 : SMA Puragabaya Bandung
4. 2007–2013 : Program Studi S1 Teknik Informatika Fakultas Teknik dan Ilmu Komputer
PEMBANGUNAN E-COMMERCE
UNTUK TOKO HEINZY KOMPUTER
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Studi Teknik Informatika Fakultas Teknik dan Ilmu Komputer
HARLIAWAN PRAJANI
10107003
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
Syukur alhamdullilah, penulis panjatkan kepada Allah S.W.T atas segala rahmat, karunia dan perlindungan-Nya sehingga penulis dapat menyelesaikan Tugas Akhir ini dengan judul “Pembangunan E-Commerce untuk Toko Heinzy Komputer” .
Penyusunan Tugas Akhir ini ditujukan untuk memenuhi salah satu syarat dalam menyelesaikan jenjang pendidikan strata satu (S1) pada Program Studi Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.
Dengan segala kerendahan hati, penulis menyampaikan terima kasih kepada Rasim M.T., selaku dosen pembimbing yang telah meluangkan waktunya dalam membimbing penulis selama proses penyusunan sampai terselesaikannya laporan tugas akhir ini.
Pada kesempatan ini pula, penulis ingin menyampaikan rasa hormat dan terima kasih kepada :
1. Allah SWT yang telah memberikan segala nikmat, segala kemudahan serta karunia-Nya.
2. Ellin Harlina Ibunda tercinta dan Almarhumah Ibu Hj.Nine Suarti Nenekku tercinta yang telah memberikan kasih sayang serta doa, dan untuk adikku Dindin Nurdiansyah beserta keluarga besar tersayang yang tidak bisa disebutkan satu per satu, juga tak lupa Ima Permasih beserta keluarga besarnya terima kasih atas dorongan serta do’anya.
3. Rasim M.T. selaku dosen pembimbing yang telah memberikan banyak waktu, perhatian, dan dukungan yang tak terhingga nilainya.
4. Eko Budi Setiawan, S.Kom., M.T. selaku Dosen Wali IF-1 angkatan 2007. 5. Alif Finandhita. S.Kom. dan Inne Novitasari, Msi. selaku dosen penguji
iv
6. Irawan Afrianto, S.T., M.T., selaku Ketua Program Studi Teknik Informatika, Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia.
7. Prof. Dr. H. Denny Kurniadie, Ir., M.Sc selaku Dekan Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.
8. Ir. Eddy Suryanto Soegoto, M.Sc., Selaku Rektor UNIKOM.
9. Seluruh dosen pengajar Universitas Komputer Indonesia yang telah mengajar dan mendidik kami menjadi orang - orang bermoral dan berilmu. 10.Seluruh staf karyawan Sekretariat Jurusan Teknik Informatika.
11.Sahabat seperjuangan angkatan 2007 dan sahabat seperjuangan saat masa penyusunan skripsi yang tidak dapat disebutkan satu persatu. Terimakasih atas segala bentuk bantuan, perhatian dan dukungannya serta kenangannya.
12.Semua teman-teman yang ada di kampus tidak dapat disebutkan satu per satu tidak mengurangi rasa hormat dan terimakasih yang telah memilki andil besar dalam penulisan dan penyusunan laporan akhir ini.
Akhir kata, semoga Allah S.W.T membalas budi baik semua pihak yang telah membantu dalam penulisan Tugas Akhir ini dan semoga laporan ini dapat bermanfaat bagi kita semua. Amin Ya Robbal’alamin.
Bandung, Agustus 2013
v
ABSTRACT... ii
KATA PENGANTAR... iii
DAFTAR ISI... v
DAFTAR GAMBAR... ix
DAFTAR TABEL... xiv
DAFTAR SIMBOL... xviii
DAFTAR LAMPIRAN... xxi
BAB 1 PENDAHULUAN ... 1
1.1 Latar Belakang Masalah ... 1
1.2 Perumusan Masalah ... 2
1.3 Maksud dan Tujuan ... 2
1.4 Batasan Masalah ... 2
1.5 Metodologi Penelitian ... 3
1.5.1. Tahap Pengumpulan Data... 4
1.5.2. Tahap Pembuatan Perangkat Lunak ... 4
1.6 Sistematika Penulisan ... 6
BAB 2 TINJAUAN PUSTAKA ... 9
2.1 Tinjauan perusahaan ... 9
2.1. 1 Profil Singkat Perusahaan ... 9
2.1. 2 Logo Perusahaan ... 9
2.1. 3 Struktur Organisasi dan Fungsi Perusahaan ... 10
2.2 Landasan Teori ... 11
2.2. 1 Konsep Dasar Sistem Informasi ... 11
2.2. 2 Komponen Sistem Informasi ... 11
vi
2.2. 4 Manfaat Sistem Informasi ... 12
2.2. 5 Elektronic Commerce ... 12
2.2. 6 Jenis-Jenis E-commerce ... 13
2.2. 7 Basis Data (Database) ... 14
2.2. 8 Diagram Aliran Dokumen (Flowmap) ... 14
2.2. 9 ERD (Entity Relationship Diagram) ... 14
2.2. 10 Object Oriented Program (OOP) ... 16
2.2. 11 Unified Modeling Language (UML) ... 20
2.2. 12 Model – View – Controler ... 22
2.2. 13 Code Igniter ... 22
2.2. 14 Personal Homepage Tool (PHP) ... 24
2.2. 15 HTML (Hyper Text Markup Language) ... 25
2.2. 16 Cascading Style Sheet (CSS) ... 26
2.2. 17 Javascript ... 26
2.2. 18 MySQL ... 27
2.2. 19 Internet ... 27
2.2. 20 Email ... 27
2.2. 21 Item Based Collaborative Filtering ... 28
2.2. 22 Skala Pengukuran ... 29
BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 31
3.1 Analisis Sistem ... 31
3.1. 1 Analisis Masalah ... 31
3.1. 2 Analisis Prosedur Sistem Yang Sedang Berjalan ... 31
3.1.2.1 Prosedur Pengadaan Barang ... 32
3.1.2.2 Prosedur Penjualan Barang ... 34
3.1.2.3 Prosedur Retur Barang ... 37
3.1.2.4 Prosedur Pembuatan Laporan Penjualan ... 40
3.1. 3 Aturan Bisnis Sistem yang akan dibangun. ... 41
3.1. 4 Analisis Metode Item Based Collaborative Filtering ... 43
3.1. 5 Analisis Kebutuhan Non Fungsional ... 46
vii
3.1.5.7.1Use Case Skenario ... 52
3.1.5.6 Sequence Diagram ... 72
3.1.5.7 Class Diagram ... 93
3.1.5.8 Activity Diagram ... 124
3.1.5.9 Package Diagram ... 153
3.1.5.10 Deployment Diagram ... 156
3.2 Perancangan Sistem ... 156
3.2. 1 Perancangan Data ... 156
3.2.1.1 Diagram Relasi ... 157
3.2.1.2 Arsitektur Menu ... 157
3.2. 2 Perancangan Antarmuka ... 159
3.2. 3 Perancangan Pesan ... 164
3.3 Perancangan Prosedural ... 165
BAB 4 IMPLEMENTASI DAN PENGUJIAN ... 173
4.1 Implementasi ... 173
4.1.1. Lingkungan Implementasi ... 173
4.1.2. Implementasi Perangkat Keras ... 173
4.1.3. Implementasi Perangkat Lunak ... 173
4.1.4. Implementasi Basis Data ... 174
4.1.5. Implementasi Class ... 179
4.1.6. Implementasi Antarmuka ... 180
4.2 Pengujian Sistem ... 182
4.2.1. Rencana Pengujian ... 182
4.2.2. Pengujian Alpha ... 183
4.2.2.1. Pengujian Aplikasi ... 184
4.2.3. Pengujian Beta ... 191
viii
4.2.3.2. Hasil Pengujian Beta ... 192
4.2.4. Kesimpulan Pengujian Beta ... 195
BAB 5 KESIMPULAN DAN SARAN ... 197
5.1 Kesimpulan ... 197
5.2 Saran ... 198
199
DAFTAR PUSTAKA
[1] Barkatullah, A.H. dan Prasetyo, T. (2005), Bisnis E-Commerce, Yogyakarta: Pustaka Pelajar
[2] Whinston Kalakota Dan.1996. Frontiers Of Electronic Commerce, Massachusetts : Addison-Wesley Publilshing Company, Inc
[3] Pressman, Roger S.2001 .Software Engineering : A Practitioner Approach – 5th ed, New York : McGraw-Hill Companies, Inc.
[4] Witarto. 2004. Memahami Sistem Informasi. Bandung :Informatika.
[5] M.A., Ineke Pakereng dan Teguh Wahyono. 2004. Sistem Basis Data :Konsep dan Pendekatan Praktekum. Yogyakarta :PenerbitGrahaIlmu.
[6] Nugroho, Adi. 2006. E-Commerce – memahami Perdagangan Modern Di Dunia Maya. Bandung :Informatika.
[7] Hakim, Lukmanul, 2011. Bikin Website Super Kerendengan PHP &JQuery.Yogyakarta :Lokomedia.
[8] Kurniawan, Yusuf. 2005. Kriptografi Keamanan Internet dan Jaringan Komputer.Bandung: Informatika.
[9] Salahuddin, M. 2008. Analisis Desain Sistem Informasi.Bandung : Politeknik Telkom.
[10] Prasetyo, Didik Dwi. 2005. Solusi Menjadi Web Master Melalui Manajamen Web dengan PHP.Jakarta :Elex Media Komputindo.
200
1 1.1 Latar Belakang Masalah
Toko Heinzy Komputer merupakan toko yang bergerak dalam bidang penjualan peralatan komputer. Toko ini dirintis oleh pemiliknya sejak tahun 2010 hingga sekarang. Perangkat komputer yang dijual di toko Heinzy ini terdiri dari perangkat komputer baru dan bekas pakai.
Toko Heinzy Komputer terletak di areal pertokoan di kota Bandung yang selalu macet, hal ini menjadi kendala bagi pelanggan yang memiliki kesibukan ataupun pelanggan yang tempat tinggalnya jauh dari letak toko, dimana pelanggan tersebut harus menghabiskan banyak waktu dan tenaga di perjalanan untuk datang ke toko Heinzy Komputer. Adapun cara penjualan di toko Heinzy Komputer dilakukan dengan cara konvensional, yakni penjual diam di toko menunggu datangnya pembeli dan pelanggan yang akan bertransaksi maupun yang sekedar mencari informasi, hal ini menyebabkan kurangnya penyebaran informasi mengenai barang yang up to date, penyebaran informasi hanya terbatas pada pelanggan yang telah datang sebelumnya. Dalam mengelola data penjualan, toko Heinzy Komputer terkadang memiliki masalah yang disebabkan kesalahan manusia, yaitu hilangnya beberapa nota penjualan, sehingga pihak toko sering merasa kesulitan dalam membuat laporan penjualan yang akurat.
2
1.2 Perumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan di atas, maka rumusan masalah yang dapat dikemukakan adalah bagaimana cara membangun website e-commerce untuk toko Heinzy Komputer.
1.3 Maksud dan Tujuan 1. Maksud
Maksud dari pembangunan website e-commerce ini adalah untuk membantu mengatasi permasalahan yang ada di toko Heinzy Komputer.
2. Tujuan
Berdasarkan permasalahan yang diteliti, maka tujuan yang akan dicapai adalah sebagai berikut :
1. Membantu pelanggan toko Heinzy Komputer yang memiliki kesibukan dan yang tempat tinggalnya jauh dari toko agar dapat bertransaksi tanpa harus datang ke toko.
2. Membantu toko Heinzy Komputer dalam memberikan informasi mengenai barang yang up to date kepada pelanggannya.
3. Membantu toko Heinzy Komputer dalam mengelola data penjualan dan pembuatan laporan yang akurat.
1.4 Batasan Masalah
Mengingat permasalahan yang dikaji sangat luas, agar penyajian lebih terarah dan mencapai sasaran yang ditentukan, maka diperlukan suatu pembatasan masalah atau ruang lingkup kajian yang meliputi hal-hal sebagai berikut :
1. Pembangunan website dibuat dan digunakan untuk kepentingan toko Heinzy Komputer.
2. Jenis e-commerce yang digunakan adalah (B2C) Business to Customer. 3. Data
4. Proses
Proses yang terdapat adalah proses pemesanan barang, proses pembayaran, pengelolaan data yang berupa tambah, edit, hapus, dan cari data, pengelolaan pemesanan, pengelolaan laporan, pengelolaan backup dan restore database, pengolaan retur, pengelolaan stok barang,pengelolaan diskon barang yang sepenuhnya diatur sesuai kebijakan toko Heinzy Komputer.
5. Keluaran
Keluaran yang dihasilkan adalah menampilkan daftar barang, barang terbaru, barang yang akan datang, pencarian barang, fasilitas pendaftaran member dan login member, daftar belanja member.
6. Pemodelan
Untuk menggambarkan sistem manual atau proses bisnis yang sedang berjalan menggunakan Activity Diagram, untuk menggambarkan kelas-kelas yang digunakan dalam sistem menggunakan Class Diagram, untuk menggambarkan kolaborasi objek dalam beberapa behavior menggunakan Sequence Diagram, untuk menggambarkan fungsional sistem menggunakan Use Case, dan untuk menggambarkan logika prosedural dari sistem yang akan dibangun menggunakan Activity Diagram.
7. Website ini juga dilengkapi fitur smart recomendation system menggunakan metode Item based rating collaborative filtering.
1.5 Metodologi Penelitian
4
1.5.1. Tahap Pengumpulan Data
Tahap pengumpulan data adalah mengumpulkan data dari tempat penelitian sesuai yang dibutuhkan dalam membangun web e-commerce, yang terdiri dari :
1. Studi Lapangan (Field Research)
Studi lapangan dilakukan dengan cara meninjau secara langsung ke toko Heinzy Komputer untuk mendapatkan data yang berhubungan dengan sistem yang akan di bangun, meliputi :
a. Observasi (Observation Research)
Observasi adalah pengumpulan data dengan cara melakukan pengamatan secara langsung ke toko Heinzy Komputer.
b. Wawancara (Interview)
Wawancara adalah pengumpulan data dengan cara tanya jawab kepada pemilik toko dan karyawan yang akan menggunakan atau berinteraksi langsung dengan sistem yang akan dibangun.
c. Kuesioner
Kuesioner adalah proses pengumpulan data dengan menggunakan lembar isian yang akan diisi oleh responden yang akan nantinya akan digunakan sebagai acuan untuk tolak ukur pengembangan sistem yang akan dibangun.
2. Studi Literatur (Library Research)
Studi literatur adalah pengumpulan data melalui buku-buku, jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan judul penelitian.
1.5.2. Tahap Pembuatan Perangkat Lunak
1. Communication
Communication merupakan proses interaksi antara developer atau pembangun
website dengan customer untuk membahas berbagai macam kebutuhan sistem
yang diperlukan untuk membangun website. 2. Planning
Planning merupakan proses perencanaan tahapan-tahapan pembangunan
website yang meliputi pengumpulan sumber daya yang dibutuhkan, penjadwalan waktu pengerjaan website dan pengumpulan informasi yang berkaitan dengan project.
3. Modeling
Modeling merupakan tahap desain analisis dari informasi yang diperoleh ke
dalam bentuk yang mudah dimengerti oleh pengguna. Merupakan proses yang mencakup atribut-atribut website yaitu koneksi data, arsitektur,dan representasi antar muka, tahap ini dilakukan sebelum pembuatan kode program.
4. Construction
Construction merupakan proses penerjemahan data atau pemecahan masalah dari hasil analisis yang telah dirancang kedalam bahasa pemrograman tertentu, kemudian dilakukan testing tahap demi tahap.
5. Deployment
Deployment berisikan proses penyebaran hasil dari pembangunan sistem yang
6
Gambar 1.1 Metode Waterfall, Roger S Pressman [3]
1.6 Sistematika Penulisan
Sistematika penulisan dalam penyusunan laporan tugas akhir adalah sebagai berikut:
BAB 1 PENDAHULUAN
Bab ini berisi latar belakang masalah, rumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.
BAB 2 TINJAUAN PUSTAKA
Bab ini berisi tentang teori-teori yang melandasi pembangunan e-commerce untuk toko Heinzy Komputer dan tinjauan umum mengenai tempat penelitian.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi tahap dari implementasi sistem yang terdiri dari penerapan rencana implementasi, melakukan kegiatan implementasi, dan tindak lanjut implementasi. Selain itu juga berisi pengujian program yang telah dibuat.
BAB 5 KESIMPULAN DAN SARAN
173 BAB 4
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi
Analisis dan desain sistem secara terperinci telah dilakukan, maka langkah selanjutnya adalah menuju tahap implementasi. Tujuan implementasi adalah untuk menjelaskan tentang manual modul kepada semua user yang akan menggunakan sistem. Sehingga user tersebut dapat merespon apa yang ditampilkan di sistem dan memberikan masukan kepada pembuat sistem untuk dilakukan perbaikan agar sistem lebih baik lagi.
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 E-commerce untuk toko Heinzy Komputer.
4.1.2. Implementasi Perangkat Keras
Spesifikasi perangkat keras minimal yang dibutuhkan untukmengimplementasikan aplikasi yang di bangun antara lain terdapat pada tabel 4.1.
Tabel 4. 1 Perangkat Keras yang dibutuhkan
No Perangkat Keras Spesifikasi
1 Processor kecepatan minimal 1.8 GHz 2 VGA Card minimal 128 MB
3 RAM minimal 256 MB
4 Harddisk kapasitas minimal 80 GB 5 Koneksi internet minimal 64 kbps
4.1.3. Implementasi Perangkat Lunak
Tabel 4. 2 Perangkat Lunak yang digunakan
No Perangkat Lunak Spesifikasi
1 Sistem Operasi Windows XP
2 Web Browser Mozilla Firefox, Google Chrome, Internet Exploler
4.1.4. Implementasi Basis Data
Implementasi data dalam aplikasi e-commerce pada toko Heinzy Komputer ini menggunakan DBMS (Data Base Management System) dan sebuah GUI database untuk memudahkan tugas administrator. DBMS yang digunakan untuk mengimplentasikannya adalah MySQL. Rancangan data beserta nama file query yang digunakan adalah sebagai berikut:
1. Tabel profil
Tabel profil digunakan untuk menyimpan data profil perusahaan CREATE TABLE IF NOT EXISTS `profil` (
`nama_perusahaan` varchar(30) NOT NULL, `alamat_perusahaan` text NOT NULL,
`provinsi_perusahaan` varchar(20) NOT NULL, `kota_perusahaan` varchar(20) NOT NULL, `telepon_perusahaan` varchar(15) NOT NULL, `email_perusahaan` varchar(30) NOT NULL, `keterangan` text NOT NULL,
`logo` varchar(50) NOT NULL, `bank` varchar(255) NOT NULL, `no_rekening` varchar(30) NOT NULL, `atas_nama` varchar(50) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
2. Tabel kategori
Tabel kategori digunakan untuk menyimpan data kategori barang CREATE TABLE IF NOT EXISTS `kategori` (
`kategori_id` int(11) NOT NULL AUTO_INCREMENT, `nama_kategori` varchar(25) NOT NULL,
`deskripsi_kategori` text NOT NULL, PRIMARY KEY (`kategori_id`)
175
3. Tabel bank
Tabel bank digunakan untuk menyimpan data bank CREATE TABLE IF NOT EXISTS `bank` (
`bank_id` int(11) NOT NULL AUTO_INCREMENT, `nama_bank` varchar(50) NOT NULL,
`deskripsi_bank` text NOT NULL, `no_rekening` varchar(50) NOT NULL, `atas_nama` varchar(50) NOT NULL, PRIMARY KEY (`bank_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
4. Tabel transaksi
Tabel transaksi digunakan untuk menyimpan data transaksi CREATE TABLE IF NOT EXISTS `transaksi` (
`transaksi_id` int(11) NOT NULL AUTO_INCREMENT, `tanggal_transaksi` datetime NOT NULL,
`customer` int(11) NOT NULL,
`nama_customer` varchar(30) NOT NULL, `nama_bank` varchar(50) NOT NULL, `no_rekening` varchar(20) NOT NULL, `atas_nama` varchar(50) NOT NULL, `ongkos_kirim` float NOT NULL, `diskon` float NOT NULL,
`total_transaksi` double NOT NULL, `total_transaksi_dolar` double NOT NULL, `jenis_pengiriman` varchar(10) NOT NULL, `jenis_paket` varchar(15) NOT NULL, `kota_tujuan` varchar(20) NOT NULL,
`nama_penerima` varchar(150) DEFAULT NULL, `alamat_tujuan` varchar(150) NOT NULL,
`jenis_pembayaran` varchar(20) NOT NULL, `tanggal_pembayaran` varchar(20) NOT NULL, `status` int(11) NOT NULL,
`status_baca` tinyint(1) NOT NULL, `resi_jne` varchar(50) NOT NULL, PRIMARY KEY (`transaksi_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=62 ;
5. Tabel backup
Tabel backup digunakan untuk menyimpan data backup CREATE TABLE IF NOT EXISTS `backup` (
`waktu` datetime NOT NULL, `tabel` varchar(50) NOT NULL, PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
6. Tabel customers
Tabel customers digunakan untuk menyimpan data customers CREATE TABLE IF NOT EXISTS `customers` (
`customer_id` int(11) NOT NULL AUTO_INCREMENT, `nama_lengkap` varchar(30) NOT NULL,
`tempat_lahir` varchar(30) NOT NULL, `tanggal_lahir` date NOT NULL,
`jenis_kelamin` varchar(15) NOT NULL, `alamat` text NOT NULL,
`provinsi` varchar(30) NOT NULL,
`kabupaten_kota` varchar(30) NOT NULL, `kodepos` varchar(6) NOT NULL,
`telepon` varchar(15) NOT NULL, `handphone` varchar(15) NOT NULL, `paypall` varchar(50) NOT NULL, `nama_bank` varchar(30) NOT NULL, `nama_rekening` varchar(30) NOT NULL, `no_rekening` varchar(30) NOT NULL, `user_name` varchar(50) NOT NULL, `password` varchar(50) NOT NULL, `foto` varchar(50) NOT NULL,
`email` varchar(150) DEFAULT NULL, `status_confirm` int(11) NOT NULL, PRIMARY KEY (`customer_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=29 ;
7. Tabel diskon
Tabel diskon digunakan untuk menyimpan data diskon CREATE TABLE IF NOT EXISTS `diskon` (
`diskon_id` int(11) NOT NULL AUTO_INCREMENT, `judul` varchar(35) NOT NULL,
`tanggal_awal` date NOT NULL, `tanggal_akhir` date NOT NULL, `minimal_beli` double NOT NULL, `besar_diskon` float NOT NULL,
177
`deskripsi` text NOT NULL, PRIMARY KEY (`diskon_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
8. Tabel barang
Tabel barang digunakan untuk menyimpan data barang CREATE TABLE IF NOT EXISTS `barang` (
`barang_id` int(11) NOT NULL AUTO_INCREMENT, `kategori` int(11) NOT NULL,
`sub_kategori` int(11) NOT NULL, `kode_barang` varchar(10) NOT NULL, `nama_barang` varchar(50) NOT NULL, `berat` float NOT NULL,
`harga` double NOT NULL, `stok` int(11) NOT NULL,
`deskripsi_barang` text NOT NULL, `rekomendasi` varchar(10) NOT NULL, `status_aktif` varchar(15) NOT NULL, `status_barang` varchar(20) NOT NULL, `gambar_1` varchar(100) NOT NULL, `gambar_2` varchar(100) NOT NULL, `gambar_3` varchar(100) NOT NULL, `gambar_4` varchar(100) NOT NULL, `input_by` varchar(30) NOT NULL, `input_date` datetime NOT NULL,
`update_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`barang_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=21 ;
9. Tabel pengguna
Tabel pengguna digunakan untuk menyimpan data pengguna atau admin CREATE TABLE IF NOT EXISTS `pengguna` (
`user_id` int(11) NOT NULL AUTO_INCREMENT, `akses` int(11) NOT NULL,
`nama` varchar(35) NOT NULL, `username` varchar(30) NOT NULL, `password` varchar(50) NOT NULL, `email` varchar(50) NOT NULL, `kata_kunci` varchar(40) NOT NULL, PRIMARY KEY (`user_id`)
10. Tabel paket
Tabel paket digunakan untuk menyimpan data paket CREATE TABLE IF NOT EXISTS `paket` (
`paket_id` int(11) NOT NULL AUTO_INCREMENT, `nama_paket` varchar(35) NOT NULL,
`deskripsi_paket` text NOT NULL, PRIMARY KEY (`paket_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
11. Tabel ongkos_kirim
Tabel diskon digunakan untuk menyimpan data ongkos_kirim CREATE TABLE IF NOT EXISTS `ongkos_kirim` (
`ongkir_id` int(11) NOT NULL AUTO_INCREMENT, `paket` int(11) NOT NULL,
`paket_detail` int(11) NOT NULL, `kota_asal` varchar(35) NOT NULL, `kota_tujuan` varchar(35) NOT NULL, `tarif` double NOT NULL,
PRIMARY KEY (`ongkir_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=92 ;
12. Tabel retur
Tabel retur digunakan untuk menyimpan data retur CREATE TABLE IF NOT EXISTS `retur` (
`id_retur` int(11) NOT NULL AUTO_INCREMENT, `customer_id` varchar(150) NOT NULL,
`transaksi_id` varchar(150) NOT NULL, `nama_barang` varchar(150) NOT NULL, `keterangan_retur` varchar(150) NOT NULL, `tanggal_retur` datetime NOT NULL,
`tanggal_kirim_balik` datetime NOT NULL, `status` varchar(10) NOT NULL,
PRIMARY KEY (`id_retur`)
179
4.1.5. Implementasi Class
Pembangunan aplikasi ini didasarkan pada perancangan yang telah dibahas pada bab 3. Dari perancangan tersebut, terdapat class-class yang telah terbentuk dari use case. Class-class tersebut juga diimplementasikan dalam bentuk file-file *.php yang nantinya file-file *.php yang berisi class-class tersebut digunakan dalam pembuatan dan jalannya proses dalam aplikasi. Berikut implementasi class yang telah terdefinisi dan digunakan dalam aplikasi. Implementasi Class E- commerce pada toko Heinzy Komputer dapat dilihat pada tabel 4.3.
Tabel 4. 3 Implementasi Class
No Nama Nama File Fisik
1 admin_control controllers/admin.php 2 barang_control controllers/barang.php 3 diskon_control controllers/diskon.php 4 kategori_control controllers/kategori.php 5 pemesanan_control controllers/pemesanan.php 6 profil_control controllers/profil.php 7 users_control controllers/users.php 8 banks_control controllers/banks.php 9 backups_control controllers/backups.php 10 paket_control controllers/paket.php
11 ongkos_kirim_control controllers/ongkos_kirim.php 12 retur_control Controllers/retur.php
13 user_model models/user_model.php 14 barang_model models/barang_model.php 15 diskon_model models/diskon_model.php 16 kategori_model models/kategori_model.php 17 pemesanan_model models/pemesanan_model.php 18 profil_model models/profil_model.php 19 users_model models/users_model.php 20 banks_model models/banks_model.php 21 backups_model models/backups_model.php 22 paket_model models/paket_model.php 23 ongkos_kirim_model models/ongkir_model.php 24 retur_model models/retur.php
26 barang_view views/admin/barang.php 27 diskon_view views/admin/diskon.php 28 kategori_view views/admin/kategori.php 29 pemesanan_view views/admin/pemesanan.php 30 profil_view views/admin/profil.php 31 users_view views/admin/users.php 32 banks_view views/admin/banks.php 33 backups_view views/admin/backups.php 34 paket_view views/admin/paket.php 35 ongkos_kirim_view views/admin/ongkir.php 36 retur_view views/admin/retur.php
4.1.6. Implementasi Antarmuka
Implementasi antar muka dilakukan dengan setiap tampilan program yang dibangun dan pengkodeannya dalam bentuk file program. Berikut ini adalah implementasi antarmuka untuk pengguna dan admin pada aplikasi e-commerce toko Heinzy Komputer dapat dilihat pada tabel
Tabel 4. 4 Implementasi Antarmuka untuk Admin
No Menu Deskripsi Nama File
1 Login Digunakan sebagai halaman login pengguna.
views/admin/login.php
2 Home Digunakan sebagai menu halaman utam admin
views/admin/index.php
3 Profil Perusahaan
Digunakan sebagai halaman untuk mengedit data profil perusahaan
views/admin/profil_perusahaan.php
4 Bantuan Digunakan sebagai halaman untuk melakukan input kata untuk menu help
views/admin/bantuan.php
5 Paket Ongkir Digunakan sebagai halaman untuk mengolah data paket ongkir
views/admin/ongkos_kirim.php
6 Daftar Data Bank
Digunakan sebagai halaman untuk mengolah data bank
views/admin/bank.php
7 Daftar Harga Ongkir
Digunakan sebagai halaman untuk mengolah data harga ongkir
views/admin/ongkos_kirim.php
8 Pengaturan Diskon
Digunakan sebagai halaman untuk mengolah data diskon
181
9 Kategori Digunakan sebagai halaman untuk mengolah data kategori
views/admin/kategori.php
10 Barang Digunakan sebagai halaman untuk mengolah data barang
views/admin/barang.php
11 Customer Digunakan sebagai halaman untuk mengolah data
pelanggan
views/admin/customer.php
12 Retur Digunakan sebagai halaman untuk melihat data retur
views/admin/retur.php
14 Daftar Penjualan Digunakan sebagai halaman untuk mengolah data penjualan
views/admin/penjualan.php
15 Laporan Digunakan sebagai halaman untuk mengolah data laporan penjualan
views/admin/laporan.php
16 Pengaturan Digunakan sebagai halaman untuk mengolah data admin
views/admin/profil.php
17 Keluar Digunakan sebagai menu untuk keluar dari halaman admin
views/admin/index.php
Tabel 4. 5 Implementasi Antarmuka untuk Member
No Menu Deskripsi Nama File
1 Beranda Digunakan sebagai halaman utama member
views/member/index.php
2 Kategori Produk Digunakan sebagai halaman untuk melihat barang berdasar kategori
views/member/kategori.php
3 Produk Terbaru Digunakan sebagai halaman untuk melihat barang terbaru
views/member/index.php
4 Umum Digunakan sebagai halaman untuk melihat data perusahaan dan bantuan
views/member/profile.php
5 Tracking Barang Digunakan sebagai halaman untuk tracking barang
views/member/index.php
6 Daftar Pengguna Digunakan sebagai halaman untuk daftar menjadi member
views/member/user/create.php
7 Masuk Digunakan sebagai halaman untuk login ke menu member
8 Search Digunakan sebagai menu untuk melakukan pencarian barang
views/member/index.php
9 Lihat Detail Digunakan sebagai halaman untuk melihat detail barang
views/member/index.php
10 Keranjang Belanja Digunakan sebagai halaman untuk melihat keranjang belanja
views/member/index.php
11 Daftar Belanja Anda
Digunakan sebagai halaman untuk melihat daftar belanja member dan status pemesanan
views/member/index.php
12 Daftar retur Digunakan sebagai menu untuk melihat daftar barang yang diretur
views/member/index.php
13 Keluar Digunakan sebagai menu untuk keluar dari halaman member
views/member/index.php
4.2 Pengujian Sistem
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 lunak tersebut. Pengujian yang digunakan untuk menguji sistem yang baru adalah metode pengujian black box. Pengujian black box berfokus pada persyaratan fungsional perangkat lunak.
4.2.1. Rencana Pengujian
Rencana pengujian yang akan dilakukan dengan menguji sistem secara alpha dan beta. Pengujian pembangunan e-commerce pada toko Heinzy Komputer
menggunakan data uji berdasarkan data dari toko Heinzy Komputer. Rencana pengujian selengkapnya terlihat pada tabel 4.6.
Tabel 4. 6 Rencana Pengujian Aplikasi
Kelas Uji Butir Uji Jenis Pengujian
Login
Isi data login Black Box
Verifikasi username dan
183
Lupa password Menampilkan form lupa
password Black Box
Data Laporan
Menampilkan data laporan
hasil penjualan Black Box
Cetak laporan Black Box
Profil
Menampilkan form untuk mengubah data profil akun admin
Black Box
Ubah password akun Black Box Simpan perubahan Black Box Backup dan Restore Backup database Black Box Restore database Black Box
Logout Menghapus session user Black Box
Kategori Menampilkan data kategori Black Box Tambah data kategori Black Box Ubah data kategori Black Box Hapus data kategori Black Box Cari data kategori Black Box Barang Menampilkan data barang Black Box Tambah data barang Black Box Ubah data barang Black Box Cari data barang Black Box Detail Barang Menampilkan data detail
barang
Black Box
Tambah data detail barang Black Box Ubah data detail barang Black Box Ongkir Menampilkan data ongkos
kirim Black Box
Ubah data ongkir Black Box Hapus data ongkir Black Box
4.2.2. Pengujian Alpha
4.2.2.1. Pengujian Aplikasi
Pengujian yang dilakukan adalah menguji semua proses yang ada di halaman website diantaranya adalah sebagai berikut :
1. Pengujian login
Pengujian login dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian login dilihat pada tabel 4.7
Tabel 4. 7 Pengujian login Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Username : admin
Data login dicari dalam database, username dan data password benar login valid dan dapat masuk ke menu utama
Username dan
Kasus dan Hasil Uji (Data Salah)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Username : admin
Pengujian logout dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian logout dilihat pada tabel 4.8
Tabel 4. 8 Pengujian logout Kasus dan Hasil Uji (Data Benar)
185
3. Pengujian tambah kategori
Pengujian tambah kategori dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian tambah kategori dilihat pada tabel 4.9
Tabel 4. 9 Pengujian tambah kategori Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Tambah data
Kasus dan Hasil Uji (Data Salah)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan
Mengisi data kategori
Kategori tidak dapat disimpan dalam database karena ada data yang tidak diisi
4. Pengujian edit kategori
Pengujian edit kategori dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian edit kategori dilihat pada tabel 4.10
Tabel 4. 10 Pengujian edit kategori Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan edit kategori Menampilkan form
Data kategori
5. Pengujian hapus kategori
Pengujian hapus kategori dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian hapus kategori dilihat pada tabel 4.11
Tabel 4. 11 Pengujian hapus kategori Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Ceklist data
6. Pengujian hapus member
187
Tabel 4. 12 Pengujian hapus member Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Ceklist data
7. Pengujian cari member
Pengujian cari member dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian cari member dilihat pada tabel 4.13
Tabel 4. 13 Pengujian cari member Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Nama member
8. Pengujian tambah barang
Pengujian tambah barang dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian tambah barang dilihat pada tabel 4.14
Tabel 4. 14 Pengujian tambah barang Kasus dan Hasil Uji (Data Benar)
Kasus dan Hasil Uji (Data Salah)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Mengisi data
barang
barang tidak dapat disimpan dalam database karena ada data yang tidak diisi
Sistem tidak dapat
9. Pengujian edit barang
Pengujian edit barang dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian edit barang dilihat pada tabel 4.15
Tabel 4. 15 Pengujian edit barang Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan edit barang Menampilkan form
ubah barang
10. Pengujian hapus barang
189
Tabel 4. 16 Pengujian hapus barang Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Ceklist data
11. Pengujian cari barang
Pengujian cari barang dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian cari barang dilihat pada tabel 4.17
Tabel 4. 17 Pengujian cari barang Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan ketik nama barang
Pengujian laporan dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian laporan dilihat pada tabel 4.18
Tabel 4. 18 Pengujian laporan Kasus dan Hasil Uji (Data Benar)
13. Pengujian daftar member
Pengujian daftar member dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian daftar member dilihat pada tabel 4.19
Tabel 4. 19 Pengujian daftar member Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Masuk/Daftar Menampilkan form
daftar member dan login member
Pengujian konfirmasi dilakukan dengan memasukan data untuk mendapatkan hasil yang diinginkan. Pengujian konfirmasi dilihat pada tabel 4.20
Tabel 4. 20 Pengujian konfirmasi Kasus dan Hasil Uji (Data Benar)
Data Masukkan Yang Diharapkan Pengamatan Kesimpulan Konfirmasi Tampil form pengisian
191
4.2.3. Pengujian Beta
Pengujian beta ini dilakukan dengan cara melakukan pengujian langsung di
tempat penelitian dengan membagikan kuesioner kepada masyarakat umum yang
telah ditentukan dan melakukan wawancara kepada pengguna sistem di toko Heinzy
Komputer. Penelitian ini dilakukan di dua lingkungan yaitu :
1. Lingkungan masyarakat umum
Penelitian di lingkungan pada masyarakat umum khususnya yang sudah terbiasa dengan teknologi internet, dilakukan supaya dapat mengetahui sejauh mana sistem yang dibangun dapat memberikan kemudahan masyarakat umum untuk melakukan transaksi pembelian barang secara online.
2. Lingkungan di toko Heinzy Komputer
Penelitian di lingkungan toko Heinzy Komputer dilakukan supaya dapat mengetahui sejauh mana sistem yang dibangun dapat menjadi alternatif penyelesaian permasalahan yang ada.
4.2.3.1. Perencanaan Pengujian Beta
Untuk melihat ketercapaian tujuan penelitian, maka akan dilakukan uji pertanyaan kepada calon pengguna sistem dengan cara kuesioner dan wawancara. Adapun bentuk rancangan dari uji beta yang akan dilakukan adalah sebagai berikut :
dilakukan kuesioner kepada responden yang telah ditentukan. Adapun pertanyaan yang akan diajukan :
a. Dengan adanya website ini dapat membantu anda bertransaksi di tengah kesibukan anda?
b. Dengan adanya website ini anda dapat bertransaksi tanpa harus datang ke toko?
2. Untuk melihat ketercapaian tujuan membantu toko Heinzy Komputer dalam memberikan informasi mengenai barang yang up to date kepada pelanggannya, maka akan dilakukan wawancara kepada pemilik toko. Adapun pertanyaan yang akan diajukan :
a. Apakah website ini membantu anda dalam memberikan informasi mengenai barang yang up to date kepada pelanggan anda?
b. Apakah sarana untuk menampilkan informasi yang ada di website sudah cukup untuk menampilkan informasi barang yang anda miliki?
3. Untuk melihat ketercapaian tujuan membantu toko Heinzy Komputer dalam mengelola data penjualan dan pembuatan laporan yang akurat. Adapun pertanyaan yang akan diajukan :
a. Apakah anda setuju website ini dapat membantu dalam mengelola data penjualan?
b. Apakah website ini dapat membantu anda dalam pembuatan laporan penjualan yang akurat?
4.2.3.2. Hasil Pengujian Beta
Setelah melakukan pengujian seperti yang telah direncanakan sebelumnya, maka telah didapat jawaban dari pertanyaan yang telah diberikan untuk wawancara kepada pemilik toko dan pertanyaan yang telah diberikan untuk kuesioner kepada responden.
193
Berikut ini adalah hasil pertanyaan dari wawancara yang telah dilakukan kepada pemilik toko,
1. Apakah website ini membantu anda dalam memberikan informasi mengenai barang yang up to date kepada pelanggan anda?
Jawaban :
Ya, saya tinggal mengcopy link website ini ke beberapa group di situs jejaring sosial yang saya ikuti, website bisa langsung diakses dan semua barang yang dijual di toko saya dapat dilihat, tidak perlu lagi memposting tiap ada barang yang baru terlebih kalau barangnya banyak sangat merepotkan.
2. Apakah sarana untuk menampilkan informasi yang ada di website sudah cukup untuk menampilkan informasi barang yang anda miliki?
Jawaban :
Ya, lumayan cukup.
3. Apakah anda setuju website ini dapat membantu dalam mengelola data penjualan?
Jawaban :
Ya, sangat membantu, karena dengan adanya website ini cukup membantu saya untuk mengelola data barang dan penjualan.
4. Apakah website ini dapat membantu anda dalam pembuatan laporan penjualan yang akurat?
Jawaban :
b) Hasil Pengujian Beta Untuk Responden
Berikut ini adalah hasil pertanyaan dari kuesioner yang telah dilakukan kepada reponden yang telah dipilih.
1. Dengan adanya website ini dapat membantu anda bertransaksi di tengah kesibukan anda?
Tabel 4. 21 Hasil kuisioner pertanyaan 1
Pertanyaan Nilai Jawaban Responden Nilai x Responden
1
5 Sangat Setuju 2 10
4 Setuju 12 48
3 Cukup Setuju 4 12
2 Kurang Setuju 2 4
1 Tidak Setuju 0 0
Jumlah 20 74
Berdasarkan data hasil kusioner tersebut, dapat dicari prosentase jawaban dengan menggunakan rumus 2.4 :
� = 74
20 � 5× 100 = 74 %
Secara kontinum dapat digambarkan sebagai berikut :
Skala
Tidak Setuju Kurang Setuju Cukup Setuju Setuju Sangat Setuju
0 20 40 60 74 80 100
Berdasarkan hasil persentase diatas maka dapat disimpulkan 74% menyatakan setuju bahwa website ini dapat membantu bertransaksi di tengah kesibukan.
195
Tabel 4. 22 Hasil kuisioner pertanyaan nomor 2
Pertanyaan Nilai Jawaban Responden Nilai x Responden
2
5 Sangat Setuju 2 10
4 Setuju 16 64
3 Cukup Setuju 2 6
2 Kurang Setuju 0 0
1 Tidak Setuju 0 0
Jumlah 20 80
Berdasarkan data hasil kusioner tersebut, dapat dicari prosentase jawaban dengan menggunakan rumus 2.4 :
� = 80
20 � 5× 100 = 80 %
Secara kontinum dapat digambarkan sebagai berikut :
Skala
Tidak Setuju Kurang Setuju Cukup Setuju Setuju Sangat Setuju
0 20 40 60 80 100
Berdasarkan hasil persentase diatas maka dapat disimpulkan 80% menyatakan setuju bahwa dengan adanya website ini dapat bertransaksi tanpa harus datang ke toko.
4.2.4. Kesimpulan Pengujian Beta
Berdasarkan pengujian beta yang telah dilakukan, bahwa dapat diambil kesimpulan bahwa :
1. Website ini membantu pelanggan agar dapat bertransaksi tanpa harus datang ke toko.
2. Website ini memudahkan toko Heinzy Komputer untuk memberikan informasi tentang barang yang up to date kepada pelanggannya.
9 2.1 Tinjauan perusahaan
Tinjauan perusahaan terdiri dari profil singkat perusahaan, struktur organisasi dan fungsi perusahaan.
2.1. 1 Profil Singkat Perusahaan
Toko Heinzy Komputer merupakan toko milik pribadi yang bergerak dalam bidang penjualan peralatan komputer. Toko ini dirintis oleh pemiliknya saudara Hendi Satria sejak tahun 2010 hingga sekarang. Beralamat di areal pertokoan BTM (Bandung Trade Mall) Blok GF A1 No 7 yang terletak di jalan cicadas Bandung. Peralatan komputer yang dijual di toko Heinzy Komputer terdiri dari peralatan yang baru dan peralatan yang bekas pakai. Penjualan barang di toko ini dilakukan dengan cara penjual berhubungan langsung ke konsumen dan menggunakan prinsip B2C(Bussiness to Customer) yang dengan kata lain penjual memasarkan produknya langsung ke konsumen untuk selanjutnya digunakan untuk kepentingan konsumen tersebut.
2.1. 2 Logo Perusahaan
Berikut adalah logo perusahaan toko Heinzy Komputer akan ditunjukkan pada gambar 2.1 berikut :
10
2.1. 3 Struktur Organisasi dan Fungsi Perusahaan
Dalam menjalankan kegiatan usahanya, toko Heinzy komputer mempunyai struktur organisasi dengan jabatan dan tugas masing-masing pada setiap bagian, sehingga kegiatan operasional dapat berjalan dengan baik dan lancar.
Gambar 2.2 Struktur Organisasi Heinzy Komputer
Secara umum tugas dan fungsi organisasi dari masing-masing bagian adalah sebagai berikut :
a. Pemilik
1. Memiliki wewenang dalam menentukan kebijakan toko. 2. Menetapkan target atau memberikan intruksi pada pegawai. 3. Mengatur pengadaan barang yang ada di toko.
4. Menyimpan semua data dan dokumen toko. b. Pegawai toko
1. Melayani dan bertatap muka langsung dengan pelanggan. 2. Memelihara barang yang ada di toko.
3. Melakukan pengecekan stok barang dan melaporkan ke pemilik apabila stok barang kurang atau habis.
4. Menerima pengaduan retur. c. Kasir
1. Mengatur keuangan toko
2. Menyimpan kumpulan nota penjualan. 3. Membuat laporan penjualan.
Pemilik
2.2 Landasan Teori
Landasan teori merupakan ilmu dan teori pendukung yang dapat dijadikan referensi atau pegangan dalam pembangunan aplikasi ini.
2.2. 1 Konsep Dasar Sistem Informasi
Sistem informasi dalam sebuah sistem meliputi pemasukan data ( input ) kemudian diolah melalui suatu model dalam pemrosesan data, dan hasil informasi akan ditangkap kembali sebagai suatu input dan seterusnya sehingga membentuk siklus informasi yang dapat diperoleh dari sistem informasi sebagai sistem khusus dalam organisasi untuk mengolah informasi tersebut
Sistem informasi adalah suatu sistem yang dibuat oleh manusia yang terdiri dari komponen-komponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi. Pengertian lain dari sistem informasi adalah sekumpulan prosedur organisasi yang pada saat dilaksanakan dan memberikan informasi bagi pengambil keputusan dan/atau untuk mengendalikan informasi. [4]
2.2. 2 Komponen Sistem Informasi
Komponen-komponen sistem informasi adalah sebagai berikut:
a. Hardware yaitu suatu perangkat keras dalam komputer yang kita bisa sentuh dan rasakan.
b. Software yaitu suatu perangkat lunak di dalam komputer yang berfungsi untuk mengoperasikan suatu aplikasi di dalam sistem komputer.
c. Data yaitu sekumpulan karakter yang diterima sebagai masukan ( input ) untuk sistem informasi dan disimpan serta diolah.
d. Prosedur yaitu suatu urutan pekerjaan tata usaha yang biasanya melibatkan beberapa orang dalam satu bagian atau lebih, dan disusun untuk menjamin adanya perlakuan yang seragam terhadap transaksi-transaksi perusahaan yang terjadi.
12
2.2. 3 Tujuan Sistem Informasi
Sistem Informasi memiliki beberapa tujuan, yaitu: 1. Integrasi sistem
a. Menghubungkan sistem individu/kelompok
b. Pengkolektifan data dan penyambungan secara otomatis c. Peningkatan koordinasi dan pencapaian sinergi
2. Efisiensi pengelolaan
a. Penggunaan basis data dalam upaya kesamaan pengadministrasian data
b. Pengelolaan data berkaitan dengan karakteristik Informasi c. Penggunaan dan pengambilan Informasi
3. Dukungan keputusan untuk manajemen
a. Melengkapi Informasi guna kebutuhan proses pengambilan kebutuhan b. Akuisisi Informasi eksternal melalui jaringan komunikasi.
c. Ekstraksi dari Informasi internal yang terpadu
2.2. 4 Manfaat Sistem Informasi
Sistem Informasi memiliki beberapa manfaat, yaitu: 1. Menghemat tenaga kerja
2. Peningkatan efisiensi 3. Mempercepat proses 4. Perbaikan dokumenasi 5. Pencapaian standar 6. Perbaikan keputusan
2.2. 5 Elektronic Commerce
E-commerce (Electronic Commerce) atau perdagangan elektronikmerupakan suatu cara berbelanja atau berdagang secara online atau direct selling yang memanfaatkan fasilitas internet dimana terdapat website yang
dapat menyediakan layanan “get and deliver” e-commerce akan merubah semua
Perdagangan elektronik melakukan hal yang mirip dengan perdagangan tradisional, tetapi ia memiliki kelebihan-kelebihan yang secara langsung dapat bermanfaat untuk meningkatkan pendapatan dan keuntungan perusahaan. Dengan fleksibilitasnya, perdagangan elektronik dapat memangkas biaya-biaya pemasaran dengan kemudahannya dan kecanggihannya dalam menyampaikan informasi tentang barang dan jasa langsung ke konsumen di mana pun mereka berada (tidak terbatas oleh jangkauan geografis perusahaan). [6]
2.2. 6 Jenis-Jenis E-commerce
E-commerce dapat dibagi menjadi dua jenis, yaitu Business to Business (B2B) dan Business to Consumer (B2C, retail). Kedua jenis e-commerce ini memiliki karakteristik yang berbeda, diantaranya adalah sebagai berikut : [6] 1. Business to Business e-commerce (B2B) memiliki karakteristik :
a. Trading partners yang sudah saling mengetahui dan antara mereka sudah terjalin hubungan yang berlangsung cukup lama. Pertukaran informasi hanya berlangsung diantara mereka karena sudah sangat mengenal, maka pertukaran informasi tersebut dilakukan atas dasar kebutuhan dan kepercayaan.
b. Pertukaran data dilakukan secara berulang-ulang dan berkala dengan format data yang telah disepakati. Jadi service yang digunakan antara kedua sistem tersebut sama dan menggunakan standar yang sama pula.
c. Salah satu pelaku tidak harus menunggu partner mereka lainnya untuk mengirimkan data.
d. Model yang umum digunakan adalah peer-to-peer, dimana processing intelligence dapat didistribusikan dikedua pelaku bisnis.
2. Business to consumer e-commerce (B2C) memiliki karakteristik :
a. Terbuka untuk umum, dimana informasi disebarkan secara umum pula. b. Service yang dilakukan juga bersifat umum sehingga mekanismenya dapat
14
c. Service yang diberikan adalah berdasarkan permintaan. Konsumen berinisiatif sedangkan produsen harus siap memberikan respon terhadap inisiatif konsumen tersebut.
Sering dilakukan sistem pendekatan client-server, dimana konsumen di pihak client menggunakan sistem yang minimal (berbasis web) dan penyedia barang/jasa (business procedure) berada pada pihak server.
2.2. 7 Basis Data (Database)
Basis data terdiri atas 2 kata, yaitu Basis dan Data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang atau berkumpul.Sedangkan data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam dalam bentuk angka, huruf, symbol, teks, gambar, bumi, atau kombinasinya. [5]
2.2. 8 Diagram Aliran Dokumen (Flowmap)
Bagan alir dokumen atau disebut juga bagan alir formulir merupakanbagan alir yang menunujukan arus dari laporan dan formulir termasuk tembusantembusannya.Bagan alir dokumen menggambarkan aliran dokumen dan informasiarus antar area pertanggung jawaban di dalam sebuah organisasi.Secara rincibagan alir ini menunjukan dari mana dokumen tersebut berasal, distribusinya,tujuan digunakannya dokumen tersebut dan lain-lain.Bagan alir ini bermanfaatuntuk menganalisis kecukupan prosedur pengawasan dalam sebuah sistem.
2.2. 9 ERD (Entity Relationship Diagram)
data, karena hal ini relative kompleks. Dengan ERD kita dapat menguji model dengan mengabaikan proses yang harus dilakukan ERD menggunakan sejumlah notasi dan simbol untuk menggambarkan struktur dan hubungan antar data, pada dasarnya ada 3 macam simbol yang digunakan yaitu : [5]
1. Entitas (entity)
Entitas adalah sesuatu yang memiliki keberadaan yang unik dan berbeda, walaupun tidak harus dalam bentuk fisik. Abstraksi, misalnya, biasanya dianggap juga sebagai suatu entitas. Dalam pengembangan sistem, entitas digunakansebagai model yang menggambarkan komunikasi dan pemrosesan internal seperti misalnya membedakan dokumen dengan pemrosesan pesanan. 2. Relasi (Relationship)
Relasi adalah hubungan alamiah yang terjadi antara satu atau lebih entitas, misal proses pembayaran pegawai. Kardinalitas menentukan kejadian suatu entitas untuk satu kejadian pada entitas yang berhubungan.Misal, mahasiswa bisa mengambil banyak mata kuliah.
3. Atribut (Attribute)
Entitas atau entity mempunyai elemen yang disebut atribut, dan berfungsi mendeskripsikan karakter entitas.
4. Kardinalitas (Cardinality)
Menyatakan jumlah anggota entitas yang terlibat didalam relasi yang terjadi.dalam hal ini relasi yang terjadi akan membentuk relasi hubungan (relationship instance).
1. Hubungan satu ke satu (One to one relationship).
Yang berarti entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas B, dan begitu juga sebaliknya setiap entitas pada himpunan entitas B berhubungan paling banyak dengan satu entitas pada himpunan entitas A.
2. Hubungan satu ke banyak (One to many relationship)
16
himpunan entitas B berhubungan paling banyak dengan satu entitas pada himpunan entitas A.
3. Hubungan banyak ke banyak (Many to many relationship).
Yang berarti entitas pada himpunan entitas A berhubungan dengan banyak entitas pada satu himpunan entitas B dan begitu juga sebaliknya setiap entitas pada himpunan entitas B berhubungan dengan banyak himpunan entitas A.
2.2. 10 Object Oriented Program (OOP)
Object Oriented Programming (OOP) adalah suatu metode pemrograman yang berbasiskan pada objek, secara singkat pengertian dari OOP adalah koleksi objek yang saling berinteraksi dan saling memberikan informasi satu dengan yang lainnya. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Konsep dasar dari Pemrograman
Berorientasi Objek Pemrograman orientasi-objek menekankan konsep berikut : 1. Object
Object adalah sebuah struktur yang menggabungkan data dan prosedur untuk bekerja bersama-sama.
2. Class
Class adalah kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebuah class merupakan dasar dari modularitas dan struktur dalam pemrograman berorientasi objek.
3. Abstraction
Abstraction adalah kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti.
Setiap objek dalam sistem melayani sebagai model dari “pelaku” abstrak yang
dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan
4. Encapsulation
Encapsulation memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
5. Polymorphism
Polymorphism adalah kemampuan dua buah objek yang berbeda untuk merespon pesan permintaan yang sama dalam suatu cara yang unik.
Ada beberapa diagram yang digunakan dalam Objek Oriented Program, diantaranya :
a) Use Case Diagram
Use case atau diagram use case merupakan pemodelan untuk kelakukan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Syarat penamaan pada use case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami.[9]
Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case.
1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang.
18
Gambar 2.3 Use Case Diagram b) Class Diagram
Class adalah sebuah spesifikasi yang jika diinisiasi akan menghasilkan sebuah objek, kelas juga merupaka inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan atribut (property) pada suatu sistem, sekaligus menawarkan layanan untuk dapat memanipulasi keadaan atribut tersebut. Class memiliki empat area pokok, yaitu nama class yang disertai dengan stereotype, sebuah atribut, sebuah metode dan multiplicity (dependency).
Sedangkan metode dan atribut memiliki salah satu sifat berikut :
1. Private, atribut yang hanya terlihat oleh kelas itu sendiri dan teman dari kelas tersebut.
2. Protected, atribut yang hanya terlihat oleh kelas itu sendiri, sub-kelasnya atau teman kelas tersebut.
3. Public, atribut yang dapat dilihat dari dalam dan dari luar paket yang mengandung kelas yang bersangkutan.
4. Primer, kelas yang berperan sebagai induk dari kelas lainnya. 5. Esential, sifat yang diturunkan dari kelas lainnya.
Gambar 2.4. Multiplicity Banyak ke Banyak
Dari penjelasan tersebut maka dapat disimpulkan bahwa class diagram adalah sebuah diagram yang menggambarkan sebuah struktur dari deskripsi kelas, package, objek dan hubungan antar kelas seperti, entertainment, pewarisan,
association, dan sebagainya.
c) Behaviour Diagram
Behavior diagram dapat dikelompokkan menjadi tiga diagram, yaitu :
a. Statechart Diagram
Statechart diagram berfungsi untuk memodelkan prilaku dinamis satu kelas
20
b. Activity Diagram
Activity diagram memodelkan alur kerja (work flow) sebuah proses bisnis dan urutan aktivitas dalam suatu proses.
c. Interaction Diagram
Iinteraction diagram dibagi menjadi dua model diagram yaitu :
1. Sequence diagram menjelaskan interaksi objek yang disusun dalam suatu urutan waktu. Diagram ini secara khusus bersosialisasi dengan use case. Sequence diagram, memperlihatkan tahap demi tahap apa
yang seharusnya terjadi untuk menghasilkan sesuatu dalam use case 2. Collaboration diagram melihat pada interaksi dan hubungan terstruktur
antar objek. Tipe diagram ini menekankan pada hubungan (relationship) antar objek, sedangkan sequence diagram menekankan pada urutan kejadian. Dalam collaboration diagram terdapat beberapa objek, link, dan message.
d) Implementation Diagram
Implementation diagram dibagi menjadi dua diagram, yaitu :
a) Component Diagram menggambarkan alokasi semua kelas dan objek ke dalam komponen-komponen dalam desain fisik sistem software. Diagram ini memperlihatkan pengaturan dan kebergantungan antara komponen-komponen software, seperti source code, binary code, dan komponen tereksekusi (execute components)
b) Deployment Diagram memperlihatkan pemetaan software kepada hardware. Dimana akan berjalan (di server/multitier, standalone atau lainnya), dan menggambarkan model koneksi dan kemampuan jaringan dan hal lainya yang bersifat fisik.
2.2. 11 Unified Modeling Language (UML)
dengan kemunculannya telah memberikan sumbangan yang besar pada developer pengembang bahasa pemrograman berorientasi objek selanjutnya. Perkembangan aktif dari pemrograman berorientasi objek mulai menggeliat ketika berkembangnya bahasa pemrograman Smalltalk pada awal 1980-an yang kemudian diikuti dengan perkembangan bahasa pemrograman Secara aktual, penggunaan bahasa pemrograman berorientasi objek pada saat itu masih terbatas, namun telah banyak menarik perhatian di saat itu.[9]
Sekitar lima tahun setelah Smalltalk berkembang, maka berkembang pula metode pengembangan berorientasi objek. Metode yang pertama diperkenalkan oleh Sally Shlaer dan Stephen Mellor (Shlaer-Mellor, 1988) dan Peter Coad dan Edward Yourdon (Coad-Yourdon, 1991), diikuti oleh Grady Booch (Booch, 1991), James R. Rumbaugh, Michael R. Blaha, William Lorensen, Frederick Eddy, William Premerlani (Rumbaugh-Blaha- Premerlani-Eddy-Lorensen, 1991), dan masih banyak lagi. Buku terkenal yang juga berkembang selanjutnya adalah karangan Ivar Jacobson (Jacobson, 1992) yang menerangkan perbedaan pendekatan yang fokus pada use case dan proses pengembangan. Sekitar lima tahun kemudian muncul buku yang membahas mengenai metodologi berorientasi objek yang diikuti dengan buku-buku yang lainnya. Di dalamnya juga membahas mengenai konsep, definisi, notasi, terminologi, dan proses mengenai metodologi berorientasi objek.
22
mengajukan proposal agar adanya standardisasi pemodelan berorientasi objek dan pada bulan September 1997 UML diakomodasi oleh OMG sehingga sampai saat ini UML telah memberikan kontribusinya yang cukup besar di dalam metodologi berorientasi objek dan hal-hal yang terkait di dalamnya.
2.2. 12 Model – View – Controler
Model-View-Controller atau MVC adalah sebuah metode untuk membuat sebuah aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, antarmuka pengguna, dan bagian yang menjadi kontrol dalam sebuah aplikasi web. Bagian–bagian dari MVC adalah :
1. Model
Model mewakili struktur data. Biasanya model berisi fungsi-fungsi yang membantu seseorang dalam pengelolaan basis data seperti memasukkan data ke basis data, pembaruan data dan lain-lain.
2. View
View adalah bagian yang mengatur tampilan ke pengguna. Bisa dikatakan berupa halaman web.
3. Controller
Controller merupakan bagian yang menjembatani model dan view. Controller berisi perintah-perintah yang berfungsi untuk memproses suatu data dan mengirimkannya ke halaman web.
2.2. 13 Code Igniter
CodeIgniter adalah aplikasi open source yang berupa framework dengan
sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang pemrogram, tanpa harus membuat fungsi atau class dari awal.
Ada beberapa alasan mengapa menggunakan framework:
a. Mempercepat dan mempermudah pembangunan sebuah aplikasi web. b. Relatif memudahkan dalam proses maintenance karena sudah ada pola
tertentu dalam sebuah framework (dengan syarat programmer mengikuti pola standar yang ada)
c. Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding, pengaturan session, error handling, dll.
d. Lebih bebas dalam pengembangan jika dibandingkan CMS.
Ada beberapa kelebihan CodeIgniter (CI) dibandingkan dengan framework PHP lain yaitu:
a. Performa sangat cepat karena salah satu alasan tidak menggunakan framework adalah karena eksekusinya yang lebih lambat daripada PHP from the scracth, tapi Codeigniter sangat cepat bahkan mungkin bisa dibilang merupakan framework yang paling cepat dibanding framework yang lain.
b. Konfigurasi yang sangat minim (nearly zero configuration) tentu saja untuk menyesuaikan dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk menggunakan codeigniter dengan setting standar, hanya perlu merubah sedikit saja file pada folder config.
c. Banyak komunitas dengan banyaknya komunitas CI ini, memudahkan kita untuk berinteraksi dengan yang lain, baik itu bertanya atau teknologi terbaru.
24
2.2. 14 Personal Homepage Tool (PHP)
PHP adalah skrip bersifat server-side yang ditambahkan ke dalam HTML. Sifat server-side berarti pengerjaan skrip dilakukan di server, kemudian hasilnya dikirim ke browser. Keunggulan dari sifat server-side adalah :[10]
1. Tidak diperlukan kompatibilitas browser atau harus menggunakan browser tertentu, karena serverlah yang mengerjakan skrip PHP.
2. Dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh server, misalnya koneksi ke database.
3. Dapat berkomunikasi dengan layanan-layanan yang menggunakan protokol IMAP, SNMP, NNTP, POP3, HTTP, dan lain-lain.
4. Dapat melakukan koneksi dengan berbagai macam database, salah satunya adalah database MYSQL Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs personal). PHP pertama kali dibuat oleh Rasmus
web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek. Penulisan Script PHP Berikut ini adalah contoh penulisan script/kode dari PHP :
<HTML>
<HEAD>
<TITLE>contoh PHP</TITLE> </HEAD>
<BODY> <?php
echo ”Scripts PHP!”;
?>
</BODY> </HTML>
2.2. 15 HTML (Hyper Text Markup Language)
HTML adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuahbrowser Internet.HTML diciptakan oleh Tim Berners-Lee, seorang penelitiCERN.Berners-Lee mendasarkan HTML pada Standard Generalized MarkupLanguage. Dokumen HTML pada dasarnya adalah dokumen teks
yangmengandung kode-kode tag yang sesuai dengan spesifikasi HTML. Kode-kodetag itu nantinya diterjemahkan oleh aplikasi browser sehingga dokumen HTMLtadi bisa ditampilkan sesuai dengan yang diinginkan pembuatnya. Secara umum,HTML memiliki empat jenis elemen yaitu:[10]