PENGENDALIAN LAMPU BERBASIS MIKROKONTROLERARDUINO DENGAN SMARTPHONEANDROID (PEMENGGALAN KALIMAT DALAM JUDUL DIPERHATIKAN) TUGAS AKHIR Disusun Oleh: RAHMAT AULIA NIM : A1314052 JURUSAN TEKNIK INFORMATIKA POLITEKNIK NEGERI TANAH LAUT PELAIHARI 2017 (COVER HALAM i DIHILANGKAN, TETAP DIHITUNG i, PERHTIKAN PENULISANNYA) i LEMBAR PENGESAHAN PENGENDALIAN LAMPU BERBASIS MIKROKONTROLER DENGAN SMARTPHONE ANDROID Oleh RAHMAT AULIA A1314052 Dipertahankan di depan Tim Penguji Diploma Tiga (D-3) Untuk Memenuhi syarat memperoleh gelar Ahli Madya (A.Md) Tanggal Ujian : 26 Mei 2017 Disetujui oleh: Dosen Penguji Dosen Pembimbing 1. 1. Muhammad Redhy Rizani, ST., MT. NIK. 120102069 2. Herpendi, M.Kom NIK. 160201151 2. Khairul Anwar Hafizd, M.Kom NIK. 150203104 Hendrik Setyo Utomo, ST., M.MSI NIK. 120102079 Mengetahui Direktur Politeknik Negeri Tanah Laut Kepala Jurusan Teknik Informatika Dr. Mufrida Zein, S.Ag, M.Pd NIP. 196806171997022004 Veri Julianto, M.Si NIP. 19900711 201504 1 001 ii PERSEMBAHAN 1. 2. 3. 4. Tugas Akhir (TA) ini dipersembahkan untuk: Kedua orang tua, kakak, adik, dan keluarga yang telah mendukung dan selalu memberi semangat dalam pengerjaan dan pembuatan tugas akhir. Dosen pembimbing 1 (satu) dan 2 (dua) yang telah membantu dan memberikan arahan dalam pembuatan Tugas Akhir (TA). Dosen Teknik Informatika yang telah memberikan pengajaran sehingga Tugas Akhir (TA) ini dapat selesai. Teman-teman satu angkatan yang telah membantu dan mendukung pembuatan Tugas Akhir (TA). iii PERNYATAAN KEASLIAN TUGAS AKHIR Dengan ini saya menyatakan bahwa isi sebagian maupun keseluruhan Tugas Akhir (TA) saya dengan judul “Pengendalian Lampu Berbasis MikrokontrolerArduino dengan SmartphoneAndroid” adalah benar-benar hasil karya intelektual mandiri, diselesaikan tanpa menggunakan bahan-bahan yang tidak diijinkan dan bukan merupakan karya pihak lain yang saya akui sebagai karya sendiri. Semua referensi yang dikutip maupun dirujuk telah ditulis secara lengkap pada daftar pustaka. Apabila ternyata pernyataan ini tidak benar, saya bersedia menerika sanksi sesuai peraturan yang berlaku. Pelaihari, Mei 2017 Rahmat Aulia NIM. A1314052 iv PENGENDALIAN LAMPU BERBASIS MIKROKONTROLERARDUINO DENGAN SMARTPHONEANDROID Oleh : Rahmat Aulia ABSTRAK Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android merupakan sebuah sistem yang digunakan untuk mengendalikan lampu dari jarak jauh maupun dekat, tanpa menyentuh saklar pada dinding rumah. Mikrokontroler sebagai alat pemprosesan dan Android sebagai jembatan penghubung ke Arduino serta berfungsi sebagai kendali lampu. Pengendalian dapat dilakukan dengan memasang aplikasi ke perangkat Android dan dengan memanfaatkan layanan SMS pada penyedia layanan telekomunikasi, jaringan nirkabel Bluetooth, serta dapat menggunakan Internet dengan antarmuka Web untuk dapat mengendalikan lampu. (PERMASALAHN BELUM TAMPAK DIDALAMNYA, SEBAB KENAPA KAMU AMBIL JUDUL INI?) Kata Kunci : Android, Arduino, Bluetooth, Lampu, SMS, Web v CONTROLLING LAMP BASED MICROCONTROLLER ARDUINO WITH SMARTPHONE ANDROID By : Rahmat Aulia ABSTRACT Controlling lamp based microcontroller arduino with smartphone android is a system for controlling lamp from long distance or near distance, without touch switch on wall house. Microcontroller is a device for processing and android is for bridge to the arduino also as control lamp device. Control can use with install application to Android device and with using SMS from telecommunication provider, bluetooth network, also can use Internet with web interface for control lamp. Keywords : Android, Arduino, Bluetooth, Lamp, SMS, Web vi KATA PENGANTAR Segala puji bagi Allah SWT yang telah memberikan penulis kemudahan sehingga dapat menyelesaikan laporan tugas akhir dengan waktu yang telah ditentukan. Tanpa pertolongan-Nya mungkin penulis tidak akan sanggup menyelesaikannya denga baik. Shalawat dan salam semoga terlimpah curahkan kepada baginda Nabi Muhammad SAW. Laporan ini disusun sebagai persyaratan kelulusan untuk memperoleh gelar Ahli Madya (A.Md) pada jenjang Diploma Tiga (D-3) Program Studi Teknik Informatika di Politeknik Negeri Tanah Laut. Laporan ini membahas “Pengendalian Lampu Berbasis MikrokontrolerArduinodengan Smartphone Android”. Penyusunan Tugas Akhir ini tidak lepas dari bimbingan, sumbangan pikiran dan dukungan berbagai pihak. Oleh karena itu pada kesempatan ini Penulis menyampaikan terimakasih kepada : 1. Ibu Dr. Mufrida Zein, S.Ag, M.Pd, selaku Direktur Politeknik Negeri Tanah Laut. 2. Bapak Veri Julianto, M.Si, selaku Kepala Jurusan Teknik Informatika Politeknik Negeri Tanah Laut. 3. Bapak Herpendi, M.Kom, selaku dosen pembimbing 1 jurusan Teknik Informatika Politeknik Negeri Tanah Laut. 4. Bapak Hendrik Setyo Utomo, ST. MMSI, selaku dosen pembimbing 2 jurusan Teknik Informatika Politeknik Negeri Tanah Laut. 5. Orang tua, kakak dan adik serta keluarga yang selalu memberikan motivasi, doa, moril, maupun materil kepada penulis dalam menyelesaikan Tugas Akhir. 6. Seluruh dosen, karyawan civitas akademika Politeknik Negeri Tanah Laut. 7. Seluruh teman-teman angkatan ke VI Politeknik Negeri Tanah Laut Jurusan Teknik Informatika 2014 yang telah memberikan bantuan dan semangat kepada Penulis. 8. Semua pihak yang telah membantu dan juga telah memberikan semangat untuk Penulis. vii Penulis menyadari bahwa dalam pembuatan laporan Tugas Akhir ini terdapat banyak kekurangan, maka dari itu Penulis mengharapkan kritik dan saran dari semua pihak yang bersifat membangun guna perbaikan yang akan datang. Semoga laporan Tugas Akhir yang telah dibuat ini mendatangkan manfaat bagi semua. Tanah Laut, 3 Mei 2017 Rahmat Aulia viii DAFTAR ISI HALAMAN JUDUL .......................................................................................... i LEMBAR PENGESAHAN ................................................................................ ii LEMBAR PERSEMBAHAN ............................................................................. iii LEMBAR PERNYATAAN KEASLIAN LAPORAN TUGAS AKHIR ........... iv ABSTRAK .......................................................................................................... v ABSTRACT ........................................................................................................ vi KATA PENGANTAR ......................................................................................... vii DAFTAR ISI ....................................................................................................... ix DAFTAR TABEL DAFTAR GAMBAR DAFTAR LAMPIRAN BAB I PENDAHULUAN .................................................................................... 1 1.1 Latar Belakang ............................................................................................. 1 1.2 Rumusan Masalah ........................................................................................ 2 1.3 Tujuan dan Manfaat ..................................................................................... 3 1.4 Batasan Masalah .......................................................................................... 3 BAB II TINJAUAN PUSTAKA ......................................................................... 4 2.1 Lampu Pijar ................................................................................................. 4 2.2 Mikrokontroler ............................................................................................ 4 2.3 Arduino ....................................................................................................... 5 2.4 Bluetooth ..................................................................................................... 5 2.5 Short Message Service (SMS) .................................................................... 5 2.6 Web ............................................................................................................. 6 2.7 HyperText Markup Language (HTML) ...................................................... 6 2.8 PHP (Hypertext Preprocessor) ................................................................... 6 2.9 CSS (Cascading Style Sheet) ..................................................................... 7 2.10 SQL .......................................................................................................... 7 2.11 Database ................................................................................................... 7 2.12 Java .......................................................................................................... 8 2.13 Android .................................................................................................... 8 2.14 XAMPP .................................................................................................... 8 ix 2.15 Eclipse ...................................................................................................... 8 2.16 Arduino IDE ............................................................................................. 9 x DAFTAR TABEL xi DAFTAR GAMBAR xii DAFTAR LAMPIRAN xiii BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi saat ini mendorong manusia untuk terus berpikir kreatif, tidak hanya menggali penemuan-penemuan baru, tapi juga memaksimalkan kinerja teknologi yang ada untuk meringankan kerja manusia dalam kehidupan sehari-hari,misalnya teknologi pada alat-alat elektronik yang memiliki banyak varian (KATA VARIAN SUDAH BAKU BLM DALAM BHS INDONESIA)? dan beragam fungsi berbeda-beda yang berguna untuk membantu pekerjaan manusia maupun membuat manusia nyaman pada tempat tinggalnya. Banyak alat elektronik yang dikendalikan dengan remote pada saat ini seperti remote pada televisi, AC (AirConditioner), dan kipas angin. (BERIKAN DATA TENTANG TEKNOLOGI SEMAKIN BERKEMBANG, SEHINGGA TIDAK HANYA OMONGAN BELAKA DAN JANGAN LUPA REFERENSINYA) Pengendalian alat elektronik dengan menggunakan remote sudah banyak digunakan seperti pada televisi yang berguna untuk menyalakan televisi, mengganti channel, menambah ataupun mengurangi volume suara. Dimana (DIHILANGKAN) pengendalian televisi menggunakan remote sangat membantu dalam mengoperasikan televisi tanpa menyentuh televisi secara langsung dan hanya dengan menekan tombol pada remote, serta sangat membantu orang yang sudah tua (lansia) maupun yang memiliki keterbatasan fisik. , sehingga mereka tidak kesusahan dalam mengendalikan televisi (DIGHILANGKAN). (RASANYA NDAK NYAMBUNG DENGAN JUDUL YANG KAMU ANGKAT DENGAN REMOTE, COBA BERIKAN PERNYATAAN YANG RASIONAL DAN BERIKAN DATA ATAU REFERENSI YANG TERBARU) Pengendalian secara tidak menyentuh langsung sangat dibutuhkan sekarang, seperti pengendalian pada televisi menggunakan remote tersebut sangat membantu bagi banyak orang juga membantu para orang yang sudah tua (lansia) maupun yang memiliki keterbatasan fisik (KALIMAT INI TERULANG DIPARAGRAF SEBELUMNYA, DIGANTI KALIMAT YANG LAINNYA, SEHINGGA TIDAK MENGURANGI MAKNANYA!!).Namun untuk dapat 1 lebih membantu para lansia ataupun yang memiliki keterbatasan fisik tersebut,maka diperlukan suatu alat kendali yang dapat mengendalikan suatu perangkat elektronik, agar para lansia ataupun yang memiliki keterbatasan fisik tidak bersentuhan langsung dengan alat elektronik tersebut. (PERMASALAHAN DI PARAGRAF INI TIDAK MENCERMINKAN KENAPA DENGAN SMARTPHONE), RASIONAL, LEBIH BAIK MISALNYA : DENGAN LUPA ALASAN UNTUK YANG LEBIH MEMATIKAN ALAT ELEKTRONIK KARENA TERGESA-GESA, TIDAK DAPAT MEMANTAU PERALATAN ELEKTORINIK DIRUMAH, DLL) UNGKAPKAN LEBIH RASIONAL BUAT SATU PARAGRAF UNTUK MEMBERIKAN SOLUSI DARI PERMASALAHAN YANG TELAH DIUNGKAPKAN DENGAN ADANYA SMARTPHONE, DLL. JELASKAN LEBIH RINCI. Salah satunya seperti pengendalian lampu dengan menggunakan smartphone marak ini banyak yang mengemplementasikannya pada rumah ataupun masih dalam tahap prototype, salah satu produsen smartphone juga meliris lampu yang dapat dikendalikan dengan smartphone. Namun lampu yang dirilis produsen smartphone tersebut masih memiliki batasan dalam pengendaliannya yaitu hanya dapat dikendalikan didekat lampu tersebut. Penulis tertarik untuk membangun sistem yang dapat mengendalikan lampu dari jarak yang jauh, dengan menggunakan mikrokontroler Arduino sebagai perangkat keras untuk dapat mengendalikan lampu dan juga ditambah komponenkomponen yang dapat menghubungkan smartphone Android dengan mikrokontroler Arduino. Berdasarkan penjelasan tersebut maka penulis tertarik mengangkat judul “Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android” sebagai judul Tugas Akhir penulis. 1.2 Rumusan Masalah Berdasarkan latar belakang yang telah disampaikan, dapat dibuat rumusan masalah yaitu: 1. Bagaimana menganalisis masalah pada lampu yang menggunakan saklar untuk menyalakan dan mematikan lampu? 2 2. Bagaimana membangun basis data aplikasi website untuk Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android? 3. Bagaimana merancang sistem dan membangun antarmuka aplikasi Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android? 4. Bagaimana membangun program aplikasi Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android? 5. Bagaimana pengujian program Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android? 6. Bagaimana mengimplementasikan Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android? 7. TAMBAHKAN BAGAIMANA MERANGKAI ALAT MENJADI SATU KESATUAN YANG UTUH, (PERBAIKI KALIMAT INI) 3 1.3 Tujuan dan Manfaat(PISAHKAN ANTARA TUJUAN DAN MANAFAAT, SEHINGGA JELAS TUJUAN DAN MANFAATNYA) DAN TUJUAN MELIHAT DARI RUMUSAN MASLAH KAMU!!! Tujuan dan manfaat yang ingin dicapai dari penulisan laporan ini adalah: 1. Menganalisis masalah pada lampu yang menggunakan saklar untuk menyalakan dan mematikan lampu. 2. Membangun basis data aplikasi website untuk Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android. 3. Merancang sistem dan membangun antarmuka aplikasi Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android. 4. Membangun program aplikasi Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android. 5. Pengujian program Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android. 6. Mengimplementasikan Pengendalian Lampu Berbasis Mikrokontroler Arduino dengan Smartphone Android. 7. Mempermudah para pekerja dan para ibu rumah tangga yang memiliki aktifitas yang banyak. 8. Membantu orang yang sudah tua (lansia), orang yang sakit maupun yang memiliki keterbatasan fisik. 9. Mengendalikan lampu dari jarak yang dekat dapat melalui aplikasi android dengan jaringan bluetooth. 10. Mengendalikan lampu dari jarak yang jauh dapat melalui aplikasi android, layanan SMS serta website. 1.4 Batasan Masalah Batasan masalah perlu dilakukan agar pembahasannya tidak meluas sehingga lebih terarah dan sesuai dengan yang diharapkan, batasan masalahnya adalah: 1. Pengendalian yang dilakukan hanya terkait dengan lampu (MEMANGNA TIDAK BISA DENGAN LAMPU?, MISAL STOPKONTAK ATAU LAINNYA). 4 2. Pengendalian yang dilakukan adalah untuk menyalakan/mematikan lampu menggunakan smartphone android dengan memanfaatkan fasilitas bluetooth, SMS, dan website. 3. Pengendalian yang dilakukan hanya menggunakan mikrokontroler Arduino dengan komponen modul-modul yang dibutuhkan sesuai dengan latar belakang. 4. TAMBAHKAN, PRODUK YANG DIHASILKAN DALAM PRODUK PROTOTYPE, BELUM SIAP DIPRODUKSI. 5 BAB II TINJAUAN PUSTAKA 2.1 Lampu Pijar Lampu pijar adalah sumber cahaya buatan yang dihasilkan melalui penyaluran arus listrik melalui filamen yang kemudian memanas dan menghasilkan cahaya. Kaca yang menyelubungi filamen panas tersebut menghalangi udara untuk berhubungan dengannya sehingga filamen tidak akan langsung rusak akibat teroksidasi. Lampu pijar dipasarkan dalam berbagai macam bentuk dan tersedia untuk tegangan (voltase) kerja yang bervariasi dari mulai 1,25 volthingga 300 volt. Energi listrik yang diperlukan lampu pijar untuk menghasilkan cahaya yang terang lebih besar dibandingkan dengan sumber cahaya buatan lainnya seperti lampu pendar dan diode cahaya, maka secara bertahap pada beberapa negara peredaran lampu pijar mulai dibatasi. Di samping memanfaatkan cahaya yang dihasilkan, beberapa penggunaan lampu pijar lebih memanfaatkan panas yang dihasilkan, contohnya adalah pemanas kandang ayam, dan pemanas inframerah dalam proses pemanasan di bidang industri (Wikipedia, 2010). CARI REFFERENSI YANG LAIN, DATANYA KURANG VALID DIWIKIPEDIA. (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.2 Mikrokontroler Mikrokontroler atau kadang dinamakan pengontrol tertanam(embedded controller) adalah suatu sistem yang mengandung masukan/keluaran, memori, dan processor, yang digunakan pada produk seperti mesin cuci, pemutar video, mobil dan telepon. Pada prinsipnya, mikrokontroler adalah sebuah komputer berukuran kecil yang dapat digunakan untuk mengambil keputusan, melakukan hal-hal yang bersifat berulang, dan dapat berinteraksi dengan piranti-piranti eksternal, seperti sensor ultrasonik untuk mengukur jarak terhadap suatu objek, penerima GPS untuk memperoleh data posisi kebumian dari satelit, dan motor untuk mengontrol gerakan pada robot. Sebagai komputer kecil, mikrokontroler cocok diaplikasikan pada benda-benda yang berukuran kecil, misalnya sebagai pengendali pada 6 QuadCopter ataupun robot(Kadir, 2014). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.3 Arduino Arduino merupakan perangkat keras sekaligus perangkat lunak yang memungkinkan siapa saja melakukan pembuatan prototipe suatu rangkaian elektronika yang berbasis mikrokontroler dengan mudah dan cepat. Secara lebih khusus, papan Arduino berbasis mikrokontroler yang dikeluarkan oleh perusahaan Atmel. Sebagai contoh, Arduino Uno menggunakan mikrokontroler Atmega328P. Perlu diketahui, saat ini istilah Arduino Uno digunakan untuk produk yang dikeluarkan di Amerika Serikat, sedangkan Genuino Uno untuk produk yang dipasarkan diluar Amerika Serikat (Kadir, 2016). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.4 Bluetooth Bluetooth adalah sebuah nama produk industri komunikasi yang diperuntukkan bagi Personal Area Networks (PAN). Nama Bluetooth diambil dari nama seorang raja, Harald Bluetooh, pada abad ke-X yang berhasil mempersatukan Denmark dan Norwegia. Dengan mengusung nama tersbut, teknologi Bluetooth diharapkan dapat menghubungkan berbagai macam perangkat komunikasi untuk dapat melakukan pertukaran informasi, misalnya mobile phone (perangkat telepon genggam), komputer dan notebook, printer, perangkat GPS, kamera digital, perangkat video game seperti perangkat permainan Wii yang dibuat oleh Nintendo dan Play Station 3 yang dibuat oleh Sony. Gelombang radio yang digunakan adalah short-range radio frequency tanpa lisensi. Artinya untuk menggunakan teknologi Bluetooth tidak dibutuhkan lisensi khusus untuk pemanfaatan jalur frekuensi. Jarak jangkau dari gelombang radio hanya mencapai antara 1m sampai 100m, karena itu disebut sebagai shortrange. Standar dari Bluetooth dibuat oleh Bluetooth Special Interest Group (Jusak, 2012). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.5 Short Message Service(SMS) 7 Short Message Service (SMS)adalah salah satu komunikasi teks melalui telepon seluler. SMS merupakan salah satu media yang paling banyak digunakan saat ini. Selain murah, prosesnya juga berjalan cepat dan langsung sampai pada tujuan, tetapi selama ini SMS baru digunakan sebatas untuk mengirim dan menerima pesan antara sesama pemilik telepon seluler . Kemudahan penggunaan, variasi layanan, dan promosi yang cukup gencar dari operator seluler menjadikan SMS sebagai layanan yang sangat populer di masyarakat khususnya kalangan mahasiswa (Smith, 2011). Seiring dengan perkembangan teknologi dan kreativitas operator dan service provider, layanan SMS yang mulanya hanya untuk saling kirim pesan antara subscriber, kini berkembang dan lebih variatif, seperti layanan jajak pendapat, ringtone, SMS premium, mobile banking, ticketing dan layanan pendidikan. SMS menjadi bagian yang tidak terpisahkan dari perkembangan informasi dan komunikasi(Dewanto, 2011). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.6Web Web merupakan representasi sebuah halaman di internet yang menyajikan berbagai macam informasi. Halaman-halaman tersebut merupakan dokumen yang tersebar di beberapa komputer di seluruh dunia yang terhubung satu sama lain. File dokumen tersebut dapat berisi bahasa pemrograman (HTML, PHP, CSS, Javascript), file gambar, suara dan sebagainya, tersimpan pada server online (hosting) dan mmpunyai alamat yang spesifik (domain) yang dapat diakses melalui sebuah web browser (Utomo, 2013). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.7HyperText Markup Language (HTML) HTML kependekan dari Hyper Text Markup Language. Dokumen HTML adalah file text murni yang dapat dibuat dengan editor text sembarang. Dokumen ini dikenal sebagai web page. Dokumen HTML merupakan dokumen yang disajikan dalam browser web surfer. Dokumen ini umumnya berisi informasi atau interface aplikasi didalam internet(Sidik, 2014). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 8 2.8PHP (Hypertext Preprocessor) PHP merupakan singkatan dari PHP Hypertext Preprocessor. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server. Hasilnyalah yang dikirimkan ke klien, tempat pemakai menggunakan browser. Secara khusus, PHP dirancang untuk membentuk aplikasi web dinamis. Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini. Misalnya, Anda bisa menampilakan isi database ke halaman web. Pada prinsipnya PHP mempunyai fungsi yang sama dengan skrip-skrip seperti ASP (Active Server Page), Cold Fusion, ataupun Perl. Namun perlu diketahui bahwa PHP sebenarnya bisa dipakai secara command line. Artinya, skrip PHP dapat dijalankan tanpa melibatkan web server maupun browser (Kadir, 2008). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.9CSS (Cascading Style Sheet) World Wide Web Consortium membuat sebuah standar format ekstensifikasi HTML yang disebut dengan style. Dengan style ini, anda dapat mengatur besar kecilnya huruf yang digunakan, jenis huruf, warna border, ukuran border, dan atribut yang lain. File penyimpanan style ini dikenal sebagai Cascading Style Sheet (CSS). CSS merupakan file yang ditambahkan ke dalam Web untuk mengatur style Web agar terlihat seragam. Hampir semua programmer Web sekarang menggunakan file CSS karena memudahkan programmer ketika harus mengubah keseluruhan atau sebagian tampilan pada Web (Utomo, 2013). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.10SQL SQL merupakan singkatan dari Structured Query Language. Bahasa ini didasarkan pada bahasa inggris dan digunakan dalam database seperti MySQL, Oracle, dan Microsoft SQL Server. Bahasa ini dirancang untuk memungkinkan permintaan sederhana dari database melalui perintah seperti : SELECT judul FROM publikasi Where penulis = ‘Rendara’;. Sebuah database berisi satu tabel atau lebih, yang masing-masing berisi catatan atau baris. Dalam baris-baris ini terdapat berbagai kolom atau field yang 9 berisi data (Enterprise(APA BENAR REFF INI?), 2015). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.11Database Database adalah sebuah sistem yang berfungsi untuk menyimpan dan mengolah sekumpulan data. Setiap database mempunyai API tertentu untuk membuat, mengakses, mengatur, mencari dan menyalin data yang ada didalamnya sehingga bisa dimanfaatkan oleh aplikasi lainnya (Enterprise, 2015). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.12Java Java adalah suatu jenis teknologi pemrograman yang dikembangkan oleh Sun Microsystem. Teknologi Java dapat digunakan untuk pembuatan aplikasi database, web, jaringan ataupun grafis. Java merupakan bahasa pemrogrman yang sangat andal. Keandalannya ini terbukti sesuai dengan slogannya yaitu “Write Once Run Everywhere” yang mana penulisan kode program dalam bahasa Java dapat dijalankan pada berbagai sistem operasi dan berbagai platform tanpa bergantung pada arsitektur komputer yang digunakan asalkan ada mesin penerjemah bahasa Java yang disebut dengan JavaVirtual Machine atau JVM sehingga lebih praktis untuk diterapkan (Komputer, 2012). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.13Android Androidadalah sistem operasi berbasis Linux yang dimodifikasi untuk perangkat bergerak (mobile devices) yang terdiri dari sistem operasi, middleware, dan aplikasi-aplikasi utama. Awalnya, Android dikembangkan oleh Android Inc. Perusahaan ini kemudian dibeli oleh Google pada tahun 2005. Sistem operasi Android kemudian diluncurkan bersamaan dengan dibentuknya organisasi Open Handset Alliance tahun 2007. Selain Google, beberapa nama-nama besar juga ikut serta dalam Open Handset Alliance, antara lain Motorola, Samsung, LG, Sony 10 Ericsson, T-Mobile, Vodafone, Toshiba, Intel (Zamroni, 2016). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.14XAMPP XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program. Fungsinya adalah sebagai server yang terdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan pemprograman PHP dan Perl (Indriyanti, 2015). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.15Eclipse Eclipse adalah perangkat pengembangan aplikasi yang tergolong sebagai IDE (integrated development environment), karena menyediakan berbagai fasilitas untuk pembuatan aplikasi. Perangkat lunak ini dapat digunakan sebagai peranti pengembangan aplikasi yang menggunakan bahasa seperti Java, C++ dan Phyton (Kadir, 2013). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.16 Arduino IDE Arduino IDE adalah tool yang bermanfaat untuk menuliskan program (yang secara khusus dinamakan sketsa di Arduino), mengompilasinya, dan sekaligus mengunggahnya ke papan Arduino(Kadir, 2016). (BERIKAN CONTOH SEDIKIT MENGENAI SUBBAB INI) 2.17 Analisis Perancangan Terstruktur 2.17.1 Entity Relationship Diagram (ERD) Menurut Rosa dan Shalahuddin (2013), Entity Relationship diagram (ERD) merupakan pemodelan awal basis data yang paling banyak digunakan. ERD dikembangkan berdasarkan teori himpunan dalam bidang matematika. ERD digunakan untuk pemodelan basis data relasional. Adapun komponen penyusun ERD adalah sebagai berikut : Tabel 2.1 Komponen Penyusun ERD Notasi Keterangan 11 Entitas, yaitu kumpulan dari objek yang dapat diidentifikasi secara unik. Relasi, yaitu hubungan yang terjadi antara satu atau lebih entitas. Atribut, yaitu karakteristik dari relasi yang merupakan penjelasan detail tentang entitas. Garis, hubungan antara entity dengan atributnya dan himpuna entitas dengan himpunan relasi. Input atau output data, Proses input atau output data, parameter, informasi. Sumber: (Rosa dan Shalahuddin, 2013) 2.17.2 Conceptual Data Model (CDM) Menurut Rosa dan Shalahuddin (2013), CDM (Conceptual Data Model) atau model konsep data merupakan konsep yang berkaitan dengan pandangan pemakai terhadap data yang disimpan dalam basis data. CDM dibuat sudah dalam bentuk tabel-tabel tanpa tipe data yang menggambarkan relasi antar tabel untuk keperluan implementasi ke basis data. Berikut adalah simbol-simbol yang ada pada CDM: Tabel 2.2 Simbol-Simbol Pada CDM Simbol Entitas/Tabel Nama_tabel Relasi 1..* Deskripsi Entitas atau tabel yang menyimpan data dalam basis data. Relasi antar tabel yang terdiri atas nama relasi dan multiplicity. Nama relasi 1..* Sumber: (Rosa dan Shalahuddin, 2013) 2.17.3 Physical Data Model (PDM) 12 Menurut Rosa dan Shalahuddin (2013), Model Relasional atau Physical Data Model (PDM) adalah model menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersbut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik beserta tipe datanya. PDM merupakan konsep yang menerangkan detail dari bagaimana data disimpan didalam basis data. Berikut adalah simbol-simbol yang ada pada PDM: Tabel 2.3 Simbol-Simbol Pada PDM Simbol Tabel Deskripsi Tabel yang menyimpan data dalam basis data. Nama_tabel Relasi Relasi antar tabel yang terdiri dari persamaan antara primary key (kunci primer) tabel yang Id_tbl1 = id_fk_tbl2 diacu dengan kunci yang menjadi referensi acuan ditabel lain. Sumber: (Rosa dan Shalahuddin, 2013) 13 2.17.4 Flowchart Flowchart merupakan suatu diagram yang menggambarkan alur kerja suatu sistem (Saputra, 2012). Tabel 2.4 Komponen Penyusun Flowchart Simbol Nama Fungsi Terminator Permulaan atau akhir program Garis Alir(Flowline) Arah aliran program Preparation Proses inisialisasi / pemberian harga awal Proses Proses perhitungan / proses pengolahan data Input/Output Data Proses input / output data, parameter, informasi Predefined Process (Sub Program) Permulaan sub program / proses menjalankan sub program Decision Perbandingan pernyataan, penyeleksian data yang memberikan pilihan untuk langkah selanjutnya Onepage Terminator Perhubungan bagian bagian flowchart yang berada pada satu halaman Off Page Perhubungan bagian bagian flowchart yang berbeda halaman Display Simbol ini menyatakan peralatan output yang digunakan. Sumber : (Rosa dan Shalahuddin, 2013) 2.17.5Pengertian UML Pada perkembangan teknik pemograman berorientasi objek, munculah sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yang dibangun dengan menggunakan teknik pemograman berorientasi objek yaitu Unified Modeling Language (UML). UML muncul karena adanya kebutuhan pemodelan visual untuk menspesifikasikan, menggambarkan, membangun, dan dokumentasi dari sistem perangkat lunak. UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung(Rosa dan Shalahuddin, 2013). 14 2.17.5.1 Use Case Diagram Diagram use case merupakan pemodelan untuk kelakuan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Syarat penamaan pada use case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case : 1. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum merupakan orang. 2. Use case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antarunit atau aktor. Tabel 2.6 Simbol-Simbol pada Diagram Use Case Simbol Use case Nama Use Case Deskripsi Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau faktor; biasanya dinyatakan dengan menggunakan kata kerja di awal frase nama use case. Orang, proses, atau sistem lain yang berinteraksi dengan Aktor sistem informasi yang akan di buat di luar sistem informasi yang akan di buat itu sendiri, jadi walaupun simbol dari actor Simbol Deskripsi adalah gambar orang, tapi actor belum tentu merupakan orang; biasanya di nyatakan menggunakan kata benda di awal frase nama actor. Nama Aktor Asosiasi/association Komunikasi antar actor dan use case yang berpartisipasi pada use case atau memiliki interaksi dengan actor. Relasi use case tambahan ke sebuah use case dimana use case Extensi «extends» yang di tambahkan dapat berdiri sendiri walau tanpa use case tambahan itu; mirip dengan prinsip inheritance pada pemograman berorientasi onjek; biasanya use case tambahan memiliki nama depan yang sama dengan use case yang 15 ditambahkan. Menggunakan/Include/uses <<Include>> Relasi use case tambahan kesebuah use case di mana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat diajalankan use case ini. Ada dua sudut pandang yang cukup besar mengenai includeuse case : 1. include berarti use case yang ditambahkan akan selalu dipanggil saat use case tambahan dijalankan, missal sebagai berikut: validasi username <<Include>> login 2. include berarti use case yang tambahan akan selalu melakukan ditambahkan pengecekan telah apakah dijalankan use sebelum case use yang case tambahan dijalankan, misal pada kasus berikut: validasi user <<Include>> ubah data Generalisasi/generalization Hubungan generalisasi dan spesialisasi (umum-khusus) antara dua buah use case di mana fungsi yang satu adalah fungsi yang lebih umum dari yang lainnya. Arah panah mengarah pada use case yang menjadi generalisasinya (umum). Sumber: (Rosa dan Shalahuddin, 2013) 2.17.5.2 Class Diagram (Diagram Kelas) Diagram kelas menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan menggambarkan sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. 1. Atribut merupakan variable-variabel yang dimiliki oleh suatu kelas. 2. Operasi atau metode adalah fungsi- fungsi yang dimiliki oleh suatu kelas. 3. Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem. Susunan struktur kelas yang baik pada. Diagram kelas sebaiknya memiliki jenis-jenis berikut: 16 1. Kelas main merupakan kelas yang memiliki fungsi awal dieksekus ketika sistem dijalankan. 2. Kelas yang menangani tampilan sistem merupakan kelas yang mengatur dan mendefinisikan tampilan ke pemakai. 3. Kelas yang diambil dari pendefinisian use case merupakan kelas yang menangani fungsi-fungsi yang harus ada di ambil dari pendefinisian use case. 4. Kelas yang diambil dari pendefinisian data merupakan kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data. Susunan kelas juga dapat ditambahkan kelas utilitas seperti koneksi ke basis data, membaca file teks, dan lain sebaginya sesuai kebutuhan. Tabel 2.7 Simbol-Simbol pada Diagram Kelas Simbol Deskripsi Kelas pada struktur sistem Kelas nama_kelas -atribut +operasi() Antarmuka / interface Interface1 Asosiasi / association Sama dengan konsep interface dalam pemograman berorientasi objek Relasi antar kelas dengan makna umum, asosiasi biasanya juga dsertai dengan multiplicity Assosiasi berarah Relasi antar kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, assosiasi biasanya juga dsertai dengan multiplicity Generalisasi Relasi antar kelas dengan makna generalisasispesialisasi (umum-khusus) Kebergantungan Relasi antar kelas dengan makna kebergantungan antar kelas Sumber: (Rosa dan Shalahuddin, 2013) 17 2.17.5.3Object Diagram (Diagram Objek) Diagram objek menggambarkan struktur sistem dari segi penamaan objek dan jalannya objek dalam sistem. Pada diagram objek harus dipastikan semua kelas yang sudah didefinisikan pada diagram kelas harus dipakai objeknya, karena jika tidak, pendefinisian kelas itu tidak dapat dipertanggungjawabkan. Tabel 2.8 Simbol-Simbol pada Diagram Objek Simbol Deskripsi Objek Objek dari kelas yang berjalan saat sistem dijalankan. Nama_objek : nama_kelas Atribut=nilai Link Relasi antar objek Sumber: (Rosa dan Shalahuddin, 2013) 2.17.5.4 Sequence Diagram (Diagram Sekuen) Diagram sekuen menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan massage yang dikirimkan dan diterima antarobjek. Oleh karena itu untuk menggambar diagram sekuen maka harus diketahui objek – objek yang terlihat dalam sebuah use case beserta metode – metode yang dimiliki kelas yang diinstasiasi menjadi objek itu. Banyaknya diagram sekuen yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada diagram sekuan sehingga semakin banyak use case yang didefinisikan maka diagram skuen yang harus dibuat juga semakin banyak. Tabel 2.9 Simbol-Simbol pada Diagram Sekuen Simbol Deskripsi Orang, proses, atau sistem lain yang berinteraksi dengan Actor sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari actor adalah gambar orang, tapi actor belum tentu merupakan orang; Actor1 biasanya dinyatakan menggunakan kata benda di awal frase nama actor. Garis hidup / lifeline Menyatakan kehidupan suatu objek 18 Waktu aktif Menyatakan objek dalam keadaan aktif dan berinteraksi pesan. Objek Menyatakan kehidupan suatu objek. Pesan tipe create Menyatakan suatu objek membuat objek yang lain, arah panah <<create>> Pesan tipe call 1: nama_methode() Pesan tip send 1: masukan mengarah pada objek yang dibuat. Menyatakan suatu objek memanggil operasi / metode yang ada pada objek lain atau dirinya sendiri. Menyatakan bahwa suatu objek mengirimkan data / masukan / informasi ke objek lainnya, arah panah mengarah pada objek yang dikirimi. Pesan tipe return Menyatakan bahwa suatu objek yang telah menjalankan suatu operasi atau metode menghasilkan suatu kembalian ke objek Simbol return Deskripsi tertentu, arah panah mengarah pada objek yang menerima kembakian. 1: keluaran Pesan tipe destroy <<destroy>> Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang diakhiri, sebaiknya jika ada create maka ada destroy. Sumber: (Rosa dan Shalahuddin, 2013) 19 2.17.5.5 Communicarion Diagram (Diagram Komunikasi) Diagram komunikasi adalah penyederhanaan dari diagram kolaborasi. Diagram komunikasi sebenernya diagram kolaborasi tetapi dibuat untuk setiap sekuen. Diagram komunikasi menggambarkan interaksi antar objek/bagian dalam bentuk urutan pengiriman pesan. Tabel 2.10 Simbol-Simbol pada Diagram Komunikasi Simbol Deskripsi Objek Objek yang melakukan interaksi pesan nama_objek : nama_kelas Link Relasi antar objek yang menghubungkan objek satu dengan lainnya atau dengan dirinya sendiri Arah pesan/stimulus Arah pesan yang terjadi, jika pada suatu link ada dua arah pesan yang berbeda maka arah juga digambarkan dua arah pada dua sisi link Sumber: (Rosa dan Shalahuddin, 2013) 2.17.5.6 State Machine Diagram (Diagram Status) Diagram status digunakan untuk menggambarkan perubahan status atau transisi status dari sebuah mesin atau objek suatu sistem. Jika diagram sekuen digunakan untuk interaksi antar objek maka diagram status digunakan untuk interaksi di dalam sebuah objek. Perubahan tersebut digambarkan dalam suatu graf berarah. Tabel 2.11 Simbol-Simbol pada Diagram Status Simbol Deskripsi Status awal Start atau initial state adalah state atau keadaan awal pada saat sistem mulai hidup Status akhir End atau finalstate adalah state atau keadaan akhir dari daur hidup suatu sistem Event Event adalah kegiatan yang menyebabkan berubahnya Event status mesin 20 State State atau status adalah keadaan sistem pada waktu State tertentu. State dapat berubah jika ada event tertentu yang memicu perubahan tersebut Sumber: (Rosa dan Shalahuddin, 2013) 2.17.5.7Activity Diagram (Diagram Aktivitas) Diagram aktivitas menggambarkan workflow (aliran kerja) atau aktifitas dari sebuah sistem atau proses bisnis. Perlu diperhatikan bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut : 1. Rancangan proses bisnis di mana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan. 2. Urutan atau pengelompokkan tampilan dari sistem/user interface di mana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan. 3. Rancangan pengujian di mana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya. Tabel 2.12 Simbol-Simbol pada Diagram Aktivitas Simbol Status awal Deskripsi Statua awal aktivitas sistem, sebuah diagram aktivitas memiliki sebuah status awal. Aktivitas Aktivitas yang dilakukan sistem, aktivitas biasanya diawali dengan kata kerja. Decision/percabangan Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu. Status akhir Status akhir yang dilakukan sistem, sebuah diagram aktivitas memiliki status akhir. 21 Swimline Memisahkan organisasi bisnis yang bertanggung jawab terhadap aktivitas yang terjadi. Sumber: (Rosa dan Shalahuddin, 2013) 2.17.5.8 Component Diagram (Diagram Komponen) Diagram komponen dibuat untuk menunjukan organisasi dan ketergantungan di antara kumpulan komponen dalam sebuah sistem. Diagram komponen fokus pada komponen sistem yang dibutuhkan dan ada di dalam sistem. Diagram komponen juga dapat digunakan untuk memodelkan hal-hal berikut : 1. Source code program perangkat lunak. 2. Komponen executable yang dilepas ke user. 3. Basis data secara fisik. 4. Sistem yang harus beradaptasi dengan sistem lain. 5. Framework sistem, framework pada perangkat lunak merupakan kerangka kerja yang dibuat untuk memudahkan pengembangan dan pemeliharaan aplikasi, contohnya seperti Struktur dari Apache yang menggunakan prinsip desain Model-View-Controller (MVC) di mana source code program dikelompokkan berdasarkan fungsinya. Komponen dasar yang biasanya ada dalam suatu sistem adalah sebagai berikut: 1. Komponen userinterface yang menangani tampilan 2. Komponen business processing yang menangani fungsi – fungsi proses bisnis. 3. Komponen data yang menangani manipulasi data. 4. Komponen security yang menangani keamanan sistem. 5. Komponen lebih terfokus pada penggolongan secara umum fungsi – fungsi yang diperlukan. 22 Tabel 2.13 Simbol-Simbol pada Diagram Komponen Simbol Package Deskripsi Package merupakan sebuah bungkusan dari satu atau lebih komonen Package1 Komponen Komponen sistem Component1 Ketergantungan Ketergantungan antar komponen, arah panah mengarah pada komponen yang dipakai Antarmuka Sama dengan konsep interface pada pemograman ⃝ nama_interface berorientasi objek, yaitu sebagai antarmuka komponen agar tidak mengakses langsung komponen Sumber: (Rosa dan Shalahuddin, 2013) 2.17.5.9 Deployment Diagram (Diagram Deployment) Diagram deployment menunjukan konfigurasi komponen dalam proses eksekusi aplikasi. Diagram deployment juga dapat digunakan untuk memodelkan hal-hal berikut: 1. Sistem tambahan (embedded system) yang menggambarkan rancangan device, node, dan hardware. 2. Sistem client / server 3. Sistem terdistribusi murni 4. Rekayasa ulang aplikasi Tabel 2.14 Simbol-Simbol pada Diagram Deployment Simbol Package Deskripsi Package merupakan sebuah bungkusan dari satu atau lebih node. Package Node Biasanya mengacu pada perangkat keras (hardware), perangkat lunak yang dibuat sendiri (software), disertakan jika di komponen dalam node untuk mengkonsistenkan rancangan maka komponen yang diikutsertakan harus sesuai dengan 23 komponen nama_node Kebergantungan / dependency yang telah didefinisikan sebelumnya pada diagram komponen. Kebergantungan antar node, arah panah mengarah pada node yang dipakai. Link Relasi antar node Sumber: (Rosa dan Shalahuddin, 2013) 24 BAB III METODE PENELITIAN 3.1 Kerangka Penelitian Gambar 3.1Kerangka Penelitian Kerangka penelitian menjelaskan gambaran umum mengenai metode penelitian yang dimulai dari adanya masalah, solusi, membangun sistem, implementasi dan hasil yang diperoleh dari sistem yang telah dibangun. 25 3.1.1Problem Pengoperasian lampu rumah yang masih menggunakan cara konvensional seperti menyalakan atau mematikan lampu dengan menyentuh saklar secara langsung dan hanya bisa mematikan atau menyalakan lampu pada saat dirumah saja. (APA BENAR INI AJA?) 3.1.2 Approach Berdasarkan problemyang telah diterangkan sebelumnya akhirnya ditemukan solusi, yaitu dengan membangun pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphone Android. (JELASKAN LEBIH rinci lagi) 3.1.3 Development Pembangunan pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphone Android dimulai dari merancang Entity Relationship Diagram (ERD), Conceptual Data Model (CDM), Physical Data Model (PDM), Unified Modeling Language (UML) dan antarmuka aplikasi, kemudian dilanjutkan dengan menulis dan menyusun program dengan menggunakan alat sebagai berikut: 1. Perangkat Keras A. Komputer dengan spesifikasi sebagai berikut: a. Processor Intel Core i5 b. VGA Nvidia Geforce GTX 750 Ti c. RAM 8 GB DDR3 d. Harddisk 3 TB e. Monitor LG 22MN42 B. Komponen Mikrokontroler sebagai berikut: a. Mikrokontroler Arduino Mega b. Module Bluetooth HC-06 c. Module GSM/GPRS SIM900A Mini d. Kartu SIM 3 (tri) e. 4 buah Relay f. Kabel Jumper 26 g. Breadboard h. Adaptor 2. Perangkat Lunak A. Windows 7 Ultimate 64-bit B. XAMPP Version 3.2.1 C. Mozilla, Google Chrome D. Adobe Photoshop CC 2015 E. Balsamiq Mockup F. Comodo Edit 10 G. Arduino IDE H. DiagramDesigner 3. Bahasa Pemrograman A. PHP B. HTML5 C. CSS3 D. C E. SQL F. Java 4. Framework CSS A. Bootstrap 3.1.4 Implementation Implementasi dilakukan dengan menggunakan alat pengendalian lampu menggunakan MikrokontrolerArduino dengan Smartphone Android. 3.1.5 Result Hasil yang ingin didapatkan dari dibangunnya alat pengendalian lampu menggunakan Mikrokontroler Arduino dengan Smartphone Android adalah untuk membantu para pekerja, lansia, dan yang memiliki keterbatasan fisik untuk dapat menyalakan/mematikan lampu tanpa bersentuhan langsung dengan saklar. 3.2 Metode Pengumpulan Data 3.2.1 Metode Wawancara 27 Metode wawancara merupakan suatu kegiatan yang paling tepat antara seorang sistem analisis dengan organisasi atau perusahaan dan merupakan teknik yang paling produktif dalam mencari sebuah informasi. Hal itu dikarenakan wawancara merupakan suatu teknik dimana pencari dan pemberi data dapat langsung bertukar pikiran. Pada metode ini, penulis mewawancarai atau bertukar pikiran dengan pekerja sekaligus ibu rumah tangga yang bertempat tinggal di Komplek Kijang Kencana.(BUKTIKAN HASIL WAWANCARANYA DIBAB 4!!!) 3.2.2 Metode Pustaka Metode pustaka adalah teknik pengumpulan data yang dilakukan dengan cara membaca buku literatur, menganalisa, menyimpulkan dan mengutip bacaanbacaan diperoleh dari artikel di internet yang berhubungan dengan Pengendalian Lampu Menggunakan Mikrokontroler Arduino dengan Smartphone Android. 3.3 Metode Pengembangan Sistem Metode pengembangan sistem yang digunakan adalah metode prototipe. Metode prototipe dimulai dari pengumpulan data dari kebutuhan pemesan terhadap perangkat lunak yang akan dibuat. Metode prototipe menyajikan gambaran yang lengkap tentang sistemnya, sehingga pemesan dapat melihat pemodelan sistem dari sisi tampilan maupun teknik prosedural yang akan dibangun. Pemesan akan mengevaluasi sistem sesuai dengan apa yang ia butuhkan. Pihak pengembang akan mempelajari kebutuhan dan keinginan pemesan. Tahapan – tahapan dalam metode prototipe: 28 Gambar 3.2 Metode Prototipe(SUMBERNYA DARI MANA GAMBAR INI?) Keterangan: 1. Initial Requirements Tahap ini akan dilakukan pengumpulan data. Pengumpulan data dilakukan dengan melakukan metode wawancara dan metode pustaka. Pembuat sistem akan menggali informasi sebanyak-banyaknya dari pemesan sehingga mendapatkan gambaran mengenai sistem yang akan dibuat. 2. Design Proses desain akan menterjemahkan syarat kebutuhan ke sebuah perancangan perangkat lunak (sistem) yang dapat diperkirakan sebelum tahap selanjutnya. 3. Prototyping Setelah desain maka akan dibuat gambaran alur kerja sistem. Gambaran alur kerja sistem akan dijadikan suatu kepututsan bagi pemesan. 4. Customer Evaluation Pemesan akan mengevaluasi gambaran alur kerja sistem yang dibuat. Apabila telah sesuai dengan keinginan pemesan maka akan dilanjutkan pada tahap pengembangan (development) dan apabila belum sesuai keinginan pemesan maka pembuatan sistem akan diulang dan diperbaiki (review and updation). 5. Review and Updation 29 Sistem akan diperbaiki dan disesuaikan dengan keinginan pemesan karena gambaran sistem yang sebelumnya dibuat belum sesuai dengan keinginan pemesan. 6. Development Pengembangan akan dilakukan setelah pemesan merasa gambaran sistem yang dibuat telah sesuai keinginannya. Pada tahap ini, pembuat sistem akan membuat sistem yang sebenarnya. Pengkodean pun dilakukan sampai sistem selesai dibuat. 7. Testing Setelah pengkodean (coding) selesai maka akan dilakukan testing terhadap sistem yang telah dibuat. Tujuan testing adalah menemukan kesalaha – kesalahan terhadap sistem tersebut dan kemudian bisa diperbaiki. 8. Maintain Perangkat lunak (sistem yang dibuat) akan diserahkan pada pemesan. Perangkat lunak akan diperthankan selama tidak mengalami masalah. JIKA DENGAN METODE PROTOTYPING, CLIENT/NASABAH KAMU SIAPA? 30 BAB IV HASIL DAN PEMBAHASAN 4.1 Hasil Pengumpulan Data Data yang berhasil didapatkan bedasarkan wawancara langsung kepada Ibu Sri Yuniarti berumur 38 tahun dan memiliki pekerjaan wiraswasta yang bertempat tinggal di Komplek Kijang Kencana. Adapun data wawancara kepada narasumber seperti pada tabel 4.1: Tabel 4.1 Wawancara No. 1. Wawancara Pewawancara Narasumber Pewawancara Apakah Bapak/Ibu sering lupa mematikan lampu ketika saat bepergian atau sedang dalam kesibukan? Iya, sering. Jika iya, apakah itu merugikan Bapak/Ibu ketika lupa mematikan lampu pada saat bepergian atau dalam kesibukan? 2. Narasumber Pewawancara 3. 4. Narasumber Pewawancara Narasumber Iya, memakan biaya lagi. Bagaimana kondisi lampu ketika ditinggalkan ketika bepergian? Ketika sedang bepergian apabila memakan waktu seharian keluar kota misalnya ke banjar, kondisi lampu tetap dinyalakan terutama lampu di kamar, jadi ketika datang ke rumah lampu dimatikan kembali. Jenis perangkat/HP apa yang Bapak/Ibu gunakan pada saat ini? Samsung. Bagaimana pendapat Bapak/Ibu jika ada pengendalian lampu dengan menggunakan hp ataupun dengan smartphone Android? Bagus aja, masalahnya saat ini biasanya kelupaan mematikan lampu, jadikan ibarat keluar kota lupa mematikan lampu bisa 5. menggunakan alat tersebut untuk mematikannya. Apalagi saat ini Narasumber hp menjadi kebutuhan penting, ketika bepergian otomatis membawa hp. Ibu kan sering ke banjar untuk membeli barang pasti membawa hp. Jadi tidak perlu kembali kerumah apabila lupa mematikan lampu misalnya juga ketika ibu sedang dipasar. Sumber: Wawancara dengan Ibu Sri Yuniarti (APA SATU ORANG AJA NARSUMBERNYA, Pewawancara VALID NDAK DENGAN 1 ORANG SAJA?) 31 4.2 Sistem yang Sedang Berjalan Menyalakan ataupun mematikan lampu pada rumah yang digunakan saat ini adalah dengan menekan tombol pada saklar, yang mana untuk mematikan ataupun menyalakan harus ditempat yang sama yaitu dirumah. Gambar 4.1 Sistem yang sedang berjalan 4.3 Sistem yang Diusulkan Mereferensi dari sistem yang sedang berjalan maka untuk membantu dalam mematikan ataupun menyalakan lampu dibangunlah suatu sistem dengan menggunakan mikrokontroler Arduino dan juga komponen-komponen yang saling berhubungan, dikendalikan dengan perangkat telepon biasa dengan memanfaatkan layanan SMS juga dapat dikendalikan dengan perangkat Android dengan memanfaatkan layanan SMS dan koneksi nirkabel Bluetooth. Gambar 4.2 Sistem yang diusulkan 32 4.4 Rancangan 4.4.1Rancangan Database Perancangan basis data pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroidakan digambarkan dengan ERD (Entity Relationship Diagram), CDM (Conceptual Data Model) dan PDM (Physical Data Model). 4.4.1.1 ERD (Entity Relationship Diagram) Gambar 4.3Entity Relationship Diagram Keterangan: Gambar 4.4ERD (Entity Relationship Diagram) pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroid mempunyai 2 tabel, diantaranya: 1. tb_akun Tabel 4.2 ERD: tb_akun Nama Field id_akun Username Password 2. Primary Key * Foreign Key Primary Key * Foreign Key tb_recordlampu Tabel 4.3 ERD: tb_recordlampu Nama Field id_lampu Switch Waktu 33 4.4.1.2CDM (Conceptual Data Model) Gambar CDM (Conceptual Data Model) pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroid: Gambar 4.4 Conceptual Data Model Tabel 4.4 CDM CDM ERD Tabel tb_akun Entitas tb_akun Tabel tb_recordlampu Entitas tb_recordlampu 4.4.1.3PDM (Physical Diagram Model) Gambar PDM (Physical Data Model) pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroid: Gambar 4.5Physical Data Model Keterangan: Gambar 4.5 PDM(Physical Data Model)pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroidmerupakan pertanggungjawaban dari diagram CDM(Conceptual Data Model). Gambar 4.6 Relasi Antar Tabel 34 hasil 1. tb_akun Tabel 4.5PDM: tb_akun Nama Field Tipe Data Function & Extra Keterangan id_akun int(11) Auto Increment username varchar(30) Username password varchar(255) Password Primary Key Id akun * 2. tb_recordlampu Tabel 4.6PDM: tb_recordlampu Nama Field Tipe Data Function & Keterangan Extra id_lampu int(11) Auto Increment Idlampu switch tinyint(1) Nilai On/Off waktu timestamp Waktu Primary Key * 4.4.2 Rancangan Sistem Rancangan sistemmembahas mengenai hal-hal yang berhubungan dengan perancangan sistem untuk aplikasi berbasis Web dan Android yang dibuat, sepertiFlowchart danUML (Unified Modeling Language). Berdasarkan sistem yang digunakan pada saat ini, maka penulis mencoba merancang pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroidsekiranya dapat membantu untuk mengendalikan lampu dari jarak dekat maupun jauh. 35 4.4.2.1Flowchart 4.4.2.1.1 Flowchart Aplikasi Android Gambar 4.7 Flowchart Aplikasi Android Keterangan: Ketika Aplikasi Android dibuka tampilan pertama awal aplikasi dimulai dari tampilan Splashscreen, aplikasi android memiliki 3 pilihan kendali lampu yaitu kendali dengan SMS, kendali dengan bluetooth, kendali dengan website dan terakhir tentang aplikasi. Kendali dengan SMS merupakan pengendalian lampu dengan menggunakan layanan sms dari sinyal telekomunikasi. Kendali dengan bluetooth merupakan pengendalian lampu dengan menggunakan jaringan nirkabel bluetooth. Kendali dengan website merupakan pengendalian lampu dengan menggunakan aplikasi website yang dimasukkan kedalam aplikasi android. 36 4.4.2.1.2 Flowchart Kendali dengan SMS Gambar 4.8 Flowchart Kendali dengan SMS Keterangan: Ketika menu kendali dengan sms ditekan, maka kemudian muncul tampilan antarmuka kendali dengan sms. Setelah itu untuk dapat mengendalikan lampu harus mengetahui nomor kartu sim dari arduino dan harus mengetahui kode perintah. Setelah itu sms diproses, apabila berhasil maka muncul tampilan sms terkirim, apabila gagal maka muncul tampilan gagal mengirim sms. 37 4.4.2.1.3 Flowchart Kedali dengan Bluetooth Gambar 4.9 Flowchart Kendali dengan Bluetooth Keterangan: Ketika menu kendali dengan bluetooth ditekan, maka muncul tampilan antarmuka kendali dengan bluetooth. Apabila ingin mengendalikan lampu maka harus mencari koneksi bluetooth pada arduino. Setelah itu pilih koneksi bluetooth, kemudian akan memproses penyambungan dengan bluetooth. Jika berhasil mengkoneksikan bluetooth, maka dapat mengendalikan lampu. Setelah memilih lampu yang akan dikendalikan maka akan diproses untuk mengirimkan perintah ke arduino. 38 4.4.2.1.4Flowchart Kendali dengan Website Gambar 4.10 Flowchart Kendali dengan Website Keterangan: Ketika menu kendali dengan website ditekan, maka akan muncul tampilan login. Untuk dapat masuk, diperlukan mengisi form username dan password kemudian data tersebut diproses dan dicek ke validasian nya. Apabila cocok maka akan masuk ke halaman berikutnya namun apabila tidak maka akan kembali ke antarmuka login. 39 4.4.2.1.5FlowchartSetelah Berhasil Login Website Gambar 4.11 Flowchart Setelah Berhasil Login Website 40 Keterangan: Setelah berhasil melakukan login, maka akan berpindah halaman ke antarmuka kendali lampu yang memiliki sub menu seperti, halaman data akun, halaman data record dan tombol logout. Dihalaman data akun pengguna dapat menambah akun, menghapus akun, merubah akun, dan mencari akun. Dihalaman data record, pengguna hanya dapat menghapus dan mencari record data lampu yang dinyalakan atau dimatikan. (BUAT APA FLOWCHART INI?) 4.4.2.2 Perancangan UML (Unified Modeling Language) Perancangan sistem pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroidmenggunakan UML yang didalamnya memuat 9 diagram yaitu Use Case Diagram, Class Diagram, Object Diagram, Sequence Diagram, Activity Diagram, Communication Digram, State Machine Diagram, Component Diagram, dan Deployment Diagram. 4.4.2.2.1 Use Case Diagram Use Case Diagram merupakan gambaran fungsional yang diharapkan pada sebuah sistem. Pada Use Case diagram yang dijelaskan apa yang saja yang terjadi pada sistem dan apa yang dapat dilakukan aktor terhadap sistem. Diagram ini juga mempresentasikan suatu interaksi antar aktor dengan sistem. 1. Definisi Aktor Deskripsi pendefinisian aktor pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroid: Tabel 4.7 Definisi Aktor No. Aktor Deskripsi 1. User / Pengguna User adalah orang yang memiliki hak akses untuk mengelola data lampu, mengelola data akun, dan mengendalikan lampu. 41 2. Definisi Use Case Deskripsi pendefinisian use case pada pengendalian lampu menggunakan mikrokontroler Arduino dengan smartphoneAndroid: Tabel 4.8 Definisi Use Case No. Use Case Deskripsi Proses pengecekan hak akses siapa yang berhak mengakses 1. Validasi proses pengelolaan data aplikasi web pengendalian lampu ini.Validasi merupakan generalisasi dari proses login, logout, dan cek status login. Proses untuk melakukan login user aplikasi web pengendalian 2. Login lampu ini di mana user memasukkan username dan password sesuai dengan data yang tersimpan di database. Proses untuk memeriksa apakah user aplikasi pengendalian 3. Cek Status Login 4. Logout 5. Mengelola data akun lampu sudah melakukan login atau belum. Proses untuk melakukan logout user aplikasi web pengendalian lampu. Proses generalisasi yang meliputi 5 buah proses pengolahan 6. 7. 8. 9. 10. 11. 12. 13. 14. data akun yaitu memasukkan, mengubah, menghapus, melihat,dan mencari. Memasukkan data akun Mengubah data akun Menghapus data akun Mencari data akun Proses memasukkan data akun ke dalam basis data. Melihat data akun Mengelola data record lampu Menghapus data record lampu Mencari data record lampu Melihat data record lampu Proses menampilkan data akun yang tersimpan di basis data. Proses mengubah data akun yang ada di basis data. Proses menghapus data akun yang tersimpan di basis data. Proses mencari data akun yang tersimpan di basis data. Proses generalisasi yang meliputi 3 buah proses pengolahan data record lampu yaitu menghapus, melihat,dan mencari. Proses menghapus data record lampu yang tersimpan di basis data. Proses mencari data record lampu yang tersimpan di basis data. Proses menampilkan data record lampu yang tersimpan di basis data. 42 3. Skenario Use Case Skenario Use Case merupakan skenario jalannya Use Case yang telah didefinisikan. Berikut akan dijelaskan beberapa skenario Use Case tersebut: 1) Nama Use Case : Login Tabel 4.9 Skenario Use Case : Login Aksi Aktor Skenario normal 1. Memasukkan Username dan password Reaksi sistem 2. Memeriksa valid tidaknya data masukkan (Username dan Password) dengan memeriksa ke akun. 3. Masuk ke menu aplikasi kendali lampu dengan web. Skenario alternative 1. Memasukkan Username dan Password 2. Memeriksa valid tidaknya data yang di masukkan 3. Menampilkan pesan Login tidak valid 4. Memasukkan Username dan Password valid 5. Memeriksa valid tidaknya data masukkan 6. Masuk ke menu aplikasi kendali lampu dengan web. 2) Nama Use Case : Cek Status Login Tabel 4.10 Skenario Use Case : Cek Status Login Aksi Aktor Skenario normal Reaksi sistem 1. Memeriksa ke variable session sebagai penanda Login apakah user/pengguna sudah Login. 2. Mengembalikan status Login, sudah Login atau belum 3) Nama Use Case : Logout Tabel 4.11 Skenario Use Case : Logout Aksi Aktor Skenario normal 1. Memilih menu Logout Reaksi sistem 2. Melakukan Logout 43 4) Nama Use Case : Memasukkan Data Akun Tabel 4.12 Skenario Use Case : Memasukkan Data Akun Aksi Aktor Reaksi Sistem Skenario normal 1. Memeriksa status Login 2. Memasukkan data sesuai kolom yang disediakan 3. Memeriksa valid tidaknya masukkan 4. Menyimpan data akun ke dalam basis data 5. Setelah berhasil disimpan, kembali ke halaman data akun Skenario alternative 1. Memeriksa status Login 2. Memasukkan data sesuai kolom yang disediakan 3. Memeriksa valid tidaknya masukkan 4. Menampilkan pesan bahwa data masukkan tidak valid 5. Memperbaiki data masukkan yang tidak valid 6. Memeriksa valid tidaknya data masukkan 7. Menyimpan data akun ke dalam basis data 8. Setelah berhasil disimpan, kembali ke halaman data akun 5) Nama Use Case : Mengubah Data Akun Tabel 4. 13 Skenario Use Case : Mengubah Data Akun Aksi Aktor Reaksi sistem Skenario normal 1. Memeriksa status Login 2. Memasukkan kata kunci dan katagori pencarian 3. Mencari data yang akan diubah 4. Menampilkan data yang dicari 5. Memilih data akun yang akan diubah 6. Menampilkan semua data yang akan diubah 7. Mengubah data akun 8. Memeriksa valid tidaknya data masukkan 9. Menyimpan data akun yang telah diubah ke basis data 10. Setelah berhasil disimpan, kembali ke halaman data akun Skenario alternative 1. Memeriksa status Login 2. Memasukkan kata kunci dan akun pencarian 44 Aksi Aktor Reaksi sistem 3. Mencari data yang akan diubah 4. Menampilkan data yang di cari 5. Memilih data akun yang akan diubah 6. Menampilkan semua data yang diubah 7. Mengubah data akun 8. Memeriksa valid tidaknya data masukkan 9. Menampilkan pesan bahwa data masukkan tidak valid 10. Memperbaiki data masukkan yang diubah dan tidak valid 11. Memeriksa valid tidaknya masukkan 12. Menyimpan dataakun yang telah diubah ke basis data 13. Setelah berhasil disimpan, kembali ke halaman data akun 6) Nama Use Case : Menghapus Data Akun Tabel 4.14 Skenario Use Case : Menghapus Data Akun Aksi Aktor Skenario normal Reaksi Sistem 1. Memeriksa status Login 2. Memasukkan pencarian kata kunci dan akun 3. Mencari data akun yang akan dihapus 4. Memilih data akun yang akan dihapus 5. Menampilkan pesan konfirmasi apakah data benar-benar akan dihapus ? 6. Memilih button dihapus pilihan setuju data 7. Menghapus data akun dari basis data 8. Setelah berhasil dihapus, kembali ke halaman data akun Skenario alternative 1. Memeriksa status Login 2. Memasukkan kata pencarian kunci dan akun 3. Mencari data akun yang akan dihapus 4. Memilih dataakun yang akan dihapus 5. Menampilkan pesan konfirmasi apakah data benar-benar akan dihapus? 6. Memilih button pilihan tidak setuju data dihapus 7. Kembali ke halaman data akun 45 7) Nama Use Case : Mencari Data Akun Tabel 4.15 Skenario Use Case : Mencari Data Akun Aksi Aktor Skenario normal Reaksi Sistem 1. Memasukkan kata kunci dan akun pencarian 2. Mencari data yang akan dicari 3. Menampilkan data yang dicari 4. Memilih data yang dicari 5. Menampilkan data dari data akun yang dicari Skenario alternative 1. Memasukkan kata kunci dan akun pencarian 2. Mencari data yang akan dicari 3. Menampilkan pesan data tidak ada 4. Memasukkan kata kunci dan akun pencarian 5. Mencari data yang dicari 6. Menampilkan data yang dicari 7. Memilih data yang dicari 8. Menampilkan data dari data akun yang dicari 8) Nama Use Case : Melihat Data Akun Tabel 4.16Skenario Use Case : Melihat Data Akun Aksi Aktor Skenario normal Reaksi Sistem 1. Memeriksa status Login 2. menampilkan data akun (semua kolom) 3. melihat data akun yang ditampilkan 9) Nama Use Case : Menghapus DataRecord Lampu Tabel 4.17 Skenario Use Case : Menghapus Data Record Lampu Aksi Aktor Skenario normal Reaksi Sistem 1. Memeriksa status Login 2. Memasukkan kata kunci dan record lampu pencarian 3. Mencari data record lampuyang akan dihapus 4. Memilih data record lampuyang akan dihapus 5. Menampilkan pesan konfirmasi apakah data benar-benar akan dihapus ? 6. Memilih button dihapus pilihan setuju data 46 Aksi Aktor Reaksi Sistem 7. Menghapus data akun dari basis data 8. Setelah berhasil dihapus, kembali ke halaman data record lampu Skenario alternative 8. Memeriksa status Login 9. Memasukkan kata kunci dan record lampupencarian 10. Mencari data record lampuyang akan dihapus 11. Memilih datarecord lampuyang akan dihapus 12. Menampilkan pesan konfirmasi apakah data benar-benar akan dihapus? 13. Memilih button pilihan tidak setuju data dihapus 14. Kembali ke halaman data record lampu 10) Nama Use Case : Mencari Data Record Lampu Tabel 4.18 Skenario Use Case : Mencari Data Record Lampu Aksi Aktor Skenario normal 1. Reaksi Sistem Memasukkan kata kunci dan Record Lampu pencarian 2. Mencari data yang akan dicari 3. Menampilkan data yang dicari 4. Memilih data yang dicari 5. Menampilkan data Lampuyang dicari dari dataRecord Skenario alternative 9. Memasukkan kata kunci dan Record Lampupencarian 10. 11. Mencari data yang akan dicari Menampilkan pesan data tidak ada 13. Mencari data yang dicari 14. Menampilkan data yang dicari 12. Memasukkan kata kunci dan Record Lampupencarian 15. Memilih data yang dicari 16. Menampilkan data dari dataRecord Lampuyang dicari 47 11) Nama Use Case : Melihat DataRecord Lampu Tabel 4.19 Skenario Use Case : Melihat Data Record Lampu Aksi Aktor Skenario normal Reaksi Sistem 1. 2. 3. melihat data ditampilkan record lampu Memeriksa status Login menampilkan data record lampu (semua kolom) yang 4. Use Case Diagram Use case diagram menggambarkan interaksi antar aktor dari sistem yang akan dibuat. Gambar diagram use case untuk aplikasi kendali lampu dengan webdapat dilihat pada Gambar 4.12 Use Case Diagram. (APA BENER TAMPILANNYA BEGINI), CEK KEMBALI DI BUKU RPL ATAU PANDUAN LAINNYA. (UNTUK BLUETOOTH DAN SMSNYA MANA?) Gambar 4.12 Use Case Diagram 48 4.4.2.2.2 Class Diagram (Diagram Kelas) Diagram kelas menggambarkan struktur sistem dari segi definisi kelaskelas yang akan dibuat untuk membangun sistem. Gambar dari diagram kelas dari aplikasi kendali lampu dengan web : (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Gambar 4.13 Diagram Kelas Tabel 4.20 Penjelasan Diagram Kelas No. Nama Kelas Keterangan 1. Main Merupakan Kelas main 2. Antarmuka Merupakan Kelas yang menangani tampilan 3. KoneksiDatabase 4. Validasi 5. Mengelola Akun Merupakan Kelas utilitas untuk koneksi ke basis data dan melakukan query Merupakan Kelas proses yang diambil dari pendefinisian use case Validasi Merupakan Kelas proses yang diambil dari pendefinisian use case mengelola akun yang didalamnya harus juga 49 menangani proses memasukkan user, mengubah user, menghapus user, mencari, dan melihat akun. Merupakan Kelas proses yang diambil dari pendefinisian 6. use case mengelola record lampu Mengelola Record Lampu yang didalamnya harus juga menangani proses menghapus record lampu , melihat record lampu, dan mencari record lampu . Merupakan Kelas data yang digunakan untuk memproses 7. Akun 8. Record Lampu segala pengaksesan terhadap tabel akun. Merupakan Kelas data yang digunakan untuk memproses segala pengaksesan terhadap tabel lampu. 4.4.2.2.3 Object Diagram (Diagram Objek) Diagram objek menggambarkan struktur sistem dari segi penanaman objek dan jalannya objek dalam sistem. Gambar diagram objek pada aplikasi kendali lampu dengan web dapat dilihat pada Gambar 4.14 Diagram Objek. (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Gambar 4.14 Diagram Objek 50 4.4.2.2.4 Sequence Diagram (Diagram Sekuen) (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Diagram sekuen menggambarkan kelakuan objek pada use case dengan mendiskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar objek. Gambar diagram sekuen pada aplikasi kendali lampu dengan web : (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) 1) Use Case : Login Gambar diagram Sekuen – Login: Gambar 4.15 Diagram Sekuen –Login Keterangan: Gambar 4.15 menjelaskan saat pengguna/user ingin masuk ke dalam aplikasi harus memasukkan username dan password yang valid/benar. 51 2) Use Case : Logout Gambar diagram Sekuen – Logout: Gambar 4.16 Diagram Sekuen –Logout Keterangan: Gambar 4.16 menjelaskan saat pengguna/user ingin keluar dari aplikasi harus mengklik menu logout. 52 3) Use Case : Memeriksa Status Login Proses memeriksa status login berisi untuk memeriksa apakah pengguna perangkat lunak sudah melakukan login. Proses ini digunakan oleh use case lain sehingga akan menjadi bagian diagram sekuen dari use case lain yang menggunakannya. 4) Use Case : Memasukkan Data Akun Gambar diagram Sekuen – memasukkan data akun: Gambar 4.17 Diagram Sekuen – Memasukkan Data Akun Keterangan: Gambar 4.17 menjelaskan penginputan data akun yang menginputkan, username, dan password. Setelah inputan di execute akan kembali ke halaman data akun. 53 5) Use Case : Mengubah Data Akun Gambar diagram Sekuen – mengubah data akun: Gambar 4.18 Diagram Sekuen – Mengubah Data Akun Keterangan: Gambar 4.18 menjelaskan pengubahan data akun yang dapat mengubah username dan password. Setelah perubahan di executeakan kembali ke halaman data akun. 54 6) Use Case : Menghapus Data Akun Gambar diagram Sekuen – menghapus data akun: Gambar 4.19 Diagram Sekuen – Menghapus Data Akun Keterangan: Gambar 4.19 menjelaskan penghapusan data akun yang dapat menghapus data akun berdasarkan id_akun. Setelah perubahan di executeakan kembali ke halaman data akun. 55 7) Use Case : Mencari Data Akun Gambar diagram Sekuen – mencari data akun: Gambar 4.20 Diagram Sekuen – Mencari Data Akun Keterangan: Gambar 4.20 menjelaskan bahwa data akun dapat dicari menurut semua inputan yang telah diinputkan. 56 8) Use Case : Melihat Data Akun Gambar diagram Sekuen – melihat data akun: Gambar 4.21 Diagram Sekuen – Melihat Data Akun Keterangan: Gambar 4.21 menjelaskan bahwa data akun dapat dilihat secara jelas dari semua yang telah diinputkan. 57 9) Use Case : Menghapus Data Record Lampu Gambar diagram Sekuen – menghapus data record lampu: Gambar 4.22 Diagram Sekuen – Menghapus DataRecord Lampu Keterangan: Gambar 4.22 menjelaskan penghapusan data record lampu yang dapat menghapus data record lampu berdasarkan id_lampu. Setelah perubahan di execute akan kembali ke halaman data record lampu. 58 10) Use Case : Mencari Data Record Lampu Gambar diagram sekuen – mencari data record lampu: Gambar 4.23 Diagram Sekuen – Mencari Data Record Lampu Keterangan: Gambar 4.23 menjelaskan bahwa data record lampu dapat dicari menurut semua inputan yang telah diinputkan. 59 11) Use Case : Melihat Data Record Lampu Gambar diagram Sekuen – melihat data record lampu: Gambar 2.24 Diagram Sekuen – Melihat Data Record Lampu Keterangan: Gambar 4.24 menjelaskan bahwa data record lampu dapat dilihat secara jelas dari semua yang telah diinputkan. 60 4.4.2.2.5 Communication Diagram (Diagram Komunikasi) (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Diagram komunikasi menggambarkan interaksi antar objek/bagian dalam bentuk urutan pengiriman pesan. Penjelasan semua gambar diagram komunikasi sama seperti penjelasan diagram sekuen. Gambar diagram komunikasi pada aplikasi kendali lampu dengan web : 1) Use Case : Login Gambar diagram komunikasi – Login: Gambar 4.25 Diagram Komunikasi – Login 2) Use Case : Logout Gambar diagram komunikasi – Logout: 61 Gambar 4.26 Diagram Komunikasi – Logout 3) Use Case : Memeriksa Status Login Proses ini digunakan oleh use case lain sehingga akan menjadi bagian diagram komunikasi dari use case lain yang menggunakannya. 4) Use Case : Memasukkan Data Akun Gambar diagram komunikasi – memasukkan data akun: Gambar 4.27 Diagram Komunikasi – Memasukkan Data Akun 5) Use Case : Mengubah Data Akun Gambar diagram komunikasi – mengubah data akun: Gambar 4.28 Diagram Komunikasi – Mengubah Data Akun 62 6) Use Case : Menghapus Data Akun Gambar diagram komunikasi – menghapus data akun: Gambar 4.29 Diagram Komunikasi – Menghapus Data Akun 7) Use Case : Mencari Data Akun Gambar diagram komunikasi – mencari data akun: Gambar 4.30 Diagram Komunikasi – Mencari Data Akun 63 8) Use Case : Melihat Data Akun Gambar diagram komunikasi – melihat data akun: Gambar 4.31 Diagram Komunikasi – Melihat Data Akun 9) Use Case : Menghapus Data Record Lampu Gambar diagram komunikasi – menghapus record lampu: Gambar 4.32 Diagram Komunikasi – Menghapus Data Record Lampu 64 10) Use Case : Mencari Data Record Lampu Gambar diagram komunikasi – mencari data record lampu: Gambar 4.33 Diagram Komunikasi – Mencari Data Record Lampu 11) Use Case : Melihat Data Record Lampu Gambar diagram komunikasi – melihat data record lampu: Gambar 4.34 Diagram Komunikasi – Melihat Data Record Lampu 65 4.4.2.2.6 State Machine Diagram (Diagram Status) (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Diagram status menggambarkan alur interaksi pengguna dengan sistem. Gambar diagram status pada aplikasi kendali lampu dengan web : 1) Objek m dari Kelas Main Gambar 4.35 Diagram Status Objek m dari Kelas Main 2) Objek v dari Kelas Validasi Gambar 4.36 Diagram Status Objek v dari Kelas Validasi 66 3) Objek an dari Kelas Antarmuka Gambar 4.37 Diagram Status Objek an dari Kelas Antarmuka 4) Objek db dari Kelas KoneksiBasisData Gambar 4.38 Diagram Status Objek db dari Kelas KoneksiBasisData 67 5) Objek mka dari Kelas KelolaAkun Gambar 4.39 Diagram Status Objek mka dari Kelas KelolaAkun 6) Objek mkrl dari Kelas KelolaRecordLampu Gambar 4.40 Diagram Status Objek mkrl dari Kelas KelolaRecordLampu 68 7) Objek akun dari Kelas Akun Gambar 4.41 Diagram Status Objek Akun dari Kelas Akun 8) Objek record lampu dari Kelas Record Lampu Gambar 4.42 Diagram Status Objek Record Lampu dari Kelas Record Lampu 69 4.4.2.2.7 Activity Diagram (Diagram Aktivitas) (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Diagram aktivitas menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Gambar diagram aktivitas pada aplikasi kendali lampu dengan web : Gambar 4.43 Diagram Aktivitas dengan Swimlane 70 4.4.2.2.8Component Diagram (Diagram Komponen) (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Diagram komponen menggambarkan organisasi dan ketergantungan diantara kumpulan komponen dalam sebuah sistem (fokus pada komponen sistem yang dibutuhkan). Gambar diagram komponen pada aplikasi kendali lampu dengan web: Gambar 4.44 Diagram Komponen 4.4.2.2.9 Deployment Diagram (Diagram Deployment) (CEK KEMBALI, UNTUK BLUETOOTH DAN SMSNYA MANA?) Diagram deployment menggambarkan konfigurasi komponen dalam proses eksekusi aplikasi. Gambar diagram deployment pada aplikasi kendali lampu dengan web: 71 Gambar 4.45 Deployment Diagram 4.4.3 Rancangan Antarmuka Perancangan MikrokontrolerArduino antarmuka dengan Pengendalian SmartphoneAndroid Lampu meliputi Berbasis rancangan antarmuka untuk pengendalian lampu dengan SMS, pengendalian lampu dengan Bluetooth, pengendalian lampu dengan Web dan informasi tentang aplikasi. 4.4.3.1 Rancangan Antarmuka Android Splashscreen Gambar 4.46 Rancangan Antarmuka AndroidSplashscreen Keterangan: 72 Pertama kali aplikasi android dibuka akan muncul tampilan splashscreen pada layar. 73 4.4.3.2 Rancangan Antarmuka Kendali dengan SMS Gambar 4.47 Rancangan Antarmuka Kendali dengan SMS Keterangan: Rancangan antarmuka kendali dengan sms memiliki dua form masukkan yang harus diisi, form nomor penerima dan form isi pesan. 4.4.3.3 Rancangan Antarmuka Kendali dengan Bluetooth Gambar 4.48 Rancangan Antarmuka Kendali dengan Bluetooth Keterangan: Rancangan antarmuka kendali dengan bluetooth memiliki 2 tombol lampu yang dapat mengendalikan lampu dan ada tombol untuk mencari koneksi bluetooth. 74 4.4.3.4Rancangan AntarmukaLoginWeb Gambar 4.49Rancangan Antarmuka LoginWeb Keterangan: Kendali lampu dengan web pertama kali harus login terlebih dahulu untuk dapat menjalankan fungsi kendali tersebut. 4.4.3.5Rancangan Antarmuka Menu pada Web Gambar 4.50 Rancangan Antarmuka Menu pada Web Keterangan: Aplikasi web memiliki 3 menu yaitu Home, Record Lampu, Data Akun serta memiliki tombol Logout. 75 4.4.3.6 Rancangan Antarmuka Kendali Lampu pada Web Gambar 4.51 Rancangan Antarmuka Kendali Lampu pada Web Keterangan: Rancangan antarmuka kendali lampu memiliki 2 tombol ON dan OFF pada halaman serta memiliki status nyala/mati lampu. 4.4.3.7 Rancangan Antarmuka Halaman Record Gambar 4.52 Rancangan Antarmuka Halaman Record Keterangan: Halaman Record menampilkan data record lampu dengan nilai menyala = 1 dan padam = 0 serta memiliki waktu. Data record lampu dapat dihapus dan dicari. 76 4.4.3.8 Rancangan Antarmuka Hapus Record Gambar 4.53 Rancangan Antarmuka Hapus Record Keterangan: Halaman hapus record lampu memiliki tombol untuk menanyakan keyakinan pengguna apakah data benar benar ingin dihapus. Apabalia pengguna menekan tombol Iya maka data akan dihapus namun apabila Tidak maka data tidak akan dihapus. 4.4.3.9 Rancangan Antarmuka Cari Record Gambar 4.54 Rancangan Antarmuka Cari Record Keterangan: Ketika pengguna ingin mencari data, pengguna memasukkan data ke kolom pencarian. 77 4.4.3.10 Rancangan Antarmuka Halaman Akun Gambar 4.55 Rancangan Antarmuka Halaman Akun Keterangan: Halaman Akun menampilkan data-data akun dan memiliki aksi untuk menambahkan akun, menghapus akun, merubah akun dan mencari akun. 4.4.3.11 Rancangan Antarmuka Memasukkan Akun Gambar 4.56 Rancangan Antarmuka Memasukkan Akun Keterangan: Rancangan antarmuka memasukkan akun memiliki 2 form penginputan, form username dan form password. 78 4.4.3.12 Rancangan Antarmuka Merubah Akun Gambar 4.57 Rancangan Antarmuka Merubah Akun Keterangan: Rancangan antarmuka merubah akun memiliki 2 form penginputan, form username dan form password. 4.4.3.13 Rancangan Antarmuka Menghapus Akun Gambar 4.58 Rancangan Antarmuka Menghapus Akun Keterangan: Halaman hapus akun memiliki tombol untuk menanyakan keyakinan pengguna apakah data benar benar ingin dihapus. Apabalia pengguna menekan tombol Iya maka data akan dihapus namun apabila Tidak maka data tidak akan dihapus. 79 4.4.3.14 Rancangan Antarmuka Cari Akun Gambar 4.59 Rancangan Antarmuka Cari Akun Keterangan: Ketika pengguna ingin mencari data, pengguna memasukkan data ke kolom pencarian. 4.4.3.14 Rancangan Antarmuka Logout Gambar 4.59 Rancangan Antarmuka Logout Keterangan: Rancangan Antarmuka Logout akan muncul apabila pengguna menekan tombol Logout pada sub menu. Kemudian akan ditanyakan apakah yakin untuk Logout. 80 4.4.4 Rancangan Elektronika Gambar Keterangan: Rangkaian elektronika kendali lampu dengan SMS, Bluetooth dan Web. Memiliki 3 Komponen Arduino yaitu, Arduino Mega, Arduino Uno dan Wemos D1. Dan memiliki 2 modul yaitu, modul Bluetooth HC-06 dan modul GSM Sim900AMini serta memiliki 5 relayyang akan disambungkan dengan tegangan listrik dari PLN. 81 4.4.5 Rancangan Miniatur Rumah Gambar Gambar Keterangan: Denah pembuatan miniatur rumah berdasarkan rumah dari narasumber Ibu Sri Yuniarti yang berlokasi di Komplek Kijang Kencana. 82 4.5 Implementasi 4.5.1 Tampilan Splashscreen Gambar Keterangan: Pertama kali aplikasi dibuka maka akan muncul tampilan Splashscreen. 4.5.2 Tampilan Side Menu Gambar Keterangan: Aplikasi memiliki side menu yaitu SMS, Bluetooth, Website dan Tentang. 83 4.5.3 Tampilan Kendali dengan SMS Gambar Keterangan: Tampilan kendali dengan sms memiliki form masukkan untuk nomor pengguna dan isi pesan juga memiliki tombol kirim sms serta ada daftar kode perintah SMS. 4.5.4 Tampilan Kendali dengan Bluetooth Gambar Keterangan: Tampilan kendali dengan bluetooth memiliki tombol untuk mematikan serta menyalakan lampu dan terdapat tombol untuk mencari koneksi bluetooth. 84 4.5.6 Tampilan Kendali dengan Web Gambar Keterangan: Kendali dengan web memerlukan login untuk dapat mengakses halaman kendali lampu. 4.5.7 Tampilan Menu pada Web Gambar Keterangan: Aplikasi web memiliki menu yaitu Home, Record Lampu, Data Akun dan memiliki tombol Logout. 85 4.5.8 Tampilan Kendali Lampu dengan Web Gambar Keterangan: Halaman kedali dengan web memiliki tombol ON dan OFF serta memiliki Statuslampu sedang menyala atau sedang padam. 4.5.9 Tampilan Halaman Record Lampu Gambar Keterangan: Halaman record lampu menampilkan data switch dan waktu menyalakan ataupun memadamkan lampu. Data record lampu hanya dapat dicari dan dihapus. 86 4.5.10 Tampilan Cari Record Lampu Gambar Keterangan: Ketika mencari record lampu pengguna dapat memasukkan data yang ingin dicari dikolom search dan data akan muncul. 4.5.11 Tampilan Hapus Record Lampu Gambar Keterangan: Ketika tombol hapus data pada halaman record lampu di klik maka akan ditanyakan apakah data tersebut yakin untuk dihapus. Apabila Iya maka data akan dihapus namun apabila Tidak maka akan kembali ke halaman data record lampu. 87 4.5.12 Tampilan Halaman Data Akun Gambar Keterangan: Halaman data akun memiliki tombol tambah akun, edit akun dan hapus akun juga dapat mencari data akun. 4.5.13 Tampilan Memasukkan Data Akun Gambar Keterangan: Memasukkan data akun baru memiliki 2 form masukkan yaitu Username dan Password serta memiliki tombol memasukkan data dan kembali. 88 4.5.14 Tampilan Merubah Data Akun Gambar Keterangan: Tampilan merubah data akun memiliki 2 form masukkan yaitu Username dan Password serta memiliki tombol edit akun dan tombol kembali. 4.5.15 Tampilan Hapus Data Akun Gambar Keterangan: Ketika tombol hapus data pada halaman data akun di klik maka akan ditanyakan apakah data tersebut yakin untuk dihapus. Apabila Iya maka data akan dihapus namun apabila Tidak maka akan kembali ke halaman data akun. 89 4.5.16 Tampilan Tentang Gambar Keterangan: Tampilan tentang memiliki informasi fungsi aplikasi yang dibuat. 90 4.6 Pengujian Sistem Pengujian perangkat lunak sangat diperlukan dalam suatu sistem informasi, dimana dengan melakukan suatu pengujian akan ditemukan kesalahan atau error yang muncul dari sistem perangkat lunak tersebut.Pengujian yang digunakan untuk menguji sistem ini adalah metode pengujian black-box. 4.6.1 Identifikasi dan Rencana Pengujian Sistem Kendali dengan Web Keterangan kode: - SAPL: Sistem Autentikasi Perangkat Lunak -AWKL : Aplikasi Web Kendali Lampu Tabel 4. 1 Identifikasi dan Rencana Pengujian Sistem Kendali dengan Web IDENTIFIKASI KELAS UJI Otentifikasi login dan logout BUTIR UJI Tidak memasukkan username dan / atau password Memasukkan username dan / atau password tidak valid Memasukkan username dan password valid Melakukan proses logout TINGKAT PENGUJIAN JENIS PENGUJIAN PENGUJI SAPL AWKL SAPL-01 AWKL-01 Pengujian Sistem Black box M. Rakhmata, A.Md SAPL-01 AWKL-02 Pengujian Sistem Black box M. Rakhmata, A.Md SAPL-01 AWKL-03 Black box M. Rakhmata, A.Md SAPL-01 AWKL-04 Black box M. Rakhmata, A.Md 1 Pengujian Sistem Pengujian Sistem Manajemen Kelola Tabel Akun Manajemen Kelola Tabel Lampu Menampilkan data tabel akun Menambah data, menampilkan halaman tambah data akun Mengubah data, menampilkan halaman ubah data akun Menghapus dan menampilkan data akun Mencari dan menampilkan data akun Menampilkan data tabel lampu Menghapus dan menampilkan data lampu Mencari dan menampilkan data lampu SAPL-02 AWKL-05 Pengujian Sistem Black box M. Rakhmata, A.Md SAPL-02 AWKL-06 Pengujian Sistem Black box M. Rakhmata, A.Md SAPL-02 AWKL-07 Pengujian Sistem Black box M. Rakhmata, A.Md SAPL-02 AWKL-08 Black box M. Rakhmata, A.Md SAPL-02 AWKL-09 Black box M. Rakhmata, A.Md SAPL-03 AWKL-10 Black box M. Rakhmata, A.Md SAPL-03 AWKL-11 Black box M. Rakhmata, A.Md SAPL-03 AWKL-12 Black box M. Rakhmata, A.Md Menyalakan Lampu SAPL-04 AWKL-13 Black box M. Rakhmata, A.Md Mematikan Lampu SAPL-04 AWKL-14 Black box M. Rakhmata, A.Md Kendali Lampu dengan Web 2 Pengujian Sistem Pengujian Sistem Pengujian Sistem Pengujian Sistem Pengujian Sistem Pengujian Sistem Pengujian Sistem 4.6.2 Deskripsi dan Hasil UjiSistem Kendali dengan Web Tabel 4. 2 Deskripsi dan Hasil Uji Sistem Kendali dengan Web IDENTIFIKASI DESKRIPSI PROSEDUR PENGUJIAN Menekan kolom username/password, namun tidak mengisikan data sama sekali, lalu menekan tombol “Login” Memasukkan username dan / atau password tidak valid, lalu menekan tombol “Login” Memasukkan username dan / atau password valid, lalu menekan tombol “Login” MASUKAN KELUARAN YANG DIHARAPKAN Username atau password masih kosong Pengguna tidak dapat masuk ke dalam halaman utama Tidak ada data masukan KRITERIA EVALUASI HASIL HASIL YANG DIDAPAT KESIMPULAN Ditampilkan halaman awal untuk login Halaman awal untuk login berhasil ditampilkan Diterima/Ditolak Pengguna tidak dapat masuk ke dalam halaman utama Tampil form kosong berarti ada sistem yang salah Halaman awal untuk login berhasil ditampilkan Diterima/Ditolak Username dan / atau password valid Pengguna ditampilkan beranda Ditampilkan beranda “pengguna” Beranda berhasil ditampilka n Diterima/Ditolak AWKL-01 Tidak memasukkan usernamedan / atau password AWKL-02 Memasukkan username dan / atau password tidak valid AWKL-03 Memasukkan username dan password valid AWKL-04 Melakukan proses logout Menekan tombol ”Logout” Alert “Apakah anda yakin ingin keluar dari halaman web ini” Pengguna keluar dari sistem Ditampilkan halaman awal untuk login Halaman awal untuk login berhasil ditampilkan Diterima/Ditolak AWKL-05 Menampilkan data tabel akun Masuk sebagai “pengguna”, pilih menu “akun” pada menu Tidak ada data masukan Pengguna ditampilkan data akun Ditampilkan data akun Data akun berhasil ditampilkan Diterima/Ditolak 3 Menambah data akun, menampilkan halaman tambah data akun Masuk sebagai “pengguna”, pilih menu pada menu tombol “Tambah Akun” Username dan Password valid Tidak ada data keluaran Username atau Password tidak valid Error Username dan Password valid Tidak ada data keluaran Username atau Password tidak valid Error AWKL-06 AWKL-07 AWKL-08 Mengubah data akun, menampilkan halaman ubah data akun Menghapus dan menampilkan data akun Masuk sebagai “pengguna”pilih menu “data akun” pada menu lalu tekan kata Edit pada kolom aksi, pada baris akun tabel yang akan diubah Masuk sebagai “pengguna”pilih menu “akun” pada menu lalu tekan kata Delete pada kolom aksi, pada baris akun tabel yang akan dihapus Tidak ada data masukan Tidak ada data keluaran 4 Ditampilkan tabel “akun” dengan penambahan akun Menampilkan pesan kesalahan untuk melengkapi atau mengisi data sesuai ketentuan, data akun tidak bertambah Ditampilkan tabel “akun” dengan perubahan data pada akun Menampilkan pesan kesalahan untuk melengkapi atau mengisi data sesuai ketentuan, data akun tidak terjadi perubahan Ditampilkan tabel “akun” dengan pengurangan jumlah akun Tabel berhasil ditampilkan Diterima/Ditolak Pesan kesalahan ditampilkan Diterima/Ditolak Tabel berhasil ditampilkan Diterima/Ditolak Pesan kesalahan ditampilkan Diterima/Ditolak Tabel akun dengan pengurangan jumlah berhasil ditampilkan Diterima/Ditolak AWKL-09 AWKL-10 AWKL-11 AWKL-12 Mencari dan menampilkan data akun Menampilkan data tabel lampu Menghapus dan menampilkan data lampu Mencari dan menampilkan data lampu Masuk sebagai “pengguna”pilih menu “akun” pada menu lalu ketikkan data akun yang dicari pada kolom cari Masuk sebagai “pengguna”, pilih menu “lampu” pada menu Masuk sebagai “pengguna”, pilih menu “record lampu” pada menu lalu tekan kataHapusRecord pada kolom aksi, pada baris datalampu tabel yang akan dihapus Masuk sebagai “pengguna”pilih menu “record lampu” pada menu lalu ketikkan data lampu yang dicari pada kolom cari Username dan Password valid Tidak ada data keluaran Username dan Password tidak valid Error Tidak ada data masukan Pengguna ditampilkan data lampu Tidak ada data keluaran Tidak ada data masukan Switch dan Waktu valid Tidak ada data keluaran Switch dan Waktu tidak valid Error 5 Ditampilkan tabel “akun” dengan data akun yang dicari Menampilkan pesan kesalahan sesuai ketentuan, data akunyang dicari Tabel berhasil ditampilkan Diterima/Ditolak Pesan kesalahan ditampilkan Diterima/Ditolak Ditampilkan data lampu Data lampu berhasil ditampilkan Diterima/Ditolak Ditampilkan tabel “lampu” dengan pengurangan jumlah datalampu Tabel lampu dengan pengurangan jumlah berhasil ditampilkan Diterima/Ditolak Tabel berhasil ditampilkan Diterima/Ditolak Pesan kesalahan ditampilkan Diterima/Ditolak Ditampilkan tabel “lampu” dengan data lampu yang dicari Menampilkan pesan kesalahan sesuai ketentuan, data lampuyang dicari AKP-13 Menyalakan Lampu AKP-14 Mematikan Lampu Masuk sebagai “pengguna”, pilih menu “Home” pada menu Masuk sebagai “pengguna”, pilih menu “Home” pada menu Tekan tombol ON Lampu dapat dikendalikan dengan web Ditampilkan status lampu menyala Lampu Berhasil Menyala Diterima/Ditolak Tekan tombol OFF Lampu dapat dikendalikan dengan web Ditampilkan status lampu padam Lampu Berhasil di Matikan Diterima/Ditolak 6 4.6.3 Identifikasi dan Rencana Pengujian Sistem Kendali dengan SMS Keterangan kode: - SAPL: Sistem Autentikasi Perangkat Lunak -ASAKL : Aplikasi SMS Android Kendali Lampu Tabel 4. 3 Identifikasi dan Rencana Pengujian Sistem Kendali dengan Web IDENTIFIKASI KELAS UJI BUTIR UJI SAPL ASAKL Menyalakan Lampu SAPL-01 ASAKL-1 Mematikan Lampu SAPL-01 ASAKL-2 Kendali Lampu dengan SMS TINGKAT PENGUJIAN Pengujian Sistem Pengujian Sistem JENIS PENGUJIAN PENGUJI Black box M. Rakhmata, A.Md Black box M. Rakhmata, A.Md 4.6.4 Deskripsi dan Hasil UjiSistem Kendali dengan SMS Tabel 4. 4 Deskripsi dan Hasil Uji Sistem Kendali dengan SMS IDENTIFIKASI DESKRIPSI ASAKL-1 Menyalakan Lampu ASAKL-2 Mematikan Lampu PROSEDUR PENGUJIAN Pengguna mengirimkan SMS dengan isi pesan “kode menyalakan lampu”. Pengguna mengirimkan SMS dengan isi pesan “kode mematikan lampu”. KELUARAN YANG DIHARAPKAN MASUKAN Kode menyalakan lampu Lampu dapat dikendalikan dengan SMS Kode mematikan lampu Lampu dapat dikendalikan dengan SMS 7 KRITERIA EVALUASI HASIL Mendapatkan SMS balasan dari Arduino bahwa lampu berhasil dinyalakan Mendapatkan SMS balasan dari Arduino bahwa lampu berhasil dimatikan HASIL YANG DIDAPAT KESIMPULAN Lampu Berhasil Menyala Diterima/Ditolak Lampu Berhasil di Matikan Diterima/Ditolak 4.6.5 Identifikasi dan Rencana Pengujian Sistem Kendali dengan Bluetooth Keterangan kode: - SAPL: Sistem Autentikasi Perangkat Lunak -ABAKL : Aplikasi BluetoothAndroidKendali Lampu Tabel 4. 5 Identifikasi dan Rencana Pengujian Sistem Kendali dengan Bluetooth IDENTIFIKASI KELAS UJI BUTIR UJI Kendali Lampu dengan SMS TINGKAT PENGUJIAN JENIS PENGUJIAN PENGUJI SAPL ABAKL Menyalakan Lampu SAPL-01 ABAKL-1 Pengujian Sistem Black box M. Rakhmata, A.Md Mematikan Lampu SAPL-01 ABAKL-2 Pengujian Sistem Black box M. Rakhmata, A.Md Mengkoneksikan Bluetooth SAPL-01 ABAKL-3 Pengujian Sistem Black box M. Rakhmata, A.Md 4.6.6 Deskripsi dan Hasil UjiSistem Kendali dengan Bluetooth Tabel 4. 6 Deskripsi dan Hasil Uji Sistem Kendali dengan Bluetooth IDENTIFIKASI ABAKL-1 DESKRIPSI Menyalakan Lampu PROSEDUR PENGUJIAN Pengguna menekan tombol lampu KELUARAN YANG DIHARAPKAN MASUKAN Tekan tombol ON Lampu dapat dikendalikan dengan Bluetooth 8 KRITERIA EVALUASI HASIL Lampu dinyalakan HASIL YANG DIDAPAT Lampu Berhasil Menyala KESIMPULAN Diterima/Ditolak IDENTIFIKASI DESKRIPSI PROSEDUR PENGUJIAN KELUARAN YANG DIHARAPKAN MASUKAN KRITERIA EVALUASI HASIL HASIL YANG DIDAPAT KESIMPULAN ABAKL-2 Mematikan Lampu Pengguna menekan tombol lampu Tekan tombol OFF Lampu dapat dikendalikan dengan Bluetooth Lampu dimatikan Lampu Berhasil di Matikan Diterima/Ditolak ABAKL-3 Mengkoneksikan Bluetooth Pengguna menekan tombol cari koneksi bluetooth Memilih koneksi bluetooth yang terdeteksi Bluetoothsmartphone android dapat di koneksikan dengan bluetooth arduino Bluetooth dapat dikoneksikan Bluetooth berhasil dikoneksikan Diterima/Ditolak Pelaihari, 23 Mei 2017 Penguji, M. Rakhmata, A.Md 9 4.7 Pengimplementasian pada Server 4.7.1 Login cPanel Gambar Keterangan: FormlogincPanel dengan memasukkan Username dan Password, untuk dapat masuk ke halaman beranda cPanel dan dapat memanajemen database serta web. 4.7.2 Halaman beranda cPanel Gambar Keterangan: Halaman beranda cPanel memiliki menu untuk memanajemen database serta memanajemen aplikasi web. 1 4.7.3 Halaman File Manager Web Gambar Keterangan: Halaman File Manager memiliki fungsi sebagai tempat upload aplikasi web dan memanajemen file-file aplikasi web. 4.7.4 Halaman phpMyAdmin Gambar Keterangan: Halaman phpMyAdmin memiliki fungsi sebagai tempat mengelola database untuk aplikasi web. 2 4.8 Pengimplementasian pada Miniatur Rumah Gambar Gambar Gambar Keterangan: Miniatur rumah merupakan implementasi dari desain denah rumah berdasarkan rumah asli Ibu Sri Yuniarti di Komplek Kijang Kencana. 3 BAB V PENUTUP 5.1 Kesimpulan Kesimpulan yang dapat diambil dari pembuatan Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android, yaitu: 1. Mematikan dan menyalakan lampu pada sistem yang sedang berjalan hanya dapat dilakukan dengan menekan saklar pada dinding rumah. Solusi sistem yang diusulkan untuk dapat mematikan dan menyalakan lampu dari jarak yang jauh serta tanpa menekan saklar pada dinding rumah yaitu dengan menggunakan MikrokontrolerArduinosebagai alat pemprosesannya danSmartphone Androidsebagai perangkat pengendali lampu. 2. Rancang dan bangun Database menggunakan Entity Relationship Diagram (ERD), Conceptual Diagram Modeling (CDM), dan Physical Diagram Modeling (PDM) berdasarkan hasil pembahasan pada BAB IV. 3. Rancang sistem dan bangun antarmuka tampilan Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android menggunakan Flowchart dan Unified Modeling Language (UML) berdasarkan hasil pembahasan pada BAB IV. 4. Membangun program Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android menggunakan bahasa pemrograman PHP untuk Web, Java untuk Android, dan C untuk Arduino. 5. Pengujian sistem Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android menggunakan pengujian sistem Black Box berdasarkan hasil pembahasan pada BAB IV 6. Pengendalian Lampu Berbasis MikrokontrolerArduino dengan Smartphone Android untuk kendali lampu dengan web (internet) diimplementasikan pada miniatur rumah,aplikasi android diimplementasikan pada smartphoneandroidSamsung dan aplikasi website diimplementasikan disalah satu penyedia layanan hosting Indonesia, berdomain www.rahmataulia.id berdasarkan hasil pembahasan pada BAB IV. 4 5.2 Saran Saran yang dikemukakan antara lain: 1. Pengembangan aplikasi Android mendukung disemua layar smartphone Android (layar Tab dan layar diatas 5”) serta mendukung sistem operasi iOS. (ALASANNYA APA, YANG RASIONAL?) 2. Sistem arduino mengendalikan masih lampu menggunakan dan belum arduino tergabung (ALASANNYA APA, YANG RASIONAL?) 5 masing-masing menjadi 1 untuk arduino. DAFTAR PUSTAKA Enterprise, Jubilee. 2015. “Mengenal Java dan Database dengan Netbeans 7”. Yogyakarta: ELEX MEDIA KOMPUTINDO. Indriyanti, Aries Dwi dan Pratama, Revaldo, 2015. “Perancangan Dan Pembuatan Forum Makan Berbasis Web”.Jurnal Manajemen Informatika, Volume 04 Nomor 01 Tahun 2015, 76-8. Komputer, Wahana. 2012. “Membangun Aplikasi Bisnis Dengan Netbeans 7”. Semarang: ANDI. Kadir, Abdul. 2013. “Pemrograman Aplikasi ANDROID”. Yogyakarta: ANDI. Kadir, Abdul. 2008. “Dasar Pemrograman WEB Dinamis Menggunakan PHP”. Yogyakarta: ANDI. Safaat H, Nazruddin. 2014. “ANDROID Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android”. Bandung: INFORMATIKA. Sidik, Betha dan I. Pohan, Husni. 2014. “Pemrograman Web dengan HTML”. Bandung: INFORMATIKA. Rosa, A. S dan Shalahuddin, M. 2013. “Rekayasa Perangkat Lunak Terstruktur dan Berorientasi Objek”. Bandung: INFORMATIKA. Saputra, Agus. 2012. “Sistem Informasi Nilai Akademik untuk Panduan Skripsi”. Jakarta: ELEX MEDIA KOMPUTINDO. Utomo, Eko Priyo. 2013. “Mobile Web Programming”. Yogyakarta: ANDI. 6 DAFTAR ISTILAH Administrator : Pengguna aplikasi yang memiliki hak akses. Database : Kumpulan data yang disimpan secara sistematis didalam komputer dan dapat dimanipulasi menggunakan perangkat lunak untuk menghasilkan informasi. Form : Sebuah obyek database yang digunakan untuk membuat kontrol-kontrol untuk proses memasukkan, memeriksa dan memperbarui data. Flowchart : Suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses dengan proses lainnya. Login : Proses untuk mengakses computer dengan memaskkan identitas dari akun pengguna dan kata sandi untuk mendapatkan hak akses. Logout : Proses keluarnya pengguna situs dari suatu sistem jaringan komputer. Input : Semua data dan perintah yang dimasukan ke dalam memori komputer. Password : Kumpulan karakter yang digunakan oleh pengguna jaringan atau sebuah sistem operasi. Program : Pernyataan yang disusun dan dirangkai menjadi satu kesatuan prosedur, yang berupa urutan langkah. Process : Urutan pelaksanaan atau kejadian yang terjadi secara alami atau didesain. Server : Sebuah sistem komputer yang menyediakan jenis layanan tertentu dalam sebuah jaringan komputer. Software : Secara umum dapat diartikan sebagai sekumulan data-data elektronik yang tersimpan dan diatur oleh komputer yang berupa program atau instruksi untuk menjalankan dan mengeksekusi perintah. System : Sekelompok elemen dan komponen yang digabungkan menjadi satu untuk mencapai tujuan tertentu. 7 Username : Nama pengguna yang digunakan untuk login (masuk) kedalam aplikasi. Web : Suatu kumpulan-kumpulan halaman yang menampilkan berbagai macam informasi teks, data, gambar diam ataupun bergerak, data animasi, suara, video maupun gabungan dari semuanya. (LAMPIRAN-LAMPIRANNYA MANA?) 8