Dokumen - Tips Jurnal-Telkom PDF
Dokumen - Tips Jurnal-Telkom PDF
ABSTRAK
PT. Telekomunikasi Indonesia, Tbk. merupakan salah satu perusahaan yang bergerak dalam bidang
telekomunikasi dan memiliki banyak cabang yang tersebar di berbagai daerah di Indonesia, salah satunya
yaitu PT. Telekomunikasi Indonesia, Tbk. Kancatel Subang. Di PT. Telekomunikasi Indonesia, Tbk. Kancatel
Subang sendiri memiliki pelanggan yang setiap saat dapat mempunyai keluhan gangguan terutama
gangguan telepon.
Untuk itu, akan dibuat sebuah Aplikasi Pelayanan dan Keluhan Gangguan Telepon Pelanggan Di PT.
Telekomunikasi Indonesia, Tbk. Kancatel Subang yang dapat membantu dalam pencatatan keluhan
gangguan telepon pelanggan.
Perancangan aplikasi ini menggunakan Undified Modeling Language (UML) sedangkan untuk perancangan
database menggunakan Entitiy Relantionship Diagram (ERD). Aplikasi ini menggunakan framework
CodeIgniter dengan bahasa pemrograman PHP dan MySQL sebagai databasenya.
Aplikasi ini diharapkan dapat membantu proses penanganan keluhan gangguan telepon pelanggan
dengan mencatat data-data keluhan pelanggan, menyajikan grafik keluhan dan membuat dokumen
keluhan.
PHP merupakan software yang open source Nama Apache diambil dari kata "A Patchy
bebas. Jadi anda dapat merubah source code Server", server perbaikan yang penuh dengan
dan mendistribusikan secara bebas dan gratis. tambalan (patch). Tambalan yang dimaksud
PHP juga dapat berjalan lintas platform, yaitu adalah penambahan fitur dan penambalan bug
dapat dihgunakan dengan system operasi dari NCSA httpd Versi 1.3.
(Windows dan Linux) dan web server apapun
(misalnya: PWS, ISS, Apache). (Kadir 2003) Saat ini Apache dipergunakan secara luas. Hal ini
disebabkan karena programnya yang gratis,
2.2.3 Framework CodeIgniter dengan kinerja relatif stabil. Dalam
Framework dapat diartikan sebagai koleksi atau pengembangannya pun mempergunakan sistem
kumpilan potongan-potongan program yang Bazaar, yakni tiap orang dibuka kesempatan
disusun atau diorganisasikan sedemikian rupa, seluas-luasnya untuk dapat memberikan
sehingga dapat digunakan untuk membantu kontribusi dalam mengembangkan program.
membuat aplikasi utuh tanpa harus membuat (Sidik 2006)
semua kodenya dari awal. Saat ini ada banyak
framework PHP, diantaranya Zend Framework, 2.4 Database MySQL
Cake PHP, Trax, Symfony dan sebagainya. MySQL adalah salah satu jenis database server
yang sangat terkenal. Kepopulerannya
CodeIgniter adalah framework PHP yang dapat disebabkan oleh MySQL menggunakan SQL
membantu mempercepat developer dalam sebagai bahasa dasar untuk mengakses
pengembangan aplikasi web berbasis PHP databasenya. Selain itu, ia bersifat free pada
dibandingkan jika menulis semua kode program berbagai platform (kecuali pada Windows, yang
dari awal. bersifat shareware atau Anda perlu membayar
setelah melakukan evaluasi dan memutuskan
CodeIgniter pertama kali dibuat oleh Rick Ellis, digunakan untuk keperluan produksi)
CEO Ellislab, Inc. sebuah perusahaan yang
memproduksi sebuah CMS (Content MySQL termasuk jenis RDBMS (Relational
Management System) yang sudah cukup handal, DBMS). Itulah sebabnya istilah seperti table,
yaitu ExpressionEngine. baris, dan kolom digunakan pada MySQL. Pada
MySQL, sebuah database mengandung satu atau
Adapun beberapa keuntungan menggunakan sejumlah tabel. Tabel terdiri atas sejumlah baris
CodeIgniter, diantaranya: dan setiap baris mengandung satu atau
a. Gratis. beberapa kolom. (Sidik 2006)
b. Ditulis menggunakan PHP 4.
c. Berukuran kecil. 2.5 Model Waterfall
d. Menggunakan konsep MVC. Model waterfall menggambarkan pembangunan
e. URL yang sederhana. perangkat lunak seperti aliran air terjun, mulai
f. Memiliki paket library yang lengkap. analysis requirement sebahai awal proses
g. Extensible. sampai dengan deployment dan maintenance di
h. Tidak memerlukan template engine. akhir proses.
i. Dokumentasi lengkap dan jelas.
j. Komunitas. (Basuki 2010) Model waterdall berisi rangkaian aktivitas
proses. Setiap tahapan disajikan dalam proses
2.3 Apache Web Server yang terpisah secara ketat, seperti spesifikasi
Apache merupakan web server yang paling kebutuhan, desain, implementasi perangkat
banyak dipergunakan di Internet. Program ini lunak, uji coba, dan seterusnya. Walaupun
pertama kali didesain untuk sistem operasi langkah mundur ke tahapan sebelumnya masih
lingkungan UNIX. Namun demikian, pada dimungkinkan, namun pada dasarnya tahapan
beberapa versi berikutnya Apache ini tidak menghendaki adanya langkah mundur.
Setelah sebuah langkah didefinisikan, langkah
tersebut di sign off dan pengembangan dalam satu basis data yaitu (Abdul
dilanjutkan pada langkah berikutnya.. Kadir, 2002: 48) :
a. Satu ke satu (One to one)
Model ini adalah model klasik yang bersidat Hubungan relasi satu ke satu yaitu
sistematis dan berurutan dalam membangun setiap entitas pada himpunan
perangkat lunak. Secara umum dalam entitas A berhubungan paling
pengembangunan perangkat lunak pada model banyak dengan satu entitas pada
waterfall terdapat tahapan-tahapan sebagai himpunan entitas B.
berikut: (Hendraputra, et al. 2009) b. Satu ke banyak (One to many)
Setiap entitas pada himpunan
entitas A dapat berhubungan
dengan banyak entitas pada
himpunan entitas B, tetapi setiap
entitas pada entitas B dapat
berhubungan dengan satu entitas
pada himpunan entitas A.
Gambar 2.1 Waterfall Model c. Banyak ke banyak (Many to many)
Setiap entitas pada himpunan
2.6 ERD (Entity Relationship Diagram) entitas A dapat berhubungan
ERD merupakan suatu model untuk menjelaskan dengan banyak entitas pada
hubungan antar data dalam basis data himpunan entitas B. (Rahmat Blog
berdasarkan objek-objek dasar data yang n.d.)
mempunyai hubungan antar relasi.
2.7 UML (Unified Modeling Language)
ERD untuk memodelkan struktur data dan UML (Unified Modeling Language) merupakan
hubungan antar data, untuk sebuah standarisasi bahasa pemodelan untuk
menggambarkannya digunakan beberapa notasi pembangunan perangkat lunak yang dibangun
dan simbol. Pada dasarnya ada tiga simbol yang dengan menggunakan teknik pemrograman
digunakan, yaitu : berorientasi objek. Selain itu, UML juga
1. Entiti merupakan bahasa bahasa visual untuk
Entiti merupakan objek yang mewakili pemodelan dan komunikasi mengenai sebuah
sesuatu yang nyata dan dapat system dengan menggunakan diagram dan teks-
dibedakan dari sesuatu yang lain teks pendukung. UML muncul karena adanya
(Fathansyah, 1999: 30). Simbol dari kebutuhan pemodelan visual untuk
entiti ini biasanya digambarkan dengan menspesifikasikan, menggambarkan,
persegi panjang. membangun, dan dokumentasi dari sistem
2. Atribut perangkat UML. (Shalahudidin and S 2008)
Setiap entitas pasti mempunyai
elemen yang disebut atribut yang 2.7.1 Use Case
berfungsi untuk mendeskripsikan Use case atau diagram use case merupakan
karakteristik dari entitas tersebut. Isi pemodelan untuk kelakuan (behavior) system
dari atribut mempunyai sesuatu yang informasi yang akan dibuat. Use case
dapat mengidentifikasikan isi elemen mendeskripsikan sebuaj interaksi antara satu
satu dengan yang lain. Gambar atribut atau lebih actor dengan system informasi yang
diwakili oleh simbol elips. akan dibuat. Secara kasar, use caswe digunakan
3. Hubungan / Relasi untuk mengetahui fungsi apa saja yang ada di
Hubungan antara sejumlah entitas dalam sebuah system informasi dan siapa saja
yang berasal dari himpunan entitas yang berhak menggunakan fungsi-fungsi itu.
yang berbeda. Relasi dapat
digambarkan sebagai berikut : Syarat penamaan pada use case adalah nama
Relasi yang terjadi diantara dua didefinisikan sesimple mungkin dan dapat
himpunan entitas (misalnya A dan B) dipahami. Ada dua hal utama pada use case
yaitu pendefinisian apa yang disebut actor dan message yang dikirimkan dan diterima antar
use case. objek. Oleh karena itu untuk menggambar
1. Aktor merupakan orang, proses, atau diagram sekuen maka harus diketahui objek-
system lain yang berinteraksi dengan objek yang terlibat dalam sebuah use case
system informasi yang akan dibuat di beserta metode-metode yang dimiliki kelas yang
luar system informasi yang akan diinstansikan menjadi objek itu.
dibuatitu sendiri, jadi walaupun simbol
dari actor adalah gambar orang, tapi Banyaknya diagram sekuen yang harus digambar
actor belum tentu merupakan orang. adalah sebanyak pendefinisian use case yang
2. Use case merupakan fungsionalitas memiliki proses sendiri atau yang penting semua
yang disediakan system sebagai unit- use case yang telah didefinisikan interaksi
unit yang saling bertukar pesan antar jalannya pesan sudah dicakup pada diagram
unit atau aktor. (Shalahudidin and S sekuen sehingga semakin banyak use case yang
2008) didefinisikan maka diagram sekuen yang harus
dibuat juga semakin banyak. (Shalahudidin and S
2.7.2 Class Diagram 2008)
Class diagram atau diagram kelas
menggambarkan struktur system dari segi 2.7.4 Activity Diagram
pendefinisiankelas-kelas yang akan dibuat untuk Activity diagram atau diagram aktivitas
membangun sistem. Kelas memiliki apa yang menggambarkan workflow (aliran kerja) atau
disebut atribut dan metode atau operasi. aktivitas dari sebuah system atau proses bisnis.
1. Atribut merupakan variabel-variabel Yang perlu diperhatikan disini adalah bahwa
yang dimiliki oleh suatu kelas. diagram aktivitas menggambarkan aktivitas
2. Operasi atau metode adalah fungsi- system bukan apa yang dilakukan aktor, jadi
fungsi yang dimiliki oleh suatu kelas. aktivitas yang dapat dilakukan oleh system.
(Shalahudidin and S 2008)
Kelas-kelas yang ada pada struktur system harus
dapat melakukan funhsi-fungsi sesuai dengan
kebutuhan system. Susunan struktur kelas yang
baik pada diagram kelas sebaiknya memiliki
jenis-jenis berikut:
1. Kelas main, yaitu kelas yang memiliki
fungsi awal dieksekusi ketika system
dijalankan.
2. Kelas yang menangani tampilan sistem,
yaitu kelas yang mendefinisikan dan
mengatur tampilan ke pemakai.
3. Kelas yang diambil dari pendefinisian
use case, yaitu kelas yang menangani
fungsi-fungsi yang harus ada diambil
dari pendefinisian use case.
4. Kelas yang diambil dari pendefinisian
data, yaitu kelas yang digunakan unruk
memegang atau membungkus data
menjadi sebuh kesatuan yang diambil
maupun akan disimpan ke basis data.
(Shalahudidin and S 2008)
Gambar 2.2 Simbol-simbol Activity Diagram
2.7.3 Sequence Diagram
Sequence diagram atau diagram sekuen 2.7.5 State Diagram
menggambarkan kelakuan objek pada use case State diagram atau diagram status
dengan mendeskripsikan waktu hidup objek dan menunjukkan kondisi yang dapat dialami atau
terjadi pada sebuah objek sehingga setiap objek juga dapat digunakan untuk memodelkan hal-
memiliki sebuah diagram status. Diagram status hal berikut:
diadopsi dari penggambaran kondisi mesin 1. Sistem tambahan (embedded system)
status (state machine) yang menggambarkan yang menggambarkan rancangan
status apa saja yang dialami oleh mesin, device, node, dan hardware.
misalnya mesin pembelian kopi dengan uang 2. Sistem client/server.
koin. (Shalahudidin and S 2008) 3. System terditribusi murni.
4. Rekayasa ulang apliaksi. (Shalahudidin
and S 2008)
- Customer Walk in
Pelanggan mengadukan keluhannya
langsung datang ke plasa telkom subang
dengan menyebutkan nama, alamat, nomor
telepon dan keluhan yang dialaminya.
Setelah itu petugas mencatat semua data-
data pelanggan yang mengalami gangguan
telepon di buku. Kemudian petugas
memberikan berkas keluhan gangguan Gambar 3.2 Class Diagram
tersebut kepada supervisor yang kemudian
akan diserahkan kepada teknisi yang
3.3.3.3 Sequence Diagram 3.4.1 Topologi Antarmuka Admin
admin/petugas/teknisi/supervisor : Main : Login
Login
<<create>>
username dan password
Menu
validasiLogin( )
menerima masukan
username dan password
validasiLogin()
Home Keluhan Grafik Rekap Teknisi Teknisi Supervisor Logout
Gambar 3.4 State Diagram Login Gambar 3.9 Topologi Antarmuka Supervisor
client
data
MySQL keluhan_id
tugas_id teknisi_id
keluhan_tanggal
teknisi_pass
keluhan_konfirmasi
tugas_konfirmasi teknisi_telepon
Topologi antarmuka menjelaskan skema atau keluhan_solusi
memiliki
keluhan_id
Berdasarkan kesimpulan yang diperoleh maka
jenis_id
keluhan_tanggal
PK
tugas
tugas_id
PK
teknisi
teknisi_id
penulis mempunyai saran-saran sebagai berikut:
keluhan_nama
keluhan_alamat
keluhan_telepon
keluhan_keluhan
keluhan_id
teknisi_id
teknisi_pass
teknisi_nama 1. Desain dari aplikasi ini sebaiknya
teknisi_alamat
keluhan_konfirmasi
keluhan_status
keluhan_solusi
tugas_konfirmasi teknisi_telepon
diperbagus atau diperindah agar
user
menarik.
Jenis
PK user_id
user_pass
2. Fungsionalitas dan modul-modul
PK jenis_id
jenis_jenis
user_nama
user_alamat
user_telepon
ditambah lagi agar dapat melengkapi
aplikasi ini.
Gambar 3.12 Relasi Tabel
6 REFERENSI
4 IMPLEMENTASI DAN PENGUJIAN Basuki, Awan Pibadi. Membangun Web Berbasis
4.1 Implementasi PHP dengan Framework Codeigniter.
Yogyakarta: Lokomedia, 2010.
Codeigniter.
http://codeigniter.com/user_guide/ (accessed
April 01, 2010).
19: setKeluhanId( )
20: setPelangganId( )
: Login : MengelolaDataKeluhan 21: setJenisId( )
22:
2: melihatDataKeluhan( ) 23: setKeluhanTanggal( )
3: mencaiDataKeluhan( ) 24: setKeluhanKeluhan( )
4: memasukkanDataKeluhan( ) 25: setKeluhanKonfirmasi( )
5: mengubahDataKeluhan( ) 26: setKeluhanStatus( )
6: menghapusDataKeluhan( ) : TJenis 27: setKeluhanSolusi( )
1: validasiLogin( )
28: setJneisId( )
29: setJenisJenis( ) : TKeluhan
7: memasukkanDataJenisKeluhan( )
8: mengubahDataJenisKeluhan( )
9: menghapusDataJenisKeluhan( )
10: melihatDataJenisKeluhan( ) 41: membukaKoneksi( )
: Main : MengelolaDataJenisKeluhan 42: eksekusiQuerySelect( )
43: eksekusiQueryUpdate( )
44: tutupKoneksi( )
11: melihatDataTeknisi( )
12: memasukkanDataTeknisi( )
13: mengubahDataTeknisi( )
45: membukaKoneksi( )
14: menghapusDataTeknisi( )
46: eksekusiQuerySelect( )
47: eksekusiQueryUpdate( )
48: tutupKoneksi( )
15: melihatDataUser( ) : TTeknisi
16: memasukkanDataUser( )
17: mengubahDataUser( )
18: MenghapusDataUser( ) : MengelolaDataTeknisi : KoneksiBasisData
30: setTeknisiId( )
31: setTeknisiPass( ) 49: membukaKoneksi( )
32: setTeknisiNama( ) 50: eksekusiQuerySelect( )
33: setTeknisiAlamat( ) 51: eksekusiQueryUpdate( )
34: setTeknisiTelepon( ) 52: tutupKoneksi( )
: MengelolaDataUser
53: membukaKoneksi( )
54: eksekusiQuerySelect( )
35: setUserId( ) 55: eksekusiQueryUpdate( )
36: setUserPass( ) 56: tutupKoneksi( )
37: setUserNama( )
38: setUserAlamat( )
39: setUserTelepon( )
40: setUserLevel( )
: TUser