Author: Fahrul Wredha Kumara
Last saved by: Prof. Fahrul Wredha Kumara
Company: Surga_Kegalapan.inc

BAB I
PENDAHULUAN

1.1	Latar Belakang Masalah
Dewasa ini seiring dengan perkembangan jaman, maka ilmu pengetahuan dan teknologi mengalami suatu kemajuan yang sangat berarti dalam berbagai bidang. Teknologi saat ini selalu diupayakan dan dituntut untuk dapat dilakukan pengembangan dengan berbagai riset dan penelitian. Dewasa ini informasi atau teknologi yang mengolah atau melayani masalah data dan informasi mengalami kemajuan yang sangat pesat. Sehingga dengan kemajuan teknologi tersebut manusia akan dituntut untuk dapat bekerja secara lebih efektif dan efisien.
Tuntutan kebutuhan akan informasi dan penggunaan komputer yang semakin banyak mendorong terbentuknya sebuah jaringan komputer yang mampu melayani berbagai kebutuhan tertentu. Dengan adanya jaringan komputer, pengelolaan informasi dapat berlangsung lebih baik lagi. Sehingga perlu adanya sistem yang dapat memberikan informasi dan pengolahan data secara akurat, tepat, dan mampu memenuhi kebutuhan pengguna sistem.
Hal inilah yang menjadi latar belakang pembuatan Tugas Akhir dengan judul Sistem Penjualan Spare Part Motor Secara Online Di Toko “Semeru Motor” Bantul Yogyakarta.

1.2	Rumusan Masalah
Dalam penyusunan Tugas Akhir ini, penulis mencoba merumuskan, mengemukakan dan menyajikan hal-hal yang berkaitan erat dengan Sistem Penjualan Spare Part Motor Secara Online Di Toko “Semeru Motor” Bantul Yogyakarta., khususnya dalam hal :
1.	Bagaimana merancang dan mengolah suatu aplikasi Sistem Penjualan Spare Part Motor Secara Online Di Toko “Semeru Motor” Bantul Yogyakarta secara terkomputerisasi
2.	Merancang aplikasi Sistem Penjualan Spare Part Motor Secara Online Di Toko “Semeru Motor” Bantul Yogyakarta dengan komputer, serta pembahasan software pendukung, perancangan dan desain layar tampilan.

1.3	Batasan  Masalah
Batasan masalah diperlukan agar pembahasan nantinya tidak menyimpang dari tujuan yang telah ditetapkan. Dalam karya tulis ini pembahasan masalah dibatasi pada : 
1.	Menampilkan dan mengolah penjualan spare part motor di toko “Semeru Motor” Bantul Yogyakarta.
2.	Sistem aplikasi ini tidak membahas tanggal jatuh tempo, stock barang. Sistem juga tidak membahas pengiriman barang.
3.	Sistem aplikasi tidak membahas retur barang, pengembalian barang, penukaran barang, barang rusak.
4.	Mengolah pembayaran.
5.	Sistem tidak membahas pembelian barang secara kredit, pembayaran harus tunai, transaksi dianggap normal
6.	Dalam program ini masalah persediaan spare part tidak dibahas.

1.4	Tujuan Penelitian 
Adapun tujuan dalam pembuatan karya tulis  ini adalah :
1.	Dari sudut pandang akademis, penulis ingin membantu membangun sebuah aplikasi yang mampu membantu proses administrasi penjualan spare part motor secara online di toko “Semeru Motor” Bantul Yogyakarta.
2.	Membangun sebuah sistem aplikasi dengan menggunakan bahasa pemrograman PHP.

1.5	Manfaat Penelitian
Manfaat  yang diharapkan dari rekayasa pemrograman adalah: 
1.	Bagi Sekolah Tinggi Manajemen Informatika dan Komputer  AKAKOM Yogyakarta
a.	Diharapkan dapat  menciptakan mahasiswa yang mampu membuat suatu aplikasi pengolahan data  yang dapat berguna dan laku dijual, sehingga Sekolah Tinggi Manajemen Informatika dan Komputer  AKAKOM Yogyakarta, dapat mencetak mahasiswa yang unggul.
b.	Dengan adanya aplikasi ini, diharapkan dapat membantu memperlancar proses administrasi penjualan spare part motor secara online di toko “Semeru Motor” Bantul Yogyakarta.
2.	Bagi Mahasiswa
a.	Dengan adanya pembuatan aplikasi pengolahan data ini, mahasiswa mau  berpartisipasi aktif dalam  belajar membuat suatu aplikasi atau sistem yang berguna dan laku dijual.
b.	Mahasiswa yang belum mengenal bagaimana cara membuat suatu apliaksi pengolahan data minimal mempunyai semangat untuk selalu belajar dan belajar.

