BAB II LANDASAN TEORI
2.1.
Teori Umum
2.1.1. Sistem Menurut Ladjamudin (2005,p.6) sistem adalah bentuk integrasi antara satu komponen dengan komponen lainnya. Karena sistem memiliki sasaran yang berbeda untuk setiap kasus yang terjadi yang ada didalam sistem tersebut. Oleh karena itu sistem dapat diklasifikasikan kedalam beberapa sudut pandang, seperti contoh sistem yang bersifat abstrak, sistem alamiah, sistem yang bersifat deterministic dan sistem yang bersifat terbuka dan tertutup. Sedangkan menurut Al Fatta (2007) sistem adalah sekumpulan objekobjek yang saling berelasi dan berinteraksi serta hubungan antar objek bisa dilihat sebagai satu kesatuan yang dirancang untuk mencapai satu tujuan. Dengan demikian sistem adalah suatu kumpulan atau himpunan dari unsur atau variabel-variabel yang saling terorganisasi, saling berinteraksi, dan saling bergantung sama lain.
7
8
2.1.2. Informasi Menurut Ladjamudin (2005) informasi adalah data yang telah diolah menjadi bentuk yang lebih berarti dan berguna bagi penerimanya. Agar informasi yang dihasilkan lebih berharga, maka informasi harus memenuhi kriteria sebagai berikut: 1) Informasi harus akurat, sehingga dapat mendukung pihak dalam mengambil keputusan 2) Informasi harus relavan, benar-benar terasa manfaatnya bagi yang membutuhkan 3) Informasi harus tepat waktu, sehingga tidak ada keterlambatan pada saat dibutuhkan. Sedangkan menurut Al Fatta (2007) informasi adalah data yang telah diolah menjadi sebuah bentuk yang berarti bagi penerimanya dan bermanfaat dalam pengambilan keputusan saat ini atau mendatang. Dengan demikian informasi adalah data yang telah diolah menjadi bentuk yang lebih berarti dan berguna bagi penerimanya untuk mengambil keputusan masa kini maupun yang akan datang. Informasi digunakan tidak hanya oleh satu orang pihak di dalam organisasi. Nilai sebuah informasi ditentukan dari dua hal yaitu manfaat dan biaya untuk mendapatkannya.
9
2.1.3. Sistem Informasi Menurut Ladjamudin (2005,p.13) sistem informasi dapat didefinisikan sebagai berikut : a) Suatu sistem yang dibuat oleh manusia yang terdiri dari komponenkomponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi. b) Sekumpulan prosedur organisasi yang pada saat dilaksanakan akan memberikan informasi bagi pengambil keputusan dan/atau untuk mengendalikan organisasi. c) Suatu sistem didalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi, mendukung operasi, bersifat manajerial,
dan
kegiatan
trategi
dari
suatu
organisasi
dan
menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan. Sedangkan menurut Fatta (2007) Sistem Informasi adalah suatu alat untuk menyajikan informasi dengan cara sedemikan rupa sehingga bermanfaat bagi penggunanya. Dengan demikian sistem informasi adalah sekumpulan prosedur organisasi yang dapat memberikan informasi bagi penggunanya dalam mengambil keputusan.
10
2.1.4. Penjualan Menurut Mulyadi (2008) penjualan merupakan kegiatan yang dilakukan oleh penjual dalam menjual barang atau jasa dengan harapan akan memperoleh laba dari adanya transaksi-transaksi tersebut dan penjualan dapat diartikan sebagai pengalihan atau pemindahan hak kepemilikan atas barang atau jasa dari pihak penjual ke pembeli. Sedangkan menurut Swashta (2009) penjualan merupakan suatu aktivitas bisnis yang menyebabkan terjadinya pemindahan hak dan kepentingan atas suatu barang atau jasa dari pihak penjual ke pihak pembeli yang disertai dengan imbalan seperti contohnya uang dari pihak pembeli kepada pihak penjual. Ada beberapa jenis penjualan yaitu : 1) Trade Selling Dapat terjadi bilamana produsen dan pedagang besar mempersilahkan pengecer untuk berusaha memperbaiki distributor produk-produk mereka. 2) Missionary Selling Dalam missionary selling penjualan berusaha ditingkatkan dengan mendorong pembeli untuk membeli barang-barang dari penyalur perusahaan. Dalam hal ini perusahaan yang bersangkutan memilih penyalur sendiri dalam pendistribusian produknya.
11
3) Technical Selling Berusaha meningkatkan penjualan dengan pemberian saran dan nasehat pada pembeli akhir dari barang dan jasanya dengan menunjukkan bagaimana produk dan jasa yang ditawarkan dapat mengatasi masalah tersebut. 4) New Business Selling Berusaha membuka transaksi baru dengan merubah calon pembeli menjadi pembeli. Jenis penjualan ini sering dipakai oleh perusahaan asuransi. 5) Responsive Selling Dua jenis penjualan utama disini adalah route driving dan retailling. Jenis penjualan seperti ini tidak akan menciptakan penjualan yang terlalu besar meskipun layanan yang baik dan hubungan pelanggan yang menyenangkan dapat menjurus pada pembeli ulang. Dengan demikian penjualan adalah kegiatan menjual barang yang diproduksi sendiri atau dibeli dari pihak lain untuk di jual kembali kepada konsumen secara kredit maupun tunai. Penjualan merupakan suatu proses pertukaran barang dan/atau jasa antara penjual dan pembeli dengan harapan penjual memperoleh laba dari transaksi tersebut.
12
2.1.5. Internet (Interconnected-networking) Menurut Shalahuddin dan Rosa (2010) internet adalah sistem global dari seluruh jaringan computer yang saling terhubung. Internet atau internetwork adalah sekumpulan jaringan berbeda yang saling terhubung bersama sebagai satu kesatuan dengan menggunakan berbagai macam protokol, salah satunya adalah protocol TCP/IP (Transmission control protocol/ internet protocol). Beberapa hal yang terkait dengan internet adalah sebagai berikut : a)
Web Browser Merupakan perangkat lunak yang berfungsi menampilkan dokumen atau informasi web yang diambil dari webserver. Contoh web browser adalah Internet Explorer, Mozilla Firefox, Dan Opera.
b)
Web Server Merupakan perangkat lunak yang berfungsi agar dokumen web yang disimpan di server dapat diakses oleh pemakai internet.
c)
Situs Web/ Homepage Situs web adalah sebutan bagi sekelompok halaman web yang menyimpan informasi di world wide web. Homepage merupakan halaman awal dari sebuah situs web.
d)
Web Hosting Web Hosting adalah bentuk layanan jasa penyewaan tempat di internet yang memungkinkan perorangan ataupun organisasi menampilkan layanan jasa atau produknya di situs web. Webhost merupakan organisasi yang menyediakan tempat di server-nya untuk
13
perorangan atau organisasi meletakkan semua file website-nya dan menyediakan konektivitas dengan internet agar dapat diakses melalui internet. Sedangkan menurut Supriyanto (2007) internet adalah sebuah jaringan komputer global, yang terdiri dari jutaan komputer yang saling terhubung dengan menggunakan protocol yang sama untuk berbagi secara bersama informasi. Dengan demikian internet adalah kumpulan atau penggabungan jaringan secara fisik komputer lokal atau LAN menjadi jaringan komputer global atau WAN. 2.1.6. Website Menurut Hidayat (2010, p.2) mengatakan website atau situs dapat diartikan
sebagai
kumpulan
halaman-halaman
yang
digunakan
untuk
menampilkan informasi teks, gambar, diam, atau bergerak, animasi, suara, dan atau gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait, yang masing-masing dihubungkan dengan jaringan-jaringan halaman. Sedangkan menurut Yuhefizar (2013) website adalah suatu metode untuk menampilkan informasi di internet, baik berupa teks, gambar, suara, maupun video yang interaktif dan mempunyai kelebihan untuk menghubungkan (link) satu dokumen dengan dokumen lainnya (hypertext) yang dapat diakses melalui sebuah browser.
14
Dengan demikian website adalah kumpulan halaman yang menampilkan informasi data teks, data gambar diam atau gerak, data animasi, suara, video dan atau gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait dimana masing-masing dihubungkan dengan jaringan-jaringan halaman (hyperlink). 2.1.7. Database Menurut Ladjamudin (2005) database adalah sekumpulan data store (bisa dalam jumlah yang sangat besar) yang tersimpan dalam magnetic disk, optical disk, magnetic drum atau media penyimpanan sekunder lainnya. Sedangkan menurut Fathansyah (Basis Data 2012, p.3) database dapat didefinisikan sebagai kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan. Dengan demikian database adalah media yang digunakan untuk menyimpan sekumpulan data-data tertentu. 2.1.8.
MySQL (My Structure Query Language)
Menurut Nugroho (2005) MySQL adalah sebuah program database server yang mampu menerima dan mengirimkan datanya dengan sangat cepat, multi user serta menggunakan perintah standar SQL (Structure Query Language)”. SQL adalah sebuah bahasa permintaan database yang terstruktur.
15
Sedangkan menurut Madcoms (2011) MySQL adalah salah satu program yang dapat digunakan sebagai database, dan merupakan salah satu software untuk database server yang banyak digunakan. Dengan demikian MySQL merupakan salah satu perangkat lunak database yang dikembangkan untuk membantu user untuk menyimpan data dalam tabletabel. MySQL adalah salah satu sistem database server yang sangat terkenal saat ini, yang dikembangkan oleh MySQL AB. MySQL umumnya digunakan bersamaan dengan PHP untuk membuat sistem server yang dinamis. 2.2.
Teori Pemrograman
2.2.1. HTML (Hypertext Markup Language) Menurut Supriyanto (2007, p.7) HTML adalah bahasa dari World Wide Web (www) yang dipergunakan untuk menyusun dan membentuk dokumen agar dapat ditampilkan pada program browser. Sedangkan menurut Nugroho (2009) HTML adalah sebuah bahasa sripting yang berguna untuk menuliskan halaman Web. Pada halaman web, HTML dijadikan sebagai Bahasa Script dasar yang berjalan bersama berbagai bahasa Scripting Pemrograman lainnya. Dengan demikian HTML adalah bahasa yang digunakan untuk menulis halaman web. Biasanya mempunyai ekstensi .htm, .html, atau .shtml. HTML tersusun atas tag-tag, digunakan untuk menentukan tampilan dari dokumen HTML yang diterjemahkan oleh browser.
16
2.2.2. PHP (Hypertext Preprocessor) Situs resmi PHP, “PHP.net”, menyatakan bahwa PHP (PHP: Hypertext Preprocessor) merupakan Bahasa pemrogramman web yang dapat disisipkan dalam skrip HTML. Menurut Peranginangin (2006), PHP singkatan dari PHP Hypertext Preprocessor
yang
digunakan
sebagai
Bahasa
skrip
serverside
dalam
pengembangan web yang dapat disisipkan pada dokumen HTML. Sedangkan menurut Nugroho (2009) PHP adalah sebuah bahasa pemrograman yang berbentuk scripting, sistem kerja dari program ini adalah sebagai interpreter bukan sebagai compiler. Dengan demikian PHP adalah salah satu bahasa pemrograman yang berjalan didalam server dan mampu membuat web menjadi interaktif dan dinamis. PHP dapat mengolah data dari komputer client dan dari komputer server itu sendiri, sehingga mudah disajikan dalam browser. 2.2.3. CSS (Cascade Style Sheet) Menurut Madcoms (2008) CSS (Cascade Style Sheet) adalah sebuah fitur yang diperkenalkan sejak HTML, versi 4.0 dan berfungsi untuk manangani masalah tampilan pada HTML seperti jenis, ukuran dan warna font. Posisi teks, batas tulisan atau margin, warna background, dan sebagainya. Sedangkan menurut Husni (2007) CSS adalah suatu cara untuk membuat format atau layout halaman web menjadi lebih menarik dan mudah dikelola. CSS muncul sebagai jawaban atas sulitnya mengatur layout tampilan dokumen web
17
yang dibuat HTML murni meskipun telah menggunakan berbagai kombinasi format. Dengan demikian CSS (Cascade Style Sheet) merupakan salah satu bahasa pemrograman web untuk mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur. 2.2.4. Javascript Menurut Sunyoto (2007) menyatakan bahwa Javascript adalah scripting yang popular di internet dan dapat bekerja di sebagian besar browser popular seperti Internet Explorer (IE), Mozilla Firefox, Netscape dan Opera. Sedangkan menurut Kadir (2011) Javascript adalah kode untuk menyusun halaman web yang memungkinkan dijalankan disisi klien. Karena dijalankan disisi klien, maka Javascript dapat digunakan untuk membuat tampilan lebih bersifat dinamis. Dengan demikian Javascript adalah script (bahasa pemrogramman yang dapat memegang control sistem) yang berbasis pada bahasa pemrograman Java. Alasan utama memilih javascript adalah karena faktor penggunaan dan ketersediaan. maksudnya adalah kebanyakan web browser sudah mendukung bahasa ini, sebut saja IE, Netscae, Firefox, Opera, dan lain-lain. 2.3.
Teori Perancangan Sistem
2.3.1. Metode Prototype Menurut
Pressman
(2010)
prototype
adalah
salah
satu
metode
pengembangan perangkat lunak yang banyak digunakan. Dengan metode
18
prototyping ini pengembangan dan pelanggan dapat saling berinteraksi selama proses pembuatan sistem. Pada prototyping model, kadang-kadang klien hanya memberikan beberapa kebutuhan umum software tanpa detail input, proses atau detail output dilain waktu mungkin tim pembangun (developer) tidak yakin terhadap efesiensi dari algoritma yang digunakan, tingkat adaptasi terhadap sistem operasi atau rancangan form user interface. Ketika situasi seperti ini terjadi model prototyping sangat membantu proses pembangunan software.
Gambar 2.1 Model Prototype a) Mendengarkan Pelanggan : Pada tahap ini dilakukan pengumpulan kebutuhan dari sistem dengan cara mendengar keluhan dari pelanggan. Untuk membuat suatu sistem yang sesuai kebutuhan, maka harus diketahui terlebih dahulu bagaimana sistem yang sedang berjalan untuk kemudian mengetahui masalah yang terjadi. b) Merancang dan Membuat Prototype : Pada tahap ini, dilakukan perancangan dan pembuatan prototype system. Prototype yang dibuat disesuaikan dengan kebutuhan sistem yang telah didefinisikan sebelumnya dari keluhan pelanggan atau pengguna.
19
c) Uji Coba : Pada tahap ini, prototype dari sistem di uji coba oleh pelanggan atau pengguna. Kemudian dilakukan evaluasi kekurangankekurangan dari kebutuhan pelanggan. Pengembangan kemudian kembali mendengarkan keluhan dari pelanggan untuk memperbaiki prototype yang ada. Sedangkan Al Fatta (2007) metode prototype adalah proses interaktif dalam pengembangan sistem dimana kebutuhan diubah ke dalam sistem yang bekerja (working system) yang secara terus menerus diperbaiki melalui kerjasama antara pengguna dan analis. Prototype juga bisa dibangun melalui beberapa tool pengembangan untuk menyederhanakan proses. Dengan demikian prototype adalah suatu metode dalam pengembangan sistem menggunakan pendekatan untuk membuat suatu program dengan cepat dan bertahap sehingga dapat segera dievaluasi oleh pemakai (user). 2.3.2. Unifed Modelling Language (UML) Menurut Munawar (2005, p.17), UML (Unified Modelling Language) adalah salah satu alat bantu yang sangat handal di dunia pengembangan sistem yang berorientasi obyek. Hal ini karena UML menyediakan bahasa pemodelan visual yang memungkinkan bagi pengembang untuk membuat cetak biru atas visi mereka dalam bentuk yang baku, mudah dimengerti serta dilengkapi dengan mekanisme yang efektif untuk berbagi dan mengkomunikasikan rancangan mereka dengan yang lain. UML mempunyai sejumlah elemen grafis yang dikombinasikan menjadi diagram. Karena ini merupakan sebuah bahasa, UML mempunyai sejumlah aturan
20
untuk menggabungkan elemen-elemen tersebut. Untuk lebih jelasnya akan lebih baik bila kita melihat diagram apa saja yang ada di UML. Tabel 2.1 Tipe Diagram UML Diagram
Tujuan
Activity
Perilaku procedural & parallel
Class
Class, Fitur dan relasinya
Communication
Interaksi diantara obyek, lebih menekankan ke link
Component
Struktur dan koneksi dari komponen
Composite structure
Dekomposisi sebuah class saat runtime
Deployment
Penyebaran / instalasi ke klien
Interaction Overview
Gabungan antara activity & sequence diagram
Object
Contoh konfigurasi instance
Package
Struktur hirarki saat kompilasi
Sequence
Interaksi antar obyek, lebih menekankan pada urutan
State Machine
Bagaimana event mengubah sebuah obyek
Timing
Interaksi antar obyek, lebih menekankan pada waktu
Usecase
Bagaiman user berinteraksi dengan sebuah sistem
UML
merupakan
sistem
notasi
yang
sudah
dilakukan
didunia
pengembangan sistem, hasil kerja sama dari Grady Booch, James Rumbaugh dan Ivar Jacobson. UML terdiri dari serangkaian diagram yang memungkinkan bagi sistem analis untuk membuat blue print sistem yang komprehensif kepada klien, programmer dan tiap orang yang terlibat dalam proses pengembangan tersebut.
21
Berikut adalah tipe diagram UML yang digunakan penulis dalam pengembangan sistem. 1) Usecase Diagram Usecase adalah deskripsi fungsi dari sebuah sistem dari perspektif pengguna. Usecase bekerja dengan cara mendeskripsikan tipikal interaksi antara user (pengguna) sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Berikut simbol-simbol yang sering digunakan dalam usecase Diagram antara lain. Tabel 2.2 Simbol Usecase Diagram Simbol
Nama
Keterangan
Aktor
Seseorang atau sesuatu yang berinteraksi dengan sistem yang sedang kita kembangkan
Usecase
Peringkat
tertinggi
dari
fungsional yang dimiliki sistem
Relasi Asosiasi
Relasi yang terjadi antara aktor dengan usecase biasanya berupa asosiasi
22
<
> >
Include Relationship
Relasi cakupan memungkinkan suatu
usecase
menggunakan
untuk
fungsionalitas
yang disedikan ole use case yang lainnya. Extends
Memungkinkan
suatu
case
kemungkinan
untuk
<<Extended>>
Relationship
memiliki
memperluas
fungsional
yang
disedikan usecase yang lainnya.
Diagram usecase menunjukkan 3 aspek dari sistem yaitu : actor, usecase dan sistem / sub sistem boundary. Actor mewakili peran orang, sistem yang lain atau alat ketika berkomunikasi dengan usecase.
Gambar 2.2 Usecase Model Untuk mengidentifikasi actor harus ditentukan pembagian tenaga kerja dan tugas-tugas yang berkaitan dengan peran pada konteks target sistem. Actor adalah abstraksi dari orang dan sistem yang lain yang mengaktifkan fungsi dari target sistem.
23
2) Activity Diagram Activity Diagram adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity diagram mempunyai peran seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bias mendukung perilaku paralel sedangkan flowchart tidak bisa. Berikut simbol-simbol yang sering digunakan dalam Activity Diagram antara lain : Tabel 2.3 Simbol Activity Diagram Simbol
Keterangan InitialState : untuk memperlihatkan dimana aliran kerja berawal FinalState : untuk memperlihatakan dimana aliran kerja berakhir
Activity
ActionState : Activity untuk menggambarkan langkahlangkah dalam aliran kerja SubactivityState
SubactivityState : Menunjukkan sub activity diagram
Decision : pilihan untuk mengambil keputusan Synchronization : Digunakan untuk menunjukkan kegiatan yang dilakukan secara paralel atau untuk
24
menggabungkan dua kegiatan paralel menjadi satu
SignalSendState1
SignalSendState : Tanda pengiriman
SignalAcceptState1
SignalAcceptState : Tanda penerimaan
3) Class Diagram Class diagram merupakan himpunan dari objek-objek yang sejenis. Sebuah objek memiliki keadaan sesaat (state) dan perilaku (behavior). State sebuah objek adalah kondisi objek tersebut yang dinyatakan dalam atribute/properties. Sedangkan perilaku suatu objek mendefinisikan bagaimana sebuah objek bertindak/beraksi dan memberikan reaksi. 2.4.
Teori Pengujian Perangkat Lunak Menurut Ladjamudin (2005, p.351) Pengujian Perangkat Lunak adalah
proses menjalankan dan mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk menguji apakah perangkat lunak seudah memenuhi persyaratan atau belum dan untuk menentukan perbedaan antara hasil yang digarapkan dengan hasil sebenarnya. Faktor-faktor pengujian yang dilakukan meliputi: 1) Kebutuhan yang berkaitan dengan penanganan keluhan pelanggan 2) Pendefinisian spesifikasi fungsiaonal
25
3) Penentuan spesifikasi kegunaan 4) Penentuan kebutuhan portabilitas 5) Pendefinisian antar muka sistem Sedangkan menurut Fatta (2007, p.171) pengujian unit digunakan untuk mengujian setiap modul dan menjamin setiap modul menjalankan fungsinya dengan baik. Ada dua metode untuk melakukan unit testing, yaitu: 2.4.1. Black Box Testing Black box testing terfokus pada apakah unit program memenuhi kebutuhan (requirement) yang disebutkan dalam spesifikasi. Pada black box testing, cara pengujian hanya dilakukan dengan menjalankan atau mengeksekusi unit atau modul, kemudian diamati apakah hasil dari unit itu sesuai dengan proses yang diinginkan.
Gambar 2.3 Pengujian Metode Black Box Testing Teknik yang digunakan dalam Black Box Testing adalah sebagai berikut : 1) Digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak. 2) Kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan keluaran (output) yang dihasilkan.
26
3) Kemampuan program dalam memenuhi kebutuhan pemakai dapat diukur sekaligus dapat diketahui kesalahan-kesalahannya. 2.4.2. White Box Testing White Box Testing adalah cara pengujian dengan melihat ke dalam modul untuk meneliti kode-kode program yang ada, dan menganalisis apakah ada kesalahan atau tidak. Jika ada modul yang menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variabel dan parameter yang terlibat pada unit tersebut akan dicek satu persatu dan diperbaiki, kemudian di-compile ulang. Dengan
demikian
pengujian
perangkat
lunak
merupakan
proses
mengeksekusi sistem untuk menentukan apakah sistem perangkat lunak tersebut cocok dengan spesifikasi sistem dan berjalan sesuai dengan lingkungan yang diinginkan.