Manajemen Pengujian Sistem LANDASAN TEORI

12 Sedangkan kekurangan pengembangan sistem ini diantaranya yaitu, pengguna hanya mendapatkan deskripsi yang panjang, rinci, dan ’agak membosankan’ untuk dibaca, pengguna juga baru melihat produk setelah selesai program.

2.2 Manajemen

Manajemen mengacu pada proses mengkoordinasi dan mengintegrasikan kegiatan-kegiatan kerja agar terselesaikan secara efisien dan efektif dengan dan melalui orang lain. Robin, 2000. Menurut Robin dan Coulter 2000:11, prinsip manajemen yang fundamental meliputi empat fungsi tradisional manajemen, yaitu planning, organizing, leading dan control. a. Planning Mencakup mendefinisikan tujuan, penerapan strategi dan mengembangkan rencana untuk mengkoordinasikan kegiatan-kegiatan. b. Organizing Menentukan tugas-tugas apa saja yang akan dikerjakan, siapa yang mengerjakan, bagaimana tugas-tugas dikelompokkan dan tingkat mana keputusan-keputusan harus dibuat. c. Leading Mengarahkan, dan memotivasi semua pihak yang terlibat dan merencanakan pertentangan. 13 d. Controlling Memantau kegiatan-kegiatan untuk memastikan bahwa semua orang menacapai apa yang telah direncanakan dan mengkoreksi penyimpangan yang signifikan.

2.3 Database dan Object Relational

2.3.1 Konsep Database

Data adalah rekaman mengenai fenomena atau fakta yang ada atau yang terjadi Hariyanto, 2004. Sedangkan Informasi adalah hasil analisis dan sintesis terhadap data. Database adalah kumpulan data, yang dapat digambarkan sebagai aktifitas dari satu atau lebih organisasi yang berelasi. Database adalah kumpulan data terhubung yang disimpan secara bersama-sama pada suatu media dan data disimpan dengan cara-cara tertentu sehingga mudah untuk digunakan atau ditampilkan kembali. Sutanta, 2004 Menurut Yuhefizar Database adalah kumpulan dari tabel-tabel yang saling berelasi, disusun secara logis, sehingga menghasilkan informasi yang bernilai guna dalam proses pengambilan keputusan. Sifat- sifat yang dari suatu tabel : 1. Tidak boleh ada record yang sama kembar 2. Urutan record tidak terlalu penting, karena data dalam record dapat diurut sesuai dengan kebutuhan. 14 3. Setiap field harus mepunyai nama yang unik tidak boleh ada yang sama. 4. Setiap field mesti mempunyai tipe data dan karakteristik tertentu. Sistem manajemen database atau biasa disebut DBMS Database Management System adalah perangkat lunak untuk mendefinisikan, menciptakan, mengelola, dan mengendalikan pengaksesan basis data. Fungsi utama basis data saat ini yang paling penting adalah menyediakan basis untuk sistem informasi manajemen. Hariyanto, 2004 Tujuan manajemen basis data, antara lain : 1. menghindari redundansi dan inkonsistensi data 2. menghindari kesulitan pengaksesan data 3. menghindari isolasi data 4. menghindari terjainya anomali pengaksesan konkuren 5. menghindari masalah-masalah keamanan 6. menghindari masalah-masalah integritas Beberapa jenis pemodelan database: 1. Pemodelan Relasional Dikembangkan oleh EF Codd, model relasional memungkinkan definisi operasi pengambilan batasan integritas, struktur data dan penyimpanan. Berdasarkan model relasional, RDBMS melibatkan hubungan antara data terorganisir dalam tabel. Sifat-sifat dari tabel relasional adalah setiap baris berbeda atau unik. 15 Kolom nilai adalah dari jenis yang sama. Signifikan urutan kolom dan baris nama unik untuk setiap kolom Obyek Relasional Model 2. Pemodelan Objek Pendekatan berorientasi objek didasarkan pada integrasi pengembangan database dan aplikasi ke lingkungan bahasa halus dan model data. Dibandingkan dengan pendekatan relasional, DBMSs objek tidak memiliki overhead kinerja manajemen untuk menyimpan atau mengambil hirarki objek yang saling berkaitan. Dengan bantuan layanan ini pendekatan pengembangan perangkat lunak membutuhkan sedikit kode untuk membangun aplikasi. Pengembang dengan mudah dapat mempertahankan basis kode dan menggunakan pemodelan data lebih alami. Dengan demikian, pengembang aplikasi dapat menulis aplikasi database kompleks dengan upaya minimal. 3. Pemodelan Objek-Relasional Objek relasional OR adalah teknologi evolusi yang telah mewarisi fleksibilitas model berorientasi objek dan manajemen kinerja kemampuan model relasional. ORDBMSs Obyek sistem manajemen database relasional berbasis pada model relasional obyek. Di pusat sistem informasi modern, mereka menambahkan objek kemampuan penyimpanan baru untuk sistem relasional. perusahaan pengembangan piranti lunak menggunakan kemampuan ini baru untuk mengintegrasikan pengelolaan objek yang kompleks 16 seperti data geospasial dan waktu-seri dan media biner, seperti gambar, applet, audio dan video.

