Fakultas Ilmu Komputer
Universitas Brawijaya
3525
Pengembangan Sistem Informasi 3 Pilar Dalam Penyelesaian Perkara
Tilang Di Kota Kediri Menggunakan RESTful Web Service
Pramuditya Ananta Nur1, Adam Hendra Brata2, Agi Putra Kharisma3
Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1[email protected], 2[email protected], 3[email protected]
Abstrak
Lalu lintas dan angkutan jalan adalah satu kesatuan sistem yang terdiri atas lalu lintas, angkutan jalan, jaringan lalu lintas, prasarana, kendaraan, pengemudi, pengguna jalan serta pengelolaannya. Meski telah diatur dalam Perundang-undangan, masih banyak pelanggaran lalu lintas yang terjadi. Pengguna jalan yang melanggar lalu lintas akan dikenakan denda berupa tilang. Mekanisme penyelesaian perkara tilang melibatkan tiga lembaga penegak hukum yaitu Kepolisian Negara RI, Mahkamah Agung RI dan Kejaksaan RI. Di kota Kediri ketiga instansi pemerintahan tersebut membuat nota kesepahaman bersama yang dikenal dengan Surat Keputusan bersama Tiga Pilar dalam penyelesaian perkara tilang. Tetapi ditemukan beberapa permasalahan yaitu pengaturan data yang tidak terorganisir, pembuatan laporan yang memakan waktu, kurangnya informasi yang diterima masyarakat, dan sulitnya akses informasi kepada instansi pemerintahan lain di kota Kediri. Oleh karena itu dibuatlah sistem informasi Tiga Pilar menggunakan RESTful web service yang diharapkan memudahkan proses bisnis yang ada. Implementasi dilakukan menggunakan Spring Boot framework sebagai web service dari sistem dan AngularJs untuk menghubungkan antara client dan web service yang dibuat. Pengujian dilakukan dengan menggunakan pengujian validasi, pengujian unit, pengujian data integrity, dan pengujian usability. Hasil dari pengujian validasi dan pengujian unit menghasilkan nilai 100%, dan hasil pengujian usability dengan Software Usability Scale (SUS) menghasilkan nilai 72,5 dengan nilai effectiveness 90,9%.
Kata kunci: Perkara Tilang, Spring Boot, AngularJs, RESTful web service
Abstract
The traffic and the transportation is an unified system which is consist of the traffic, the public transportation, the traffic network, the infrastructure, the vehicles, the drivers, the road user and also it’s management. Although there is a certain regulation about the traffic, there are still a lot of traffic violation. The road user or the driver who violate the traffic will get such kind of ticket. The mechanism of the settlement of traffic violation involved three law government institutions. They are Indonesian National Police, Supreme Court of Indonesia and Attorney Office. In Kediri, they create a memorandum of understanding (MoU) which is known as the “Surat Keputusan bersama Tiga Pilar” in settlement the traffic violation cases. But there are some problems appear, like data that are not well organized, making reports that take time, the lack of information for the citizens, and also the difficulties in accessing the information to other government institutions in Kediri. Sistem Informasi Tiga Pilar was created using RESTful web service in order to make all of the business process in each institutions become easier. Implementation is done using Spring Boot framework as the web service of the system and AngularJs to connect between client and web service. Testing is done by using validation testing, unit testing, data integrity testing, and usability testing. The result of validation testing and unit testing is 100%, and usability test result with Software Usability Scale (SUS) is 72,5 with effectiveness value 90,9%.
Keywords: Traffic violation, Spring Boot, AngularJs, RESTful web service
1. PENDAHULUAN
kendaraan, pengemudi, pengguna jalan serta pengelolaannya. Meski telah diatur dalam Perundang-undangan, masih banyak pelanggaran lalu lintas terjadi di jalan raya oleh para pengguna jalan. Pengguna jalan yang melanggar lalu lintas akan dikenakan denda berupa tilang. Mekanisme penyelesaian perkara tilang melibatkan tiga lembaga penegak hukum yaitu Kepolisian Negara Republik Indonesia, Mahkamah Agung RI dan Kejaksaan RI. Ketiga aparatur hukum ini memiliki kewenangan berbeda. Kepolisian Negara RI berwenang dalam penyidikan tindak pidana lalu lintas dan angkutan jalan (UU nomor 22 tahun 2009 pasal 260). Selanjutnya penyidik memasukkan data pada lembar kerja dan melimpahkan berkas perkara tilang dalam bentuk file kepada Pengadilan Negeri setempat. Pengadilan Negeri berwenang memutus setiap perkara pelanggaran tilang (UU nomor 48 tahun 2009). Selanjutnya bagian Kepaniteraan Pidana akan melimpahkan berkas tilang serta file kepada Kejaksaan Negeri setempat. Kejaksaan berwenang sebagai eksekutor atas putusan hakim.
Di kota Kediri, sebagai representasi Kepolisian Negara RI adalah Kepolisian Resort Kediri Kota, sebagai representasi Mahkamah Agung adalah Pengadilan Negeri Kediri dan sebagai representasi Kejaksaan Agung adalah Kejaksaan Negeri Kediri. Ketiga lembaga ini merupakan penyelenggara pengelolaan perkara pelanggaran lalu lintas. Untuk menindaklanjuti Perma Nomor 12 tahun 2016 dan program e-tilang, tiga lembaga ini membuat nota kesepahaman bersama yang dikenal dengan Surat Keputusan Bersama Tiga Pilar dalam penyelesaian perkara tilang. Dari hasil observasi penulis pada 3 lembaga tersebut ditemukan beberapa permasalahan, yaitu pengaturan data yang tidak terorganisir, pembuatan laporan yang memakan waktu, kurangnya informasi yang diterima masyarakat, dan sulitnya akses informasi kepada instansi pemerintahan lain di kota Kediri. Dari permasalahan tersebut, penulis membuat sebuah solusi yaitu dengan mengembangkan sistem informasi Tiga Pilar sehingga diharapkan dapat mempermudah pelayanan penyelesaian perkara tilang antara ketiga instansi yang berwenang di kota Kediri. Dengan dikembangkannya sistem ini.
Dari pemaparan latar belakang diatas, dibuatlah rumusan masalah yaitu bagaimana analisis, perancangan, dan implementai sistem informasi Tiga Pilar yang mewadahi antara kepolisian, pengadilan, da kejaksaan di kota
Kediri untuk penanganan tilang? Bagaimana hasil pengujian sistem informasi tiga pilar yang telah dibuat? Dan bagaimana hasil tingkat kemudahan sistem informasi Tiga Pilar yang dibuat?
Adapun tujuan dari penelitian ini adalah sebagai berikut: mengetahui hasil analisis, perancangan, dan implementasi sistem informasi Tiga Pilar yang mewadahi antara kepolisian, pengadilan, dan kejaksaan di kota Kediri untuk penanganan tilang, mengetahui hasil pengujian sistem informasi Tiga Pilar, dan mengetahui tingkat kemudahan sistem informasi Tiga Pilar.
Pada penelitian ini memiliki manfaat yaitu: bagi penulis untuk mempraktikkan ilmu yang didapat selama perkuliahan khususnya dibidang rekayasa perangkat lunak, bagi instansi untuk memabntu mempermudah penyelesaian perkara tilang, dan bagi pembaca sebagai bahan acuan dalam merancang perangkat lunak yang memiliki keterkaitan dengan penelitian.
Penelitian ini memiliki batasan masalah yaitu: sistem informasi yang dirancang khusus untuk tiga pilar di kota Kediri, web service yang digunakan menggunakan arsitektur REST, dan platform device yang digunakan berbasis web.
2. KAJIAN TEORI
2.1. Representational State Transfer (REST)
REST merupakan standar arsitektur komunikasi yang dikenalkan pada tahun 2000 oleh Roy Fielding, pada arsitektur REST menggunakan client-server. (Feridi, 2016). Dalam arsitektur REST, REST server menyediakan sumber daya (resources) yang dapat berupa data atau apapun, REST client akan mengakses resources tersebut. Setiap resources yang ada diidentifikasi oleh Universal Resource Identifier (URI). Resources tersebut dapat direpresentasikan dalam bentuk teks, Javascript Object Notation (JSON), ataupun Extensible Markup Language (XML). (Richardson, Ruby, 2016).
gambar 1.
Gambar 1 Perbandingan ukuran pesan dan waktu antara SOAP dan REST untuk penggabungan string dan penjumlahan float. Sumber: (Hamad, Saad, Abed, 2009)
2.2. Spring Boot
Spring Boot merupakan sebuah framework Java yang digunakan untuk membuat aplikasi berbasis web dan aplikasi enterprise. Spring Boot merupakan framework baru yang dibuat untuk mempermudah bootstrapping dan pengembangan pada aplikasi Spring (Woods, 2014). Kelebihan Spring Boot jika dibandingkan dengan framework lain, pada Spring Boot memberikan berbagai macam fitur yang mengutamakan kebutuhan bisnis modern. Pada Spring Boot memberikan fleksibilitas untuk melakukan konfigurasi beans dengan berbagai cara seperti XML, Annotations, dan JavaConfig. Selain itu pada Spring Boot mudah digunakan karena kemampuan manajemen transaksi basis data, serta menyederhanakan integrasi dengan framework Java lain seperti JPA/Hibernate ORM, Struts, JSF, dan lainnya (Katamreddy, 2016).
Spring Boot pada penelitian ini digunakan sebagai bagian backend yang digunakan untuk membuat web service. Pada Spring Boot sendiri layer-layernya jelas dan dapat digunakan untuk membuat sistem micro-service yang reusable dan scalable. Diagram arsitektur pada Spring Boot framework ditunjukkan oleh gambar 2.
Gambar 2 Diagram arsitektur Spring Boot
3. METODOLOGI PENELITIAN
Pada penelitian, penulis menggunakan Agile software development lifecycle. Penggunaan SDLC ini dilakukan meliputi tahap observasi dan wawancara, studi literatur, analisis kebutuhan, perancangan sistem, implementasi, pengujian, dan pengambilan kesimpulan dan saran. Metode agile digunakan sebagai SDLC dalam pengembangan perangkat lunak pada
penelitian karena sifatnya yang lebih fleksibel jika terjadi perubahan yang diminta oleh user ataupun stakeholder terkait. Metodologi penelitian ditunjukkan pada gambar 3.
Wawancara dan observasi dilakukan pada masing-masing instansi untuk mengetahui permasalahan dan gambaran umum sistem yang sudah ada. Wawancara yang dilakukan pada instansi kepolisian dengan operator kepolisian, pada instansi pengadilan dengan administrator IT dan operator pengadilan, dan pada instansi kejaksaan dengan kepala sub bagian pidana dan hukum, serta operator kejaksaan. Dari wawancara dan observasi didapatkan gambaran umum sistem dan file-file pendukung jalannya bisnis proses yang sekarang sudah ada
Analisis kebutuhan sistem dilakukan untuk mengetahui secara detail apa saja yang dibutuhkan untuk pengembangan sistem. Pada analisis kebutuhan sistem dibuat diagram use case dan skenario use case untuk menjelasakan secara detail dari kebutuhan.
Perancangan sistem digunakan untuk mendefinisikan secara rinci kebutuhan-kebutuhan dari sistem sebagai acuan implementasi. Pada perancangan sistem dibuat business process model notation, entity relationship diagram, class diagram, dan sequence diagram, serta perancangan antarmuka halaman yang akan digunakan untuk
memodelkan sistem yang akan
diimplementasikan.
Implementasi merupakan pembangunan aplikasi berdasarkan pada rancangan perangkat lunak yang telah dibuat. Pada tahapan ini dilakukan implementasi basis data dengan physical data model diagram, implementasi kode program Spring Boot, dan AngularJs, dan implementasi antarmuka halaman.
Studi Literatur
Analisis kebutuhan
Perancangan Sistem
Implementasi
Pengujian
Apakah sudah sesuai kebutuhan?
Pengambilan saran dan kesimpulan
Ya
Tidak Wawancara
dan Observasi
Gambar 3 Diagram alir metodologi penelitian
4. ANALISIS KEBUTUHAN SISTEM
4.1. Gambaran Umum Aplikasi
Gambaran umum aplikasi saat ini kepolisian akan melakukan pemeriksaan terhadap pengendara, apabila terbukti terjadi pelanggaran maka penyidik akan mencatat identitas dan jenis pelanggaran yang dilakukan pada surat bukti pelanggaran (tilang) serta menyita barang bukti (UU nomor 22 tahun 2009 pasal 260). Selanjutnyaa penyidik memasukkan data pada lembar kerja dan melimpahkan berkas perkara tilang dalam bentuk file kepada pengadilan negeri setempat. Pengadilan berwenang memutus setiap perkara pelanggaran
tilang (UU nomor 48 tahun 2009). Selanjutnya bagian kepaniteraan pidana akan memasukkan putusan hakim kedalam lembar kerja dan melimpahkan berkas tilang dan barang bukti serta file data tilang kepada kejaksaan negeri setempat. Kejaksaan berwenang sebagai eksekutor atas putusan hakim dan melakukan pengembalian barang bukti yang ditahan setelah pelanggar membayarkan denda tilang.
4.2. Identifikasi Aktor
Aktor merupakan gambaran siapa saja yang berinteraksi dengan sistem. Hasil dari identifikasi aktor dapat dilihat pada tabel 1.
Tabel 1 Aktor dari Sistem Informasi Tiga Pilar
Nama aktor Deskripsi
User Aktor umum yang belum
melakukan autentikasi kedalam sistem, aktor ini
ditunjukkan untuk
masyarakat umum yang mengakses sistem.
Administrator aktor yang telah
melakukan autentikasi dan memiliki autorisasi penuh untuk mengakses
sistem baik dari
kepolisian, pengadilan, dan kejaksaan.
Operator Kepolisian Adalah aktor yang telah melakukan autentikasi dan memiliki autorisasi
penuh pada pihak
kepolisian.
Operator Pengadilan Adalah aktor yang telah melakukan autentikasi dan memiliki autorisasi
penuh pada pihak
Pengadilan.
Operator Kejaksaan Adalah aktor yang telah melakukan autentikasi dan memiliki autorisasi
penuh pada pihak
Kejaksaan.
4.3. Kebutuhan Fungsional dan Non Fungsional
dilakukan oleh sistem (Pujianto, 2009). Adapun kebutuhan fungsional dari sistem tidak ditampilkan disini karena keterbatasan panjang paper, hanya dijelaskan berapa banyak kebutuhan fungsional dari masing-masing aktor. Kebutuhan fungsional pada iterasi pertama untuk aktor user sebanyak 3, aktor administrator sebanyak 8, aktor operator kepolisian sebanyak 12, aktor operator pengadilan sebanyak 16, dan aktor operator kejaksaan sebanyak 8. Sedangkan untuk kebutuhan non fungsional dari sistem sebanyak 2 yang dapat dilihat pada tabel 2. Setelah dilakukan iterasi kedua ternyata terdapat penambahan kebutuhan fungsional pada aktor operator kepolisian sebanyak 1, dan aktor operator pengadilan sebanyak 3.
Tabel 2 Daftar kebutuhan non fungsional
No Kode Fungsi Nama Fungsi Deskripsi
1 TP-NF-01 Usability Sistem harus
didesain agar
mudah dan
nyaman digunakan oleh pengguna.
2 TP-NF-02 Data
Integrity
Sistem harus
dapat memastikan
bahwa data
hanya bisa
diakses, diubah,
atau dihapus
oleh aktor yang
memiliki hak
akses.
5. PERANCANGAN
5.1. Perancangan Arsitektur
Sistem informasi Tiga Pilar ini dibangun dengan mengikuti diagram arsitektur pada Spring Boot yang kurang lebih terdapat 4 layer. Web layer digunkan sebagai media komunikasi antara user dengan sistem, service layer merupakan business logic dari sistem, repository layer digunakan untuk mengakses basis data, dan domain model yang merupakan objek-objek yang biasanya merepresentasikan basis data (ORM). Pada penelitian ini dibuat beberapa packae yang mewakili dari arsitektur Spring Boot, yaitu web layer diwakili oleh package controller, service layer diwakili oleh package
service implementation, repository layer diwakili oleh package repository, dan domain model diwakili oleh package entity yang dapat dilihat pada gambar 4.
Gambar 4 Diagram perancangan package arsitektur Spring Boot
5.2. Perancangan Antarmuka
Pada sistem ini terdapat antarmuka yang digunakan untuk berkomunikasi antara pengguna dan sistem yang dibuat. Pada antarmuka halaman user – data tilang terdapat beberapa komponen yaitu nomor merupakan nama dari sistem, nomor 2 merupakan link halaman, nomor 3 merupakan link untuk masuk ke sistem, nomor 4 merupakan judul dari sistem, nomor 5 merupakan merupakan dropdown untuk menampilkan berapa jumlah data yang ingin ditampilkan. Nomor 6 merupakan input tanggal putusan, nomor 7 merupakan tombol untuk filter data, nomor 8 merupakan tombol untuk menghapus filter data, nomor 9 untuk melakukan pencarian data dan nomor 11 untuk menampilkan data tilang. Perancangan antarmuka dapat dilihat pada gambar 5.
Gambar 5 Perancangan antarmuka halaman user – data tilang
6. IMPLEMENTASI
6.1. Implementasi Kode Program
akan dipetakan menjadi basis data oleh sistem, package repository diimplementasikan untuk melakukan akses ke basis data dan mengextends dari JPARepository atau CrudRepository dari sistem. package service implementation digunakan sebagai business logic dari sistem, dan package controller akan dipetakan menjadi URI dari web service yang akan diakses oleh AngularJs.
6.1. Implementasi Kode Program
Implementasi antarmuka pengguna menampilkan antarmuka yang telah diimplementasikan pada sistem. Implementasi antarmuka dapat dilihat pada gambar 6 yaitu halaman user– data tilang untuk menampilkan data tilang kepada masyarakat.
Gambar 6 Implementasi antarmuka halaman user – data tilang
7. PENGUJIAN
7.1. Pengujian validasi
Pengujian validasi dilakukan untuk memastikan telah mencakup semua kebutuhan fungsional pada tahapan analisis kebutuhan. Dari hasil pengujian validasi didapatkan hasil dengan nilai pengujian 100%.
7.2. Pengujian unit
Pengujian unit adalah pengujian yang dilakukan untuk memastikan bahwa implementasi telah sesuai dengan yang diinginkan melalui pengujian algoritma. Unit yang dimaksud disini adalah sebuah method yang dibuat yang melakukan satu fungsi utama dan tidak memanggil method lain yang dibuat. Pada pengujian unit untuk web service menggunakan JUnit dan pada AngularJS menggunakan Jasmine. Tahapan untuk melakukan pengujian unit ini adalah membuat basic path dan menentukan cyclomatic complexity, kemudian menentukan test case dan baru dilakukan pengujian dengan JUnit. Disini diambil contoh flow graph dari method upload(file) yang dapat dilihat pada gambar 7.
Dan menghasilkan jalur independen sebanyak 4. Kemudian dibuatlah test case dan pengujian dengan menggunakan JUnit berdasarkan test case yang dibuat.
Gambar 7 flow graph method upload(file)
Hasil dari cyclomatic complexity adalah 4 dengan rumus V(G) = E-N+2. Didapatkan jalur independen yaitu:
Jalur 1: 1-2-3-4-8 Jalur 2: 1-2-3-5-6-8 Jalur 3: 1-2-5-6-8 Jalur 4: 1-2-5-7-8.
7.3. Pengujian usability
Gambar 8 Rumus perhitungan nilai effectiveness
Tabel 3 template pertanyaan kuisioner SUS
No Pertanyaan
1 Saya pikir saya akan sering menggunakan aplikasi ini.
2 Saya pikir ada beberapa fitur dalam aplikasi yang membuat saya kerepotan.
3 Saya rasa aplikasi ini mudah digunakan.
4 Saya pikir bahwa saya membutuhkan bantuan seseorang untuk mengoperasikan aplikasi ini.
5 Saya pikir bahwa fitur yang ada dalam aplikasi sudah terintegrasi dengan baik.
6 Saya menemukan ketidak konsistensian pada aplikasi ini.
7 Saya pikir bawa orang-orang akan dengan mudah menggunakan aplikasi ini.
8 Saya pikir aplikasi ini sangat sulit untuk digunakan.
9 Saya merasa nyaman menggunakan aplikasi ini.
10 Saya harus belajar banyak hal dulu sebelum menggunakan aplikasi ini.
8. KESIMPULAN DAN SARAN
8.1. Kesimpulan
Kesimpulan diambil berdasarkan hasil analisis kebutuhan, perancangan sistem, implementasi sistem, dan pengujian sistem yang telah dilakukan. Maka dapat ditarik simpulan sebagai berikut:
Berdasarkan hasil analisis kebutuhan yang dilakukan, sistem informasi Tiga Pilar memiliki 47 kebutuhan fungsional pada iterasi pertama, penambahan 4 kebutuhan fungsional pada iterasi kedua, dan 2 kebutuhan non fungsional. Selain itu dibuat diagram business process model notation (BPMN), dan use case diagram, serta
skenario use case untuk memudahkan dalam memahami dan mengembangkan sistem.
Pada tahap perancangan sistem informasi Tiga Pilar dibuat perancangan diagram sequence untuk menjelaskan secara detail alur dari sistem, perancangan entity relationship diagram untuk merancang basis data yang akan digunakan, perancangan arsitektur dan perancangan kelas, serta perancangan antarmuka sebagai rancangan antarmuka kepada pengguna sebelum diimplementasikan.
Pada tahap implementasi dibuat Physical
Data Model Diagram untuk
mengimplementasikan basis data yang digunakan, pada implementasi kode program dibuat menggunakan Spring Boot framework dan AngularJs yang hanya diambil beberapa method yang dianggap penting dalam sistem informasi Tiga Pilar.
Dari hasil pengujian unit didapatkan hasil dengan nilai 100%, hasil pengujian validasi sebesar 100%, hasil pengujian usability dengan effectiveness task completion sebesar 90,9% dan hasil SUS sebesar 72,5 dapat disimpulkan bahwa sistem informasi Tiga Pilar sudah valid dan mudah untuk digunakan.
8.2. Saran
Saran yang dapat diberikan dari penelitian yang telah dilakukan untuk membantu pengembangan sistem ini antara lain:
Diperlukan penyesuaian user interface dengan user sehingga sistem lebih mudah digunakan, hal ini dikarenakan hasil dari nilai SUS masih diambang bawah dan ada beberapa task yang tidak bisa diselesaikan oleh aktor.
Perlunya buku panduan penggunaan sistem informasi Tiga Pilar ini bagi para operator ataupun pelatihan bagi para operator sehingga operator jadi lebih mengetahui bagaimana cara penggunaan dari sistem yang telah dibuat.
Untuk penelitian selanjutnya ruang lingkup penelitian dapat ditambah dengan instansi pemerintah lain yang memiliki wewenang dalam penyelesaian perkara tilang di kota Kediri.
9. DAFTAR PUSTAKA
BROOKE, J. 2011. SUS – A quick and dirty usability scale. Redhatch Consulting Ltd. United Kingdom.
FERIDI. 2016. Mengenal RESTful Web Service.
2017.
KAINULAINEN, P. 2014. Understanding Spring Web Application Architecture:
The Classic Way.
https://www.petrikainulainen.net/softw are-development/design/understanding- spring-web-application-architecture-the-classic-way/. Diakses 20 November 2017.
KATAMREDDY, S. 2016. Why Spring Boot?.
https://dzone.com/articles/why-springboot. Diakses 08 Agustus 2017. MIFSUD, J. 2015. Usability Metrics – A Guide
to Quantify the Usability of Any System.
https://usabilitygeek.com/usability- metrics-a-guide-to-quantify-system-usability/. Diakses 20 November 2017. PUJIANTO. 2009. Analisis Kebutuhan Sistem.
RICHARDSON, P., & RUBY, S. 2007. RESTFUL Web Services, O’Reilly, United States of America.
WOODS, D. 2014. Exploring
Micro-Frameworks: Spring Boot.
https://www.infoq.com/articles/microfr ameworks1-spring-boot. Diakses 5 Oktober 2017.
Undang-Undang Republik Indonesia nomor 22 tahun 2009 tentang Lalu Lintas dan Angkutan Jalan. Jakarta: Menteri Hukum dan Hak Asasi Manusia Republik Indonesia.