• Tidak ada hasil yang ditemukan

BAB III ANALISIS DAN PERANCANGAN

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB III ANALISIS DAN PERANCANGAN"

Copied!
22
0
0

Teks penuh

(1)

BAB III

ANALISIS DAN PERANCANGAN

Bab ini akan membahas analisis dan perancangan perangkat lunak yang akan dikembangkan pada tugas akhir ini. Dalam bagian analisis akan diidentifikasi hal-hal yang diperlukan dalam pengembangan perangkat lunak meliputi deskripsi global, karakteristik aktor, spesifikasi kebutuhan perangkat lunak, dan pemodelan perangkat lunak. Sedangkan pada bagian perancangan akan membahas representasi aplikasi yang akan diimplementasikan berdasarkan pada kegiatan analisis.

3.1 Analisis

Subab ini akan membahas deskripsi global perangkat lunak, spesifikasi kebutuhan perangkat lunak, dan batasan perangkat lunak.

3.1.1 Analisis Sistem Terkait

Subbab ini akan membahas aplikasi yang menjadi dasar pengembangan perangkat lunak dalam tugas akhir ini. Aplikasi tersebut adalah SINALIP (Sistem Notifikasi dan Layanan Informasi Perkantoran Berbasis SMS) yang dikembangkan oleh Yudi Purwanto, mahasiswa Teknik Informatika ITB angkatan 1998. Pembahasan akan dikhususkan pada subsistem yang berfungsi untuk menerima dan mengirimkan SMS atau SMS daemon.

Terdapat perbedaan mencolok antara SMS daemon pada SINALIP dengan SMS daemon yang dikembangkan pada tugas akhir ini, terutama pada mekanisme pembacaan pesan SMS masuk.

Pada SINALIP, pembacaan pesan masuk dilakukan dengan metode polling. Pesan masuk disimpan pada memori TA/TE. Daemon akan melakukan looping dengan selang waktu tetentu untuk membaca pesan pada memori TA/TE. Adapun pada tugas akhir ini, mekanisme pembacaan pesan dilakukan dengan berbasis event. Jika ada pesan masuk, modem akan membangkitkan event pada daemon, kemudian pesan tersebut dibaca.

Pada tugas akhir ini, mekanisme pengiriman SMS pada dasarnya sama dengan SMS daemon pada SINALIP. Daemon akan membaca pesan pada basis data kemudian diubah ke SMS PDU lalu dikirimkan ke penerima melalui modem GSM.

Selain itu, pada tugas akhir ini dikembangkan juga kemampuan untuk menerima dan mengirim concatenated short message. Mekanisme pengiriman dan penerimaan concatenated short message akan dijelaskan pada subbab 3.1.5.

III-1

(2)

Pada tugas akhir ini, akan dikembangkan 4 macam infrastruktur komunikasi berbasis messaging yang dapat digunakan dalam sistem NoteBOX, yaitu:

1. Easy SMS

2. Subsistem SMS gateway

3.

Subsistem MMS gateway

4.

Antarmuka berbasis web (native client) untuk melakukan query ke sistem NoteBOX

Easy SMS merupakan perangkat lunak yang digunakan untuk mengirimkan informasi ke penerima dalam bentuk SMS. Perangkat lunak ini nantinya dapat digunakan sebagai infrastruktur komunikasi berbasis SMS yang dapat digabungkan dalam suatu sistem yang lebih besar, misalnya layanan content SMS. Perangkat lunak ini dapat mengirimkan pesan singkat/SMS (push SMS) secara terjadwal, baik secara individu maupun secara broadcast.

Selain itu, perangkat lunak ini menangani pengiriman SMS yang diminta oleh user (pull SMS). Misalnya, user mengirimkan SMS dengan menggunakan kata kunci tertentu, lalu sistem akan mengirimkan reply dengan isi yang sesuai dengan kata kunci tersebut.

Perangkat lunak Easy SMS menggunakan perangkat keras modem GSM sebagai media untuk mengirimkan dan menerima SMS. Modem GSM yang digunakan dapat berupa modem yang terintegrasi dengan ponsel atau modem GSM biasa.

Selain untuk kebutuhan mengirim dan menerima SMS, perangkat lunak yang dikembangkan juga memiliki fitur tambahan, yaitu mampu mengirim MMS (MMS Sender). Sebagaimana halnya SMS, MMS dapat dikirimkan ke banyak penerima dan terjadwal. Untuk keperluan pengiriman MMS, perangkat lunak ini memerlukan daemon yang terpisah dengan SMS dan juga modem GPRS.

