9
BAB II LANDASAN TEORI
2.1
Aplikasi
Aplikasi merupakan 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. 2.1.1
Pengertian Aplikasi Menurut Para Ahli
Terdapat beberapa teori yang mendefinisikan Aplikasi yang dikemukakan oleh beberapa para ahli, diantaranya adalah : 1. Menurut Hengky W Pramana (2012) Aplikasi adalah satu unit perangkat lunak yang dibuat untuk melayani kebutuhan akan beberapa aktivitas seperti sistem perniagaan, game, pelayanan masyarakat, periklanan, atau semua proses yang hampir dilakukan manusia. 2. Menurut Shelly, Cashman, Vermaat (2009, p57) aplikasi adalah seperangkat intruksi khusus dalam komputer yang di rancang agar kita menyelesaikan tugas-tugas tertentu. 3. Menurut Yuhefizar (2012) Aplikasi merupakan program yang dikembangkan untuk memenuhi kebutuhan pengguna dalam menjalankan pekerjaan tertentu. Jadi, Aplikasi merupakan sebuah program yang di buat dalam sebuah perangkat lunak dengan komputer untuk memudahkan pekerjaan atau tugas-tugas tertentu seperti penerapan, penggunaan dan penambahan data yang dibutuhkan.
2.2
Informasi Informasi ibarat darah yang mengalir di dalam tubuh manusia, maksud dari kalimat
tersebut yaitu bahwa informasi sangat penting pada suatu organisasi. Informasi (information) dapat didefinisikan sebagai berikut:
9
http://digilib.mercubuana.ac.id/
10
1. Menurut Mustakini (2009:36), Informasi adalah data yang diolah menjadi bentuk yang berguna bagi pemakainya. 2. Menurut McLeod dalam Yakub (2012:8), Informasi adalah data yang diolah menjadi bentuk yang lebih berguna bagi penerimanya. Berdasarkan pendapat para ahli yang dikemukakan di atas dapat ditarik kesimpulan bahwa informasi adalah data yang sudah diolah menjadi sebuah bentuk yang berarti bagi pengguna, yang bermanfaat dalam pengambilan keputusan saat ini atau mendukung sumber informasi.
2.3 Android 2.3.1
Sejarah Android
Android adalah sebuah sistem operasi untuk perangkat mobile yang berbasis Linux yang mencakup sistem operasi, middleware dan aplikasi.Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka. Awalnya, Google Inc. membeli Android Inc. yang merupakan pendatang baru yang membuat peranti lunak untuk smartphone. 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. (Safaat, 2011). Pada saat peluncuran perdana 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 penuh dari 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). Android merupakan generasi baru platform mobile dan merupakan platform yang memberikan pengembang untuk melakukan sesuai dengan yang diharapkannya.Pengembang aplikasi Android diperbolehkan untuk mendistribusikan aplikasi mereka dibawah skema
http://digilib.mercubuana.ac.id/
11
lisensi apapun yang mereka inginkan.Pengembang memiliki beberapa pilihan ketika membuat aplikasi berbasis Android. Sebelumnya pengembang banyak menggunakan Eclipse yang tersedia secara bebas untuk merancang dan mengembangkan aplikasi Android. Eclipse adalah IDE yang paling popular untuk mengembangkan Android, karena memiliki Android Plug-in yang tersedia untuk memfasilitasi pengembangan Android.
2.3.2
Arsitektur Android
Arsitektur android terdiri dari: Applications, Application Framework, Libraries, Android Runtime dan Kernel Linux. Secara garis besar arsitektur Android dapat dijelaskan dan digambarkan sebagai berikut (Safaat, 2011): 1. Applications Application dan widgets ini adalah layer dimana berhubungan dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut, di layer inilah terdapat aplikasi inti termasuk klien email, program SMS, kalender, peta, browser, kontak dan lain-lain. Semua aplikasi ditulis menggunakan bahasa pemrograman Java. 2. Application Frameworks Applications Frameworks ini adalah layer dimana para pembuat aplikasi melakukan pengembangan/pembuatan aplikasi yang akan dijalankan di sistem Android, karena pada layer inilah aplikasi dapat dirancang, seperti content-providers yang berupa SMS dan lain sebagainya. Komponen-komponen yang termasuk di dalam Applications Frameworks adalah sebagai berikut: a. Views, yang dapat digunakan untuk membangun aplikasi meliputi lists, grids, text boxes, buttons, dan embeddable web browser. b. Libraries untuk manajemen tampilan.Content Provider, yang memungkinkan aplikasi untuk mengakses data dari aplikasi lain (misalnya Kontak), atau untuk membagi data yang dimilikinya.
http://digilib.mercubuana.ac.id/
12
c. Resource Manager, menyediakan akses ke non-code resources misalnya localized strings, graphics, dan layout files. d. Notification Manager, yang memungkinkan semua aplikasi untuk menampilkan custom alerts pada the status bar. e. Activity Manager, yang memanage life cycle of dari aplikasi dan menyediakan common navigation backstack. 3. Libraries Libraries ini adalah layer dimana fitur-fitur Android berada, biasanya para pembuat aplikasi kebanyakan mengakses Libraries untuk menjalankan aplikasinya. Berjalan di atas kernel, layer ini meliputi berbagai library C/C++ inti seperti Libc dan SSL, serta: a. Libraries media untuk pemutaran media audio dan video. b. Libraries untuk manajemen tampilan. c. Libraries Graphics mencakup SGL dan OpenGL untuk grafis 2D dan 3D. d. Libraries SSL dan WebKit terintegrasi dengan web browser dan security. e. Libraries LiveWebcore mencakup modern web browser dengan engine embedded web view. f. Libraries 3D yang mencakup implementasi OpenGL ES 1.0 API‟s. g. Free Type yang mencakup bitmap dan vector font rendering. h. SQLite mencakup relational database engine yang powerful dan ringan tersedia untuk semua aplikasi. 4. Android Runtime Layer yang membuat aplikasi Android dapat dijalankan dimana dalam prosesnya menggunakan implementasi linux.Dalvik Virtual Mechine (DVM) merupakan mesin yang membentuk dasar kerangka aplikasi Android. Didalam Android Run Time dibagi menjadi dua bagian yaitu: a. Core Libraries: Aplikasi Android yang dibangun dalam bahasa java, sementara Dalvik sebagai virtual mesinnya bukan virtual mesin java, sehingga diperlukan sebuah libraries yang berfungsi untuk menterjemahkan bahasa java/c yang ditangani oleh core libraries. b. Dalvik Virtual Mechine: Virtual mesin yang berbasis register yang dioptimalkan untuk
menjalankan
fungsi-fungsi
secara
efisien,
http://digilib.mercubuana.ac.id/
dimana
merupakan
13
pengembangan yang mampu membuat linux kernel untuk threading dan manajemen tingkat rendah. 5. Linux Kernel Linux Kernel adalah layer dimana inti dari sistem operasinya dari Android itu sendiri, berisi file-file system yang mengatur system processing, memory, resource, drivers, dan sistem-sistem operasi Android lainnya. Linux Kernel yang digunakan Android adalah LinuxKernel realase 2.6. Penjelasan diatas terlihat pada gambar 2.1 berikut:
Gambar 2.1. Arsitektur Android Sumber: http://elinux.org/Android_Architecture
2.3.3
Software Development Kit (SDK)
Android SDK adalah tools API ( Application Programming Interface )yang diperlukan untuk memulai pengembangan aplikasi pada platform Android menggunakan bahasa pemrograman java (Safaat, 2011). Pada Android SDK ini terdiri dari debugger, libraries, handset emulator, dokumentasi dan tutorial. Software Development Kit memungkinkan pengembang untuk membuat aplikasi untuk platform Android. SDK Android mencakup proyek sampel dengan kode sumber, perangkat pengembangan, emulator dan perpustakaan yang diperlukan untuk membangun aplikasi
http://digilib.mercubuana.ac.id/
14
Android. Aplikasi yang ditulis menggunakan bahasa pemrograman Java dan berjalan di Dalvik, mesin virtual yang dirancang khusus untuk penggunaan embedded yang berjalan di atas kernel Linux.
2.3.4
Java
Menurut Dietel Harvey and Dietel Paul (How To Program, 2012:2). Java adalah sebuah bahasa pemograman yang dapat memenuhi kebutuhan organisasi dengan mengimplementasi aplikasi berbasis internet dan perangkat lunak pada alat yang terhubung melalui jaringan, salah satu tujuan dibentuknya bahasa pemograman java adalah untuk dapat menulis program yang akan dijalankan pada berbagai macam sistem komputer. Hal ini disebut dengan “write once, run anywhere” yang artinya bahasa pemograman java dapat ditulis sekali namun dapat digunakan dan dijalankan dimana saja pada komputer apa saja. Menurut Bambang Heriyanto (Esensi-Esensi Bahasa Pemograman Java, 2014:16) Java dirancang agar mudah dipelajari dan digunakan secara efektif. Java tidak menyediakan fiturfitur rumit, serta banyak pekerjaan pemrogram yang mulanya harus dilakukan manual dikerjakan java secara otomatis seperti dialokasikan memori dan java adalah bahasa yang dapat dijalankan disembarang platform diberagam lingkungan : internet, consumer electronic products, dan computer application. The Java 2 Platform tersedia dalam tiga edisi untuk keperluan berbeda sebagai berikut : 1. Java 2 Standard Edition (J2SE). 2. Java 2 Enterprise Edition (J2EE). 3. Java 2 Micro Edition (J2ME). Pada pengembangan enterprise application, dapat digunakan sejumlah besar paket pada consumer electronic products, dan komputer application hanya sebagian kecil bagian bahasa yang digunakan masing-masing edisi berisi java 2 software development kit (JDK) untuk mengembangkan aplikasi dan java 2 runtime environment (JRE) untuk menjalankan aplikasi.
http://digilib.mercubuana.ac.id/
15
2.3.5
Java Develovment Kit (JDK)
Java Development Kit (JDK) adalah perangkat pengembangan aplikasi Java yang bisa diunduh secara gratis di www.oracle.com/technetwork/java/javanese/download. Perangkat ini mutlak diperlukan untuk membuat aplikasi Android, mengingat aplikasi Android itu berbasis Java. Sebagaimana diketahui, Java adalah salah satu bahasa pemrograman yang biasa digunakan untuk membuat aplikasi. Namun perlu diketahui, tidak semua pustaka dalam Java digunakan di Android. Sebagai contoh, Android tidak menggunakan Swing. (Abdul Kadir, 2013). Java Development Kit (JDK) berisi sekumpulan kakas baris perintah (commandline tool) untuk menciptakan program Java. Pada 2009-2010, Oracle Corporation mengakuisisi Sun Microsystem,
Inc.,
alamat
URL
untuk
men-download
JDK
berpindah
menjadi
http://www.oracle.com/technetwork/java/index.html. JDK berisi sekumpulan kakas, utilitas, dan dokumentasi serta kode applet contoh untuk pengembangan program Java. (Bambang Hariyanto, 2014). Berikut adalah daftar komponen utama JDK: 1. Kompilator (javac) 2. Interpreter program Java (java) 3. Applet viewer(appletviewer) 4. Debugger (jdb) 5. 5 Class file disassemble (javap) 6. Header and stub file generator (javah) 7. Documentation generator (javadoc) 8. Applet demo 9Kode sumber Java API Versi Java tersedia untuk Sun Solaris, Windows NT/2000, Windows 95/98, Linux, OS/2, Macintosh, dan banyak lagi. (Bambang Hariyanto, 2014).
http://digilib.mercubuana.ac.id/
16
2.3.6
Android Virtual Device (AVD)
Android Virtual Device ( AVD ) yang merupakan emulator untuk menjalankan program aplikasi Android yang kita buat (Safaat, 2011). AVD ini yang selanjutnya digunakan sebagai tempat untuk test dan menjalankan aplikasi Android yang telah dibuat. Dengan AVD ini, pengembang bisa mengembangkan dan mencoba aplikasi Android tanpa harus menggunakan perangkat Android yang sebenarnya.Sebelum menggunakan AVD harus menentukan karakteristiknya, misalkan dalam menentukan versi Android, jenis dan ukuran layar dan besarnya memori.AVD bisa dibuat sebanyak yang kita inginkan.
2.4
Aplikasi dengan Sistem Multimedia Multimedia berasal dari dua kata, yaitu multi dan media. Multi berarti banyak dan media
biasa diartikan alat untuk menyampaikan atau membuat sesuatu, perantaraan, alat pengantar, suatu bentuk komunikasi seperti surat kabar, majalah atau televisi (Ariyus, 2019). Ada tiga jenis multimedia: 1. Multimedia interaktif Pengguna dapat mengontrol apa dan kapan elemen-elemen multimedia akan dikirimkan atau di tampilkan. 2. Multimedia hiperaktif Multimedia jenis ini mempunyai suatu struktur dari elemen-elemen terkait dan pengguna yang dapat mengarahkannya. 3. Multimedia linier Pengguna hanya menjadi penonton dan menikmati produk multimedia yang disajikan dari awal hingga akhir. Menurut definisi diatas sistem mutltimedia dapat digambarkan seperti pada Gambar 2.2 berikut:
http://digilib.mercubuana.ac.id/
17
Gambar 2.2. Gambaran Multimedia (Ariyus, 2009)
2.4.1 Objek Multimedia Menurut Sutopo (2003), Multimedia terdiri dari beberapa objek (element), yaitu teks, grafik atau image, animasi, audio, video, dan link interaktif. 1. Teks Bentuk data multimedia yang paling mudah tersimpan dan dikendalikan adalah teks. Teks dapat membentuk kata , surat, atau narasi dalam multimedia, yang menyajikan bahasa kita. Kebutuhan teks tergantung pada kegunaan aplikasi multimedia. Misalnya
game
membutuhkan
teks
lebih
sedikit
sedangkan
ensiklopedia
membutuhkan teks lebih banyak. Lebih dari itu teks mempunyai struktur linier sederhana. Meskipun mungkin saja ada multimedia tanpa teks kebanyakan sistem multimedia menggunakan teks sebab teks sangat efektif untuk menyampaikan ide, serta memberikan panduan kepada pengguna. 2. Grafik atau Gambar Grafik atau gambar digunakan dalam presentasi atau publikasi multimedia karena dapat menghasilkan multimedia yang menarik dan tidak membosankan (Suyanto, 2003). 3. Animasi Animasi adalah sebuah proses merekam dan memainkan kembali serangkaian gambar statis untuk mendapatkan sebuah ilusi pergerakan (Ibiz Fernandez, 2002)
http://digilib.mercubuana.ac.id/
18
4. Audio Audio merupakan cara lain untuk lebih memperjelas pengertian suatu informasi. Audio atau suara dapat lebih memperjelas karakteristik suatu gambar (Sutopo, 2003). 5. Video Menurut Kamus Besar Bahasa Indonesia, video merupakan rekaman gambar hidup atau program televisi untuk ditayangkan lewat pesawat televisi, atau dengan kata lain video merupakan tayangan gambar bergerak yang disertai dengan suara. Video sebenarnya berasal dari bahasa Latin, video-vidi visum yang artinya melihat (mempunyai daya penglihatan); dapat melihat. Azhar Arsyad (2011: 49) menyatakan bahwa video merupakan gambar gambar dalam frame, di mana frame demi frame diproyeksikan melalui lensa proyektor secara mekanis sehingga pada layar terlihat gambar hidup. 6. Interactive Link Interactive link merupakan sebagian dari objek multimedia untuk menggabungkan beberapa elemen sehingga menjadi terpadu, dimana pengguna dapat menekan objek pada layer seperti tombol atau teks dan dapat menyebabkan program melakukan perintah tertentu (Sutopo, 2003). Objek multimedia yang di gunakan penulis dalam pembuatan aplikasi ini adalah teks, gambar, animasi, audio, video dan interactive link.
2.4.2 Metode Pengembangan Perangkat Lunak Pengembangan aplikasi ini menggunakan metode multimedia (Arc Luther,1994), yang dikembangkan kembali oleh (Sutopo,2003). Metode ini diperlukan beberapa tahapan, yaitu: 1. Concept Concept (konsep) adalah tahap untuk menentukan tujuan dan siapa pengguna program (identifikasi audience). Selain itu menentukan macam aplikasi (presentasi, interaktif, dll) dan tujuan aplikasi (hiburan, pelatihan, pembelajaran, dll). 2. Design Design (perancangan) adalah tahap membuat spesifikasi mengenai arsitektur program, gaya, tampilan dan kebutuhan material/bahan untuk program.
http://digilib.mercubuana.ac.id/
19
3. Material Collecting Material Collecting adalah tahap dimana pengumpulan bahan yang sesuai dengan kebutuhan dilakukan. Tahap ini dapat dikerjakan paralel dengan tahap assembly. Pada beberap kasus, tahap Material Collecting dan tahap Assembly akan dikerjakan secara linear tidak paralel. 4. Assembly Assembly (pembuatan) adalah tahap dimana semua objek atau bahan multimedia dibuat. Pembuatan aplikasi didasarkan pada tahap design. 5. Pengujian (Testing) Testing dilakukan setelah selesai tahap pembuatan (assembly) dengan menjalankan aplikasi dan melihat apakah ada kesalahan (error) atau tidak pada aplikasi. Tahap ini disebut juga sebagai tahap pengujian alpha (alpha test) dimana pengujian dilakukan oleh pembuat atau lingkungan pembuatnya sendiri. 6. Distribution Tahapan dimana aplikasi disimpan dalam suatu media penyimpanan. Pada tahap ini jika media penyimpanan tidak cukup untuk menampung aplikasinya, maka dilakukan kompresi terhadap aplikasi tersebut.
Gambar 2.3. Metodologi Pengembangan Multimedia (Sutopo, 2003)
http://digilib.mercubuana.ac.id/
20
2.5 Perancangan Sistem Menurut Satzinger, Jackson dan Burd (2010:4), perancangan sistem adalah proses dari menspesifikasikan secara detail mengenai beberapa banyak komponen dari sistem informasi yang harus diimplementasikan secara fisik. Menurut Whitten dan Bentley (2009:160), desain sistem adalah teknik pemecahan masalah yang saling melengkapi (untuk analisis sistem) yang merakit kembali potongan komponen sistem menjadi sistem yang lengkap dengan mengharapkan peningkatan sistem. Hal ini mungkin melibatkan penambahan, penghapusan dan pengubahan potongan secara relative terhadap sistem yang asli.
2.5 .1
Storyboard
Menurut Sunarya Lusyani, Putri Apryllia, Siti Isnaini dalam Jurnal CCIT Vol.9 No.3 (2016:320) yang berjudul Design Video Profile Based Multimedia Audio Visual And Broadcasting As A Media Promotion, Storyboard adalah rancangan berupa sket gambar yang dilengkapi dengan petunjuk atau catatan pengambilan gambar untuk kebutuhan shooting. Selama proses praproduksi, perancangan yang berhubungan dengan visualisasi yang akan dibuat membutuhkan storyboard sebagai media terpadu. Menurut Sudaryanto, Subjan Badio dalam buku teks Keteknikan Video Grafi Membuat Film Pendek dan Video Iklan, Penerbit Direktorat Pembinaan SMK (2013:52), Storyboard merupakan gambaran dasar dari produk yang akan dibuat. Storyboard berisi kumpulan kertas yang berisi rangkaian kejadian untuk kepentingan produksi film, termasuk didalamnya film animasi. Storyboard akan menjadi acuan dasar bagi sutradara atau pembuat skenario tentang bagaimana seharusnya sebuah film berjalan. Storyboard adalah sketsa gambar yang disusun berurutan sesuai dengan naskah, dengan storyboard kita dapat menyampaikan ide cerita kita kepada orang lain dengan lebih mudah, karena kita dapat menggiring khayalan seseorang mengikuti gambar-gambar yang tersaji, sehingga menghasilkan persepsi yang sama dengan ide cerita kita.
http://digilib.mercubuana.ac.id/
21
2.5 .2
Flowchart
Menurut Indrajani (2011,p22), Flowchart merupakan penggambaran secara grafik dari langkah-langkah dan urutan prosedur suatu program. Biasanya mempermudah penyelesaian masalah yang khususnya perlu dipelajari dan dievaluasi lebih lanjut. Menurut Pahlevy (2010), Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritma dalam suatu program, yang menyatakan arah alur program tersebut. Berikut adalah beberapa simbol yang digunakan dalam menggambar suatu flowchart dijelaskan pada tabel. Simbol-simbol dalam flowchart diantaranya: Tabel 2.1. Simbol-simbol flowchart SIMBOL
NAMA SIMBOL
KETERANGAN
Terminator
Permulaan (awal) & Akhir
(Terminal)
Flowchart
Garis Alir Arah Aliran Sistem (Flow Line)
Preparation
Process (Proses)
Proses Inisialisasi atau Pemberian Harga Awal Proses Perhitungan atau Kegiatan Pengolahan Data
Input atau Output
Proses Input/Output Data,
Data
Parameter, Informasi
Document (Dokumen)
Dokumen Input atau Output
http://digilib.mercubuana.ac.id/
22
Manual Operation
Pengolahan yang Tidak Dilakukan Komputer
Predefined Process
Permulaan Sub Program/Proses
(SubProgram)
Menjalankan Sub Program Perbandingan Pernyataan,
Decision
Penyeleksian Data Yang Memberikan Pilihan Untuk Langkah Selanjutnya Penghubung Bagian-Bagian
On Page Connector
Flowchart yang Berada Pada Satu Halaman Penghubung Bagian-Bagian
Off Page Connector
Flowchart yang Berada Pada Halaman Berbeda
2.6 Struktur Navigasi Menurut Binanto (2010:268) “Struktur navigasi adalah gabungan dari struktur referensi informasi situs web dan mekanisme link yang mendukung pengunjung untuk melakukan penjelajahan situs”. Ada empat macam struktur navigasi: 1. Struktur Navigasi Linier Struktur Navigasi Linier hanya mempunyai satu rangkaian cerita berurut yang menampilkan satu demi satu tampilan layar secara berurut menurut urutanya. Tampilan yang dapat ditampilkan pada struktur jenis ini adalah satu halaman sebelumnya atau satu halaman sesudahnya, tidak dapat dua halaman sebelumnya atau dua halaman sesudahnya, pengguna akan melakukan navigasi secara berurutan, dalam frame atau byte informasi satu ke yang lainnya.
http://digilib.mercubuana.ac.id/
23
Sumber : Binanto, (2010a:269) 2. Struktur Navigasi Hirarki Struktur dasar ini disebut juga struktur linier dengan percabangan karena pengguna melakukan navigasi di sepanjang cabang pohon struktur yang terbentuk oleh logika isi.
. Sumber : Binanto (2010b:269) 3. Struktur Navigasi Tidak Berurut (Non-Linier) Struktur navigasi non-linier merupakan pengembangan dari struktur navigasi linier. Pada struktur ini diperkenankan membuat navigasi bercabang. Percabangan yang dibuat pada struktur non-linier ini berbeda dengan percabangan pada struktur hirarki, karena pada percabangan non-linier ini walaupun terdapat percabangan tetap tiap-tiap tampilan mempunyai kedudukan yang sama yaitu tidak ada Master Page dan Slave Page, pengguna akan melakukan navigasi dengan bebas melalui isi proyek dengan tidak terikat dengan jalur yang sudah ditentukan sebelumnya.
Sumber : Binanto (2010c:270) 4. Struktur Navigasi Campuran (Composite) Struktur navigasi campuran dimana pengguna dapat melakukan navigasi dengan bebas (secara non-linier), tetapi terkadang dibatasi presentasi linier film atau
http://digilib.mercubuana.ac.id/
24
informasi penting dan pada data yang paling terorganisasi secara logis pada suatu hirarki.
Sumber : Binanto (2010d:270)
2.7 State Transition Diagram (STD) State Transition Diagram (STD) menunjukkan bagaimana sistem bertingkah laku sebagai akibat dari kejadian eksternal. Untuk melakukanya, STD menunjukkan berbagai model tingkah laku (state) sistem dan cara dimana transisi dibuat dari state satu ke state lainnya. STD berfungsi sebagai dasar bagi pemodelan tingkah laku (Roger S.Pressman, Ph.D. Rekayasa Perangkat Lunak, 2002:354). State Transition Diagram mengambarkan semua state yang mempunyai objek, peristiwa dibawah suatu perubahan objek yang menyatakan transisi serta kondisi-kondisi yang harus dipenuhi sebelum perubahan itu terjadi. State Transition Diagram sangat berguna untuk menggambarkan perilaku dari objek individu atas satu kesatuan penggunaan yang mempengaruhi objek itu. State Transition Diagram menunjukkan keadaan tertentu dimana suatu sistem dapat ada dan transisi yang menghasilkan keadaan tertentu yang baru. STD digunakan untuk sistem yang real time. State Transition Diagram adalah suatu diagram yang menggambarkan kejadian pembentukan atau pemberian sebuah class, menggambarkan suatu kejadian transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat stimulasi yang diterimanya. State Transition Diagram diciptakan untuk objek-objek yang secara signifkan mempunyai sifat behavior dinamis, satu class dapat memilikki lebih dari satu state diagram.
http://digilib.mercubuana.ac.id/
25
Dari beberapa pendapat sebelumnya dapat disimpulkan bahwa State Transition Diagram (STD) merupakan model yang menggambarkan sifat ketergantungann pada waktu dari sistem (model tingkah laku). Notasi yang dapat digunakan dapat dilihat pada tabel dibawah ini: Tabel 2.2. Notasi STD Notasi
Keterangan State, Menyatakan Status Transisi, Perubahan Status Kondisi, Penyebab Peruabahan Keadaan
Kondisi Aksi
Sedangkan Aksi, Yang Harus Dilakukan Ketika Akan Berubah Keadaan (Status)
Sumber: Roger S.Pressman, Ph.D. Rekayasa Perangkat Lunak, 2002:354
2.8 Pengertian Shalat dan Doa Harian 2.8.1
Shalat
Shalat merupakan ibadah paling utama dan istimewa di dalam Islam. Mengapa? Karena shalat adalah tiang agama. Sebagai tiang, shalat sangat menentukan tegak dan robohnya agama Islam. Orang yang melaksanakan shalat, maka tegaklah Islam dalam dirinya. Sebaliknya, telah roboh Islam dalam diri seseorang saat ia meninggalkan shalat (Teguh S, 2015). Dalam hadist juga di jelakan: “Shalat adalah tiang agama (Islam), maka barang siapa mendirikannya, sungguh ia telah mendirikan agama (Islam) itu. Dan barangsiapa merobohkannya, maka sungguh ia telah merobohkan agama (Islam) itu.” (HR. Baihaqi) Allah swt. senantiasa memuji orang yang mengerjakan shalat. Dalam Al-Quran surah Maryam, Allah memuji sosok Nabi Ismail as. yang taat melaksanakan shalat dan amal-amal saleh lain serta menyuruh keluarganya melakukan hal yang sama. Sesuai firman Allah swt. berikut:
http://digilib.mercubuana.ac.id/
26
“Dan ceritakanlah (hai Muhammad kepada mereka) kisah Ismail (yang tersebut) didalam AlQuran. Sesungguhnya ia adalah seorang yang benar janjinya, dan dia adalah seorang rasul dan nabi. Dan ia menyuruh keluarganya untuk shalat dan menunaikan zakat, dan ia adalah seorang yang diridhai di sisi Rabbnya.” (QS. Maryam: 54-55) Demikianlah kedudukan shalat dalam Islam. Shalat merupakan ibadah yang penting, ibadah paling utama dan istimewa. Karena kedudukan shalat sangat penting, Rasullah saw. menjelang wafatnya berwasiat kepada umat Islam agar selalu menjaga shalatnya. Berdasarkan dari hasil pengumpulan data mengenai shalat, penulis merujuk pada buku yang berjudul “Panduan Shalat Terlengkap”, Teguh S dan Ulin Nuha M. Yogyakarta: Penerbit Pustaka Baru Press, 2015 sebagai dasar pembuatan Aplikasi Panduan Shalat dan Doa Harian Berbasis Android.
2.8.2
Do’a
Dalam Al-Quran banyak sekali kata-kata doa dalam pengertian yang bebeda. Abu Al Qasim Al-Naqsabandi dalam kitab syarah Al Asmau al-Husna menjelaskan beberapa pengertian dari kata doa. Pertama, doa dalam pengertian “Ibadah”. Seperti dalam Al-Quran surah Yunus ayat 106. Artinya: “Dan janganlah kamu beribadah, kepada selain Allah, yaitu kepada sesuatu yang tidak dapat mendatangkan manfaat kepada engkau dan tidak pula mendatangkan madarat kepada engkau.” Maksud kata berdoa di atas adalah ber-”ibadah” (menyembah). Yaitu jangan menyembah selain daripada Allah swt, yakni sesuatu yang tidak memberikan manfaat dan tidak pula mendatangkan madarat kepadamu. Kedua, doa dalam pengertian “Istighatsah” (memohon bantuan dan pertolongan). Seperti dalam Al-Quran surah Al-Baqarah ayat 23 dibawah ini. Artinya: “Dan berdoalah kamu (mintalah bantuan) kepada orang-orang yang dapat membantumu.”
http://digilib.mercubuana.ac.id/
27
Maksud kata ber-”doa” (wad’u) dalam ayat ini, adalah “Istighatsah” (meminta bantuan, atau pertolongan). Yaitu mintalah bantuan atau pertolongan dari orang-orang yang mungkin dapat membantu dan memberikan pertolongan kepada kamu. Ketiga, Doa dalam pengertian “permintaan” atau “permohonan.” Seperti dalam Al-Quran surah Al-Mu’minun ayat 60 dibawah ini. Artinya: “Mohonlah (mintalah) kamu kepada-Ku, pasti Aku perkenankan (permintaan) kamu itu.” Maksud kata “Doa” (ud’uni) dalam ayat ini adalah, “memohon” atau “meminta.” Yaitu, mohonlah (mintalah) kepada Aku (Allah) niscaya Aku (Allah) akan perkenankan permohonan (permintaan) kamu itu. Maka atas dasar uraian di atas dapat diambil kesimpulan bahwa “doa” adalah ucapan permohonan dan pujian kepada Allah swt. dengan cara-cara tertentu disertai kerendahan hati untuk mendapatkan kemaslahatan dan kebaikan yang ada disisi-Nya. Atau dengan istilah Al Tibi seperti dikutip Hasbi Al-Shidiq “doa” adalah melahirkan kehinaan dan kerendahan diri serta menyatakan kehajatan (kebutuhan) dan ketundukan kepada Allah swt. 2.9 Pengujian Sistem Aplikasi Menurut Nidhra dan Dondeti (2012:1), pengujian software adalah teknik yang sering digunakan untuk verifikasi dan validasi kualitas suatu software. Pengujian software adalah prosedur untuk eksekusi sebuah program atau sistem dengan tujuan untuk menemukan kesalahan. Konsep kualitas sangat penting demi kepuasan pengguna (juga pengembang). Untuk mencapai kualitas yang diharapkan dari aplikasi yang kembangkan pada umumnya ada beberapa strategi pengujian yang dapat dilakukan.
2.9.1
Black-Box Testing
Pada pengujian ini kita tidak perlu tahu apa sesungguhnya terjadi pada perangkat lunak. Yang kita uji adalah masukkan serta keluarannya.Artinya, dengan berbagai masukkan yang kita berikan, apakah aplikasi memberikan keluaran seperti yang kita harapkan?
http://digilib.mercubuana.ac.id/
28
2.9.2.
White-Box Testing
Pengujian jenis ini mengasumsikan bahwa spesifikasi logika adalah penting dan perlu dilakukan pengujian untuk menjamin apakah sistem berfungsi dengan baik. Tujuan utama dari strategi pengujian ini adalah pengujian berbasis kesalahan.
2.10 Studi Pustaka (Literature Review) 1. Judul
: Aplikasi Tuntunan Shalat Menggunakan Augmented Reality Berbasis Android
Jenis Literatur : Jurnal Penulis
: Muh. Arif Saputra, Pramuko Aji.,ST.,MT dan Hadi Prasetyo Utomo.,S.Kom.,MT
Tahun
: 2015 Tabel 2.3. Literature Review
No
1.
Hal yang di Perbandingkan
Tools
Penulis Sebelumnya
Penulis Sekarang
Menggunakan
Menggunakan
Blender 3D,
Android Studio,
Unity 3D
Sublime Text 3,
dan Adobe
Adobe Photoshop
Photoshop
CS6, Audacity
2.
Penerapan Aplikasi
Handphone berbasis
Handphone
android
berbasis android Gerakan dan tata
Tata cara shalat
http://digilib.mercubuana.ac.id/
cara shalat wajib,
29
3.
Informasi
dengan gerakan-
sunnah. Cara
gerakan 3D
berwudhu, tayamum dan mandi wajib dengan video dan audio User dapat
4.
Hasil
User dapat berinteraktif dengan telepon seluler
berinteraksi dengan handphone dimanapun dan kapanpun
2. Judul
: Pengembangan Aplikasi Tata Cara Wudhu Dan Shalat Untuk Anak Menggunakan Sistem Multimedia
Jenis Literatur : Jurnal
No
Penulis
: Intan Fadzilatunnisa dan Dewi Tresnawati
Tahun
: 2015
Hal yang di Perbandingkan
Penulis Sebelumnya
Penulis Sekarang
Menggunakan
1.
Tools
Adobe Dreamweaver
Menggunakan
dan
Android Studio,
IDE
Sublime Text 3,
Eclipse
Adobe Photoshop CS6 dan Audacity
2.
Penerapan Aplikasi
Handphone berbasis
Handphone
android
berbasis android
http://digilib.mercubuana.ac.id/
30
Gerakan dan tata Tata cara berwudhu, 3.
Informasi
cara shalat wajib, sunnah. Cara
gerakan dan bacaan
berwudhu,
shalat
tayamum dan mandi wajib dengan video dan audio User dapat 4.
Hasil
User dapat
berinteraksi dengan handphone
berinteraktif dengan handphone
dimanapun dan kapanpun
3. Judul
: Rancang Bangun Aplikasi Fiqih Ibadah Shalat Berbasis Android
Jenis Literatur : Jurnal
No
Penulis
: Meti Zuhaerotul Atiroh, Bunyamin dan Eri Satria
Tahun
: 2014
Hal yang di Perbandingkan
Penulis Sebelumnya
Penulis Sekarang
Menggunakan
1.
Tools
IDE
Menggunakan
Eclipse
Android Studio,
dan
Sublime Text 3,
Adobe Photoshop
Adobe Photoshop CS6 dan Audacity
http://digilib.mercubuana.ac.id/
31
2.
Penerapan Aplikasi
Handphone berbasis
Handphone
android
berbasis android Gerakan dan tata cara shalat wajib,
3.
Informasi
Fiqih, Shalat, Thaharah dan Arah kiblat
sunnah. Cara berwudhu, tayamum dan mandi wajib serta doa harian dengan video dan audio User dapat
4.
Hasil
User dapat berinteraktif dengan handphone
berinteraksi dengan handphone dimanapun dan kapanpun
2.11 Perangkat Lunak Pendukung Dalam penelitian ini, penulis menggunakan beberapa perangkat lunak pendukung terutama dalam hal pembuatan program. Berikut adalah sedikit penjelasan tentang perangkat lunak pendukung.
2.11.1 Android Studio Pengembang memiliki beberapa pilihan untuk merancang dan mengembangkan aplikasi berbasis android, salah satunya adalah android studio. Android studio merupakan sebuah IDE (Integrated Development Environment), aplikasi untuk pengembangan software, dikhususkan untuk pembuatan aplikasi android yang dikenalkan pada Google I/O Mei 2013 (Gerber, 2015). Android studio diperkenalkan sebagai alternatif dari IDE aplikasi android sebelumnya, yaitu Eclipse. Android studio dibangun berdasarkan IDE untuk Java bernama IntelliJ, dengan
http://digilib.mercubuana.ac.id/
32
tampilan IDE yang serupa. Android studio dibangun berdasarkan IntelliJ versi Comunity Edition oleh pengembang IDE bernama JetBrains. Bersamaan dengan kabar rilis ini, perusahaan raksasa tersebut juga telah mengumumkan bahwa mereka tidak akan melanjutkan support terhadap ADT (Android Development Tools) (ZDNet dan Techrepublic), yang sebagaimana kita ketahui adalah plug-in untuk mengembangkan aplikasi android di Eclipse. Bagi developer yang masih menggunakan ADT, Google menyarankan untuk segera bermigrasi ke Android Studio, sambil menyebutkan bahwa IDE ini sudah menjadi tools yang resmi untuk mengembangkan aplikasi android. Tidak heran mengapa Google memilih untuk melakukan gerakan semacam ini. Setelah beberapa waktu mengembangkan dan memperbaiki IDE mereka sendiri, Android Studio sekarang dapat dikatakan sudah menjadi IDE yang powerful dan mapan untuk digunakan oleh developer. Dan tentunya tools ini masih terus dikembangkan. Setelah beberapa waktu menggunakan IDE berbasis IntelliJ Google ini, saya setuju bahwa memang lebih baik menggunakan Android Studio dibandingkan Eclipse. Saya tidak mengatakan Eclipse adalah tools pengembangan yang jelek, hanya saja menurut saya IDE dari Google ini memiliki peluang bersaing melawan Visual Studio (Microsoft) dan XCode (Apple) yang lebih baik. Berikut ini beberapa kelebihan yang saya rasakan ketika menggunakan Android Studio. Berikut fitur-fitur yang ada di Android Studio: 1. Memakai Gradle-based build system yang fleksibel. 2. Dapat mem-build multiple APK. 3. Tersedianya template support untuk Google Service serta untuk tipe-tipe perangkat lainnya. 4. Tampilan editor yang lebih baik. 5. Google Cloud Platform built-in support, maka akan memudah untuk diintegrasikan dengan Google 6. Cloud Messaging dan App Engine. Dari sisi build memang lebih unggul apabila dibandingkan dengan Eclipse, ini disebabkan Android Studio memakai Gradle. Perbedaan lainnya dari Eclipse tidak diperlukannya lagi
http://digilib.mercubuana.ac.id/
33
dependencies package. Serta memiliki keunggulan dalam tampilan xml editor yang secara visual jauh lebih baik dibanding Eclipse. Berikut penjelasan area kerja android studio: 1. Layout Sama seperti eclipse, layout di android dibedakan menjadi 2, yaitu design dan text, secara default pada saat dibuka layout xml di android studio menggunakan mode design, tapi bisa diubah ke mode text, sehingga terlihat source code dari text XML nya. 2. Struktur Folder Terdapat folder .idea, app, gradle dan file-file yang ada diroot folder. Folder app/ adalah folder utama pada aplikasi android. Pada folder build sepertti gen/ di eclipse, isinya file-file hasil generate dari IDE, jadi tidak perlu diubah-ubah isi folder tersebut. Kemudian folder libs/ sama seperti di eclipse. Selanjutnya folder src/. src adalah folder dimana tersimpan source java dan layout dalam bentuk XML, secara default android studio akan mengenerate dua folder yaitu, androidtest dan main. Folder androidtest adalah folder khusus UnitTest. 3. Gradle Yang baru di Android Studio adalah gradle, sebuah featured build automation. Selengkapnya dapat lihat di situs berikut ini http://www.gradle.org/. File Gradle berisi library yang digunakan, versi aplikasi, signed key properties, lokasi repository dll. File yang akan sering kita ubah adalah file build. Kita dapat lihat, file ini berisi pengaturan untuk versi sdk yang di compaile, build versi yang digunakan, nama paket
aplikasi,
minSDK
yang
digunakan,
versioncode,
versionname
dependencies yang digunakan. Area kerjanya seperti gambar berikut:
http://digilib.mercubuana.ac.id/
dan
34
Gambar 2.4. Tampilan Area Kerja Android Studio
2.11.2 Pengertian Adobe Photoshop CS6 Menurut Almasih Musa (2014), Adobe Photoshop atau biasa disebut Photoshop adalah perangkat lunak editor citra buatan Adobe Systems yang dikhususkan untuk pengeditan foto / gambar dan pembuatan efek. Pada Photoshop CS6 banyak fitur yang menarik yang tidak ada di versi sebelumnya seperti Camera RAW filter, Perspective Warp, Focus Area, Shake Reduction.
Gambar 2.5. Tampilan Area Kerja Adobe Photoshop CS6
http://digilib.mercubuana.ac.id/
35
2.11.3 Pengertian Audacity Menurut Pitarto Estu (2014:18) dalam buku How To Make Audio Project With Audacity Membuat Media Pembelajaran Berbasis Audio, Penerbit Indonesia Membaca Buku, Audacity adalah nama sebuah perangkat lunak (software) yang didaftarkan menjadi sebuah merk oleh Dominic Mazzoni, dikembangkan oleh sekelompok sukarelawan dan didistribusikan oleh GNU General Public License (GPL). Audacity ini diciptakan sebagai program yang berguna untuk merekam suara, mengkonversi kaset pita ke dalam bentuk rekaman digital, membuat file suara MP3, WAV, mengedit dan mencampurkan berbagai macam suara menjadi satu.
Gambar 2.6. Tampilan Area Kerja Audacity
2.11.4 Pengertian Sublime Text 3 Sublime Text adalah aplikasi editor untuk kode dan teks yang dapat berjalan diberbagai platform operating system dengan menggunakan teknologi Phyton API. Terciptanya aplikasi ini terinspirasi dari aplikasi Vim, Aplikasi ini sangatlah fleksibel dan powerfull. Fungsionalitas dari aplikasi ini dapat dikembangkan dengan menggunakan sublime-packages. Sublime Text bukanlah aplikasi open source dan juga aplikasi yang dapat digunakan dan didapatkan secara gratis, akan tetapi beberapa fitur pengembangan fungsionalitas (packages) dari aplikasi ini merupakan hasil dari temuan dan mendapat dukungan penuh dari komunitas serta memiliki linsensi aplikasi gratis.
http://digilib.mercubuana.ac.id/
36
Sublime Text mendukung berbagai bahasa pemrograman dan mampu menyajikan fitur syntax highlight hampir di semua bahasa pemrogramman yang didukung ataupun dikembangkan oleh komunitas seperti; C, C++, C#, CSS, D, Dylan, Erlang, HTML, Groovy, Haskell, Java, JavaScript, LaTeX, Lisp, Lua, Markdown, MATLAB, OCaml, Perl, PHP, Python, R, Ruby, SQL, TCL, Textile and XML. Biasanya bagi bahasa pemrograman yang didukung ataupun belum terdukung secara default dapat lebih dimaksimalkan atau didukung dengan menggunakan add-ons yang bisa didownload sesuai kebutuhan user.
Gambar 2.7. Tampilan Area Kerja Sublime Text 3
Berikut beberapa fitur yang diunggulkan dari aplikasi Sublime Text: 1. Goto Anything Fitur yang sangat membantu dalam membuka file ataupun menjelajahi isi dari file hanya dengan beberapa keystrokes. 2. Multiple Selections Fitur ini memungkinkan user untuk mengubah secara interaktif banyak baris sekaligus, mengubah nama variabel dengan mudah, dan memanipulasi file lebih cepat dari sebelumnya. 3. Command Pallete Dengan hanya beberapa keystorkes, user dapat dengan cepat mencari fungsi yang diinginkan, tanpa harus menavigasi melalu menu.
http://digilib.mercubuana.ac.id/
37
4. Distraction Free Mode Bila user memerlukan fokus penuh pada aplikasi ini, fitur ini dapat membantu user dengan memberikan tampilan layar penuh. 5. Split Editing Dapatkan hasil yang maksimal dari monitor layar lebar dengan dukungan editing perpecahan. Mengedit sisi file dengan sisi, atau mengedit dua lokasi di satu file. 6. Instant Project Switch Menangkap semua file yang dimasukkan kedalam project pada aplikasi ini. Terintegrasi dengan fitur Goto Anything untuk menjelajahi semua file yang ada ataupun untuk beralih ke file dalam project lainnya dengan cepat. 7. Plugin API Dilengkapi dengan plugin API berbasis Phyton sehingga membuat aplikasi ini sangat tangguh. 8. Customize Anything Aplikasi ini memberikan user fleksibilitas dalam hal pengaturan fungsional dalam aplkasi ini. 9. Cross Platform Aplikasi ini dapat berjalan hampir disemua operating system modern seperti Windows, OS X, dan Linux based operating system.
http://digilib.mercubuana.ac.id/