APLIKASI SMS (SHORT MESSAGE SERVICE) MANAGER BERBASIS JAVA

  

APLIKASI SMS (SHORT MESSAGE SERVICE) MANAGER

BERBASIS JAVA

  Skripsi Ditujukan Untuk Memenuhi Salah Satu Syarat

  Memperoleh Gelar Sarjana Teknik Program Studi Teknik Informatika

  Disusun oleh : Bergas Prakoso Wiharto

  035314003

JAVA BASED SMS MANAGER APPLICATION

  A THESIS Presented as Partial Fulfillment of the Requirements

  To Obtain the Sarjana Teknik Degree In Department of Informatics Engineering

  Created by: Bergas Prakoso Wiharto

  NIM : 035314003

DEPARTMENT OF INFORMATICS ENGINEERING

HALAMAN PERSEMBAHAN

  Karya ilmiah ini ku persembahkan untuk : Allah SWT atas berkah dan karuniaNya

  Ibuku dengan cinta dan pengorbanannya, serta Bapakku Adik, Kakak, dan Keponakanku atas semangat yang kalian berikan

  Seseorang yang akan menjadi pendampingku kelak

  

HALAMAN MOTTO

Tiada yang indah tanpa perih tertatah.

  

Jangan pernah menunda-nunda pekerjaan.

  

Malam akan semakin kelam, namun pastilah cahaya fajar kan

datang menjelang.

  

Ing Ngarsa sung tuladha, Ing madya mangun karsa,

Tut wuri handayani.

  

ABSTRAKSI

  Layanan SMS (Short Message Service), saat ini menjadi sebuah layanan yang hampir selalu digunakan oleh banyak orang pada umumnya. Hal ini terjadi karena layanan ini memiliki beberapa kelebihan. Sebaliknya, layanan ini juga memiliki kelemahan yaitu kapasitas penyimpanan pesan-pesan di dalam

  handphone yang terbatas.

  Tugas Akhir ini bertujuan untuk membangun sebuah aplikasi SMS

  

manager yang diharapkan dapat mengatasi kelemahan seperti yang telah

  disebutkan di atas. Teknologi yang digunakan adalah Java untuk pemrograman aplikasinya dan MySQL untuk pemrograman database-nya, sedangkan teknologi AT COMMAND digunakan untuk proses komunikasi antara komputer dengan

  

handphone. Dalam proses komunikasi tersebut, agar port serial yang ada pada

  komputer dapat dikenal oleh Java (Java Communication Port), dibutuhkan library tambahan yaitu javaxx.comm.properties.

  Aplikasi telah berhasil dikembangkan pada sebuah komputer dengan fasilitas-fasilitas seperti menampilkan, menyimpan, dan menghapus SMS yang terdapat pada handphone. Menu tambahan lain adalah pengiriman SMS ke satu, atau banyak nomor telepon tujuan. Pengiriman SMS ke banyak nomor telepon tujuan dapat dilakukan dengan cara mengetikkan nomor telepon satu-persatu maupun melalui fasilitas grup dimana nomor telepon telah tersimpan di dalam grup tersebut.

  

ABSTRACT

  SMS service, at this time becomes a service that almost always used by many people in generally. This happened because of this service has several excess. On the other side, this service also has the weakness, like limited storage of capacity for messages.

  The purpose of the final assignment is to build SMS manager applications that are expected to overcome the limited storage capacity on the mobile phone short message service, using Java Technology and MySQL database programming language. AT COMMAND technology used for the communication between computer and mobile phone. In the process of this communication, library javaxx.comm.properties is required for supporting Java to recognize port serial in computer.

  The application has been successfully developed on a computer with several facilities such as display, save, and delete SMS in handphone from computer. Additional menu is sending SMS to one or more phone numbers. Send SMS to multiple phone numbers can be done with type the phone numbers one by one or through the facilities at the group, where the phone number has been stored in the group.

KATA PENGANTAR

  Puji syukur kehadirat Allah SWT yang telah mengaruniakan berkah dan karuniaNya sehingga penulis dapat menyelesaikan tugas akhir ini.

  Dalam proses penulisan tugas akhir ini ada begitu banyak pihak yang telah memberikan bentuan dan perhatian dengan caranya masing-masing. Oleh karena itu saya mengucapkan terima kasih diantaranya kepada :

  1. Bapak JB Budi Darmawan, S.T., M.Sc. selaku dosen pembimbing tugas akhir yang telah banyak memberikan bimbingan dalam penyusunan tugas akhir ini.

  2. Bapak Puspaningtyas Sanjoyo Adi, S.T., M.T dan Bapak Iwan Binanto, S.Si., M.Cs. selaku panitia penguji yang telah memberikan banyak kritik dan saran guna sempurnanya tugas akhir ini.

  3. Ibu Ridowati Gunawan, S.Kom., M.T., selaku dosen pembimbing akademik angkatan 2003.

  4. Bapak Emanuel Belle Bau, SPd. dan Yustinus Nugroho sebagai laboran yang telah membantu dalam mempersiapkan ujian pendadaran.

  5. Seluruh staff dosen Teknik Informatika Universitas Sanata Dharma yang

  8. Adik, kakak dan keponakanku, serta Diana Jerni Lestari yang selalu menyemangati dan membantu dalam segala hal.

  9. H. Eko P., S.T, untuk semangat dan bimbingannya dalam proses coding.

  10. Giyanto, Ganjar, Jiwo, Anang, Roland, Suryo, Devita, Evi, untuk semangat, dukungan, serta kebersamaanya.

  11. Wiwid, Ria, Abdul Rosyid, dan Santhos, serta Candra untuk segala bantuan, kebersamaan, semangat, dan dukungan yang teramat tulus.

  12. Dian, Hendrik, Winda, Junaedi, Pamako, Ruth, Hendro, Tika, Ones, Oscar, Albert Kurnia, Ari, Dani, Galih, Evivania, Heri, untuk segala kebersamaan dan bantuannya.

  13. Semua teman-teman Jurusan Teknik Informatika angkatan 2003.

  14. Semua pihak yang telah membantu penulisan baik secara langsung maupun tidak langsung, yang tidak dapat penulis sebutkan satu persatu.

  Dengan rendah hati saya menyadari bahwa tugas akhir ini masih jauh dari sempurna, oleh karena itu kritik dan saran untuk perbaikan tugas akhir ini sangat saya harapkan. Akhir kata semoga tugas akhir ini bermanfaat bagi semua pihak.

  

