BAB II LANDASAN TEORI
2.1 Aplikasi
Menurut Dhanta (2009: 32) aplikasi (aplication) adalah software yang dibuat oleh suatu perusahaan komputer untuk mengerjakan tugas - tugas tentunya, misalnya Microsoft word, Microsoft Excel. Sedangkan menurut Anisyah (2000: 30), aplikasi adalah penerapan, penggunaan atau penambahan. Dari pengertian diatas, dapat disimpulkan bahwa aplikasi merupakan software yang berfungsi untuk melakukan berbagai bentuk pekerjaan atau tugas – tugas tertentu seperti penerapan, penggunaan dan penambahan data. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Sering kali, mereka memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapat dibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah.
2.2 Pengaduan Pengaduan dalam KUHAP diartikan sebagai pemberitahuan yang disertai permintaan oleh pihak yang berkepentingan kepada pihak yang berkepentingan kepada pejabat yang berwenang untuk menindak menurut hukum seseorang yang telah melakukan tindak pidana aduan yang merugikannya. Sedangkan laporan adalah pemberitahuan yang disampaikan oleh seseorang karena hak dan kewajibannya
http://digilib.mercubuana.ac.id/
berdasarkan undang-undang kepada pejabat yang berwenang tentang telah atau sedang atau diduga akan terjadi tindak pidana. Pengertian pengaduan adalah permintaan oleh pihak yang berkepentingan kepada pejabat yang berwenang, untuk menindak menurut hukum dan perundangundangan seseorang yang telah melakukan tindakan yang merugikannya. Dari pengertian tersebut, pengadu/pelapor adalah orang yang berkepentingan dengan obyek yang diadukan, memiliki kedudukan hukum, dan/atau sebagai korban yang dirugikan oleh pejabat yang melakukan perbuatan melawan hukum.
2.3 Fasilitas
Fasilitas adalah sarana untuk melancarkan dan memudahkan pelaksanaan fungsi. Fasilitas merupakan komponen individual dari penawaran yang mudah ditumbuhkan atau dikurangi tanpa mengubah kualitas dan model jasa. Fasilitas juga merupakan alat untuk membedakan program lembaga pendidikan yang satu dari pesaing yang lainnya ( Lupiyaodi, 2006 : 150 ). Menurut Suptandar (1995) disebutkan bahwa ruang teori sebagai tempat interaksi antara dosen dan mahasiswa perlu dirancang sedemikian rupa sehingga tidak sekedar memenuhi fungsi, namun juga mampu memberikan perlindungan, kenyamanan dan rasa senang bagi penghuninya (dalam Tri Maryanto Putro: 2009).
http://digilib.mercubuana.ac.id/
2.4 Android
2.4.1 Pengenalan Android
Android dalam buku karya Andry (2011) adalah sistem operasi untuk telepon seluler yang merupakan hasil modifikasi Linux. Sejauh ini Android termasuk sistem operasi yang cepat sekali memperbarui software mereka. Android menyediakan kesempatan terbuka bagi para pengembang (developer) untuk menciptakan aplikasi kreasi sendiri untuk ditanamkan pada sistem operasi ini.
Gambar 2.1 Gambar Struktur Android
http://digilib.mercubuana.ac.id/
Gambar 2.2 Siklus Activity Android Awalnya,
Google
Inc.
membeli
perusahaan
Android
Inc.,
perusahaan start up yang saat itu tengah fokus membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat konferensi perdana terkait Android, 5 November 2007, Android
bersama
Open
Handset
Alliance
menyatakan
mendukung pengembangan standar terbuka pada perangkat seluler . Di lain pihak, Google merilis kode – kode Android di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuhdari Google atau Google Mail Services (GMS) dan kedua adalah yang benar – benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).
http://digilib.mercubuana.ac.id/
2.4.2 Sejarah Android
Dalam bukunya, Andry menjelaskan Android pada mulanya perusahaan kecil yang berada di Palo Alto. Pada Juli 2000, Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri Android Inc. Bekerja pada Google, di antaranya Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google hendakmemasuki pasar telepon seluler.Di perusahaan
Google, tim
yang
dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google mulai melirik untuk terjun dalam persaingan pasar telepon seluler. Perkembangan Android terbagi menjadi beberapa versi hingga saat ini. Beberapa versi Androidtersebut antara lain : 1. Android versi 1.1 Google merilis Android versi 1.1, pada 9 Maret 2009. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, pencarian suara,
pengiriman
pesan dengan
gmail,
dan pemberitahuan email. 2. Android versi 1.5 (Cupcake) Google merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) pada pertengahan Mei 2009, yaitu versi 1.5 (Cupcake). Pada versi ini ada beberapa tambahan dan pembaruan fitur yaitu kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon,
http://digilib.mercubuana.ac.id/
dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem. 3. Android versi 1.6 (Donut) Google merilis Donut (versi 1.6) pada September dengan menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet V PN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus; kamera, camcorder dan galeri yang dintegrasikan; CDMA/ EVDO, 802.1x, VPN, Gestures, dan Text-to-speech engine; kemampuan dial kontak; teknologi text to change speech (tidak tersedia pada semua ponsel; pengadaan resolusi VWGA. 4. Android versi 2.0/2.1 (Eclair) Pada 3 Desember 2009 kembali diluncurkan ponsel Android dengan versi 2.0/2.1 (Eclair), perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML 5, daftar kontak yang baru, support kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1. 5. Android versi 2.2 (Froyo: Frozen Yoghurt) Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahan-perubahan
umumnya
terhadap
versi-versi
sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, intergrasi V8 JavaScript engine yang dipakai Google Chrome yang mempercepat
kemampuan
http://digilib.mercubuana.ac.id/
rendering pada
browser,
pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspo t portabel, dan kemampuan auto update dalam aplikasi Android Market. 6. Android versi 2.3 (Gingerbread) Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari Android versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy paste, layar antarmuka (User Interface) didesain ulang, dukungan format video VP8 dan WebM, efek audio baru (reverb,equalization, headphone
virtualization,
dan
bass
boost ),
dukungan
kemampuan Near Field Communication (NFC), dan dukungan jumlah kamera yang lebih dari satu. 7. Android versi 3.0/3.1 (Honeycomb) Android Honeycomb dirancang khusus untuk tablet Android versi ini mendukung ukuran layar yang lebih besar. User interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb juga mendukung multi prosesor dan juga
akselerasi perangkat keras (hardware) untuk grafis.
Tablet pertama yang dibuat dengan menjalankan Honeycomb adalah Motorola Xoom. Perangkat tablet dengan platform Android 3.0 akan segera hadir di Indonesia. Perangkat tersebut bernama Eee Pad Transformer produksi dari Asus. Rencana masuk pasar Indonesia pada Mei 2011. 8. Android versi 4.0 (ICS :Ice Cream Sandwich) Diumumkan pada tanggal 19 Oktober 2011, membawa fitur Honeycomb untuk smartphone dan menambahkan fitur
http://digilib.mercubuana.ac.id/
baru termasuk membuka kunci dengan pengenalan wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu kontak jaringan sosial, perangkattambahan fotografi, mencari email secara offline, dan berbagi informasidengan menggunakan NFC. 9. Android versi 4.4 (Kitkat) 10. Android versi 5.0 (Lollipop) 11. Android versi 6.0 (Marshmallow) 12. Android versi 7.0 (Nougat)
2.5 PHP
PHP: Hypertext Preprocessor adalah bahasa skrip yang dapat ditanamkan atau disisipkan ke dalam HTML. PHP banyak dipakai untuk memprogram situs web dinamis. PHP dapat digunakan untuk memprogram situs web dinamis. PHP dapat digunakan untuk membangun sebuah CMS. Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama Form Interpreted (FI), yang wujudnya berupa sekumpulan skrip yang digunakan untuk mengelolah data formulir dari web. Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI. Dengan perilisan kode sumber ini menjadi sumber terbuka, maka banyak pemrograman yang tertarik untuk ikut mengembangkan PHP.
http://digilib.mercubuana.ac.id/
Pada November 1997, dirilis PHP/FI 2.0. pada rilis ini, interpreter PHP sudah diimplementasikan dalam program C. dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan. Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 1998, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai PHP 3.0 dan singkatan PHP diubah menjadi akronim berulang PHP: Hypertext Preprocessing. Pada pertengahan tahun 1999, Zend merilis interpreter dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interoreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigm berorientasi objek. PHP memiliki 8 (delapan) tipe data yaitu: 1. Integer 2. Double 3. Boolean 4. String 5. Object 6. Array 7. Null 8. Nill 9. Resource Beberapa kelebihan PHP dari bahasa pemrograman web, antara lain:
http://digilib.mercubuana.ac.id/
1. ‘Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya.’ 2. ‘Web Server yang mendukung PHP dapat ditemukan dimana-mana dari mulai apache, IIS, Lighttpad, hingga Xitami 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 memiliki refrensi yang banyak.’ 5. ‘PHP adalah bahasa open source yang dapat digunakan diberbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system.’
2.6 MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa inggris: database management system) atau DBMS yang multithread, multiuser, dengan sekitar 6 juta instalasi diseluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasuskasus dimana penggunanya tidak cocok dengan penggunaan GPL. Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan dengan komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hamper atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael “Monty” Widenius.
http://digilib.mercubuana.ac.id/
MySQL adalah sebuah implementasi dari sistem manajemen basisdata (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL. Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah konsep pengoprasian basisdata, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses printah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai pelayan basis data, MySQL mendukung operasi basisdata transaksional maupun operasi nontransaksional, MySQL dapat dikatakan unggul dalam hal unjuk kerja dibandingkan perangkat lunak pelayan basisdata competitor lainya. Namun demikian pada modus non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasi web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.
2.7 AJAX (Asynchronous JavaScript & XML)
AJAX diperkenalkan pertama kali pada tahun 2005 oleh Jesse Garret dari Adaptive Path. Aplikasi AJAX adalah aplikasi yang bekerja secara asynchronously, yakni dalam proses pengiriman dan penerimaan data dari user ke server tidak perlu mereload kembali seluruh halama, melainkan hanya melakukan penggantian pada bagian
http://digilib.mercubuana.ac.id/
web yang hendak diubah. Dalam penggunaanya, AJAX menggunakan obyek XMLHttpRequest. Adapun keuntungan menggunakan AJAX dalam pengembangan web site sebagai berikut : 1. High Interactivity, aplikasi AJAX lebih interaktif dibandingkan aplikasi konvensional. 2. High Usability, update data tidak me-reload keseluruhan halaman. 3. High Speed, aplikasi AJAX lebih cepat dibandingkan dengan aplikasi web konvensional. Cara membuat obyek XMLHttpRequest yang merupakan penerapan AJAX antara browser Internet Explorer dengan lainnya berbeda.
Untuk browser Internet Explorer pembuatan XMLHttpRequest dengan cara var xmlhttp=new ActiveXObject(―Microsof.XMLHTTP‖).
Untuk browser Mozilla, Safari, Chrome pembuatan XMLHttpRequest dengan cara var xmlhttp=new XMLHttpRequest();
Obyek XMLHttpRequest memiliki properti sebagai berikut :
Onreadystatechange, untuk menangani even yang bekerja setiap kali status berubah.
Readystate, untuk mengembalikan status obyek.
ResponseText, untuk mengembalikan response dalam bentuk string.
http://digilib.mercubuana.ac.id/
2.8 XAMPP
XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan halaman web yang dinamis. 2.9 SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC) SDLC menurut Alan Dennis (2009:2), adalah proses dalam memahami bagaimana suatu sistem informasi dapat mendukung kebutuhan bisnis, menggambarkan sistem, membangunnya dan menyerahkannya kepada pengguna. Tahapan-tahapan yang ada pada SDLC menurut Dennis adalah sebagai berikut : 1. Planning Fase perencanaan adalah proses fundamental dalam memahami kenapa suatu sistem informasi harus dibangun dan menentukan bagaimana timproyek akan menuju pembangunannya. Fase ini memiliki duan langkah : a. Pada saat inisiasi proyek, nilai bisnis dari sistem terhadap organisasi diidentifikasi. Pada fase ini dibuatlah analisis kelayakan yang menentukan aspek kunci dari proyek yang diajukan. b. Ketika proyek disetujui, akan memasuki proses manajemen proyek. Deliverable dari manajemen proyek adalah project plan.
http://digilib.mercubuana.ac.id/
2. Analysis Fase analysis menjawab pertanyaan tentang siapa yang akan mengguakan sistem, apa yang akan dilakukan sistem, serta kapan dan dimana sistem akan digunakan. Terdapat tiga tahap : a. Startegi analisis, biasanya terdiri dari analisis sistem berjalan (as-is system) beserta permasalahannya dan sistem baru yang akan dikembangkan (to-be system). b. Pengumpulan kebutuhan, pengumpulan daftar kebutuhan yang dilakukan untuk mengembangkan konsep sistem yang baru yang akan digunakan sebagai landasan untuk mengembangkan sebuah set dari model-model analisis bisnis yang menggambarkan bagaimana bisnis akan beroperasi jika sistem baru dikembangkan. c. Proposal sistem, merupakan kompbinasi dari analisis, konsep sistem, dan model yang dipresentasikan kepada sponsor proyek dan pengambil keputusan kunci lainnya yang memutuskan apakah proyek harus dilanjutkan. Proposal sistem merupakan penyampaian awal yang menggambarkan bagaimana sistem yang baru dapat memenuhi kebutuhan bisnis. 3. Design Fase design memutuskan bagaimana sistem akan beroperasi dalam hal perangkat keras, lunak, dan infrastruktur jaringan; antarmuka pengguna, formulir, dan laporan – laporan; spesifikasi program, basis data, yang akan dibutuhkan. Fase design terdiri dari empat langkah:
http://digilib.mercubuana.ac.id/
a. Strategi design harus dikembangkan. Langkah ini mengklarifikasi apakah sistem akan dikembangkan oleh programmer perusahaan, outsource, ataukah akan membeli paket software yang sudah ada. b. Langkah ini mengarah kepada pengembangan design arsitektur dasar untuk sistem yang menggambarkan perangkat keras, perangkat lunak, dan infrastruktur jaringan yang akan digunakan. c. Basis data dan spesifikasi file yang dikembangkan. Langkah ini mendefinisikan secara tepat data apa yang akan disimpan dan dimana data tersebut disimpan. d. Tim analis mengembangkan desain program, yang mendefinisikan program - program yang perlu ditulis dan apa yang akan dikerjakan program secara tepat. Hasil yang disampaikan pada fase ini adalah desain arsitektur, desain antarmuka, basis data, spesifikasi file, dan desain program. 4. Implementation Merupakan fase terakhir dalam SDLC adalah fase implemntasi. Pada fase inilah sistem benar – benar dibangun (atau dibeli pada kasus menggunakan desain paket program). Fase ini memiliki tiga langkah : a. Pembangunan sistem, sistem dibangun dan diuji untuk memastikan bahwa sistem mengerjakan sesuai rancangan. b. Instalasi sistem, instalasi merupakan proses dimana sistem yang lama dimatikan dan sistembaru dinyalakan. Pada proses ini terjadi konversi sistem lama ke sistem baru dengan menggunakan beberapa metode yaitu :
http://digilib.mercubuana.ac.id/
1) Direct cutover 2) Parallel 3) Phased Salah satu aspek yang paling penting pada konversi adalh pengembangan dari rencana pelatihan untuk mengajarkan pengguna cara menggunakan sistem baru dan membantu mengatur perubahan yang disebabkan oleh pergantian sistem. c. Tim analis menetapkan rencana dukungan sistem. Rencana ini biasanya menyertakan sebuah kajian pasca implementasi formal dan informal, serta cara yang sistematis untuk mengidentifikasi perubahan besar dan kecil yang dibutuhkan sistem.
2.9.1 Metode Waterfall
Alan dennis (2009:8) menyatakan bahwa, metode waterfall merupakan desain terstruktur asli yang masih digunakan hingga saat ini. Dengan metode pengembangan waterfall analis dan pengguna beralih secara berurutan dari satu fase ke fase berikutnya.
http://digilib.mercubuana.ac.id/
Gambar 2.3 Alur Metode Waterfall
Dua buah keuntungan kunci dalam metode ini adalah metode ini mendfinisikan kebutuhan jauh sebelum pemrograman dimulai dan meminimalisir perubahan selama proyek berlangsung. 2.9.2 Metodologi Pengujian
Pengujian perangkat lunak adalah proses menjalankan dan mengevaluasi sebuah perangkat lunak secara manual maupun otomatis untuk mencari kesalahan dan menguji apakah perangkat lunak sudah memenuhi kualitas persyaratan atau belum dan juga untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil yang sebenarnya.
2.9.3 Metode Black Box
“Black Box Testing adalah tipe testing yang memperlakukan perangkat lunak yang tidak diketahui kinerja internalnya. Sehingga para tester memandang perangkat
http://digilib.mercubuana.ac.id/
lunak seperti layaknya sebuah “kotak hitam” yang tidak penting dilihat isinya, tapi cukup dikenai proses testing di bagian luar”(Soetam Rizky, 2011:264). Beberapa keuntungan yang diperoleh dari jenis testing ini antara lain: 1.
Anggota tim tester tidak harus dari seseorang yang memiliki kemampuan teknis di bidang pemrograman.
2.
Kesalahan 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 sebuah 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 Data 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.
http://digilib.mercubuana.ac.id/
5. Feature Test Pada teknik ini dilakukan proses testing terhadap spesifikasi dari perangkat lunak yang telah selesai dikerjakan. 2.9.4 Metode White Box
“White Box Testing adalah jenis testing yang lebih berkonsentrasi terhadap “isi” dari perangkat lunak itu sendiri. Jenis lebih banyak berkonsentrasi kepada sourcecode dari perangkat lunak yang dibuat” (Soetam Rizky, 2011:264).
2.10 Unified Modeling Language (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, munculah sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunakan 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
http://digilib.mercubuana.ac.id/
digunakan pada metodologi berorientasi objek.(Shalahuddin, Rekayasa Perangkat Lunak, 2011). Tabel 2.1 Jenis Diagram UML No
Diagram
Kegunaan
1
Activity
Behaviour, procedural dan parallel
2
Class
Class, fitur, dan hubungan-hubungan
3
Communication
Interaksi antar objek; penekanan pada jalur
4
Component
Struktur dan koneksi komponen
5
Composite structure
Dekomposisi runtime sebuah class
6
Deployment
Pemindahan artifak ke node
7
Interaction overview
Campuran sequence dan activity diagram
8
Object
Contoh konfigurasi dari contoh-contoh
9
Package
Struktur hirarki compile-time
10
Sequence
Interaksi antar objek; penekanan pada sequence
11
State machine
Bagaimana even mengubah objek selama aktif
12
Timing
Interaksi antar objek; penekanan pada timing
http://digilib.mercubuana.ac.id/
Use case
13
Bagaimana pengguna berinteraksi dengan sebuah sistem
2.10.1 Use Case Diagram “A use case is a formal way of representing the way in which a business system interacts with its environment. It illustrates the activities performed by the users of the system. As such, use-case modeling is often thought of as an external or functional view of a business process in that it shows how the users view the process, rather than the internal mechanisms by which the process and supporting systems operate. Like activity diagrams, use cases can document the current system (i.e., as-is system) or the new system being developed (i.e., tobe system).” (Alan Dennis, 2012). Sebuah use case adalah cara formal mewakili cara di mana sistem bisnis berinteraksi dengan lingkungannya. Ini menggambarkan kegiatan yang dilakukan oleh para pengguna sistem. Sebagai seperti, pemodelan use case sering dianggap sebagai pandangan eksternal atau fungsional bisnis proses dalam bahwa hal itu menunjukkan bagaimana pengguna melihat proses, bukan mekanisme internal dimana proses dan sistem pendukung beroperasi. Seperti diagram aktivitas , penggunaan kasus dapat mendokumentasikan sistem saat ini (yaitu , as- adalah sistem ) atau sistem baru yang dikembangkan.(Alan Dennis, 2012). Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case
Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sisstem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang.
http://digilib.mercubuana.ac.id/
Use case merupakan fungsionalitas yang disediakan sistem sebagai unitunit yang saling bertukar pesan antar unit atau aktor.
Berikut adalah simbol-simbol yang ada pada diagram use case : Tabel 2.2 Simbol Use Case (Alan Dennis, 2012) Simbol
Nama Simbol Actor/Role
Keterangan “a person or system that derives benefit from and is external to the subject.” Seseorang atau sesuatu yang berinteraksi dengan sistem.
Use Case
“Represents a major piece of system functionality.”
Menggambarkan bagaimana seseorang akan menggunakan sistem. Subject
“Represents the scope of the subject, e.g., a system or an individual business process”. Merupakan lingkup subjek , misalnya , sistem atau individu proses bisnis
Association
“Links an actor with the use case(s) with
Relationship
which it interacts.” Untuk
mendokumentasikan
logika dalam setiap Use Case.
http://digilib.mercubuana.ac.id/
aliran-aliran
Extends
“Represents the extension of the use case to include optional behavior.” Memungkinkan suatu Use Case memiliki kemungkinan
memperluas
fungsionalitas
yang disediakan oleh use case lainnya Include
“Represents the inclusion of the functionality of one use case within another.” Include memungkinkan Use Case untuk menggunakan fungsional yang di sediakan oleh Use Case lainnya
Generalisasi
“Represents a specialized use case to a more generalized one.”
Digunakan untuk memperlihatkan bahwa beberapa aktor atau usecase memiliki sesuatu yang bersifat umum.
http://digilib.mercubuana.ac.id/
Gambar 2.4 Contoh Use Case Diagram (Alan Dennis, 2012)
2.10.2 Sequence Diagram
“Sequence diagrams are one of two types of interaction diagrams. They illustrate the objects that participate in a use case and the messages that pass between them over time for one use case. A sequence diagram is a dynamic model that shows the explicit sequence of messages that are passed between objects in a defined interaction. Because sequence diagrams emphasize the time-based ordering of the activity that takes place among a set of objects, they
http://digilib.mercubuana.ac.id/
are very helpful for understanding real-time specifications and complex use cases.”(Alan Dennis, 2012). Sequence diagram adalah salah satu dari dua jenis diagram interaksi. Mereka menggambarkan benda-benda yang berpartisipasi dalam kasus penggunaan dan pesan yang melewati antara mereka dari waktu ke waktu untuk satu use case. Sebuah diagram sequence adalah model dinamis yang menunjukkan urutan eksplisit pesan yang lewat di antara objek dalam interaksi didefinisikan. karena urutan diagram menekankan pemesanan berbasis waktu kegiatan yang terjadi di antara set benda, mereka sangat membantu untuk memahami spesifikasi real-time dan kompleks menggunakan kasus.
Tabel 2.3 Simbol Sequence Diagram (Alan Dennis, 2012) Simbol
Nama Simbol
Keterangan “Is a person or system that derives benefit from and is external to the system.”
Actor
orang atau sistem yang berasal dari manfaat dan eksternal ke sistem yang berpartisipasi secara berurutan dengan mengirim dan / atau menerima pesan
“Participates in a sequence by sending and/or receiving messages.”
anObject : a Class
Object
Berpartisipasi secara berurutan dengan mengirim dan / atau menerima pesan yang ditempatkan diatas diagram
http://digilib.mercubuana.ac.id/
“Is a long narrow rectangle placed atop a Execcution
lifeline.”
Occurence
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan. “Conveys information from one object to another
Message
one.” Pesan yang mengambarkan komunikasi yang terjadi antar objek. “Returned the message when an actor send the
Message
message.”
(return)
Pesan yang dikirim untuk diri sendiri secara langsung.
Lifeline
Message (return)
“Denotes the life of an object during a sequence.” Menyatakan kehidupan suatu objek. “a return is labeled with the value being returned and shown as a dashed arrow.” Pesan yang dikirim untuk diri sendiri.
http://digilib.mercubuana.ac.id/
Gambar 2.5 Contoh Sequence Diagram (Alan Dennis, 2012)
2.10.3 Activity Diagram
“Activity diagrams are used to model the behavior in a business process independent ofobjects. In many ways, activity diagrams can be viewed as sophisticated data flow diagrams that are used in conjunction with structured analysis.However, unlike data flow diagrams, activity diagrams include notation that addresses the modeling of parallel, concurrent activities and complex decision processes”.(Alan Dennis, 2012). Digunakan untuk model perilaku dalam independen proses bisnis benda. Dalam banyak hal, diagram aktivitas dapat dipandang sebagai diagram aliran data yang canggih yang digunakan dalam hubungannya dengan analysis terstruktur.Namun, tidak seperti aliran data diagram, diagram aktivitas
http://digilib.mercubuana.ac.id/
termasuk notasi yang membahas pemodelan paralel, kegiatan bersamaan dan proses.(Alan Dennis, 2012) 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:
Rancangan proses bisnis dimana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan
Urutan atau pengelompokan tampilan dari sistem / user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan
Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya
Rancangan menu yang akan ditampilkan pada perangkat lunak
Berikut adalah simbol-simbol yang ada pada Activity Diagram Tabel 2.4 Simbol Pada Activity Diagram (Alan Dennis, 2012) Simbol
Nama Simbol
Keterangan
Initial Node
“Is used to represent a set of actions.” merupakan tanda awal dari sebuah aktivitas.
Final-Activity
“Is used to stop all control flows and
Node
object flows in an activity (or action).” merupakan tanda berakhirnya sebuah aktivitas.
Activity
“Is used to represent a set of actions.”
http://digilib.mercubuana.ac.id/
merupakan sebuah gambaran aktivitas yang terjadi. Decision Node
“Is used to represent a test condition to ensure that the control flow or object
(Decission Criteria)
flow only goes down one path.”
(Decission Criteria)
Pilihan untuk pengambilan keputusan Merge Node
“Is used to represent a test condition to ensure that the control flow or object flow only goes down one path.” membawa kembali jalur keputusan bersama yang berbeda yang dibuat dengan menggunakan keputusan simpul
Swimlane Name
Swimlane
“Separate business organization that is responsible for the activity that occurs.” memisahkan organisasi bisnis yang bertanggung jawab terhadap aktifitas yang terjadi.
Control Flow
“Shows the sequence of execution.” Menunjukkan urutan eksekusi
http://digilib.mercubuana.ac.id/
Object Flow
“Shows the flow of an object from one activity (or action) to another activity (or action).” Menunjukkan aliran objek dari satu kegiatan (atau tindakan) untuk kegiatan lain (atau tindakan).
Gambar 2.6 Contoh Activity Diagram (Alan dennis, 2012)
http://digilib.mercubuana.ac.id/
2.10.4 Class Diagram
“A class diagram is a static model that shows the classes and the relationships among classesthat remain constant in the system over time. The class diagram depicts classes, which include both behaviors and states, with the relationships between the classes. The following sections first present the elements of the class diagram, followed by the way in which a class diagram is drawn.” (Alan Dennis, 2012). Sebuah diagram kelas adalah model statis yang menunjukkan kelas dan hubungan antar kelas yang tetap konstan dalam sistem dari waktu ke waktu. Diagram kelas menggambarkan kelas, yang mencakup baik perilaku dan negara, dengan hubungan antara kelas. Berikut bagian pertama menyajikan unsur-unsur dari diagram kelas, diikuti dengan cara di mana diagram kelas ditarik.(Alan Dennis, 2012) Berikut simbol-simbol yang ada pada diagram kelas: Tabel 2.5 Simbol Class Diagram (Alan Dennis, 2012) Simbol
Nama Simbol
Keterangan “Represents a kind of person, place, or thing aboutwhich the system will need to capture and
Class
store information” Kelas pada struktur sistem.
attribute name /derived attribute name
Attribute
“Represents properties that describe the state of an object.”
http://digilib.mercubuana.ac.id/
Memiliki daftar atribut dalam kompartemen tengahnya . “Represents the actions or functions that a class can perform.” operation name ()
Operation
menunjukkan operasi yang tersedia untuk sebuah kelas
Aggregation
“Represents a logical a-part-of relationship between multiple classes or a class and itself. “
menggambarkan suatu class terdiri dari class lain atau suatu class adalah bagian dari class lain. “Represents a-kind-of relationship between multiple classes. “ Generalization
Generalization merupakan sebuah taxonomic relationship antara class yang lebih umum dengan class yang lebih khusus.
Association 1, 1…*, 0…1
“Represents a relationship between multiple classes or a class and itself. “ Asosiasi yang menghubungkan classdengan class Multiplycity.
http://digilib.mercubuana.ac.id/
Gambar 2.7 Contoh Class Diagram (Alan Dennis, 2012)
2.11 Android Studio Android Studio adalah sebuah Integrated Development Environment (IDE) untuk mengembangkan aplikasi pada platform Android. Android Studio diumumkan pada 16 Mei 2013 pada konferensi Google I/O oleh Product Manager Google, Ellie Powers. Android Studio tersedia secara bebas di bawah Apache License 2.0. Android Studio berada di awal tahap akses preview mulai dari versi 0.1 pada Mei 2013, kemudian memasuki tahap beta mulai dari versi 0.8 yang dirilis pada Bulan Juni 2014. Android Studio dengan kemampuan yang stabil dirilis pada Bulan Desember 2014, mulai dari versi 1.0. Android Studio tersedia untuk diunduh pada Windows, Mac OS X dan Linux.
http://digilib.mercubuana.ac.id/
Gambar 2.8 Tampilan Android Studio
2.12 Sublime Text 3
Sublime Text adalah aplikasi text editor yang digunakan untuk membuka file apapun namun sejatinya para programmer menggunakannya untuk menulis code. Sublime text mendukung sejumlah bahasa pemrograman diantaranya C, C++, C#, PHP, CSS, HTML, ASP dan banyak lagi.
Gambar 2.9 Tampilan Sublime Text 3
http://digilib.mercubuana.ac.id/