1.6	Metode Penelitian
1.	Metode pengumpulan data
a.	Metode Observasi
Metode pengumpulan data dengan mengadakan pengamatan atau pencatatan secara langsung terhadap obyek yang di teliti.
b.	Metode Interview
Pengumpulan data yang dilakukan dengan cara mengajukan pertanyaan secara lisan/tertulis terhadap sumber-sumber yang mengetahui informasi akan obyek-obyek yang akan diteliti.
2.	Metode Studi Literatur
Semua materi yang dibahas pada Bab II dan Bab III berdasarkan pada berbagai teori yang diolah dari literatur yang tercantum pada Daftar Pustaka. 

1.7	Sistematika Penulisan
Bab I Pendahuluan
Berisi Latar Belakang Masalah, Rumusan Masalah, Batasan Masalah, Tujuan Penulisan dan Sistematika Penulisan.
Bab II Landasan Teori
Berisi semua dasar teori yang untuk selanjutnya digunakan pada bagian pembahasan. Teori yang dibahasa antara lain menyangkut PHP,  Databases, MySQL.
Bab III  Perancangan  Sistem
	Pada bab ini membuat perancangan sistem, dan permasalahan yang timbul, peralatan yang digunakan, struktur databases, alur program dan penjelasan program.
Bab IV Pelaksanaan Sistem
Membahas tentang implementasi dari sistem yang telah dirancang  sebelumnya sehingga mendapat hasil yang nyata.
Bab V  Penutup
	Berisi kesimpulan yang diperoleh dari Penulisan Ilmiah ini dan sedikit saran dari penulis.

BAB II
LANDASAN TEORI

2.1	Sekilas Tentang Toko Spare Part Motor “Semeru Motor”.
Aspek Historis
Toko Spare Part Motor "Semeru Motor" merupakan salah satu toko yang terdapat di daerah Sanden Bantul Yogyakarta. Toko ini didirikan oleh Bapak Agus Marjana pada tahun 1997.
Setelah beberapa tahun kemudian toko ini menjadi berkembang begitu pesat, sehingga sehingga toko ini sudah menjadi supplier toko-toko kecil di daerahnya. Toko ini menyediakan bermacam- macam spare part dari berbagai merk motor.

2.2 Definisi Sistem
Sistem merupakan kumpulan unit fungsi yang saling kerja sama (integrated) untuk mencapai tujuan tertentu.
Teknologi informasi merupakan suatu istilah dengan cakupan arti yang cukup luas, secara umum, teknologi informasi adalah suatu bidang yang menggeluti sekitar pemanfaatan teknologi untuk menghasilkan informasi, mengelola, menyimpan, menstransfer dari suatu bentuk yang lain, memindahkan informasi tersebut sehingga menjadi lebih mudah untuk digunakan oleh pemakainya.
Teknologi yang berhubungan dengan sistem informasi adalah basis data. Bagaimana data dibuat, diorganisir, disimpan, diakses, dipelihara dan dikontrol. Semakin maju instansi atau perusahaan maka kebutuhan akan informasi akan semakin besar dan bervariasi, untuk itu dibutuhkan basis data yang masih sesuai dengan perkembangan dari instansi atau perusahaan.
Keterkaitan antara database dan data program yang mengelolanya merupakan pertimbangan sendiri. Dan mengingat basis data sangat dibutuhkan dalam perkembangan perangkat lunak yang direncanakan, maka dibutuhkan pengetahuan mengenai database .
Basis data itu merupakan kumpulan informasi yang bermanfaat yang diorganisasikan  kedalam tata cara yang khusus, dapat juga merupakan sistem berkas terpadu yang dirancang terutama untuk meminimalkan pengulangan data.

