ABSTRAKSI
Perkembangan teknologi dalam bidang informasi saat ini telah
memberikan banyak pengaruh pada aspek-aspek kehidupan manusia. Tidak dapat
disangkal bahwa kehidupan manusia saat ini banyak dipengaruhi oleh telepon
selular. Jika kita melihat sekeliling kita, hampir setiap individu mempunyai
telepon selular. Penggunaan dan fungsionalitas dari telepon selular pun semakin
berkembang, salah satu fitur telepon selular yang sering digunakan yaitu SMS (
Short Message Service ) yang berfungsi untuk komunikasi dapat juga digunakan
untuk mendapat informasi.
Aplikasi ini dibuat untuk menyediakan layanan informasi, pembuatan kuis
dan melakukan voting dengan pembuatan kata kunci untuk mengaksesnya melalui
SMS. Aplikasi ini dibuat dengan menggunakan bahasa pemrograman C# dengan
menggunakan Visual Studio .Net 2005 dan SQL Server 2005 Express Edition.
Kata Kunci : SMS, Layanan Informasi, Quiz, Voting
DAFTAR ISI
LEMBAR PENGESAHAN ...ii
PERNYATAAN ORISINALITAS LAPORAN...iii
KATA PENGANTAR...iv
LEMBAR PERNYATAAN PERSETUJUAN KARYA ILMIAH ...vii
ABSTRAKSI ...viii 1.1.3 Definisi, Akronim, dan Singkatan ...I - 3 1.1.4 Daftar referensi ...I - 4 1.1.5 Overview Laporan ...I - 4 1.2. Gambaran Keseluruhan ...I - 6 1.2.1 Perspektif Produk ...I - 6 1.2.2 Fungsi Produk...I - 8 1.2.3 Karakteristik Pengguna...I - 8 1.2.4 Batasan – Batasan ...I - 8 1.2.5 Asumsi dan Ketergantungan...I - 9 1.2.6 Penundaan Persyaratan ...I - 9
Bab II Spesifikasi Produk………....II - 1
2.1 Persyaratan Antarmuka Eksternal ...II - 1 2.1.1 Antarmuka dengan Pengguna ...II - 1 2.1.2 Antarmuka Perangkat Keras ...II - 4 2.1.3 Antarmuka Perangkat Lunak ...II - 4 2.1.4 Antarmuka Komunikasi...II - 4 2.2 Fitur Produk Perangkat Lunak...II - 5 2.2.1 Service Keyword Management ...II - 5 2.2.2 Quiz Keyword Management...II - 6 2.2.3 Vote Keyword Management...II - 7 2.2.4 Send SMS ...II - 8 2.2.5 Read SMS ...II - 9 2.2.6 Delete SMS...II - 9 2.2.7 AutoReply...II - 10
2.2.8 Reporting Management ...II - 11 2.2.9 Phonebook and Groups...II - 12 2.2.10 Client Registration ...II - 13 2.2.11 Searching ...II - 13 2.2.12 Keyword Wizard...II - 14 2.2.13 Check Incoming SMS...II - 15 2.2.14 User Role ...II - 16
Bab III Desain Perangkat Lunak……….…...III - 1
3.1 Pendahuluan...III - 1 3.1.1 Identifikasi Kebutuhan Sistem...III - 1 3.1.2 Rancangan Sistem Baru...III - 2 3.2 Keputusan Desain Perangkat Lunak secara Keseluruhan...III - 2 3.2.1 Analisis Database ...III - 3 3.2.2 Database Diagram...III - 8 3.2.3 Analisis UML ( Unified Modeling Language ) ...III - 10 3.3 Desain Arsitektur Perangkat Lunak...III - 12 3.3.1 Komponen Perangkat Lunak ...III - 12 3.3.2 Konsep Eksekusi Program...III - 25 3.3.3 Desain Antarmuka ...III - 41
Bab IV Pengembangan Sistem...IV - 1
4.1 Perencanaan Tahap Implementasi ...IV - 1 4.1.1 Pembagian Class...IV - 1 4.1.2 Keterkaitan Antar Modul...IV - 1 4.2 Perjalanan Tahap Implementasi...IV - 9 4.2.1 Top – Down Implementation...IV - 9 4.2.2 Debugging ...IV - 9 4.3 Realisasi Fungsionalitas Program...IV - 10 4.4 Realisasi Antarmuka Program ...IV - 11 4.4.1 Login Form ...IV - 11 4.4.2 Main Form ...IV - 11 4.4.2 Manage Phonebook Form...IV - 20 4.4.3 Manage Group Form ...IV - 21 4.4.4 Keyword Wizard Form ...IV - 22 4.4.5 Report Form...IV - 23
Bab V Testing dan Evaluasi Sistem... ..V - 1
5.1 Rencana Pengujian Sistem Terimplementasi ...V - 1 5.1.1 Test Case...V - 1 5.1.2 Uji Fungsionalitas Class ...V - 1 5.2 Perjalanan Metodologi Pengujian...V - 2 5.2.1 White Box...V - 2 5.2.2 Black Box ...V - 14 5.3 Ulasan Hasil Evaluasi ...V - 25
5.3.1 Evaluasi Fungsionalitas ...V - 25 5.3.2 Evaluasi User Interface Design ...V - 26 5.3.3 Evaluasi Error Handling dan Security ...V - 26
Bab VI Kesimpulan dan Saran...VI - 1
6.1 Keterkaitan antara Kesimpulan dan Hasil Evaluasi ...VI - 1 6.2 Keterkaitan antara Saran dan Hasil Evaluasi...VI - 1 6.3 Rencana Perbaikan terhadap Saran yang diberikan...VI - 1
LAMPIRAN...L-1 DAFTAR REFERENSI ...R-1
DAFTAR GAMBAR
Gambar III - 8 : Class Contact & Class ContactUtils...III - 15 Gambar III - 9 : Class ContactGroup & ContactGroupUtils...III - 16 Gambar III - 10 : Class ContactGroupList & Class ContactGroupListUtilsIII - 17 Gambar III - 11 : Class Content & Class ContentUtils...III - 18 Gambar III - 12 : Class ContentList & Class ContentListUtils ...III - 19 Gambar III - 13 : Class Schedule & Class ScheduleUtils ...III - 20 Gambar III - 14 : Class Sms & Class SmsUtils ...III - 21 Gambar III - 15 : ClassSmsKeyword & Class SmsKeywordUtils ...III - 22 Gambar III - 16 : Class SmsRegistration & Class SmsRegistrationUtils...III - 23 Gambar III - 17 : Class UserLogin & Class UserLoginUtils ...III - 24 Gambar III - 18 : Connect GSM Phone Activity...III - 25 Gambar III - 19 : Send single SMS Activity ...III - 26 Gambar III - 20 : Send Multiple SMS from Group Activity ...III - 26 Gambar III - 21 : Send Multiple SMS Activity ...III - 27 Gambar III - 22 : Schedule SMS Activity ...III - 27 Gambar III - 23 : Read Inbox Activity ...III - 28 Gambar III - 24 : Delete InboxActivity ...III - 28 Gambar III - 25 : Add Phone Number from Phonebook Activity ...III - 29 Gambar III - 26 : Create Group Activity ...III - 30 Gambar III - 27 : Edit Group Description Activity...III - 30 Gambar III - 28 : Delete Group Activity...III - 30 Gambar III - 29 : Add Group Member Activity ...III - 31 Gambar III - 30 : Delete Group Member Activity ...III - 31 Gambar III - 31 : Create Phonebook Activity...III - 32 Gambar III - 32 : Edit Phonebook Activity ...III - 33 Gambar III - 33 : Delete Phonebook Activity ...III - 33 Gambar III - 34 : Find Phonebook Activity ...III - 34 Gambar III - 35 : Create Keyword Activity ...III - 35 Gambar III - 36 : Edit Keyword Activity...III - 35DAFTAR TABEL
Tabel V - 1 : Pengujian class AppUtils ...V-3 Tabel V - 2 : Pengujian class ContactUtils...V-3 Tabel V - 3 : Pengujian class Contact GroupUtils ...V-4 Tabel V - 4 : Pengujian class ContactGroupListUtils ...V-5 Tabel V - 5 : Pengujian class ContentUtils...V-5 Tabel V - 6 : Pengujian class ContentListUtils...V-7 Tabel V - 7 : Pengujian class ScheduleUtils ...V-8 Tabel V - 6 : Pengujian class SmsRegistrationUtils ...V-9 Tabel V - 7 : Pengujian class SmsKeywordUtils...V-10 Tabel V - 6 : Pengujian class UserLoginUtils ...V-11 Tabel V - 7 : Pengujian BlackBox ...V-14
Bab I
Persyaratan Produk
1.1
Pendahuluan
Penggunaan teknologi informasi di segala bidang kehidupan merupakan hal yang tidak dapat dipungkiri lagi. Pemberdayaan kualitas manusia dengan penciptaan software – software pun makin berkembang. Penciptaan software tidak hanya pada komputer melainkan perkembangan penciptaan software pada telepon genggam (handphone) telah banyak dikembangkan. Seiring dengan perkembangan penciptaan software pada handphone, para pengguna telepon genggam juga kerap membutuhkan informasi yang akurat dan cepat secara langsung.
1.1.1 Tujuan
Aplikasi ini dimaksudkan untuk membuat aplikasi server yang dapat membuat berbagai data layanan informasi, kuis dan voting berdasarkan kata kunci ( keyword ) yang ditentukan, serta dapat me management data – data yang sudah ada di aplikasi. Informasi pada kata kunci dari aplikasi dapat diakses melalui Short Message Service (SMS) oleh pengguna handphone ( client ).
1.1.2 Ruang Lingkup
Aplikasi SMS Management Server ini disebut dengan nama ”PhoneCast”.
PhoneCast adalah sebuah aplikasi yang dapat di instal pada sebuah komputer, baik PC, server maupun notebook, dan berfungsi untuk melakukan pengiriman SMS secara massal (broadcasting),
manajemen pesan, mekanisme keamanan serta manajemen pengguna, daftar phonebook, usergroups, manajemen database untuk trafik yang masuk & keluar, manajemen kata kunci untuk layanan-layanan, dan mekanisme laporan yang komprehensif.
PhoneCast menggunakan GSM modem (atau handset) yang terhubung ke komputer melalui koneksi kabel data atau bluetooth. GSM Modem merupakan handset yang dijadikan sebagai sarana penerima SMS dari client yang nantinya akan diproses oleh server. PhoneCast dibuat menggunakan bahasa pemograman C# dan memakai GSMComm sebagai modul komunikasi dengan GSM Modem.
Gambar I -1 : Desain Arsitektur
Client akan mengirimkan SMS ke GSM Modem yang akan diproses lebih lanjut pada server mengenai informasi yang ingin didapat oleh client sesuai dengan keyword yang dikirim. Setelah di
proses server akan me – reply dengan mengirimkan kembali SMS ke client.
1.1.3 Definisi, Akronim, dan Singkatan
• AT Commands : Perintah eksekusi untuk telepon selular yang diakses dari komputer .
• Background : Latar belakang tampilan pada aplikasi. • Database : Tempat penyimpanan data yang diolah dan
dibutuhkan dalam aplikasi ini. • Handphone : Telepon selular / telepon genggam.
• GB : Giga Byte.
• GHZ : Giga Hertz.
• GSM Modem : Alat yang berfungsi sebagai sarana komunikasi dengan client.
• Hardware : Perangkat keras.
• Input : Masukan.
• Install : Memasukkan data ke dalam komputer. • Keyword : Kata Kunci.
• MB : Mega Byte.
• MHz : Mega Hertz
• Multi user : Banyak Pengguna
• New Message : Pesan baru pada telepon selular.
• Reply : Membalas / balasan dalam hal messaging. • Reporting : Laporan
• Service : Layanan informasi. • SMS Broadcast : Pengiriman SMS
• SRS : Software Requirement Specification • Software : Perangkat Lunak.
1.1.4 Daftar referensi
1) Champlain, de , Michel & Patrick Brian G. 2005 C# 2.0 Practical Guide for Programmers. San Fransisco : Elsevier.
2) GSMComm ( 2006 ) “GSMComm Help”, GSMComm. 3) mCore (2006) “mCore Help”, mCore.
4) Nokia (2000) “AT Command Set for Nokia GSM Products”, Nokia.
5) Price, Jason. 2003. Mastering C# Database Programming. Sybex. 6) Troelsen, Andrew ( 2005 ) “Pro C# 2005 and .Net 2.0 Platform”,
Apress
7) W. Ambler, Scott ( 2003 – 2006) “UML 2.0 Tutorial” [www.agilemodeling.com]
1.1.5 Overview Laporan
Dokumen ini disusun dengan menggunakan pendekatan terhadap teori Software Requirement Specification ( SRS ) yaitu sebuah metode penulisan terstruktur untuk pengembangan sebuah software.
Bab I : Persyaratan Produk
Bagian ini berisi pendahuluan, tujuan pengembangan software, ruang lingkup dan penjelasan produk yang dibangun secara umum dengan menggunakan sedikit bahasa teknis agar mudah dipahami oleh pemula atau orang awam.
Bab II : Spesifikasi Produk
Bab ini menjelaskan mengenai aspek produk yang dibangun. Bab ini merupakan penjelasan dari bab sebelumnya, tapi dijelaskan dengan bahasa teknis. Bab ini juga menjelaskan fitur-fitur yang
diimplementasi di dalam software yang dibuat, sehingga semua fungsionalitas dan kemampuan software jelas dipaparkan di dalam bab ini.
Bab III : Desain Perangkat Lunak
Bab ini menjelaskan desain-desain produk dan bagaimana software tersebut akan dibuat.
Faktor-faktor yang termasuk di dalamnya yaitu:
User Interface Design ( UID ).
Desain database.
Bab IV : Pengembangan Sistem
Pada bab ini, akan dipaparkan kelanjutan dari desain yang sudah dibuat sebelumnya. Bagian ini menjelaskan bagaimana mengembangkan sebuah desain yang telah disusun secara jelas menjadi sebuah produk yang dapat digunakan dengan baik.
Bab V : Testing dan Evaluasi Sistem
Bab ini berisi tentang hasil testing dan evaluasi terhadap prototype yang dikembangkan.
Testing akan dilakukan simulasi dari layanan service, quiz dan voting pada aplikasi dengan mengirimkan SMS ke aplikasi kurang lebih sebanyak 50 SMS per hari pada waktu yang acak.
Bab VI : Kesimpulan dan Saran
Kesimpulan berisi perbandingan antara perencanaan produk sebelum dibuat dengan produk yang sudah jadi.
Saran berisi hal-hal apa saja yang dapat dikembangkan untuk memberikan kemampuan lebih kepada produk yang dibuat.
1.2. Gambaran
Keseluruhan
1.2.1 Perspektif Produk
Keyword Management
Pada bagian keyword management, dapat melakukan penambahan, penghapusan, dan perbaikan kata kunci (keyword) untuk
layanan baru pada aplikasi ini. Kata kunci tersebut dapat menentukan bagaimana dan kemana suatu pesan SMS akan diolah dan disimpan dan setiap Keyword harus memiliki Sub Keyword. Setiap keyword dapat bersifat registrasi yaitu pengirim SMS memerlukan registrasi terlebih dahulu sebelum mengakses keyword dengan mengetik ”REG(spasi)Keyword(spasi)nama” namun registrasi bersifat optional.
Keyword yang dapat dibuat terdiri dari 3 tipe yaitu service, quiz dan voting.
Service adalah suatu layanan informasi dengan pembuatan kata
kunci terlebih dahulu, kata kunci harus memiliki reply atau balasan kepada pengirim SMS, sub keyword dari keyword memiliki content yang nantinya akan berisi data yang di reply kepada pengakses keyword. Content dari sub keyword dapat diganti oleh operator yang berwenang.
Quiz adalah suatu layanan kuis yang diakses melalui SMS dengan pembuatan kata kunci, kata kunci harus memiliki waktu berhentinya suatu quiz, dimana waktu berakhirnya kuis ini dapat diganti ( diberhentikan atau diperpanjang) waktunya. Pemenang dari kuis diambil secara acak dari keseluruhan nomor pengirim SMS yang masuk sesuai dengan sub keyword yang ada pada keyword.
Voting adalah layanan untuk melakukan pemilihan ( vote ) melalui SMS dengan pembuatan kata kunci, kata kunci bersifat optional pada bagian reply nya. Sub Keyword bisa memiliki content
atau tidak. Pada keyword dengan tipe Vote dapat dilihat pengirim SMS terbanyak terhadap sub keyword yang ada.
Pengiriman SMS
PhoneCast melakukan pengiriman SMS melalui GSM modem atau handset yang terhubung melalui kabel data atau bluetooth dengan komputer.
Ada dua jenis pengiriman SMS:
- Single SMS
SMS dikirim hanya ke satu nomor tujuan.
- Multiple SMS
SMS dikirim pada beberapa nomor tujuan atau sekumpulan daftar nama, yang terlebih dahulu di set pada bagian “Phonebook & Usergroups”.
Pengiriman SMS juga dapat dilakukan penjadwalan terhadap waktu pengirimannya.
Phonebook & UserGroups
Phonebook & usergroups berfungsi untuk membuat, menghapus, dan mengubah nama phonebook ke dalam database.
Operator juga dapat melakukan penambahan, penghapusan, dan pengubahan kelompok (usergroup) yang terdiri dari 1 atau lebih phonebook.
Reporting Management
Bagian reporting management adalah bagian di mana pihak administrator dapat melihat dan mencetak semua statistik dan laporan dari trafik SMS yang masuk dan keluar melalui aplikasi ini. Laporan dapat dilihat secara komprehensif melalui berbagai cara, misalnya:
- Dalam periode tertentu : perhari, perminggu, perbulan, dan total
- Per-layanan / per-keyword
User Management
Pada bagian administration ini, operator dengan level admin dapat melakukan berbagai tugas administrasi seperti user management (penambahan, penghapusan operator), dan pengubahan permission terhadap role yang sudah ada.
1.2.2 Fungsi Produk
• Membuat dan mengelola berbagai data keyword (kata kunci) ke database.
• Mengelola data kata kunci yang ada. • Menerima dan membaca SMS dari client. • Mengirim SMS ke client melalui GSM Modem. • Mebuat laporan dari trafik SMS yang ada.
• Pembuatan role / hak akses pada operator aplikasi.
1.2.3 Karakteristik Pengguna
Karakteristik pengguna yang dapat menggunakan aplikasi ini adalah : • Status : SMU sederajat.
• Keahlian : Familiar menggunakan aplikasi desktop pada komputer.
1.2.4 Batasan – Batasan
• Tidak menghitung pengeluaran biaya dari GSM Modem dikarenakan tarif SMS operator berbeda - beda.
• Kata kunci dari layanan hanya terdiri dari 2 tingkatan ( level ) saja. Contoh : HOROSKOP_VIRGO, QUIZBOLA_A, IDOL_BUDI.
1.2.5 Asumsi dan Ketergantungan
• Handphone yang berfungsi sebagai GSM modem harus men- support semua AT Commands atau AT Commands yang berhubungan dengan SMS.
• Network Coverage dari operator yang digunakan GSM Modem diasumsikan memadai ( SMS yang dikirim selalu sampai pada penerima / client ).
• GSM Modem diasumsikan memiliki pulsa sehingga dapat selalu me- reply SMS yang masuk.
1.2.6 Penundaan Persyaratan
• Koneksi terhadap GSM Phone lebih mendukung ke segala tipe Handphone.
• Kemampuan aplikasi untuk dapat melakukan koneksi lebih dari satu GSM Phone.
• Aplikasi dapat melakukan pengiriman Smart Messaging seperti MMS.
• Pembuatan aplikasi yang mendukung CDMA Phone sebagai CDMA Modem
Bab VI
Kesimpulan dan Saran
6.1
Keterkaitan antara Kesimpulan dan Hasil Evaluasi
• Secara garis besar, aplikasi PhoneCast ini telah dapat menjalankan semua fungsi fitur yang ada pada Bab 2, untuk melakukan pembuatan kata kunci, pengiriman SMS, sampai pada pembuatan role terhadap operator.
• Aplikasi PhoneCast juga sudah memenuhi tujuan yang telah dijelaskan pada Bab 1, untuk membuat suatu aplikasi yang bisa mengelola kata kunci yang telah dibuat dan dapat dapat diakses melalui SMS.
6.2
Keterkaitan antara Saran dan Hasil Evaluasi
• Aplikasi dimungkinkan untuk dapat memiliki koneksi terhadap beberapa GSM Modem.
• User Interface aplikasi disarankan menggunakan MDI untuk memudahkan pengimplementasian hak akses operator.
6.3
Rencana Perbaikan terhadap Saran yang diberikan
• Aplikasi akan diimplementasikan dapat terhubung dengan maksimal 4 GSM Modem, dan untuk melakukan pengiriman SMS maka dibutuhkan pemilihan GSM Modem yang mana yang melakukan pengiriman.
• MDI akan secara bertahap diimplementasikan pada aplikasi PhoneCast.
Daftar Pustaka
• Champlain, de , Michel & Patrick Brian G. 2005 C# 2.0 Practical Guide for Programmers. San Fransisco : Elsevier.
• GSMComm ( 2006 ) “GSMComm Help”, GSMComm. • mCore (2006) “mCore Help”, mCore.
• Nokia (2000) “AT Command Set for Nokia GSM Products”, Nokia. • Price, Jason. 2003. Mastering C# Database Programming. Sybex. • Troelsen, Andrew ( 2005 ) “Pro C# 2005 and .Net 2.0 Platform, Apress • W. Ambler, Scott ( 2003 – 2006) “UML 2.0 Tutorial”
[www.agilemodeling.com]
Universitas Kristen Maranatha