Aplikasi Pencarian Makna Kata Dalam Bahasa Indonesia Dengan Teknologi Java 2 Micro Edition (J2ME) (1)
Mirwan Nurjaya, (2)Ria Hari Gusmita, (3)Yusuf Durrachman (1)
Mahasiswa Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta Telp. (021) 98669617 e-mail :
[email protected] (2)
Dosen Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta (3)
Dosen Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta ABSTRAK Time Is Money, mungkin peribahasa tersebut yang cocok diungkapkan untuk para pengguna internet dial up ketika mereka akan mengirim (upload) ataupun download file dari dan ke suatu alamat situs, seperti halnya surat elektronik (email). Semakin besar ukuran file yang akan dikirim atau disimpan maka semakin banyak pula waktu yang dibutuhkan untuk melakukan proses tersebut. Dan juga semakin besar ukuran file yang ada dalam media penyimpanan pada komputer, maka semakin besar pula kapasitas/ruang yang dibutuhkan untuk menyimpan file – file tersebut. Semakin berkembangnya teknologi perangkat bergerak (mobile device) pada saat ini, membuat perkembangan aplikasi – aplikasi perangkat bergerak (mobile device) semakin pesat. Apalagi dengan hadirnya teknologi perangkat bergerak (mobile device) dengan Platform Java 2 Micro Edition (J2ME) yang dikembangkan oleh SUN Microsystem. Oleh karena itu, penulis membuat aplikasi yang ditujukan untuk perangkat bergerak (mobile device) berupa Aplikasi Pencarian Makna Kata Dalam Bahasa Indonesia Pada Teknologi Platform Java 2 Micro Edition (J2ME). Aplikasi ini dapat digunakan untuk melihat makna kata, mencari kata dasar bahasa Indonesia yang memiliki makna kata sesuai dengan kamus besar bahasa Indonesia dan memiliki sistem pengkoreksian kata dasar. Dalam metode pengembangan sistem yang digunakan dalam aplikasi ini adalah dengan metode System Development Life Cycle (SDLC) dengan model proses Waterfall untuk membuat suatu sistem (perangkat lunak). Kata kunci : Perangkat Bergerak (Mobile device), Java 2 Micro Edition (J2ME), Waterfall, Makna Kata, Aplikasi Pencarian.
1.
PENDAHULUAN Saat ini internet sudah berkembang menjadi salah satu media yang paling populer di dunia. Karena fasilitas dan kemudahan yang dimiliki oleh internet maka internet untuk saat ini sudah menjadi barang yang tidak asing lagi. Perkembangan era teknologi sekarang ini berkembang sangat pesat. Teknologi mampu memudahkan setiap kebutuhan manusia. Manusia pun mulai bergantung kepada teknologi. Setiap permasalahan yang dialami manusia selalu dicoba dengan diselesaikan dengan menggunakan teknologi. Banyak teknologi yang dikembangkan oleh manusia. Salah satunya adalah teknologi informasi atau yang sering kita kenal yaitu komputer (Iridiastadi, 2006 : 1). Teknologi komputer merupakan salah satu teknologi yang paling banyak digunakan dalam pengembangan informasi demikian pula
pada teknologi perangkat bergerak (mobile device) seperti Telepon genggam (handphone), PDA (Personal Data Asisten), sampai Pocket PC sepertinya tidak terelakkan lagi. Karena memang kebutuhan komunikasi yang cepat sekarang ini merupakan kebutuhan hidup sehari – hari bagi masyarakat, apalagi masyarakat yang hidup di kota – kota besar. Banyaknya produsen (vendor) perangkat bergerak (mobile device) yang bermunculan menyebabkan perkembangan teknologi komunikasi di Indonesia tumbuh dengan pesat. Karena memiliki banyak fungsi seperti sebagai sarana komunikai, dokumentasi, pengolahan citra gambar (images) dan sebagainya. Saat ini pengguna telepon genggam tidak lagi terbatas pada alat komunikasi bergerak (mobile phone) sebagai pengganti telepon rumah semata, tetapi sudah semakin berkembang ke arah penggunaan internet pada telepon genggam. Apalagi didukung dengan berkembangnya
teknologi GPRS (General Packet Radio Service) pada kebanyakan telepon genggam keluaran baru. Teknologi GPRS memungkinkan pengguna telepon genggam untuk melakukan koneksi internet dengan menggunakan WAP (Wireless Application Protocol) yang dapat dihubungkan dengan komputer, notebook ataupun dengan hanya menggunakan telepon genggam yang mempunyai WAP browser. Teknologi WAP adalah protokol yang khusus dibuat untuk komunikasi data pada wireless device / mobile phone dengan internet. WAP hanya dapat menerima data dalam bentuk script WML (Wireless Markp-up Language). Sedangkan teknologi J2ME adalah platform yang dikembangkan oleh SUN Microsystem, Inc. Yang memungkinkan pengguna telepon genggam untuk membuat dan meng-install program aplikasi Java pada telepon genggamnya. Komunikasi data antara teknologi J2ME dengan internet menggunakan protokol HTTP. Dengan adanya perkembangan komunikasi manusia dalam melakukan interaksi dibutuhkan suatu hal dalam cara pengelolaan untuk menghasilkan informasi yang benar dan tepat maka dibutuhkan pemahaman penggunaan suatu kata yang dimiliki oleh setiap manusia. Kosakata dasar adalah kata – kata yang tidak mudah berubah atau sedikit sekali kemungkinannya dipungut dari bahasa lain. Kata dasar ibu setelah kita buktikan dalam kamus ternyata tidak hanya memiliki satu makna. Bahkan lebih dari itu kata ibu dapat berkembang menjadi ibu angkat, ibu ayam (induk ayam), ibu bapak, ibu jari, ibu kaki (jempol, empu kaki), ibu kandung, ibu kota, ibu kota kabupaten, ibu kotamadya, ibu kota propinsi, ibu kota negara, ibu negeri, ibu pertiwi, ibu rumah tangga, ibu sungai. Dengan demikian, kita dapat memahami bahwa kata dasar kadang – kadang mempunyai lebih dari satu makna. Dengan latihan membuat kalimat melalui kata dasar ibu misalnya, pelajar dapat memahami kata ibu ternyata setelah dikembangkan ternyata mempunyai makna lebih dari satu makna. Pada perkembangan dan permasalahan di atas, penulis mencoba memberikan dampak positif atau manfaat dari perkembangan perangkat bergerak (mobile device). Dengan mengembangkan aplikasi yang akan mempermudah manusia untuk memperoleh informasi tentang makna kata. Melalui penelitian ini, maka penulis akan membangun aplikasi pencarian makna kata dalam bahasa Indonesia untuk pengguna telepon genggam dalam mencari informasi kata yang dituju dan hasil pencarian makna kata dari sebuah deskripsi makna kata tersebut bernilai efektif, efisien dan di dalam sistem terdapat metode pengkoreksian kata.
Penghematan memori dapat dilakukan karena database tempat penyimpanan kata berserta hasil pencarian makna kata tidak disimpan pada telepon genggam, melainkan disimpan pada komputer server dan untuk mendapatkan hasil pencarian makna kata, aplikasi komunikasi bergerak (mobile phone) akan melakukan koneksi GPRS dari telepon genggam ke komputer server. Dengan menggunakan metode waterfall, maka penulis melakukan penelitian dengan membuat Aplikasi Pencarian Makna Kata Dalam Bahasa Indonesia Dengan Teknologi Java 2 Micro Edition (J2ME).
2.
LANDASAN TEORI
2.1
Bahasa Alami (Natural Language Processing)
Menurut Dewi (2003 : 7), salah satu bagian dari kecerdasan buatan (Artifical Intelligent) adalah Natural Language Processing. Menurut Sumantri & Suhartanto (1997 : 12), studi tentang bahasa alami (Natural Language Processing) ini menjadi bagian yang sangat penting dalam bidang kecerdasan buatan. Ada dua hal tujuan penting dalam penelitian terhadap bahasa alami ini. Tujuan pertama disebut tujuan secara teoritikal, adalah untuk mengetahui bagaimana kita menggunakan bahasa sebagai sarana berkomunikasi. Tujuan yang kedua yang disebut sebagai tujuan secara teknologi, adalah untuk membangun antarmuka yang pintar di masa mendatang, dimana bahasa alami memegang peranan penting bagi interaksi antara manusia dengan komputer atau yang lebih sering dikenal sebagai man-machine interaction. 2.2
Konsep Metode Aplikasi Pencarian
Algoritma adalah urutan langkah - langkah logis penyelesaian masalah yang disusun secara sistematis dan logis (Sutarman, 2005). Kata Logis merupakan kata kunci dalam Algoritma. Langkah - langkah dalam Algoritma harus logis dan harus dapat ditentukan nilai salah atau benarnya. Aplikasi atau perangkat lunak aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media. (http://id.wikipedia.org/wiki/Aplikasi). Pencarian (searching) merupakan proses yang fundamental dalam pengolahan data. Proses pencarian adalah menemukan nilai (data) tertentu di dalam
sekumpulan data yang bertipe sama (baik bertipe dasar atau bertipe bentukan). 2.3
Konsep Java
Salah satu keunggulan Java adalah sifatnya yang ‘platform independence’, artinya Java (baik source program maupun hasil kompilasinya) sama sekali tidak bergantung pada sistem operasi dan platform yang digunakan. Setiap program yang ditulis dengan bahasa Java, hasil kompilasinya berupa bytecode, yaitu sekumpulan instruksi seperti kode mesin tetapi tidak spesifik untuk satu jenis prosesor tertentu. Lingkungan development Java terdiri atas dua bagian, yaitu Java compiler dan Java interpreter. Java compiler menterjemahkan source program ke dalam bytecode. Hasil kompilasi, yaitu program Java, akan bisa dijalankan dengan bantuan Java interpreter. Java interpreter dapat dijalankan langsung (dari command prompt) maupun dari program applet viewer atau web browser (untuk applet). Bahasa Java selain terkenal dengan motto-nya yaitu “write once run everywhere”, penggunaan Java juga telah semakin meluas dari aplikasi berbasis web sampai dengan peralatan – peralatan yang bersifat bergerak (mobile), seperti telepon genggam (handphone), PDA phone dan sebagainya. 2.3.1 Mengapa J2ME J2ME dirancang untuk dapat menjalankan program Java pada perangkat – perangkat semacam telepon genggam (handphone) dan PDA, yang memiliki karakteristik yang berbeda dengan sebuah komputer biasa, misalnya kecilnya jumlah memori pada telepon genggam (handphone) dan PDA. J2ME terdiri atas komponen – komponen sebagai berikut : 1. Java Virtual Machine (JVM) Komponen ini untuk menjalankan program – program Java pada emulator atau handled devices. 2. Java API (Application Programming Interface) Komponen ini merupakan kumpulan library untuk menjalankan dan mengembangkan program Java pada handled devices. 3. Tools lain untuk pengembangan aplikasi Java semacam emulator Java Phone, emulator Motorolla. 2.3.2 Konfigurasi J2ME Dalam J2ME dibagi menjadi dua bagian yang dikenal dengan istilah configuration dan profile. a.
dirancang yakni menyediakan library standar yang mengimplementasikan fitur standar dari sebuah handled devices. Mengapa perlu J2ME Configuration bisa dikatakan merupakan JRE pada handled devices. Lingkungan kerja yang dimaksud meliputi Java Virtual Machine yang digunakan untuk menjalankan program Java.
J2ME Configuration J2ME Configuration mendefinisikan lingkungan kerja J2ME runtime. Oleh karena setiap handled devices memiliki fitur – fitur yang berbeda - beda, J2ME Configuration ini
Ada dua kategori J2ME Configuration saat ini, yaitu : 1. CLDC (Connected Limited Device Configuration) Kategori ini umumnya digunakan untuk aplikasi Java pada telepon genggam (handphone) semacam Nokia, Samsung Java Phone, Motorola i85s, PDA (Personal Digital Assistant) semacam PALM, Pocket PC. Umumnya perangkat – perangkat tersebut hanya memiliki memori berukuran 160512 KiloBytes. 2. CDC (Connected Device Configuration) Kategori ini umumnya digunakan untuk aplikasi Java pada perangkat – perangkat handled devices dengan ukuran memori paling tidak 2 Megabytes. Contohnya adalah internet TV, Nokia Communicator dan car television atau TV pada mobil. Perbedaan antara CDC dan CLDC adalah sebagai berikut Tabel 2.1 Perbandingan antara CDC dan CLDC CLDC CDC Mengimplementasikan Mengimplementasikan subset dari J2SE. seluruh fitur pada J2SE. JVM yang digunakan JVM yang digunakan dikenal dengan nama dikenal dengan nama KVM. CVM. Digunakan pada perangkat Digunakan pada handled dengan ukuran perangkat handled memori terbatas (160 – dengan ukuran memori 512 Kilo Bytes). minimal 2 Mbytes. Processor : 16 bit atau 32 Processor : 32 bit bit b.
J2ME Profile Jika J2ME Configuration menyediakan librari – library Java untuk implementasi fitur – fitur standar dari sebuah handled devices, J2ME Profile menyediakan implementasi – implementasi tambahan yang sangat spesifik dari sebuah handled devices. Kemampuan standar itulah yang diimplementasikan oleh J2ME Configuration, sedangkan kemampuan fitur lain sangat bergantung pada jenis perangkat handled yang digunakan akan diimplementasikan oleh J2ME Profile. Ada lima kategori J2ME Profile saat ini, yaitu : 1. Mobile Information Device Profile (MIDP). 2. Foundation Profile (FP). 3. Personal Profile. 4. RMI Profile. 5. Personal Digital Assitance Profile.
2.4
Java Virtual Machine
Java Virtual Machine (JVM) adalah sebuah spesifikasi untuk sebuah komputer abstrak. JVM terdiri dari sebuah kelas pemanggil dan sebuah interpreter Java yang mengeksekusi kode arsitektur netral. Kelas pemanggil memanggil file .class dari kedua program Java dan Java API untuk dieksekusi oleh interpreter Java. Interpreter Java mungkin sebuah perangkat lunak interpreter yang menterjemahkan satu kode byte pada satu waktu, atau mungkin sebuah just-intime (JIT) compiler yang menurunkan bytecode arsitektur netral ke dalam bahasa mesin untuk host computer. Program yang ditulis dengan java di-compile menjadi bahasa mesin. Tetapi bahasa mesin untuk komputer tersebut tidak benar – benar ada. Oleh karena itu disebut "Virtual" komputer, yang dikenal dengan Java Virtual Machine (JVM). Bahasa mesin untuk JVM disebut Java bytecode. Salah satu keunggulan dari Java adalah dapat digunakan atau dijalankan pada semua jenis komputer. Untuk menjalankan program Java, komputer membutuhkan sebuah interpreter untuk Java bytecode. Interpreter berfungsi untuk mensimulasikan Java Virtual Machine (JVM) sama seperti virtual computer mensimulasikan Personal Computer (PC). Java bytecode yang dihasilkan oleh setiap jenis komputer berbeda beda, sehingga diperlukan interpreter yang berbeda pula untuk setiap jenis komputer. Tetapi program Java bytecode yang sama dapat dijalankan pada semua jenis komputer yang memiliki Java bytecode. 2.5
Konsep Sistem Operasi Java
Sistem operasi biasanya ditulis dalam sebuah kombinasi dari kode bahasa C dan assembly, terutama disebabkan oleh kelebihan performa dari bahasa tersebut dan memudahkan komunikasi dengan perangkat keras. Satu kesulitan dalam merancang sistem basis bahasa adalah dalam hal proteksi memori, yaitu memproteksi sistem operasi dari pemakai program yang sengaja memproteksi pemakai program lainnya. Sistem operasi tradisional mengaharapkan pada tampilan perangkat keras untuk menyediakan proteksi memori. Sistem basis bahasa mengandalkan pada tampilan keamanan dari bahasa. Sebagai hasilnya, sistem basis bahasa menginginkan pada alat perangkat keras kecil, yang mungkin kekurangan tampilan perangkat keras yang menyediakan proteksi memori. Platform Java terdiri dari kumpulan library, Java Virtual Machine (JVM), kelas – kelas loader yang dipaket dalam sebuah lingkungan rutin Java, dan sebuah compiler, debuger, dan perangkat lain yang dipaket dalam Java Development Kit (JDK). Java 2 adalah generasi yang sekarang sedang berkembang dari platform Java. Agar sebuah program Java dapat dijalankan, maka file dengan ekstensi .java harus dikompilasi menjadi file bytecode. Untuk menjalankan bytecode tersebut dibutuhkan Java Runtime Environment (JRE) yang memungkinkan pemakai untuk menjalankan program Java, hanya menjalankan, tidak untuk membuat
kode baru lagi. JRE berisi JVM dan library Java yang digunakan The Mobile Information Device Profile (MIDP) berada di atas dari CLDC. Anda tidak bisa menulis aplikasi mobile hanya dengan menggunakan CLDC API. Anda harus tetap memanfaatkan MIDP yang mendefinisikan UI. Spesifikasi MIDP, kebanyakan seperti CLDC dan API lainnya sudah digambarkan melalui Java Community Process (JCP). JCP melibatkan sebuah kelompok ahli berasal dari lebih dari 50 perusahaan, yang terdiri atas pabrik perangkat bergerak (mobile device), pengembang software. MIDP terus berkembang, dengan versi – versi masa depan yang telah lulus dari proses ketat JCP. 2.6
Database
Database merupakan kumpulan record atau data yang terstruktur dan tersimpan pada sistem komputer. Sebuah database menggunakan software dalam mengorganisir penyimpanan data. Dengan kata lain, software membuat model struktur database kedalam apa yang dikenal dengan database model. 2.6.1 Pengertian Database Database adalah sekumpulan data – data yang tersebar serta terhubung secara logical dan deskripsi mengenai data, yang dirancang untuk memenuhi kebutuhan informasi perusahaan (Connolly dan Breg, 2002). Database adalah sebuah tempat penyimpanan data yang besar, yang dapat dipakai secara simultan oleh banyak departemen dan user (Connolly dan Breg, 2002). Database adalah kumpulan elemen – elemen data yang terintergrasi dan terhubung secara logic (an integrated collection of logically related data elements) (O’Brien, 2003). 2.6.2 Database Management System (DBMS) DBMS adalah software system yang memungkinkan user untuk mendefinisikan, membuat, memelihara dan control access ke database (a software system that enables users to define, create, maintain dan control access to the database) (Connolly dan Breg, 2002). DBMS adalah sekumpulan program yang mengontrol pembuatan, pemeliharaan dan penggunaan database pada suatu organisasi dan penggunanya (a set of computer programs that controls the creation, maintenance and use the databases of an organization and its end user) (O’Brien, 2003). DBMS merupakan sekumpulan software program yang kompleks yang mengatur organisasi, penyimpanan, management dan penerimaan data dalam database. DBMS meliputi : 1. Modelling language untuk mendefinisikan skema dari tiap database yang ada pada DBMS.
2.
3.
Struktur data (field, record, file and object) yang mengoptimalkan penanganan sejumlah besar penyimpanan data pada media peyimpanan permanen. Database query language dan laporan memungkinkan user dalam berhubungan dengan database secara interaktif, menganalisa data dan melakukan update sesuai dengan batasannya.
2.6.3 MySQL MySQL adalah database server yang kecil, ringkas dan mudah digunakan, ideal untuk aplikasi tingkat kecil dan menengah (Castagneto, 2000). MySQL menyimpan setiap tabel pada database sebagai file – file yang terpisah di dalam database directory (Castagneto, 2000). MySQL adalah DBMS yang bersifat relasional, open source, berlevel enterprise, multithread (MySQL is an open source, enterprise-level, multithread, relational database management system) (Maslakowski dan Butcher, 2000). MySQL merupakan software yang tergolong sebagai DBMS (Database Management System) yang bersifat Open Source, MySQL awalnya dibuat oleh perusahaan konsultan bernama TeX yang berlokasi di Swedia. Saat ini pengembangan MySQL berada di bawah naungan perusahaan MySQL AB. Adapun software dapat diunduh di situs www.mysql.com (Kadir, 2008). 2.6.4 Structured Query Language (SQL) SQL adalah kependekan dari Structured Query Language. Dalam bahasa Inggris, SQL biasa dibaca sebagai SEQUEL atau ES-KYU-EL. Bahasa ini merupakan standar yang digunakan untuk mengakses database relasional (Kadir, 2000). Standar SQL mula – mula didefinisikan oleh ISO (International Standards Organization) dan ANSI (the American National Standards Institute), yang dikenal dengan sebutan SQL86. Seiring dengan perjalanan waktu, sejumlah standar baru telah ditetapkan. Saat ini banyak perangkat lunak database yang menggunakan SQL sebagai perintah untuk mengakses data (Sidik, 2005), beberapa di antaranya : 1. DB2 2. Ingres 3. Informix 4. ORACLE 5. Microsoft Access 6. MySQL 7. PostgreSQL 8. Rdb 2.7
Unified Modeling Language (UML)
2.7.1 Sekilas Tentang UML
Menurut Grady Booch, James Rumbaugh, Ivar Jacobson (1998) Unified Modeling Language (UML) adalah sebuah bahasa yang berdasarkan grafik / gambar untuk memvisualisasikan, menspesifikasikan, membangun, dan pendokumentasikan benda – benda dari sebuah sistem pengembangan perangkat lunak. UML sendiri diangkat dari metode objectoriented analysis and design (OOA&D) yang muncul pada akhir tahun 1980 dan awal tahun 1990. UML menyatukan secara langsung metode – metode dari Booch, Rumbaugh (OMT), dan Jacobson, tetapi jangkauannya lebih luas. UML melewati proses standarisasi dengan Object Management Group (OMG) dan sekarang menjadi standar dari OMG (Martin Fowler, 1999). 2.7.2 Diagram – diagram Dalam UML Setiap sistem yang komplek seharusnya bisa dipandang dari sudut yang berbeda - beda sehingga kita bisa mendapatkan pemahaman yang menyeluruh (Adi Nugroho, 2005 : 18). Untuk upaya tersebut UML menyediakan beberapa jenis diagram, di antaranya yang digunakan dalam penelitian karya ilmiah ini adalah Use Case Diagram dan Sequence Diagram yang akan dijelaskan sebagai berikut, yaitu : 1.
Use Case Diagram
Use Case adalah teknik untuk merekam persyaratan fungsional sebuah sistem. Use Case mendeskripsikan interaksi tipikal antara para pengguna sistem dengan sistem itu sendiri, dengan memberi sebuah narasi tentang bagaimana sistem tersebut digunakan (Martin Fowler, 2005 : 141). 2. Sequence Diagram Sebuah sequence diagram secara khusus, menjabarkan behaviour sebuah skenario tunggal. Diagram tersebut menunjukan sebuah objek contoh dan pesan – pesan yang melewati objek – objek ini di dalam use case (Martin Fowler, 2005 : 81). Objek – objek yang berperan dalam aliran diperlihatkan pada kotak bersegi empat panjang yang melintas pada bagian atas diagram. Setiap objek memiliki garis hidup (lifeline), yang digambarkan sebagai garis vertical di bawah nama suatu objek (Adi Nugroho, 2005 : 92).
3.
METODOLOGI PENELITIAN
3.1
Metode Pengumpulan Data
Metode yang penulis gunakan untuk analisis pada penulisan penelitian ini adalah Studi Pustaka, dilakukan dengan mengumpulkan buku - buku dan jurnal yang berkaitan dengan judul penulisan penelitian ini.
3.2
Metode Pengembangan Sistem
Dalam mengembangkan penelitian ini, penulis menggunakan metode System Development Life Cycle (SDLC) dengan model proses waterfall (Royce, 1970), sebagaimana yang dikutip oleh Roger Pressman (Pressman, 2002). Dimana ada enam tahap pengembangan, yaitu : 3.2.1 Analysis and System Enginering Analisis dan perancangan sistem (Analysis and System engineering) terhadap proyek yang akan dibuat dan dikembangkan. 3.2.2 Software Requirement Analysis Tahapan analisis ini dilakukan setelah melakukan perencanaan yang terdapat pada metode pengumpulan data.
3.2.5 Testing Pada tahap ini akan dilakukan testing atau pengujian program secara keseluruhan dari aplikasi J2ME yang telah dibuat. Adapun testing terhadap program dapat dilakukan dengan 2 metode, yaitu whitebox (internal), dan black-box (eksternal). Penulis menggunakan 2 metode agar pengembangan aplikasi J2ME ini mendapatkan hasil yang sempurna baik untuk internal maupun eksternal. 3.2.6 Maintenance Kegiatan untuk mendukung beroperasinya dan terpeliharanya sistem aplikasi pencarian makna kata yang telah dibuat. Pemeliharaaan sistem akan dilakukan oleh administrator yang akan meng-update data setiap ada pembaharuan agar selalu up to date.
4.
ANALISIS DAN PEMBAHASAN
3.2.3 Design Pada tahap ini penulis akan melakukan beberapa hal yang diperlukan dalam perancangan (design) dengan menggunakan UML (Unified Modelling Language) sebagai tools untuk perancangan dan pengembangan aplikasinya. UML mempunyai sejumlah elemen grafis yang bisa dikombinasikan menjadi diagram. Karena ini merupakan sebuah bahasa, UML memiliki sejumlah aturan untuk menggabungkan/mengkombinasikan elemen – elemen tersebut. UML dibangun atas model 4+1 view. Model ini didasarkan pada fakta bahwa struktur sebuah sistem dideskripsikan dalam 5 view dimana salah satu diantaranya use case view. Use case view ini memegang peran khusus dintaranya mengintegrasikan content ke view yang lain. Kelima view tersebut tidak berhubungan dengan diagram yang dideskripsikan di UML. Setiap view berhubungan dengan perspektif tertentu dimana sistem akan diuji. View yang berbeda akan menekankan pada aspek yang berbeda dari sistem yang mewakili ketertarikan sekelompok stakeholder tertentu. 3.2.4 Code Generation Pengkodean (Code Generation) implementasi ke dalam bahasa mesin. Tahap ini merupakan hasil transfer dari perancangan ke dalam bahasa pemrograman yang telah ditentukan, yaitu J2ME, PHP 5.0.4 dan MySQL 5.0.51a sebagai basis data. Kegiatan yang termasuk di dalam implementasi sistem adalah : 1. Memberitahu User (Notify User). 2. Melatih User (User Training). 3. Memasangkan Sistem (Install System). 4. Entri/Konversi Data (Data Entry/Convertion). Setelah berhasil melewati semua proses implementasi, berarti aplikasi pencarian makna kata dalam bahasa Indonesia dengan teknologi J2ME ini sudah dapat digunakan.
4.1
Analysis and System Engineering
Dalam tahap ini, penulis melakukan beberapa hal yang sangat diperlukan sebelum ke tahap analisis kebutuhan, yaitu studi kelayakan (feasibility study), alokasi waktu, dan menentukan cakupan sistem aplikasi pencarian makna kata dalam bahasa Indonesia dengan teknologi J2ME. 4.1.1 Studi Kelayakan (Feasibility Study) Membuat studi kelayakan untuk sistem yang akan dibuat, setelah mengkaji bagaimana proses pencarian makna kata manual maka dihasilkan bahwa pencarian makna kata manual memerlukan ketelitian dan waktu yang lama, biaya yang besar, dan tidak memiliki sistem pengkoreksian kata. Kegiatan ini dilakukan untuk mengetahui masalah yang dialami pada pencarian makna kata manual. Hal ini perlu dilakukan dan layak untuk disuatu proses dalam melakukan penelitian membuat aplikasi pencarian makna kata berbasis perangkat bergerak khusunya pada teknologi telepon genggam. 4.1.2 Alokasi Waktu Alokasi waktu penelitian pengembangan sistem aplikasi pencarian makna kata membutuhkan waktu kurang lebih 7 bulan terhitung dari bulan Januari - Juli 2010. 4.1.3 Cakupan Sistem Cakupan sistem yang ada di dalam sistem pencarian makna kata ini yaitu Pencarian makna kata dalam bahasa Indonesia, dan memiliki sistem pengkoreksian kata.
4.2
Requirement Analysis (Analisis Kebutuhan)
Pada subbab ini akan dilakukan analisis dari proses pembangunan perangkat lunak berdasarkan analisis yang telah dilakukan pada subbab sebelumnya. Analisis yang akan dibahas akan meliputi analisis sistem yang sedang berjalan, indentifikasi masalah, analisis kebutuhan perangkat lunak, perancangan arsitektur perangkat lunak dan proses perangkat lunak. 4.2.1 Analisis Sistem Yang Sudah Berjalan Analisis yang dilakukan pada sistem aplikasi pencarian makna kata yang berjalan pada umumnya masih dilakukan secara manual, hanya menggunakan Microsoft Excel. Ini mengakibatkan pencarian akan lama, memerlukan ketelitian dalam pencarian makna kata, tidak memiliki sistem pengkoreksian kata dan membutuhkan banyak ruangan khusus. Di bawah ini merupakan flowchart dari proses pencarian makna kata yang sudah berjalan secara manual :
4.2.3 Solusi Pemecahan Masalah Berikut solusi pemecahan masalah berdasarkan identifikasi masalah yang telah penulis paparkan di atas : 1. Komputerisasi pencatatan proses makna kata. Sehingga semua pemrosesan makna kata dilakukan oleh komputer. Ini akan mengatasi masalah nomor 1 dan 2. 2. Sistem makna kata menggunakan database server, sehingga memudahkan dalam penambahan dan perubahan makna kata. Ini mengatasi masalah no 3. 3. Sistem pencarian makna kata berbasis perangkat bergerak (mobile device), sehingga pencarian makna kata bisa dilakukan secara bersama - sama oleh banyak pengguna, asalkan perangkat bergerak (mobile device) pengguna terhubung ke server. Ini mengatasi masalah nomor 4. 5. Aplikasi dapat dipergunakan di telepon genggam dan Sistem memiliki fasilitas pengkoreksian kata yang digunakan pada saat pengguna salah memasukkan kata dasar yang akan dicari. Ini mengatasi masalah nomor 3 dan 4.
Mulai 4.2.4
Pencarian Makna Kata
Ada
Tidak
Ya Hasil Pencarian Makna Kata
Selesai Gambar 4.1 Flowchart Proses Pencarian Makna Kata Manual 4.2.2 Identifikasi Permasalahan Proses sistem pencarian makna kata yang dilakukan di buku masih bersifat manual memiliki beberapa permasalahan. Dari observasi yang penulis lakukan didapat permasalahan – permasalahan itu sebagai berikut : 1. Pencarian makna kata menjadi lama. 2. Resiko kesalahan akan lebih besar karena membutuhkan ketelitian. 3. Sulit untuk mengerjakan proses pencarian makna kata secara bersama - sama. 4. Kenyamanan dan resiko kesalahan kata masih sangat rawan.
Sistem Yang Diusulkan
Langkah – langkah pada Sistem yang diusulkan : a. User melakukan pencarian makna kata dalam bahasa Indonesia. b. Tampilan berupa form tersedia dan didesain sesuai dengan kebutuhan dari pihak pengguna serta dilengkapi juga dengan tools pendukung untuk aplikasi mobile device sebagai sarana untuk memudahkan proses input dan output, tampilan menarik. c. Sistem melakukan pengkoreksian kata sesuai dengan proses administrator pada komputer server yang ada. d. Melakukan Pencarian makna kata dengan koneksi ke GPRS.
Komputer Kamus Makna Kata
Server
Mulai
Internet
Database Server
Form Pencarian Kata
Telepon Genggam
Kata Yang Akan Dicari
Gambar 4.4 Arsitektur Global Sistem
Ambil 3 huruf terdepan
Pencarian Pada Server dengan Koneksi GPRS
4.2.6 Analisis Spesifikasi Dan Kebutuhan Perangkat Lunak
Ya
Makna Kata Ditemukan ? Jumlah Huruf Kata Dasar > 3 ? Ya Tidak Tidak Convert Hasil Pencarian Dari Bentuk Input Stream Menjadi String
Hasil Pencarian Makna Kata
Tampilkan Pemberitahuan Bahwa Kata Yang Dicari Tidak Ada
Selesai
4.2.5
Analisis Deskripsi Umum Sistem
Perangkat lunak yang akan dibangun, merupakan perangkat lunak yang diterapkan pada telepon genggam dan memiliki fungsi untuk melakukan pencarian makna kata dan pengkoreksian kata. Perangkat lunak yang akan dibangun harus dapat melakukan pencarian makna kata dengan baik. Pengguna akan berinteraksi dengan perangkat lunak melalui user interface yang disediakan oleh perangkat lunak, pengguna memasukkan data dengan menggunakan keypad pada telepon genggam. Selanjutnya, sistem akan menemukan atau mencari makna kata dalam database server, lalu mengirimkan hasilnya ke telepon genggam. Secara umum, arsitektur global perangkat lunak dapat dilihat pada Gambar 4.4.
Perangkat lunak yang akan dibangun memiliki fitur utama, yaitu : 1. Melakukan pencarian makna kata dalam bahasa Indonesia pada telepon genggam. Pengguna dapat mengirimkan kata dasar bahasa Indonesia dengan perangkat lunak yang akan dibangun. Kemudian kata dasar tersebut harus dapat dikirimkan dengan baik ke tujuan dengan perangkat lunak yang akan dibangun. Perangkat lunak harus dapat menerima kata dasar dan memiliki pengkoreksian kata dasar dari perangkat lunak yang sama, agar informasi yang terdapat dalam database server dapat dipahami. Agar fitur utama tersebut dapat dipenuhi dan pengguna dapat menggunakan sistem dengan mudah, maka perangkat lunak yang akan dibangun memiliki beberapa kebutuhan yang harus tersedia pada perangkat lunak tersebut, kebutuhan fungsional perangkat lunak tersebut, yaitu : 1. Sistem dapat melakukan penerimaan kata dasar dalam bentuk bahasa Indonesia dari pengguna (User). 2. Sistem harus dapat melakukan pencarian makna kata dengan terkoneksi ke komputer server. 3. Sistem memiliki fasilitas untuk melakukan pengkoreksian kata dari pengguna (User). 4.3
Design (Perancangan)
Pada subbab ini akan dibahas rancangan lebih lanjut dari perancangan perangkat lunak yang akan dibangun, yaitu :
4.3.1 Perancangan Proses Dalam merancang sistem pencarian makna kata berbasis telepon genggam ini. Penulis menggunakan permodelan UML (Unified Modeling Language) sebagai case tool dalam merancang proses yang akan terjadi di dalam aplikasi, yakni dengan membuat use case diagram, activity diagram dan sequence diagram.
4.3.1.1 Use Case Diagram Actor dan use case ditentukan atas dasar kebutuhan fungsi – fungsi. Kebutuhan fungsi ini diakomodir di use case. Selanjutnya use case menyediakan nilai hasil kepada aktor. Atas dasar spesifikasi di atas paling tidak ada dua aktor yaitu :
2.
Database Server Admin
SYSTEM
Mulai
Menu Utama
Kamus Makna Kata <
Menerima Makna Kata
clude
Klik webserver admin
>>
Menampilkan database server
Bantuan menambah, merubah dan menghapus makna kata
Edit database server Pada Komputer Server
Administrator menampilkan makna kata yang telah di save
check makna kata
Tentang Aplikasi
User
keluar
Gambar 4.5 Use Case Kamus Makna Kata 4.3.1.2 Activity Diagram Activity diagram menunjukan langkah demi langkah untuk melakukan komputasi. Setiap langkah merupakan state dalam melakukan sesuatu. Diagram ini menggambarkan langkah yang mana yang harus dijalankan secara berurutan dan langkah yang mana yang bisa dijalankan secara bersamaan. Berikut ini activity diagram sistem pencarian makna kata dalam bahasa Indonesia dengan teknologi Java 2 Micro Edition (J2ME) yang dapat digambarkan dari pemodelan use case di atas : 1.
Kamus Makna Kata USER
SYSTEM
Mulai
Gambar 4.9 Activity Diagram Database Server 4.3.1.3 Sequence Diagram Sequence diagram adalah grafik dua dimensi dimana obyek ditujukan dalam dimensi horisontal sedangkan lifeline ditujukan dalam dimensi vertikal. Urutan message ditujukan dari atas ke bawah. Sequence diagram merupakan dari hasil analisis use case. 4.3.2 Perancangan Antar Muka Berikut akan dilakukan perancangan antar muka dari beberapa layar penting pada aplikasi yang akan dibangun. Antar muka yang dirancang meliputi : 1. Antar muka menu utama. 2. Antar muka menu pembangunan kamus makna kata. 3. Antar muka hasil pencarian makna kata. Antar muka lainnya akan mengikuti rancangan antar muka ketiga antar muka utama tersebut. Antar muka yang dibangun akan ditujukan pada telepon genggam dengan dua buah tombol navigasi.
Menu Utama Menampilkan Form Pencarian Makna Kata
4.3.2.1 Perancangan Antar Muka Menu Utama
Klik Kamus Makna Kata
Teks Ticker
Input Kata Dasar
Menu Utama
Mencari Makna Kata
yes No Menampilkan Makna Kata Klik kembali ke Form Menu Utama Koreksi kata dasar yang dicari
Kamus Makna Kata Bantuan Tentang Aplikasi Keluar
Keluar Tampilkan makna kata yang direkomendasikan
Keluar Gambar 4.6 Activity Diagram Kamus Makna Kata
Gambar 4.15 Perancangan Antar Muka Menu Utama
4.4
Construction (Pembuatan)
Pada tahap ini, penulis menggunakan bahasa pemrograman Java yakni installer J2SE Development Kit 6.0 sebagai gateway server-nya dan emulator J2ME Wireless Toolkit versi 2.2 untuk menjalankan aplikasi pada Personal Computer. Adapun yang harus diperhatikan adalah instalasi paket Java Communication Port pada Windows agar dapat melakukan koneksi dengan handphone terminal dengan kabel data ataupun internet sebagai media penghubungnya. Operating sistem yang digunakan Microsoft Windows XP Service Pack 2. Sedangkan untuk management datanya diolah dalam satu paket aplikasi yang tergabung, yaitu XAMPP versi 1.6.4., dimana menggunakan PHP versi 5.2.4 sebagai bahasa pemrogramannya, MySQL versi 5.0.45 database, PHPMyAdmin versi 2.11.1., sebagai interface berbasis web yang dapat digunakan untuk management database MySQL, serta web server-nya menggunakan Apache versi 2.2. Dalam mengkonfigurasikan untuk GUI programnya, yaitu pada pembutan homepage, penulis menggunakan script PHP, pengolahan gambarnya menggunakan Adobe Photoshop 7, dan Mozilla Firefox versi 4.42.0.0 sebagai web browser.
5.
PENUTUP
5.1
Kesimpulan
Kesimpulan dari penelitian yang telah penulis lakukan yaitu : 1. Perangkat lunak yang telah dibangun dapat berjalan dengan baik, perangkat lunak tersebut dapat mengirim dan menerima kata dasar dengan baik jika pengirim dan penerima memiliki aplikasi yang dimaksud. Perangkat lunak dapat ditanam pada telepon genggam dan dibangun dengan bahasa pemrograman Java. 2. Perangkat lunak dapat diimplementasikan dengan baik pada jaringan GSM atau CDMA untuk melakukan pencarian makna kata. 3. Untuk dapat meng-install MIDlet suites pencarian makna kata pada Java-enable mobile phone dibutuhkan ukuran memori minimum sebesar 33 KB. 4. Kecepatan pencarian makna kata pada MIDlet suites pencarian makna kata tergantung pada kecepatan koneksi GPRS dimana pada saat trafik penggunaan koneksi GPRS mengalami penurunan maka waktu yang dibutuhkan untuk pencarian makna kata semakin singkat. 5.2
Saran
Saran yang ingin penulis sampaikan kepada pembaca atau mahasiswa/i lain yaitu sebagai berikut : 1. Agar pesan memiliki ukuran yang sama ketika akan dikirimkan sebaiknya ditambahkah algoritma lain untuk pencarian.
2.
3.
Pada MIDlet suites pencarian makna kata dapat disediakan tambahan pilihan yang lain seperti MIDP device yang digunakan mendukung karakter atau tulisan bahasa jepang, dapat pula disediakan pilihan karakter atau tulisan bahasa arab. Pada Web administrasi dapat ditambahkan fasilitas untuk mengirimkan hasil makna kata dengan menggunakan SMS (Short Messaging Service) ke nomor telepon yang dituju untuk membantu pengguna telepon genggam yang tidak mendukung aplikasi Java dalam mencari makna kata.
DAFTAR PUSTAKA [1] Booch, Grady, James Rumbaugh, Ivar Jacobson. The Unified Modelling Language User Guide, Addison Wesley, 1998. [2] Dewi S. Kusuma. 2003. Artificial Intelligence, (Teknik dan Apliksi). Penerbit Graha Ilmu, Yogyakarta : 337 hlm. [3] Fowler, Martin. UML Distilled Edisi 3: Panduan Singkat Bahasa Pemodelan Objek Standar, Andi, Yogyakarta, 2005. [4] Fowler, Martin, Kendall Scott. UML Distilled Second Edition A Brief Guide to the Standard Object Modeling Language, Addison Wesley, 1999. [5] Hermawan, Julius. Analisa Desain & Pemrograman berorientasi obyek dengan UML dan VB.Net, Ed.1, Andi, Yogyakarta, 2004. [6] Iridiastadi, Hardianto. 2006. Human Aspects in Computer Based-Systems : 1 hlm. http://www.itb.ac.id, [17 Mei 2010, pk. 23 : 25 WIB]. [7] Kadir, Abdul. 2003, Pengenalan Sistem Informasi. Yogyakarta : Andi. [8] Kendall, Kenneth E dan Julie E Kendall. 2003. Analisis dan Perancangan Sistem. Jakarta : Pearson Education Asia Pte. Ltd. dan PT Prenhallindo. [9] Michael Siregar, Ivan. Membangun Aplikasi Chat Lewat GPRS dengan J2ME Menggunakan Netbeans IDE 5.0, Gava Media, Yogyakarta, 2007. [10] Nugroho, Adi. Rational Rose untuk Pemodelan Berorientasi Objek, Informatika, Bandung, 2005Whitten, Jeffrey, dan Lonnie Bentley. (2007). Sistem Analisis dan Metode Desain. Edisi Kelima. Yogyakarta : Penerbit Andi. [11] O’Brien, James A. (2003). Introduction to Information Systems : Essential for The E-Business Enterprise, Eleventh Edition. McGraw-Hill, New York. [12] Pressman, Roger R. (1997). (2002). Software Engineering A Practiotioner’s Approach, Fifth Edition. McGraw-Hill, Inc., New York. [13] Shalahuddin, M., Rosa A.S. PEMROGRAMAN J2ME Belajar Cepat Pemrograman Perangkat Telekomunikasi Mobile, Informatika, Bandung, 2006. [14] Sun Microsystems, Inc. Wireless Developer Portal. http://wireless.java.sun.com.