Perangkat lunak ini terdiri dari 3 bagian utama yaitu SMS daemon yang berperan sebagai pengirim dan penerima SMS, MMS daemon untuk mengirim MMS dan antarmuka berbasis web. Antarmuka berbasis web digunakan oleh administrator untuk melakukan kegiatan administrasi aplikasi seperti penjadwalan, reply secara manual, dan sebagainya. Untuk melakukan kegiatan administrasi, seorang administrator harus melakukan proses login terlebih dahulu. Sebagai tambahan, pada antarmuka disediakan pengelolaan contact, group, images gallery untuk memudahkan pembuatan MMS, dan pengelolaan respon untuk auto- reply SMS.

(3)

Gambaran umum Easy SMS ditunjukkan pada Gambar III-1:

Gambar III-1 Arsitektur Global Easy SMS

Selain mengembangkan Easy SMS, dalam tugas akhir ini dikembangkan juga subsistem untuk Mobile Unified Messaging NoteBOX. Subsistem ini terletak pada user layer dan merupakan gateway yang berfungsi untuk menjembatani komunikasi antara NoteBOX dengan SMS dan MMS. Dengan subsistem ini, para pengguna dapat mengirimkan SMS/MMS untuk selanjutnya diteruskan ke alamat email oleh NoteBOX, atau sebaliknya. Gambar II-15 menunjukkan posisi SMS dan MMS gateway pada sistem NoteBOX. SMS dan MMS gateway merupakan hasil integrasi dari SMS dan MMS daemon yang terdapat pada Easy SMS dengan beberapa penyesuaian.

Selanjutnya, pada tugas akhir ini juga dikembangkan native client (aplikasi yang secara khusus digunakan untuk mengakses layanan NoteBOX) berbasis web untuk melakukan query ke mesin pencari yang terdapat pada NoteBOX.

3.1.3 Karakteristik Aktor

Masing-masing subsistem yang akan dibangun memiliki aktor yang berbeda. Subsistem Easy SMS memiliki satu jenis aktor yaitu administrator yang bertugas mengelola penjadwalan, grouping, manajemen contact, dan sebagainya. Subsistem SMS dan MMS daemon memiliki dua jenis aktor, yaitu antarmuka Easy SMS (berbasis web) dan user (penerima dan/atau pengirim SMS, serta penerima MMS). Adapun subsistem SMS dan MMS gateway pada NoteBOX memiliki aktor yang hampir sama dengan SMS dan MMS daemon pada Easy SMS, yaitu core server NoteBOX dan user (penerima dan/atau pengirim SMS, serta penerima MMS). Hal ini diperlihatkan pada Gambar III-4.

(4)

Spesifikasi kebutuhan Easy SMS dibagi menjadi dua bagian yaitu spesifikasi kebutuhan fungsional dan pelengkap. Spesifikasi kebutuhan fungsional Easy SMS adalah sebagai berikut:

1. Aplikasi mampu mengirimkan SMS secara terjadwal.

2. Aplikasi mampu mengirimkan SMS ke penerima tunggal dan/atau banyak penerima dalam waktu relatif bersamaan.

3. Aplikasi dapat melakukan reply secara manual maupun otomatis (diminta oleh pengguna melalui SMS dengan kata kunci tertentu).

4. Aplikasi mampu mengirimkan MMS secara terjadwal.

5. Aplikasi mampu menyimpan pesan yang akan dikirim dan pesan masuk.

6. Aplikasi menyediakan fasilitas address book dan grouping address, manajemen (menambah, mengurangi, dan mengedit) kontak dalam address book, penambahan dan penghapusan member group, penambahan dan penghapusan group, serta pengubahan nama group dan contact.

Adapun spesifikasi kebutuhan pelengkap Easy SMS adalah sebagai berikut:

1. Fungsi penanganan pengiriman dan penerimaan SMS oleh aplikasi daemon.

2. Aplikasi SMS daemon dapat berjalan di semua jenis modem GSM.

3. Pustaka Easy SMS dapat diintegrasikan pustaka ke dalam sistem NoteBOX.

4. Antarmuka dapat memperlihatkan status pesan terkirim, gagal, dan belum terkirim.

5. Administrator melakukan login sebelum melakukan adminstrasi.

Spesifikasi kebutuhan subsistem SMS gateway untuk NoteBOX:

1. Mampu menerima SMS dan meneruskannya ke sistem NoteBOX

2. Mampu menerima pesan dari NoteBOX dan meneruskan pesan tersebut ke ponsel penerima dalam bentuk SMS.

Spesifikasi kebutuhan subsistem MMS gateway untuk NoteBOX:

1. Mampu menerima pesan dari NoteBOX dan meneruskannya ke ponsel penerima dalam bentuk MMS.