DAFTAR ISI

HALAMAN JUDUL i

  DAFTAR ISI xiii

  1.2 Rumusan Masalah

  1

  1.1 Latar Belakang Masalah

  BAB I PENDAHULUAN

  DAFTAR TABEL xx

  DAFTAR GAMBAR xviii

  KATA PENGANTAR xi

  HALAMAN PERSETUJUAN iii

  PERNYATAAN PUBLIKASI KARYA x

  ABSTRACT ix

  ABSTRAKSI viii

  HALAMAN MOTTO vii

  HALAMAN PERSEMBAHAN vi

  PERNYATAAN KEASLIAN KARYA v

  HALAMAN PENGESAHAN iv

  2

2.1 Sistem Kerja SMS (Short Message Service)

  6

  2.1.1 Cara Kerja SMS (Short Message Service)

  6

  2.1.2 SMS PDU Pengirim (Originated)

  7

  2.1.2.1 Service Center Address (SCA)

  8

  2.1.2.2 PDU Type

  8

  2.1.2.3 Message Reference (MR)

  8

  2.1.2.4 Destination Address (DA)

  9

  2.1.2.5 Protocol Identifier (PID)

  9

  2.1.2.6 Data Coding Scheme (DCS)

  9

  2.1.2.7 Validity Period (VP)

  10

  2.1.2.8 User Data Length (UDL)

  10

  2.1.2.9 User Data (UD)

  10

2.1.3 SMS PDU Penerima (Terminated)

  10

  2.1.3.1 Service Center Address (SCA)

  11

  2.1.3.2 PDU Type

  11

  2.1.3.3 Originator Address (OA)

  11

  2.1.3.4 Protocol Identifier (PID)

  12

  2.1.3.5 Data Coding Scheme (DCS)

  12

2.3.1 Konsep Obyek

  16

  2.3.1.1 Object Oriented Analysis (OOA)

  16

  2.3.1.2 Object Oriented Design (OOD)

  16

2.3.2 UML (Unified Modelling Language)

  18

  2.4 MySQL

  21

  2.5 AT Command

  23 BAB III ANALISIS SISTEM DAN PERANCANGAN SISTEM

  3.1 Analisis sistem

  25

  3.1.1 Gambaran umum sistem lama

  25

  3.1.2 Gambaran umum sistem baru

  25

  3.1.3 Aktor yang terlibat dalam sistem

  27

  3.1.4 Use Case Diagram

  28

  3.1.5 Class Diagram

  29

3.2 Desain Sistem

  30

3.2.1 Sequence Diagram

  30

  3.2.1.1 Proses Tampilkan Nomor Perangkat Terkoneksi

  30

  3.2.1.2 Proses Menampilkan SMS Inbox Handphone

  31

  3.2.1.3 Proses Menyimpan SMS Pada Database

  32

  3.2.1.9 Proses Update Grup

  38

  3.2.1.10 Proses Menampilkan Anggota Grup

  39

  3.2.1.11 Proses Update Anggota Grup

  40

  3.2.1.12 Proses Menghapus SMS pada Handphone

  41

3.3 Perancangan Database dan User Interface

  42

  3.3.1 Desain Database

  42

  3.3.1.1 Tabel SMS

  42

  3.3.1.2 Tabel Phonebook

  42

  3.3.1.3 Tabel Grup

  43

  3.3.1.4 Tabel Anggota Grup

  43

  3.3.2 Desain User Interface

  44

  3.3.2.1 Form Koneksi

  44

  3.3.2.2 Panel SMS Handphone

  45

  3.3.2.3 Panel Phonebook Handphone

  46

  3.3.2.4 Form Kirim SMS

  47

  3.3.2.5 Panel Daftar Grup dan Anggota Grup

  48

  3.3.2.6 Panel SMS Database

  49 B A B

  I V

  I M P L E M E N T A S

  I S

  I S T E M B A B

  I V

  I M P L E M E N T A S

  I S

  I S T E M

  4.3 Implementasi Database

  51

  84

  81 BAB V ANALISIS HASIL

  4.6.6 Mengubah Format Pesan Teks Menjadi Format PDU

  76

  4.6.5 Mengubah Format Pesan PDU Menjadi Format Teks

  75

  4.6.4 Mengubah Format 7 Bit Menjadi 8 Bit

  73

  4.6.3 Mengubah Format 8 Bit Menjadi 7 Bit

  71

  4.6.2 Mengubah Nilai dari Desimal Menjadi Heksadesimal

  70

  4.6.1 Membalik Karakter Pada Format PDU

  70

  69

  4.5.6 Panel Sms Tersimpan pada Database

  53

  4.4 Setting koneksi dari Java ke MySQL

  51

  4.5 Implementasi Antar Muka dan Proses Kerja Aplikasi

  52

  4.5.1 Form SMS Manager

  4.5.2 Form Koneksi

  68

  56

  4.5.3 Form Kirim SMS

  61

  4.5.4 Panel Phonebook Perangkat Terkoneksi

  64

  4.5.5 Panel SMS

