7
BAB II LANDASAN TEORI 2.1 Konsep Dasar Sistem 2.1.1 Pengertian Sistem Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai tujuan
tertentu.sedangkan informasi adalah sebagai hasil dari sebuah
pengolahan data yang telah di olah kedalam bentuk yang lebih berguna bagi si penerima atau si pemberi informasi untuk mencapai keputusan [Jogiyanto HM,2010:1]. Jadi sistem informasi itu merupakan suatu sistem terintegrasi yang mampu menyediakan informasi yang bermanfaat bagi penggunanya. 2.1.2 Karakteristik Sistem Suatu sistem yang mempunyai karakteristik atau sifat-sifat tertentu, yaitu mempunyai komponen-kompenen batasan lingkungan luar sistem, penghubung masukan keluaran pengolahan dan sasaran atau tujuan. [Jogiyanto HM,2010:3-6] a) Komponen Sistem. Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi,yang artinya saling bekerja sama membentuk suatu kesatuan.komponenkomponen sistem elemen-elemen sistem dapat berupa suatu subsistem atau bagian-bagian dari sistem. b) Batasan Sistem. Batasan Sistem merupakan daerah yang membatasi antara suatu sistem dengan sistem lainnya atau dengan lingkungan luarnya,Batas sistem ini memungkinkan suatu sistem di pandang sebagai suatu kesatuan dan menunjukan ruang lingkup dari sistem tersebut.
8
c) Lingkungan Luar Sistem Adalah apapun di luar batasan dari sitem yang mempengaruhi operasi sistem. lingkungan luar sistem dapat bersifat menguntungkan dan juga merugikan, karena lingkungan luar yang menguntungkan merupakn energi dari sistem dan dengan demikian harus dijaga dan dipelihara. d) Penghubung Sistem Media yang menghubungkan antara subsistem dengan subsistem yang lainnya,Melalui penghubung ini kemungkinan sumber-sumber daya mengalir dari suatu subsistem ke subsistem lainnya. Keluaran suatu subsistem akan menjadi masukan untuk subsistem lainnya
melalui
penghubung. e) Masukan Sistem Energie yang dimasukan ke dalam sistem disebut masukan sistem. Masukan dapat berupa masukan perawatan dan masukan sinyal maintenance input adalah energy yang dimasukan supaya sistem tersebut dapat berjalan dan merupakan suatu proses untuk mendapatkan hasil keluaran dari sistem f) Keluaran Sistem Hasil energie yang diolah dan diklasifikasikan menjadi output yang berguna. g) Pengolahan Sistem Suatu dapat mempunyai suatu bagian pengolah atau sistem itu sendiri sebagai pengolahnya. Pengolah yang akan merubah masukan menjadi keluaran. h) Sasaran Sistem Suatu sistem yang mempunyai tujuan atau sasaran sistem tidak mempunyai sasaran maka sistem tidak akan ada, suatu sistem dapat dikatan berhasil bila mengenai sasaran atau tujuannya.
9
2.2 Konsep Dasar Web 2.2.1 Web Menurut Andi (2013 : 311) mengemukakan bahwa Web server adalah suatu program komputer yang mempunyai tanggung jawab atau tugas menerima permintaan PHP dari Computer klien, yang dikenal dengan nama web browser, dan melayani mereka dengan menyediakan respon HTTP berupa konten data, biasanya berupa halaman web yang terdiri dari dokumen HTML, dan objek terkain seperti gambar dan lain-lain. Webserver yang diusung oleh XAMPP adalah appche yang kemampuannya dan keandalannya. XAMPP itu sendiri adalah paket perangkat lunak yang berupakan singkatan dari X (yang berarti memiliki sifat Cross-Platform), A (Webserver Apache), M (database MySQL), P (bahasa pemrograman PHP), P (bahasa pemrograman Perl). 2.2.2 Adobe Dreamweaver CS6 Dalam pembuatan website penulis menggunakan program editor adobe dreamweaver CS6. Menurut Andi (2013:d1) mengemukakan bahwa “Adobe Dreamwever CS6 adalah perangkat lunak yang terkemukakan untuk desain web yang menyediakan visual yang intuitif termasuk pada tingkat kode, yang dapat digunakan untuk membuat dan mengedit website HTML serta aplikasi mobile seperti smarthphone dan perangkat lainya”. 2.2.3 Basis Data Berikut ini adalah beberapa defini basis data menurut Fatansyah (2010:2) : 1. Kumpulan data yang saling berhubungan uang disimpan secara bersama dengan sedemikian rupa dan tanpa pengulangan yang tidak perlun untuk memenuhi berbagai kebutuhan. 2. Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis. 3. Himpunan kelompok data atau arsip yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dapat dimanfaatkan kembali dengan cepat dan mudah.
10
Aplikasi basis data yang digunakan untuk membangun website ini adalah sebagai berikut 2.2.4 MySQL Menurut Mohamad Sukarno (20010:3) menyimpulkan bahwa “MySQL adalah merupakan perangkat lunak untuk DMS (Database Management System) karena sifatnya yang open source dan memiliki kemampuan menampung kapasitas yang sangat besar, maka MySQL menjadi database yang sangat popular dikalangan programer web”. MySQL dijalankan dala 2 sistem operasi yang sangat popular saat ini, yaitu : windows dan Linux
2.2.5 PHP MyAdmin PHP MyAdmin sebenarnya Adalah sebuah aplikasi web yang ditulis menggunakan bahasa pemrograman PHP. Sebagaimana aplikasi-aplikasi lain untuk lingkungan web (aplikasi yang dibuka menggunakan pramban atau browser php MyAdmin merupakan aplikasi web yang bersifat open
source (sumber
terbuka) sejak pertama kali dibuat dan dikembangkan. Dengan dukungan dari banyak developer dan translator, aplikasi web phpMyAdmin mengalami perkembangan yang cukup pesat dengan ketersediaan banayak pilihan bahasa. 2.3 Analisa Sistem 2.3.1 Pengertian Analisa sistem Analisa sistem dilakukan sebelum tahap perancangan sistem,beberapa pengertian tentang analisa sistem yang dikemukakan oleh para ahli adalah sebagai berikut.Menurut Jogiyanto (2010:129) Analisa adalah penguraian dari suatu sistem informasi yang utuh kedalam bagian-bagian komponennya dengan maksud untuk mengidentifikasikan dan mengevaluasi permasalahan, kesempatan, hambatan yang terjadi dan kebutuhan yang diharapkan sehingga dapat disimpulkan perbaikan-perbaikannya. Didalam tahap analisis sistem terdapat langkah-langkah dasar yang harus dilakukan oleh analis sistem sebagai berikut :
11
1. Identify Identify yaitu mengidentifikasi masalah. 2. Understand Understand yaitu memahami kerja dari sistem yang ada. 3. Analyze Analyze yaitu menganalisis sistem. 4. Report Report yaitu membuat laporan hasil analisis. 2.4 Pengertian Aplikasi. Pengertian Aplikasi atau Perangkat lunak aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna.Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media.. Berikut ialah definisi aplikasi dari berbagai sumber : 1. Aplikasi adalah kumpulan perintah program yang dibuat untuk melakukan pekerjaan-pekerjaan tertentu (khusus). 2. Aplikasi adalah suatu kelompok file (form, class, report) yang bertujuan untuk
melakukan aktivitas tertentu yang saling terkait,
misalnya aplikasi payroll, aplikasi fixed asset, dan lain-lain. 3. Aplikasi adalah alat bantu untuk mempermudah dan mempercepat proses pekerjaan dan bukan merupakan beban bagi para penggunanya. 4. Aplikasi adalah
perangkat lunak yang digunakan untuk tujuan
tertentu, seperti mengolah dokumen, mengatur Windows &, permainan (game), dan sebagainya. 5. Aplikasi adalah proses atau prosedur aliran data dalam infrastruktur teknologi informasi yang dapat dimanfaatkan oleh para pengambil keputusan yang sesuai dengan jenjang dan kebutuhan (relevan)
12
2.5 Pencarian Data Pencarian data adalah suatu proses untuk mengumpulkan sebuah data di dalam komputer, buku telepon, kamus dan sebagainya. Dan kemudian mencari kembali data yang di perlukan secepat mungkin. 2.6 Pengertian Kamus Definisi kamus menurut beberapa ahli yaitu : 1. Hasan Alwi (2010:10) mendefenisikan, Kamus merupakan khazanah perbendaharaan kata suatu bahasa yang menggambarkan tingkat peradaban bangsa pemiliknya. 2. Menurut W.J.S Poerwadarminta ( 2010 : 10 ) ”Kamus adalah buku yang berisi keterangan tentang arti kata-kata. 3. Sedangkan Hoetomo M.A ( 2010:10 ) mendefenisikan, Kamus yaitu buku acuan yang memuat kata dan ungkapan yang biasanya disusun menurut abjad berikut keterangan tentang maknanya. Dari definisi kamus diatas dapat disimpulkan bahwa kamus merupakan sebuah buku yang memuat kata atau istilah yang disusun menurut abjad berikut keterangan dan maknanya. 2.6.1 Perkembangan Kamus Kamus Data Kamus data (data dictionary) merupakan katalog fakta tentang data dan kebutuhan- kebutuhan informasi dari suatu sistem informasi.dengan menggunakan kamus data, analisis system dapat mendefenisikan data yang mengalir di sistem dengan lengkap.Kamus data dibuat pada tahap analisis sistem dan digunakan baik pada tahap analisi maupun pada tahap perancangan, sistem (Jogiyanto.HM, 2009:725). Pada tahap analisis, kamus data dapat digunakan sebagai alat komunikasi antara analisis sistem dengan pemakai sistem tentang data yang mengalir di sistem, yaitu tentang data yang masuk ke sistem dan tentang informasi yang dibutuhkan olehpemakai sistem.
13
Pada tahap perancangan sistem, kamus data digunakan untuk merancang input, merancang laporan-laporan dan database. 2.7 Pengertian Alat Kesehatan Pengertian alat kesehatan berdasarkan Menteri Kesehatan Republik Indonesia No. 220/Men.Kes/Per
IX/2010
tertanggal
september
2010
adalah.
Alat kesehatan adalah isntrumen, apparatus, mesin dan atau implan yang tidak mengandung obat yang digunakan untuk mencegah, mendiagnosa,menyembuhkan dan meringankan penyakit, merawat orang sakit, memulihkan kesehatan pada manusia dan atau membentuk struktur dan meperbaiki fungsi tubuh karena fungsi itu, maka alat kesehatan yang beredar harus memenuhi standart atau persyaratan umum, keamanan dan kemanfaatan. Peralatan tersebut dapat berupa peralatan yang paling sederhana hingga peralatan yang super canggih. ISO 13485 : 2003, Medical devices – Quality management systems – Requirements for regulatory purposes, adalah persyaratan standar yang dikembangkan berdasarkan proses dan pendekatan ISO 9001. Standar ini merupakan langkah penting untuk menjamin desain dan peraturan yang berlaku. Berikut ini adalah kutipan dari 2 (dua) klausul ISO 13458 : 2003 yang merupakan informasi umum mengenai standar untuk alat kesehatan. 1. Lingkup Standar Internasional ini menentukan persyaratan bagi sistem manajemen mutu bila sebuah organisasi perlu memperagakan kemampuannya untuk taat asas menyediakan peralatan medis atau kesehatan dan jasa – jasa terkait yang memenuhi persyaratan pelanggan dan peraturan yang berlaku. Sasaran utama dari standar internasional ini untuk menyamakan persyaratan manajemen mutu dari peralatan medis atau kesehatan sebagai hasilnya, persyaratan ini mencantumkan beberapa persyaratan peralatan medis atau kesehatan dan meniadakan beberapa persyaratan ISO 9001 yang tidak sesuai dengan persyaratan yang mengatur akibat dari peniadaan ini, organisasi yang telah menerapkan sistem manajemen mutu
14
ISO 9001 terkecuali jika sistem manajemen mutu yang mereka gunakan telah menerapkan semua persyaratan dalam ISO 9001. 2. Acuan yang mengatur Dokumen – dokumen acuan berikut sangat diperlukan dalam penerapan dokumen ini, untuk acuan bertanggal hanya terbitan yang disebutkan yang digunakan telah menerapkan semua persyaratan dalam ISO 9001. 2.7.1 Istilah dan Definisi Definisi – definisi berikut seharusnya dianggap sebagai istilah – istilah yang disediakan dalam standar nasional dapat dengan mudah digunakan dan mendahului. 1. Peralatan medis aktif yang ditanamkan Peralatan medis aktif yang di tanamkan secara total atau sebagian, dengan pembedahan atau pengobatan, atau secara campuran ke dalam tubuh atau kulit manusia, dan yang dianggap tetap seelah penanaman. 2. Peralatan medis aktif Peralatan medis berdasarkan fungsinya di sebuah sumber dari energie listrik atau sumber energie lain selain yang langsung dihasilkan oleh tubuh manusia atau gaya tarik. 3. Peralatan medis Perkakas, aparatur, peralatan, mesin, alat, implan, dalam pereaksi vitro atau kalibrator, perangkat lunak, ,aterial atau sejenisnya atau benda terkait dibuat oleh perusahaan untuk digunakan, terpisah atau digabungkan untuk manusia untuk satu atau lebih dari kegunaan khusus dari : a. Diagnosis, pencegahan, pemantauan, perawatan, atau peringanan wabah. b. Diagnosis, pemantauan, perawatan, peringanan dari atau ganti rugi dari sebuah luka – luka. c. Pemahaman informasi kegunaan peralatan dengan kegunaan dalam pengujian vitro dari spesimen yang berasal dari tubuh manusia.
15
2.8 Android Android adalah suatu sistem operasi berbasis linux yang berfungsi sebagai sistem informasi. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasinya sendiri. 2.8.1 Sejarah perkembangan android Menurut Stephanus Hermawan S (2011:2) Android merupakan sistem operasi yang dikembangkan untuk perangkat mobile berbasis Linux.Pada awalnya sistem operasi dikembangkan oleh Android Inc. yang kemudian dibeli oleh Google pada tahun 2005.Dalam usaha mengembangkan Android, pada tahun 2007 dibentuklah Open Handset Alliance (OHA), sebuah konsorsium dari beberapa perusahaan, yaitu Texas Instruments, Broadcom Corporation, Google, HTC, Intel, LG, Marvell Techonology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, Sprint Nextel, dan T-Mobile dengan tujuan untuk mengembangkan standar terbuka untuk perangkat mobile. Pengembangan sistem operasi dan aplikasinya sendiri mengacu pada 4 (empat) prinsip : 1.
Terbuka Android dibangun untuk menjadi benar-benar terbuka.Sebagai contoh, sebuah aplikasi dapat mengambil dan mengakses fungsifungsi utama ponsel seperti membuat panggilan, mengirim pesan teks, menggunakan kamera.Hal ini memungkinkan para pengembang untuk membuat aplikasi yang lebih baik.
2.
Semua Aplikasi Dibuat Sama Android tidak membedakan antara aplikasi inti ponsel dam aplikasi pihak ketiga. Kedua jenis ini dapat dibangun dan memiliki akses yang sama ke ponsel. Pengguna dapat sepenuhnya mengatur telepon sesuai kepentingan mereka.
3.
Mendobrak Batasan-batasan Aplikasi Android membuang berbagai hambatan untuk membangun aplikasi baru
yag
inovatif.
Misalnya,
seorang
pengembang
dapat
menggabungkan informasi dari WEB dengan data individu dari
16
ponsel.Misalnya
data
kontak,
kalender,
atau
lokasi
geografis.Sehingga memberikan informasi yang lebih relevan Dengan Android, pengembang juga dapat membangun aplikasi yang memungkinkan pengguna untuk melihat lokasi dan terkoneksi dengan teman-temannya. 4.
Pengembangan Aplikasi yang Cepat dan Mudah Android menyediakan akses ke berbagai libraries dan tools yang dapat digunakan untuk membangun aplikasi yang kaya.
2.8.1
Versi-versi Android
Berikut ini adalah versi-versi sistem operasi menurut Stephanus Hermawan dalam buku Mudah Membuat Aplikasi Android (2010:2). 2.8.1.1 Android.1.1(Bender) Pertama kali dirilis pada 9 Februari 2009. Versi Android kedua ini juga mengalami masalah
penamaan yang sama dengan versi pertamanya. Pada
awalnya Android ini akan diberi nama "Bender" akan tetapi karena alasan melanggar trademark, nama "Bender" tidak jadi disematkan pada versi Android ini.
Gambar 2.1 Android.1.1(Bender) 2.8.1.2 Android.1.5 (Cupcake) Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yangdapat disesuaikan dengan sistem. Dirilis 30 April 2009.
17
Gambar 2.2 android cupcake 2.8.1.3 Android 1.6 Donut Donut (versi 1.6) diluncurkan dalam tempo kurang dari 4 bulan semenjak peluncuran perdana Android Cupcake, yaitu pada bulan September 2009. Android versi Donut memiliki beberapa fitur yang lebih baik dibanding dengan pendahulunya, yakni mampu menayangkan indikator baterai pada ponsel, pengguna dapat memilih dan menentukan file yang akan dihapus, zoom-in zoomout gambar dengan membaca gerakan serta arah gerakan tangan (gesture), penggunaan koneksi CDMA/EVDO, dan lain sebagainya.
Gambar 2.3 android donutAndroid
2.8.1.4 Android versi 2.0/2.1 Eclair Android ini diluncurkan pada 26 Oktober 2009. Dilakukan perubahan, yaitu pengoptimalan hardware, perubahan User Interface (UI) dengan browser
18
baru dan dukungan HTML5, daftar kontak yang baru, peningkatan Google Maps 3.1.2, dukungan flash untuk kamera 3,2 MP, digital Zoom, Bluetooth 2.1.
Gambar 2.4 android Éclair 2.8.1.5 Android versi 2.2 Froyo: Frozen Yoghurt Pada 20 Mei 2010 kembali diluncurkan ponsel android dengan versi 2.2 (Froyo) perubahan yang dilakukan meliputi optimasi kecepatan, memori, dan kinerja sistem operasi secara keseluruhan, dukungan untuk menginstall aplikasi pada memori eksternal, dukungan Adobe Flash 10.1 serta fungsi USB tethering maupun Wi-Fi hotspot.
Gambar 2.5 android froyo
2.8.1.6 Android versi 2.3 Gingerbread
19
7 bulan kemudian Android kembali melakukan gebrakan dengan merilis kembali Android versi 2.3 atau yang dikenal sebagai Android Gingerbread. dari segi tampilan Gingerbread jauh lebih atraktif dan sudah mampu mendukung fitur dual kamera untuk melakukan video call. Bukan hanya itu saja, Android Gingerbread juga mulai mengkonsentrasikan kepada kemampuan untuk meningkatkan mutu aplikasi-aplikasi permainan berbasis mobile android.
Gambar 2.6 android gingerbread
2.8.1.7 Android versi 3.0/3.1 Honeycomb Versi ini berbeda dengan versi-versi sebelumnya. Versi ini dirancang khusus untuk PC Tablet sehingga memiliki User Interface ysng berbeda dan mendukung ukuran layar yang lebih besar. Selain itu, pada versi ini memungkinkan penggunaan multiprosesor dan akselerasi perangkat keras untuk grafis. SDK versi pertama diluncurkan Februari 2011.
Gambar 2.7 android honey
20
2.8.1.8 Android versi 4.0 ICS: Ice Cream Sandwich Android ICS atau Ice Cream Sandwich juga dirilis pada tahun yang sama dengan Honeycomb, yaitu pada bulan Oktober 2011. Begitu banyak fitur-fitur terbaru yang disematkan pada sistem operasi ini, antara lain yaitu fitur yang memaksimalkan fotografi, grafis dan resolusi gambar, kualitas video, sistem pengenal wajah dan masih banyak lagi lainnya.
Gambar 2.8 android ics:ice cream sandwich 2.8.1.9 Android versi 4.1 Jelly Bean Android Jelly Bean merupakan versi Android yang terbaru pada saat ini. Salah satu gadget yang menggunakan sistem operasi Jelly Bean adalah Google Nexus 7 yang diprakarsai oleh ASUS, vendor asal Taiwan yang juga menjadi teman satu kampung halaman dengan Acer. Fitur terbaru dari sistem operasi Android Jelly Bean ini salah satunya adalah peningkatan kemampuan on-screen keyboard yang lebih cepat serta lebih responsif, dan beberapa fiture keren lainnya.
21
Gambar 2.9 android jelly bean 2.8.1.10 Android versi 4.3 (KitKat) Merupakan versi android selanjutnya yang akan dirilis oleh Google. Menggunakan jenis makanan penutup coklat sebagai lambing dari versi android tersebut.
Gambar 2.10 Android KitKat
2.8.2 Kelebihan dan Kekurangan Android Berikut ini adalah kelebihan dan kekurangan dari suatu sistem operasi Android menurut Anis Ramadhani (2013:6) :
Kelebihan Android: 1. Android bersifat open source. Dapat dikembangkan oleh siapa saja.
22
2. Mudahnya akses ke Android App Market. Dengan Android App Market ini, Anda dapat men-download berbagai aplikasi dengan gratis. 3. Sistem operasi yang meluas. Berkembangnya Android terbukti dengan banyaknya produsen juga dengan gadget andalan masing-masing HTC hingga Samsung. 4. Fasilitas USB. Anda bisa mengganti baterai, mass storage, disk drive, dan USB tethering. 5. Adanya layanan notifikasi. Memberitahukan anda tentang adanya SMS, e-mail, artikel terbaru daari RSS Reader, serta missed call. 6. Mendukung semua layanan Google.mendukung semua layanan dari Google mulai dari Gmail sampai Google Reader. 7. Pemasangan ROM termodifikasi. Terdapat banyak custom ROM yang bisa anda pakai di ponsel Android yang sudah termodifikasi. Kekurangan Android : 1. Memerlukan koneksi internet. Perlunya koneksi internet yang aktif agar perangkat siap untuk digunakan sesuai kebutuhan anda. 2. Lambatnya perusahaan perangkat dalam mengeluarkan versi resmi dari Android milik anda. Hal ini menyebabkan perangkat android anda tidak up-to-date. 3. Buruknya kontrol dalam hal mengelola Android Market. Terbukti dengan masih ditemukan adanya malware. 4. Sebagai penyedia layanan langsung. Hal ini menyebabkan sulit terhubung dengan pihak Google. 5. Iklan yang sering masuk.secara tampilan memang tidak mengganggu kinerja aplikasi itu sendiri tetapi apabila terlalul banyak akan sangat mengganggu tampilan itu sendiri.
2.8.3 Fitur dan Arsitektur Android Fitur yang tersedia pada Android adalah:
23
1. Framework aplikasi : memungkinkan penggunaan dan pemindahan dari komponen yang tersedia. 2. Dalvik virtual machine : virtual machine
yang dioptimalkan untuk
perangkat mobile 3. Grafik : grafik 2D dan grafik 3D yang didasarkan pada library OpenGL. 4. SQLite : untuk penyimpanan data. 5. Mendukung media : audio, video, dan berbagai format gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF). 6. GSM, Bluetooth, EDGE, 3G, and WiFi (tergantung hardware) 7. Camera, Global Positioning System (GPS), compass, dan accelerometer (tergantung hardware ) 8. Lingkungan pengembangan yang kaya, termasuk emulator, peralatan debugging, dan plugin untuk Eclipse IDE. 2.9 Java Java bermula dari proyek penelitian perusahaan Sun Microsystem dengan nama
dengan nama sandi Green pada tahun 1991. Selang beberapa waktu
kemudian, sudah ditemukan bahasa pemrograman dengan nama Oak. Akhirnya setelah beberapa pegawai Sun mengunjungi sebuah kedai kopi, nama bahasa pemrograman itu diganti dengan Java. Bahasa pemgrograman Java adalah bahasa yang digunakan untuk menghasilkan aplikasi – aplikasi Java. Pada umumnya, bahasa pemrograman hanya mendifinisikan sintaks dan perilaku bahasa. Saat ini Sun Microsystem membagi Java menjadi empat jenis edisi, yaitu : 1. Java Card : Teknologi Java yang digunakan pada peralatan elektronik yang memiliki memori sangat terbatas, misalnya smart card. 2. J2ME : Merupakan teknologi Java edisi mikro, digunakan untuk penerapan teknologi Java pada peralatan elektronik seperti Handphone dan PDA. 3. J2SE : Merupakan teknologi Java edisi standar, digunakan untuk penerapan teknologi Java pada komputer desktop.
24
4. J2EE : Merupakan teknologi Java edisi enterprise, digunakan untuk penerapan teknologi Java pada komputer server. (Rachmad Hakim S dan (Ir.Sutarto, M.Si : 2009: 1) 2.10 Eclipse Menurut Nasruddin Safaat H (2012:16) Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse: a) Multi – platform Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X. b) Multi – language Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. c) Multi – role Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota „Eclipse Foundation‟ (beserta individu-individu lain). Banyak nama besar yang ikut dalam 'Eclipse Foundation', termasuk IBM, BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya.
25
1. Intell IDEA (commercial, free 30 – day trial) 2. Oracle Jdeveloper ( free ) 3. Xinox Jcreator ( ada versi berbayar maupun free ) Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan oleh IBM pada tanggal 5 November 2001, yang menginvestasikan sebanyak US$ 40 juta untuk pengembangannya. Semenjak itu konsursium Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih lanjut dan pengaturan organisasinya. Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP: 1. Core platform 2. OSGi 3. SWAT (Standart Widget Toolkit) 4. JFace 5. Eclipse Workbench Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), Plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT (C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat Diagram UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in secara gratis seperti Eclipse downloads by project.
26
Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse secara
rutin dan simultan yang dikenal dengan nama Simultaneous Release.
Setiap versi peluncuran terdiri dari Eclipse Platform dan juga sejumlah proyek yang terlibat dalam proyek Eclipse. Tujuan dari sistem ini adalah untuk menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang terstandarisasi. Hal ini juga dimaksudkan untuk mempermudah Deployment dan maintenance untuk sistem enterprise, serta untuk kenyamanan. Peluncuran simultan dijadwalkan pada bulan Juni setiap tahunnya. 2.11
XAMPP (MySQL) XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem
operasi, merupakan kompilasi dari beberapa program. Fungsinya adalahsebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP server, MySQL database, dan penerjemahan bahasa yang ditulis dengan bahasa PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP, dan Perl.
Gambar 2.11 XAMPP Dalam pengimplementasiannya sistem ini akan menggunakan database MySQL. MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang
27
multithread, multi user, dengan sekitar 6 juta instalasi diseluruh dunia. MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public Lisence (GPL). 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 yaitu SQL (Structured Query Languange). (Aditya,2010) Bahasa SQL adalah bahasa tingkat tinggi, berorientasi pada group data, non prosedur untuk relational database. Disebut bahasa tingkat tinggi karena memakai bahasa inggris. Disebut orientasi pada group data (table) karena berbeda dengan bahasa lainyang hanya mempunyai kapabilitas record. Bersifat non prosedur karena memberikan apa yang hendak kita inginkan dari informasi, bukan berdasarkan dengan cara apa kita harus mengambil informasi. 2.12
Metode Waterfall
Menurut Rosa A.S-M.Shalahuddin (2011:27) Model waterfall adalah model klasik yang bersifat sistematis, berurutan dalam
membangun software.Nama
model ini sebenernya adalah”Linear Sequential Model”.Model ini sering disebut dengan “classic life cycle”atau model waterfall. Model ini melakukan pendekatan secara sistematis dan berurutan. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. 2.12.1 Fase Model Waterfall 1.
Analisa
2.
Desain
3.
Pengkodean
4.
Implementasi
5.
Pemeliharaan
28
Gambar 2.12 Metode Waterfall (Rosa A.S-M.Shalahuddin, 2011:27) 1. Analisa Seluruh kebutuhan aplikasi harus bisa didapatkan dalam fase ini, termasuk didalamnya kegunaan aplikasi yang diharapkan pengguna dan batasan aplikasi. Informasi ini biasanya dapat diperoleh melalui wawancara, survey atau diskusi. Informasi tersebut dianalisis untuk mendapatkan dokumentasi
kebutuhan
pengguna
untuk
digunakan
pada
tahap
selanjutnya. 2. Desain Tahap ini dilakukan sebelum melakukan coding. Tahap ini bertujuan untuk memberikan gambaran apa yang seharusnya dikerjakan dan bagaimana tampilannya. Tahap ini membantu dalam menspesifikasikan kebutuhan hardware dan sistem serta mendefinisikan arsitektur sistem secara keseluruhan. 3. Pengkodean Dalam tahap ini dilakukan pemrograman. Pembuatan aplikasi dipecah menjadi modul-modul kecil yang nantinya akan digabungkan dalam tahap berikutnya. Selain itu dalam tahap ini juga dilakukan pemeriksaaan terhadap modul yang dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum. 4. Implementasi Dalam tahap ini dilakukan pemrograman. Pembuatan aplikasi dipecah menjadi modul-modul kecil yang nantinya akan digabungkan dalam tahap berikutnya. Selain itu dalam tahap ini juga dilakukan pemeriksaaan terhadap modul yang dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum.
29
5. Pemeliharaan Ini merupakan tahap terakhir dalam model waterfall. Aplikasi yang sudah jadi dijalankan serta dilakukan pemeliharaan. Pemeliharaan termasuk dalam memperbaiki kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru. 2.13 UML (Unified Modeling Language) 2.13.1 Pengenalan UML Pada perkembangan teknologi perangkat lunak, diperlukan adanya bahasa yang
digunakan untuk memodelkan perangkat lunak yang akan dibuat dan perlu
adanya standarisasi agar orang di berbagai negara dapat mengerti pemodelan perangkat lunak. Banyak orang yang telah membuat bahasa pemodelan pembangunan perangkat lunak sesuai dengan teknologi pemrograman yang berkembang pada saat itu, misalnya yang sempat berkembang dan digunakan oleh banyak pihak adalah Data Flow Diagram (DFD) untuk memodelkan perangkat lunak yang menggunakan pemrograman prosedural atau struktural. Pada perkembangan teknik pemrograman berorientasi objek, muncullah sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunkan teknik pemrograman berorientasi objek, yaitu Unified Modeling Language (UML). UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung. UML hanya berfungsi untuk melakukan pemodelan. Jadi penggunaan UML tidak terbatas pada metodologi tertentu, meskipun pada kenyataannya UML paling banyak digunakan pada metodologi berorientasi objek (Rosa A.S-Shalahuddin, 2011:117). 2.13.2 Sejarah UML Pada tahun 1996, Object Management Group (OMG) mengajukan proposal agar adanya standarisasi pemodelan berorientasi objek dan pada bulan September 1997 UML diakomodasi oleh OMG sehingga sampai saat ini UML
30
telah memberikan kontribusinya yang cukup besar di dalam metodologi berorientasi objek dan hal-hal yang terkait di dalamnya. Secara fisik, UML adalah sekumpulan spesifikasi yang dikeluarkan oleh OMG. UML terbaru adalah UML 2.3 yang terdiri dari 4 macam spesifikasi, yaitu Diagram Interchange Specification, UML Infrastructure, UML Superstructure, dan Object Constraint Language (OCL). (Rosa A.S-Shalahuddin, 2011) 2.13.3 Diagram UML Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan dalam 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat pada gambar dibawah (Rosa A.S -Shalahuddin, 2011:120)
Gambar 2. 13 Diagram UML Berikut ini penjelasan singkat dari pembagian kategori tersebut: 1. Structure diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang dimodelkan. 2. Behaviour
yaitu
kumpulan
diagram
yang
digunakan
untuk
menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem.
31
3. Interaction diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi sistem dengan sistem lain maupun interaksi antar subsistem pada suatu sistem (Rosa A.S-Shalahuddin, 2011:121).
2.13.4 Use Case Diagram Use case atau diagram atau diagram use casemerupakan pemodelan untuk sistem informasi yang akan dibuat.Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Syarat penamaan use caseadalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case. 1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang. 2. Use case merupakan fungsionalitas yang disediakan sistem sebagai unitunit yang saling bertukar pesan antar unit atau aktor. (Alan denis, 2010). Tabel 2. 1 Simbol Use Case Diagram (Alan denis, 2010) Aktor adalah orang atau sistem yang berasal dari manfaat dan eksternal untuk subjek. 1. Digambarkan sebagai salah satu tongkat (default) atau jika aktor non-manusia yang terlibat, sebagai persegi panjang dengan aktor <<>> di dalamnya (alternatif). 2. label dengan perannya. 3. Dapat dikaitkan dengan aktor-aktor lain menggunakan
spesialisasi
/
asosiasi
superclass, dilambangkan dengan panah dengan panah berongga. 4. Ditempatkan di luar batas subjek.
32
Use Case: 1. Merupakan bagian utama dari fungsi sistem. 2. Dapat memperpanjang kasus penggunaan lain. 3. Dapat mencakup use case lain. 4. Apakah ditempatkan di dalam batas sistem. 5. Apakah label dengan frase kata kerja-kata benda deskriptif. Subject Boundary: 1. Termasuk nama subjek di dalam atau di atas. 2. Merupakan lingkup subjek, misalnya, sistem atau individu proses bisnis. association relationship: 1. Link aktor dengan use case (s) dengan yang berinteraksi. <
>: Merupakan dimasukkannya fungsi satu kasus penggunaan dalam yang lain. 1. Memiliki panah yang diambil dari kasus penggunaan dasar untuk kasus penggunaan digunakan. <<Extend>>: Merupakan penggunaan opsional.
perpanjangan untuk
dari
memasukkan
kasus perilaku
33
1. Memiliki panah yang diambil dari kasus penggunaan
ekstensi
untuk
kasus
penggunaan dasar. Generalization: Merupakan kasus penggunaan khusus ke yang lebih umum. 1. Memiliki panah yang diambil dari kasus penggunaan khusus untuk kasus penggunaan dasar.
Gambar 2.14 Use Case Diagram (Sommerville, 2011) 2.13.5 Activity Diagram Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut: 1. Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan. 2. Urutan atau pengelompokan tampilan dari sistem / user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan.
34
3. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya. 4. 4.Rancangan menu yang akan ditampilkan pada perangkat lunak. (Alan denis,2010) Table 2.2 Simbol – simbol Activity Diagram (Alan denis, 2010) SIMBOL
NAMA
KETERANGAN merupakan sebuah gambaran aktivitas
Activity
yang terjadi.
memisahkan
organisasi
bisnis
yang
bertanggung jawab terhadap aktifitas yang
Swimlane
terjadi.
merupakan
Initial Node
Actifity
tanda
awal
dari
sebuah
aktivitas. Final merupakan tanda berakhirnya sebuah
Node
aktivitas.
Decision Node
Pilihan untuk pengambilan keputusan
membawa Merge Node
kembali
jalur
bersama yang berbeda yang dibuat dengan menggunakan keputusan simpul
Control Flow
keputusan
Menunjukkan urutan eksekusi
35
Menunjukkan Object Flow
aliran
objek
dari
satu
kegiatan (atau tindakan) untuk kegiatan lain (atau tindakan)..
Gambar 2.15 Activity diagram (Sommerville, 2011) 2.13.6 Sequence Diagram Diagram sekuen menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambar diagram sekuen maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Banyaknya diagram sekuen yang harus digambar adalah minimal sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak. (Alan Denis, 2010).
Table 2.3 Simbol – simbol Sequence Diagram (Alan denis, 2010) SIMBOL
NAMA
KETERANGAN
36
orang atau sistem yang berasal dari manfaat Actor
dan eksternal ke sistem yang berpartisipasi secara berurutan dengan mengirim dan / atau menerima pesan
LifeLine
Menyatakan kehidupan suatu objek.
Execcution
Menyatakan objek dalam keadaan aktif dan
Occurrence
berinteraksi pesan.
Message
Message (return)
Message (return)
Pesan yang mengambarkan komunikasi yang terjadi antar objek. Pesan yang dikirim untuk diri sendiri secara langsung. Pesan yang dikirim untuk diri sendiri.
37
Gambar 2.16 Sequence diagram (Sommerville, 2011) 2.13.7 Class Diagram Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem sehingga pembuat perangkat lunak atau programmer dapat membuat kelas-kelas di dalam program perangkat lunak sesuai dengan perancangan diagram kelas. Susunan struktur kelas yang baik pada diagram kelas sebaknya memiliki jenis-jenis kelas berikut: a. kelas main Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan. b. Kelas yang menangani tampilan sistem (view) Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan. c. Kelas yang diambil dari pendefinisian use case (controller) Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian use case, kelas ini biasanya disebut dengan kelas proses yang menangani proses bisnis pada perangkat lunak. d. Kelas yang diambil dari pendefinisian data ( model ) Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data.
38
Semua tabel yang dibuat di basis data dapat dijadikan kelas, namun untuk tabel dari hasil relasi atau atribut mutivalue pada ERD dapat dijadikan kelas tersendiri dapat juga tidak asalkan pengaksesannya dapat dipertanggungjawabkan atau tetap ada di dalam perancangan. (Alan denis, 2010). Tabel 2. 4 Simbol Class Diagram (Alan denis, 2010) Simbol
Deskripsi
Kelas
Kelas pada struktur system nama_kelas +atribut +operasi()
Antarmuka / interface
Sama dengan konsep interface dalam pemrogrman berorientasi objek
nama_interface Asosiasi / association
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity.
Asosiasi berarah / directed association
Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity.
Generalisasi
Relasi antar kelas dengan makna generalisasi-spesialisasi khusus)
(umum
39
Kebergantungan / dependency
Relasi antar kelas dengan makna Kebergantungan antar kelas
Agregasi / aggregation
Relasi antar kelas dengan makna semua-bagian (whole-part)
Gambar 2.17 Class Diagram (Sommerville, 2011) 2.14
Testing Perangkat Lunak Testing adalah sebuah proses yang dijelaskan sebagai siklus hidup dan
merupakan bagian dari proses rekayasa perangkat lunak secara terintegrasi demi memastikan kualitas dari perangkat lunak serta memenuhi kebutuhan teknis yang telah disepakati dari awal”. (Rizky 2011, 237) 2.14.1 Pengujian Black Box Menurut (Soetam Rizky, 2011:264) “Black BoxTesting adalah tipe testing yang memperlakukan perangkat lunak yang tidak diketahui kinerja internalnya. Sehingga para tester memandang perangkat lunak seperti layaknya sebuah “kotak hitam” yang tidak penting dilihat isinya, tapi cukup dikenai proses testing di bagian luar. Beberapa keuntungan yang diperoleh dari jenis testing ini antara lain:
40
1. Anggota tim tester tidak harus dari seseorang yang memiliki kemampuan teknis di bidang pemorogram. 2. Keselahan dari perangkat lunak ataupun bug seringkali ditemukan oleh komponen tester yang berasal dari pengguna. 3. Hasil dari black box testing dapat memperjelas kontradiksi ataupun keracunan yang mungkin timbul dari eksekusi perangkat lunak. 4. Proses testing dapat dilakukan lebih cepat dibandingkan white box testing. Beberapa teknik testing yang tergolong dalam tipe ini antara lain : 1. Equivalence partitioning Pada teknik ini, tia inputan data dikelompokan ke dalam grup tertentu, yang kemudian dibandingkan outputnya. 2. Boundary Value Analysis Merupakan teknik yang sangat umun digunakan pada saat awal sebuah perangkat lunak selesai dikerjakan.Pada teknik ini, dilakukan inputan yang melebihi dari batasan sebuah data, jika perangkat lunak berhasil mengatasi inputan yang salah, maka dapat dikatakan teknik ini telah selesai dilakukan. 3. Cause Effect Graph Dalam teknik ini, dilakukan proses testing yang menghubungkan sebab dari sebuah inputan dan akibatnya pada output yang dihasilkan. 4. Random Date Selection Teknik berusaha melakukan proses inputan data yang menggunakan nilai acak.Dari hasil inputan tersebut kemudian dibuat sebuah tabel yang menyatakan validitas dari output yang dihasilkan. 5. Feature Test Pada teknik ini dilakukan proses testing terhadap spesifikasi dari perangkat lunak yang telah selesai dikerjakan.
41
2.14.2 Pengujian White Box Menurut (Soetam Rizky, 2011:264). “White Box Testing adalah jenis testing yang lebih berkonsentrasi terhadap “isi” dari perangkat lunak itu sendiri. Jenis lebih banyak berkonsentrasi kepada sourcecode dari perangkat lunakPrinsip dari keluaran tipe testing ini adalah : 1. Menjamin bahwa semua alur program yang indenpenden (dalam bentuk modul, form, prosedur, class dan lainnya) telah dites minimal satu kali. 2. Telah melakukan testing terhadap semua jenis percabangan dengan nilai true dan false. 3. Telah melakukan testing terhadap semua jenis perulangan dengan kondisinormal dan kondisi yang dianggap melampaui batas perulangan (umumnya kondisi yang melampaui batas harus diatasi oleh prosedur tertentu). 4. Telah melakukan testing terhadap struktur data internal (seperti variabel) agar terjaga validitasnya. Beberapa teknik yang terdapat dalam jenis white box testingadalah : 1. Decison (branch) coverage Testing ini terfokus pada hasil dari setiap skenariio yang dijalankan terhadap bagian perangkat lunak mengandung percabangan (if..then.. else). 2. Condition Coverage Teknik ini mirip dengan teknik yang pertama tetapi dijalankan terhadap percabangan yang dianggap kompleks atau percabangan majemuk, hal ini biasanya dilakukan jika dalam sebuah perangkat lunak memiliki banyak kondisi yang dijalankan dalam satu proses sekaligus. 3. Path Analysis Merupakan teknik testing yang berusaha menjalankan kondisi yang ada didalam perangkat lunak serta berusaha mengoreksi apakah kondisi yang dijalankan telah sesuai dengan alur diagram yang terdapat dalam proses peracangan.
42
4. Execution Time Pada teknik ini, perangkat lunak berusaha dijalankan kemudian dilakukan pengukuran waktu pada input masukan hingga output dikeluarkan. Waktu eksekusi yang dihasilkan kemudian dijadikan bahan evaluasi dan analisa lebih lanjut untuk melihat apakah perangkat lunak telah berjalan sesuai dengan kondisi yang dimaksudkan oleh tester. 5. Algorithm Analysis Teknik ini jarang dilakukan jika perangkat lunak yang dibuat berjenis sistem informasi. Sebab teknik ini membutuhkan kemampuan matematis yang cukup tinggi dari para tester, karena di dalamnya berusaha melakukan analisa terhadap algoritma yang diimplementasikan pada perangkat lunak tersebut.