Spesifikasi kebutuhan native client berbasis web untuk melakukan query ke mesin pencari pada NoteBOX:

1. Mampu melakukan query ke mesin pencari NoteBOX dan menampilkan hasil query tersebut pada browser.

(5)

2. Mampu melakukan query ke mesin pencari NoteBOX dan me-redirect hasil query ke alamat email atau ke ponsel dalam bentuk SMS.

3.1.5 Analisis Penanganan Concatenated Short Message

Pada kasus pengiriman concatenated short message, pesan yang panjangnya melebihi 160 karakter akan dipecah menjadi beberapa pesan dengan panjang maksimal 153 karakter (bukan 160 karakter karena 7 karakter digunakan untuk User Data Header). Kemudian masing- masing potongan pesan tersebut diubah menjadi SMS PDU dan dikirimkan ke tujuan.

Mekanisme penerimaan concatenated short message berbeda dengan penerimaan SMS biasa (kurang dari atau sama dengan 160 karakter). Setiap pesan yang datang akan dicek apakah termasuk SMS biasa atau concatenated short message dengan melihat ada tidaknya User Data Header. Jika pesan masuk merupakan concatenated short message, pesan tersebut akan diambil nomor referensi (reference number), panjang sekuen dan nomor sekuennya kemudian pesan tersebut disimpan dalam basis data untuk sementara. Setelah mendapatkan semua potongan pesan, thread untuk menyusun pesan utuh dari potongan pesan yang telah disimpan di basis data akan dijalankan. Setelah terbentuk pesan utuh, potongan pesan penyusunnya akan dihapus kemudian pesan yang utuh akan diproses lebih lanjut (disimpan ke basis data untuk Easy SMS atau diteruskan ke core server pada NoteBOX) dan thread penyusun pesan dimatikan.

Jika potongan pesan tidak utuh, potongan pesan yang terdapat pada basis data temporal akan diproses, dan pesan tersebut dihapus dari basis data temporal. Setiap potongan pesan memiliki time to live untuk menandai apakah pesan tersebut sudah kadaluarsa atau tidak.

3.1.6 Pemodelan Perangkat Lunak

Pemodelan perangkat lunak meliputi perancangan use case dan skenarionya, pemodelan interaksi elemen dengan diagram sequence, serta perancangan kelas.

3.1.6.1 Pemodelan Kebutuhan Sistem

Pemodelan kebutuhan sistem Easy SMS dibuat dalam bentuk diagram use case yang dapat dilihat pada Gambar III-2, sampai dengan Gambar III-5. Pemodelan kebutuhan pada subsistem SMS dan MMS gateway menyerupai use case pada Gambar III-4 dengan salah satu aktor adalah sistem NoteBOX.

(6)

Gambar III-2 Use Case Message Management

(7)

Gambar III-3 Use Case Manajemen Contact dan Group

Gambar III-4 Use Case Subsistem SMS dan MMS Gateway

Gambar III-5 Use Case Native Client Berbasis Web

(8)

3.1.6.2 Pemodelan Skenario Kejadian

Subbab ini berisi penjelasan skenario kejadian dari diagram use case yang telah dibuat.

Skenario login diperlihatkan pada Tabel III-1. Skenario kejadian selengkapnya dapat dilihat pada lampiran B.

Tabel III-1 Skenario Login Aktor Administrator

Tujuan melakukan autentikasi administrator sebelum masuk ke sistem Pre-kondisi -

Post-kondisi [normal] Administrator dapat mengakses menu utama [alternatif 1] Sistem menampilkan pesan kesalahan Urutan aksi normal

No Pelaku Aksi

1 Administrator Mengakses sistem 2 Sistem Menampilkan halaman login 3 Adminisrator Mengisi username dan password

4 Sistem Melakukan verifikasi username dan password 5 Sistem Menampilkan halaman inbox SMS

Urutan aksi alternatif (username dan password salah)

5 Sistem Menampilkan halaman login dan pesan kesalahan login

3.1.6.3 Pemodelan Interaksi Elemen

Pada subbab ini akan ditampilkan diagram sequence yang menggambarkan model interaksi elemen-elemen dalam aplikasi. Diagram sequence ini akan dibuat untuk use case yang diprioritaskan, antara lain:

1. Diagram sequence untuk use case send sms, ditunjukkan pada Gambar III-6.

2. Diagram sequence untuk use case send mms, ditunjukkan pada Gambar III-7.

3. Diagram sequence untuk use case receive sms, ditunjukkan pada Gambar III-8.

Diagram sequence selebihnya dapat dilihat pada Lampiran C.

