IDENTIFIKASI OBJEK BERGERAK BADA SISTEM KEAMANAN BERBASIS CAMERA CAPTURE
Deny Baskoro Tamahita Jurusan Teknik Informatika, Fakultas Teknologi Industri, Universitas Gunadarma
ABSTRAK Pada tulisan ini dibahas tentang pembuatan sebuah program aplikasi dalam sebuah perangkat selular (ponsel), penulis tertarik mengembangkan aplikasi mobile dikarenakan mobilitas penggunaan ponsel semakin berkembang, mulai dari aplikasi yang berupa permainan maupun aplikasi yang bersifat mendidik seperti pembelajaran interaktif, pembelajaran interaktif sendiri dapat digunakan oleh siapa saja dan kapan saja, dimana dengan aplikasi ini penggunanya dapat mempelajari dasar-dasar membangun website. Aplikasi ini dibuat dengan mengimplementasikan web service yang mana menggunakan android sebagai klient dan apache sebagai web server dengan database mysql. Aplikasi ini dapat memenuhi kebutuhan pengguna terhadap pembelajaran tanpa membatasi mobilitas penggunanya. Kata Kunci : Sistem Keamana,Webcam
PENDAHULUAN Keamanan merupakan sesuatu yang sangat penting seiring meningkatnya tingkat kejahatan. Untuk itu dibutuhkan suatu sistem keamanan yang mampu mencatat setiap kejadian yang tidak diinginkan, sehingga dapat digunakan untuk keperluan penyelidikan oleh pihak yang berwajib. Teknologi keamanan pada sebuah ruangan telah berkembang pesat, baik dengan menggunakan CCTV (closed circuit television), sensor asap, sensor suhu, sensor cahaya, dan lain sebagainya. Pada sistem CCTV konvensional, setiap objek yang nampak pada kamera akan direkam secara kontinyu dalam bentuk video dan disimpan ke media penyimpanan tertentu tanpa memperhatikan adanya gerakan atau tidak. Kelemahan sistem CCTV konvensional tersebut antara lain file video yang disimpan cenderung besar dan apabila memerlukan informasi dari video tersebut maka video harus diputar ulang dan diamati dengan seksama, serta masih dibutuhkannya petugas keamanan untuk berpatroli yang dapat
menyebabkan pemantauan dan penjagaan menjadi kurang maksimal. Beberapa CCTV telah memiliki teknologi pendeteksian gerakan dan akan menampilkan icon tertentu apabila kamera mendeteksi adanya gerakan. Namun proses penyimpanan video masih dilakukan secara berkesinambungan tanpa memperhatikan adanya gerakan tersebut. Dengan mengembangkan sistem keamanan ruangan menggunakan webcam dengan deteksi gerakan (motion detection) ini, sistem akan berkerja ketika webcam mendeteksi sebuah gerakan maka secara otomatis sistem akan mengambil gambar/foto dari setiap gerakan dan menyimpannya kedalam format JPEG, sehingga dapat meminimalisir penggunaan media penyimpanan yang besar. Selain itu, pada sistem keamanan ruangan ini terdapat juga alarm yang berfungsi sebagai tanda peringatan dini bahwa telah terjadi hal yang tidak diinginkan. Selain dari pada itu, pada sistem keamanan ruangan ini juga terdapat fungsi notifikasi sms yang berfungsi sebagai peringatan akhir bahwa terjadi hal yang tidak diinginkan. Selain deteksi gerakan, notifikasi sms, dan alarm, tersedia juga fitur pencarian hasil foto (history) berdasarkan tanggal yang berfungsi untuk mempermudah user mengetahui kejadian apa saja yang telah terjadi secara historis dan dapat dijadikan sebagai bahan bukti untuk penyelidikan TINJAUAN PUSTAKA Definisi Web Service Web service adalah suatu sistem perangkat lunak yang dirancang untuk mendukung interoperabilitas dan interaksi antar sistem pada suatu jaringan. Web service digunakan sebagai suatu fasilitas yang disediakan oleh suatu web site untuk menyediakan layanan (dalam bentuk informasi) kepada sistem lain, sehingga sistem lain dapat berinteraksi dengan sistem tersebut melalui layanan-layanan (service) yang disediakan oleh suatu sistem yang menyediakan web service. Web service menyimpan data informasi dalam format XML ataupun JSON, sehingga data ini dapat diakses oleh sistem lain walaupun berbeda platform, sistem operasi, maupun bahasa compiler. Web service bertujuan untuk meningkatkan kolaborasi antar pemrogram dan perusahaan, yang memungkinkan sebuah fungsi di dalam Web Service dapat dipinjam oleh aplikasi lain tanpa perlu mengetahui detil pemrograman yang terdapat di dalamnya. Beberapa alasan mengapa digunakannya web service adalah sebagai berikut: 1. Web service dapat digunakan untuk mentransformasikan satu atau beberapa bisnis logic atau class dan objek yang terpisah dalam satu ruang lingkup yang menjadi satu, sehingga tingkat keamanan dapat ditangani dengan baik.
2. Web service memiliki kemudahan dalam proses deployment-nya, karena tidak memerlukan registrasi khusus ke dalam suatu sistem operasi. Web service cukup diupload ke web server dan siap diakses oleh pihak-pihak yang telah diberikan otorisasi. 3. Web service berjalan di port
80 yang merupakan protokol standar HTTP, dengan
demikian web service tidak memerlukan konfigurasi khusus di sisi firewall.
Android Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang 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 Juli 2005 Android telah diakuisisi oleh Google dan pada 5 November 2007 barulah secara resmi Android di rilis oleh Google. Dalam pengembangan aplikasi android menyediakan Android SDK yang menyediakan tools dan API untuk para pengembang aplikasi dengan platform
Android.
Android
menggunakan
Java
sebagai
bahasa
pemogramannya.
Fitur Android. Fitur-fitur pada Android antara lain adalah :
Framework aplikasi, memungkinkan daur ulang dan penggantian komponen.
Browser terintegrasi berbasis engine Open Source WebKit yang juga digunakan di browser IPhone dan Nokia S60v3.
Rancangan handset. Platform disesuaikan dengan kebutuhan VGA (Video Graphics Adapter) yang lebih besar, library grafik 2D dan 3D yang berdasarkan pada spesifikasi OpenGL ES 1.0 serta layout smartphone yang tradisional.
Konektivitas. Android mendukung berbagai teknologi konektivitas seperti GSM (Global System for Mobile Communications)/EDGE (Enhanced Data rates for GSM Evolution), CDMA (Code Division Multiple Access), EV-DO (Evolution-Data
Optimized), UMTS (Universal Mobile Telecommunications System), Bluetooth dan Wi-Fi (Wireless Fidelity). Pesan. Android mendukung pengiriman pesan dalam bentuk SMS (Short Message Service) dan MMS (Multimedia Messaging Service). Dukungan Java. Software yang ditulis dalam bahasa Java dapat dikompilasi dan akan dieksekusi pada mesin virtual Dalvik, yang merupakan implementasi dari VM (Virtual Machine) yang dirancang khusus untuk penggunaan perangkat bergerak. Dukungan media. Android mendukung beberapa format audio/video seperti: H.263, H.264 (dalam kontainer 3GP atau MP4), MPEG-4 SP, AMR, AMR-WB (dalam kontainer 3GP), AAC, HE-AAC (dalam kontainer MP4 atau 3GP), MP3, MIDI, OGG Vorbis, WAV, JPEG, PNG, GIF dan BMP. Dukungan hardware tambahan. Android mendukung penggunaan kamera, layar sentuh, GPS (Global Positioning System), pengukur kecepatan, magnetometer, akselerasi 2D bit blits (dengan orientasi hardware, scaling, konversi format piksel) dan akselerasi grafis 3D. Market. Mirip dengan App Store pada iPhone OS, Android Market adalah sebuah katalog aplikasi yang dapat di-download dan diinstal pada telepon seluler secara online, tanpa menggunakan PC (Personal Computer). Awalnya hanya aplikasi gratis saja yang didukung. Dan sejak tanggal 19 Februari 2009 aplikasi berbayar telah tersedia di Android Market untuk Amerika Serikat. Multi-touch. Android memiliki dukungan bawaan untuk multi-touch yang tersedia pada handset terbaru seperti HTC Hero. Pada awalnya fitur tersebut dinonaktifkan pada level kernel (mungkin untuk menghindari pelanggaran paten terhadap teknologi layar sentuh Apple). Sejak Google merilis update untuk Nexus One dan berencana juga untuk merilis update untuk Motorola Droid yang memungkinkan multi-touch. Lingkungan pengembangan yang kaya, termasuk emulator, peralatan debugging, dan plugin untuk Eclipse IDE.
Android Development Tools (ADT). Android Development Tools (ADT) adalah plugin untuk Eclipse yang didesain untuk pengembangan aplikasi Android. ADT memungkinkan Eclipse untuk digunakan dalam membuat aplikasi Android baru, membuat User Interface, menambahkan komponen berdasarkan framework API Android, debug aplikasi, dan pemaketan aplikasi Android.
JSON JSON (JavaScript Object Notation) adalah format pertukaran data yang ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan dibuat (generate) oleh komputer. Format ini dibuat berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-262 Edisi ke-3 - Desember 1999. JSON merupakan format teks yang tidak bergantung pada bahasa pemprograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data. JSON terbuat dari dua struktur: Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek (object), rekaman (record), struktur (struct), kamus (dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau associative array. Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa, hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau urutan (sequence). Struktur-struktur data ini disebut sebagai struktur data universal. Pada dasarnya, semua bahasa pemprograman moderen mendukung struktur data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman yang juga berdasarkan pada struktur data ini. Contoh sintaks Contoh berikut
menunjukkan representasi JSON untuk suatu objek yang
mendeskripsikan seseorang. { "namaDepan": "Budi", "namaBelakang": "Subudi", "alamat": { "namaJalan": "Jl. Sudirman 15A", "kota": "Jakarta Selatan", "provinsi": "DKI Jakarta", "kodePos": 11111 },
"nomerTelepon": [ "021 555-1234", "021 555-4567" ] }
Sruktur Navigasi Struktur navigasi adalah alur yang digunakan dalam aplikasi yang dibuat. Sebelum menyusun aplikasi multimedia kedalam sebuah software, terlebih dahulu alur apa yang akan digunakan dalam aplikasi yang dibuat. Bentuk dasar dari struktur navigasi yang biasa digunakan dalam proses pembuatan aplikasi multimedia ada empat macam, yaitu struktur navigasi linier, hirarki, non linier dan campuran. 2.8.1 Struktur Navigasi Linier Struktur navigasi linier merupakan struktur yang mempunyai satu rangkaian cerita berurutan. Struktur ini menampilkan satu demi satu tampilan layer secara berurutan menurut aturannya.
Gambar 2.4 Struktur Navigasi Linier 2.8.2 Struktur Navigasi Hirarki Struktur navigasi hirarki sering disebut struktur navigasi bercabang, yaitu merupakan suatu struktur yang mengandalkan percabangan untuk menampilkan data atau gambar pada layer dengan kriteria tertentu. Tampilan pada menu utama disebut master page, halaman tersebut mempunyai halaman percabangan yang disebut slave page ( halaman pendukung ) dan jika dipilih akan menjadi halaman kedua, begitu seterusnya.
Gambar 2.5 Struktur Navigasi Hirarki
2.8.3 Struktur Navigasi Non Linear Struktur navigasi non linier ( tidak terurut ) merupakan pengembangan dari struktur navigasi linier, hanya saja pada struktur ini diperkenankan untuk membuat percabangan. Percabangan pada struktur non linier berbeda dengan percabangan pada struktur hirarki, pada struktur ini kedudukan semua page sama, sehingga tidak dikenal adanya master atau slave page.
Gambar 2.6 Struktur Navigasi Non Linear 2.8.4 Struktur Navigasi Campuran Sttruktur navigasi campuran ( composite ) merupakan gabungan dari struktur sebelumnya dan disebut juga struktur navigasi bebas, maksudnya adalah jika suatu tampilan membutuhkan percabangan maka dibuat percabangan. Struktur ini paling banyak digunakan dalam pembuatan aplikasi multimedia.
Gambar 2.7 Struktur Navigasi Campuran
Diagram UML. Diagram UML dibagi menjadi 8, diantaranya adalah : 1. Use Case Diagram.
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. 2. Class Diagram. Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. 3. Statechart Diagram. Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu (satu class dapat memiliki lebih dari satu statechart diagram). 4. Activity Diagram. Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Selain itu activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. 5. Sequence Diagram. Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Selain itu, sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkahlangkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan
output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. 6. Collaboration Diagram. Collaboration diagram juga menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-masing objek dan bukan pada waktu penyampaian message. Setiap message memiliki sequence number, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama.
7. Component Diagram. Component diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan (dependency) di antaranya. Komponen piranti lunak adalah modul berisi code, baik berisi source code maupun binary code, baik library maupun executable, baik yang muncul pada compile time, link time, maupun run time. Umumnya komponen terbentuk dari beberapa class dan/atau package, tapi dapat juga dari komponen-komponen yang lebih kecil. Komponen dapat juga berupa interface, yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain. 8. Deployment Diagram. Deployment physical diagram menggambarkan detail bagaimana komponen dideploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal . Sebuah node adalah server, workstation, atau piranti keras lain yang digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.
Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang ditekankan adalah "apa" yang diperbuat sistem, dan bukan "bagaimana". Sebuah use case merepresentasikan sebuah interaksi antara actor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang / sebuah actor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan system untuk melakukan pekerjaan-pekerjaan tertentu.
Gambar 2.8 Use Case Diagram Use case diagram dapat sangat membantu menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada sistem. Sebuah use case dapat menginclude fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang diinclude akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain. Class Diagram Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan ( atribut / property ) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut ( metoda / fungsi ). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok : 1. Nama ( dan stereotype ) 2. Atribut 3. Metoda Atribut dan metoda dapat memiliki salah satu sifat berikut :
Gambar 2.9 Class Diagram 1. Private, tidak dapat dipanggil dari luar class yang bersangkutan. 2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya. 3. Public, dapat dipanggil oleh siapa saja. Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki
metoda.
Interface
tidak
dapat
langsung
diinstansiasikan,
tetapi
harus
diimplementasikan dahulu menjadi sebuah class. Activity Diagram Activity diagrams menggambarkan berbagai alur aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alur berawal, decision yang mungkin terjadi dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan contoh class diagram, menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, dimana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya ( internal processing ). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem ( dan interaksi antar subsistem ) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
Gambar 2.10 Activity Diagram Sama seperti state, standar UML menggunakan segiempat dengan sudut membulat untuk menggambarkan aktivitas. Decision digunakan untuk menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses parallel ( fork dan join ) digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal. Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu. Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem ( termasuk pengguna, display, dan sebagainya ) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri antar dimensi vertikal ( waktu ) dan dimensi horizontal ( objek-objek yang terkait ). Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal.
Gambar 2.11 Sequence Diagram Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi / metoda dari class. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan
diterimanya sebuah message. Untuk objek-objek yang memiliki sifat khusus, standar UML mendefinisikan icon khusus untuk objek boundary, controller dan persistent entity.
METODE PENELITIAN
PEMBAHASAN Aplikasi pembelajaran berbasis mobile ini terdiri dari empat pembelajaran yang berbentuk kuis, yaitu kuis HTML, CSS, PHP dan MySQl. Pembelajaran berbasis mobile ini dibuat agar memudahkan orang-orang dalam mempelajari pembelajaran tersebut.
Dalam pembangunan suatu program ada langkah-langkah yang harus diikuti agar pembangunan program tersebut menjadi terarah. Langkah-langkah tersebut terdiri dari struktur navigasi, perancangan program/Storyboard, perancangan aplikasi, cara menggunakan aplikasi, uji coba dan implementasi.
Perancangan Navigasi Rancangan navigasi merupakan hal yang diperlukan di dalam proses pembuatan aplikasi yang terdapat di dalamsuatu aplikasi mobile. Perancangan navigasi digunakan untuk mengkomunikasikan kebutuhan user kedalam suatu desain untuk diisi dengan fitur-fitur aplikasi mobile. Sistem navigasi merupakan rancangan gambaran hubungan dan rantai kerja dari beberapa kerja atau beberapa area yang berbeda dan dapat membantu mengorganisasikan seluruh halaman dalam pemberian hyperlink.
Gambar 1. Sistem Navigasi User
Struktur navigasi non linier ( tidak terurut ) merupakan pengembangan dari struktur navigasi linier, hanya saja pada struktur ini diperkenankan untuk membuat percabangan. Percabangan pada struktur non linier berbeda dengan percabangan pada struktur hirarki, pada struktur ini kedudukan semua page sama, sehingga tidak dikenal adanya master atau slave page.
Sistem Navigasi Admin Struktur navigasi diatas merupakan struktur navigasi campuran (composite). Struktur navigasi composite merupakan gabungan dari struktur sebelumnya dan disebut juga struktur navigasi bebas, maksudnya adalah jika suatu tampilan membutuhkan percabangan maka dibuat percabangan
Perancangan Storyboard Dalam perancangan suatu program, diperlukan storyboard yang akan dijadikan pedoman dalam pembuatan program tersebut. Storyboard adalah pemetaan elemen-elemen multimedia dalam setiap layar program multimedia. Storyboard perlu mengandung nama program atau modul, nomor layar atau halaman, interaksi dan percabangan, gambar sketsa layar atau halaman beserta rincian obyek-obyek yang ada pada layar tersebut, misalnya teks, animasi, narasi, dan atribut pada masing-masing obyek beserta nilainya.
Storyboard User
Storyboard Admin Perancangan Sistem Perancangan sistem untuk membangun aplikasi ini menggunakan UML yang digunakan untuk merancang model sebuah sistem. Perancangan model sistem pada situs web ini digambarkan melalui beberapa diagram seperti : Use Case Diagram Pada diagram ini terdapat dua aktor yang merupakan pengguna sistem, yaitu user dan administrator. User memiliki use case, yaitu hanya dapat mengakses soal kuis. Aktor administrator memiliki use case untuk memelihara, mengelola kejadian yang terjadi selama sistem berlangsung. Selain itu aktor administrator juga memiliki use case menambah user dan soal, mengubah user dan soal, menghapus user dan soal.
Use Case Diagram
Activity Diagram Diagram activity administrator menggambarkan bahwa seorang administrator wajib melakukan otentikasi dengan melakukan login terlebih dahulu sebelum dapat mengelola data, apabila admin melakukan validasi dengan benar maka administrator dapat mengakses menumenu yang ada untuk mengelola segala yang berkaitan dengan kebutuhan yg diperlukan disis klient / Aplikasi. Setelah selesai, administrator harus keluar dengan melakukan logout.
Activity Diagram Administrator
Pada diagram activity user dibawah ini, apabila aplikasi ini di buka maka akan dihadapkan pada menu utama yang terdiri dari Begin to Learn, About dan Exit. Jika memilih Begin to Learn maka terdapat 4 pilihan jenis kuis. Pada pilihan tersebut dapat memulai melakukan kuis hingga mendapatkan hasil. Disini bisa melakukan kuis kembali karena terdapat tombol back atau apabila user ingin mengakhiri kuis dapat memilih tombol exit.
Activity Diagram User
Perancangan Database Perancangan database merupakan suatu perancangan yang bertujuan untuk menggambarkan struktur dan bagian-bagian dari suatu database. Dengan membuat rancangan database, relasi antar tabel juga akan terlihat. Dibawah ini merupakan rancangan database di dalam sistem pembelajaran interktif. Secara umum database aplikasi ini memiliki 2 tabel yang masing-masing tabelnya memiliki field tersendiri. Ke-2 tabel itu antara lain: Tabel admin Tabel ini digunakan untuk menyimpan username dan password yang digunakan untuk masuk kedalam halaman admin. Baik berstatus admin maupun user.
Field-field yang
dimiliki sebagai berikut : Tabel Admin Field
Type
Null
Extras
Id
Int(11)
No
Auto_in crement
Username Varchar(30)
Password
No
Varchar(10) No
Tabel soal Tabel yang digunakan untuk menyimpan sejumlah soal kuis berikut jawaban soal tersebut. Field-field yang digunakan sebagai berikut
Tabel Soal Field
Type
Null
Extras
id
Int(11)
No
Auto_increment
soal
Text
No
Pilihan_a
Varchar(100)
No
Pilihan_b
Varchar(100)
No
Pilihan_c
Varchar(100)
No
Jawaban
Varchar(1)
No
Type soal
Varchar(6)
No
Koneksi Database. Pada aplikasi pembelajaran interaktif ini menggunakan database MySQL. Untuk
berkomunikasi dengan server ada beberapa cara yang dapat kita tempuh yaitu melalui Http connection atau Native Socket Connection. Pada aplikasi ini fokus menggunakan Http Connection untuk menghubungkan aplikasi android dengan server. Dengan Http Connection artinya kita harus mempunyai web server. Dalam hal ini umunya Apache dan untuk format data standar antara aplikasi android dan server biasnya menggunakan XML, JSON. Pada aplikasi ini penulis menggunakan JSON. Berikut potongan konek.php yg berfungsi untuk koneksi database dan konekhtml.php mengubah data menjadi format JSON.
Pada script diatas bertujan untuk koneksi database MySQL yang datanya di konversi menjadi format JSON sebagai penghubung antar platform agar dapat dibaca. Pada gambar dibawah adalah bentuk format JSON dari data yang berada dalam database setelah dikonversi. Pada format inilah yang diakses oleh aplikasi Pembelajaran Interaktif. Berikut ini adalah hasil dari konversi data dalam bentuk JSON :
Tampilan JSON Di Server
Uji Coba. Setelah selesai membuat tampilan, kode koneksi database dan mengubah dalam forma JSON dalam Aplikasi pembelajaran interktif ini, berikut adalah langkah – langkah userannya: Install aplikasi Pembelajaran Interaktif pada ponsel anda. 1. Memilih dan membuka aplikasi tersebut yang telah diinstal pada ponsel anda.
Gambar 3.27 Tampilan Menu Handphone 2. Setelah dipilih maka tampilan pertama yang akan muncul ialah :
Gambar 3.28 Tampilan Menu Utama
3. Jika User memilih menu Begin to Learn pada layar menu utama, tampilan yang muncul adalah sebagai berikut :
Gambar 3.29 Tampilan Menu Pilih Kuis Pada tampilan ini user dapat memilih kuis yang ingin dipelajari. Pada aplikasi ini terdapat 4 jenis kuis yaitu kuis HTML, CSS, PHP dan MySQL. 4. Jika User memilih menu kuis salah satu kuis, misalnya HTML pada layar menu kuis, tampilan yang muncul adalah sebagai berikut :
Gambar 3.30 Tampilan Kuis HTML Pada tampilan kuis yang user pilih terdapat soal-soal kuis, pada aplikasi ini masingmasing kuis terdapat 10 soal yang di paging. 5. Jika User telah menyelesaikan semua soal akan menuju halaman hasil kuis yang terdapat nilai user dan laporan sukses atau tidaknya user dalam mengerjakan kuis tersebut, tampilan yang muncul adalah sebagai berikut :
Gambar 3.31 Tampilan Hasil Kuis Pada tampilan hasil kuis ini terdapat button back untuk kembali ke halaman menu kuis agar dapat user mencoba kuis kembali dan juga terdapat button exit untuk keluar aplikasi. 6. Jika User memilih menu About pada layar menu utama, tampilan yang muncul adalah sebagai berikut :
Gambar 3.32 Tampilan Menu About
PENUTUP Setelah menyelesaikan proses pembuatan Sistem pembelajaran Interktif Berbasis Mobile dengan menggunakan Android, maka penulis mengambil kesimpulan bahwa telah berhasil mengimplementasikan web service pada studi kasus
pembelajaran interaktif
berbasisi Android. Selain itu juga dapat mengetahui bagaimana membangun sebuah aplikasi untuk perangkat komunikasi bergerak ini dengan system operasi baru Android. Dalam perancangan aplikasi ini disadari masih banyak memiliki kekurangan. Maka dari itu perlu dikembangkan lagi misalnya dengan ditambahkan materi-materi kuis sebelum mengerjakan soal, countdown timer (waktu) dalam mengerjakan soal kuis, soal-soal lebih diperbanyak dan juga perlu ditambah efek supaya tampilan dalam aplikasi ini menjadi lebih menarik. Selain itu lebaih baik juga perangkat lunak yang digunakan untuk membangun aplikasi ini, diharapkan dijalankan pada spesifikasi komputer yang cukup memadai (System Requirementsi yang telah ditentukan pada software).
DAFTAR PUSTAKA Haseman, Chris.2008.Android Essential.Heidelberg:Appres.
Hashimi, Sayed Y and Satya Komatineni.2009.Pro Android.USA:Appres.
Meier, Reto. 2009. Professional Android Application Development. Indianapolis:Wiley Publishing Inc.
Murphy, Mark L.2008.The Busy Coder’s Guide to Android Development.USA:Commonsware.
Rogers, Rick and John Lombardo.2009. Android Application Development.USA: O'Reilly Media, Inc.
URL : http://developer.android.com Tanggal Akses : 22 Juni 2011.
URL : http://diskusiandroid.com Tanggal Akses : 10 Juli 2011