2.3	Konsep Basis Data
Basis data merupakan bagian yang erat hubungannya tidak dapat dipisahkan lagi dengan kebutuhan si pemakai komputer secara definisi, basis data adalah koleksi data yang saling berhubungan dan memiliki arti dan terorganisir secara rapi. Data tersebut harus dapat diakses dengan urutan (order) yang berbeda – beda secara logical dengan cara yang relatif mudah.   
Suatu basis data terdiri dari 4 komponen yaitu :
1.	Data yang secara fisik menyimpan informasi – informasi.
2.	Database Management System (DBMS) yaitu perangkat lunak yang mengelola basis data.
3.	Data Description Language (DDL) dan Data Manipulation Language (DML) yaitu bahasa basis data yang berfungsi untuk mendeskripsikan data ke Database Management System dan juga memberi fasilitas untuk perubahan, pemeliharaan, dan pengelolaan basis data.
4.	Program aplikasi yang memudahkan pengguna akhir untuk mengelola data dan mendapatkannya sebagai informasi yang sesuai.
Pengolahan Data
Pengolahan data adalah operasi atas informasi yang direncanakan guna mencapai tujuan/hasil yang diinginkan kegiatan pikiran dengan bantuan tangan/suatu peralatan dan mengikuti serangkaian langkah perumusan atau pola tertentu untuk mengubah data sehingga data tersebut bentuk, susunan, sifat atau isinya menjadi lebih berguna (Moekijat,1991).

2.4 Sistem Operasi
Sistem operasi merupakan bagian dari perangkat lunak yang berfungsi sebagai penghubung antara komponen hardware (perangkat keras) dengan aplikasi yang dijalankan diatasnya. Perkembangan sistem operasi banyak dipengaruhi oleh perkembangan perangkat keras terutama kemampuan prosesor. Maka dari itu terdapat beberapa pengelompokkan sistem operasi berdasarkan lebar bit data yang biasa ditangani oleh prosesor, mulai dari system operasi yang berskala 8-bit, lalu 16-bit, kemudian 32-bit seperti Windows 9X, ME, 2000, XP, Windows NT, IBM OS/400, Sun Solaris, hingga kini yang berskala 64-bit.
Sistem operasi desktop yang dipakai dalam Windows, dimana dapat dilihat dari dua sudut pandang, pemakai dan pemogram (programmer). Dilihat dari pandangan pemakai, Windows merupakan suatu shell untuk berhubungan dan menjalankan aplikasi Windows sebagai sebuah sistem operasi multitasking yang berarti mampu menjalankan beberapa instruksi sekaligus dalam suatu siklus proses dan juga merupakan kumpulan ratusan fungsi – fungsi Application Programming Interface (API), fungsi – fungsi ini juga dikombinasikan dengan tepat akan menjadikan suatu aplikasi yang bermanfaat. 
Dengan munculnya Microsoft Windows, para pemakai PC bisa bekerja dalam lingkungan yang kaya akan grafis. Antar muka pemakai grafis menyebabkan aplikasi jauh lebih mudah dipelajari dan dipakai sebagai ganti belajar mengetikan perintah – perintah yang panjang seperti sitem operasi DOS dan UNIX yang sifatnya Command Line. Para pemakai cukup memilih dari sebuah menu dengan mengklik tombol mouse. Kotak – kotak dialog muncul ketika sebuah program membutuhkan informasi dari pemakai.
Program aplikasi “ Sistem Penjualan Spare Part Motor Secara Online Di Toko Semeru Motor Bantul Yogyakarta “ ini disusun dengan menggunakan beberapa jenis perangkat lunak yang terdiri dari Macromedia Dreamweaver MX yang digunakan untuk mendesain tampilan dari aplikasi baik menu utama maupun pemasukan data, serta MySQL for Windows yang digunakan untuk pembangunan databasenya.
	Perangkat lunak Macromedia Dreamweaver MX sangat mudah digunakan untuk membuat desain tampilan pada program aplikasi Sistem Penjualan Spare Part Motor Secara Online Di Toko Semeru Motor Bantul Yogyakarta. Kemudian untuk bahasa skrip yang digunakan pada program adalah skrip PHP Triad. Skrip ini digunakan untuk prosedur-prosedur yang berhubungan dengan database. Untuk prosedur-prosedur yang menggunakan bahasa skrip ditulis dengan menggunakan editor-editor yang sudah tersedia dalam sistem operasi Windows seperti Noteped atau perangkat lunak PHPed. Untuk setiap halaman web yang mempunyai skrip disimpan dalam beberapa bentuk ekstensi sesuai dengan fungsi masing-masing, seperti program untuk tampilan menu utama didesain dan disimpan dengan ekstensi .htm atau .html. Sedangkan untuk prosedur dan halaman web yang berhubungan dengan database disimpan dengan ekstensi .php.