2.3.2 Objek Relasional Database

Pengembangan basis data objek relasional muncul pada tahun 1990an saat vendor DBMS menyatakan sebagai jalur migrasi yang aman dari basis data relasional. Basis data objek relasional adalah perluasan DBMS relasional yang telah ada. Model objek relasional memperluas model data relasional dengan menyediakan sistem tipe yang lebih kaya termasuk tipe data kompleks dan orientasi objek. Sistem Objek Relasional menyediakan migrasi yang nyaman untuk pemakai basis data relasional yang ingin menggunakan fitur orientasi objek. Hariyanto, 2004 Secara umum, gagasan basis data objek relasional adalah: 1. sekumpulan relasi yang dapat dipandang sebagai sekumpulan kelas 2. masing-masing relasi berisi sekumpulan tupel relasi dapat dipandang sebagai instan dari kelas yang merepresentasikan relasi 3. masing-masing tupel berbentuk oid, val di mana oid adalah ObjekID dan val adalah nilai tupel yang dapat memiliki komponen berbagai nilai misalnya, nilai dasar primitif, sekumpulan tupel, dan acuan ke objek-objek lain. 17 Keistimewaan ORDBMS adalah seperti di bawah ini: 1. Mereduksi beban jaringan, query yang menerapkan metode-metode untuk men-scan data dapat dieksekusi seluruhnya di server, tanpa perlu mengirim sejumlah besar data ke client lebih dulu. 2. Kinerja aplikasi dan query. Metode yang mengolah himpunan data besar dapat mengeksploitasi server-server paralel untuk meningkatkan kinerja secara signifikan. 3. Perawatan perangkat lunak. Data dan metoda-metoda yang disimpan bersama pada server dapat menyederhanakan tugas perawatan perangkat lunak. 4. Manajemen data dan transaksi terpadu. Semua integritas transaksi, konkurensi, backup dan pemulihan ditangani di database engine. ORDBMS memiliki fasilitas untuk mendefinisikan data yang kompleks, menspesialisasikan struktur indeks yang dibutuhkan untuk mengefisienkan pengambilan data. ORDBMS digunakan untuk dua sampai tiga dimensional data. Model basis data berorientasi objek dibangun di atas bahasa pemograman persistent, sementara basis data objek relasional dibangun berdasarkan pendekatan berorientasi objek pada basis data relasional. Fitur penting objek relasional adalah penggunaan versi perluasan dari bahasa query relasional seperti sql untuk mendefinisikan, mengambil, dan memanipulasi data. 18

2.4 WEB

Aplikasi web dapat dibagi menjadi 2 kategori, yaitu web statis dan web dinamis Kadir, 2003. a. Web Statis Web statis adalah aplikasi web yang berisi atau menampilkan informasi-informasi yang sifatnya statis tetap. Disebut statis karena pengunjung tidak dapat berinteraksi dengan web tersebut. Pada web statis pengunjung hanya dapat melihat isi dokuman pada halaman web. Web statis biasanya menggunakan pemrograman web HTML dan tidak memiliki database. b. Web Dinamis Web dinamis adalah aplikasi web yang menampilkan informasi serta dapat berinteraksi dengan pengunjung dengan menggunakan form sehingga dapat mengolah informasi yang ditampilkan. Web dinamis biasanya menggunakan pemrograman web PHP dan memiliki database untuk menyimpan informasi, seperti MySQL.

2.4.1 Web Server

Web server adalah suatu perangkat lunak atau program dan juga mesin yang menjalankan program yang mengerti protokol HTTP dan dapat menanggapi permintaan-permintaan dari web browser yang menggunakan protokol. Web server yang terkenal diantaranya adalah Apache dan Microsoft Internet Information Service IIS. Apache merupakan 19 web server antar-platform, sedangkan IIS hanya dapat beroperasi di sistem operasi Microsoft Windows saja.

2.4.2 Web Browser

