Tempat ,Tanggal Lahir Bandung, 25 Ferbruari 1991
Agama Islam
Status Mahasiswa
Alamat Jln.Mukodar II no 196 RT/RW 004/007
Cimahi Selatan
No.Telp 083821698379
E-mail hindakailmannafian@gmail.com
PENDIDIKAN FORMAL
1996-2002 MI. Asih Putera
2002-2005 MTs. Asih Putera
2005-2008 SMA N 5 Cimahi
2008 – Sekarang UNIVERSITAS KOMPUTER INDONESIA
PENGALAMAN ORGANISASI
KABUPATEN BANDUNG BARAT
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika
Fakultas Teknik dan Ilmu Komputer
HINDAKA ILMAN NAFIAN
10108392
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK DAN ILMU KOMPUTER
iii
SWT yang telah melimpahkan rahmat hidayah dan karunia-Nya, shalawat serta salam semoga selalu tercurah kepada Rasulullah SAW, sehingga penulis dapat menyelesaikan skripsi yang berjudul “Sistem Informasi Distribusi Obat dengan pendekatan metode supply chain management di Dinas Kesehatan Kabupaten Bandung Barat”.
Adapun tujuan dari penyusunan skripsi ini adalah untuk memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di Program Studi Teknik Informatika, Universitas Komputer Indonesia.
Penulis membutuhkan peran serta dari pihak lain untuk proses penyelesaian skripsi ini, karena keterbatasan ilmu dan pengetahuan. Oleh karena itu ijinkanlah penulis untuk menyampaikan ucapan terima kasih yang sebesar-besarnya kepada :
1. Allah SWT, yang telah memberikan rahmat, hidayah, dan karunia-Nya kepada penulis sehingga dapat menyelesaikan skripsi dengan baik.
2. Kedua orang tua dan adik tercinta, atas doa yang tidak pernah putus, dukungan yang tidak pernah berhenti, baik secara moril dan materil, serta sebagai alasan bagi penulis untuk tetap berjuang menyelesaikan pendidikan ini.
3. Bapak Irawan Afrianto, S.T., M.T., selaku Ketua Jurusan Program Studi Teknik Informatika UNIKOM.
4. Ibu Dian Dharmayanti , S.T., M.Kom., selaku dosen pembimbing. Terima kasih karena telah banyak meluangkan waktu untuk memberikan bimbingan, saran dan nasehatnya selama penyusunan skripsi ini.
iv
Bandung Barat yang telah memberikan izin kepada penulis untuk melakukan dan membantu penelitian.
8. Sugiartono , SKM, M.Kes, selaku Kepala Seksi Informasi dan Penelitian Kesehatan yang telah membantu dalam penelitian penulis.
9. Bapak Luki guru TIK SMA yang membuat penulis menjadi tertarik dengan bidang yang berhubungan dengan IT.
10.Dika, Aleuy, Sonay, Dabrot, Ayul, Sopi, Rio, Jibet, Eko dan Imam yang telah mendukung dan bersedia untuk meminjamkan buku selama penyusunan skripsi ini.
11.Teman-teman di Jurusan Teknik Informatika Angkatan 2008 khususnya kelas IF-08 terima kasih atas doa, bantuan dan dorongannya.
12.Serta semua pihak yang telah turut membantu dalam penyusunan skripsi ini, yang tidak bisa disebutkan satu persatu.
Didalam penulisan skripsi ini, penulis telah berusaha seoptimal mungkin walaupun demikian penulis menyadari bahwa skripsi ini jauh dari sempurna. Masukan atau saran yang ditujukan untuk penyempurnaan skripsi ini akan diterima oleh penulis dengan senang hati.
Akhir kata, penulis berharap semoga skripsi ini dapat bermanfaat bagi penulis pada khususnya dan pembaca pada ummnya.
Wassalamualaikum Wr. Wb.
Bandung, Agustus 2013
v
DAFTAR ISI ...v
DAFTAR GAMBAR ... vii
DAFTAR TABEL ... xii
DAFTAR SIMBOL ... xiv
DAFTAR LAMPIRAN ... xix
BAB 1 PENDAHULUAN ...1
1.1 Latar Belakang ... 2
1.2 Rumusan Masalah ... 2
1.3 Maksud dan Tujuan ... 3
1.4 Batasan Masalah ... 3
1.5 Metodologi Penelitian ... 4
1.5.1. Tahap pengumpulan data ... 4
1.5.2. Tahap pembuatan perangkat lunak ... 5
1.6 Sistematika Penulisan ... 6
BAB 2 TINJAUAN PUSTAKA ...9
2.1 Tinjauan Perusahaan ... 9
2.1.1 Sejarah Dinas Kabupaten Bandung Barat ... 9
2.1.2 Struktur Organisasi Dinas Kesehatan Kabupaten Bandung Barat ... 11
2.1.3 Tugas Pokok dan Fungsi ... 11
2.2 Landasan Teori ... 14
2.2.1 Konsep Dasar Sistem ... 14
2.2.2 Konsep Dasar Informasi ... 15
2.2.3 Sistem Informasi ... 15
2.2.4 Supply Chain Management ... 16
2.2.5 Teori Peramalan (forecasting) ... 17
2.2.6 Konsep Sistem Basis Data ... 25
2.2.7 Entity Relationship Diagram ... 27
vi
2.2.13 MySQL ... 34
BAB 3 ANALISIS DAN PERANCANGAN...37
3.1. Analisis Sistem... 37
3.1.1 Analisis Masalah ... 37
3.1.2 Analisis sistem yang sedang berjalan ... 38
3.1.3 Aturan Bisnis ... 48
3.1.4 Analisis Metode Peramalan ... 48
3.1.5 Analisis kebutuhan Non Fungsional ... 58
3.1.6 Analisis Kebutuhan Fungsional ... 67
3.2. Perancangan Sistem ... 118
3.2.1 Skema Relasi ... 118
3.2.2 Struktur Tabel ... 120
3.2.3 Perancangan Menu ... 126
3.2.4 Perancangan Antarmuka ... 128
3.2.5 Perancangan Pesan ... 181
3.2.6 Jaringan Semantik ... 184
3.2.7 Perancangan Prosedural ... 187
BAB 4 IMPLEMENTASI DAN PENGUJIAN ...193
4.1. Implementasi Sistem ... 193
4.1.1. Lingkungan Implementasi ... 193
4.1.2. Implementasi Perangkat Lunak ... 193
4.1.3. Implementasi Perangkat Keras ... 194
4.1.4. Implementasi Basis Data... 194
4.1.5. Implementasi Antarmuka ... 199
4.2. Pengujian Sistem ... 201
4.2.1. Pengujian Black Box ... 202
4.2.2. Pengujian Beta ... 229
237
[2] Kadir A,2002, Dasar Pemograman Web Dinamis menggunakan
PHP,Yogyakarta : Penerbit Andi.
[3] Ladjamudin, Al-Bahra ,2005, Analisis dan Desain Sistem
Informasi,Yogyakarta : Penerbit Graha Ilmu.
[4] Makridakis, S, Wheelright, S.C,Mcgee,V.E, 1999, Metoda dan Aplikasi
Peramalan, Jakarta : Erlangga
[5] Metz,P.J. 1998, Demystifying Supply Chain Management Review, Addison
Wesley Publishing
[6] Michael, H, 2006, Essential of SCM ,Hoboken : John Willy and Sons inc
[7] Solichin , A ,2010, mysql 5 dari pemula hingga mahir,Universitas Budi
Luhur.
[8] Sommerville, I, 2011, Software Engineering (9th Edition), USA: Pearson
Education.
[9] Website,ilmu,2012,HTML CSS Fundamental dari akar menuju
daun
,[pdf],(http://www.ilmuwebsite.com/ebook/ebook-html-css-fundamental-dari-akar-menuju-daun, diakses pada tanggal 30 Desember
2012)
[10] Yakub, 2008,Sistem Basis Data ;Tutorial Konsep,Yogyakarta : Graha
1
Supply Chain adalah jaringan perusahaan-perusahaan yang secara bersama-sama bekerja untuk menciptakan dan menghantarkan suatu produk ke tangan pemakai. Perusahaan-perusahaan tersebut termasuk supplier, pabrik, distributor, toko atau ritel, serta perusahaan pendukung seperti jasa logistik. Supply Chain Management adalah suatu sistem yang mengatur kegiatan dari barang masuk yang dikirim oleh supplier,hingga barang dikirimkan ke konsumen. Adapun penjelasan SCM menurut the Council of Supply Chain Management professionals adalah sebagai berikut : “Supply Chain Mangement is the
systematic, strategic coordination of the traditional business functions within a
particular company and across businesses within the supply chain for the purpose
of improving the long-term performance of the individual company and the supply chain as a whole”.[6] Supply chain management memiliki tahap perencanaan dan pengendalian. Adapun maksud dari tahap tersebut adalah untuk mengendalikan kebutuhan barang agar tidak terjadi kekosongan stok. Oleh karena itu perencanaan yang baik harus dilakukan agar kekosongan stok tidak terjadi. Salah satu cara untuk melakukan perencanan dan pengendalian stok barang dengan menggunakan peramalan. Peramalan digunakan untuk meramalkan kebutuhan barang untuk periode selanjutnya, sehingga hasil peramalan tersebut dapat digunakan sebagai acuan untuk para pembuat keputusan dalam membuat perencanaan kebutuhan barang.
Berdasarkan permasalahan yang telah diuraikan diatas, maka perlu dibangun sistem informasi distribusi obat dengan pendekatan metode supply chain management di Dinas Kesehatan Kabupaten Bandung Barat sehingga diharapkan seluruh kendala dalam pelaksanaan kegiatan distribusi obat teratasi.
1.2 Rumusan Masalah
1.3 Maksud dan Tujuan
Adapun maksud dari penulisan tugas akhir ini adalah untuk membangun Sistem Informasi Distribusi Obat dengan pendekatan metode supply chain management di Dinas Kesehatan Bandung Barat.
Tujuan yang ingin dicapai dalam pembangunan Sistem Informasi Distibusi Obat dengan pendekatan metode supply chain management di Dinas Kesehatan Bandung Barat :
1. Memudahkan dalam memperoleh informasi stok obat khususnya Dinas Kesehatan Kabupaten Bandung Barat dan umumnya puskesmas.
2. Memudahkan petugas gudang farmasi dalam pendataan obat masuk dan keluar.
3. Memudahkan dalam pembuatan laporan Stock Opname, LPLPO (Laporan Pemakaian dan Laporan Permintaan Obat) dan SBBK (Surat Bukti Barang Keluar).
4. Memudahkan memprediksi kebutuhan obat yang hasilnya dapat digunakan untuk rekomendasi perencanaan kebutuhan obat.
1.4 Batasan Masalah
Permasalahan yang dikaji sangat luas maka diperlukan suatu batasan masalah agar penyajian lebih terarah dan mencapai sasaran yang ditentukan :
1. Penelitian yang dilaksanakan menangani permasalahan pengelolaan ,pendistribusian dan perencanaan kebutuhan (permintaan) obat-obatan di Dinas Kesehatan Kabupaten Bandung Barat.
2. Analisa pengelolaan data obat-obatan berdasarkan pada prosedur yang berlaku di Dinas Kesehatan Kabupaten Bandung Barat.
3. Pendekatan metode supply chain yang digunakan berada pada lingkup inventory.
6. Pengguna aplikasi ini berada di lingkungan Dinas Kesehatan Kabupaten Bandung Barat, yaitu kepala seksi informasi, bagian gudang farmasi/pusat dan puskesmas
7. Sistem Informasi Distribusi Obat di Dinas Kesehatan Kabupaten Bandung Barat berbasiskan web.
8. Pendekatan analisis yang digunakan adalah analisis terstruktur sehingga pemodelan data menggunakan ERD (Entity Relationship Diagram) dan untuk fungsionalnya menggunakan DFD (Data Flow Diagram).
1.5 Metodologi Penelitian
Tahap-tahap yang digunakan dalam penelitian tugas akhir ini adalah sebagai berikut :
1.5.1. Tahap pengumpulan data
Adapun tahapan pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut :
a. Studi Literatur.
Studi pustaka digunakan untuk mengumpulkan data kepustakaan dengan menggunakan berbagai literature yang menunjang dan berkaitan dengan materi yang diambil meliputi pengumpulan buku-buku sumber , jurnal , dan bacaan-bacaan yang ada kaitannya dengan judul penelitian termasuk informasi dari internet.
b. Observasi.
Observasi lapangan adalah dimana penelitian dilakukan dengan terjun langsung ke tempat tujuan penelitian di Dinas Kesehatan Kabupaten Bandung Barat, tujuan dari observasi lapangan ini adalah untuk mengetahui situasi dan kondisi pada bagian Gudang Farmasi dan Puskesmas agar dapat memperoleh data yang diperlukan secara langsung.
Wawancara adalah salah satu cara mengumpulkan data dengan cara wawancara atau berdiskusi dengan narasumber untuk mendapatkan sumber informasi di bagian Gudang Farmasi dan Puskesmas. Tujuan dari wawancara ini adalah untuk mendapatkan data yang akurat langsung dari narasumber.
1.5.2. Tahap pembuatan perangkat lunak
Pada tahap pembuatan perangkat lunak menggunakan metode Waterfall. Waterfall Model adalah sebuah metode pengembangan software yang bersifat sekuensial dan terdiri dari beberapa tahap yang saling terkait dan mempengaruhi seperti terlihat pada gambar 1.1
a. Requirement Definition
Tujuan dilakukan tahapan ini untuk memahami sistem yang sedang berjalan untuk mendefinisikan permasalahan sistem sehingga selanjutnya dapat menentukan kebutuhan sistem secara garis besar sebagai persiapan ke tahap perancangan.
b. System and software design
Tahap penerjemahan dari data yang dianalisis kedalam bentuk yang mudah dimengerti oleh user.
c. Implementation and unit testing
Selama tahap ini, desain software direalisasikan sebagai serangkaian program atau unit program.Unit pengujian melibatkan memverifikasi bahwa setiap unit memenuhi spesifikasinya.
d. Integration and system tesing
e. Operation and Maintenance
Pada tahap ini dilakukan evaluasi terhadap sistem yang baru untuk mengetahui apakah sistem telah memenuhi tujuan yang ingin dicapai. Dari hasil evaluasi ini dimungkinkan untuk melakukan perubahan-perubahan yang diperlukan terhadap sistem agar sistem senantiasa dapat digunakan dengan baik.
1.6 Sistematika Penulisan
Sistematika penulisan dokumen penelitian ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :
BAB I PENDAHULUAN
Pada Bab I membahas tentang latar belakang permasalahan, serta merumuskan permasalahan yang dihadapi, menentukan maksud dan tujuan diadakannya penelitian, pembuatan batasan masalah,dan sistematika penulisan.
BAB II. TINJAUAN PUSTAKA
Bab ini berisi tentang tinjauan umum Dinas Kesehatan Kabupaten Bandung Barat dan pembahasan berbagai konsep dasar mengenai sistem informasi,
supply chain management, forecasting,konsep pengolahan data, dan teori-teori pendukung lainnya yang berkaitan dengan topik pembangunan perangkat lunak .
BAB III. ANALISIS DAN PERANCANGAN
Bab ini berisi analisis dari sistem yang sedang berjalan dimulai dari prosedur penerimaan barang,prosedur pengeluaran barang,prosedur permintaan barang ,prosedur analisis kebutuhan non fungsional, analisis perangkat lunak, perangkat keras, karakteristik pengguna, analisis jaringan, analisis kebutuhan fungsional termasuk diagram konteks dan data flow diagram serta perancangan sistem seperti relasi antar tabel, perancangan basis data, struktur menu, perancangan antarmuka, perancangan pesan dan jaringan semantik.
BAB IV. IMPLEMENTASI DAN PENGUJIAN
Pada Bab IV berisi implementasi dari perangkat lunak, perangkat keras, implementasi basisdata, implementasi antarmuka, serta pengujian dari sistem, yang meliputi pengujian alpha dan pengujian beta.
BAB V. KESIMPULAN DAN SARAN
9
2.1.1 Sejarah Dinas Kabupaten Bandung Barat
Wacana pemekaran Kabupaten Bandung menjadi 2 kabupaten telah muncul sejak tahun l999. Berdasarkan surat permohonan Bupati KDH TK.II Bandung yang saat itu dijabat oleh bapak H.U.Hatta Djati Permana, S.Ip mengajukan surat kepada Ketua DPRD yang saat itu pimpinan DPRD / Ketua DPRD diketuai Bapak H.Obar Sobarna,S.Ip. Surat permohonan Bupati bernomor :135/1235/Tapem tanggal 22 juni 1999 perihal permohonan persetujuan pemekaran wilayah Kabupaten Dati II Bandung. Bupati memohon kepada pimpinan beserta anggota DPRD kiranya dapat mengabulkan dan mendukung atas terselenggaranya rencana pemekaran Kabupaten Bandung menjadi Kabupaten DT II Bandung dan Kabupaten Padalarang (sekarang Kabupaten Bandung Barat). Hal tersebut disambut positif oleh DPRD Kabupaten Bandung dengan diterbitkannya surat keputusan DPRD Dati II Bandung no.5/1999/12/07 tentang persetujuan awal DPRD terhadap pemekaran wilayah Kabupaten Dati II Bandung. Namun pada tanggal 23 Desember 1999, Ketua DPRD Kabupaten Bandung melayangkan surat No.135/1499/TU tentang pemekaran Kabupaten Bandung yang isinya antara lain : Kami sampaikan bahwa proses awal yang sedang ditempuh oleh Pemda (sesuai UU no 5/74) agar ditangguhkan /dihentikan , demi ketertiban dan kelancaran pelaksanaan selanjutnya sesuai dengan Undang-Undang no 22/1999.
Kota Cimahi sebelumnya merupakan bagian dari wilayah administratif Kabupaten Bandung. Setelah Cimahi menjadi Kota Otonom, terpisah dari kabupaten Bandung, tuntutan pemekaran Kabupaten Bandung mencuat kembali ke permukaan sejalan dengan dibukanya ruang publik untuk mengaspirasikan kehendak membentuk daerah otonom baru hal tersebut dijamin oleh Undang-Undang No.22/1999.
Provinsi Jawa Barat dan Pemerinah Pusat serta DPR RI/DPD RI . sampai lahirnya Undang-Undang Republik Indonesia No12.tahun 2007 Tentang Pembentukan Kabupaten Bandung Barat Menjadi Daerah Otonom di Provinsi Jawa Barat.
2.1.2 Struktur Organisasi Dinas Kesehatan Kabupaten Bandung Barat
Adapun struktur organisasi Dinas Kesehatan Kabupaten Bandung Barat disajikan dalam gambar 2.1
KEPALA DINAS
Ka.SEKSI KESEHATAN IBU DAN ANAK PERSEDIAN FARMASI DAN MAKANAN MINUMAN
Gambar 2. 1 Struktur Organisasi Dinkes KBB
2.1.3 Tugas Pokok dan Fungsi
Adapun tugas pokok dan fungsi berdasarkan peraturan bupati Bandung Barat nomor 28 tahun 2009 adalah sebagai berikut :
a. Kepala Dinas
b. Sekretariat
Sekretariat mempunyai tugas melaksanakan urusan dan memberikan pelayanan teknis dan administrasi dibidang perencanaan umum, kepegawaian dan keuangan kepada semua unsur Dinas Kesehatan.
c. Subbagian Penyusunan program
Subbagian penyusunan program mempunyai tugas pokok melaksanakan penyusunan dan analisis data bahan perumusan kebijkan teknis dan rencana program kerja serta pelaksanaan urusan tugas operasional dan administratif di bidang penyusunan program.
d. Subbagian Keuangan
1) Melakukan pengelolaan keuangan anggaran pendapatan dan belanja,
2) Melakukan pembinaan dan pengawasan administrasi keuangan di dinas dan UPTD,
3) Melakukan pembayaran gaji pegawai dan pembayaran keuangan lainnya,
4) Menyusun laporan pertanggungjawaban pengelolaan keuangan, 5) Melakukan tugas lain yang diberikan oleh Sekretaris sesuai
dengan tugas dan fungsinya.
e. Subbagian Kepegawaian dan Umum
2) Menyusun rencana kebutuhan dan melaksanakan kegiatan sekretaris serta pemeliharaan perlengkapan dan peralatan kantor,
3) Menyusun perencanaan serta pemeliharaan kebersihan dan keamanan kantor,
4) Melakukan pengelolaan barang dilingkungan Dinas Kesehatan dan UPTD,
5) Melakukan tugas keprotokolan dan perjalanan dinas,
6) Melakukan pembinaan dan pengawasan administrasi kepegawaian, perlengkapan serta inventarisasi di dinas dan UPTD,
7) Mengelola data administrasi kepegawaian serta pendidikan dan pelatihan kepegawaian,
8) Memproses kedudukan hukum pegawai,
9) Menyiapkan bahan untuk menyusun dan menyempurnakan organisasi dan tatalaksana,
10)Melakukan kegiatan-kegiatan akreditasi tenaga fungsional kesehatan dan dokumentasi kepegawaian,
11)Melakukan tugas lain yang diberikan oleh Sekretaris sesuai dengan tugas dan fungsinya.
f. Bidang Pelayanan Kesehatan Dasar
Bidang Pelayanan Kesehatan mempunyai tugas menyusun rencana pembinaan, pengawasan serta pengembangan pelayanan kesehatan dan pelatihan tenaga kesehatan, rencana kebutuhan obat dan perbekalan kesehatan serta pengawasan terhadap peredaran sediaan farmasi dan produk makanan minuman.
Bidang Pengendalian Penyakit dan Penyehatan Lingkungan
mempunyai tugas merencanakan, mengkoordinasikan,
melaksanakan monitoring dan evaluasi kegiatan pencegahan, pengamatan dan pengendalian penyakit serta penyehatan lingkungan.
h. Bidang Sumber Daya Kesehatan
Bidang Sumber daya Kesehatan mempunyai tugas pokok menyelenggarakan perumusan dan penetapan kebijakan teknis, perencanaan dan penyusunan program, pengendalian dan pengkoordinasian pelaksanaan kebijakan teknis serta pembinaan administrasi dan teknis di bidang sumber daya kesehatan
i. Bidang Pelayanan Kesehatan Masyarakat
Bidang Pelayanan Kesehatan Masyarakat mempunyai tugas pokok menyelenggarakan perumusan dan penetapan kebijakan tekni, perencanaan dan penyusunan program, pengendalian dan pengkoordinasian pelaksanaan kebijakan teknis serta pembinaan administrasi dan teknis di bidang Kesehatan Masyarakat.
2.2 Landasan Teori
2.2.1 Konsep Dasar Sistem
2.2.2 Konsep Dasar Informasi
2.2.2.1Data
Data adalah deskripsi dari sesuatu dan kejadian yang kita hadapi. Sementara data bisnis didefinisikan sebagai deskripsi organisasi tentang suatu (resources) dan kejadian (transactions) yang terjadi. Definisi data yang lain adalah data merupakan kenyataan yang menggambarkan suatu kejadian-kejadian dan kesatuan nyata. Kesatuan nyata (fact and entity) adalah berupa suatu objek nyata seperti tempat, benda dan orang yang betul-betul ada dan terjadi.[3]
2.2.2.2Informasi
Informasi merupakan data yang telah diolah menjadi bentuk yang lebih berarti dan berguna bagi penerimanya untuk mengambil keputusan masa kini maupun masa yang akan datang. agar suatu informasi lebih berharga maka informasi tersebut harus memenuhi kriteria sebagai berikut :
1. Informasi harus akurat, sehingga mendukung pihak manajemen dalam mengambil keputusan.
2. Informasi harus relevan, benar-benar terasa manfaatnya bagi yang membutuhkan.
3. Informasi harus tepat waktu, sehingga tidak ada keterlambatan pada saat dibutuhkan.
2.2.3 Sistem Informasi
Sistem informasi dapat didefinisikan sebagai berikut.
1. Suatu sistem yang dibuat oleh manusia yang terdiri dari komponen-komponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi.
2. Sekumpulan prosedur organisasi yang pada saat dilaksanakan akan memberikan informasi bagi pengambil keputusan dan atau mengendalikan organisasi.
3. Suatu sistem didalam organisasi yang mempertemukan kebutuhan pengolahan transaksi, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.
2.2.4 Supply Chain Management
Istilah “supply chain management” muncul pada akhir tahun 1980-an dan menyebar hingga kepelosok dunia sekitar tahun 1990. Pada waktu tersebut, bisnis masih menggunakan istilah “logistic” dan ”operations management”. Dibawah ini merupakan beberapa definisi mengenai supply chain : [6]
a. “A supply chain is the aligmnet of firms that bring products or service to market”
b. “A supply chain is a network of facilities and distribution options that performs the functions of procurement of materials, transformation of
these materials into intermediate and finished products, and the
distribution of these finished products to customers”.
c. Menurut the Council of Logistics Management adalah “The systemic, strategic coordination of traditional business funtions and the tactics
across these businesses within a particular company and across business
d. “Supply chain management is the coordination of production, inventory, location and transportation among the participants in a supply chain to
achieve the best mix of responsiveness and efficiency for the market being
served”.
Ada 3 macam hal yang harus dikelola dalam supply chain yaitu
1) aliran barang dari hulu ke hilir contohnya bahan baku yang dikirim dari supplier ke pabrik, setelah produksi selesai dikirim ke distributor, pengecer, kemudian ke pemakai akhir
2) aliran uang dan sejenisnya yang mengalir dari hilir ke hulu.
3) aliran informasi yang bisa terjadi dari hulu ke hilir atau sebaliknya.
2.2.5 Teori Peramalan (forecasting)
2.2.5.1Definisi Peramalan (forecasting)
Peramalan merupakan suatu perkiraan atau taksiran tingkat permintaan suatu produk atau banyak produk untuk kurun waktu tertentu. Berikut beberapa definisi peramalan menurut para ahli.
1. Menurut John E. Biegel,“Peramalan adalah kegiatan memperkirakan tingkat permintaan produk yang diharapkan untuk suatu produk atau
beberapa produk dalam periode waktu tertentu di masa yang akan
datang”.
2. Menurut Buffa S. Elwood,“Peramalan atau forecasting diartikan sebagai penggunaan teknik-teknik statistik dalam bentuk gambaran masa depan
berdasarkan pengolahan angka-angka historis”.
3. Menurut Makridakis,“Peramalan merupakan bagian integral dari kegiatan pengambilan keputusan manajemen”.
2.2.5.2Jenis-jenis peramalan
Situasi peramalan sangat beragam dalam horizon waktu peramalan, faktor yang menentukan hasil sebenarnya, tipe pola dan berbagai aspek lainnya. Untuk menghadapi penggunaan yang luas seperti itu, beberapa teknik telah dikembangkan. Peramalan pada umumya dapat dibedakan dari berbagai segi tergantung dalam cara melihatnya. Dilihat dari jangka waktu ramalan yang disusun, peramalan dapat dibedakan atas dua macam, yaitu:
2. Peramalan jangka pendek, yaitu peramalan yang dilakukan untuk penyusunan hasil ramalan yang dilakukan kurang dari satu setengah tahun atau tiga semester.
Apabila dilihat dari sifat penyusunannya, maka peramalan dapat dibedakan menjadi dua macam, yaitu:
1. Peramalan subjektif, yaitu peramalan yang didasarkan atas perasaan atau intuisi dari orang yang menyusunnya. Dalam hal ini pandangan atau ketajaman pikiran orang yang menyusunnya sangat menentukan baik tidaknya hasil peramalan.
2. Peramalan objektif, yaitu peramalan yang didasarkan atas data yang relevan pada masa lalu dengan menggunakan teknik-teknik dan metode-metode dalam penganalisaan data tersebut.
Dilihat dari sifat ramalan yang telah disusun, maka peramalan dapat dibedakan atas dua macam, yaitu:
1. Peramalan kualitatif atau teknologis, yaitu peramalan yang didasarkan atas data kualitatif masa lalu. Hasil peramalan yang ada tergantung pada orang yang menyusunnya, karena peramalan tersebut sangat ditentukan oleh pemikiran yang bersifat intuisi, judgement (pendapat) dan pengetahuan serta pengalaman dari penyusunnya.Metoda kualitatif dibagi menjadi dua metode,yaitu:
a. Metode eksploratif
Pada metoda ini dimulai dengan masa lalu dan masa kini sebagai awal dan bergerak ke arah masa depan secara heuristik, sering kali dengan melihat semua kemungkinan yang ada.
b. Metode normatif
dapat dicapai berdasarkan kendala, sumber daya dan teknologi yang tersedia.
2. Peramalan kuantitatif, yaitu peramalan yang didasarkan atas data kuantitatif pada masa lalu. Hasil peramalan yang dibuat tergantung pada metode yang digunakan dalam peramalan tersebut. Metode yang baik adalah metode yang memberikan nilai-nilai perbedaan atau penyimpangan yang mungkin.
Metode peramalan kuantitatif terbagi atas dua jenis model peramalan yang utama, yaitu:
1. Model deret berkala (time series)
Metode peramalan yang didasarkan atas penggunaan analisa pola hubungan antara variabel yang akan diperkirakan dengan variabel waktu, yang merupakan deret waktu.
2. Model kausal, yaitu metode peramalan yang didasarkan atas penggunaan analisa pola hubungan antara variabel lain yang mempengaruhinya, yang bukan waktu yang disebut metode korelasi atau sebab akibat. Model kausal terdiri dari:
a.Metode regresi dan korelasi b. Metode ekonometri c.Metode input dan output
2.2.5.3Teknik Peramalan
Teknik peramalan secara garis besar dapat dikelompokkan menjadi 2 yaitu:
1. Metode Time Series (Deret Waktu)
Secara garis besar metode time series dapat dikelompokkan menjadi: a.Metode Averaging
direndam dengan rata-ratanya, biasanya dipakai untuk peramalan jangka pendek.
Adapun metode-metode yang termasuk didalamnya, antara lain: a. Simple Average
Rumus yang digunakan:
(2.1)
Keterangan :
= F =Hasil Ramalan
T= Periode
= Demand pada periode t
b. Single Moving Average
Salah satu cara untuk mengubah pengaruh data masa lalu terhadap nilai tengah sebagai ramalan adalah dengan menentukan sejak awal berapa jumlah nilai observasi masa lalu yang akan dimasukkan untuk menghitung nilai tengah. Setiap muncul nilai observasi baru,nilai rata-rata baru dapat dihitung dengan membuang nilai observasi yang paling tua dan memasukkan nilai observasi yang terbaru.
Rumus yang digunakan:
(2.2)
Metode single moving average ini biasanya lebih cocok digunakan untuk melakukan forecast hal-hal yang bersifat random,artinya tidak ada gejala trend naik maupun turun, musiman, dansebagainya, melainkan sulit diketahui polanya.
Metode single moving average ini mempunyai 2 sifat khusus yaitu, 1) Membutuhkan data historis selama jangka waktu tertentu. 2) Semakin panjang jangka waktu moving average akan
menghasilkan moving average yang semakin halus. Metode single moving average ini mudah menghitungnya dan sederhana. Tetapi mempunyai kelemahan-kelemahan sebagai berikut.
1. Perlu data historis yang cukup 2. Semua data diberi weight yang sama
3. Kalau fluktuasi data tidak random tidak menghasilkan forecast yang baik.
c.Double Moving Average
Jika data tidak stasioner serta mengandung pole trend, maka dilakukan moving average terhadap hasil single moving average. Rumus yang digunakan:
(2.3)
(2.4)
(2.5)
(2.6)
Dipakai pada kondisi dimana bobot data pada periode yang satu berbeda dengan data pada periode sebelumnya dan membentuk fungsi Exponential yang biasa disebut Exponential smoothing.Adapun metode-metode yang termasuk didalamnya, antara lain:
a. Single Exponential Smoothing
Metode ini banyak mengurangi masalah penyimpangan data karena tidak perlu lagi menyimpan data historis. Pengaruh besar kecilnya α berlawanan arah dengan pengaruh memasukan jumlah pengamatan. Metode ini selalu mengikuti setiap trend dalam data sebenarnya karena yang dapat dilakukannya tidak lebih dari mengatur ramalan mendatang dengan suatu persentase dari kesalahan terakhir. Untuk menentukan α mendekati optimal memerlukan beberapa kali percobaan.
Jika suatu deret data historis XT untuk T = 1,2,3,…,N, maka data ramalan eksponensial untuk data waktu T adalah FT. Metode exponential smoothing yang sederhana dikembangkan dari metode rata-rata bergerak. Jika terdapat data dari T pengamatan maka nilai ramalan pada waktu T + 1 adalah sebagai berikut.
(2.7)
(2.8)
Metode exponential untuk N pengamatan adalah sebagai berikut
(2.9)
Misalkan observasi yang lama tidak tersedia sehingga harus
digantikan dengan suatu nilai pendekatan (aproksimasi). Salah satu pengganti yang mungkin adalah nilai ramalan periode yang sebelumnya
(2.10)
(2.11)
Jadi nilai ramalan pada waktu t + 1 tergantung pada pembobotan nilai observasi saat t, yaitu dan pada pembobotan nilai ramalan saat t yaitu
bernilai antara 0 dan 1. Bila , maka diperoleh persamaan
(2.12)
Keterangan :
= Hasil forecast untuk periode t+1
= Konstanta pemulusan
= Data Demand/aktualuntuk periode t
= Forecast pada periode t
α disebut pemulusan konstan. Dalam metode exponential smoothing, nilai α bisa ditentukan secara bebas, artinya tidak ada suatu cara yang pasti untuk mendapatkan nilai α yang optimal. Maka pemilihan nilai α dilakukan dengan cara trial dan error. Besarnya α terletak antara 0 dan 1.
b. Double Exponential Smoothing satu parameter dari Browns
Dasar pemikiran dari pemulusan eksponensial linier dari Browns adalah serupa dengan rata-rata bergerak linier, karena kedua nilai pemulusan tunggal dan ganda ketinggalan dari data yang sebenarnya bilamana terdapat unsur trend. Persamaan yang dipakai dari metode ini adalah sebagai berikut:
(2.13)
(2.14)
(2.16)
(2.17)
Dimana :
=Data Aktual untuk periode t
=Data Pemulusan I untuk periode t
=Data Pemulusan II untuk periode t
=Data Pemulusan I untuk periode (t-1)
=Data Pemulusan II untuk periode (t-2)
=Konstanta Pemulusan
=Intersepsi pada periode t
=Nilai Trend periode t
=Hasil peramalan untuk periode (t+1)
=Jumlah periode waktu kedepan yang diramalkan
c. Double Exponential Smoothing Dua Parameter dari Holt
Metode pemulusan eksponensial linier dari Holt pada prinsipnya serupa dengan Browns kecuali bahwa Holt tidak menggunakan rumus pemulusan berganda secara langsung. Sebagai gantinya, Holt memutuskan nilai trend dengan parameter yang berbeda dari dua parameter yang digunakan pada deret yang asli. Ramalan dari pemulusan eksponensial linier Holt didapat dengan menggunakan dua konstanta pemulusan dan tiga persamaan, yaitu:
(2.18)
(2.19)
d. Regresi Linier
Regresi linier digunakan untuk peramalan apabila set data yang ada linier, artinya hubungan antara variabel waktu dan permintaan berbentuk garis (linier). Metode regresi linier didasarkan atas perhitungan least square error, yaitu dengan memperhitungkan jarak terkecil kesuatu titik pada data untuk ditarik garis. Adapun untuk persamaan peramalan regresi linier dipakai tiga konstanta, yaitu a, b dan Y. Dengan masing-masing formulasinya adalah sebagai berikut:
(2.21)
(2.22)
(2.23)
Keterangan :
= Variabel yang diprediksi
= Parameter Peramalan
= Variabel Independen
2.2.5.4Menghitung Kesalahan Ramalan
Selanjutnya untuk mengukur error (kesalahan) biasanya digunakan Mean Absolute Error atau Mean Square.
1. Mean Absolute Error (MAE)
Mean Absolute Error ( MAE) yaitu rata-rata nilai absolute error dari kesalahan meramal (tidak dihiraukan tanda positif atau negatifnya).
(2.24)
Mean Squared Error (MSE) yaitu rata-rata dari Kesalahan forecast dikuadratkan.
(2.25)
Keterangan :
= Data Aktual pada periode t
= Data ramalan dihitung dari model yang digunakan pada periode t
n = banyak data hasil ramalan
2.2.6 Konsep Sistem Basis Data
Sistem basis data (database) merupakan sistem yang terdiri dari kumpulan file atau tabel yang saling berhubungan dan memungkinkan beberapa pemakai mengakses dan memanipulasinya. Sistem basis data juga merupakan suatu sistem yang menyusun dan mengelola data organisasi perusahaan, sehingga mampu menyediakan informasi yang diperlukan oleh pemakai.[10]
2.2.6.1Komponen Basis Data
Sistem basis data terdapat komponen-komponen utama yaitu perangkat keras, (hardware), sistem operasi (operating system), basis data (database), program aplikasi (application program), Database Management System (DBMS), dan pemakai (user). Adapun penjelasan mengenani komponen-komponen utama sistem basis data adalah sebagai berikut :[10]
1. Perangkat Keras
Perangkat keras (hardware) yang biasanya terdapat dalam sebuah sistem basis data adalah komputer untuk sistem stand alone, sistem jaringan (network), memori sekunder yang online (harddisk), memori sekunder yang offline (disk), dan perangkat komunikasi untuk sistem jaringan.
2. Sistem Operasi
operasi-operasi dasar dalam komputer, pengelolaan file, dan lain-lain. Program pengelola basis data akan aktif (running) jika sistem operasi yang dikehendaki sesuai.
3. Basis Data
Basis data merupakan koleksi dari data yang terorganisasi dengan cara sedemikian rupa sehingga data tersebut mudah disimpan dan dimanipulasi. Sebuah sistem basis data dapat memiliki beberapa basis data. Setiap basis data dapat memiliki sejumlah objek basis data (seperti tabel, indeks, dan lain-lain). Selain berisi atau menyimpan data, setiap basis data juga mengandung/ meyimpan definisi struktur.
4. Database Management System
Database Management System (DBMS) merupakan kumpulan program aplikasi yang digunakan untuk membuat dan mengelola basis data. DBMS berisi suatu koleksi data dan satu set program untuk mengakses data. DBMS merupakan perangkat lunak (software) yang menetukan bagaimana tersebut diorganisasi, disimpan, diubah, dan diambil kembali. Perangkat lunak ini juga menerapkan mekanisme pengamanan data, pemakaian data bersama, dan konsistensi data.
5. Pemakai
Users atau pemakai adalah beberapa jenis atau tipe pemakai pada sistem basis data, berdasarkan cara mereka berinteraksi pada basis data, diantaranya program aplikasi, pemakai mahir, pemakai umum, dan pemakai khusus.
2.2.7 Entity Relationship Diagram
dan perancangan database , karena model data ini akan menunjukan bermacam-macam data yang dibutuhkan dan hubungan antar data. [3]
2.2.7.1Elemen–Elemen Entity Relationship Diagram
ERD terbagi atas tiga komponen, yaitu entitas (entity), atribut (atribute), dan relasi atau hubungan (relation). Secara garis besar entitas merupakan dasar yang terlibat dalam sistem. Atribut atau field berperan sebagai penjelas dari entitas, dan relasi atau hubungan menunjukkan hubungan yang terjadi antara dua entitas.
1) Entitas (Entity)
Pada E-R diagram, entity digambarkan dengan sebuah bentuk persegi panjang. Entity adalah sesuatu apa saja yang ada di dalam sistem, nyata maupun abstrak dimana data tersimpan atau dimana terdapat data. Entitas diberi nama dengan kata benda dan dapat dikelompokan dalam empat jenis nama, yaitu orang,benda,lokasi,dan kejadian (terdapat unsur waktu didalamnya).
2) Relasi(Relationship)
Pada E-R diagram, relasi dapat digambarkan dengan sebuah bentuk belah ketupat. Relasi adalah hubungan alamiah yang terjadi antar entitas. Pada umumnya penghubung(relasi) diberi nama dengan kata kerja dasar, sehingga memudahkan untuk melakukan pembacaan relasinya.
3) Derajat Relasi
Derajat relasi adalah jumlah entitas yang berpartisipasi dalam satu relasi. Derajat relasi yang sering digunakan dalam E-R diagram :
a. Unary Relationship
disebut sebagai Recursive Relationship atau Reflective Relationship.
b. Binary Relationship
Binary Relationship adalah model relationship antara instance-instance dari suatu tipe entitas (dua entity yang berasal dari entity yang sama). Relasi ini paling umum digunakan dalam pembuatan model data.
c. Ternary Relationship
Ternary Relationship adalah merupakan relasi antara instance-instance dari tiga tipe entitas secara sepihak. Perlu diketahui ternary relationship tidak sama dengan tiga relationship binary.
4) Attribut
Secara umum atribut adalah sifat atau karakteristik dari tiap entitas maupun tiap relasi. Maksudnya atribut adalah sesuatu yang menjelaskan apa sebenarnya yang dimaksud entitas maupun relationship,sehingga sering dikatakan atribut adalah elemen dari setiap entitas dan relasi.
a. Atribut Value
Atribut value atau nilai atribut adalah suatu occurence tertentu dari sebuah attribute didalam suatu entity atau relasi. Ada dua jenis atribut
a.1. Identifier (Key) digunakan untuk menentukan suatu entity secara unik (primary key).
a.2. Descriptor (nonkey attribute) digunakan untuk menspesifikasikan karakteristik dari suatu entity yang tidak unik.
Kardinalitas relasi menunjukkan jumlah maksimum tupel yang dapat berelasi dengan entitas pada entitas yang lain. Kardinalitas relasi merujuk kepada hubungan maksimum yang terjadi dari entitas yang satu ke entitas yang lain dan begitu juga sebaliknya. Terdapat tiga macam kardinalitas relasi, yaitu [3]
a. One to One
Tingkat hubungan satu ke satu,dinyatakan dengan satu kejadian pada entitas pertama, hanya mempunyai satu hubungan dengan satu kejadian pada entitas yang kedua dan sebaliknya.
b. One to Many atau Many to One
Tingkat hubungan satu ke banyak adalah sama dengan banyak ke satu. Tergantung dari arah mana hubungan tersebut dilihat. Untuk satu kejadian pada entitas yang pertama dapat mempunyai banyak hubungan dengan kejadian pada entitas yang kedua. Sebaliknya satu kejadian pada entitas yang kedua hanya dapat mempunyai satu hubungan dengan satu kejadian pada entitas yang pertama.
a)One to Many
Berarti satu tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas B, berhubungan dengan paling banyak satu tupel entitas A. b)Many to One
Berarti setiap tupel pada entitas A dapat berhubungan dengan paling banyak satu tupel pada entitas B, tetapi tidak sebaliknya, dimana setiap tupel pada entitas B berhubungan dengan paling banyak satu tupel pada entitas A
Tingkat hubungan banyak ke banyak terjadi jika tiap kejadian pada sebuah entitas akan mempunyai banyak hubungan dengan kejadian pada entitas lainnya. Baik dilihat dari sisi entitas yang pertama, maupun dilihat dari sisi yang kedua. Berarti setiap tupel pada entitas A dapat berhubungan dengan banyak tupel pada entitas B, dan demikian juga sebaliknya, dimana setiap tupel pada entitas B dapat berhubungan dengan banyak tupel pada entitas A.
2.2.8 DFD
Data Flow Diagram (DFD) merupakan alat yang digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana data tersebut mengalir ataupun lingkungan fisik dimana data tersebut akan disimpan.
2.2.8.1Elemen Dasar DFD
Adapun elemen dasar yang dimiliki DFD adalah sebagai berikut : [3]
1) External Entity
Sesuatu yang berada di luar sistem, tetapi memberikan data ke dalam sistem atau memberikan data dari sistem, disimbolkan dengan suatu blok notasi.
2) Data Flow
Data Flow / Arus Data merupakan tempat mengalirnya informasi dan digambarkan dengan garis yang menghubungkan komponen dari sistem. Arus data ditunjukan dengan arah panah dan garis diberi nama atas arus data yang mengalir.
Proses merupakan apa yang dikerjakan oleh sistem. Proses dapat mengolah data atau aliran data masuk menjadi aliran data keluar. Proses berfungsi mentransformasikan satu atau beberapa data masukan menjadi satu atau beberapa data keluaran sesuai dengan spesifikasi yang diinginkan. Setiap proses memiliki satu atau beberapa masukan serta menghasilkan satu atau beberapa data keluaran.
4) Data Store
Data store merupakan tempat penyimpanan data pengikat data yang ada dalam sistem. Data store disimbolkan dengan sepasang dua garis sejajar atau dua garis dengan salah satu sisi samping terbuka. Proses dapat mengambil data dari atau menberikan data ke database.
5) Kamus Data
Kamus data berfungsi membantu pelaku sistem untuk mengartikan aplikasi secara detail dan mengorganisasi semua elemen data yang digunakan dalam sistem secara persis sehingga pemakai dan penganalisis sistem mempunyai dasar pengertian yang sama tentang masukan, keluaran, penyimpanan dan proses.
2.2.8.2Diagram Konteks
Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang linkup suatu sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Dalam diagram konteks hanya ada satu proses. Tidak boleh ada store dalam diagram konteks.
2.2.8.3Diagram Nol (OverviewDiagram)
adanya/digambarkannya data store yang digunakan Keseimbangan input dan output antara diagram nol dengan diagram konteks harus terpelihara.
2.2.8.4Balancing dalam DFD
Aliran data yang masuk ke dalam dan keluar dari suatu proses harus sama dengan aliran data yang masuk kedalam dan keluar dari rincian proses pada level/tingkatan dibawahnya. Hal-hal yang perlu diperhatikan pada DFD yang memiliki lebih dari satu level sebagai berikut.[3]
1. Harus terdapat keseimbangan input dan output antara satu level dan level berikutnya.
2. Keseimbangan antara level 0 dan level 1 dilihat pada input/output dari aliran data ke atau dari terminal pada level 0 sedangkan keseimbangan antara level 1 dan level 2 dilihat pada input/ouput dari aliran data ke/ dari proses yang bersangkutan.
3. Nama aliran data,data store dan terminal pada setiap level harus sama, apabila objeknya sama.
2.2.9 Intranet
Intranet adalah Jaringan Komputer yang khusus untuk penggunaan pada lingkungan di dalam batasan suatu Organisasi. Dilihat dari sudut teknisinya, Intranet didefinisikan sebagai penggunaan teknologi Internet dan WWW (World Wide Web) di dalam sebuah jaringan komputer lokal (LAN). Local Area Network (LAN) adalah sekumpulan komputer-komputer yang saling dihubungkan pada suatu daerah atau lokasi tertentu. Intranet memaksimalkan penggunaan LAN tersebut dengan menambahkan kemampuan-kemampuan Internet kedalamnya.
2.2.10 Adobe Dreamweaver
menyediakan berbagai Tools yang siap pakai. Sangat mudah untuk menyisipkan elemen-elemen apapun yang kita perlukan, seperti Text, Gambar, atau Media seperti audio, video, animasi flash, dan lain-lain. Selain itu Adobe Dreamweaver juga menyediakan fasilitas untuk melakukan Pemrograman Scripting seperti, ASP (Active Server Page), JSP (Java Server Page), PHP (PHP Hypertext Preprocessor), Java Scripts, Cold Fusion, CSS (Cascading Style Sheet), XML (Extensible Markup Languange), dan lain sebagainya.
2.2.11 CSS (Cascading Style Sheet)
Cascading Style Sheet (CSS) merupakan salah satu bahasa pemrograman web untuk mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur dan seragam. Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML. CSS dapat mengendalikan ukuran gambar, warna bagian tubuh pada teks, warna tabel, ukuran border, warna border, warna hyperlink, warna mouse over, spasi antar paragraf, spasi antar teks, margin kiri, kanan, atas, bawah, dan parameter lainnya.CSS adalah bahasa style sheet yang digunakan untuk mengatur tampilan dokumen. Dengan adanya CSS memungkinkan kita untuk menampilkan halaman yang sama dengan format yang berbeda.[9]
2.2.12 PHP
Menurut Dokumen Resmi PHP, PHP merupakan singkatan dari PHP : Hypertext Preprocessor adalah bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server. Hanya hasilnya yang dikirimkan ke klien atau tempat pemakai menggunakan browser.[2]
Adapaun kelebihan bahasa pemograman PHP dengan web script lainnya adalah sebagai berikut :
a) Life Cycle yang singkat: PHP selalu up to date mengikuti perkembangan teknologi internet.
Server (PWS/Windows 95,98, NT 4.0), Netscape and iPlanet Servers, Oreilly Website Pro Server, Audium, Xitami, dll). PHP juga dapat digunakan di semua sistem operasi (Linux, UNIX (temasuk variannya HP-UX, Solaris, dan OpenBSD), Windows, Mac OS, RISC OS).
c) Mendukung banyak paket database baik komersial maupun non-komersial (Adabas D, dBase, Direct MS-SQL, Empress, FilePro, FrontBase, Hyperwave, IBM DB2, Informix, Ingres, Interbase, MSQL, MySQL, ODBC, Oracle, Ovrimos, PostgrSQL, Solid, Sybase, UNIX DBM, Velocis).
d) Tidak terbatas pada hasil keluaran HTML: PHP memiliki kemampuan untuk mengolah keluaran gambar, PDF, dan movie flash. PHP juga dapat menghasilkan teks seperti XHTML dan XML.
2.2.13 MySQL
MySQL adalah sebuah aplikasi Relational Database Management Server (RDBMS) bersifat open source yang memungkinkan data diakses dengan cepat oleh banyak pemakai secara bersamaan dan juga memungkinkan pembatasan akses pemakai berdasarkan privilege (hak akses) yang diberikan. MySQL menggunakan bahasa SQL (structured query language) yang merupakan bahasa standar pemograman database.
Sebagai software database dengan konsep database modern, MySQL memiliki banyak kelebihan.
a) Protability. MySQL dapat digunakan dengan stabil tanpa kendala pada berbagai sistem operasi diantaranya seperti Windows, Linux, Mac OS X Server, Solaris, Amiga HP-UX dan masih banyak lagi.
b) Open source. MySQL didistribusikan secara opensource di bawah lisensi GPL, sehingga dapat memperoleh menggunakannya secara cuma-cuma tanpa dipungut biaya sepeserpun.
ini akan memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan dalam waktu yang bersamaan pula.
d) Performance Tuning. MySQL memiliki kecepatan yang cukup
menakjubkan dalam menangani query sederhana, serta mampu memproses lebih banyak SQL persatuan waktu.
e) Column Types. MySQL didukung tipe kolom(tipe data) yang sangat kompleks.
f) Command dan Functions. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam perintah(query).
g) Scalability dan Limits. MySQL mampu menangani basis data dalam skala besar, dengan jumlah rekaman (records) lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas indeks yang dapat ditampung mencapai 32 indeks pada tiap tabelnya.
h) Interface. Sama halnya dengan software database lainnya, MySQL memiliki interface (antarmuka) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application ProgrammingInterface).
193
Setelah sistem dianalisis dan didesain secara terperinci maka selanjutnya akan dilakukan tahap implementasi. Implementasi sistem merupakan tahap peletakan sistem sehingga dapat dioperasikan. Implementasi bertujuan untuk mengkonfirmasi modul-modul perancangan sehingga pengguna sistem dapat memberikan masukan-masukan terhadap pengembang sistem.
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 aplikasi sistem informasi ini.
4.1.2. Implementasi Perangkat Lunak
Perangkat lunak yang digunakan untuk implementasi sistem informasi ini dapat dilihat pada table 4.1 berikut.
Tabel 4. 1 Implementasi Perangkat Lunak
No Perangkat Lunak Keterangan
1. Sistem Operasi Windows 7
2. Web Server WampServer 2.2e
3. DBMS MySQL 5
4. Web browser Mozilla Firefox 12
4.1.3. Implementasi Perangkat Keras
Perangkat keras yang digunakan untuk implementasi sistem informasi ini dapat dilihat pada tabel 4.2 berikut.
Tabel 4. 2 Implementasi Perangkat Keras
Perangkat Keras Spesifikas
6. Jaringan Internet pada Jaringan Dinkes
7. Printer Printer berwarna
8. Mouse dan Key Board Standar
4.1.4. Implementasi Basis Data
Pembangunan database dilakukan dengan menggunakan aplikasi DBMS MySQL. Implementasi database dalam bahasa SQL dan berikut adalah langkah-langkah dalam pembuatan tabel :
1. Tabel detail_kartu_stok
No SQL
CREATE TABLE IF NOT EXISTS `detail_kartu_stok` (
`id_det_kartu_stok` int(11) NOT NULL, PRIMARY KEY (`id_det_kartu_stok`),
KEY `no_kartu` (`no_kartu`),
KEY `id_det_pengeluaran` (`id_det_pengeluaran`), CONSTRAINT `detail_kartu_stok_ibfk_1` FOREIGN KEY (`no_kartu`) REFERENCES `kartu_stok` (`no_kartu`) ON DELETE RESTRICT ON UPDATE RESTRICT,
CONSTRAINT `detail_kartu_stok_ibfk_2` FOREIGN KEY (`id_det_pengeluaran`) REFERENCES `detail_pengeluaran` (`id_det_pengeluaran`) ON DELETE RESTRICT ON UPDATE
2. Tabel detail_pemakaian
CREATE TABLE IF NOT EXISTS `detail_pemakaian` (
`id_det_pemakaian` int(11) NOT NULL, PRIMARY KEY (`id_det_pemakaian`), KEY `no_kartu` (`no_kartu`),
KEY `id_pemakaian` (`id_pemakaian`),
CONSTRAINT `detail_pemakaian_ibfk_1` FOREIGN KEY (`no_kartu`) REFERENCES `kartu_stok` (`no_kartu`) ON DELETE RESTRICT ON UPDATE RESTRICT,
CONSTRAINT `detail_pemakaian_ibfk_2` FOREIGN KEY (`id_pemakaian`) REFERENCES `pemakaian`
(`id_pemakaian`) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
3. Tabel detail_pengeluaran
NO SQL
CREATE TABLE IF NOT EXISTS `detail_pengeluaran` (
`id_det_pengeluaran` int(11) NOT NULL, `jumlah_pengeluaran` int(11) NOT NULL, `id_pengeluaran` int(11) NOT NULL, `id_det_permintaan` int(11) NOT NULL, PRIMARY KEY (`id_det_pengeluaran`),
KEY `id_det_permintaan` (`id_det_permintaan`), KEY `id_pengeluaran` (`id_pengeluaran`),
CONSTRAINT `detail_pengeluaran_ibfk_1` FOREIGN KEY (`id_pengeluaran`) REFERENCES `pengeluaran`
(`id_pengeluaran`) ON DELETE RESTRICT ON UPDATE RESTRICT,
CONSTRAINT `detail_pengeluaran_ibfk_2` FOREIGN KEY (`id_det_permintaan`) REFERENCES `detail_permintaan` (`id_det_permintaan`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4. Tabel detail_permintaan
NO SQL
CREATE TABLE IF NOT EXISTS `detail_permintaan` (
6 PRIMARY KEY (`id_det_permintaan`), KEY `kode_obat` (`kode_obat`),
KEY `id_permintaan` (`id_permintaan`),
CONSTRAINT `detail_permintaan_ibfk_1` FOREIGN KEY (`kode_obat`) REFERENCES `obat` (`kode_obat`) ON DELETE RESTRICT ON UPDATE RESTRICT,
ADD CONSTRAINT `detail_permintaan_ibfk_2` FOREIGN KEY (`id_permintaan`) REFERENCES `permintaan`
(`id_permintaan`) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
5. Tabel kartu_stok
NO SQL
CREATE TABLE IF NOT EXISTS `kartu_stok` (
`no_kartu` int(11) NOT NULL, `stok` int(11) NOT NULL,
`lokasi` enum('gudang','puskesmas') NOT NULL, `kode_obat` varchar(10) NOT NULL,
`id_kemasan` int(11) NOT NULL, PRIMARY KEY (`no_kartu`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
6. Tabel Kemasan
NO SQL
PRIMARY KEY (`id_kemasan`), KEY `id_satuan` (`id_satuan`),
CONSTRAINT `satuan_ibfk_1` FOREIGN KEY (`id_satuan`) REFERENCES `satuan` (`id_satuan`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
7. Tabel Satuan
NO SQL PRIMARY KEY (`id_satuan`)
8. Tabel Obat PRIMARY KEY (`kode_obat`),
KEY `id_petugas` (`id_petugas`),CONSTRAINT
`obat_ibfk_1` FOREIGN KEY (`id_petugas`) REFERENCES `petugas` (`id_petugas`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
9. Tabel Pemakaian
NO SQL
CREATE TABLE IF NOT EXISTS `pemakaian` (
`id_pemakaian` int(11) NOT NULL, `tgl_pemakaian` date NOT NULL, `kd_puskesmas` int(11) NOT NULL, `id_petugas` int(11) NOT NULL, PRIMARY KEY (`id_pemakaian`),
KEY `kd_puskesmas` (`kd_puskesmas`), KEY `id_petugas` (`id_petugas`),
CONSTRAINT `pemakaian_ibfk_1` FOREIGN KEY
(`id_petugas`) REFERENCES `petugas` (`id_petugas`) ON DELETE RESTRICT ON UPDATE RESTRICT,
CONSTRAINT `pemakaian_ibfk_2` FOREIGN KEY (`kd_puskesmas`) REFERENCES `puskesmas`
(`kd_puskesmas`) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
10. Tabel Pengeluaran
NO SQL
CREATE TABLE IF NOT EXISTS `pengeluaran` (
`id_pengeluaran` int(11) NOT NULL, `tanggal_pengeluaran` date NOT NULL, `status` enum('waiting','ok') NOT NULL, `id_permintaan` int(11) NOT NULL,
`id_petugas` int(11) NOT NULL, PRIMARY KEY (`id_pengeluaran`),
KEY `id_permintaan` (`id_permintaan`), KEY `id_petugas` (`id_petugas`),
14 15 16 17
CONSTRAINT `pengeluaran_ibfk_2` FOREIGN KEY
(`id_petugas`) REFERENCES `petugas` (`id_petugas`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
11. Tabel permintaan
NO SQL
CREATE TABLE IF NOT EXISTS `permintaan` (
`id_permintaan` int(11) NOT NULL, `tanggal_permintaan` date NOT NULL,
`status` enum('idle','checked') NOT NULL, `kd_puskesmas` int(11) NOT NULL,
`id_petugas` int(11) NOT NULL, PRIMARY KEY (`id_permintaan`),
UNIQUE KEY `id_permintaan` (`id_permintaan`), KEY `kd_puskesmas` (`kd_puskesmas`),
KEY `id_petugas` (`id_petugas`),
CONSTRAINT `permintaan_ibfk_1` FOREIGN KEY (`kd_puskesmas`) REFERENCES `puskesmas`
(`kd_puskesmas`) ON DELETE RESTRICT ON UPDATE RESTRICT, ADD CONSTRAINT `permintaan_ibfk_2` FOREIGN KEY
(`id_petugas`) REFERENCES `petugas` (`id_petugas`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
12. Tabel Petugas
NO SQL `tanggal_dibuat` datetime NOT NULL,
`last_session` datetime DEFAULT NULL,
`status` enum('on','off') NOT NULL DEFAULT 'off', `kd_puskesmas` int(11) DEFAULT NULL,
PRIMARY KEY (`id_petugas`),
KEY `kd_puskesmas` (`kd_puskesmas`), CONSTRAINT `petugas_ibfk_1` FOREIGN KEY (`kd_puskesmas`) REFERENCES `puskesmas`
13. Tabel puskesmas
CREATE TABLE IF NOT EXISTS `puskesmas` (
`kd_puskesmas` int(11) NOT NULL,
`nama_puskesmas` varchar(30) NOT NULL, `alamat` text NOT NULL,
PRIMARY KEY (`kd_puskesmas`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
4.1.5. Implementasi Antarmuka
Implementasi antarmuka merupakan tampilan dari aplikasi yang dibangun. Aplikasi pengolahan data proses memilki beberapa bagian tampilan menu dapat dilihat pada tabel 4.3 berikut:
Tabel 4. 3 Implementasi Antarmuka Administrator
Menu Deskripsi Nama File
Login Digunakan sebagai
halaman login admin
index.php
Beranda Halaman yang digunakan
untuk beranda admin
securepage.php
Pengolahan Data
Petugas
Halaman yang digunakan untuk mengolah data
petugas, seperti
tambah,ubah dan hapus
petugas.php
Pengolahan Data
Puskesmas
Halaman yang digunakan untuk mengolah data
puskesmas ,seperti
tambah,ubah dan hapus
puskesmas.php
Data Log Halaman yang digunakan
untuk menmpilkan data log
log.php
Keluar logout.php
Tabel 4. 4 Implementasi Antarmuka ( Petugas Gudang )
Menu Deskripsi Nama File
Login Digunakan sebagai
halaman login petugas
index.php
Beranda Halaman yang digunakan
untuk beranda petugas
index.php
untuk mengolah data obat, seperti tambah, ubah, dan cari
Pengolahan Data
Kemasan
Halaman yang digunakan untuk mengolah data kemasan, seperti tambah, ubah dan hapus
jenis.php
Pengolahan Data satuan Halaman yang digunakan untuk mengolah data satuan, seperti tambah, ubah dan hapus
Satuan.php
Pengolahan Data
kartu_stok
Halaman yang digunakan untuk mengolah data kartu_stok , seperti
tambah, ubah dan
pencarian
kartu_stok.php
Pengolahan data detail kartu_stok
Halaman yang digunakan untuk mengolah data detail kartu_stok , seperti tambah, ubah
detail_kartu.php
Pengeluaran Obat Halaman yang digunakan untuk mengolah data pengeluaran, seperti tambah,ubah, dan setujui
pengeluaran.php
Pengolahan Detail
Pengeluaran
Halaman yang digunakan untuk mengolah data detail pengeluaran yang berisikan ubah data detail
detail_pengeluaran.php
Pengolahan data
permintaan
Halaman yang digunakan untuk mengolah data permintaan, seperti
menambah data
pengeluaran melalui data permintaan
request.php
Pengolahan Ramalan Halaman yang digunakan untuk mengolah data
pemintaan untuk
memprediksi stok barang
ramalan.php
Keluar logout.php
Tabel 4. 5 Implementasi Antarmuka ( Petugas Puskesmas )
Menu Deskripsi Nama File
Login Digunakan sebagai
halaman login petugas
Menu Deskripsi Nama File
Beranda Halaman yang digunakan
untuk beranda petugas
index.php
Stok Obat Halaman yang
menampilkan data stok obat
stok_obat.php
Pengolahan Data
Pemakaian
Halaman yang digunakan untuk mengolah data pemakaian , seperti tambah, ubah
pemakaian.php
Pengolahan data detail pemakaian
Halaman yang digunakan untuk mengolah data detail pemakaian , seperti tambah, ubah, dan hapus
Detail_pemakaian.php
Pengolahan permintaan Halaman yang digunakan untuk mengolah data permintaan tambah, ubah, hapus
request.php
Pengolahan Detail
Permintaan
Halaman yang digunakan untuk mengolah data detail permintaan, seperti tambah, ubah, dan hapus
detail_permintaan.php
Pengolahan Laporan Halaman yang digunakan untuk mengolah data laporan menjadi bentuk pdf, laporan tersebut terdiri dari laporan
StockOpname, dan
laporan pemakaian dan permintaan
StockOp.php LPLPO.php
Keluar logout.php
4.2. Pengujian Sistem
Pengujian sistem merupakan hal terpenting yang bertujuan untuk menemukan kesalahan-kesalahan atau kekurangan-kekurangan pada sistem informasi yang diuji. Pengujian bermaksud untuk mengetahui sistem informasi yang dibuat telah memenuhi kinerja sesuai dengan tujuan perancangan.
Rencana pengujian yang akan dilakukan adalah dengan cara menguji sistem yang dibangun secara alpha dan beta. Pengujian sistem informasi distribusi obat di Dinas Kesehatan Kabupaten Bandung Barat menggunakan data uji berdasarkan data yang diberikan dari beberapa data yang diberikan petugas gudang farmasi.
4.2.1. Pengujian Black Box
Pengujian black box dilakukan dengan tujuan untuk menguji fungsi-fungsi
khusus dari perangkat lunak yang dirancang sehingga dapat diketahui apakah data
yang dimasukan sudah sesuai dengan apa yang diharapkan atau belum. Teknik
pengujian black box yang digunakan adalah Equivalence partitioning dan
Cause-Effect Relationship.
4.2.1.1. Skenario Pengujian Black Box
Skenario pengujian Black box di dinas kesehatan kabupaten bandung barat terdiri dari 3 pelaku sistem, yaitu Administrator (Kepala Bagian Informasi), Gudang Farmasi, dan Puskesmas. Berikut skenario pengujian aplikasi administrator dapat dilihat pada table 4.6.
Tabel 4. 6 Skenario Pengujian Admin
Kelas Uji Butir Uji Jenis Pengujian
Login username Black Box
password Black Box
Data Petugas Nama Black Box
username Black Box
password Black Box
Data Puskesmas nama Black Box
Tabel 4. 7 Skenario Pengujian Petugas Gudang
Kelas Uji Butir Uji Jenis Pengujian
Login username Black Box
password Black Box
alamat Black Box
Data Obat Nama Black Box
Expire date Black Box
Data Satuan nama Black Box
Data Kemasan kemasan Black Box
satuan Black Box
Data Kartu_stok Nama obat Black Box
Kemasan Black Box
Data
detail_kartu_stok
Tanggal Black Box
masuk Black Box
Keterangan Black Box
Data Pengeluaran Tanggal Black Box
Data Detail
Pengeluaran
Nama obat Black Box
pengeluaran Black Box
Tabel 4. 8 Skenario Pengujian Petugas Puskesmas
Kelas Uji Butir Uji Jenis Pengujian
Login username Black Box
password Black Box
Data Pemakaian Tanggal Black Box
Data Detail
Pemakaian
Nama Obat Black Box
Kemasan Black Box
Jumlah pemakaian Black Box
Data Detail
Pengeluaran
Nama obat Black Box
Kelas Uji Butir Uji Jenis Pengujian
Data Permintaan tanggal Black Box
Data detail Pemintaan
Nama obat Black box
Kemasan Black box
Jumlah permintaan Black box
4.2.1.2. Kasus dan Hasil Pengujian Black Box
Kasus dan hasil pengujian berisi pemaparan dari rencana pengujian yang telah disusun pada skenario pengujian. Teknik pengujian black box yang digunakan adalah Equivalence partitioning dan Cause-Effect Relationship. Berikut ini pemaparan dari setiap butir pengujian yang terdapat pada skenario pengujian dengan menggunakan Equivalence partitioning :
4.2.1.2.1. Equivalence Partitioning Testing
Teknik pengujian Equivalence Partitioning adalah teknik pengujian perangkat lunak yang dilakukan dengan mencoba beberapa kemungkinan nilai masukan sebagai kelas-kelas uji untuk mengetahui kesalahan apa saja yang terdapat pada sistem.
1. Equivalence Partitioning Testing Admin a. Login