BAB II LANDASAN TEORI. gambaran umum dari penjelasan tugas akhir ini dapat lebih dipahami.

dokumen-dokumen yang mirip
Unified Modelling Language UML

MAKALAH ANALISIS & PERANCANGAN SISTEM II USE CASE DIAGRAM

WEB DINAMIS 1 MANAJEMEN DATABASE MYSQL. Agustina Purwatiningsih., S.Kom

Tugas Mandiri Analisis dan Perancangan Sistem II ACTIVITY & SWIMLANE DIAGRAM

BAB II. KAJIAN PUSTAKA

Gambar Use Case Diagram

PENGERTIAN PHP DAN MYSQL

BAB II TINJAUAN PUSTAKA

BAB I Pendahuluan I - 1 UNIVERSITAS KRISTEN MARANATHA

PENGENALAN MySQL. Riana Sepriyanti. Abstrak. Pendahuluan.

UNIFIED MODELING LANGUAGE

BAB III LANDASAN TEORI

BAB 2 LANDASAN TEORI. pengolahan data, pengolahan gambar, pengolahan angka, dan lainnya.

BAB 2 LANDASAN TEORI. Bab ini akan menjelaskan masalah-masalah teoritis yang berkaitan dalam pembuatan

BAB II LANDASAN TEORI

Bagian 7 ANALISIS DESAIN PADA PEMROGRAMAN BERORIENTASI OBJECT DENGAN UML

BAB III LANDASAN TEORI. layanan (service) tertentu dalam sebuah jaringan komputer. Server. sebagai sistem operasi jaringan (network operating system).

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. penerimaan informasi. Mulai dari perusahaan-perusahaan, sekolah-sekolah,

KEKURANGAN KELEBIHAN APLIKASI DATA BASE

BAB II LANDASAN TEORI

BAB III OBJEK DAN METODE PENELITIAN. peneliti untuk di pelajari dan kemudian ditarik kesimpulannya. tertentu dan kemudian dapat ditarik kesimpulan.

BAB III OBJEK DAN METODE PENELITIAN. Objek yang diteliti adalah hotel yang ada di Bandung yaitu Hotel Millenia

BAB II TINJAUAN PUSTAKA. alat bantu manajemen berupa informasi berbantuan komputer yang terkait dengan

Perancangan Sistem Informasi Penjualan dan Inventori pada PT. Oriental Chitra International

BAB III OBJEK DAN METODE PENELITIAN. Objek penelitian ini adalah Sistem Informasi Penjadwalan Dalam

BAB IV ANALISIS DAN PERANCANGAN SISTEM. hasil analisis ini digambarkan dan didokumentasiakan dengan metodologi

Bab 2. Tinjauan Pustaka

BAB II LANDASAN TEORI

Perancangan Perangkat Lunak. Apaan sich yang namanya UML??

BAB II LANDASAN TEORI

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

SMS gateway telah banyak digunakan dalam berbagi aplikasi dan

BAB II TINJAUAN PUSTAKA

BAB III OBJEK PENELITIAN DAN METODE. Dengan berlakukanya Undang-undang No. 22 Tahun 1999, tentang pemerintahan

BAB 2 TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB III LANDASAN TEORI

BAB II DASAR TEORI 2.1. Logika Fuzzy Defenisi Logika Fuzzy Himpunan Fuzzy

Citra Noviyasari, S.Si, MT SI - UNIKOM

BAB II LANDASAN TEORI Konsep Dasar Membangun Aplikasi Berbasis Web

BAB II TINJAUAN PUSTAKA

PRAKTIKUM REKAYASA PERANGKAT LUNAK MODUL KE - 2 PENGENALAN UML dengan RATIONAL ROSE OLEH: ANISA ISTIQOMAH (KELAS 5 B)

DAFTAR ISTILAH. Activity Diagram

BAB III OBJEK DAN METODOLOGI PENELITIAN. sesuai dengan pendapat Sugiyono (2003:58) mendefinisikan bahwa:

BAB II TINJAUAN PUSTAKA

BAB IV ANALISA DAN PERANCANGAN SISTEM Analisis Prosedur yang sedang Berjalan

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI Membangun Aplikasi Database Oracle dengan VB. Koneksi database adalah sebuah modul (obyek) yang bekerja untuk