Web browser ini mengacu pada suatu sistem perangkat lunak yang memungkinkan mengambil hypermedia dengan mengetik parameter pencarian atau mengklik grafik. Kemampuan ini membebaskan dari keharusan untuk mengetahui URL dari webpage yang berisi informasi yang dibutuhkan. Browser yang popular mencakup Infoseek, WebCrawler, dan Yahoo. Browser disebut juga search engine. McLeod, 2004. 2.5 Tools Pengembangan Sistem 2.5.1 UML UMLUnified Modelling Language adalah salah satu alat bantu yang handal di dunia pengembangan sistem yang berorientasi obyek. Hal ini disebabkan karena UML menyediakan bahasa pemodelan visual yang memungkinkan bagi pengembangan sistem untuk membuat cetak biru atas visi mereka dalam bentuk yang baku, mudah dimengerti serta dilengkapi dengan mekanisme yang efektif untuk berbagi sharing dan mengkomunikasikan rancangan mereka dengan yang lain Munawar, 2005. 20

2.5.2 Konsep Dasar UML

UML adalah notasi yang lengkap untuk membuat visualisasi model suatu sistem. Sistem berisi informasi dan fungsi, tetapi secara normal digunakan untuk memodelkan sistem komputer. Sebagaimana halnya bahasa pemodelan, UML mengizinkan deskripsi dari sistem dibuat rinci pada setiap abstraksi. Notasi tersebut akan didefinisikan sistem dengan arsitektur berorientasi objek.

2.5.3 Kegunaan UML

a. Memodelkan sistem dan bukan hanya perangkat lunak menggunakan konsep object-oriented. b. Membuat sebuah bahasa pemodelan yang dapat digunakan baik oleh manusia maupun oleh mesin. c. UML merupakan bahasa pemodelan general-purpose, mudah diaplikasikan, dan merupakan sandard industri serta dapat diaplikasikan pada bermacam tipe sistem, domain, dan metode atau proses. d. UML memungkinkan untuk menangkap, mengkomunikasikan, dan mengembangkan strategi, taktik, dan mengoperasikan pengetahuan untuk meningkatkan nilai tambah melalui peningkatan kualitas, mereduksi biaya, mereduksi time-to-market.

2.5.4 Tipe Diagram UML

Sebagai sebuah bahasa pemodelan object-oriented, seluruh elemen dan diagram di UML berdasarkan pola object-oriented. 21

1. Use Case Diagram

Use case diagram adalah diagram yang menggambarkan interaksi antara sistem dengan sistem eksternal dan pengguna. Dengan kata lain, secara grafis menggambarkan siapa yang akan menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk berinteraksi dengan sistem Whitten, 2004. Simbol-simbol use-case diagram dapat dilihat dalam daftar simbol. Notasi dalam Use Case: 1. Actor Aktor Actor adalah entitas yang berhubungan dengan sistem dan berpartisipasi dalam use case. Aktor menggambarkan orang, sistem atau entitas eksternal yang secara khusus membangkitkan sistem dengan input atau masukan kejadian-kejadian, atau menerima sesuatu dari sistem. Aktor dilukiskan dengan peran yang mereka mainkan dalam use case, seperti pelanggan, kasir. Dalam Use case Diagram terdapat satu aktor pemulai atau initiator actor yang membangkitkan rangsangan awal terhadap sistem, dan mungkin sejumlah aktor lain yang berpartisipasi atau participating actor Akan sangat berguna untuk mengetahui siapa aktor pemulai tersebut. 22 2. Use case Use case menggambarkan bagaimana seseorang menggunakan sistem. Use case dibuat berdasarkan keperluan aktor yang merupakan gambaran dari apa yang dikerjakan sistem. 3. Relationship Relasirelationship digambarkan sebagai bentuk garis antara dua simbol dalam Use case Diagram. Relasi antara aktor dan use case disebut juga dengan asosiasiassociation. Asosiasi ini digunakan untuk menggambarkan bagaimana hubungan antara keduannya. Relasi antara use case dengan use case : a. Include : pemanggilan use case oleh use case lain atau untuk mengambarkan suatu use case termasuk di dalam use case lain. Digambarkan dengan garis berpanah dengan tulis include b. Extend : digunakan untuk menunjukan bahwa satu use case merupakan tambahan fungsional dari use case lain jika kondisi atau syarat tertentu terpenuhi. Digambarkan dengan garis berpanah dengan tulis extend c. Generalization atau Inheritance, digunakan untuk memperlihatkan beberapa aktor memiliki sesuatu hal yang bersifat umum. 23

