Software Pendukung Hal lain seperti ukuran basis data.

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