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 active_status customer prob_cat severity service_agree solve staff_level staff_type tbl_progres tbl_respond tbl_staff tbl_user ticket escalation_level Table Definition Berisi jenis jenis keaktifan dalam aplikasi Berisi data data yang berhubungan dengan pelanggan Berisi jenis jenis katagori permasalahan Berisi jenis jenis tingkat prioritas permasalahan Berisi data data waktu dalam perjanjian antara perusahaan dan pelanggan Berisi data data tentang penyelesaian permasalahan Berisi jenis jenis tingkatan dari staff Berisi jenis jenis jabatan staff didalam aplikasi Berisi data data perkembangan penyelesaian permasalahan Berisi jenis jenis dan kriteria respon waktu Berisi data data mengenai staff dalam aplikasi Berisi data data perwakilan pelanggan untuk akses aplikasi Berisi data data permasalahan yang terjadi 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 staff_type PK id_service INTEGER FK1 id_severty INTEGER FK2 id_cust INTEGER service service_type severity PK id_severty INTEGER severity severity_type Customer escalation_level staff PK id_cust INTEGER customer customer_type FK1 id_status INTEGER status status_type PK id_escalation INTEGER FK1 id_service INTEGER FK2 id_level INTEGER service service_type level level_type PK id_staff INTEGER FK1 id_cust INTEGER FK2 id_status INTEGER FK3 id_level INTEGER FK4 id_type INTEGER staff_data staff_data user PK id_user INTEGER FK1 id_cust INTEGER FK2 id_status INTEGER user_data user_data status PK id_status INTEGER steff_level status status_type PK id_level INTEGER staff_level level_type ticket PK id_ticket INTEGER FK1 id_staff INTEGER FK2 id_user INTEGER FK3 id_category INTEGER FK4 respond_id INTEGER FK5 id_progress INTEGER ticket ticket_type staff staff_data user user_data category problem_type respond respond_type progress progress_type prob_cat PK id_category INTEGER category problem_type solve PK id_solve INTEGER FK1 id_ticket INTEGER FK2 id_staff INTEGER solve_problem solve_type tbl_progress PK id_progress INTEGER tbl_respond PK respond_id INTEGER respond respond_type 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 GetSeverity() GetCustomer() 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