2. Class Diagram

Class diagram menggambarkan struktur objek sistem. Diagram ini menunjukan class object yang menyusun sistem dan juga hubungan antar class object tersebut Whitten, 2004. Simbol- simbol class diagram dapat dilihat dalam daftar simbol. 3. StateChart Diagram Statechart Diagram menyediakan sebuah cara untuk memodelkan bermacam-macam keadaan yang mungkin dialami sebuah objek. Jika dalam Class Diagram menunjukkan statis kelas- kelas dan relasinya, Statechart Diagram digunakan untuk memodelkan tingkah laku dinamik sistem. Diagram ini menunjukkan kegiatan object, misalkan sebuah account di bank dapat eksis dalam beberapa keadaan yang berbeda. Seperti dapat buka, tutup, atau kondisi overdraw kondisi dimana jumlah pengambilan lebih besar dari simpanan yang ada. Simbol- simbol statechart diagram dapat dilihat dalam daftar simbol Sholiq,2006.

4. Activity diagrams

Activity diagram secara grafis digunakan untuk menggambarkan rangkaian aliran aktifitas baik proses bisnis atau use-case. Diagram ini berbeda dengan flowchart dimana diagram ini menyediakan sebuah mekanisme untuk menggambarkan 24 kegiatan yang tampak secara pararel. Simbol-simbol activity diagram dapat dilihat dalam daftar simbol.

5. Sequence diagram

Sequence diagram secara grafis menggambarkan bagaimana objek berinteraksi dengan satu sama lain melalui pesan pada eksekusi sebuah use case atau operasi Whitten, 2004. Diagram ini mengilustrasikan bagaimana pesan terkirim dan diterima diantara object dan sequence apa. Diagram ini digunakan untuk menunjukan aliran fungsionalitas dalam use-case. Misalkan, dalam use-case “menarik uang”, mempunyai beberapa kemungkinan, seperti penarikan uang secara normal, percobaan penarikan uang tanpa ada dana yang cukup, dan penarikan dengan menggunakan PIN yang salah. Sequence diagram menunjukan aliran proses dalam use-case “menarik uang”. Simbol-simbol sequence diagram dapat dilihat dalam daftar simbol Sholiq, 2006. 2.5.5 Diagram UML Yang Dipakai Dalam Perancangan Sistem Ini

1. Use case diagram

menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, aktifitas yang dilakukan oleh 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-input sebuah data synop, dan sebagainya. Seorangsebuah aktor adalah sebuah entitas 25 manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu.

2. Class Diagram adalah sebuah spesifikasi yang jika diinstansiasi

akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan atributproperti suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut metodafungsi, sehingga class-class yang saling berinteraksi mencapai tujuannya.

3. Activity diagram 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.

4. 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 menjelaskan urutan proses yang dilakukan oleh sistem untuk mencapai tujuan dari usecase, interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan infomasi yang diperlukan oleh masing-masing operasi. Sequence diagram terdiri atas dimensi vertikal waktu dan dimensi horizontal objek-objek yang terkait. 26

2.6 PHP dan MySQL

2.6.1 PHP

PHP adalah bahasa pemrograman web atau scripting language yang didesain untuk web. PHP dibuat pertama kali oleh satu orang yaitu Rasmus Lerdorf, yang pada awalnya dibuat untuk menghitung jumlah pengunjung pada homepagenya. Diawal Januari 2001, PHP telah dipakai lebih dari 5 juta domain diseluruh dunia, dan akan terus bertambah karena kemudahan aplikasi PHP ini dibandingkan dengan bahasa server side yang lain Rickyanto, 2003. PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP bernama FI Form Interpreted. Pada saat tersebut PHP adalah sekumpulan script yang digunakan untuk mengolah data form dari web. Perkembangan selanjutnya adalah Rasmus melepaskan kode sumber tersebut dan menamakannya PHPFI, pada saat tersebut kepanjangan dari PHPFI adalah Personal Home PageForm Interpreter. Dengan pelepasan kode sumber ini menjadi open source, maka banyak programmer yang tertarik untuk ikut mengembangkan PHP. Pada November 1997, dirilis PHPFI 2.0. Pada rilis ini interpreter sudah diimplementasikan dalam C. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHPFI secara signifikan. Di tahun yang sama, sebuah perusahaan bernama Zend, menulis ulang interpreter PHP menjadi lebih bersih, lebih baik 27 dan lebih cepat. Kemudian pada Juni 1998 perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan nama rilis tersebut menjadi PHP 3.0. Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai. Versi ini banyak dipakai sebab versi ini mampu dipakai untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan proses dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0. Versi ini adalah versi mutakhir dari PHP. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Dalam versi ini juga dikenalkan model pemrograman berorientasi objek baru untuk menjawab perkembangan bahasa pemrograman ke arah pemrograman berorientasi objek. Kelebihan PHP dari bahasa pemrograman lain: 1. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaannya. 2. Web Server yang mendukung PHP dapat ditemukan dimana - mana dari mulai IIS sampai dengan apache, dengan konfigurasi yang relatif mudah. 3. Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan developer yang siap membantu dalam pengembangan. 4. Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah karena referensi yang banyak. 28 5. PHP adalah bahasa open source yang dapat digunakan di berbagai mesin linux, unix, windows dan dapat dijalankan secara run time melalui console serta juga dapat menjalankan perintah-perintah sistem Prasetyo, 2002.