BAB II LANDASAN TEORI. Sistem dapat diartikan sebagai serangkaian komponen-komponen yang

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

BAB III OBJEK DAN METODE PENELITIAN. sebagai salah satu cabang daop PT. kereta api Indonesia

BAB 1 PENDAHULUAN. perubahan kultur kita sehari-hari. Dalam era yang disebut information age ini, media

BAB II LANDASAN TEORI

BAB IV ANALISIS DAN PERANCANGAN SISTEM. proses kerja yang sedang berjalan. Pokok-pokok yang di analisis meliputi analisis

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

Sri Dharwiyanti Romi Satria Wahono

BAB II LANDASAN TEORI. kompensasi, penyatuan, perawatan/pemeliharaan, sumber daya manusia kepada

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI. Sistem adalah jaringan kerja dari prosedur-prosedur yang saling

BAB 2 TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

BAB III METODOLOGI PENELITIAN. Metodologi yang akan digunakan untuk menyelesaikan skripsi ini dibagi

BAB III LANDASAN TEORI. Pada bab ini akan dijelaskan dasar-dasar teori yang berhubungan dengan

BAB IV ANALISIS DAN PERANCANGAN SISTEM. Kegiatan analisis sistem yang berjalan dilakukan dengan analisis yang

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

BAB II LANDASAN TEORI


Notasi Unified Modeling Language (UML) Versi 2.0

BAB 2 LANDASAN TEORI. suatu kesatuan yang terdiri komponen atau elemen yang dihubungkan bersama untuk

JENIS-JENIS APLIKASI UNTUK SERVER MENGADMINISTRASI SERVER DALAM JARINGAN. Pembahasan: Habib Ahmad Purba. 0 P a g e

BAB IV ANALISIS DAN PERANCANGAN SISTEM. menggambarkan aliran-aliran informasi dari bagian-bagian yang terkait, baik dari

BAB II LANDASAN TEORI. Pada tahap ini berisi pengertian dan penjelasan teori-teori yang digunakan penulis untuk pembangunan sistem.

TEKNOLOGI APLIKASI WEB BERBASIS SERVER

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORITIS

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

APLIKASI AKSES HIT COUNT MENCARI GOOGLE

BAB II TINJAUAN PUSTAKA

CLASS DIAGRAM. Jerri Agus W ( ) Gendra Budiarti ( )

BAB II LANDASAN TEORI

Bab II Dasar Teori. 2.1 Sistem Informasi Monitoring

NOTASI UML CITRA N., S.SI, MT SISFO - UNIKOM

4. BAB IV ANALISIS DAN PERANCANGAN SISTEM. diusulkan perancangan sistem baru, dimana kinerja dari suatu sistem yang baru

BAB II LANDASAN TEORI. Landasan teori merupakan hal penting dalam membuat tulisan ilmiah,

BAB III ANALISIS DAN PERANCANGAN

BAB II TINJAUAN PUSTAKA

BAB III OBJEK DAN METODE PENELITIAN

Gambar 3.1 Perancangan Sistem

Transkripsi:

BAB II LANDASAN TEORI Pada bab ini dijelaskan beberapa hal yang menjadi landasan teori dan dasar teori dari permasalahan yang diangkat. Dari uraian dibawah ini diharapkan gambaran umum dari penjelasan tugas akhir ini dapat lebih dipahami. 2.1 Server Server adalah sebuah sistem komputer yang menyediakan jenis layanan tertentu dalam sebuah jaringan komputer. Server didukung dengan processor yang bersifat scalable dan RAM yang besar, juga dilengkapi dengan sistem operasi khusus, yang disebut sebagai sistem operasi jaringan atau network operating sistem. Server juga menjalankan perangkat lunak administratif yang mengontrol akses terhadap jaringan dan sumber daya yang terdapat di dalamnya, seperti halnya berkas atau alat pencetak (printer), dan memberikan akses kepada workstation anggota jaringan. Umumnya, di atas sistem operasi server terdapat aplikasi-aplikasi yang menggunakan arsitektur klien/server. Contoh dari aplikasi ini adalah DHCP Server, Mail Server, HTTP Server, FTP Server, DNS Server dan lain sebagainya. Setiap sistem operasi server umumnya membundel layanan-layanan tersebut atau layanan tersebut juga dapat diperoleh dari pihak ketiga. Setiap layanan tersebut akan merespons terhadap request dari klien. Sebagai contoh, klien DHCP akan memberikan request kepada server yang menjalankan server DHCP; ketika 9

