MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 ERANCANGAN SISTEM HP CLIENT UNTUK APLIKASI REMOTE CONTROL PC BERBASIS BLUETOOTH Iyus Irwanto 1, Muchammad Husni 2, Royyana Muslim I 2 Mahasiswa Jurusan Teknik Informatika 1 , Dosen Pembimbing 2 Jurusan Teknik Informatika, Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Email : [email protected] Abstrak Perangkat handphone yang dilengkapi dengan teknologi bluetooth merupakan salah satu perangkat mobile yang saat ini umum digunakan oleh masyarakat luas. Teknologi bluetooth memungkinkan penggunanya agar bisa bertukar data dari satu perangkat ke perangkat yang lain tanpa bantuan operator tetapi dengan jangkauan terbatas. Pemanfaatan teknologi Bluetooth saat ini sudah cukup banyak, seperti media transfer file, pengembangan aplikasi GPS, pengembangan aplikasi perangkat mobile dan sebagainya. Salah satu pemanfaatan lain teknologi bluetooth adalah pengembangan aplikasi remote control PC melalui perangkat handphone, dimana sistem ini mampu memberikan penanganan terhadap pengontrolan beberapa aplikasi pada sistem operasi Windows dengan memanfaatkan konektifitas bluetooth. Ketika user menginginkan untuk melakukan kontrol terhadap suatu aplikasi pada PC, user bisa langsung melakukannya melalui perangkat hanphone. Dengan adanya aplikasi ini, user akan dapat dengan mudah mengontrol aplikasi tanpa harus selalu berada di dekat PC untuk menekan tombol-tombol pada keyboard. Hal ini akan sangat bermanfaat ketika user sedang melakukan presentasi dan menginginkan untuk membuka dan melakukan kontrol terhadap lebih dari satu aplikasi. Kata Kunci : Bluetooth, Remote control, control aplikasi 1. PENDAHULUAN menggunakan teknologi nirkabel layanan tanpa bayar bluetooth kapan saja dan dimana saja. Perkembangan teknologi yang terdapat pada perangkat handphone saat ini sangat pesat. Handphone tidak hanya digunakan sebagai alat komunikasi suara saja, tetapi juga sebagai lat yang memudahkan penggunanya dalam kehidupan sehari-hari. Fasilitas pengaksesan internet, e-mail, game, dan sebagainya yang dapat dilakukan langsung dari handphone, merupakan beberapa contoh fasilitas yang ditawarkan bagi para pengguna handphone. Bukan hanya itu saja, bahkan saat ini perangkat handphone sudah dapat digunakan untuk mengoperasikan alat-alat tertentu. Berdasarkan hal–hal tersebut di atas, memunculkan gagasan bagi penulis untuk membuat sebuah aplikasi remote control dengan memanfaatkan teknologi bluetooth. Di dalam aplikasi ini, user dapat membuka dan mengontrol aplikasi pada PC dengan mudah melalui perangkat handphone dengan memanfaatkan konektifitas bluetooth. Selain itu user juga dapat melakukan pencarian file pada PC melalui handphone dan bisa membuka file tersebut langsung dari handphone. Pada umumnya saat ini sudah banyak masyarakat yang mempunyai handphone dengan dukungan konektifitas bluetooth. Teknologi bluetooth memungkinkan kita agar bisa bertukar data atau informasi dari satu perangkat ke perangkat yang lain tanpa memerlukan bantuan dari bantuan operator, tetapi dengan jangkauan koneksi yang terbatas. Bluetooth merupakan sebuah teknologi komunikasi wireless (tanpa kabel) yang beroperasi dalam pita frekuensi 2,4 GHz unlicensed ISM (Industrial, Scientific and Medical) dengan menggunakan sebuah frequency hopping tranceiver yang mampu menyediakan layanan komunikasi data dan suara secara real-time antara hosthost bluetooth dengan jarak jangkauan yang terbatas. Pada dasarnya bluetooth diciptakan bukan hanya untuk menggantikan atau menghilangkan penggunaan kabel di dalam melakukan pertukaran informasi, tetapi juga mampu menawarkan fitur yang baik untuk teknologi mobile wireless dengan biaya yang relatif murah. Sudah cukup banyak dari berbagai kalangan mulai dari kalangan anak muda hingga para eksekutif telah Iyus Irwanto - 5107.100.522 2. TUJUAN PEMBUATAN TUGAS AKHIR Tujuan dari tugas akhir ini adalah membangun sebuah aplikasi remote control berbasis bluetooth yang memiliki kemampuan untuk membuka dan mengontrol aplikasi PC melalui handphone dengan memanfaatkan koneksi bluetooth. Aplikasi ini juga mendukung mekanisme pencarian file dalam filesystem dan langsung dapat membuka file tersebut pada PC melalui perangkat handphone. Sehingga, aplikasi ini akan dapat mempermudah user untuk mengontrol aplikasi pada saat melakukan presentasi tanpa harus selalu berada di dekat PC untuk menekan tombol-tombol pada keyboard. 3. J2SE (Java 2 Standard Edition) Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsystems pada pertengahan tahun 1990. Menurut definisi dari Sun Microsystems, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer stand-alone ataupun pada lingkungan 1 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 jaringan. Kita lebih menyukai menyebut Java sebagai sebuah teknologi dibanding hanya sebuah bahasa pemrograman, karena Java lebih lengkap dibanding sebuah bahasa pemrograman konvensional. Teknologi Java memiliki tiga komponen penting, yaitu: [01] • Programming-language specification • Application-programming interface • Virtual-machine specification Sun membagi arsitektur membagi tiga bagian, yaitu: platform pemrograman jaringan (network programming), dan termasuk sebagai paket-paket dasar bahasa Java. Java a. Java 2 Enterprise Edition (J2EE), digunakan untuk aplikasi berbasis web, aplikasi sistem tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan super set dari Standar Java. b. Java 2 Standard Edition (J2SE), ini adalah yang biasa dikenal sebagai bahasa Java. c. Java 2 Micro Edition (J2ME), merupakan sub set dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk wireless device atau mobile device. Gambar 1 Platform J2SE (Sumber: http://www.java--eb.net/cis3270fall06/lecture/j2se5arch.gif) 4. J2ME (Java 2 Micro Edition) Java 2 Micro Edition (J2ME) digunakan untuk menjalankan dan mengembangkan aplikasi-aplikasi Java pada perangkat semacam telepon genggam, PDA (Personal Digital Assistant), Palm, dan pocket PC. Adanya J2ME memungkinkan para developer membuat aplikasi wireless yang multiplatform dan dapat diimplementasikan pada berbagai merek telepon genggam yang mendukung aplikasi Java. Gambar 1 Platform Java (Sumber: http://java.sun.com/javame/img/javame_components.gif) Gambar 2 Platform J2ME (Sumber: http://java.sun.com/javame/img/wireless_platform.jpg) Java Platform Standard Edition atau yang biasa disebut Java SE, adalah sebuah platform yang lazim digunakan untuk pemrograman Java. Java SE umumnya digunakan sebagai platform yang bekerja pada aplikasi portable. Dalam prakteknya, Java SE tersusun atas mesin virtual (JVM) yang digunakan untuk mengoperasikan program Java, selain itu juga ia tersusun atas serangkaian Library (paket) yang dibutuhkan untuk pengaksesan File System, Jaringan, Antarmuka grafis, dsb. J2SE juga dilengkapi dengan standar API untuk merancang aplikasi desktop dan applets dengan bahasa dasar yang mendukung grafis, M/K, keamanan, konektivitas basis data dan jaringan. [02] J2SE menyediakan lingkungan pengembangan yang kaya fitur, stabil, aman, dan cross-platform. Edisi ini mendukung konektivitas basis data, rancangan user interface, masukkan/ keluaran (input/ output), dan Spesifikasi CLDC adalah sebagai berikut : 1. Mengimplementasikan subset dari J2SE. 2. JVM yang digunakan dikenal dengan nama K-Virtual Machine (KVM) 3. Digunakan pada perangkat handheld dengan ukuran memori terbatas (160 512 Kbytes) 4. Prosesor : 16 Bit atau 32 Bit CLDC diperlukan untuk pengembangan aplikasi wireless dengan MIDP. Implementasi CLDC digunakan untuk program Java pada perangkat keras dengan ukuran memori yang terbatas, 160 sampai dengan 512 kilobyte. [03] Iyus Irwanto - 5107.100.522 2 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 5. Java Dekstop API Pada versi 6 Java Platform Standard Edition, Java telah melakukan perbaikan untuk meminimalisasi perbedaan antara performa dan integrasi dari aplikasi native dan aplikasi Java. Dengan memanfaatkan Java Dekstop API (java.awt.Desktop API), aplikasi berbasis Java dimungkinkan untuk berinteraksi dengan aplikasi default yang diasosiasikan dengan tipe file tertentu pada host platform (Windows, Linux, dan sebagainya.). Sebagai contoh, jika menginginkan untuk membuka file dengan ekstensi *.doc, maka aplikasi default yang ada pada host platform Windows adalah Microsft Word atau Open Office pada Linux. Fungsionalitas baru ini disediakan oleh kelas java.awt.Desktop. API sendiri diadopsi dari proyek JDesktop Integration Components (JDIC) yang mempunyai tujuan pokok untuk menciptakan lingkungan aplikasi yang berbasis Java sebagai aplikasi fisrt-class pada lingkup aplikasi desktop. Secara khusus, Java Dekstop API pada Java SE versi 6 (java.awt.Desktop API) ini memungkinkan aplikasi yang berbasis Java melakukan even-even sebagai berikut : • Membuka browser default pada host system (Windows, Linux, dan sebagainya.) dengan Uniform Resource Identifier (URI) tertentu (http://www.xxx.xxx) • Membuka e-mail client default (Microsoft OutLook) pada host system (Windows). • Membuka aplikasi default untuk melakukan open, edit, atau print terhadap file yang mempunyai asosiasi dengan aplikasi tersebut. Dekstop API (API java.awt.Desktop) memanfaatkan asosiasi file yang ada dalam sitem operasi pada host untuk membuka aplikasi yang terasosiasi dengan tipe file tertentu. Sebagai contoh, jika eksktensi file OpenDocument Text (*.odt) terasosiasi dengan aplikasi OpenOffice, maka aplikasi Java dapat membuka aplikasi OpenOffice untuk keperluan open, edit, atau bahkan bisa juga untuk melakukan mencetak (print) file dengan asosiasi tersebut. Tergantung pada sistem operasinya, aplikasi yang berbeda mungkin terasosiasi dengan setiap aksi yang berbeda juga. [04] 6. Java FileConnection API Dalam sebuah aplikasi sering kali membutuhkan pengaksesan terhadap filesystem, baik itu untuk menulis, menghapus, atau sekedar membaca file. Pada Java SE disediakan kelas java.io.File untuk mengakses filesystem. java.io.File merupakan kelas utama yang fokus bekerja dengan file dan direktori. File dan direktori direpresentasikan oleh objek File. Objek bertipe kelas ini melambangkan suatu file. Lebih tepatnya, objek bertipe File melambangkan nama file, Iyus Irwanto - 5107.100.522 bukan file itu sendiri. Nama yang ditunjuk belum tentu ada. Direktori juga dianggap Java sebagai File, sehingga File juga melambangkan nama direktori sekaligus nama file. Objek File memiliki konstruktor new File(String) yang akan membuat objek File dari namanya. Nama tersebut bisa nama sederhana, nama path relatif, atau nama path absolut (ada dua jenis nama path, yaitu nama path absolut dan nama path relatif. Nama path absolut memiliki informasi lengkap dari akar direktorinya, misalnya "C:\workspace\balikfile\data.dat". Sedangkan nama path relatif adalah nama file yang dihitung mulai dari direktori aktifnya.). Misalnya new File("data.dat") membuat objek File dari file bernama data.dat di direktori aktif. Konstruktor lain memiliki konstruktor new File(File,String), dimana parameter pertama adalah direktori dimana file tersebut berada, dan parameter kedua adalah nama file-nya. Objek File memiliki beberapa metode instansi. Misalnya file adalah variabel bertipe File, berikut ini adalah beberapa metodenya : • file.exists() -- mengembalikan nilai boolean, yang jika true maka file tersebut ada. Kita bisa menggunakan perintah ini misalnya untuk mencegah menulis file yang sama ketika kita membuka objek FileWriter baru. • file.isDirectory() -- mengembalikan nilai boolean yang mengembalikan true jika objek File adalah suatu direktori, dan false jika File adalah file biasa, atau tidak ada file dengan nama tersebut. • file.delete() -- menghapus file jika ada • file.list() -- jika objek File adalah suatu direktori, maka fungsi ini mengembalikan array bertipe String [] yang berisi nama-nama file pada direktori tersebut. Jika tidak, maka kembaliannya adalah null. Semua kelas yang digunakan untuk membaca dan menulis data dari dan ke dalam file memiliki konstruktor yang bisa mengambil objek File sebagai parameternya. Misalnya, jika file adalah variabel bertipe File, dan kita ingin mengambil karakter dari file tersebut, maka kita bisa membuat FileReader untuk melakukannya dengan menggunakan new FileReader(file). [05] 7. Teknologi Bluetooth Bluetooth adalah spesifikasi industri untuk jaringan kawasan pribadi (personal area networks atau PAN) tanpa kabel. Bluetooth dapat dipakai untuk melakukan tukar-menukar informasi dari satu perangkat ke perangkat lain. Bluetooth beroperasi dalam pita 3 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 frekuensi 2,4 Ghz dengan menggunakan sebuah frequency hopping traceiver yang mampu menyediakan layanan komunikasi data dan suara secara real-time antara host-host bluetooth dengan jarak terbatas. Kelemahan teknologi ini adalah jangkauannya yang pendek dan kemampuan transmisi data yang rendah. Nama bluetooth berawal dari proyek prestisius yang dipromotori oleh Bluetooth Special Interest Group (SIG), perusahaan-perusahaan raksasa internasional yang bergerak di bidang telekomunikasi dan komputer, di antaranya 3Com, Ericsson, Intel, IBM, Agere, Microsoft, Motorola, Nokia dan Toshiba. [06] Tabel 1 : Kelas-kelas Bluetooth [07] Class Maximum Permitted Power (mW/dBm) Range (approximate) Class 1 100 mW (20 dBm) ~100 meters Class 2 2.5 mW (4 dBm) ~10 meters Class 3 1 mW (0 dBm) ~1 meter 8. PERANCANGAN APLIKASI Gambar 3 Arsitektur Keseluruhan Sistem Gambar di atas menjelaskan tentang arsitektur sistem secara keseluruhan. Sistem akan bekomunikasi melalui koneksi bluetooth. Sebelum client dan server dapat melakukan komunikasi, client harus mencari bluetooth device (server) yang aktif dan membuat koneksi terlebih dahulu. Kemudian client melakukan request koneksi ke server dengan menggunakan koneksi yang telah dibuat tersebut. Jika request koneksi berhasil, maka list aplikasi yang dapat dikontrol akan di tampilkan pada perangkat handphone/client. Aplikasi Java Mobile RC ini terbagi menjadi 2 bagian, yaitu : 1. Java Mobile RC Mobile (Client) Application Aplikasi pada sisi client ini merupakan aplikasi mobile yang berperan sebagai aplikasi untuk mencari server yang aktif. Sehingga, client dapat melakukan koneksi ke server. Selain itu, aplikasi ini juga merupakan aplikasi pengontrol aplikasiaplikasi pada server yang telah dispesifikasikan sebelumnya. 2. Java Mobile RC Server Application Aplikasi sever ini berperan sebagai aplikasi remote access agar client dapat mengakses ke server. Selain itu aplikasi server ini juga berperan sebagai Iyus Irwanto - 5107.100.522 penerima data yang dikirim dari client melalui bluetooth dan menterjemahkannya sesuai dengan spesifikasi kontrol/event yang telah didefinisikan dan dispesifikasikan sebelumnya. Agar sistem dapat berjalan dengan baik, kedua aplikasi yaitu aplikasi server dan aplikasi client harus berjalan secara bersaman. Sebelum melakukan proses koneksi dari client, aplikasi server harus dijalankan telebih dahulu. Tidak semua aplikasi yang ada pada sistem operasi Windows dapat dikontrol oleh sistem ini. Dalam sistem ini, hanya aplikasi-aplikasi yang umum digunakan dalam presentasi saja yang dapat dikontrol (Microsoft Power Point, Adobe Acrobat Reader, dll). Sistem ini dirancang dan dibangun sedemikian rupa, sehingga akan dapat mempermudah user untuk mengontrol aplikasi tanpa harus selalu berada di dekat PC untuk menekan tombol-tombol pada keyboard. Hal ini akan sangat bermanfaat ketika ketika user melakukan presentasi dan menginginkan untuk membuka dan melakukan kontrol terhadap lebih dari satu aplikasi. 8.1 Use Case Diagram Connect to Server Use case Connect to Server memodelkan proses yang dilakukan untuk menjalin koneksi dengan server. Proses penjalinan koneksi dengan server ini akan menjadi dasar dari semua proses yang ada dalam sistem mobile application. Hal ini disebabkan karena untuk dapat melakukan seluruh proses/aktifitas yang telah digambarkan dalam use case di atas, mobile application/client membutuhkan remote access pada server. Dengan demikian server application dapat melakukan peranannya sebagai penterjemah command yang dirimkan dari client ke dalam sebuah event. 8.1.1 Activity Diagram Connect to Server Diagram Aktivitas untuk proses Connect to Server dapat dilihat pada gambar 3.4 di bawah ini: Gambar 4 Diagram Aktivitas Connect to Server 4 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 Ketika aplikasi dijalankan maka hal pertama yang dilakukan oleh sistem adalah mencari device bluetooth yang aktif. Karena device bluetooth inilah yang nantinya bertindak sebagai server yang bertindak sebagai remote access agar client dapat melakukan koneksi ke server melalui mobile application. Proses ini menentukan proses-proses selanjutnya. Pada gambar 3.4 dijelaskan bahwa aplikasi akan mencari device bluetooth yang aktif dan menampilkannya dalam bentuk list. Setelah ditemukan device bluetooth, maka user dapat memilih server yang akan digunakan. Selanjutnya akan ada cek kondisi apakah server tersedia/siap atau tidak, apabila tidak, maka aplikasi akan menampilkan pesan error dan kembali ke menu sebelumnya. Jika ternyata server tersedia/siap, maka koneksi bluetooth antara client/mobile phone dan server akan terbentuk. 8.1.2 Basic Flow User membuka layar aplikasi pada mobile phone untuk melakukan proses penjalinan koneksi dengan server. 2. Sistem mencari server yang berada dalam jangkauan sistem. Server yang dimaksud adalah server yang memiliki koneksi bluetooth dan sudah dalam kondisi on. 3. Sistem menampilkan server yang ada dalam jangkauan sistem dalam bentu list pada mobile device. 4. User memilih salah satu dari server yang ada. 5. Sistem melakukan proses penjalinan koneksi dengan server yang sudah dipilih oleh user. 1. 8.1.3 8.1.5 Post-Condition Koneksi dengan server terjalin dan siap digunakan untuk proses- proses yang lainnya. 8.2 Use Case Diagram Control Application Use case Control Application ini memodelkan proses yang dilakukan oleh user untuk melakukan aktifitas pengontrolan terhadap aplikasi setelah proses koneksi client-server dan penerimaan list aplikasi oleh user berhasil dilakukan. Gambar 5 Diagram Use Case Control Application Use case Control Application ini menggambarkan ketergantungan antara dua use case di atas, yaitu sebelum user dapat melakukan pengontrolan terhadap aplikasi, maka terlebih dahulu client harus menerima list aplikasi yang dikirimkan dari server. 8.2.1 Activity Diagram Control Application Diagram aktivitas Control Application dapat dilihat pada gambar 3.8 berikut ini: Alternate Flow 1. Bluetooth yang ada pada mobile device tidak dalam keadaan on. • 2. User menyalakan bluetooth yang ada pada mobile device Tidak ditemukan server dalam jangkauan sistem. • 3. Proses penjalinan koneksi berakhir dengan status tidak ada server yang ditemukan. Penjalinan koneksi gagal dilakukan. • Aplikasi akan menampilkan respon error dan kembali ke menu sebelumnya. 8.1.4 Pre-Condition 1. Bluetooth yang ada pada mobile device dalam keadaan on. 2. Aplikasi server dalam keadaan running. 3. Server yang akan digunakan dalam kondisi bluetooth on serta berada pada radius yang dapat dijangkau oleh bluetooth yang dimiliki oleh mobile device. Iyus Irwanto - 5107.100.522 Gambar 6 Diagram Aktivitas Control Application Pada gambar 3.8 activity diagram Control Application di atas dijelaskan tentang proses pengontrolan aplikasi. Saat user ingin melakukan kontrol aplikasi, user harus melakukan proses penjalinan koneksi client-server terlebih dahulu. Jika penjalinan koneksi berhasil dilakukan, maka secara otomatis client telah menerima list aplikasi yang akan dikontrol. Kemudian user memilih command kontrol yang diinginkan melalui mobile application. Setelah user memilih command yang diinginkan, command 5 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 tersebut kemudian dikirimkan dieksekusi menjadi sebuah event. 8.2.2 ke server untuk Basic Flow User melakukan proses penjalinan koneksi dari client ke server dan pada saat yang bersamaan client menerima list aplikasi yang dikirimkan oleh server. 2. User memilih command kontrol aplikasi yang diinginkan melalui mobile application. 3. Sistem mengirimkan command ke server untuk dieksekusi. 4. Server mengeksekusi command menjadi event. 1. 8.2.3 Alternate Flow 1. Jika proses penjalinan koneksi tidak berhasil dilakukan. • Sistem akan berakhir dengan kondisi penjalinan koneksi dari client ke server tidak bisa terjalin yang akan mengakibatkan user tidak dapat melakukan pengontrolan aplikasi. 8.2.4 Pre-Condition Proses penjalinan koneksi clien ke server berhasil dilakukan. 8.2.5 Post-Condition Command kontrol yang dikirimkan client bisa diterima oleh server dan dapat dieksekusi menjadi sebuah event. Gambar 8 Diagram Aktivitas Browse File System 8.3.2 8.3 Use Case Diagram Browse File System Use case Browse File System memodelkan proses yang dilakukan user pada saat melakukan browsing filesystem. Gambar 7 Diagram Use Case Browse File System Pada gambar 3.19 terdapat dua buah use case, yaitu use case Browse File System dan use case Open File. Kedua use case tersebut dihubungkan dengan relasi include dari use case Browse File System ke use case Open File. Hal ini berarti bahwa user dimungkinkan untuk melakukan proses membuka file yang dipilih setelah melakukan browse filesystem. Basic Flow User membuka aplikasi mobile unuk menjalankan menu File System. 2. Sistem mengirimkan command ke server untuk mengakses filesystem. 3. Server menerima command yang telah dikirimkan dari client. 4. Sistem mengakses file system dan mengambil list file/direktori. 5. Server mengirimkan list file/direktori yang telah didapatkan ke client. 6. Dari list yang sudah diterima, user memilih file/direktori yang ingin dibuka. 7. Sistem mengirimkan path file/direktori ke server. 8. Server menerima command untuk kemudian mengekseskusinya untuk membuka file/direktori. 1. 8.3.3 Alternate Flow 1. Jika path yang diterima server merupakan path direktori. • 8.3.1 Activity Diagram Browse File System Diagram aktivitas untuk proses Browse File System ditunjukkan pada gambar 3.20 di bawah ini. • 2. Iyus Irwanto - 5107.100.522 Sistem akan mengeksekusinya untuk membuka folder sesuai path yang diterima. Setelah list isi folder didapatkan oleh list tersebut kemudian server, dikirimkan kembali ke client. Jika path yang diterima server adalah path dari suatu file. 6 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 • Sistem mengeksekusinya untuk membuka file sesuai path yang telah diterima. 8.3.4 Pre-Condition Status koneksi antara client dan server dalam keadaan terjalin dengan baik. 8.3.5 Post-Condition File yang dipilih oleh user dapat dibuka di sisi server. 9. UJI COBA Uji coba dilakukan untuk mengetahui apakah semua fungsi pada aplikasi Java Mobile Remote Control berjalan sesuai dengan yang diinginkan. 9.1 Uji Coba Mobile Application 9.1.1 Uji Coba Koneksi ke Server Setalah tampilan menu pembuka user akan melihat menu utama untuk mencari server seperti ditunjukkan pada gambar 9 berikut ini. Gambar 9 Tampilan Menu Utama Dari tampilan Menu Utama gambar 9, user dapat memulai dengan memilih tombol “Select” untuk memulai proses pencarian bluetooth device yang akan berperan sebagai server yang berbasis bluetooth. Setelah user menekan “Select”, maka akan muncul tampilan status sistem sedang melakukan pencarian server (Gambar 4.3). Untuk keluar dari aplikasi user dapat menekan “Exit”. Gambar 2 Tampilan Status Pencarian Server Untuk membatalkan proses pencarian server, user dapat menekan “Cancel” dan kembali ke Menu Utama (Gambar 4.2). Jika ada server terdeteksi, maka sistem akan memunculkan nama server dalam bentuk list seperti pada gambar 10 di bawah ini. Iyus Irwanto - 5107.100.522 Gambar 10 Tampilan Menu Select Server Dari Menu Select Server (Gambar 10) di atas, user kemudian dapat melakukan proses koneksi ke server yang diinginkan. Untuk melakukannya, user dapat menyorot server yang diinginkan kemudian menekan “Select” atau “Back” untuk kembali ke menu sebelumnya (Gambar 9). Jika penjalinan koneksi ke server berhasil dilakukan, maka sistem akan menampilkan list Menu Pilihan seperti ditunjukkan pada gambar 11 di bawah ini. Gambar 11 Tampilan Menu Pilihan Pada Menu Pilihan ini terdapat 7 (tujuh) menu yang masing-masing memiliki spesifikasi kontrol yang berbeda-beda. Menu-menu tersebut adalah Control Mouse, Control Application, System, File System, Open Media, Switch Appication dan Open URL. Berikut ini hanya dijelaskan 2 (dua) fitur saja, yaitu Control Application dan Browse File System yang keduanya merupakan fitur utama dari aplikasi Java Mobile Remote Control ini. 9.1.2 Uji Coba Control Application Menu Pilihan Control Application ini digunakan untuk melakukan kontrol pada aplikasi pada sistem operasi Windows. Pada sistem ini tidak semua aplikasi dalam sistem operasi Windows dapat dikontrol. Hanya berapa aplikasi yang sering dan umum digunakan pada saat presentasi yang dapat ditangani oleh sistem. Untuk memulai menggunakan menu ini user dapat menyorot menu Control Application kemudian menekan “Select”. Kemudian sistem akan menampilkan aplikasi-aplikasi yang dapat dikontrol oleh user dalam bentuk list seperti ditunjukkan pada gambar 12 berikut ini. 7 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 Gambar 12 Tampilan Menu Pilihan Control Application Untuk mengontrol salah satu aplikasi, user dapat memilih aplikasi dengan menyorot aplikasi yang diinginkan kemudian menekan “Select”. Setelah pemilihan aplikasi dilakukan, maka sistem akan menampilkan navigasi kontrol dalam bentuk list (Gambar 13). Berikut ini adalah antarmuka menu navigasi kontrol yang muncul setelah user melakukan pemilihan jenis aplikasi yang ingin dikontrol pada menu Control Application (Gambar 12). Selanjutnya sistem akan menampilkan isi file system pada Windows dalam bentuk list seperti gambar 14 di atas. Seperti halnya pada Windows, Jika user ingin melakukan browse file yang berada di dalam direktori tertentu, user dapat memilih direktori yang dinginkan kemudian menekan “Select”. Begitu juga jika user menginginkan untuk membuka file, user dapat menyorot file yang diinginkan untuk dibuka, kemudian dengan menekan tombol “Select”, maka file yang telah dipilih tersebut akan terbuka pada server. Untuk kembali ke idirektori sebelumnya user dapat memilih list “..” yang terletak pada indeks pertama kemudian menekan “Select”. 9. 2 Uji Coba pada Server Application Server application harus dijalankan pertama kali sebelum mobile/client application. Karena posisi server nanti adalah sebagai penyedia service yang dicari oleh client, bukan sebaliknya. Saat perrtama kali dijalankan user akan melihat tampilan seperti pada gambar 15. User dapat melakukan beberapa operasi pada aplikasi server ini. Jika user ingin keluar dari aplikasi server, user dapat menekan menu “File-Exit”. Untuk melihat informasi yang berkaitan dengan aplikasi Java Mocle RC, user dapat menekan “Help-About” atau “Help-Index” untuk melihat petunjuk penggunaan aplikasi. Gambar 13 Tampilan Menu Pilihan Navigasi Kontrol Jika user ingin mengeksekusi salah satu jenis kontrol, user dapat memilih salah satu jenis kontrol yang diinginkan kemudian menekan “Select” atau “Back” untuk kembali ke menu sebelumnya (Gambar 12). 9.2.3 Uji Coba Browse File System Dengan menggunakan Menu Pilihan File System ini user dapat melakukan browse filesystem pada Windows dan juga dapat membuka file dengan aplikasi default. Untuk memulainya user dapat memilih menu File System pada Menu Pilihan kemudian menekan “Select”. Gambar 15 Tampilan Antarmuka Server Application 1 Saat pertama kali dijalankan, status yang ada pada aplikasi server adalah sedang menunggu koneksi (Waitng for incoming connection…) dari client. Jika koneksi antara client dan server telah terjalin dengan baik, maka aplikasi server akan menampilkan status bahwa client sudah terkoneksi (Client connected…) dengan server. Kemudian setiap aktivitas yang dilakukan client akan ditampilkan dalam bentuk list ke dalam log area. Gambar 4.24 adalah hasil uji coba tampilan Server Application setelah client dan server berhasil terkoneksi dengan baik. Gambar 14 Tampilan Menu Pilihan File System Iyus Irwanto - 5107.100.522 8 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 Tabel 3 Hasil Uji Coba Proses Kontrol Remote Gambar 16 Tampilan Antarmuka Server Application 2 9.3 Uji Coba Performa System Uji coba ini dilakukan untuk mengetahui performa sistem untuk setiap proses yang dijalankan dari jarak yang berbeda-beda dari perangkat server. Selain itu pengujian ini juga dilakukan untuk mengetahui kecepatan/response time dan kestabilan sistem untuk masing-masing jarak yang digunakan. Pengujian sistem dilakukan di dalam ruangan kelas yang berukuran 10 x 9 meter. Pengujian dilakukan sebanyak 5 (lima) kali dengan menggunakan jarak yang berbeda-beda antara perangkat handphone/client dengan server. Pengujian dimulai dari jarak 2 meter dan berlanjut dengan kelipatannya. Hasil uji coba pada tabel 4.2 di bawah ini adalah hasil uji coba pada proses penjalinan koneksi yang dilakukan dari client ke server. Pengujian ini dilakukan untuk mengetahui jangkauan sistem untuk melakukan penjalinan koneksi pada range jarak tertentu yang diujikan. Proses penjalinan koneksi ke server terdiri dari 2 (dua) tahap, yaitu Pencarian Server dan Koneksi ke Server. Sebagai data pembanding, pada tabel 4.4 di bawah ini disajikan data response time pada masingmasing fitur di dalam Menu Pilihan jika dijalankan secara manual, yaitu langsung dari perangkat server (komputer). Tabel 4 Hasil Uji Coba Proses Kontrol Manual Tabel 2 Hasil Uji Coba Proses Koneksi ke Server Untuk mengetahui performa fitur-fitur yang terdapat pada sistem, diperlukan pengujian terhadap fitur-fitur tersebut. Gambar 4.3 adalah tabel hasil uji coba untuk semua fitur yang terdapat di dalam Menu Pilihan, yaitu Control Mouse, Control Application, System, File System, Open Media, Switch Application, dan Open URL. Seperti halnya pengujian pada proses penjalinan koneksi ke server, pengujian setiap fitur dilakukan sebanyak 5 (lima) kali dengan menggunakan range jarak yang berbeda pada masing-masing fitur. Iyus Irwanto - 5107.100.522 10. KESIMPULAN Dari pelaksanaan uji coba yang telah dilakukan pada bab sebelumnya, didapatkan beberapa kesimpulan sebagai berikut : 1. Sistem sudah cukup memadai sebagai aplikasi remote control, karena sistem dapat berjalan cukup stabil pada jarak jangkauan sampai dengan 10 meter. 2. Proses pengoperasian sistem tidak memerlukan setting atau konfigurasi tertentu baik di sisi server application maupun client/mobile aaplication, sehingga hal ini sangat memudahkan user dalam penggunaan. 3. Secara keseluruhan proses penjalinan koneksi dari client ke server memerlukan waktu 17.36 detik, termasuk proses pencarian server sekaligus koneksi dari client ke server. 9 MAKALAH SEMINAR TUGAS AKHIR PERIODE SEPTEMBER 2009 4. 5. Pada proses pengujian semua fitur pada Menu Pilihan, secara keseluruhan didapatkan ratarata response time sebesar 5.58 detik (Tabel 4.3). Sedangkan pada percobaan secara manual didapatkan rata-rata response time sebesar 5.14 detik (Tabel 4.2). Dengan demikian dapat disimpulkan bahwa uji coba secara remote hanya memiliki selisih response time 0.44 detik atau 7.88 % lebih lama dari percobaan secara manual. Rata-rata response time yang dibutuhkan untuk proses pengontrolan aplikasi (contoh : Microsoft Power Point) tidak lebih dari 0.4 detik, sehinga sistem masih cukup baik untuk menangani aktifitas presentasi. 11. SARAN Berikut merupakan beberapa saran untuk pengembangan sistem di masa yang akan datang, berdasar pada hasil perancangan, implementasi, dan uji coba yang telah dilakukan. 1. Diharapkan aplikasi ini pada sisi client/mobile apllication dapat dikembangkan lagi sehingga aplikasi ini tidak hanya dapat berjalan pada mobile phone, tetapi juga dapat berjalan pada mobile device yang lain seperti PDA dan semacamnya. 2. Di masa yang akan datang diharapkan aplikasi ini dapat mendukung multi platform. Jadi aplikasi ini selain dapat berjalan pada sistem operasi Windows, diharapkan aplikasi ini juga dapat menangani pengontrolan aplikasi-aplikasi pada sistem operasi lain (Contoh : Linux, Macintosh) yang tentunya mempunyai spesifikasi kontrol yang berdeda dengan aplikasiaplikasi yang terdapat pada sistem operasi Windows. 3. Dari sisi koneksi, sistem ini miungkin dapat dikembangkan lagi dengan menggunakan koneksi internet/GPRS. Jadi dengan demikian jangkauan koneksi akan lebih luas daripada jangkauan yang dimiliki oleh bluetooth. 4. ava&catid=6:internet&Itemid=15 >. [03] Eristiawan G., 2009, Pembuatan Perangkat Lunak Pemberi Lokasi Pada Citra Menggunakan Global Positioning System (GPS), Tugas Akhir, Jurusan Teknik Informatika Fakultas Teknologi Informasi ITS, Surabaya. [04] Sun Developer Network (SDN), 19 Mei 2009, Using Java Dekstop API in Java SE 6 <URL:http://java.sun.com/developer/technicalA rticles/J2SE/Desktop/javase6/desktop_api/ > [05] Belajar Java, 21 Mei 2009, Java Untuk Pemula <URL:http://java.lyracc.com/belajar/java-untukpemula/nama-file-direktori-dan-kelas-file > [06] Siyamta Y., 16 Mei 2009, Pengantar Teknologi Bluetooth. IlmuKomputer.com. <URL:http://ilmukomputer.org/2008/11/25/pen gantar-teknologi-bluetooth/> [07] Bluetooth Range in Relation to Different Power Classes, 21 Mei 2009 <URL:http://www.palowireless.com/INFOTOO TH/knowbase/general/10.asp> Dari sisi fitur, aplikasi ini mungkin dapat dikembangkan lagi dengan menambahkan fitur yang mendukung pengeksekusian perintahperintah terminal pada sistem operasi Linux dan atau perintah-perintah pada command prompt pada sistem operasi Windows. 12. DAFTAR PUSTAKA [01] Wijaya A., Yulianti E., Abdurrahman S., 5 Juni 2009, Sistem Operasi <URL:http://bebas.vlsm.org/v06/Kuliah/Sistem Operasi/2008/240/04._Bahasa_Java-1.pdf > [02] Perpustakaan Institut Teknologi Telkom, 30 Mei 2009, Java <URL:http://www.ittelkom.ac.id/library/index.p hp?option=com_content&view=article&id=32:j Iyus Irwanto - 5107.100.522 10