19
3.1
Analisa Masalah
Tahap analisa permasalahan digunakan untuk mengetahui dan menerjemahkan semua permasalahan yang berhubungan dengan antrian dalam sms engine. Oleh karena itu pada tahap ini akan diuraikan pemecahan masalah dari antrian dalam sms engine tersebut.
Cara kerja dari sms engine sendiri adalah pertama-tama user mengunggah file yang akan di kirimkan melalui sms engine. Kemudian ada aplikasi yang bernama file controller yang berfungsi untuk memproses file yang diunggah untuk dimasukkan ke dalam antrian dalam message queuing, yang nantinya antrian itu akan diambil oleh transmitter. Aplikasi transmitter sendiri berfungsi untuk mengambil pesan dalam antrian message queuing untuk diteruskan ke operator. Masalah yang terjadi dalam sms engine saat ini adalah pesan dalam antrian yang ada di message queuing tidak bisa dihentikan atau diprioritaskan pengirimannya oleh user. Oleh karena itu penulis akan menganalisa permasalahan itu sehingga dapat dibuat sms engine baru yang dapat menyelesaikan permasalahan tersebut.
Cara kerja sms engine yang baru nanti adalah pertama-tama user mengunggah file yang akan dikirimkan melalui SMS engine. Kemudian aplikasi file controller akan memproses file yang diunggah untuk dimasukkan ke dalam antrian. Pesan yang dimasukkan dalam antrian oleh file controller ini akan diberi penanda atau id. Aplikasi transmitter disini akan mengambil pesan dalam antrian message queuing berdasarkan prioritas dan waktu kedatangan. Tetapi apabila user ingin memberhentikan atau memprioritaskan pengiriman pesan dalam antrian, maka transmitter akan mengambil pesan dalam antrian berdasarkan id atau penanda yang
telah diberi oleh file controller. Untuk penjelasan skenario pengguna SMS engine dapat dilihat pada Tabel 3.1.
Tabel 3.1 Skenario Pengguna SMS engine.
No. Pengguna Deskripsi
1. User User disini dapat melakukan login ke halaman web
upload SMS engine, kemudian dapat mengunggah file yang ingin dikirimkan, melihat laporan file yang diunggah, dan melihat laporan pengiriman.
2. Admin Admin disini dapat melakukan login ke halaman web
upload SMS engine, kemudian dapat mengunggah file dari user, melihat laporan file yang diunggah dari seluruh user, dan melihat laporan pengiriman dari seluruh user. Selain itu admin juga dapat melakukan pembatalan pengiriman pesan dan pemprioritasan pengiriman pesan untuk pesan yang ada di antrian dalam message queuing.
3.2
Perancangan Sistem
Perancangan sistem digunakan untuk merancang sistem sms engine untuk mengetahui secara jelas apa saja yang harus dibuat dan bagaimana cara kerja sistem sms engine, sehingga bisa didapatkan hasil sesuai dengan yang diharapkan. Perancangan sistem dimulai dengan membuat use case yang sesuai dengan alur sms engine. Langkah selanjutnya adalah membuat langkah-langkah apa saja yang ada dalam sistem sms engine tersebut, sehingga sms engine ini nantinya dapat berjalan sesuai dengan keinginan.
3.2.1 Perancangan Use Case Diagram
Aplikasi yang dibuat memiliki fungsionalitas seperti Gambar 3.1. Digambarkan bahwa aktor admin yang menjadi prioritas dalam menjalankan aplikasi dapat memilih menu yang diinginkan pada main menu. Di dalam main menu terdapat pilihan menu antara lain upload file report dan delivery report. Dimana menu-menu tersebut merupakan dependencies dari main menu seperti yang digambarkan berupa panah putus-putus, dan bersifat extend yang artinya kondisi yang hanya berjalan ketika user menekan pilihan pada main menu. Begitu juga pada uploaded file report, yang di dalamnya terdapat upload file, cancel message dan prioritize message.
Upload File Cancel Message Prioritize Message Delivery Report Main Menu Admin
Uploaded File Report <<extend>>
<<extend>>
<<extend>>
<<extend>>
<<extend>>
Gambar 3.1. Use Case Admin
Sedangkan untuk user sendiri dalam SMS engine ini hanya dapat menunggah file, melihat laporan dari file yang diunggah, dan melihat laporan pengiriman. Seperti yang terlihat dalam gambar 3.2.
Uploaded File Report
Delivery Report
Upload File
User Main Menu
<<extend>>
<<extend>>
<<extend>>
Untuk aplikasi file controller dan transmitter sendiri, admin hanya dapat melakukan start dan stop aplikasi. Seperti yang terlihat pada gambar 3.3. dan 3.4.
Start Application
Stop Application
Admin Main Menu
<<extend>>
<<extend>>
Gambar 3.3. Use Case File Controller
Start Application
Stop Application
Admin Main Menu
<<extend>>
<<extend>>
Gambar 3.4. Use Case Transmitter
3.2.2 Perancangan Activity Diagram
Dalam sistem ini activity diagram terbagi menjadi 6 bagian, karena ada 6 proses yang berbeda, yaitu antara lain upload file, prioritize message, cancel message, file controller dan transmitter.
3.2.2.1. Upload File. Gambar 3.5 menjelaskan tentang alur kerja sistem sewaktu user mengunggah file. Pertama-tama user memilih file yang diunggah. Kemudian secara otomatis sistem akan menyimpan file yang diunggah. Setelah itu sistem akan memvalidasi apakah file yang diunggah itu sesuai dengan format yang benar apa tidak. Jika format file benar, maka informasi mengenai file yang diunggah akan
disimpan di database, kemudian sistem akan memberikan keterangan pada user jika file berhasil disimpan dan akan diproses. Jika format file tidak benar, maka sistem akan memberikan informasi kepada user jika format file salah.
Select Uploaded File Select Uploaded File Validate Uploaded File Save File Reject File Save To Database
( Format File Not Valid ) ( Format File Valid )
3.2.2.2. Prioritize Message. Gambar 3.6 menjelaskan saat user ingin memprioritaskan suatu pengiriman. Pertama-tama user akan memilih file mana yang pengiriman pesannya ingin diprioritaskan. Kemudian setelah itu secara otomatis sistem akan menyimpan ke database, file yang ingin diprioritaskan pengirimannya. Setelah itu sistem akan memasukkan informasi ke Message Queuing yang nantinya akan diambil oleh transmitter.
Select Uploaded File
Insert To Database
Insert To Queue A
Gambar 3.6. Prioritize Message Activity Diagram
3.2.2.3. Cancel Message. Gambar 3.7 menjelaskan saat user ingin membatalkan suatu pengiriman. Pertama-tama user akan memilih file mana yang pengiriman pesannya ingin dibatalkan. Kemudian setelah itu secara otomatis sistem akan menyimpan ke database, file yang ingin dibatalkan pengirimannya. Setelah itu sistem akan memasukkan informasi ke Message Queuing yang nantinya akan diambil oleh transmitter.
Select Uploaded File
Insert To Database
Insert To Queue A
Gambar 3.7. Cancel Message Activity Diagram
3.2.2.4. File Controller. Gambar 3.8 menjelaskan proses kerja aplikasi file controller yang bertugas memproses file yang diunggah oleh user. Saat aplikasi pertama kali berjalan aplikasi akan melihat apakah aplikasi sedang berjalan. Jika status aplikasi sudah stop, maka aplikasi akan berhenti. Jika status aplikasi berjalan, maka aplikasi akan melihat apakah ada data di database yang harus di proses. Jika data tidak ditemukan, maka aplikasi akan kembali melihat status aplikasi, kemudian melihat data di database lagi. Jika di database ada data yang bisa diproses, aplikasi akan meng-update status di database bahwa data itu sedang diproses, setelah itu aplikasi akan memproses file. Setelah file selesai diproses, maka aplikasi akan meng-update status data di database bahwa file telah selesai diproses.
Check Database Check Application Status Update Database To Processing ( Application Running ) ( Application Stop ) Process File Update Database To Finish Process
( Data Doesn't Exist ) ( Data Exist )
Gambar 3.8. File Controller Activity Diagram
3.2.2.5. Transmitter. Gambar 3.9 menjelaskan alur kerja utama aplikasi transmitter yang bertugas mengambil pesan dalam antrian di message queuing, kemudian meneruskannya mengirimkan ke operator. Alur kerjanya yaitu saat aplikasi berjalan, kemudian aplikasi akan melihat status aplikasi. Jika status aplikasi stop atau berhenti, maka aplikasi akan selesai bekerja. Jika status aplikasi running, maka aplikasi akan melihat, apakah ada pesan yang diprioritaskan atau dibatalkan. Jika ada, maka aplikasi akan mengambil pesan dalam antrian message queuing berdasarkan id dari pesan yang ingin diprioritaskan. Jika tidak ada, maka aplikasi akan mengambil pesan berdasarkan prioritas pesan dan waktu kedatangan. Setelah itu aplikasi akan menyimpan informasi detail mengenai pesan yang dikirimkan ke database. setelah itu, aplikasi akan mengirimkan pesan tadi ke operator. Setelah itu aplikasi akan meng-update informasi mengenai pesan itu ke database, apakah berhasil dikirimkan
ke operator atau tidak. Setelah sukses, maka aplikasi akan kembali melihat status aplikasi apakah stop atau running.
Check Prioritize / Cancel Message in list
Get Message From Queue A ( Prioritize / Cancel Message Doesn't Exist )
Get Message From Queue A By Id ( Prioritize / Cancel Message Exist ) Check Application
Status
( Application Running ) ( Application Stop )
Insert Message Information To Database Hit Message To Operator Update Message Information To Database Check Message Type ( Prioritize ) Inset Message Information To Database ( Cancel ) Remove Id from list ( Message Exist )
( Message Doesn't Exist )
( Message Exist ) ( Message Doesn't Exist )
Gambar 3.9. Main Transmitter Activity Diagram
Sedangkan Gambar 3.10 menjelaskan alur kerja bagian transmitter yang berfungsi melihat apakah ada pesan yang ingin diprioritaskan dan dibatalkan atau tidak. Alur kerjanya yaitu, saat aplikasi berjalan, aplikasi akan melihat apakah ada pesan dalam database yang ingin diprioritaskan atau dibatalkan untuk dimasukkan kedalam Daftar. kemudian aplikasi akan melihat status aplikasi. Jika status aplikasi sedang berjalan, aplikasi akan mengambil pesan di antrian dalam suatu alamat message queue. Jika ada pesan ditemukan, maka pesan akan dimasukkan kedalam
daftar. Daftar ini nantinya akan diambil oleh bagian lain dalam aplikasi transmitter seperti yang terlihat pada Gambar 3.9 , jika tidak ditemukan pesan maka aplikasi akan kembali melihat status aplikasi.
Check Application Status
Get Message From Queue B Add Message To List ( Application Stop ) ( Application Running ) ( Message Exist )
( Message Doesn't Exist ) Get Message
From Database
3.2.3 Perancangan Class Diagram
Perancangan class diagram ini (Gambar 3.11) digunakan untuk merancang objek-objek apa saja yang nantinya digunakan dalam pembuatan SMS engine ini.
3.2.4 Perancangan Package Diagram
Perancangan package diagram ini (Gambar 3.12) digunakan sebagai rancangan hubungan antar project dalam pembuatan SMS engine ini.
Web +Default +Home +UploadFile +UploadFileSetup +DeliveryReport +Logout << im po rt>> <<import>> <<im port >> FC +FileLog +Helper +Settings +ThreadMaster +ThreadManager Transmitter +FileLog +Helper +Settings +ThreadMaster +ThreadManager ClassLib +XMLPushWrapper +clsBase +clsClient +clsDeliveryReport +clsLookup +clsInterrupt +clsMasking +clsMaster +clsUploadFile +clsUser
3.3
Perancangan Antarmuka
Perancangan antarmuka ini digunakan untuk merancang tampilan aplikasi dari sistem sms engine, sehingga memudahkan untuk membuat tampilan aplikasi sms engine. Perancangan antarmuka tersebut terdiri dari perancangan aplikasi web dan perancangan aplikasi windows.
3.3.1 Aplikasi Web
3.3.1.1. Halaman Login. Halaman login digunakan oleh user dan admin untuk masuk ke dalam sistem SMS engine. Tampilan halaman login tersebut dapat dilihat pada Gambar 3.13.
Login
UserId
Password
image
3.3.1.2. Halaman Menu Utama. Halaman menu utama merukan halaman yang ada setelah user atau admin melakukan login ke web SMS engine. Tampilan halaman utama dapat dilihat pada Gambar 3.14.
Banner
Footer Home
Upload File Report Delivery Report
Log Out
Home
3.3.1.3. Halaman Upload File Report. Halaman upload file report digunakan untuk melihat informasi file yang telah diunggah oleh user atau admin. Kemudian pada halaman ini juga terdapat link untuk mengirimkan pesan menuju halaman upload file setup. Di halaman ini juga dapat melakukan prioritas pengiriman dan pembatalan pesan. Halaman upload file report dapat dilihat pada Gambar 3.15.
Banner
Footer Upload File Report
Upload File Report Delivery Report
BatchName Message DateUpload
Upload Status
Day Month Year
Search Setup
No. Button BatchName Message
Log Out
UploadBy DateUpload Schedule Client
Home
Upload By
Masking
Total No Status
3.3.1.4. Halaman Upload File Setup. Halaman upload file setup digunakan untuk melakukan pengiriman pesan. halaman tersebut dapat dilihat pada Gambar 3.16.
Banner
Footer Upload File Setup
Upload File Report Delivery Report BatchName Message Back Send Log Out Client Masking FileName Home
Schedule Day Month Year
Upload
3.3.1.5. Halaman Delivery Report. Halaman delivery report digunakan untuk melihat laporan pengiriman pesan, apakah pesan yang diunggah oleh user sudah dikirimkan apa belum. Halaman tersebut dapat dilihat pada Gambar 3.17.
Banner
Footer Delivery Report
Upload File Report
Delivery Report BatchName Message DateHit
Status
Day Month Year
Search
No. Message BatchName
Log Out
UploadBy DateUpload Status Client MSISDN DateHit Home Masking Upload By MSISDN Schedule
3.3.2 Aplikasi Windows
3.3.2.1. File Controller. File controller digunakan untuk memproses file yang diunggah oleh user menjadi bentuk pesan yang dimasukkan pada antrian message queuing. Tampilan file controller dapat terlihat pada gambar 3.18.
File Controller File Controller Close Debug Error Stop Start status
3.3.2.2. Transmitter. Transmitter digunakan untuk memproses pesan yang ada dalam message queuing untuk diteruskan ke operator. Tampilan transmitter dapat dilihat pada Gambar 3.19. Transmitter Transmitter Close Debug Error Stop Start status