10 sebuah klien membutuhkan alamat IP, klien akan memberikan perintah/request kepada server, dengan bahasa yang dipahami oleh server DHCP, yakni protokol DHCP itu sendiri. Contoh sistem operasi server adalah Windows NT 3.51, dan dilanjutkan dengan Windows NT 4.0. Saat ini sistem yang cukup populer adalah Windows 2000 Server dan Windows Server 2003, kemudian Sun Solaris, UNIX, dan GNU/Linux. Server biasanya terhubung dengan klien dengan kabel UTP dan sebuah Network Card. Kartu jaringan ini biasanya berupa kartu PCI atau ISA. Fungsi server sangat banyak, misalnya untuk situs internet, ilmu pengetahuan, atau sekedar penyimpanan data. Namun yang paling umum adalah untuk mengkoneksikan komputer klien ke Internet. Sedangkan klien-server merupakan sebuah paradigma dalam teknologi informasi yang merujuk kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak - pihak klien dan pihak server. Dalam model klien/server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah, tapi masih merupakan sebuah kesatuan yakni komponen klien dan komponen server. Komponen klien juga sering disebut sebagai front-end, sementara komponen server disebut sebagai back-end. Komponen klien dari aplikasi tersebut dijalankan dalam sebuah workstation dan menerima masukan data dari pengguna. Komponen klien tersebut akan menyiapkan data yang dimasukkan oleh pengguna dengan menggunakan teknologi pemrosesan tertentu dan mengirimkannya kepada komponen server yang dijalankan di atas mesin server, umumnya dalam bentuk request terhadap beberapa layanan yang dimiliki oleh server. Komponen server akan menerima request dari klien, dan langsung memprosesnya dan mengembalikan hasil pemrosesan tersebut kepada klien. Klien

11 pun menerima informasi hasil pemrosesan data yang dilakukan server dan menampilkanya kepada pengguna, dengan aplikasi yang berinteraksi dengan pengguna. Sebuah contoh dari aplikasi klien/server sederhana adalah aplikasi web yang didesain dengan menggunakan Active Server Pages (ASP) atau PHP. Skrip PHP atau ASP akan dijalankan di dalam web server (Apache atau Internet Information Services), sementara skrip yang berjalan di pihak klien akan dijalankan oleh web browser pada komputer klien. Klien-server merupakan penyelesaian masalah pada software yang menggunakan basis data sehingga setiap komputer tidak perlu diinstall basis data, dengan metode klien-server basis data dapat diinstal pada suatu komputer sebagai server dan aplikasinya diinstal pada klien. 2.2 Monitoring Performansi Sistem Saat ini komputer sudah menjadi sarana yang sangat berperan dalam menunjang kehidupan manusia. Komputer sudah menjadi infrastruktur yang memegang peranan penting, sehingga kehandalannya menjadi salah satu prioritas. Kehandalan komputer dapat diuji dan diketahui dengan mengadakan monitoring terhadap kemampuannya dari waktu ke waktu. Monitoring adalah suatu kegiatan untuk mengidentifikasi adanya kesalahan atau masalah yang dapat mengganggu performansi baik itu dari sisi perangkat keras maupun perangkat lunak. Secara umum monitoring pada sistem dapat dibagi menjadi empat komponen kegiatan: a. Data Collecting diletakkan pada server yang ingin dimonitor, berupa program PHP CLI (Command Line Interface) yang mempunyai fungsi untuk mengumpulkan