4.6 Implementasi Penerimaan dan Pengiriman SMS pada Aplikasi

5.1 Hasil Pengujian Sistem

  

DAFTAR GAMBAR

  20 Gambar 3.1 Gambaran Sistem

  32 Gambar 3.7 Sequence Diagram Proses Menghapus SMS pada Database

  31 Gambar 3.6 Sequence Diagram Proses Menyimpan SMS pada Database

  30 Gambar 3.5 Sequence Diagram Proses Menampilkan SMS Handphone

  29 Gambar 3.4 Sequence Diagram Proses Menampilkan Nomor Perangkat Terkoneksi

  28 Gambar 3.3 Class Diagram

  26 Gambar 3.2 Use Case Diagram Sistem Aplikasi SMS Manager

  20 Gambar 2.9 Simbol Association

Gambar 2.1 Skema Cara Kerja SMS

  19 Gambar 2.8 Simbol Actor

  18 Gambar 2.7 Simbol Use Case

  18 Gambar 2.6 Simbol Control Object

  17 Gambar 2.5 Simbol Interface Object

  11 Gambar 2.4 Simbol Entity Object

  8 Gambar 2.3 Skema Format SMS PDU Penerima

  7 Gambar 2.2 Skema Format SMS PDU Pengirim

  33

Gambar 3.13 Sequence Diagram Proses Menampilkan Anggota Grup

  54 Gambar 4.2 Form SMS Manager Submenu Menu

  69 Gambar 4.10 Panel Sms Tersimpan pada Database

  65 Gambar 4.8 Panel SMS / Pesan Terbaca Dari Handphone

  62 Gambar 4.7 Panel PhonebookPerangkat Terkoneksi

  57 Gambar 4.6 Form Kirim SMS

  56 Gambar 4.5 Form Koneksi

  56 Gambar 4.4 Form SMS Manager Tab Menu Phonebook

  55 Gambar 4.3 Form SMS Manager Tab Menu SMS

  49 Gambar 4.1 Form SMS Manager

  39 Gambar 3.14 Sequence Diagram Proses Update Anggota Grup

  48 Gambar 3.21 Panel SMS Database

  47 Gambar 3.20 Panel Daftar Grup dan Anggota Grup

  46 Gambar 3.19 Form Kirim SMS

  45 Gambar 3.18 Panel Phonebook Handphone

  44 Gambar 3.17 Panel SMS Handphone

  44 Gambar 3.16 Form Koneksi

  40 Gambar 3.15 Sequence Diagram Proses Menghapus SMS pada Handphone

  70

  

DAFTAR TABEL

Tabel 2.1 Tabel Tipe Data dalam MySQL

  22 Tabel 2.2 Tabel AT Command yang Digunakan

  24 Tabel 3.1 Tabel SMS

  37 Tabel 3.2 Tabel Phonebook

  37 Tabel 3.3 Tabel Grup

  38 Tabel 3.4 Tabel Anggota Grup

  38 Tabel 4.1 Tabel Nilai Parameter Koneksi ke Terminal

  58 Tabel 4.2 Tabel Perintah AT Command

  58

BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

  Salah satu layanan yang ada pada handphone adalah SMS (Short

  Message Service). SMS menjadi sebuah layanan yang hampir selalu

  digunakan untuk mengirim pesan secara singkat oleh banyak orang pada umumnya. Hal ini terjadi karena media ini mudah dalam penggunaanya, dapat langsung dikirim dan terkirim menuju tujuan saat itu juga (apabila tidak terjadi gangguan pada jaringan yang digunakan), serta membutuhkan biaya yang relatif terjangkau. Pesan-pesan yang dikirim atau yang diterima dapat berupa pesan biasa, maupun pesan yang penting. Ketika pesan tersebut dirasa penting maka pesan tersebut akan disimpan di dalam memori penyimpanan. Dalam kurun waktu tertentu, ketika pesan-pesan tersebut semakin banyak yang disimpan, maka dapat mengakibatkan penuhnya memori penyimpanan dari inbox sms handphone yang kapasitas penyimpanannya terbatas.

  1.2 Rumusan Masalah

  Dari latar belakang masalah yang telah disebutkan sebelumnya, maka dapat dirumuskan masalah yaitu “bagaimana memanfaatkan komputer menjadi sebuah tempat pengaturan dan media penyimpanan, atau database dari data-data SMS, dengan menggunakan bahasa pemrograman Java dan pemrograman database MySQL ?”.

  1.3 Batasan Masalah

  Batasan-batasan dalam penulisan Tugas Akhir ini adalah :

  1. Aplikasi yang dibuat mempunyai arsitektur Stand Alone, tidak berbentuk Client Server.

  2. Pengaturan data-data berupa SMS di dalam Java, dibatasi hanya menggunakan format perintah AT Command (perintah yang bertugas membaca atau melakukan operasi pada handphone dari

  serial port), tidak menggunakan format perintah yang berupa text mode.

  3. Aplikasi yang dibuat hanya menangani pengaturan SMS seperti menampilkan, menyimpan, dan menghapus SMS pada komputer

  5. Aplikasi ini tidak menangani terjadinya error dalam pengiriman dan pembacaan pesan apabila masalah tersebut disebabkan karena traffic jaringan dari provider atau operator jaringan GSM (Global System for Mobile Communication) sedang mengalami gangguan.

  6. Di dalam aplikasi yang akan dibuat, anggota grup dari grup dibatasi hanya dari phonebook yang ada pada handphone yang sedang terhubung dengan komputer.

  7. Aplikasi tidak merubah data yang ada pada phonebook handphone.

  8. Aplikasi tidak menangani pembacaan delivery report SMS (laporan SMS terkirim dari operator seluler).