2.5 Pemilihan Bahasa Pemrograman
Struktur Dasar HTML
	Bagian head umumnya berisi informasi mengenai dokumen tersebut, misalnya judul dokumen, versi HTML yang digunakan dan lain-lain. Sedangkan bagian body berisi layout atau desain halaman web.
	Sebelumnya melangkah lebih jauh, ada baiknya kita dapat mencoba membuat sebuah halaman aplikasi sederhana untuk lebih memahami struktur dasar HTML. Gunakanlah sebuah teks editor (misalnya Notepad) dan tuliskan kode berikut :
<!-contoh1.HTML->
<HTML>
<HEAD>
<TITLE> Latihan </title>
</HEAD>
<BODY>
Ini adalah contoh Aplikasi sederhana
</BODY>
</HTML>
Suatu halaman web harus dapat menarik perhatian pemakai dengan keterbaruan data sehingga untuk membuat suatu halaman web yang dinamis digunakan tag-tag HTML yang didalamnya berisi skrip-skrip php. Pemilihan perangkat lunak yang akan digunakan dengan dasar-dasar pertimbangan antara lain :
Alasan memilih sistem operasi Windows Xp
	Sistem operasi ini paling banyak dipergunakan di Indonesia serta mudah dalam penggunaannya dibandingkan sistem operasi lain seperti Linux.
Alasan memilih PHP
Memiliki kecapatan proses yang cukup baik dalam menangani pengolahan database. PHP merupakan script untuk pemrograman script web server-side, script yang membuat dokumen HTML secara on the fly, dokumen HTML yang dihasilkan dari suatu aplikasi bukan dokumen HTML yang dibuat dengan menggunakan editor teks atau editor HTML. Dengan menggunakan PHP maka maintenance suatu situs web menjadi lebih mudah. Proses update data dapat dilakukan dengan menggunakan aplikasi yang dibuat dengan menggunakan script PHP.
	PHP / FI merupakan nama awal dari PHP. PHP – Personal Home Page, FI adalah Format Interface. Dibuat pertama kali oleh Rasmus Lerdoff. PHP awalnya merupakan program CGI yang dikhususkan untuk menerima input melalui form yang ditampilkan dalam browser web. Software ini disebarkan dan dilisensikan sebagai perangkat lunak Open Source. PHP secara resmi merupakan kependekkan dari PHP : HyperText Preprocessor, merupakan bahasa script server-side yang di- sisipkan pada HTML.
	PHP secara dasar dapat mengerjakan semua yang dapat dikerjakan oleh program CGI, seperti mendapatkan data dari form, menghasilkan isi halaman web yang dinamik dan menerima cookies.
Kemampuan (Feature) PHP yang paling diandalkan adalah dukungan kepada banyak database. Membuat halaman web yang digunakan data dari database dengan sangat mudah dapat dilakukan. PHP juga mendukung untuk berkomunikasi dengan layanan lain menggunakan protocol IMAP, SNMP, NNTP, POP3, HTTP dan lainnya yang tidak terhitung. Pemrograman juga dapat membuka soket jaringan secara mentah dan berinteraksi dengan menggunakan protokol lainnya. 
Untuk lebih lengkapnya dapat digambarkan sebagai berikut:

Browser

Program
Editor

PHP

Mod_php

Mod_php

Apache
e_mail server

MySQL
Database
Server

Gambar 2.1 Hubungan Aplikasi Software Web Server
                      