Pada Gambar III-6, pengiriman SMS dilakukan oleh objek Daemon. Objek ini mengecek ketersediaan pesan pada basis data secara terus-menerus. Jika terdapat pesan yang akan dikirimkan, sekuen dari nomor 2 sampai selesai akan dijalankan.

Pada Gambar III-7, pengiriman MMS dilakukan oleh objek Daemon. Proses pengiriman memiliki kemiripan dengan diagram sequence send sms. Objek Daemon terus-menerus mengecek ketersediaan pesan. Jika pesan ada, proses nomor 2 sampai selesai akan dijalankan.

(9)

Pada Gambar III-8, objek ModemConnector terus-menerus memantau event untuk mengecek adanya SMS masuk. Jika terdapat pesan masuk, objek ini akan membaca respon yang diterima oleh modem, lalu memanggil objek IncomingMessage untuk menterjemahkan pesan yang diterima. Setelah itu objek ModemConnector akan memanggil objek DBConnector untuk menyimpan pesan ke basis data.

Gambar III-6 Diagram Sequence Send SMS

Gambar III-7 Diagram Sequence Send MMS

(10)

Gambar III-8 Diagram Sequence Receive SMS

3.1.6.4 Pemodelan Kelas

Subbab ini berisi pembahasan tentang pemodelan kelas yang terdapat dalam sistem.

Pemodelan kelas akan digambarkan dengan diagram kelas. Kelas-kelas yang terdapat dalam diagram kelas merupakan hasil identifikasi awal, sesuai dengan objek-objek yang terdapat dalam diagram sequence. Hasil identifikasi kelas dapat dilihat pada Tabel III-2 hingga Tabel III-5. Diagram kelas analisis untuk Easy SMS dapat dilihat pada Gambar III-9. Adapun diagram kelas analisis untuk subsistem lain dapat dilihat pada lampiran D.

Tabel III-2 Hasil Identifikasi Awal Kelas-Kelas untuk Easy SMS

No Nama Kelas Tipe Kelas Deskripsi

1. Page Boundary Kelas ini berfungsi untuk menjembatani interaksi antara pengguna dan aplikasi.

2. Login Control Kelas ini bertanggung jawab dalam menangani autentikasi dan autorisasi pengguna

3. MessageComposer Control MessageComposer berfungsi untuk menyusun pesan. Kelas ini merupakan parent class untuk kelas SMSComposer dan MMSComposer.

4. GalleryManager Control Kelas ini berfungsi untuk mengelola galeri gambar yang dipergunakan untuk penyusunan pesan MMS. Kelas ini memiliki tanggung jawab menambah, menghapus, dan mengedit nama gambar pada galeri.

(11)

No Nama Kelas Tipe Kelas Deskripsi 5. ContactManager Control Kelas ini berfungsi untuk mengelola contact,

meliputi penambahan, perubahan nama, dan penghapusan contact.

6. GroupManager Control Kelas ini bertanggung jawab dalam pengelolaan group, meliputi penambahan group baru, perubahan nama group, penambahan dan penghapusan anggota group.

7. SMSInboxManager Control Kelas ini berfungsi untuk memberikan data SMS yang masuk dan untuk menghapus SMS

tersebut.

8. ResponseManager Control Kelas ini berfungsi untuk menambah dan menghapus pesan dan kata kunci yang digunakan dalam fasilitas auto reply.

9. OutboxManager Control Kelas ini berfungsi untuk mengelola pesan yang berlum dan sudah terkirim, meliputi

penghapusan dan pengubahan pesan. Kelas ini merupakan parent class untuk kelas

SMSOutboxManager dan MMSOutboxManager.

10. DBConnector Control Kelas ini berfungsi untuk berkomunikasi dengan basis data.

11. Helper Control Kelas ini merupakan kelas pembantu untuk tugas-tugas seperti konversi tanggal, dan pemformatan string-string lain dari masukan user atau untuk ditampilkan ke antarmuka.

12. SMSComposer Control Kelas ini merupakan kelas turunan dari kelas MessageComposer yang berfungsi khusus untuk menyusun pesan SMS.

13. MMSComposer Control Kelas ini merupakan kelas turunan dari kelas MessageComposer yang berfungsi khusus untuk menyusun pesan MMS.

14. SMSOutboxManager Control Kelas ini merupakan turunan dari kelas OutboxManager, bertanggung jawab dalam mengelola pesan SMS yang akan dikirim, meliputi pengeditan dan penghapusan, serta perubahan status pesan dari status pending (belum terkirim) menjadi success (terkirim).