1.4 Tujuan dan Manfaat Penelitian

  Penelitian ini bertujuan untuk membangun sebuah aplikasi SMS

  manager, yang nantinya diharapkan dapat membantu seorang pengguna

  (user) dalam mengatur data-data SMS, seperti menampilkan atau menghapus SMS yang ada pada handphone, menyimpan atau menghapus

1.5 Metodologi Penelitian

  1. Studi Pustaka Penulis mencari literatur tentang bagaimana membangun sebuah aplikasi SMS manager menggunakan bahasa pemrograman Java dan

  database MySQL

  2. Pengembangan perangkat lunak dengan metode pengembangan perangkat lunak berorientasi obyek (Whitten, 2004), dengan langkah- langkah sebagai berikut:

  a. Analisis dan Desain Sistem Berorientasi Obyek, dengan langkah- langkah sebagai berikut :

  1. Pembuatan Use Case Diagram, Class Diagram, dan Sequence Diagram.

  2. Perancangan database.

  3. Perancangan user interface.

  b. Implementasi.

  c. Testing.

1.6 Sistematika Penulisan

  Sistematika penulisan adalah sebagai berikut :

  BAB I PENDAHULUAN Bab ini menjelaskan tentang latar belakang masalah, rumusan masalah, tujuan dan manfaat penelitian, batasan masalah, metodologi penulisan, dan sistematika penulisan.

  BAB II LANDASAN TEORI Bab ini berisikan landasan teori yang digunakan sebagai dasar dalam perancangan tugas ahkir. BAB III ANALISIS dan PERANCANGAN SISTEM Bab ini berisi tentang analisis dan desain sistem yang akan dibuat. BAB IV IMPLEMENTASI SISTEM Bab ini menjelaskan tentang implementasi ke dalam bentuk program berdasarkan desain yang telah dibuat. BAB V ANALISIS HASIL IMPLEMENTASI Bab ini menjelaskan tentang sistem yang telah dibuat seperti kelebihan dan kekurangan sistem dari percobaan

BAB II LANDASAN TEORI

2.1 Sistem Kerja SMS (Short Message Service)