Dari gambar diatas dapat dijabarkan langkah demi langkahnya:
1.	Program editor digunakan untuk menyusun kode program Php dengan tag tag  HTML atau gabungan keduanya disimpan diberi ektensi.php yang ditetapkan oleh Apache atau web server. Berdasarkan ekstensi tersebut, pada saat file diakses server akan tahu bahwa file tersebut mengandung kode php. Server akan menterjemahkan kode tersebut dan menghasilkan output dalam bentuk tag HTML yang akan dikirim ke browser client yang mengakses file tersebut.
2.	Seorang pengguna browser menjalan program dengan memanggil URC tujuan misalnya http://localhost/indexs.php.
3.	Apache menerima pemanggilan tersebut untuk diketahui bahwa file indexs.php dipegang oleh php preprocessor (mod_php) karena telah dispesifikasikan difile konfigurasi apache yang telah diaktifkan, kemudian apache memberitahukan php untuk menyetujuinya.
4.	Agar dapt melakukan hubungan ke database, MySQL diaktifkan terlebih dahulu agar dapat membuka koneksi pembuatan tabel data mengirimkan data.
5.	Basis data MySQL kemudian mengirimkan respon dan hasilnya ke Php intepretor untuk dikirim kembali.
Apache mengirim kembali Php kembali ke user sebagai respon dari pemanggilan browser untuk ditampilkan kembali berupa informasi basis data. Sedangkan e_mail server berguna untuk mengirimkan e_mail ke  siswa yang di ambil dari data siswa yang telah disimpan apablia siswa tersebut telah diterima sebagai siswa dengan menggunakan program Microsoft mail.
Alasan memilih MySQL
	Perangkat lunak ini bersifat gratis dan mudah dalam penggunaannya dibandingkan dengan database server lainnya seperti SQL Server dari Microsoft. MySQL adalah salah satu jenis database server buatan T.c.X DatakonsultAB, Swedia. MySQL sangat popular karena menggunakan SQL sebagai bahasa dasar  untuk mengakses databasenya. Juga bersifat free ( tidak perlu membayar alias gratis) untuk berbagai platform kecuali di Windows. Pada Windows, MySQL bersifat shareware (perlu membayar setelah melakukan evaluasi dan memutuskan untuk digunakan keperluan produksi). Perangkat MySQL dapat di-download dari http://www.mysql.org atau http://www.mysql.com.
Sebagai sebuah program penghasil database, MySQL tidak dapat berjalan sendiri tanpa adanya sebuah aplikasi lain (interface). MySQL dapat didukung oleh hampir semua program aplikasi baik yang open source maupun yang tidak.
MySQL termasuk jenis RDBMS (Relational Database Management System). Itulah sebabnya istilah seperti tabel,  baris dan, kolom digunakan pada MySQL. Untuk menggunakan MySQL di Windows, ada semacam tools yang dapat digunakan agar mudah menggunakan MySQL yaitu dengan MySQL Front. Dengan adanya MySQL Front, kita tidak perlu mengetikkan/menggunakan MySQL dalam bentuk DOS. Sehingga memudahkan kita dalam menggunakan MySQL karena sudah berbasis Windows.
Alasan memilih Macromedia Dreamweaver MX
	Perangkat lunak ini sangat mudah digunakan, selain bersifat WYSIWYG  perangkat lunak ini juga mendukung penggunaan layer sehingga lebih fleksibel dalam mendesain suatu halaman web dibandingkan perangkat lunak lain seperti Microsoft frontpage.Alasan memilih Apache untuk wap/webserver Internet lokal
	Perangkat lunak ini sangat mudah dalam penginstalannya serta mudah dalam penggunaannya, karena tidak perlu melakukan konfigurasi yang berbelit-belit seperti Personal Web server milik Microsoft.
