Dengan PHP, developer tidak perlu lagi berurusan dengan dua buah file yang terpisah seperti pada CGI. Browser web mengacu secara langsung ke file yang
dituju, yang lalu dibaca oleh server sebagaimana file HTML statis biasa. Bedanya, sebelum dikirim balik ke browser web, server web memeriksa isi file dan
menentukan apakah ada kode didalam file tersebut yang harus dieksekusi. Bila ada, kode-kode tersebut akan dieksekusi. Hasilnya akan dimasukkan kedalam
dokumen yang sama. Server web bekerja secara langsung terhadap file yang bersangkutan tidak memanggil script terpisah seperti pada metode CGI. Seluruh
kode di eksekusi di server oleh karena itu disebut server-side script. Lihat
gambar 2.13 dibawah ini untuk melihat kerja dari PHP dan Apache.
Gambar 2.13 Prinsip Kerja PHP dan Apache
PHP membuat proses pengembangan aplikasi menjadi mudah karena kelebihan-kelebihannya, yaitu :
1. Script kode program terintegrasi dengan file HTML, sehingga developer biasa berkonsentrasi langsung pada penampilan webnya.
2. Tidak ada proses compiling dan linking.
3. Berorientasi objek object Oriented. 4. Sintaksis pemrogramannya udah dipelajari, sangat menyerupai C dan Perl.
5. Integrasi yang sangat luas ke berbagai server database. Menulis web yang terhubung ke database menjadi sangat sederhana. Database yang didukung
oleh PHP : Oralce, Sybase, mSQL, MySQL, Solid, ODBC, PostgreSQL, Adabas D, FilePRo, Velocis, Informic, dBase, UNIX dbm.
2.2.12.3 Cascading Style Sheets CSS
Cascading Style Sheets CSS adalah suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu dokumen yang ditulis dalam bahasa
markup. Penggunaan yang paling umum dari CSS adalah untuk memformat halaman web yang ditulis dengan HTML dan XHTML. Walaupun demikian,
bahasanya sendiri dapat dipergunakan untuk semua jenis dokumen XML termasuk SVG dan XUL. Spesifikasi CSS diatur oleh World Wide Web
Consortium W3C. CSS digunakan oleh penulis maupun pembaca halaman web untuk
menentukan warna, jenis huruf, tata letak, dan berbagai aspek tampilan dokumen. CSS digunakan terutama untuk memisahkan antara isi dokumen yang ditulis
dengan HTML atau bahasa markup lainnya dengan presentasi dokumen yang ditulis dengan CSS. Pemisahan ini dapat meningkatkan aksesibilitas isi,
memberikan lebih banyak keleluasaan dan kontrol terhadap tampilan, dan mengurangi kompleksitas serta pengulangan pada stuktur isi.
CSS memungkinkan halaman yang sama untuk ditampilkan dengan cara yang berbeda untuk metode presentasi yang berbeda, seperti melalui layar, cetak,
suara sewaktu dibacakan oleh browser basis-suara atau pembaca layar, dan juga alat pembaca braille. Halaman HTML atau XML yang sama juga dapat
ditampilkan secara berbeda, baik dari segi gaya tampilan atau skema warna dengan menggunakan CSS.
2.2.12.4 JavaScript
JavaScript adalah bahasa script yang digunakan pada halaman HTML. JavaScript adalah varian dari java yang sangat terkenal dalam lingkungan
pemrograman web. JavaScript mempunyai keunggulan pada sisi client, maupun diakses lebih cepat dari script server. Tetapi kelemahannya pada script ini belum
tentu mampu diproses oleh browser client tergantung kompetibilitas browser tersebut. Cara untuk menjalankan javascript hanya dengan javascript-enabled
yaitu browser yang mampu menjalankan javascript seperti Netscape Navigator versi 2.0 keatas atau internet ekplorer MSIE-versi 3.0 ke atas.
Beberapa hal mengenai JavaScript : 1 JavaScript didesain untuk menambah interaktif suatu web.
2 JavaScript merupakan sebuah bahasa scripting dengan bahasa pemrograman yang ringan.
3 JavaScript biasanya disisipkan embedded dalam halaman HTML. 4 JavaScript adalah bahasa interpreter yang berarti skrip dieksekusi
tanpa proses kompilasi.
Ada beberapa cara untuk menuliskan JavaScript yaitu : a Script pada bagian head
Skrip ini dieksekusi ketika dipanggil biasanya berbentuk function atau dipanggil berdasarkan event tertentu. Peletakan script di head akan
menjamin script di-load terlebih dahulu sebelum digunakan. html
head script type=”textjavascript”
Function message {
Alert “Alert ini dipanggil saat even dijalankan”; }
script head
html b Script pada Body
Skrip akan dieksekusi ketika halaman di-load sampai dibagian body dan ketika ditempatkan berarti antara isi dan javacript dijadikan
satu bagian. html
head head
body
script type=”textjavascript” Document.write“Pesan ini akan tampil”;
script body
html c
External JavaScript Untuk memudahkan menulis script yang berulang-ulang di setiap
halaman maka JavaScript dapat ditulis di file secara ekternal. Jadi, antara HTML dan JavaScript dipisah, kemudian file tersebut dipanggil dari
dokumen HTML. File JavaScript tersebut disimpan dengan ektensi .js. html
head head
body script src=”xxx.js”
script body
html
2.2.12.5 Asynchronous JavaScript and XML AJAX
AJAX Asynchronous JavaScript and XML sesungguhnya bukanlah suatu bahasa pemrogarman, melainkan hanya suatu teknik yang memungkinkan untuk
membuat aplikasi web yang interaktif. Dengan menggunakan AJAX, aplikasi web
dapat berinteraksi dengan server di latar belakang sehingga tidak mempengaruhi halaman web secara keseluruhan. Sebagai gambaran, Anda mungkin sering
mendaftarkan diri pada suatu situs web sebagai anggota baru. Setelah Anda selesai mengetikan user ID saat registrasi, sistem bisa memberitahukan bahwa nama yang
Anda pakai sudah digunakan oleh orang lain atau belum. cBagaimana aplikasi web ini bisa tahu hal itu padahal Anda belum
mengklik tombol apapun dalam halaman web. Rahasianya terletak pada pemrosesan di latar belakang yang dilakukan oleh AJAX. Gambar 2.14
Menunjukan aplikasi web yang berbasis AJAX.
Antarmuka
Lapisan AJAX Klien
Server
Gambar 2.14 Model Aplikasi Web dengan AJAX
Nampak bahwa pada aplikasi web yang berbasis AJAX terdapat bagian yang disebut lapisan AJAX atau terkadang disebut mesin AJAX. Lapisan inilah
yang mengatur komunikasi antara client dan server. Butir penting yang perlu diperhatikan dalam lapisan AJAX :
1. Lapisan AJAX meminta layanan ke server atau tidak, tergantung pada jenis layanan antarmuka. Sebagai contoh, untuk validasi terhadap objek formulir
tidak perlu melakukan permintaan ke server. Cukup ditangani di sisi client. Namun untuk pemeriksaan keabsahan password, mau tidak mau harus
dilayangkan ke server karena harus berhubungan dengan database. 2. Sekalipun penambahan lapisan AJAX berkesan memperlambat proses karena
komunikasi ke server tidak lagi dilakukan secara langsung, pada kenyataanya yang terjadi adalah sebaliknya. Hal ini karena permintaan yang dilakukan oleh
lapisan AJAX menghasilkan informasi yang jauh lebih sedikit dibanding kalau yang diminta adalah keseluruhan halaman.
3. Lapisan AJAX bekerja dengan pendekatan asinkron. Asinkron berarti bahwa client bisa meminta layanan dari server dan tidak perlu menunggu sampai
server melayaninya. Dengan demikian, saat informasi dari server belum didapat, layanan kepada pemakai tetap bisa dilakukan.
4. Komunikasi antara client dan server tidak perlu mengubah keseluruhan antarmuka dalam halaman web, tetapi cukup hanya bagian tertentu yang
terpengaruh. Hal seperti ini tidak bisa dilakukan pada aplikasi web yang tidak menggunakan AJAX.
AJAX pertama kali ditemukakan pada tahun 2005 oleh Jesse James Garret, presiden dan pendiri perusahaan Adaptive Path. Menurut beliau, nama
AJAX diberikan untuk memudahkan dalam berkomunikasi dengan klien daripada kalau menyebutnya “Asynchronous JavaScript + CSS + DOM + XMLHttp
Request ”. Teknik ini sebenarnya sudah ada sejak 1999. Pada masa itu Microsoft
membuat objek bernama XMLHttpRequest Objek yang kelak akan dilibatkan
dalam membuat AJAX sebagai control ActiveX pada Internet Explorer 5. AJAX menjadi sangat popular baru setelah digunakan intensif oleh Yahoo Dan Google.
Menurut Jesse James Garret, di dalam artikelnya yang berjudul “AJAX A New Approach to Web Applications
”, AJAX yang lengkap mencakup [3]: 1. XHTML Extensible HyperText Markup Language, sebagai peluasan dari
HTML. 2. CSS Cascading Style Sheets sebagai pemformat bagian dari dokumen.
3. DOM Document Object Model untuk mengatur interaksi dan penampilan isi HTML dan XHTML secara dinamis.
4. XML Extensible Markup Language memungkinkan untuk melakukan pertukaran data.
5. XSLT Extensible Stylesheet Language Transformation adalah bahasa berbasis XML yang ditujukan untuk melakukan transformasi dokumen XML
ke bentuk yang lain. 6. XMLHttpRequest untuk melakukan pertukaran data secara asinkron.
7. JavaScript sebagai bahasa untuk membentuk lapisan AJAX. Memang nampaknya sangat kompleks karena melibatkan banyak hal.
Namun tidak pelu khawatir bahwa hal itu akan menyusahkan dalam mewujudkannya. Dalam praktik, AJAX bisa diimplementasikan tanpa
menggunakan XML, XSLT, maupun CSS. Software yang digunakan untuk membangun aplikasi web dengan AJAX :
1. Browser misalnya Internet Explorer dan Mozilla Firefox pada sisi klien. 2. Web Server misalnya Apache pada sisi server.
Tentu saja yang dicantumkan di atas adalah kebutuhan minimal untuk membuat aplikasi web yang melibatkan AJAX. Jika aplikasi juga melibatkan
database, di sisi server juga perlu dipasang database server. Selain itu, agar web server dapat berkomunikasi dengan database server, perantara seperti PHP
diperlukan.
2.2.12.6 MySQL
SQL Structured Query Language adalah bahasa standar yang digunakan untuk mengakses server database [14]. Semenjak tahun 70-an bahasa ini telah
dikembangkan oleh IBM, yang kemudian diikuti dengan adanya Oracle, Informix dan Sybase. Dengan menggunakan SQL, proses akses database menjadi lebih
user-friendly dibandingkan dengan misalnya dBase ataupun Clipper yang masih menggunakan perintah
– perintah pemrograman murni.
MySQL adalah sebuah server database SQL multiuser dan multi- threaded [14]. SQL sendiri adalah salah satu bahasa database yang paling populer
di dunia. Implementasi program server database ini adalah program daemon mysqld dan beberapa program lain serta beberapa pustaka. Sebagaimana
database sistem yang lain, dalam SQL juga dikenal hierarki server dengan database-database. Tiap-tiap database memiliki tabel-tabel. Tiap-tiap tabel
memiliki field-field. Umumnya informasi tersimpan dalam tabel – tabel yang
secara logik merupakan struktur 2 dimensi terdiri atas baris dan kolom. Field- field tersebut dapat berupa data seperti int, realm char, date, time dan lainnya.
SQL tidak memiliki fasilitas pemrograman yang lengkap, tidak ada looping
ataupun percabangan. Sehingga untuk menutupi kelemahan ini perlu digabung dengan bahasa pemrograman semisal Pascal. MySQL sering digunakan sebagai
SQL server karena berbagai kelebihannya, antara lain [14]: 1. Source MySQL dapat diperoleh dengan mudah dan gratis.
2. Sintaksnya lebih mudah dipahami dan tidak rumit. 3. Pengaksesan database dapat dilakukan dengan mudah.
2.2.13 Flowchart
Flowchart merupakan representasi grafik dari algritma dengan menggunakan simbol-simbol tertentu yang masing-masing mempunyai fungsi
yang khusus [11], Flowchart menggambarkan atau langkah dari sistem proses, operasi, fungsi atau aktifitas. Flowchart mempunyai beberapa simbol yang
digunakan.
2.2.14 Analisis sistem yang berjalan
Analisis terhadap sistem yang sedang berjalan bertujuan untuk mengetahui lebih jelas bagaimana kerja suatu sistem dan mengetahui masalah yang dihadapi
sistem untuk dapat dijadikan usulan perancangan sistem. Tahap analisa sistem perlu dilakukan dahulu sebelum dilakukan perancangan sistem. Tahap analisa ini
merupakan tahapan yang penting didalam merancang suatu sistem. Analisa sistem yang dilakukan untuk mengetahui masalah apa yang sedang dihadapi oleh
perusahaan.
Sistem yang sedang berjalan diartikan sebagai sistem yang sedang dipakai, sedangkan analisa sistem yang sedang berjalan diartikan sebagai cara memahami
terlebih dahulu masalah yang dihadapi oleh sistem, seperti mendefinisikan kebutuhan-kebutuhan fungsional dari sistem sehingga dapat diketahui apa saja
kebutuhan-kebutuhan pemakai yang belum terpenuhi oleh sistem yang sedang berjalan tersebut.
Tujuan analisa sistem untuk menentukan bentuk dari rancangan sistem yang akan ditetapkan. Analisa tersebut juga dapat menentukan langkah-langkah
perancangan yang akan dibuat sehingga rancangan sistem sesuai dengan kebutuhan pemakai dan sistem mempunyai unjuk kerja yang efisien dan efektif,
dapat menghasilkan informasi yang cepat, tepat dan akurat.
2.2.15 Analisis Kebutuhan Non Fungsional
Analisis kebutuhan non fungsional disini membahas kendala pada pelayanan atau fungsi sistem, yaitu :
1. Availability: ketersediaan aplikasi, misalnya harus terus menerus beroperasi selama hari kerja tanpa adanya kegagalan pada sistem yang di
bangun karena berupa web, maka sistem ini dapat di akses setiap hari kerja, selama komputer terhubung ke server dan internet.
2. Reliability: keandalan, misalnya tidak pernah boleh gagal atau kegagalan yang ditolerir dibatasi hingga berapa persen, sehingga harus dipikirkan
solusi atau tolerant fault. Pada sistem ini, dilihat dari aspek reliability nya
karena berupa aplikasi web, kegagalan yang mungkin di tolerir adalah pada proses pengolahan
– pengolahan data klien, ketika user akan melakukan proses pengisian data klien, perkembangan klien dan
penempatan program, jika sistem rusak atau mengalamin kegagalan, akan di konfirmasikan langsung dilayar terhadap bagian yang sedang
melakukan pengolahan data. 3. Ergonomy: kenyamanan pakai bagi pengguna.
Sistem ini akan di bangun sedemikian rupa agar easy use dan easy learning, sehingga user akan sangat nyaman untuk menggunakan aplikasi
ini. 4. Portability: kemudahan untuk dibawa dan dioperasikan ke mesinsistem
operasiplatform yang lain. Karena berbasis web dan programming language menggunakan bahasa php maka sistem ini dapat di akses dimana
saja, selama mesinsistem operasiplatform mendukung programming language ini.
5. Safety: yang menyangkut keselamatan manusia, misalnya untuk SW yang dipakai pada sistem kontrol di pabrik, maka aspek ini tidak diperlukan
pada sistem. 6. Security: aspek keamanan yang harus dipenuhi, yaitu pada proses
perhitungan perkembangan klien, seleksi dan perhitungan nilai akhir program untuk massase dan shiatsu, selama user mengikuti prosedur
dengan benar, maka sistem akan menjamin keamaan tersebut dengan baik.
54
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Dalam tahap analisa sistem akan ditentukan requirement kebutuhan- kebutuhan sistem, yaitu kegiatan penguraian suatu sistem informasi yang utuh
dan nyata kedalam bagian-bagian atau komponen-komponen komputer yang bertujuan untuk mengidentifikasi serta mengevaluasi masalah-masalah yang
muncul serta mengarah kepada solusi serta perkembangan teknologi. Hal-hal yang akan dianalisis di PT. Sanbe Farma Unit 3 terdiri dari :
1. Masalah
2. Sistem yang berjalan
3. Solusi yang ditawarkan
4. Arsitektur data mart
5. Kebutuhan non Fungsional
6. Kebutuhan Fungsional
3.1.1 Analisis Masalah
Analisis permasalahan merupakan sebuah asumsi dari permasalahan yang akan diuraikan dalam prosedur-prosedur pengolahan permintaan, pengiriman, dan
penyediaan stok barang yang ada di PT. Sanbe Farma Unit 3, analisis dari permasalahan prosedur yang ada, yaitu :
1. Sulitnya pihak manajemen dalam mendapatkan informasi secara cepat dan detail mengenai permintaan Obat Infus dari setiap