12 data dari server server yang dimonitor, yaitu berupa informasi penting dari kondisi sebuah sistem b. Data Polling / Logging Setelah pengumpulan data data dari server yang dimonitor, maka tahap selanjutnya selanjutnya adalah data polling / logging yaitu pencatatan terhadap hal hal ganjil atau hal yang tidak biasa terjadi pada sistem. c. Data Analyzing Data Analyzing ini dihasilkan dari dua kegiatan sebelumnya, yaitu Data Collecting dan Data Polling/ Logging setelah selesai dilakukan. Data analyzing ini bertujuan untuk mengelompokkan data berdasarkan kejadiannya. Pada proses ini nantinya akan terjadi pembandingan antara data hasil analisa yang baru diterima dengan data yang sebelumnya. Hal ini bertujuan untuk mengetahui perubahan apa saja yang terjadi terhadap sistem. Hasil dari data analyzing ini akan dijadikan acuan apakah sistem tersebut dapat berjalan dengan baik ataukah tidak, yang nantinya akan dijadikan sebuah dasar untuk melakukan suatu tindakan perbaikan atau pencegahan apabila diperlukan. Sehingga sistem tetap dapat berjalan dengan sebagaimana mestinya. d. Reporting Proses pelaporan hasil evaluasi sistem yang telah dilakukan kepada pihak lain. Reporting ini bisa merupakan sebuah angka atau grafik sehingga memungkinkan pihak lain tersebut dapat memahami informasi yang kita berikan.

13 Reporting ini dapat dibagi menjadi tiga tipe, antara lain : 1). Alarm, tipe dari reporting ini adalah harus segera disampaikan kepada pihak terkait, yang berkaitan langsung dalam hal ini adalah sistem administrator. Sehingga apabila terjadi suatu masalah, akan segera dapat dilakukan tindakan perbaikan maupun pencegahan sehingga sistem tetap berjalan normal sebagaimana mestinya. Alarm ini dapat disampaikan dengan menggunakan media email, SMS, fax atau media lain yang memungkinkan informasi dapat segera tersampaikan. 2). History, tipe dari reporting yang satu ini sangat diperlukan dalam analisa suatu keadaan tertentu, yang nantinya ikut mempengaruhi dalam suatu pengambilan keputusan. 3). Trend, tipe reporting ini diperlukan untuk melihat trend kejadian pada kurun waktu tertentu. 2.3 Windows Management Instrumentation (WMI) Windows Management Instrument (WMI) adalah implementasi yang dilakukan oleh Microsoft untuk arsitektur Web-Based Enterprise Management (WBEM) dan Common Information Model (CIM) (yang dipublikasikan oleh Distributed Management Task Force) yang sering dilakukan untuk melakukan manajemen jaringan di dalam sebuah jaringan yang besar (kelas enterprise). Para Administrator dapat menggunakan WMI untuk memantau dan mengontrol komputer, perangkat jaringan dan beberapa aplikasi yang dimiliki oleh sebuah jaringan melalui Internet dengan menggunakan sebuah penjelajah Web standar, seperti halnya Internet Explorer. Para pengembang perangkat lunak dapat menggunakan WMI untuk membuat sebuah aplikasi monitoring kejadian yang

14 dapat memberikan peringatan kepada pengguna saat kejadian kejadian yang dianggap penting atau kritikal terjadi. WMI merupakan sebuah aplikasi yang mendukung penuh standar WBEM dan menggunakan CIM untuk mendeskripsikan objek-objek jaringan yang dapat diatur (seperti halnya layanan, proses, berkas dan lain-lain). Dukungan terhadap WMI telah dimasukkan semenjak Windows 2000, Windows XP serta versi-versi Windows selanjutnya telah mendapatkannya secara langsung. Untuk Windows 95, Windows 98 dan Windows NT 4.0, WMI tersedia sebagai tambahan yang dapat di-download dari situs Microsoft. WMI mengizinkan beberapa bahasa skrip seperti halnya VBScript atau Windows PowerShell untuk melakukan manajemen terhadap komputer pribadi yang difungsikan sebagai komputer desktop atau komputer server berbasis Microsoft Windows, baik secara lokal maupun secara remote. Microsoft juga menyediakan sebuah perangkat bantu berupa program command-line terhadap WMI, yang disebut sebagai Windows Management Instrumentation Command-line (WMIC) yang hanya tersedia di dalam Windows XP Professional, Windows Server 2003, Windows Vista, dan Windows Server 2008. Tujuan dari WMI ini adalah untuk membuat standarisasi dalam manajemen objek. Dalam pengertian sederhananya, manajemen kurang lebih hanyalah pengumpulan data tentang status dari objek objek yang kita atur (managed object) dari sistem komputer kita. Selain itu juga menambahkan status baru dengan cara mengubah nilai data yang telah tersimpan mengenai objek yang bersangkutan. Objek objek tersebut dapat berupa entitas perangkat keras (memory, sebuah port atau sebuah disk drive) dan juga perngakat lunak (service, user account, page file). WMI juga dapat mengatur banyak komponen dalam

