Gambar 2.5. Contoh Class Diagram 3.
Statechart Diagram Statechart Diagram
menggambarkan transisi dan perubahan keadaan dari satu state ke state lainnya suatu objek pada sistem sebagai akibat dari
stimuli yang diterima. Pada umumnya statechart diagram menggambarkan class
tertentu satu class dapat memiliki lebih dari satu statechart diagram. 4.
Activity Diagram Activity Diagram
menggambarkan berbagai alur aktivitas dalam sistem yang sedang dirancang, bagaiumana masing-masing alur berawal,
decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity
diagram juga dapat menggambarkan proses paralel yang mungkin terjadi
pada beberapa eksekusi.
Gambar 2.6. Contoh Activity Diagram Activity Diagram
merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh
selesainya state sebelumnya internal processing. Oleh karena itu, activity diagram
tidak menggambarkan behaviour internal sebuah sistem dan interaksi antar subsistem secara eksak, tetapi lebih menggambarkan proses-
proses dan jalur-jalur aktivitas dari level atas secara umum. 5.
Sequence Diagram Sequence Diagram
menggambarkan interaksi antar objek di dalam dan di sekitar sistem termasul pengguna, display, dan sebagainya berupa
message yang digambarkan terhadap waktu. Sequence diagram terdiri atas
dimensi vertikal waktu dan dimensi horizontal objek-objek yang terkait. Sequence diagram
biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah
event untuk menghasilkan output tertentu. Diawali dari apa yang menjadi
trigger aktifitas tersebut, proses dan perubahan apa saja yang terjadi secara
internal dan output apa yang dihasilkan. 6.
Collaboration Diagram Collaboration diagram
juga menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-
masing objek dan bukan pada waktu penyampaian message. Setiap message memiliki sequence number, dimana message dari level
tertinggi memiliki nomor 1. Messages dari level yang sama memiliki profiks yang sama.
7. Component Diagram
Componen diagram menggambarkan struktur dan hubungan antar
komponen piranti lunak, termasuk ketergantungan dependency di antaranya. Komponen piranti lunak adalah modul berisi code, baik berisi
source code maupun binary code, baik library maupun executable, baik
yang muncul pada compile time, link time, maupun runtime. Umumnya komponen terbentuk dari beberapa class danatau package, tapi dapat juga
dari komponen-komponen yang lebih kecil.
8. Deployment Diagram
Deploymentphysical diagram menggambarkan detail bagaimana
komponen di-deploy dalam infrastruktur sistem, dimana komponen akan terletak pada mesin, server atau piranti keras apa, bagaimana kemampuan
jaringan pada lokasi tersebut, spesifikasi, server, dan hal-hal lain yang bersifat fisik. Sebuah node adalah server, workstation, atau piranti keras lain
yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node misal TCPIP dan requirement dapat
juga didefinisikan dalam diagram ini. Dharwiyanti : 2003
2.13. PHP
2.13.1. Definisi PHP
PHP adalah sebuah bahasa pemrograman yang didesain agar dapat disisipkan dengan mudah ke halaman HTML. PHP memberikan solusi
sangat murah karena gratis digunakan dan dapat berjalan diberbagai jenis platform
. Pada awalnya memang PHP berjalan di sistem UNIX dan variannya, namun kini dapat berjalan dengan lancar di lingkungan sistem
operasi Windows. Suatu nilai tambah yang luar biasa karena proses pengembangan program berbasis web dapat dilakukan lintas sistem operasi.
Dengan luasnya cakupan sistem operasi yang mampu menjalankan PHP dan ditambah begitu lengkapnya function yang dimilikinya tersedia
lebih dari 400 function di PHP yang sangat berguna tidak heran jika PHP semakin menjadi tren di kalangan programmer web.
Penemu bahasa pemrograman ini adalah Rasmus Lerdorf, yang bermula dari keinginan sederhana Lerdorf untuk mempunyai alat bantu
dalam memonitor pengunjung yang melihat situs web pribadinya. Inilah sebabnya pada awal pengembangannya, PHP merupakan singkatannya dari
Personal Home Page tools , sebelum akhirnya menjadi Hypertect
Preprocessor .
2.13.2. Kelebihan PHP
Diantara maraknya pemrograman server web saat ini, adalah ASP yang berkembang ASP .NET, JSP, CFML, dan PHP. Jika dibandingkan di
antara 3 terbesar pemrograman server web diatas. Terdapat kelebihan dari PHP itu sendiri, yaitu:
1. PHP merupakan sebuah bahasa script yang tidak melakukan sebuah
kompilasi dalam penggunaannya. Tidak seperti halnya bahasa pemrograman aplikasi seperti Visual Basic dan sebagainya.
2. PHP dapat berjalan pada web server yang dirilis oleh Microsoft, sperti
IIS atau PWS juga pada Apache yang bersifat open source. 3.
Karena sifatnya yang open source, maka perubahan dan perkembangan interpreter
pada PHP lebih cepat dan mudah, karena banyak milis-milis dan developer yang siap membantu pengembangannya.
4. Jika dilihat dari segi pemahaman, PHP memiliki referensi yang begitu
banyak sehingga sangat mudah untuk dipahami. 5.
PHP dapat berjalan pada 3 operating system, yaitu Linux, Unix, dan Windows, dan juga dapat berjalan secara runtime pada saat console.
2.13.3. Kekurangan PHP
Seperti pemrograman aplikasi atau web lainnya, PHP pun memiliki beberapa kelemahan, di antaranya:
1. Tidak ideal untuk pengembangan skala besar.
2. Tidak memiliki sistem pemrograman berorientasi objek yang
sesungguhnya sampai versi 4 ini. Namun pada versi PHP 5 sudah dilengkapi pemrograman berorientasi objek yang sesungguhnya.
2.14. MySQL
MySQL adalah sistem manajemen database yang bersifat open source. MySQL adalah pasangan serasi dari PHP. MySQL dibuat dan dikembangkan oleh
MySQL AB yang berada di Swedia. MySQL merupakan sistem manajemen database yang bersifat relasional.
Artinya data-data yang dikelola dalam database akan diletakan pada beberapa table
yang terpisah sehingga manipulasi data akan menjadi lebih cepat. MySQL dapat digunakan untuk mengelola database mulai dari yang kecil
sampai dengan yang sangat besar. MySQL juga dapat menjalankan perintah- perintah Structured Query Language SQL untuk mengelola database-database
relasional yang ada di dalamnya.
2.15. XAMPP Server
XAMPP Server adalah perangkat lunak gratis, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program untuk menjalankan
fungsinya sebagai server yang berdiri sendiri, yang terdiri atas program Apache
HTTP Server, MySQL database, dan penterjemah bahasa yang ditulis dengan PHP dan Perl. XAMPP adalah nam yang merupakan singkatan dari X berbagai
sistem operasi Linux, Mac, Windows, Apache, MySQL, PHP, PERL. Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server
yang mudah digunakan yang mampu melayani halaman dinamis. 2.16.
Pengujian Perangkat Lunak
Pengujian perangkat lunak adalah proses pemeriksaan atau evaluasi sistem atau komponen sistem secara manual atau otomatis untuk memverifikasi apakah
sistem memenuhi kebutuhan-kebutuhan yang dispesifikasikan atau mengidentifikasi perbedaan-perbedaan antara hasil yang diharapkan dengan hasil
yang terjadi Hariyanto: 2004. Sasaran pengujian adalah penemuan semaksimum mungkin kesalahan
dengan usaha yang dapat dikelola pada rentang waktu realistik. Pengujian perangkat lunak merupakan tahap kritis dalam penjaminan kualitas perangkat
lunak dan merupakan review menyeluruh terhadap spesifikasi perancangan dan pengkodean Hariyanto: 2004.
Glen Myers menyatakan tiga sasaran pengujian, yaitu Hariyanto, 2004: 1.
Pengujian adalah proses mengeksekusi program dengan hasrat menemukan kesalahan.
2. Kasus uji yang bagus adalah mempunyai peluang tinggi menemukan
kesalahan yang sebelumnya belum ditemukan. 3.
Pengujian yang berhasil adalah pengujian yang menyingkap kesalahan yang sebelumnya belum ditemukan.
Manfaat pengujian Hariyanto: 2004: 1.
Pengujian akan menyingkap kesalahan di perangkat lunak. 2.
Pengujian mendemonstrasikan fungsi-fungsi perangkat lunak bekerja sesuai spesifikasi, kebutuhan serta terpenuhi perilaku dan sejenisnya.
Terdapat dua teknik pengujian berdasarkan ketersediaan logik sistem, yaitu black box testing
dan white box testing Hariyanto: 2004.
2.16.1. White-box testing
Pengujian white-box adalah sebuah pengujian yang dilakuan lebih dekat lagi untuk menguji prosedur-prosedur yang ada. Lintasan lojik yang
dilalui oleh setiap bagian prosedur yang diuji dengan memberikan kondisi loop spesifik. Proses yang terjadi pada pengujian white-box yaitu:
1. Menjamin pengujian terhadap semua lintasan yang tidak bergantungan
minimal satu kali. 2.
Mencoba semua keputusan lojik dari sisi ‘true’ dan ‘false’. 3.
Eksekusi semua loop dalam batasan kondisi dan batasan operasionalnya 4.
Pengujian validasi struktur data internal.
2.16.2. Black-box testing
Konsep black box testing digunakan untuk merepresentasikan sistem yang cara kerja di dalamnya tidak tersedia untuk diinspeksi. Di dalam kotak
hitam, item-item yang diuji dianggap “gelap” karena logiknya tidak diketahui, yang diketahui hanya apa yang masuk dan apa yang keluar. Pada
black box testing , kasus-kasus pengujian berdasarkan pada spesifikasi
sistem. Pada black box testing, dicobakan beragam masukan dan memeriksa