15. MMSOutboxManager Control Kelas ini merupakan turunan dari kelas OutboxManager, bertanggung jawab dalam mengelola pesan MMS yang akan dikirim, meliputi pengeditan dan penghapusan, serta perubahan status pesan dari status pending (belum terkirim) menjadi success (terkirim).

16. Scheduler Control Kelas ini bertanggung jawab dalam melakukan penjadwalan pengiriman pesan, baik SMS maupun MMS.

(12)

1. Daemon Control Kelas ini berfungsi untuk melakukan tugas pengiriman pesan. Kelas ini akan terus menerus mengecek ketersediaan pesan untuk dikirim.

2. ModemConnector Control Kelas ini bertugas untuk melakukan komunikasi dengan modem GSM, mengirimkan AT Command dan mendngarkan respon yang diberikan oleh modem. Kelas ini pula yang bertugas mendengarkan event pada modem terutama adanya pesan masuk.

3. Utility Control Kelas ini berfungsi untuk membaca properti yang diperlukan oleh SMS gateway, yaitu properti modem dan perintah-perintah AT command yang diperlukan ketika inisialisasi modem.

4. DBCleaner Control Kelas ini berfungsi untuk membersihkan basis data dari concatenated message yang telah kadaluarsa.

5. DBConnector Control Kelas ini bertanggung jawab dalam melakukan koneksi dengan basis data.

6. OutgoingMessage Entity Kelas ini merepresentasikan pesan SMS yang siap dikirim, yaitu SMS PDU. Pesan dalam format plain text diubah menjadi SMS PDU yang siap dikirim melalui modem setelah ditambah dengan header yang diperlukan.

7. IncomingMessage Entity Kelas ini berfungsi untuk merepresentasikan pesan SMS masuk, dan mengubahnya dari format SMS PDU menjadi plain text serta menerjemahkan header pada pesan tersebut sehingga bisadibaca manusia.

8. Codec Control Kelas ini berfungsi untuk mengubah plain text ke SMS PDU dan sebaliknya untuk bagian user data pada SMS.

9. ConcatenatedMessage Control Kelas ini berfungsi untuk membantu memonitor SMS masuk yang panjangnya lebih dari 140 byte untuk kemudian disatukan.

Tabel III-4 Hasil Identifikasi Awal Kelas-Kelas Penyusun MMS Gateway

No Nama Kelas Tipe Kelas Deskripsi

1. Daemon Control Kelas ini berfungsi untuk melakukan tugas pengiriman pesan. Kelas ini akan terus menerus mengecek ketersediaan pesan untuk dikirim.

2. Sender Control Kelas ini berfungsi untuk mengirimkan MMS melalui koneksi GPRS.

3. Composer Control Kelas ini berfungsi untuk membentuk MMS PDU yang siap dikirim oleh kelas Sender.

(13)

No Nama Kelas Tipe Kelas Deskripsi 4. MMSMessage Entity Kelas ini merepresentasikan MMS PDU yang

siap untuk dikirim.

5. DBConnector Control Kelas ini bertanggung jawab dalam melakukan koneksi dengan basis data.

6. WAPConnector Control Kelas ini berfungsi untuk melakukan koneksi ke GPRS dengan protokol WAP.

Tabel III-5 Hasil Identifikasi Awal Kelas-Kelas Penyusun Native Client NoteBOX

No Nama Kelas Tipe Kelas Deskripsi

1. UI Boundary Kelas ini berfungsi untuk menjembatani interaksi antara pengguna dengan aplikasi.

2. EmailValidator Control Kelas ini berfungsi untuk melakukan validasi alamat email.

3. ResponseGetter Control Kelas ini berfungsi untuk mengambil dan membaca respon dari query yang dikirmkan ke NoteBOX.

4. QuerySender Control Kelas ini berfungsi untuk mengirimkan query ke NoteBOX.

5. DBConnector Control Kelas ini bertanggung jawab dalam melakukan koneksi dengan basis data.

(14)

Gambar III-9 Diagram Kelas Analisis Easy SMS

3.2 Perancangan

Subbab ini akan menjelaskan perancangan yang didapatkan dari analisis meliputi perancangan arsitektural sistem, perancangan kelas, perancangan basis data, dan perancangan antarmuka.

3.2.1 Batasan Perancangan

Batasan perancangan tugas akhir adalah sebagai berikut:

1. Easy SMS melakukan pengiriman dan penerimaan SMS dengan menggunakan modem GSM.

2. Pengiriman MMS dengan modem GPRS, terpisah dengan modem GSM.

3. Pengembangan antarmuka berbasis web menggunakan bahasa pemrograman PHP.

4. Pengembangan subsistem SMS dan MMS daemon/gateway menggunakan bahasa pemrograman Java.