15 sebuah sistem komputer. Contoh pada hardisk, WMI dapat digunakan untuk memonitor jumlah kapasitas tersisa dari disk tersebut. WMI juga dapat digunakan untuk menghapus berkas, melakukan format, atau partisi hardisk secara remote dan lain sebagainya. Cara Kerja WMI dalam Windows NT 5.x mencakup dua komponen utama: Sebuah tempat penempatan objek (disebut sebagai WMI object repository) yang mendukung standar CIM dan digunakan untuk menyimpan informasi yang dapat dikumpulkan dari perangkat keras dan perangkat lunak yang dapat diatur dengan menggunakan WMI. CIM Object Manager, yang mengumpulkan informasi dari beberapa penyedia WMI (disebut dengan WMI Provider) dan menyimpannya di dalam WMI object repository. WMI Provider berfungsi sebagai perantara antara objek-objek jaringan yang sedang diatur dan WMI itu sendiri. Sebagai contoh, WMI registry provider mengizinkan beberapa informasi untuk dapat dikumpulkan dari registry yang terletak di dalam komputer jarak jauh dan disimpan di dalam repository. Untuk beberapa protokol lainnya, seperti halnya protokol Simple Network Management Protocol (SNMP), jika sebuah komputer hendak mengumpulkan informasi perangkat-perangkat yang dapat diatur dengan SNMP, maka SNMP provider harus mentranslasikan informasi tersebut ke sebuah format yang cocok untuk WMI. Beberapa komponen di dalam Windows NT 5.x telah mendukung WMI, dan dapat diakses dari snap-in Microsoft Management Console. Komponen-komponen tersebut mencakup hal-hal berikut:

16 Logical drive, yang dapat digunakan untuk mengatur drive-drive dalam komputer lokal dan drive yang terdapat dalam komputer jarak jauh. Beberapa metode yang dapat dilakukan adalah menampilkan properti dari drive tersebut, mengatur pengaturan keamanan (access control), dan melakukan beberapa tugas manajemen lainnya. Sistem properties, yang dapat digunakan untuk menampilkan dan memodifikasi properti sistem operasi di dalam komputer lokal dan komputer jarak jauh. Beberapa metode yang dapat dilakukan antara lain memodifikasi pengaturan memori virtual, melihat dan memodifikasi nama host dan NetBIOS serta nama domainnya, melakukan restart komputer dan beberapa tugas administrasi lainnya. Sistem information, yang dapat digunakan untuk menampilkan informasi sistem operasi yang sedang berjalan dalam sistem lokal maupun sistem jarak jauh, yang dapat digunakan untuk troubleshooting sistem operasi. Windows service dependencies, yang dapat digunakan untuk melakukan troubleshooting beberapa masalah yang muncul akibat ketergantungan sebuah layanan dengan layanan lainnya. 2.4 Pemrograman PHP PHP (akronim dari PHP: Hypertext Preprocessor) adalah bahasa pemrograman yang berfungsi untuk membuat website dinamis maupun aplikasi web. Berbeda dengan HTML yang hanya bisa menampilkan konten statis, PHP bisa berinteraksi dengan basis data, file dan folder, sehingga membuat PHP bisa menampilkan konten yang dinamis dari sebuah website. Blog, Toko Online, CMS,