2.1.1 Cara Kerja SMS (Short Message Service)

  SMS merupakan salah satu fitur dari GSM (Global System for

  Mobile Communication) yang dikembangkan dan distandarisasi oleh

  ETSI (European Telecommunications Standards Institute). Pada saat kita mengirim pesan berupa SMS dari handphone, pesan tersebut tidak langsung dikirim ke handphone tujuan, melainkan terlebih dahulu dikirim ke SMS Center (SMSC) dengan prinsip Store and

  Forward, setelah itu baru dikirimkan ke handphone yang dituju.

  Dengan adanya SMSC, status dari pesan yang kita kirim (terkirim atau gagal terkirim) dapat kita ketahui. SMSC akan memberikan pesan kepada pengirim setelah pesan yang kita kirim diterima oleh handphone tujuan, begitu pula apabila handphone tujuan dalam keadaan tidak aktif maupun diluar jangkauan, sehingga tujuan gagal (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  Proses pengiriman SMS dapat dilihat pada gambar 2.1 di bawah ini : Gambar 2.1: Skema Cara Kerja SMS

2.1.2 SMS PDU Pengirim (Originated)

  Seperti telah dijelaskan sebelumnya, pesan yang akan dikirim ke handphone tujuan akan dikirimkan terlebih dahulu ke SMSC.

  Pada saat sebelum dikirimkan, pesan yang diketik masih berupa teks. Karena pesan tersebut akan dikirim terlebih dahulu ke SMSC, maka pesan yang berupa teks tersebut akan diubah formatnya menjadi format PDU oleh handphone pengirim (originated), proses SCA PDU MR DA PID DCS

  VP UDL UD Type

Gambar 2.2 Skema Format SMS PDU Pengirim

  2.1.2.1 Service Center Address (SCA) Adalah informasi tentang alamat (nomor) SMSC.

  SCA memiliki 3 komponen utama, yaitu len, type of

  number, dan service center number. Dalam pengiriman

  pesan SMS, nomor SMSC tidak dicantumkan (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.2.2 PDU Type

  Nilai default dari PDU Type untuk SMS pengirim adalah 11 hexa, yang memiliki arti bahwa 11 hexa = 00010001 (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.2.3 Message Reference (MR)

  Adalah acuan dari pengaturan pesan SMS. Untuk memberikan keleluasaan pengaturan pesan SMS agar dapat

  2.1.2.4 Destination Address (DA)

  Adalah alamat (nomor) tujuan yang terdiri atas panjangnya nomor tujuan (Len), format dari nomor tujuan (Type Number), dan nomor tujuan (Destination Number) (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.2.5 Protocol Identifier (PID)

  Adalah tipe atau format dari cara pengiriman pesan yang biasanya diatur dari handphone pengirim. Misalnya tipe Standard Text, Fax, E-mail, Telex, X400, dan lain- lainnya. Nilai default dari PID adalah 00, yang artinya adalah Standard Text. Pada contoh di atas pesan yang dikirim berupa teks standar, maka PID-nya adalah 00 (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.2.6 Data Coding Scheme (DCS)

  Adalah rencana dari pengkodean data untuk menentukan kelas dari pesan tersebut apakah berupa SMS teks standar, Flash SMS, atau Blinking SMS. Pada contoh

  2.1.2.7 Validity Period (VP)

  Adalah lama waktu pesan SMS disimpan di SMSC apabila pesan tersebut gagal diterima oleh handphone penerima (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.2.8 User Data Length (UDL)

  Adalah panjangnya pesan SMS yang akan dikirim dalam bentuk teks standar. Pada contoh di atas pesan SMS yang dikirim adalah “Pesan pendek”, yang memiliki 12 karakter (0C h). Sehingga pada UDL hasilnya adalah 0C (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.2.9 User Data (UD)

  Adalah isi pesan yang akan dikirim dalam format heksadesimal (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

2.1.3 SMS PDU Penerima (Terminated)

  2005). Format PDU dari SMS yang diterima adalah aeperti terlihat pada gambar 2.3 berikut : SCA PDU Type OA PID DCS SCTS UDL UD

Gambar 2.3 Skema Format SMS PDU Penerima

  2.1.3.1 Service Center Address (SCA)

  Adalah alamat (nomor) dari SMSC. Memiliki tiga komponen utama yaitu len, type off number, dan service

  center (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.3.2 PDU Type

  Nilai default dari PDU Type untuk SMS-Deliver adalah 04 hexa, yang artinya, 04 hexa = 00000100 (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.3.3 Originator Address (OA)

  Adalah alamat (nomor) dari pengirim yang terdiri dari panjangnya nomor pengirim (Len), format dari nomor

  2.1.3.4 Protocol Identifier (PID)

  Adalah tipe atau format dari cara pengiriman pesan, biasanya diatur oleh handphone pengirim. Misalnya tipe

  Standard Text, Fax, E-mail, dan lain-lain. Nilai default-nya

  adalah 00 (Standard Text) (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.3.5 Data Coding Scheme (DCS)

  Adalah rencana dari pengkodean data untuk menentukan kelas dari pesan tersebut apakah berupa SMS teks standar, Flash SMS, atau Blinking SMS (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.3.6 Service Center Time Stamp (SCTS)

  Adalah waktu penerimaan pesan oleh SMSC penerima. SCTS terdiri dari tahun, bulan, tanggal, jam, menit, detik, dan zona waktu (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

  2.1.3.7 User Data Length (UDL)

  Adalah panjang dari pesan yang diterima dalam

2.1.3.8 User Data (UD)

  Adalah pesan yang diterima dalam bentuk heksadesimal (Tim Penelitian dan Pengembangan Wahana Komputer, 2005).

2.2 Bahasa Pemrograman Java

  Java adalah bahasa pemrograman berorientasi obyek yang dikembangkan oleh Sun Microsystems pada Agustus 1991. Sebagai bahasa pemrograman yang berorientasi obyek, Java menggunakan kelas untuk membentuk suatu obyek.

  Java dapat digunakan untuk membuat program dengan menggunakan bahasa seperti Pascal atau C++. Selain itu Java juga mendukung World Wide

  Web (Web), serta aplikasi client/server. Program Java dapat dibedakan

  menjadi dua jenis, yaitu applet dan aplikasi. Applet adalah program yang dibuat dengan Java, dapat diletakkan pada web server dan diakses melalui web (seperti Netscape Navigator, Internet Explorer, dan HotJava). Sedangkan aplikasi adalah program yang dibuat dengan Java yang bersifat umum.

  Aplikasi dapat dijalankan secara langsung, tidak memerlukan perangkat lunak

  Kompiler Java bernama Progam ini berfungsi untuk

Javac.

mengkompilasi berkas sumber kode Java dalam bentuk yang dapat dimengerti oleh interpreter Java. Hasil kompilasi berupa berkas bytecode.

  Dalam hal ini akhiran yang dugunakan berupa .clas

  2. Interpreter Java

Interpreter Java digunakan untuk mengeksekusi berkas bytecode (.class ).

  3. Debugger Java

  Debugger jdb berfungsi seperti interpreter tetapi dilengkapi dengan

  kemampuan khusus seperti menghentikan eksekusi progam pada posisi yang dihendaki oleh pemrogram dan menampilkan nilai variabel-variabel tertentu. Progam ini berguna untuk melacak kesalahan progam.

  4. Penampil Applet Penampil apllet (aplletviewer) berguna untuk menampilkan applet.

  5. Pembangkit Dokumentasi Pembangkit dokumentasi (Javadoc) berguna untuk mengkonversi berkas kode Java dalam berkas HTML (Hypertext Markup Language).

  6. Pembangkit Header C Perangkat lunak Java digunakan untuk mengahasilkan header C dan komputer dan akan dijalankan pada platform menggunakan Java Virtual

  

Machine (JVM) yang disebut juga dengah bytecodes interpreter atau Java

runtime interpreter (Abdul Kadir, 2004).

  Java memiliki beberapa keunggulan (Abdul Kadir, 2004), diantaranya :

  1. Berorientasi pada obyek (Object Oriented) Dalam memecahkan masalah, Java membagi program menjadi obyek- obyek, kemudian memodelkan sifat dan tingkah laku masing-masing.

  Selanjutnya, Java menentukan dan mengatur interaksi antara obyek yang satu dengan yang lain.

  2. Bersifat terdistribusi

  3. Bersifat Multiplatform Java dapat diterjemahkan oleh Java Interpreter pada berbagai sistem operasi. Tidak tergantungnya Java terhadap platform sering dinyatakan dengan istilah portabilitas. Tingkat portabilitas Java tidak hanya sebatas pada program sumber (source code), melainkan juga pada tingkat kode biner yang disebut bytecode yang bisa dijalankan pada berbagai sistem operasi karena kode ini berbeda dengan kode mesin (Abdul Kadir, 2004).

  Contoh Penulisan Script Java:

2.3 Pengembangan Perangkat Lunak Berorientasi Obyek

2.3.1 Konsep Obyek

  Pendekatan berorientasi obyek pada pengembangan sistem didasarkan pada konsep tentang obyek yang telah ada pada sebuah lingkungan sistem.

  Obyek sendiri dapat diartikan sesuatu yang dapat dilihat, disentuh atau dirasakan, dan user menyimpan data serta mencatat perilaku mengenai sesuatu itu (Whitten,2004).

  2.3.1.1 Object Oriented Analysis (OOA)

  Sebuah teknik model driven yang mengintegrasikan data dan proses ke dalam konstruksi yang disebut obyek. Model ini berisikan gambar-gambar yang mengintruksikan obyek-obyek sistem dari berbagai macam perspektif, seperti struktur,

  behavior, dan interaksi obyek.

  2.3.1.2 Object Oriented Design (OOD)

  Pendekatan yang digunakan untuk menentukan solusi perangkat lunak dalam hal menggabungkan obyek, attribute, dan metodenya. disimpan pada sebuah database. Entity object memuat informasi tentang tentang obyek tersebut yang disebut

  attribute. Entity object bersifat menetap atau persisten

  yang dapat diartikan bahwa obyek tersebut “aktif/hidup” setelah mengeksekusi sebuah progam dan disimpan dalam database (Whitten,2004). Hal ini dapat dilihat pada gambar

  2.4 Simbol Entity Object :

  : Objec t En tit y

Gambar 2.4 : Simbol Entity Object

  2. Interface Object Adalah sebuah obyek yang menyediakan media di mana pengguna dapat berkomunikasi dengan system (Whitten,2004). Pengguna dapat berkomunikasi

  2. Mengambil data yang berkaitan dengan peristiwa bisnis dan menterjemahkan data tersebut kepada pengguna. Hal ini dapat dilihat pada gambar 2.5 Simbol Interface Object:

  : Interface Object

Gambar 2.5 :Simbol Interface Object

  3. Control Object Adalah obyek yang berisi aplikasi logika yang bukan merupakan tanggung jawab entity object (Whitten,2004).

  Hal ini dapat dilihat pada gambar 2.6 Simbol Control Object

  : C o n t r o l O b j e c t

Gambar 2.6 :Simbol Control Object (Whitten,2004) tidak menemukan sebuah metode untuk mengembangkan sistem tetapi hanya berupa notasi.

  UML mendefinisikan diagram-diagram berikut :

  1. Use-Case

  Use-Case adalah pemodelan yang mengidentifikasi dan

  menggambarkan fungsi-fungsi sistem dengan menggunakan alat (Whitten, 2004). Use-Case Diagram ini menggambarkan interaksi sistem, eksternal sistem dengan actor. Dengan kata lain merupakan penggambaran secara grafis tentang siapa yang menggunakan sistem dan dengan cara apa pengguna mengharapkan untuk berinteraksi dengan sistem. Komponen-komponen use-case diagram adalah :

  a. Use-Case menggambarkan langkah-langkah yang secara tindakan saling terkait (skenario), baik terotomatisasi maupun secara manual, untuk tujuan melengkapi satu tugas bisnis tunggal (Whitten, 2004). Hal ini terlihat pada gambar 2.7 berikut :

  Actor

  Gambar 2.8: Simbol Actor

  c. Association (Gabungan) adalah hubungan antara pelaku/actor dengan use case di mana terjadi interaksi di antara mereka (Whitten, 2004). Hal ini terlihat pada gambar 2.9 berikut :

  UseCas e Actor

  Gambar 2.9: Simbol Association

  2. Class Diagram Merupakan gambar grafis mengenai struktur obyek statis dari suatu sistem, menunjukan kelas-kelas obyek yang menyusun sebuah sistem dan juga hubungan antar kelas obyek tersebut (Whitten, 2004).

  Sequence Diagram memperlihatkan tahap demi tahap apa

  yang seharusnya terjadi untuk menghasilkan sesuatu didalam use case (Whitten, 2004).

2.4 MySQL

  MySQL merupakan multiuser database yang menggunakan bahasa SQL (Structured Query Language) yang umumnya untuk menangani data yang cukup besar. SQL (Structured Query Language) merupakan bahasa yang telah distandarisasi dan digunakan untuk mengelola database. Di dalam SQL terdapat 3 sub bahasa yaitu:

  1. Data Definition Language (DDL), digunakan untuk membangun obyek- obyek dalam database seperti tabel.

  2. Data Manipulation Language (DML), digunakan untuk menambah, menghapus, mengubah, dan mencari data pada tabel.

  3. Data Control Language (DCL), digunakan untuk menangani masalah keamanan pada database.

  Kelebihan lain dari MySQL adalah menyediakan dukungan open source. Beberapa tipe data dalam MySQL (Ridwan Sanjaya, 2005) dapat dilihat

  Tabel 2.1: Tipe Data dalam MySQL

   Tipe Data Keterangan

  INT(M) [UNSIGNE Angka -2147483648 s/d 2147483647 D] FLOAT(M,D) Angka pecahan

  Tanggal, DATE Format : YYYY-MM-DD Tanggal dan Waktu,

  DATETIME Format : YYYY-MM-DD HH:MM:SS String dengan panjang tetap sesuai dengan yang CHAR(M) ditentukan.

Panjangnya 1-255 karakter

String dengan panjang yang berubah-ubah sesuai

  VARCHAR(M) dengan yang disimpan saat itu.

  

Panjangnya 1 – 255 karakter

BLOB Teks dengan panjang maksimum 65535 karakter

LONGBLOB Teks dengan panjang maksimum 4294967295

karakter

  3. Membuat tabel

  create tabel [nama tabel] (nama field1 typedata1,….) ;

  4. Mengisikan data pada tabel

  insert into [nama tabel] values (isi field1, isi field 2,…);

  5. Menampilkan data pada tabel

  select [field] from [nama tabel];

2.5 AT Command

  AT Command adalah perintah-perintah yang digunakan dalam komunikasi dari aplikasi dengan handphone menggunakan Serial Port.

  Dengan AT Command kita dapat mengetahui vendor dari handphone yang digunakan, membaca pesan yang ada pada SIM card, mengirim pesan SMS, menghapus pesan SMS pada handphone dan SIM card, dan lain-lain, yang seluruhnya dapat dilakukan melalui komputer apabila komputer dan

  handphone telah terhubung.

  Beberapa perintah AT Command (Tim Penelitian dan Pengembangan Wahana Komputer, 2005) yang akan digunakan pada pembuatan tugas akhir ini terlihat pada tabel 2.2

Tabel 2.2 AT Command yang Digunakan

  AT Command Keterangan AT Memeriksa apakah handphone telah terhubung dengan aplikasi AT+CMGF Menetapkan format mode dari terminal

  AT+CMGL Membuka daftar SMS yang ada pada SIM Card AT+CMGS Mengirim pesan SMS AT+CMGR Membaca pesan SMS AT+CMGD Menghapus pesan SMS

BAB III ANALISIS SISTEM DAN PERANCANGAN SISTEM

3.1 Analisis Sistem

  3.1.1 Gambaran umum sistem lama

  Penerimaan pesan singkat atau SMS pada handphone setiap waktu dapat terjadi. Pesan yang diterima akan disimpan di dalam

  inbox handphone. Apabila pesan terus disimpan, akan menyebabkan

  penuhnya pesan di dalam inbox handphone tersebut. Kejadian ini dapat menyebabkan pesan yang akan masuk tertunda, dan apabila terlalu lama, dapat mengakibatkan pesan gagal diterima. Hal ini akan sangat merugikan apabila pesan yang akan masuk tersebut adalah pesan yang penting.

  3.1.2 Gambaran umum sistem baru

  Sistem yang akan dibangun untuk mengatasi masalah tersebut adalah sistem yang memanfaatkan komputer dan database sebagai media penyimpanan SMS. Melalui sistem ini user dapat menyimpan

  3. Sistem melakukan proses untuk melakukan pengaturan yang dipilih user Sistem ini mempunyai arsitektur Stand Alone. Handphone pengirim (originator) mengirimkan data berupa SMS kepada

  

handphone penerima (terminated). Kemudian data SMS tersebut

  akan diteruskan menuju komputer, dan kemudian aplikasi yang akan di buat (berada di dalam komputer) akan memrosesnya, sehingga pengaturan-pengaturan pada data berupa SMS yang telah disebutkan di atas dapat dilakukan dari komputer. Kabel data serial, digunakan sebagai penghubung antara handphone penerima (terminated) dengan PC (Personal Computer), hal ini dapat dilihat pada gambar 3.1 di bawah ini :

3.1.3 Aktor Yang Terlibat Dalam Sistem

  Ada satu orang aktor yang terlibat dalam aplikasi pengaturan sms ini, yaitu :  User

  User adalah pengguna yang melakukan pembacaan data SMS

  dari aplikasi di komputer, menyimpan data SMS pada database di komputer, menghapus data SMS pada database di komputer maupun pada handphone, serta mengirim SMS dari komputer melalui aplikasi.

  3.1.4 Use Case Diagram menampilkan menampilkan phonebook handphone (from use cases) (from use cases)

nomor perangkat terkoneksi

menampilkan sms menghapus sms inbox (from use cases) inbox handphone handphone menyimpan sms pada database (from use cases) (from use cases) (from Actors) user menampilkan sms dari database menghapus sms pada database (from use cases) update grup (from use cases) (from use cases) update anggota grup menampilkan grup (from use cases) (from use cases )

3.1.5 Class Diagram

  Relasi antar obyek yang berada dalam sistem ini disajikan pada Gambar 3.3 <<Pk>> idx_grup <<Pk>> idx_grup grup grup update_nama_grup() update_nama_grup() Tampil_nama_grup() Tampil_nama_grup() nama_grup nama_grup 0..1 0..1 0..1 0..1 punya punya is i_sms jam_terima tgl_terima Index_sms <<Pk>> key_table sms

  stat <<Fk>> no_telp_pb anggotagrup anggotagrup 0..* 0..* <<Pk>> idx_grup <<Pk>> idx_grup 0..* 0..* 0..* 0..* hapus_sms() simpan_sms() tampil_sms() kirim_sms() punya punya punya <<Pk>> no_tlp_pb <<Pk>> no_tlp_pb tampil_anggotagrup() tampil_anggotagrup() update_anggotagrup() update_anggotagrup() 0..* 0..* 0..* 0..* <<Pk>> no_tlp_pb <<Pk>> no_tlp_pb phonebook phonebook 0..1 0..1 Nama Nama 0..1 0..1 0..1 0..1 tam pil_pb() tam pil_pb() nomor_tlp_sim nomor_tlp_sim

Gambar 3.3 : Class Diagram

3.2 Desain Sistem

3.2.1 Sequence Diagram

3.2.1.1 Proses Tampilkan Nomor Perangkat Terkoneksi

  Sequence diagram untuk menampilkan nomor

  perangkat terkoneksi disajikan pada gambar 3.4

  aplikasi kontroll : form sms manager : user pilih tampilkan nomor perangkat terkoneksi phonebook baca_nomor_penerima insert_data() tampilkan_nomor() nomor perangkat terkoneksi ditampilkan

Gambar 3.4 : Sequence Diagram Proses Menampilkan Nomor Perangkat

  Terkoneksi

3.2.1.2 Proses Menampilkan SMS Inbox Handphone

  Sequence diagram untuk menampilkan SMS handphone disajikan pada gambar 3.5

Gambar 3.5 : Sequence Diagram Proses Menampilkan SMS Handphone : user form sms manager : aplikasi kontrol

  : sms Klik tombol baca sms

tampil_sms()

insert_sms() data sms ditampilkan

3.2.1.3 Proses Menyimpan SMS pada Database

  Sequence diagram untuk menyimpan sms pada database disajikan pada gambar 3.6 : user form sms manager pilih baca sms tampil_sms() : aplikasi kontrol : sms data sms ditampilkan insert_sms() pilih sms yang akan disimpan get_sms_selected() insert_data_terpilih()

Gambar 3.6 : Sequence Diagram Proses Menyimpan SMS pada Database

3.2.1.4 Proses Menghapus SMS pada Database

  Sequence diagram untuk menghapus SMS di

  database disajikan pada gambar 3.7 : user form sms manager : aplikasi kontrol : sms pilih baca sms database tampil_sms() tampil_sms_database() data sms ditampilkan pilih sms yang dihapus get_sms_selected() delete_data_terpilih()

Gambar 3.7 : Sequence Diagram Proses Menghapus SMS pada

  

Database

3.2.1.5 Proses Menampilkan SMS dari Database

  Sequence diagram untuk menampilkan SMS dari

database disajikan pada gambar 3.8

: us er form sms manager pilih baca sms database tampil_sms() : aplikasi kontrol : sms sms database ditampilkan tampil_sms_database()

Gambar 3.8 : Sequence Diagram Proses Menampilkan SMS dari Database

3.2.1.6 Proses Mengirim SMS dari Aplikasi

  Sequence diagram untuk mengirim SMS disajikan

  pada gambar 3.9

  : aplikasi kontrol : user

form kirim sms

masukkan nomor tujuan ketik pesan kirim_sms() pilih kirim get_data() pesan sms telah terkirim

3.2.1.7 Proses Menampilkan Phonebook Handphone

  Sequence diagram untuk menampilkan phonebook

  disajikan pada gambar 3.10 : user pilih phonebook tampilkan : form sms manager baca_pb_handphone aplikasi kontrol phonebook phonebook ditampilkan tampilkan insert _data() _pb()

Gambar 3.10 : Sequence Diagram Proses Menampilkan Phonebook

  Handphone

3.2.1.8 Proses Menampilkan Grup

  Sequence diagram untuk menampilkan grup

  disajikan pada gambar 3.11 : us er pilih daftar grup form sm s m anager tampilkan_grup() aplikas i kontrol select_data() grup grup ditampilkan

Gambar 3.11 : Sequence Diagram Proses Menampilkan Grup

3.2.1.9 Proses Update Grup

  Sequence diagram untuk update grup disajikan pada

  gambar 3.12 : user form sms manager aplikasi kontrol grup

  pilih daftar grup

tampilkan_grup()

select_data() grup ditampilkan pilih masukkan grup

get_data()

insert_data() pilih edit grup

get_data()

update_data() pilih hapus grup

get_data()

delete_data()

3.2.1.10 Proses Menampilkan Anggota Grup

  Sequence diagram untuk menampilkan anggota

  grup disajikan pada gambar 3.13

Gambar 3.13 : Sequence Diagram Proses Menampilkan Anggota Grup : user form sms manager aplikasi kontrol anggota grup

  pilih daftar anggota grup tampilkan_anggotagrup() select_data() anggota grup ditampilkan

3.2.1.11 Proses Update Anggota Grup

  Sequence diagram untuk menampilkan nomor

  penerima disajikan pada gambar 3.14 : user form sms manager aplikasi kontrol anggota_grup

  pilih daftar anggota grup tampilkan_anggotagrup() select_data() anggota grup ditampilkan pilih masukkan anggota grup get_data() insert_data() pilih edit anggota grup get_data() update_data() pilih hapus data get_data() delete_data()

3.2.1.12 Proses Menghapus SMS pada Handphone

Gambar 3.14 : Sequence Diagram Proses Menghapus SMS pada Handphone : user form sms manager : aplikasi kontrol : sms pilih baca sms baca_sms() insert_data() sms database ditampilkan Pilih hapus get_data() delete_data_from_hp()

3.3 Perancangan Database dan User Interface

3.3.1 Desain Database

  3.3.1.1 Tabel SMS

  Tabel SMS disajikan pada tabel 3.1