(15)

3.2.2 Perancangan Arsitektural Sistem

Perancangan arsitektural sistem Easy SMS ditunjukkan pada Gambar III-10. Antarmuka merupakan subsistem yang sebenarnya terpisah dengan aplikasi daemon. Kedua subsistem berhubungan secara tidak langsung dengan perantara basis data yang merupakan media penyimpanan pesan masuk dan keluar. Terdapat dua daemon, yaitu SMS daemon dan MMS daemon. SMS daemon mengirimkan dan menerima SMS dengan menggunakan perangkat modem GSM, sedangkan MMS daemon digunakan untuk mengirim MMS.

Gambar III-10 Arsitektur EasySMS dengan SMS dan MMS Gateway

Gambar III-11 menunjukkan rancangan arsitektur integrasi antara SMS, MMS gateway, native client dengan NoteBOX. Pada gambar tersebut, SMS dan MMS gateway memiliki peran yang sama dengan SMS dan MMS daemon seperti yang ditunjukkan pada Gambar III-10. Dengan demikian, SMS dan MMS daemon pada Gambar III-10 dapat diimplementasikan sebagai subsistem SMS dan MMS gateway seperti ditunjukkan pada Gambar III-11 dengan sedikit penyesuaian.

Gambar III-11 Arsitektur NoteBOX dengan SMS dan MMS Gateway serta Native Client

(16)

Berdasarkan diagram kelas analisis yang telah diperoleh pada subbab 3.1.6.4, selanjutnya akan dilakukan perancangan detil tentang kelas-kelas yang terdapat dalam sistem. Diagram kelas perancangan yang digunakan dalam sistem dapat dilihat pada Gambar III-8.

Dari use case dan skenario kejadian tersebut di atas, diperoleh perancangan kelas yang ditunjukkan pada Gambar III-12 hingga Gambar III-15.

Gambar III-12 Diagram Kelas Perancangan SMS Gateway

Gambar III-13 Diagram Kelas Perancangan MMS Gateway

(17)

Gambar III-14 Diagram Kelas Perancangan Native Client NoteBOX

Gambar III-15 Diagram Kelas Perancangan Easy SMS

(18)

Tabel III-9.

Tabel III-6 Deskripsi Hasil Perancangan Kelas Easy SMS

No Nama Kelas Kelas Analisis Terkait Deskripsi

1. Page Page Kelas ini bertanggung jawab untuk

menjembatani interaksi antara pengguna dengan aplikasi.

2. Mysql DBConnector Kelas ini berfungsi untuk berkomunikasi dengan basis data Mysql.

3. Util Helper Kelas ini merupakan kelas pembantu

untuk tugas-tugas seperti konversi tanggal, dan pemformatan string-string lain dari masukan user atau untuk ditampilkan ke antarmuka.

4. Login Login Kelas ini bertanggung jawab dalam

menangani autentikasi dan autorisasi pengguna sebelum masuk ke home page.

5. SMSComposer SMSComposer Kelas ini berfungsi khusus untuk menyusun pesan SMS.

6. MMSComposer MMSComposer Kelas ini berfungsi khusus untuk menyusun pesan MMS.

7. GalleryManager GalleryManager Kelas ini berfungsi untuk mengelola galeri gambar yang dipergunakan untuk penyusunan pesan MMS. Kelas ini memiliki tanggung jawab menambah, menghapus, dan mengedit nama gambar pada galeri.

8. ResponseManager ResponseManager Kelas ini berfungsi untuk menambah dan menghapus pesan dan kata kunci yang digunakan dalam fasilitas auto reply.

9. GroupManager GroupManager Kelas ini bertanggung jawab dalam pengelolaan group, meliputi penambahan group baru, perubahan nama group, penambahan dan penghapusan anggota group.

10. SMSInboxManager SMSInboxManager Kelas ini berfungsi untuk memberikan data SMS yang masuk dan untuk menghapus SMS tersebut.

11. ContactManager ContactManager Kelas ini berfungsi untuk mengelola contact, meliputi penambahan, perubahan nama, dan penghapusan contact.

(19)

No Nama Kelas Kelas Analisis Terkait Deskripsi

12. SMSOutboxManager SMSOutboxManager Kelas ini bertanggung jawab dalam mengelola pesan SMS yang akan dikirim, meliputi pengeditan dan penghapusan, serta perubahan status pesan dari status pending (belum terkirim) menjadi success (terkirim).

13. MMSOutboxManager MMSOutboxManager Kelas ini bertanggung jawab dalam mengelola pesan MMS yang akan dikirim, meliputi pengeditan dan penghapusan, serta perubahan status pesan dari status pending (belum terkirim) menjadi success (terkirim).