Macromedia Dreamweaver merupakan sebuah software yang dikenal sebagai software web aoutoring tool. Yaitu software untuk desain dan layout halaman web. Pada Macromedia Dreamweaver MX versi terbaru ini memiliki kemampuan bukan hanya sebagai  software untuk desain web saja tetapi juga untuk editing kode serta pembuatan aplikasi web dengan menggunakan berbagai bahasa pemrograman web, antara lain JSP, PHP, ASP, dan ColdFusion MX. Saat ini Dreamweaver merupakan software utama yang digunakan oleh web desainer maupun web programmer dalam membangun suatu situs web. Hal ini disebabkan ruang kerja, fasilitas, dan kemampuan Dreamweaver MX yang mampu meningkatkan produktivitas dan efektifitas dalam desain maupun membangun suatu situs web. Selain fasilitas untuk desain layout halaman web maupun aplikasi database, Dreamweaver juga dilengkapi dengan fasilitas untuk manajemen situs yang cukup lengkap.
Adapun beberapa komponen ruang kerja standar yang terdapat pada Dreamweaver MX :
1.	Insert bar
Komponen ini mengandung tombol-tombol untuk menyisipkan berbagai macam obyek seperti image, table, dan layer ke dalam dokumen. Setiap obyek adalah kutipan kode HTML yang memberikan fasilitas bagi kita untuk mengatur atributnya sebagaimana kita menyisipkannya.
2.	Document Toolbar
Komponen ini mengandung tombol-tombol dan menu pop-up yang menyediakan tampilan berbeda dari document windows (seperti desain view dan Code view), pilihan menampilkan ruler, grid, dan beberapa operasi umum, seperti preview di browser.
3.	Document Windows
Komponen ini merupakan komponen dimana dokumen kita dibuat dan ditampilkan. Anda menyisipkan teks, image dan obyek lain di bagian ini.  Document Windows dalam Dreamweaver MX menampilkan layout web seperti yang akan kita lihat pada browser, tetapi ada batasan-batasan tertentu dimana terdapat perbedaan antara  tampilan di Dreamweaver MX dengan tampilan di browser.
4.	Panel Groups
Panel group adalah kumpulan panel berkaitan yang dikelompokkan bersama di bawah satu judul. Untuk mengekspansi panel group, klik pada panah expander di sebelah kiri nama group. Untuk membuat panel menjadi pengapung (tidak menempel pada pojok windows), lakukan drag pada paling pojok kiri dari judul group. Ada beberapa jenis panel group, antara lain design, code, application, files dan answer. Dalam suatu jenis group terdapat beberapa macam panel, misalnya group design memiliki panel HTML Styles, CSS Styles dan Behaviour. Masing-masing panel ini dapat dibuat mengapung dan terpisah dengan group dengan cara men-drag tab dari panel tersebut sehingga terlepas dari panel group.
5.	Tag Selector 
Tag Selector terletak pada status bar, tepatnya di bawah Document windows yang berfungsi menampilkan hirarki tag sekitar pilihan yang aktif pada design view. 
6.	Property Inspector
Property Inspector memberikan fasilitas untuk melihat dan mengubah berbagai property obyek yang dipilih atau teks. Setiap macam objek memiliki property yang berbeda.

7.	Site panel 
Site panel memberikan fasilitas untuk mengatur file dan folder yang membentuk situs web anda. Site panel sebenarnya merupakan anggota dari File panel group selain assets panel. Panel ini memiliki fungsi yang cukup penting karena memungkinkan kita bekerja dan mengatur file-file dari situs web dengan efisien.
8.	Tag Inspector 
Tag Inspector merupakan salah satu fasilitas baru Dreamweaver MX dimana kita dapat melihat hirarki tag dan atribut-atribut yang dapat ditambahkan atau diedit.
9.	Snippets
Snippets merupakan kode yang sering digunakan dan disisipkan pada dokumen. Dreamweaver MX menyediakan banyak kode snippets built-in untuk berbagai keperluan, mulai dari footer, header, layout navigasi, fungsi JavaScript dan sebagainya.
Alasan memilih Adobe Photoshop CS untuk editor gambar
Perangkat lunak ini sangat mudah digunakan dalam mendesain gambar, agar terlihat lebih menarik.

2.6 Spesifikasi Program
Penginformasian suatu bentuk karya seni ini disusun dari beberapa program sumber dari Script PHP serta membutuhkan sebuah web server Apache  dan server database MySQL.
Web Server Apache merupakan salah satu web server yang banyak digunakan dan gratis. Database MySQL merupakan server database yang banyak digunakan di internet karena kehandalanya. PHP bukan merupakan program compiler seperti Delphi yang dapat menghasilkan program executable melainkan bahasa Scripting yang menyatu dengan HTML dan berada di server (server HTML-embedded scripting). Artinya sintaks dan perintah-perintah yang kita berikan akan sepenuhnya dijalankan di server tetapi disertakan pada halaman HTML biasa yang dapat diakses oleh browser.