17 Forum, dan Website Social Networking adalah contoh aplikasi web yang bisa dibuat oleh PHP. PHP adalah bahasa scripting, bukan bahasa tag-based seperti HTML. PHP termasuk bahasa yang cross-platform, ini artinya PHP bisa berjalan pada sistem operasi yang berbeda-beda (Windows, Linux, ataupun Mac). Program PHP ditulis dalam file plain text (teks biasa) dan mempunyai akhiran.php. Variabel, variabel dalam PHP dinyatakan dengan tanda $ diikuti nama variabel, pada PHP variabel tidak perlu dideklarasikan, sehingga mempermudah untuk programmer pemula. Misalnya kita ingin menyimpan phi ke dalam variabel $phi, maka kita tinggal menuliskan $phi=3.14 dalam skrip PHP. Konstanta, konstanta fungsinya hampir sama dengan variabel, hanya saja nilai konstanta selalu tetap, tidak bisa diubah ubah. Untuk mendefinisikan konstanta digunakan fungsi define(). Nilai phi yang tersimpan dalam variabel $phi diatas sebenarnya lebih cocok bila disimpan dalam konstanta, karena nilai phi selalu tetap.contoh : define( phi,3.14); Tipe data, PHP mengenal tipe data mulai dari integer, float, string, array dan object. Tipe data integer meliputi semua bilangan bulat, float meliputi semua bilangan pecahan, string untuk karakter atau kumpulan karakter, array untuk kumpulan data, sedangkan tipe data object untuk pemrograman berorientasi objek. Operator, operator berguna untuk melakukan operasi pada suatu nilai. Operator di PHP sangatlah umum sehingga mudah untuk dipahami.operator operator

18 yang sering digunakan dalam PHP : Operator aritmatika, Operator assignment, operator perbandingan, operator increment dan decrement. Statement, statement digunakan untuk mengontrol alur program. Beberapa statement PHP diadopsi dari bahasa C. contoh statement yang biasa dipakai : statement if, statement if else, statement switch, while loop, for loop. Fungsi, fungsi dalam PHP berguna untuk mengumpulkan operasi, yang dapat menerima masukan (input) dan mengeluarkan output. Fungsi akan sangat membantu dalam pemrograman berskala besar, karena fungsi yang pernah dibuat dapat dipakai kembali (reusable). 2.5 MySQL MySQL adalah sebuah implementasi dari sistem manajemen basisdata relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata, terutama untuk pemilihan atau seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya.

19 Sebagai peladen basis data, MySQL mendukung operasi basisdata transaksional maupun operasi basisdata non-transaksional. Pada modus operasi nontransaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak peladen basisdata kompetitor lainnya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional. MySQL memiliki beberapa keistimewaan, antara lain : 1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi. 2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga dapat digunakan secara gratis. 3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik. 4. 'Performance tuning', MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu.

20 5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed / unsigned integer, float, double, char, text, date, timestamp, dan lain-lain. 6. Perintah dan Fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query). 7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti level subnetmask, nama host, dan izin akses user dengan sistem perizinan yang mendetail serta sandi terenkripsi. 8. Skalabilitas dan Pembatasan. 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. 9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP, UNIX soket (UNIX), atau Named Pipes (NT). 10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa. Meski pun demikian, bahasa Indonesia belum termasuk di dalamnya. 11. Antar Muka. MySQL memiliki antar muka (interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface). 12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan (tool) yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online.

21 13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle. 2.6 Unified Modelling Language (UML) Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C. Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering).

22 Konsepsi dasar UML, 1. Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah apa yang diperbuat sistem, dan bukan bagaimana. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaanpekerjaan tertentu. Use case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang menginclude dieksekusi secara normal.sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviournya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain.

23 2. Class Diagram Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda Hubungan antar class : 1. Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class. 2. Agregasi, yaitu hubungan yang menyatakan bagian ( terdiri atas.. ). 3. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.

24 4. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu class kepada class lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence 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). Dalam UML, state digambarkan berbentuk segiempat dengan sudut membulat dan memiliki nama sesuai kondisinya saat itu. Transisi antar state umumnya memiliki kondisi guard yang merupakan syarat terjadinya transisi yang bersangkutan, dituliskan dalam kurung siku. Action yang dilakukan sebagai akibat dari kejadian tertentu dituliskan dengan diawali garis miring. Titik awal dan akhir digambarkan berbentuk lingkaran berwarna penuh dan berwarna setengah. 4. Activity Diagram Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. 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)

25 secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas. Sama seperti state, standar UML menggunakan segiempat dengan sudut membulat untuk menggambarkan aktivitas. Decision digunakan untuk menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan prosesproses paralel (fork dan join) digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal.activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu. 5. Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase

26 desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message. 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, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama. 7. Component Diagram Component 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 run time. Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil.komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain. 8. Deployment Diagram Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal

27 Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.