14. Scheduler Scheduler Kelas ini bertanggung jawab dalam melakukan penjadwalan pengiriman pesan, baik SMS maupun MMS.

Pada Tabel III-6 tidak terdapat kelas analisis MessageComposer dan OutboxManager karena penggunaan kelas turunannya sudah mencukupi.

Tabel III-7 Deskripsi Hasil Perancangan Kelas SMS Gateway No Nama Kelas Kelas Analisis Terkait Deskripsi

1. Daemon Daemon Kelas ini berfungsi untuk melakukan

tugas pengiriman pesan. Kelas ini akan terus menerus mengecek ketersediaan pesan untuk dikirim.

2. SmsTerminal ModemConnector Kelas ini bertugas untuk melakukan komunikasi dengan modem GSM, mengirimkan AT Command dan mendengarkan respon yang diberikan oleh modem. Kelas ini pula yang bertugas mendengarkan event pada modem terutama adanya pesan masuk.

3. Property Utility Kelas ini berfungsi untuk membaca properti yang diperlukan oleh SMS gateway, yaitu properti modem dan perintah-perintah AT command yang diperlukan ketika inisialisasi modem.

Properti ini berupa inisialisasi modem selain AT Command.

4. SAXLister Utility Kelas ini berfungsi untuk membaca jenis- jenis AT Command dari file konfigurasi yang berupa file XML yang dikirimkan ke modem saat pertama aplikasi dijalankan.

5. InboxCleaner DBCleaner Kelas ini berfungsi untuk membersihkan basis data dari concatenated message yang telah kadaluarsa.

(20)

melakukan koneksi dengan basis data.

7. OutgoingMessage OutgoingMessage Kelas ini merepresentasikan pesan SMS yang siap dikirim, yaitu SMS PDU. Pesan dalam format plain text diubah menjadi SMS PDU yang siap dikirim melalui modem setelah ditambah dengan header yang diperlukan.

8. IncomingMessage IncomingMessage Kelas ini berfungsi untuk merepresentasikan pesan SMS masuk, dan mengubahnya dari format SMS PDU menjadi plain text serta menerjemahkan header pada pesan tersebut sehingga bisadibaca manusia.

9. SmsPduCodec Codec Kelas ini berfungsi untuk mengubah plain text ke SMS PDU dan sebaliknya untuk bagian user data pada SMS.

10. InboxTemp ConcatenatedMessage Kelas ini berfungsi untuk membantu memonitor SMS masuk yang panjangnya lebih dari 140 byte untuk kemudian disatukan.

Tabel III-8 Deskripsi Hasil Perancangan Kelas MMS Gateway No Nama Kelas Kelas Analisis Terkait Deskripsi

1. Mms Daemon Kelas ini berfungsi untuk melakukan

tugas pengiriman pesan. Kelas ini akan terus menerus mengecek ketersediaan pesan untuk dikirim.

2. Sender Sender Kelas ini berfungsi untuk mengirimkan

MMS melalui koneksi GPRS.

3. MmsCreator Composer Kelas ini berfungsi untuk membentuk MMS PDU yang siap dikirim oleh kelas Sender.

4. m_send_req MMSMessage Kelas ini merepresentasikan MMS PDU yang siap untuk dikirim. Kelas ini merupakan kelas yang diambil dari pustaka eksternal.

5. SQLConnection DBConnector Kelas ini bertanggung jawab dalam melakukan koneksi dengan basis data.

6. IWSPUpperLayer WAPConnector Kelas ini berfungsi untuk melakukan koneksi ke GPRS dengan protokol WAP.

Kelas ini merupakan kelas yang diambil dari pustaka eksternal.

(21)

Tabel III-9 Deskripsi Hasil Perancangan Kelas Native Client NoteBOX No Nama Kelas Kelas Analisis Terkait Deskripsi

1. UI UI Kelas ini berfungsi untuk menjembatani

interaksi antara pengguna dengan aplikasi.

2. EmailValidator EmailValidator Kelas ini berfungsi untuk melakukan validasi alamat email.

3. ResponseGetter ResponseGetter Kelas ini berfungsi untuk mengambil dan membaca respon dari query yang dikirmkan ke NoteBOX.

4. QuerySender QuerySender Kelas ini berfungsi untuk mengirimkan query ke NoteBOX.

5. Mysql DBConnector Kelas ini bertanggung jawab dalam melakukan koneksi dengan basis data.

3.2.4 Perancangan Basis Data

