Client
Client Web
Browser Web
Server 6
Gambar 1. Cara kerja client side scripting
Sumber : Prasetyo, 2002
Server Side Scripting yaitu proses pengerjaan informasi akan dikirimkan dan   diproses   di  server  dari  website   tersebut.   Contoh  Server  Side
Scripting  adalah: PHP, ASP, PerlCGI , dan lain-lain. Cara kerja  server side scripting dapat dilihat pada gambar 2 berikut.
Gambar 2. Cara kerja server side scripting
Sumber : Prasetyo, 2002
c. PHP
Menurut   Bunafit   Nugroho   2008,  PHP   adalah   bahasa  server-side scripting  yang   menyatu   dengan   HTML  untuk   membuat   halaman  web  yang
dinamis. Maksud dari server-side scripting adalah sintaks dan perintah-perintah yang diberikan akan sepenuhnya dijalankan di  server  tetapi disertakan pada
dokumen  HTML.  PHP merupakan  software  yang  Open  Source  gratis dan mampu lintas platform, yaitu dapat digunakan dengan sistem operasi dan web
server manapun. PHP dapat dibangun sebagai modul pada web server Apache dan sebagai binary yang dapat berjalan sebagai CGI.
PHP memiliki beberapa kelebihan, antara lain: 1. PHP mudah dibuat dan cepat dijalankan.
2. PHP  dapat   berjalan   dalam  web  server  yang   berbeda   seperti:   Microsoft Personal Web Server, Apache, IIS dan sebagainya dan juga dapat berjalan
dalam   sistem   operasi   yang   berbeda   pula   seperti:   UNIX,   Windows   98, Windows NT dan Macintosh.
3. PHP  dapat   mengirim   HTTP  header,   dapat   mengeset  cookies,   mengatur authentication dan redirect users.
4. PHP menawarkan koneksitas yang baik dengan beberapa basis data antara lain Oracle, Sybase, mSQL, MySQL, Solid, PostgreSQL, Adabas, FilePro,
Web browser
Velocis, dBase, Unix dbm dan terkecuali semua  database  ber-interface ODBC.
5. PHP dapat berinteraksi dengan beberapa library eksternal yang membuat anda   dapat   melakukan   segalanya   mulai   dari   membuat   dokumen   PDF
hingga mem-parse XML. 6. PHP mendukung komunikasi dengan layanan lain melalui protokol IMAP,
SNMP, NNTP, POP3 atau bahkan HTTP. PHP adalah bahasa yang sangat populer. Sebagian besar sintaks PHP mirip
dengan sintaks dalam bahasa C dan perl.
d. MySQL
Menurut  Antonius   Nugraha   Widhi   Pratama   2010,  MySQL   adalah aplikasi basis data yang berasal dari komunitas  open source  yang memiliki
level enterprise, multithreaded, dan relational database management system. MySQL dikembangkan oleh firma konsultan di Swedia bernama TCX,
sejarahnya pada saat itu mereka membutuhkan suatu sistem basis data yang cepat dan fleksibel untuk keperluan bisnis mereka, tapi pada saat itu mereka
tidak   mendapatkan   yang   sesuai   dengan   keinginan   mereka.   Dan   akhirnya mereka menciptakan suatu sistem basis data yang diberi nama MySQL, yang
dibuat   berdasarkan   pada   DBMS   lain   yaitu   MSQL,   dan   akhirnya   produk tersebut sangat cepat, relibel, dan benar – benar fleksibel.
Saat   ini   MySQL  banyak   digunakan   hampir   di   seluruh   dunia   karena kemampuannya yang realiable, open source, dan merupakan  database  yang
sangat cepat. MySQL adalah multithreaded server. Multithreaded bahwa setiap waktu seseorang berhasil melakukan koneksi dengan server, maka program di
server membuat suatu thread atau proses untuk menangani request dari client. Hal ini membuat  server menjadi lebih cepat. Pada efeknya setiap client yang
melakukan koneksi dengan MySQL akan mendapatkan  thread-nya masing – masing. MySQL juga merupakan aplikasi yang ANSI SQL 92 – compliant,
yang berarti selaras dengan semua standar dari American Standard Institute. 1. Beberapa karakteristik utama dari MySQL :
a. Fully   multy   –   threaded  dengan   kernel  threads.   Artinya   adalah   bisa dengan mudah mempergunakan multiple CPU bila ada.
b. API Application Programming Interface dengan C, C++, Eiffel, Java, Perl, PHP, Phyton, dan Tcl.
c. Dukungan penuh untuk LEFT OUTER JOIN dengan sintaks ANSI, SQL, ADBC
d. Tabel hash di memori yang dipergunakan sebagai tabel temporer. e. Sistem  priviledge  dan  password  yang   fleksibel   dan   aman,   serta
memungkinkan  host   –   based  verification.  Password  dikatakan   aman karena lalu lintas password saat berhubungan dienkripsi.
f. Mampu   menangani  database  berukuran   besar.   MySQL   bisa   memuat 50,000,000 record dan 60,000 tabel.
g. Server bisa memberikan pesan kesalahan ke client dalam banyak bahasa. 2. Tipe data pada MySQL
Tipe data yang didukung pada MySQL dapat dilihat pada tabel 1 berikut.
Tabel 1 Data pendukung MySQL
Tipe Data Deskripsi
Bigint  length Integer 8 byte
TEXT | BlOB TEXT | BlOB dengan maksimum 64 kb
CHAR  NUM FIXED string panjang antara 1 – 255
DATE YYYY – MM – DD
DATE TIME YYYY – MM – DD   HH : MM : SS
DECIMAL  length,dec Desimal
Double Bilangan double precission floating point
Double Prescision Bilangan double prescision floating point`
FLOAT Bilangan floating point
Integer Integer 4 byte
Enum Enumerasi
Longtext  Long Blob Maksimum 2
23
Medium text | Medium Blob Maksimum 16777216
Medium Int Integer 3 byte
Numeric Sama dengan tipe data decimal
Real Sama dengan Double
Set Objek string dengan beberapa nilai
Smallint Integer 2 byte
Tiny Text  Medium Blob Teks  binary dengan maksimum 255
TinyInt Integer 1 byte
Tabel 1 Data pendukung MySQL
Tipe Data Deskripsi
Varchar  NUM Variable length string 1 = NUM = 255
Time HH : MM : SS
TimeStamp YYYYMMDDHHMMSS
Sumber : Antonius Nugraha Widhi Pratama 2010
2.1.2. Konsep Dasar Sistem
Menurut Raymond McLeod, Jr, 2000,  sistem dapat abstrak atau fisik. Sistem   yang   abstrak   adalah   susunan   yang   teratur   dari   gagasan   atau   konsepsi-
konsepsi yang saling bergantung, misalnya sebuah sistem teologi adalah sebuah susunan gagasan mengenai Tuhan, manusia dan sebagainya. Sistem yang bersifat
fisik adalah unsur yang bekerjasama untuk mencapai tujuan. Ada dua pendapat defenisi sistem, yaitu pendapat yang menekankan pada
elemen   atau   komponen   dan   yang   menekankan   pada   cara   atau   prosedurnya. Pendapat   yang   lebih   menekankan   pada   elemenkomponenya   mendevenisikan
sistem sebagai berikut : Sistem   adalah   kumpulan   dari   elemen-elemen   yang   saling   berinteraksi
untuk   mencapai   tujuan   tertentu.   Sedangkan   pendapat   yang   lebih   menekankan kepada caraprosedur medefinisikan  sistem sabagai berikut :
Sistem   adalah   suatu   jaringan   kerja   dari   prosedur-prosedur   yangsaling berhubungan,   berkumpul   bersama-sama   untuk   melakukan   suatu   kegiatan   atau
penyelesaian suatu sasaran tertentu. Kemudian prosedur itu sendiri mengandung arti suatu urutan operasi kalerikal tulis menulis, biasanya melibatkan beberapa
orang satu atau lebih departemen yang diterapkan untuk menjaminpenanganan seragam dari transaksi-transaksi yang terjadi.
Kedua pendapat ini benar dan tidak bertentangan, yang berbeda adalah cara pendekatanya. Jika ingin mempelajari suatu sistem, lebih tepat bila terlebih
dahulu   memahami   tentang   sistem.pengertian   sistem   bisa   diperoleh   dari defenisinya, karena defenisi tersebut memberikan peranan yang penting dalam
pendekatan untuk mempelajari suatu sistem. Kesimpulannya pendapat sistem yang menekankan pada komponen lebih
mudah dan tepat didalam mempelajari suatu sistem untuk tujuan pengembangan sistem. Sebagai contoh sistem pengolahan pustaka yang terdiri atas subsistem data
buku, subsistem data peminjam dan lain-lainnya, kemudia sistem pengolahan dat pustaka   tersebut   juga   harus   bisa   berinteraksi   dengan   sub-sub   sistem   lainya
sehingga dapat menghasilkan sistem informasi pengolaha data pustaka. Kemudian   suatu   sistem   dibuat   untuk   maksud   tertentu,   pengertiandari
maksud   tertentu   disini   adalah   untuk   mencapai   tujuan   dan   sasaran,   pengertian tujuan   mempunyai   ruang   lingkup   yang   lebih   luas   bila   dibandingkan   dengan
sasaran. Contohnya, untuk sisitem bisnis maka istilah tujuan lebih tepat, sedang bagian dari sistem bisnis tersebut yang dikenal dengan istilah subsistem bisnis
lebih   tepat   menggunakan   istilah   sasaran,   tetapi   seringkali   tujuan   dan   sasaran tersebut digunakan secara bergantian.
Suatu sistem dalam mencapai tujuannya tentu memerlukan suatu proses yang terdiri atas bermacam-macam tipe proses misalnya proses secara konsep,
proses secara fisik, proses secara prosedur, proses secara sosial dan lain-lainnya. Sub-sub   sistem   yang   menyusun   suatu   sistem   antar   lain   adalah   tujuan,
tujuan bisa berupa tujuan dari organisasi tersebut kebutuhan organisasi tersebut, masalh  organisasi  tersebut  secara   prosedur  atau   aturan  untuk   mencapai  tujuan
organisasi   tersebut.   Dalam   mencapai   tujuan   tersebut   tentu   perlu   adanya   suatu batasan   yang   jelas,   dimana   batasan   tersebut   bisa   berupa   biaya,   personil   yang
terlibat, peralatan yang digunakan dan peraturan-peraturan. Suatu sistem dapat tercapai dengan baik bila terdapat pengawasan yang
berguna   untuk   mengawasi   pelaksanaan   pencapaian   tujuan   yang   terdiri   atas pengawasan   data   masukan      input,   pengawasan   data   keluaran      output,   serta
kontrol terhadap operasi sistem. Input merupakan subsistem yang berfungsi untuk menerima   data   masukan   yang   terdiri   atas   sumber   masukan   frekuensi
memasukkannya serta jenis data masukannya. kemudian input tersebut diproses yang   terdiri   atas   pencarian,   perbaikan,   pengisian   pengelompokkan   dan   lain-
lainnya.   Hasil   dari   proses   ini   disebut   keluaran   atau   output,   output   tersebut biasanya   berupa   laporan   atau   dalam   bentuk   grafik,   dari   laporan   atau   output
tersebut   maka   perlu   adanya   umpan   balik   guna   penyempurnaan   pemeliharaan sistem agar dapat berlangsunh lama. Komponen-komponen sistem dapat dilihat
pada gambar 3 berikut.
INPUT PROSES :
TUJUAN SASARAN
BATASAN SISTEM
PENGAWASAN SISTE
OUT PUT
UMPAN BALIK
Gambar 3. Komponen-komponen sistem
Sumber : Andi Kristanto, 2003:10
Dari gambar di atas maka dapat disimpulkan bahwa komponen-komponen sistem   tersebut   merupakan   suatu   krakteristik   dari   sistem   yang   terdiri   atas
komponen sistem, batasan sistem, lingkungan luar sistem, penghubung sistem, masukan, keluaran pengolah, sasaran atau tujuan.
2.1.3. Unified Modeling Language UML 1. Definisi UML Unified Modeling Language
Menurut Nugroho 2010:6, UML Unified Modeling Language adalah bahasa   pemodelan   untuk   sistem   atau   perangkat   lunak   yang   berparadigma
berorientasi   objek.   Pemodelan   modeling   sesungguhnya   digunakan   untuk penyederhanaan permasalahan-permasalahan yang kompleks sedemikian rupa
sehingga lebih mudah dipelajari dan dipahami. Menurut Nugroho 2009:4, UML Unified Modeling Language adalah
metodologi kolaborasi antara metoda-metoda Booch, OMT Object Modeling Technique,   serta   OOSE   Object   Oriented   Software   Enggineering   dan
beberapa metoda lainnya, merupakan metodologi yang paling sering digunakan saat ini untuk analisa dan perancangan sistem dengan metodologi berorientasi
objek mengadaptasi maraknya penggunaan bahasa pemrograman berorientasi objek OOP.
Berdasarkan   pendapat   yang   dikemukakan   di   atas   dapat   ditarik kesimpulan bahwa Unified Modelling Language UML adalah sebuah bahasa
yang   berdasarkan   grafik   atau   gambar   untuk   menvisualisasikan, menspesifikasikan,   membangun   dan   pendokumentasian   dari   sebuah   sistem
pengembangan   perangkat   lunak   berbasis   Objek   Object   Oriented Programming.
2. Model UML Unified Modeling Language
Menurut Widodo 2011:10, Beberapa literature menyebutkan bahwa UML menyediakan sembilan jenis diagram, yang lain menyebutkan delapan
karena ada beberapa diagram yang digabung, misanya diagram komunikasi, diagram urutan dan diagram pewaktuan digabung menjadi diagram interaksi”.
Namun demikian model-model itu dapat dikelompokkan berdasarkan sifatnya yaitu statis atau dinamis. Jenis diagram itu antara lain:
1. Diagram kelas. Bersifat   statis,   Diagram   ini   memperlihatkan   himpunan   kelas-kelas,
antarmuka-antarmuka,   kolaborasi-kolaborasi,   serta   relasi-relasi. Diagram ini umum dijumpai pada pemodelan sistem berorientasi objek.
Meskipun bersifat statis, sering pula diagram kelas memuat kelas-kelas aktif.
2. Diagram paket Package diagram. Bersifat   statis.   Diagram   ini   memperlihatkan   kumpulan   kelas-kelas,
merupakan bagian dari diagram komponen. 3. Diagram use-case.
Bersifat   statis.   Diagram   ini   memperlihatkan   himpunan  use-case  dan aktor-aktor  suatu jenis khusus dari kelas. Diagram ini terutama sangat
penting untuk mengorganisasi dan memodelkan perilaku suatu sistem yang dibutuhkan serta diharapkan pengguna.
4. Diagram interaksi dan sequence urutan. Bersifat dinamis. Diagram urutan adalah iterasiksi yang menekankan
pada pengiriman pesan dalam suatu waktu tertentu. 5. Diagram komunikasi communication diagram.
Bersifat dinamis. Diagram sebagai pengganti diagram kolaborasi UML 1.4   yang   menekankan   organisasi   struktural   dari   objek-objek   yang
menerima serta mengirim pesan. 6. Diagram statechart statechart diagram.
Bersifat   dinamis.   Diagram   status   memperlihatkan   keadaan-keadaan pada sistem, memuat status state, transisi, kejadian serta aktivitas.
7. Diagram aktivitas activity diagram.
Bersifat  dinamis.  Diagram aktivitas adalah  tipe  khusus dari  diagram status yang memperlihatkan aliran dari suatu suatu aktivitas ke aktivitas
lainnya   dalam   suatu   sistem.   Diagram   ini   terutama   penting   dalam pemodelan fungsi-fungsi suatu sistem dan memberi tekanan pada aliran
kendali antar objek. 8. Diagram komponen component diagram.
Bersifat statis. Diagram komponen ini memperlihatkan organisasi serta kebergantungan   sistemperangkat   lunak   pada   komponen-komponen
yang telah ada sebelumnya. 9. Diagram deployment deployment diagram.
Bersifat statis. Diagram ini memperlihatkan konfigurasi saat aplikasi dijalankan   run-time.   Memuat   simpul-simpul   beserta   komponen-
komponen yang di dalamnya. Kesembilan   diagram   ini   tidak   mutlak   harus   digunakan   dalam
pengembangan   perangkat   lunak,   semuanya   dibuat   sesuai   kebutuhan.   Pada UML   dimungkinkan   kita   menggunakan   diagram-diagram   lainnya   misalnya
data flow diagram, entity relationship diagram, dan sebagainya.
3. Bangunan dasar metodologi UML
Menurut   Nugroho   2009:117.   Bangunan   dasar   metodologi  Unified Modeling   Language  UML   menggunakan   tiga   bangunan   dasar   untuk
mendeskripsikan sistemperangkat lunak yang akan dikembangkan, yaitu:
1. Sesuatu things
Ada 4 empat things dalam Unified Modeling Language UML, yaitu:
a. Structural things
Merupakan   bagian   yang   relatif   statis   dalam   model  Unified   Modeling Language UML. Bagian yang relatif statis dapat berupa elemen-elemen
yang bersifat fisik maupun konseptual.
b. Behavioral things