2.6.2 MySQL

MySQL adalah Relational Database Management System RDBMS yang didistribusikan secara gratis di bawah lisensi GPL General Public License. Dimana setiap orang bebas menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat komersil. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQLStructured Query Language. SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan seleksi dan pemasukan data dikerjakan dengan mudah secara otomatis Prasetyo. 2002. Keistimewaan MySQL adalah seperti di bawah ini: 1. arsitektur multiproses forking 2. kemudahan penggunaan 3. dukungan bahasa Query 4. kapabilitas 5. konektivitas dan keamanan rule 6. Cost advantage 7. memiliki tipe data geometri seperti titik, garis, lingkaran, poligon 29 8. distribusi terbuka.

2.7 Pengujian Sistem

Pengujian black-box berfokus pada persyaratan fungsional perangkat lunak. Pengujian black-box memungkinkan perekayasa perangkat lunak mendapatkan serangkaian kondisi input yang sepenuhnya menggunakan semua persyaratan fungsional untuk semua program. Pengujian black-box bukan merupakan alternatif dari teknik white-box, tetapi merupakan pendekatan komplementer yang kemungkinan besar mampu mengungkapkan kelas kesalahan dari pada metode white-box. Pressman, 2002

1. Strategi Pengujian

Pengujian ModulUnit  umumnya dilakukan oleh pengembang sendiri atau antar pengembang  menguji modulunit  metode: white-box Pengujian Integrasi  lebih baik menggunakan penguji independen ITG = Independent Test Group  menguji perancangan perangkat lunak  metode: white-box dan black-box Pengujian Validasi  menguji kesesuaian dengan requirement  metode: black-box Pengujian Sistem  menguji perangkat lunak dan elemen sistem lain sebagai suatu kesatuan 30

2. Black Box Testing

Tehnik pengujian black box berfokus pada domain informasi dari perangkat lunak, dengan melakukan test case dengan menpartisi domain input dari suatu program dengan cara yang memberikan cakupan pengujian yang mendalam. Pengujian black box merupakan pendekatan komplementer dari teknik white box, karena pengujian black box diharapkan mampu mengungkap kelas kesalahan yang lebih luas dibandingkan teknik white box. Pengujian black box berfokus pada pengujian persyaratan fungsional perangkat lunak, untuk mendapatkan serangkaian kondisi input yang sesuai dengan persyaratan fungsional suatu program. Pengujian black box adalah pengujian aspek fundamental sistem tanpa memperhatikan struktur logika internal perangkat lunak. Metode ini digunakan untuk mengetahui apakah perangkat lunak berfungsi dengan benar. Pengujian black box merupakan metode perancangan data uji yang didasarkan pada spesifikasi perangkat lunak. Data uji dibangkitkan, dieksekusi pada perangkat lunak dan kemudian keluaran dari perangkat lunak dicek apakah telah sesuai dengan yang diharapkan. Pengujian black box berusaha menemukan kesalahan dalam kategori : 1 fungsi-fungsi yang tidak benar atau hilang, 2 kesalahan interface, 3 kesalahan dalam struktur data atau akses database eksternal, 4 kesalahan kinerja, 31 5 inisialisasi dan kesalahan terminasi. Pengujian black box harus dapat menjawab pertanyaan sebagai berikut : a Bagaimana validitas fungsional diuji b Kelas input apa yang akan membuat kasus pengujian menjadi lebih baik c Apakah sistem akan sangat sensitive terhadap harga input tertentu d Bagaimana batasan dari suatu data diisolasi e Kecepatan data apa dan volume data apa yang akan ditoleransi oleh sistem f Apa pengaruh kombinasi tertentu dari data terhadap sistem operasi.

2.8 IKLIM