Rancangan basis data ditunjukkan pada Gambar III-16. Dari gambar tersebut terlihat terdapat 7 tabel utama. Tabel inbox digunakan untuk menampung pesan SMS masuk. Tabel send_sms digunakan untuk menampung pesan SMS keluar. Tabel mms digunakan untuk menampung pesan MMS keluar. Tabel groups dan contacts masing-masing digunakan untuk menampung group dan contact. Tabel inboxtemp digunakan untuk menampung short message penyusun concatenated short message. Data di dalamnya akan dihapus jika concatenated short message sudah utuh atau telah melewati jangka waktu tertentu. Tabel response digunakan untuk menampung pesan yang digunakan untuk fungsi auto-reply.

Jika subsistem SMS dan MMS Gateway dihubungkan dengan NoteBOX, tabel yang diperlukan hanyalah tabel inboxtemp untuk digunakan oleh kelas InboxTemp dan InboxCleaner. Sedangkan pada Native Client NoteBOX, hanya dibutuhkan satu tabel yaitu tabel query seperti ditunjukkan pada Gambar III-17.

(22)

`group_member`

member of has members

`contacts`

`phone`

`name`

<pi> Variable characters (15) Variable characters (60)

<M>

Key_1 <pi>

`groups`

`IDGroup`

`group_name`

<pi>

<ai>

Serial (11)

Variable characters (30)

<M>

Key_1

`group_name`

<pi>

<ai>

`id`

`message`

`sender`

`date_time`

<pi> Serial (11)

Variable characters (500) Variable characters (15) Date & Time

<M>

<M>

Key_1 <pi>

`message`

`date_time`

`mr`

`partslen`

`sekuen`

<pi>

<pi>

Variable characters (160) Date & Time Integer Integer Integer

<M>

<M>

<M>

<M>

Key_1 <pi>

`schedule`

`status`

Date & Time Variable characters (1)

<M>

Key_1 <pi>

`response`

`key`

`message`

<pi> Variable characters (10) Variable characters (500)

<M>

Key_1 <pi>

`send_sms`

`id`

`message`

`address`

`date_time`

`status`

<pi> Serial (11)

Variable characters (500) Variable characters (15) Date & Time Variable characters (10)

<M>

<M>

Key_1 <pi>

Gambar III-16 Rancangan Basis Data pada Easy SMS, SMS dan MMS Gateway

Gambar III-17 Rancangan Basis Data pada Native Client NoteBOX

3.2.5 Perancangan Antarmuka

Pada Gambar III-18, terlihat rancangan halaman login untuk Easy SMS. Pada halaman ini, administrator mengisikan username dan password. Jika terjadi kesalahan, akan ditampilkan pesan kesalahan pada halaman ini. Ketika administrator melakukan logout, halaman inilah yang akan ditampilkan ditambah dengan pesan bahwa administrator telah logout. Rancangan antarmuka selengkapnya dapat dilihat pada lampiran E.

Gambar III-18 Halaman Login

Gambar

Gambar  III-1 Arsitektur Global Easy SMS
Gambar  III-2 Use Case Message Management
Gambar  III-3 Use Case Manajemen Contact dan Group
Tabel  III-1 Skenario Login  Aktor  Administrator
+7

Referensi

Dokumen terkait

Menunjukkan sikap menghindari plagiasi, bertanggungjawab, bekerjasama dan komunikasi yang baik dalam melakukan praktikum menguraikan dan menjelaskan variabel proses,

Jumlah partisipan sebanyak 4 pasien dan 4 keluarga untuk pre action research dengan accidental sampling, 6 perawat untuk action research dengan purposive sampling, 4 pakar

Seluruh pengiriman yang diterima Auditee selama periode Desember 2016 – Januari 2017 telah dilampirkan dokumen angkutan hasil hutan berupa Nota Angkutan bahan baku dan

Guru harus menyeleksi satu persatu dalam menentukan jurusan untuk setiap siswa berdasarkan nilai akademik di kelas X, hasil psikotes dan angket keinginan (minat) siswa,

46 Tatalaksana spesialistik ensefalopati 47 Tatalaksana spesialistik trauma kepala 48 Melakukan tindakan pungsi lumbal 49 Melakukan tindakan pemasangan EEG 50 Melakukan

Bahan hukum dan bahan non hukum yang diperoleh dalam penelitian ini akan dianalisis secara perspektif dengan menggunakan metode deduktif yaitu data umum tentang

Jalan raya kabupaten desa keman kec.pamapangan kode pos 30654 Email : [email protected]. INOVASI

Dari hasil penelitian yang telah dilakukan, dapat disimpulkan bahwa hasil perlakuan terbaik adalah penambahan konsentrasi sukrosa sebesar 20% (b/b) pada proporsi sirup gula