Topic
: Helpdesk Ticketing System
Helpdesk ticketing system merupakan sistem yang berfungsi untuk melakukan pencatatan terhadap segala kejadian yang berhubungan dengan penyelesaian permasalahan. Aplikasi ini dibuat dengan tujuan untuk memudahkan dalam proses pencatatan dan penyelesaian permasalahan, dengan aplikasi ini seluruh kegiatan dalam proses penyelesaian permasalahan akan dicatat di oleh system dan disimpan pada database system. Proses yang terjadi pada aplikasi ini bermula ketika user yang telah terdaftar melakukan pengaduan akan permasalahan yang dialaminya kepada system pada saat ini user akan diberikan ticket oleh system yang nantinya akan berguna untuk melakukan tracking progress pada permasalahan yang diadukannya, setelah itu system akan memberikan informasi pengaduan kepada supervisor, setelah supervisor menerima informasi dari system maka ia kemudian melakukan penunjukan teknisi yang akan menangani permasalahan tersebut melalu system, dan terakhir adalah penyelesaian permasalahan yang dilakukan oleh teknisi. Dalam proses penyelesaian permasalahan tersebut seluruh proses yang terjadi akan terekam oleh system dan tersimpan pada database system, hal ini dilakukan untuk melakukan tracking pada proses penyelesain masalah secara keseluruhan dan sebagai acuan dalam membuat laporan pekerjaan. Terdapat beberapa actor di dalam system ini yaitu: -
Admin : pihak yang bertanggung jawab terhadap system. User : pihak yang dapat melaporkan permasalahan. Supervisor : pihak yang bertugas untuk management penyelesaian permasalahan Engineer : pihak yang akan menyelesaikan permasalahan Manager : pihak yang melakukan review dan evalusasi terhadap penyelesaian permasalahan.
1. Use Case Diagram
1
2. Sequence Diagram 2
3. State Diagram
3
RDBMS Database
4
Table Name
Table Definition
active_status
Berisi jenis – jenis keaktifan dalam aplikasi
customer
Berisi data – data yang berhubungan dengan pelanggan
prob_cat
Berisi jenis – jenis katagori permasalahan
severity
Berisi jenis – jenis tingkat prioritas permasalahan
service_agree
Berisi data – data waktu dalam perjanjian antara perusahaan dan pelanggan
solve
Berisi data – data tentang penyelesaian permasalahan
staff_level
Berisi jenis – jenis tingkatan dari staff
staff_type
Berisi jenis – jenis jabatan staff didalam aplikasi
tbl_progres
Berisi data – data perkembangan penyelesaian permasalahan
tbl_respond
Berisi jenis – jenis dan kriteria respon waktu
tbl_staff
Berisi data – data mengenai staff dalam aplikasi
tbl_user
Berisi data – data perwakilan pelanggan untuk akses aplikasi
ticket
Berisi data – data permasalahan yang terjadi
escalation_level
Berisi data tentang level dalam perjanjian
ERD diatas dibuat dengan mengunakna MySql Workbench dan diterapkan pada database MySql version 5.1.
5
ORDBMS ORDBMS (Object-Relational Database Management System) merupakan DBMS yang mirip dengan RDBMS, tapi model object-oriented seperti objek, kelas, dan pewarisan sudah didukung langsung dalam skema basis data dan bahasa query-nya. Selain itu, dia juga mendukung adanya tipe data buatan dan method. Salah satu tujuan ORDBMS adalah menjembatani celah antara teknik pemodelan data konseptual seperti Entity-relationship diagram (ERD) and object-relational mapping (ORM), yang sering menggunakan kelas, pewarisan, dan basis data relasional, yang tidak langsung didukungnya. Selain itu, tujuan lain ORDMBS ini adalah menjadi penghubung antara teknik pemodelan berorientasi objek yang digunakan di bahasa pemrograman berorientasi objek seperti Java, C++, atau C#. Bila produk RDBMS tradisional berfokus pada manajemen pengambilan data yang efisien dari himpunan tipe data yang terbatas, ORDBMS memungkinkan software developer untuk mengintegrasikan tipe objek buatannya sendiri beserta method yang sesuai ke dalam DBMS.
RDBMS Î ORDBMS
Pada proses perubahan dari RDBMS ke ORDBMS dilakukan pemecahan dari struktur database RDBMS menjadi object-object terlebih dahulu. Pada dalam proses ini masing-masing table dianggap sebagai suatu class dan entity-entity didalamnya di anggap sebagai object. Kumpulan object pada class kemudian dijadikan suatu type data baru yang nantinya akan digunakan pada masing-masing table. Dari table ERD diatas dihasilkan beberapa type data baru sebagai berikut:
6
Type data –type data diatas kemudian dijadikan sebagai type data pada masing‐masing tabel dalam database sebagai tipe data yang menunjukan entity relasi table. service_agree
staff_type PK
id_type
INTEGER
staff_type
severity
PK
id_service
INTEGER
FK1 FK2
id_severty id_cust service
INTEGER INTEGER service_type
u:R d:R
PK
id_severty
INTEGER
severity
severity_type
u:R d:R
staff_type u:R d:R
escalation_level
Customer PK
u:R u:R d:R d:R
FK1
id_cust customer id_status status
INTEGER customer_type INTEGER status_type
staff PK
id_staff
INTEGER
FK1 FK2 FK3 FK4
id_cust id_status id_level id_type staff_data
INTEGER INTEGER INTEGER INTEGER staff_data
u:R d:R
INTEGER INTEGER INTEGER service_type level_type
PK
id_user
INTEGER
FK1 FK2
id_cust id_status user_data
INTEGER INTEGER user_data
u:R d:R status PK
id_escalation id_service id_level service level
user
u:R d:R
u:R d:R
PK FK1 FK2
id_status
INTEGER
status
status_type
u:R d:R
u:R d:R
steff_level PK
id_level
INTEGER
staff_level
level_type
ticket
u:R d:R
PK
id_ticket
INTEGER
FK1 FK2 FK3 FK4 FK5
id_staff id_user id_category respond_id id_progress ticket staff user category respond progress
INTEGER INTEGER INTEGER INTEGER INTEGER ticket_type staff_data user_data problem_type respond_type progress_type
u:R d:R
u:R d:R prob_cat u:R d:R u:R d:R
PK
id_category
INTEGER
category
problem_type
u:R d:R solve PK
id_solve
INTEGER
FK1 FK2
id_ticket id_staff solve_problem
INTEGER INTEGER solve_type
tbl_respond
u:R d:R
PK
respond_id
INTEGER
respond
respond_type
tbl_progress PK
id_progress
INTEGER
progress
progress_type
Diagram diatas menunjukan relasi pada masing‐masing tabel, seperti diketahui pada ORDBMS penggunaan konsep table,row dan relasi masih digunakan seperti layaknya RDBMS hanya saja dalam penggunaan ORDBMS terdapat object‐object yang dapat didefinisikan sesusai dengan karakteristik dari masing‐masing object.
7
Object Behavior GetCustomer()
GetSeverity()
GetStatus()
GetStaffType()
GetLevel()
GetService()
GetRespond
GetUser()
GetStaff()
GetProgress()
GetProblem()
GetTicket()
GetSolve()
Diagram diatas menjelaskan bagaimana prilaku dari masing‐masing objek. Perilaku dari masing‐masing object tersebut di buat dengan menggunakan method‐method yang nantinya akan digunakan untuk melakukan manipulasi object dalam memperoses informasi.
Kesimpulan Dengan menggunakan ORDBMS maka penggunaan joining table untuk menampilkan data dapat dihilangkan karena pada tabel‐table induk telah termuat juga pada tabel child sehinga dapat meningkatkan performa pada saat penampilan database. Sebagai contoh pada aplikasi helpdesk ini ketika menggunakan database RDBMS untuk menampilkan tampilan detail data ticket permasalahan maka perlu dilakukan joining beberapa table pada database, sedangkan pada saat menggunakan database ORDBMS untuk menampilkan detail data ticket permasalahan cukup melakukan query pada tabel ticket karena data pada tabel‐tabel relasinya telah masuk kedalam tabel tersebut yang berupa object data type.
8
Keuntungan lainnya dengan menggunakan database yang telah mendukung ORDBMS adalah dapat dilakukan penyimpana file media dimana pada database RDBMS file media hanya disimpan dalam bentuk link kedalam media tersebut.
9