BAB II LANDASAN TEORI
2.1
Teori Mengenai Pembahasan Untuk mempermudah dalam menganalisa dan memecahkan masalah yang
dihadapi penulis menguraikan pengertian sistem dan program aplikasi data kependudukan ke dalam beberapa tahap :
2.1.1
Pengertian Sistem Untuk memberikan gambaran yang jelas tentang pengertian sistem, penulis
akan mengemukakan beberapa pendapat para ahli tentang sistem tersebut. 1. Sistem adalah “Suatu kerangka atau prosedur-prosedur yang saling berhubungan yang disusun sesuai dengan skema yang menyeluruh, untuk
melaksanakan suatu kegiatan atau fungsi
utama dari
perusahaan“. (Zaki Baridwan, 2004 : 3) 2. Sistem yaitu “Suatu kesatuan yang terdiri dari dua atau lebih komponen atau sub sistem yang berinteraksi untuk mencapai suatu tujuan”. (Jogiyanto, 2005 : 683).
2.1.2
Pengertian Program Aplikasi a. Program Aplikasi adalah “Program yang digunakan untuk berinteraksi dengan basis data. Programan aplikasi pada umumnya ditulis dengan bahasa-bahasa seperti COBOL, C, C++, Java, Visual Basic, Borland Delphi, dan sebagainya“. (Nugroho, Adi, 2004 : 135).
8
9
b. Program
Aplikasi
menyelesaikan
adalah
suatu
“program
permasalahan
yang dalam
ditujukan aplikasi
untuk
tertentu”.
(Jogiyanto, 2002 : 397).
2.1.3
Pengertian Pendataan a. Pendataan adalah “bentuk jamak dari daturn, berasal dari bahasa latin yang berarti Sesuatu yang diberikan. Dalam penggunaan sehari-hari data berarti suatu pernyataan yang diterima secara apa adanya. Pernyataan ini adalah hasil pengukuran atau pengamatan suatu variabel yang bentuknya dapat berupa angka, kata-kata, atau citra”. (Kamus besar Bahasa Indonesia, 2002 :211). b. Pendataan adalah “pengumpulan data atau pencarian data“. (Kamus besar Bahasa Indonesia, 2002 :211).
2.1.4
Pengertian Penduduk Dalam ilmu sosiologi, penduduk adalah “kumpulan manusia yang
menempati wilayah geografi dan ruang tertentu”. (Kamus Besar Bahasa Indonesia, 2004 : 257).
2.1.5
Pengertian Kecamatan Kecamatan adalah “pembagian wilayah administratif di Indonesia dibawah
Kabupaten / Kota”. Dalam konteks otonomi daerah di Indonesia, Kecamatan merupakan wilayah kerja camat sebagai perangkat kabupaten atau kota. Kecamatan merupakan unit pemerintahan terkecil setingkat dengan desa. Berbeda dengan desa, kecamatan memiliki hak mengatur wilayahnya lebih Besar. Dalam perkembangannya, sebuah desa dapat ditingkatkan statusnya menjadi kecamatan. (Soebagio Atmodiwirio Manajemen Pemerintahan, 2003 : 158).
10
2.1.6
Pengertian Sistem Data Kependudukan (SIAK) SIAK (Sistem Informasi Kependudukan) adalah sebuah sistem yang
memberikan informasi atau aplikasi yang ditujukan untuk memfasilitasi pelayanan bidang administrasi kependudukan. SIAK berfungsi sebagai tempat perekam data kependudukan (TPDK) dan pencetakan data penduduk sebagai bentuk laporan yang didokumentasi secara terkomputerisasi. Infrasturktur SIAK di rancang secara online menggunakan VPN dial, yang melakukan koneksi secara online ke Pusat Data center database penduduk yang terpusat di Departemen Direktorat Jendral Kependudukan Kementrian Dalam Negeri (Kementrian Dalam Negeri RI, Sosialisasi Pelatihan Aparatur Pemerintah Kecamatan dan Kelurahan : 2008). Berikut ini adalah alur skema interaksi SIAK online yang terangkum pada gambar 2.1.
Gambar 2.1 Skema Interaksi Sistem Administrasi Kependudukan
2.2
Teori Mengenai Database dan Pemrograman
2.2.1
Pengertian Database a. Database (basis data) dapat diartikan sebagai kumpulan data tentang suatu benda atau kejadian yang salingberhubungan satu sama lain. Sedangkan data merupakan fakta yang mewakili suatu obyek seperti manusia, hewan, peristiwa, konsep, keadaan dan sebagainya, yang
11
dapat dicatat dan mempunyai arti yang implisit. (Waljiyanto, 2002 : 15). b. Basis data (Database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan diperangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. (Jogiyanto, 2004 : 738)
Basis data sendiri dapat didefinisikan dalam sejumlah sudut pandang seperti : 1. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. 2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redundancy) yang tidak perlu, untuk memenuhi berbagai kebutuhan. 3. Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.
Secara umum, kita bisa mendefinisikan basis data sebagai koleksi dari data-data yang terorganisasi dengan cara sedemikian rupa sehingga data mudah disimpan dan dimanipulasi (diperbaharui, dicari, diolah, dengan perhitunganperhitungan tertentu, serta dihapus). Secara teoritis, basis data tidaklah mesti berurusan dengan computer (misalnya catatan belanja hari ini yang dicatat oleh seorang ibu rumah tangga juga merupakan basis data dalam bentuknya yang sangat sederhana). Namun dalam karya tulis ini yang dibahas adalah basisdata dalam hubungannya dengan system berbasis computer. (Adi Nugroho, 2004 : 4). Sampai dengan membentuk suatu data base, data mempunyai jenjang mulai dari karakter-karakter (characters), item data (data item atau field), record, file dan kemudian database. Jenjang ini dapat digambarkan sebagai berikut :
12
Database File Record
Data item atau field Characters Gambar 2.2 Struktur Data
Ada beberapa hal yang perlu kita ketahui sebelumnya tentang pekerjaan database : 1. Karakter (Character) Karakter merupakan bagian data yang terkecil, dapat berupa karakter numeric, huruf ataupun karakter-karakter khusus (special characters) yang membentuk suatu item data. 2. Field Suatu
field
menggambarkan suatu
atribut
dari
record
yang
menunjukkan suatu item dari data, seperti misalnya nama, alamat dan lain sebagainya. Kumpulan dari field membentuk suatu record. Ada 3 hal yang penting dalam suatu field yaitu : a. Nama Field (field name). Field harus diberi nama untuk membedakan field yang satu dengan field yang lainnya.
13
b. Representasi dari Field (field representation). Representasi dari field menunjukan tipe dari field (field type) serta lebar dari field (field width). Field dapat bertipe numeric ataupun huruf. Lebar dari field menunjukkan. ruang maksimum dari field yang dapat diisi dengan karakter-karakter data. 3. Nilai dari Field (field value). a. Record Kumpulan dari field membentuk suatu record. Dalam terminology system database record berarti row (baris), meskipun dalam teori database formal terdapat perbedaan arti antara record dan baris, tetapi dalam beberapa kasus keduanya memilki arti yang sama. b. File File terdiri dari record-record yang menggambarkan satu kesatuan data yang sejenis. Misalnya file matakuliah berisi data tentang semua matakuliah yang ada. c. Report Adalah sebuah objek yang digunakan untuk menampilkan data yang telah diformat sesuai dengan ketentuan yang pernah anda berikan. d. Table Table adalah merupakan titik awal sebuah aplikasi database, table dapat didefinisikan sebagai tempat menyimpan sekumpulan data tentang topik tertentu.
14
e. Form Adalah sebuah objek database yang digunakan untuk membuat kontrol untuk proses memasukan, memeriksa, dan memperbaharui data. 2.2.2
Pengertian Rancangan Rancangan adalah apa yang dirancang. Rancang, merancang yaitu
membuat gambar bentuk bangunan secara kasar, hanya garis-garis besarnya ; menyusun kerangka karangan, dipikiran dengan catatan kasar bagian-bagiannya ; menyusun dipikiran tentang rencana pekerjaan yang akan dilaksanakan. (Badudu, Sutan Muhammad Zain, 2006 : 1128). 2.2.3
Rancangan Database Rancangan atau struktur Database merupakan data yang saling
berhubungan satu dengan yang lainnya, tersimpan di simpanan luar komputer dan digunakan perangkat lunak tertentu. (Jogiyanto, 2004 : 217). 2.2.4
Atribut Atribut
adalah
karakteristik
dari
entity
atau
relationship,
yang
menyediakan penjelasan detail tentang entity atau relationship tersebut. Nilai Atribut merupakan suatu data aktual atau informasi yang disimpan pada suatu atribut di dalam suatu entity atau relationship. Jenis – jenis atribute : 1. Key Atribut yang digunakan untuk menentukan suatu entity secara unik. 2. Atribute Simple Atribut yang bernilai tunggal 3. Atribute Multivalue
15
Atribut yang memiliki sekelompok nilai untuk setiap entity 4. Atribute Composite Suatu atribut yang terdiri dari beberapa atribut yang lebih kecil yang mempunyai arti tertentu. 2.2.5
Pengertian Entitas Entitas adalah orang, tempat, objek, kejadian (event), atau konsep dalam
lingkup pengguna yang oleh organisasi atau perusahaan perlu dipelihara datanya. (Nugroho, Adi, 2004 : 58). 2.2.6
Pengertian Implementasi Implementasi merupakan tahap meletakkan system supaya siap untuk di
operasikan. Tahap ini termasuk juga kegiatan menulis kode program. Jika tidak digunakan paket perangkat lunak aplikasi. (Jogiyanto, 2005: 573). 2.2.7
Pengertian Relasi Relasi adalah hubungan suatu himpunan entitas dengan entitas yang
lainnya. (Nugroho, Adi, 2004 : 58) 2.2.8
Pengertian ERD (Entity Relationship Diagram) ERD adalah model konseptual yang mendeskripsikan hubungan antar
penyimpanan dalam DFD (Data Flow Diagram) yang dimodelkan fungsi sistem (C.Jugianto, HM. 2002:129). Relationship dibagi menjadi 3 (tiga) yaitu : a. One to One (1 : 1) Setiap entitas pada himpunan A berhubungan dengan paling banyak dengan satu entitas pada himpunan etentitas B begitu pula sebalikanya setiap entitas pada himpunan B hubungan paling banyak dengan satu entitas pada himpunan entetitas A. b. One to Many (1 : M)
16
Setiap entitas pada himpunan A dapat berhubungan dengan banyak entitas pada himpunan entitas B tetapi tidak sebaliknya dimana setiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B. c. Many to Many Setiap entitas pada himpunan A berhubungan dengan paling banyak dengan satu entitas pada himpunan B, tetapi tidak sebaliknya dimana disetiap entitas pada himpunan entitas A berhubungan dengan paling banyak satu entitas pada himpunan entitas B. Tabel 2.1 jenis Simbol ERD (Entity Relationship Diagram)
NO 1
SIMBOL Simbol Entitas
KETERANGAN Simbol ini merupakan individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain
2
Simbol Atribut
Sekumpulan
atribut-atribut
akan
menjelaskan suatu entitas dan berfungsi mendeskripsikan karakter entity 3
Simbol Relasi
Menujukan adanya hubungan satu sama lain / menunjukan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda
4
Simbol Penghubung
Digunakan sebagai penghubung antara entitas dengan relationship dan antara atribut dengan entitas
17
2.2.9
Pengertian Bahasa Pemograman Bahasa pemograman adalah prosedur atau tata cara penulisan program.
Pada bahasa pemrograman terdapat dua faktor yang penting, yaitu sintak dan sematik. Yang dimaksud sintak adalah gramatikal yang mengatur tata cara penulisan kata ekspresi dan pernyataan. Sedangkan sematik adalah aturan-aturan untuk menyatakan suatu arti. (Budi Sutedjo,2003). Bahasa pemograman yang di pakai dalam pembuatan aplikasi ini adalah PHP yang akan di jabarkan dalam penjelasan selanjutnya. 2.2.10 Pengertian Bahasa Pemograman PHP PHP singkatan dari Hypertext Preprocessor. PHP adalah sebuah bahasa pemrograman yang berjalan dalam sebuah web server. PHP ini diciptakan oleh seorang programer Unix yang bernama Rasmus Lerdorf pada bulan AgustusSeptember 1994. pada awalnya Rasmus Mencoba menciptakan sebuah Script dalam website pribadinya dengan tujuan untuk memonitor siapa saja yang pernah mengunjungi websitenya. Script PHP adalah bahasa program yang berjalan pada sebuah web server atau sering disebut server-side, oleh karena itu, PHP dapat melakukan apa saja yang bisa dilakukan program CGI lain, yaitu mengolah data dengan tipe apapun, menciptakan halaman web yang dinamis, serta menerima dan menciptakan data cookies. PHP dapat digunakan pada semua sistem operasi, antara lain Linux, Unix, (termasuk Variannya HP-UX, Solaris, dan OpenBSD),Microsoft Windows, Mac OS X, RISC OS. PHP juga mendukung banyak web server, seperti Apache, Microsoft Internet Information Server(MIIS), Personal Web Server(PWS), Netscape and Iplanet Server, Oreilly Website Pro Server, Audium, Xitami, OmniHTTPd, dan masih banyak lagi lainnya. PHP terdiri dari beberapa metode konteks pada penulisan scriptnya yaitu :
18
1. Variabel Variabel digunakan sebagai tempat penyimpanan data sementara. Data variabel akan hilang setelah program selesai dieksekusi. Untuk penyimpanan data yang permanen, kita dapat menyimpan data pada database, variable diawali tanda($). Untuk dapat menggunakan variabel, ada dua(2) langkah yang harus dilakukan yaitu : a. Deklarasi Variabel Deklarasi variabel bisa disebut juga memperkenalkan atau mendaftarkan variabel kedalam program. Didalam PHP, deklarasi variabel sering kali digabung dengan inisialisasi. Contoh :
$namaCostumer $jumlahBarang $harga
Ada beberapa aturan berkenaan dengan penggunaan nama variabel. Aturan pemberian nama variabel sebagai berikut : a. Dimulai dengan tanda $ b. Karakter pertama harus hurus atau garis bawah( _ ) c. Karakter berikutnya boleh huruf, angka, atau garis bawah. b. Inisialisasi variabel Inisialisasi variabel adalah mengisi nilai untuk pertama kalinya dalam variabel. Contoh inisialisasinya sebagai berikut : $namaDepan $jumlahBelakang $jumlahBarang
= “Chandra” = “Kharisma” = ”100”
19
2. Konsep Function pada PHP Function
adalah
sekumpulan
statement
yang
dibuat
untuk
menyeleseikan satu perintah kode program (syntax) tertentu. Dalam deklarasi function ada beberapa hal yang harus diperhatikan, yaitu sebagai berikut : 1. Nama function 2. Parameter 3. Function body Berikut ini adalah contoh implementasi function : Function addNumber ( $x, $y ) { z = x + y; echo(z); } Function jumlahkan(int x, int y) { z = x+y; return z; }
Keterangan Analisis dari contoh program diatas, perhatikan baris ke (2) dua sampai ke (4) empat, berikut penjabarannya : 1. Function body dibatai dengan kurung kurawal { dan }. 2. Function body berisi instruksi yang dilakukan komputer untuk menghasilkan output yang di inginkan. 3. Baris ke (3) tiga menyuruh komputer untuk membuat satu vasriabel berinisialisasi huruf z yang isinya adalah hasil penjumlahan x dan y. 4. x dan y di dapat dari input yang diberikan user. 5. Baris ke (4) empat menyuruh komputer untuk menampilkan hasil perhitungan ke layar.
20
3. Class Dan Object pada PHP Untuk
dapat
memahami
konsep
class
dan
object,
dapat
divisualisasikan ke dalam aplikasi address book, dalam sebuah address book, komponen yang terlibat adalah kontak. Komponen kontak itulah disebut class, jadi class adalah definisi dari suatu object atau gambaran suatu benda kedalam suatu pengelompokkan. Sedangkan object
adalah
komponen
benda
nyata
yang
ada
di
dalam
pengelompokkan suatu class. Berikut ini adalah contoh implementasi class Class Contact { } ?> Contoh object class Contact dengan kode $anis = new Contact(); $nina = new Contact(); $ratna= new Contact();
4. Session Pengertian sebuah session dapat digunakan untuk membentuk interaksi antara sebuah klien dengan web server dalam selang waktu tertentu. Session di implementasikan dengan menyimpan data pada server. Dengan demikian tidak perlu ada komunikasi arus bolak-balik antara web server dan klien ketika web server membutuhkan data tersebut. Untuk mengawali session dapat dideskripsikan dengan fungsi session_start( ); dan untuk mengakhiri session dapat dideskripsikan dengan fungsi session_destroys( );.
21
5. Cookies Pengertian
cookies
digunakan
oleh
administrator
web
untuk
menyimpan informasi user. Untuk membuat cookies, caranya dengan menggunakan perintah setcookie(name,value,expiration)yang memiliki 3buah argument, yaitu : a. Name, merupakan nama dari cookie yang dapat dipanggil untuk mendapatkan informasi b. Value, merupakan informasi atau data yang disimpan didalam cookie c. Expiration, merupakan batas waktu penyimpanan cookie (dalam detik timestamp). Apabila lama penyimpanan sebuah cookie melebihi batas waktu ini, maka secara otomatis cookie tersebut akan terhapus. 6. Ajax (Asynchronous Javascript and XML) Ajax adalah sebuah teknik pemograman untuk membuat web aplikasi lebih
interaktif.
Dengan
Ajax,
Javascript
dapat
langsung
berkomunikasi dengan server menggunakan objek XMLHttpRequest. Dengan ini, javascript dapat melakukan transaksi data dengan server web tanpa harus mereloading halaman secara keseluruhan. Berikut ini adalah teknologi yang termasuk dalam aplikasi Ajax : a. HTML yang digunakan untuk membuat web forms dan mengidentifikasi filed-field yang digunakan pada aplikasi b. Javascript adalah kode inti untuk menjalankan aplikasi ajax dan untuk membantu memfasilitasi komunikasi dengan aplikasi c. DHTML, atau dynamic HTML, untuk membantu membuat form web menjadi dinamis. d. DOM, document objek model, yang akan digunakan melalui kode
22
2.2.11 Pengertian MySQL MYSQL adalah sebuah program database server yang mampu menerima dan mengirimkan datanya dengan sangat cepat,multi user serta menggunakan perintah standar sql(structured query language). Kelebihan mySQL adalah sebuah database server, dapat juga berperan sebagi client sehingga sering dusebut database client/server, dengan kemampuan dapat berjalan dengan baik di OS(operating system) manapun dengan flatfrom windows maupun linux. 2.2.12 Pengertian Struktur Query Language (SQL) Struktured Query Language (SQL) adalah salah satu bahasa standar dan mendekati bahasa sehari-hari yang dibutuhkan untuk melakukan komunikasi antar komputer dengan pemakai. (Yuswanto, 2004 : 64). Sedangkan pengertian Query merupakan sekumpulan perintah SQL yang dirancang untuk memanggil sekelompok record tertentu dari satu tabel untuk melakukan proses pengoprasian eksekusi. 2.2.13 Pengertian Pemograman Web Situs/web dapat dikategorikan sebagai dua yaitu web statis dan web dinamis atau interaktif. Web ststis adalah web yang sifatnya staitis/tetap, sedangkan web dinamis adalah web yang menampilkan informasi serta dapat berinteraksi dengan user yang sifatnya dinamis (Sutarman : 2004,7). 2.2.14 Xampp Xampp adalah perangkat lunak gratis (opensource), 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 bahasa pemrograman PHP dan Perl.
23
Xampp adalah nama yang merupakan singkatan dari X (empat sistem operasi) yaitu Apache, MySQL, PHP, dan Perl. Program ini tersedia dalam General Public Licene (GPL) dan bebas., merupakan web server yang mudah digunakan dan mampu melayani halaman web dinamis. 2.2.15 Pengertian Aplikasi PHP My Admin Suatu program open source berbasis web. Program ini berguna untuk mengakses Database MySql. Program ini dapat membuat kerja kita semakin mudah dan singkat dengan beberapa kelebihan, antara lain pengguna awam tidak harus mengenal syntak – syntak SQL dalam pembuatan Database dan tabel (Bunafit, Nugroho, 2005 : 3). Untuk mengaktifkan PHPMyAdmin langkah – langkahnya sebagai berikut: a. Setelah Xampp di install, kita harus mengaktifkan web server Apache dan MySQL dari kontrol panel Xampp. b. Selanjutnya, jalankan browser (Internet Explorer, Mozilla Firefox, atau Opera) lalu ketik alamat web berikut : http://localhost/phpmyadmin/ pada addres bar, kemudian tekan tombol enter. c. Apabila interface (tampilan antar muka) telah kelihatan, PHP MyAdmin tersebut bias langsung digunakan dengan mengetikan nama database yang kita buat, nama tabel dan seterusnya. 2.2.16 Pengertian Apache Merupakan server web yang digunakan dalam pemograman web berbasis server. Apache merupakan server web yang bersifat open source sehingga menjadikan apache sebagai server web alternative dari Netscape ( sekarang dikenal sebagai sun java system web server ).
24
2.2.17 Hyper Text Markup Languange (HTML) HTML merupakan standar bahasa yang digunakan dokumen web yang biasa dilakukan dengan HTML (www.ilmukomputer.com). HTML merupakan program penulisan iinformasi sebuah homepage atau banyak juga menyebutnya dengan webpage atau page saja. 2.2.18 Macromedia Dreamweaver Dreamweaver adalah software professional untuk desain program dan manajemen situs web dengan tingkat fleksibilitas yang sangat tinggi. Dreamweaver 8 mendukung lima jenis teknologi server terbaru yaitu ASP.Net, ASP, JSP, ColdFusion, dan PHP. (Irwandi, 2004:31) Dreamweaver merupakan perangkat lunak yang ditujukan untuk membuat suatu situs web. Versi pertama dirilis pada tahun 1997, dan sejak itu Dreamweaver menjadi web editor yang banyak digunakan oleh para web developer. Hal itu antara lain karena kemudahan dalam penggunaannya, kelengkapan fiturnya dan juga dukungannya terhadap teknologi terkini. Dreamweaver merupakan salah satu perangkat lunak yang dikembangkan oleh Macromedia Inc.
2.3
Teori Mengenai Rekayasa Perangkat Lunak Metodologi perangkat lunak yang digunakan dalam pembuatan sistem
aplikasi ini terangkum dalam penjabaran berikut ini :
UML (Unified Modelling Language) adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek (Fowler, 2005:1). UML terdiri atas 13 jenis diagram resmi seperti tertulis dalam Tabel 2.2 berikut ini ini.
25
Tabel 2.2 Jenis Diagram resmi UML No.
Diagram
1 2 3 4 5 6 7 8 9 10
Activity Behavior Class Communication Component Composite structure Deployment Interaction overview Object Package Sequence
11
State machihne
12
Timing
13
Use case
Kegunaan
prosedural dan parallel Class, fitur , dan hubungan-hubungan Interaksi antar objek; penekanan pada jalur Struktur dan koneksi komponen Dekomposisi runtime sebuah class Pemindahan artifak ke node Campuran sequence dan activity diagram Contoh konfigurasi dari contoh-contoh Struktur hirarki compile-time Interaksi antar objek; penekanan pada sequence Bagaimana even mengubah objek selama aktif Interaksi antar objek; penekanan pada timing Bagaimana pengguna berinteraksi dengan sebuah sistem
Diagram UML yang akan dibahas pada kebutuhan aplikasi ini adalah diagram use case (use case diagram), diagram aktifitas (activity diagram), dan diagram sekuensial (sequence diagram)
2.3.1
Use Case Diagram Diagram use case adalah teknik untuk merekam persyaratan fungsional
sebuah sistem. Diagram use case mendeskripsikan interaksi tipikal antara para pengguna sistem dengan sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem tersebut digunakan (Fowler, 2005:141). Diagram use case menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah apa yang diperbuat sistem, dan bukan bagaimana (Dharwiyanti dan Wahono, 2003:4). Menurut Munawar (2005:63) use case adalah deskripsi fungsi dari sebuah sistem dari perspektif pengguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi antara pengguna sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Urutan langkah-langkah yang
26
menerangkan antara pengguna dan sistem disebut skenario. Setiap skenario mendeskripsikan urutan kejadian. Setiap urutan diinisialisasi oleh orang, sistem yang lain, perangkat keras atau urutan waktu. Dengan demikian secara singkat bisa dikatakan use case adalah serangkaian skenario yang digabungkan bersamasama oleh tujuan umum pengguna. Dalam pembicaraan tentang use case, pengguna biasanya disebut dengan aktor. Aktor adalah sebuah peran yang bisa dimainkan oleh pengguna dalam interaksinya dengan sistem. Aktor mewakili peran orang, sistem yang lain, atau alat ketika berkomunikasi dengan use case. Di dalam use case terdapat Stereotype yaitu sebuah model khusus yang terbatas untuk kondisi tertentu. Untuk menunjukkan Stereotype digunakan simbol ”<<” diawalnya dan ditutup ”>>” diakhirnya. <
> digunakan untuk menggambarkan bahwa suatu use case seluruhnya
merupakan
fungsionalitas
dari
use
case
lainnya.
Biasanya
<> digunakan untuk menghindari penggandaan suatu use case karena sering dipakai. <<extend>> digunakan untuk menunjukkan bahwa suatu use case merupakan tambahan fungsional dari use case yang lain jika kondisi atau syarat tertentu dipenuhi. Di dalam use case juga terdapat generalisasi.
27
Tabel 2.3 menampilkan notasi-notasi dalam pemodelan diagram use case menurut Booch, Rumbaugh, dan Jacobson (1998:187). Tabel 2.3 Simbol pemodelan diagram use case No. 1
Notasi
Keterangan Aktor
2
Use Case
3
Batas sistem (system boundary)
4
Garis penghubung (pengendali arah)
5
Gabungan (association)
6
Generalisasi (generalization)
7
Realisasi (realization)
8
Stereotype penyertaan (include)
9
Stereotype perluasan (extend)
Menurut Munawar (2005:179) setiap use case harus dideskripsikan dalam dokumen yang disebut dengan dokumen aliran kejadian (flow of event). Dokumen ini mendefinisikan apa yang harus dilakukan oleh sistem ketika aktor mengaktifkan use case. Struktur dari dokumen use case ini bisa macam-macam, tetapi umumnya deskripsi ini paling tidak harus mengandung : 1. Deskripsi singkat (brief description). 2. Aktor yang terlibat. 3. Kondisi awal (precondition) yang penting bagi use case untuk memulai. 4. Deskripsi rinci dari aliran kejadian yang mencakup: a. Aliran utama (main flow) dari kejadian yang bisa dirinci lagi.
28
b. Aliran bagian (sub flow) dari kejadian. c. Aliran alternatif untuk mendefinisikan situasi perkecualian. 5. Kondisi akhir yang menjelaskan state dari sistem setelah use case berakhir. Dokumen use case ini berkembang selama masa pengembangan. Di awal-awal penentuan kebutuhan sistem, hanya deskripsi singkat saja yang ditulis. Bagian bagian lain dari dokumen ini ditulis secara gradual dan iteratif. Akhirnya sebuah dokumen lengkap bisa didapatkan di akhir fase spesifikasi. Biasanya pada fase spesifikasi ini sebuah prototipe yang dilengkapi dengan tampilan layar bisa ditambahkan. Pada tahap berikutnya, dokumen use case ini bisa digunakan untuk membuat dokumentasi untuk implementasi sistem.
2.3.2
Activity Diagram Menurut Munawar (2005:109) diagram aktifitas adalah teknik untuk
mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Diagram aktifitas mempunyai peran seperti halnya diagram alur (flowchart), akan tetapi perbedaannya dengan flowchart adalah diagram aktifitas bisa mendukung perilaku paralel sedangkan flowchart tidak bisa. Berikut pada Tabel 2.4 adalah simbol-simbol yang sering digunakan pada saat pembuatan diagram aktifitas.
29
Tabel 2.4 Simbol pada diagram Aktivity No. 1
2.3.3
Simbol
Keterangan Titik awal
2
Titik akhir
3
Aktifitas (activity)
4
Pilihan untuk keputusan
5
Fork; digunakan untuk menunjukkan kegiatan yang dilakukan secara parallel atau untuk menggabungkan dua kegiatan paralel menjadi satu
6
Rake; menunjukkan adanya dekomposisi
7
Tanda waktu
8
Tanda pengiriman
9
Tanda penerimaan
10
Aliran akhir (Flow final)
mengambil
Sequence Diagram Menurut Munawar (2005:87) diagram sekuensial digunakan untuk
menggambarkan perilaku pada sebuah skenario. Komponen utama diagram sekuensial terdiri atas objek atau disebut juga peserta (participant), pesan diwakili oleh garis dengan tanda panah dan waktu yang ditunjukkan dengan garis tegak lurus. Tabel 2.5 memperlihatkan notasi-notasi dalam pemodelan diagram sekuensial.
30
Tabel 2.5 Simbol pada Sequence Diagram No 1
Notasi
Keterangan Aktor
2
Obyek
3
Batas (boundary)
4
Kendali (control)
5
Entitas (entity)
6
Penggerakan (activation)
7
Garis hidup (lifeline)
8
Pesan selaras (Synchronous message)
9
11
Pesan tidak selaras (Asynchronous message) Pesan kembali yang tidak selaras (asynchronous return message) Pesan rekursif (self message)
12
Pesan hilang (lost message)
13
Pesan ditemukan (found message)
14
Pesan pembuatan obyek baru
15
Pesan penghapusan obyek
10
31
2.4
Pengujian Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas
perangkat lunak dan merepresentasikan kajian pokok dari spesifikasi, desain, dan pengkodean. (Pressman, 2002:525).
2.4.1
Pengujian Black Box Salah satu bentuk pengujian black box adalah metode partisi ekivalensi
yaitu metode pengujian black box yang membagi domain input dari suatu program ke dalam kelas data dari mana test case dapat dilakukan (Pressman, 2002:526) Pengujian black box berusaha menemukan kesalahan diantaranya fungsi-fungsi yang hilang atau tidak benar, kesalahan interface, kesalahan dalam struktur data atau akses basis data eksternal, kesalahan kinerja, inisialisasi dan kesalahan terminasi. Pengujian black box ini dilakukan untuk memperlihatkan bahwa fungsifungsi bekerja dengan baik dalam arti masukan yang diterima dengan benar dan keluaran yang dihasilkan benar-benar tepat, pengintegrasian dari eksternal data berjalan dengan baik (file/data). Walaupun sulit untuk menelusuri kesalahan yang mungkin didapat, teknik pengujian black box lebih sering dipilih untuk menguji perangkat lunak karena kemudahan dalam pelaksanaannya.