SISFO-Jurnal Sistem Informasi
PERANCANGAN DAN PEMBUATAN APLIKASI MANAJEMEN CUTI BERBASIS WEB DENGAN MENGGUNAKAN FRAMEWORK RAILS (STUDI KASUS PT. UNILEVER INDONESIA Tbk.) Mudjahidin1), Bambang Setiawan2), Rista Novitasari3) Jurusan Sistem Informasi Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember Kampus ITS Sukolilo, Surabaya, 60111 Email:
[email protected]),
[email protected]),
[email protected])
Abstrak Lokasi PT. Unilever yang tersebar di beberapa daerah, menjadi penyebab kurangnya komunikasi antara kantor pusat dan pabrik. Seiring bertambahnya waktu, jumlah karyawan di perusahaan juga bertambah, sehingga proses administrasi yang masih bersifat manual hendaknya dikurangi. Contohnya proses pengajuan cuti. Proses ini menghabiskan waktu yang lama. Oleh karena itu, perlu dikembangkan sebuah sistem berbasis komputer yang digunakan untuk mengelola data pengajuan cuti. Pengembangan sistem dimulai dengan identifikasi kebutuhan, selanjutnya dibuat desain sistem yang digambarkan dengan UML dan ERD. Desain sistem diterapkan dalam lingkungan web yang menggunakan Framework Rails, bahasa pemrograman ruby dan menggunakan basis data MySQL. Selanjutnya akan dilakukan uji coba terhadap beberapa fungsi untuk mengevaluasi kinerja sistem. Hasil dari penelitian ini berupa aplikasi serta dokumen rancangan dan perangkat lunak berbasis web yang dikembangkan menggunakan framework rails dan bahasa ruby. Sistem dibuat untuk memenuhi kebutuhan dalam manajemen cuti. Sistem ini menyajikan informasi-informasi tentang cuti. Dengan adanya sistem ini, proses pengajuan cuti yang lama bisa diminimalkan. Kata kunci: manajemen cuti, karyawan, rails, ruby.
1.
PENDAHULUAN
Di era global ini, satu perusahaan bisa memiliki lebih dari satu pabrik dalam proses produksinya. Kebanyakan pabrik-pabrik itu tidak terdapat dalam satu lokasi. Bisa juga pabrik itu berada di satu propinsi, bisa juga berada di propinsi yang lain, bahkan kantor pusat perusahaan itu berada di lokasi yang berbeda dengan pabriknya. Antara pabrik-pabrik dan kantor pusat harus saling berhubungan satu sama lain, dimana pihak manajemen di pabrik induk bisa memantau kinerja pihak manajemen di pabrik cabang, begitu pula pihak manajemen di kantor pusat bisa memantau kinerja pihak manajemen di pabrik induk dan pabrik cabang. Karena lokasi yang berbeda inilah, komunikasi yang dilakukan kurang intensif. Komunikasi yang dilakukan selama ini melalui telepon, email dan fax. Hal inilah yang menyebabkan kinerja perusahaan kurang maksimal. Seiring dengan peningkatan kinerja, penggunaan dan pemanfaatan teknologi komputer semakin diperlukan untuk menggantikan peran fungsi
manual. Penggunaan teknologi komputer memberikan kemudahan-kemudahan untuk pengolahan data maupun penyajian informasi yang cepat dan akurat, sangat membantu untuk meningkatkan kinerja perusahaan. Dari faktor-faktor di atas dapat dikembangkan suatu aplikasi yang bisa menggantikan sistem pengajuan cuti secara manual. Aplikasi ini dikembangkan berbasis web, disesuaikan dengan lokasi kantor pusat dan perusahaan yang berada di lokasi yang berlainan. Keuntungan pengembangan aplikasi berbasis web yaitu : Ø
User interface yang konsisten
Ø
Mudah digunakan
Ø
Dapat diakses dari mana saja (Akses dapat dilakukan dari lokasi perusahaan yang berbeda)
Ø
Tidak membutuhkan software khusus yang mahal
21
SISFO-Jurnal Sistem Informasi Setiap pabrik, baik pabrik induk maupun pabrik cabang, juga kantor pusat yang ada di lokasi lain dapat mengakses web ini dengan menggunakan jaringan internet. 2. METODOLOGI Metodologi pembuatan penelitian ini terbagi menjadi beberapa tahap pengerjaan yang tertera sebagai berikut : ▫
Pengumpulan data-data yang diperlukan.
▫
Analisa kebutuhan pengguna.
▫
Desain sistem.
▫
Implementasi sistem.
▫
Uji coba dan evaluasi.
4.
ANALISA DAN DESAIN SISTEM
Aplikasi manajemen cuti yang dikembangkan diharapkan mampu mengatasi permasalahan yang ada tanpa mengurangi kebijakankebijakan cuti. Aplikasi ini dibuat berdasarkan kondisi yang didapatkan dengan melakukan pengamatan dan observasi pada PT. Unilever Indonesia. Dari hasil survei dan wawancara, maka analisis dibagi menjadi 3 kategori, yaitu analisis pengguna, teknologi dan fungsi atau proses bisnis. 1.
Analisis Pengguna Penguna dalam sistem manajemen cuti dibagi menjadi empat, yaitu : karyawan, kepala bagian, staff HRD dan administrator. Seperti ditunjukkan gambar 3.
Secara umum, tahapan metodologi dapat dilihat pada gambar 1.
Pengguna
Identifikasi permasalahan
Studi literatur
Karyawan
Browsing
Observasi
Analisa kebutuhan Administrator
Perancangan dan Desain sistem
Pembuatan aplikasi
2.
Gambar 1. Tahapan Metodologi
PROSEDUR PENGAJUAN CUTI
Gambar 2. Prosedur Pengajuan Cuti
22
Analisis Teknologi Beberapa teknologi dipilih berdasarkan kebutuhan perusahaan, sedangkan sebagian lainnya ditentukan sendiri oleh penulis karena tidak ada kebutuhan khusus atas teknologi tersebut.
Penyusunan buku tugas akhir
Karyawan yang ingin mengajukan cuti, mengisi form pengajuan cuti terlebih dahulu. Selanjutnya karyawan tersebut memberitahukan kepada kepala bagiannya untuk mendapat persetujuan. Pengajuan cuti dilaksanakan 3 hari sebelum cuti berlangsung. Setelah disetujui, form tersebut diberikan kepada staf HRD. Selanjutnya staf HRD memasukkan data karyawan yang mengajukan cuti tersebut. Seperti ditunjukkan gambar 2.
Manajer
Gambar 3. Generalisasi Pengguna
Uji coba dan evaluasi
3.
Staf HRD
3.
a.
Web
b.
Framework Rails pemrograman Ruby.
c.
Basis data MySQL
dan
bahasa
Analisis Fungsi Fungsi-fungsi sistem ini ditentukan berdasarkan entitas-entitas bisnis perusahaan dan fitur-fitur utama yang harus ada dalam sebuah sistem manajemen cuti. a.
Fungsi pengelolaan. Sebuah sistem manajemen cuti harus menyediakan fungsi pengelolaan datadata yang berkaitan dengan cuti. Terdapat beberapa entitas di perusahaan yang datanya perlu dikelola, yaitu karyawan, departemen, pengajuan cuti dan lain-lain. Dalam fungsi ini dapat melakukan
SISFO-Jurnal Sistem Informasi penambahan data karyawan, perubahan data maupun penghapusan data. Data karyawan akan berpengaruh di semua proses dalam aplikasi ini. Fungsi ini hanya dapat diakses oleh staf HRD. b.
digunakan adalah Rails. Basis data yang digunakan adalah MySQL. Arsitektur sistem manajemen cuti ditunjukkan pada gambar 4.
Fungsi pengajuan cuti Fungsi ini akan melakukan input data cuti pada aplikasi. Data ini akan berpengaruh pada saat melaksanakan cuti. Fungsi ini dapat dilakukan oleh pengguna karyawan, manajer maupun staf HRD.
c.
Fungsi Laporan Cuti Fungsi ini membaca isi database dan menyajikannya kepada pengguna sebagai laporan dari proses pengajuan cuti yang dilakukannya. Perusahaan membutuhkan fungsi ini sebagai dokumen dalam pelaksanaan cuti seorang karyawan.
d.
Fungsi pengaturan cuti Fungsi pengaturan cuti digunakan untuk mengelompokkan masa kerja pegawai ke dalam kelompok tertentu sesuai dengan peraturan perusahaan. Pengaturan ini juga akan berpengaruh pada hak cuti yang diperoleh setiap karyawan, dimana setiap karyawan memiliki hak cuti yang berbeda satu sama lain. Fungsi pengaturan cuti dilakukan oleh pengguna staf HRD.
4.1 Deskripsi Sistem
Aplikasi Manajemen Cuti Berbasis Web (AMCBW) merupakan suatu sistem informasi yang menangani proses administratif dari serangkaian pelaksanaan pengajuan cuti oleh karyawan. Tujuan pembuatan aplikasi adalah untuk memberikan kemudahan bagi pengguna perangkat lunak ini dalam menangani proses administratif prosedur cuti. Dengan begitu, mudah untuk mendapatkan informasi. Sistem ini digunakan oleh pihak internal perusahaan untuk mengelola data-data cuti milik perusahaan (dalam hal ini adalah cuti yang diajukan karyawan). Data-data cuti tersebut meliputi data hak cuti, batas mengajukan cuti, dan dokumendokumen yang bersangkutan. 4.2 Arsitektur Sistem
Sistem Manajemen Cuti ini adalah sebuah aplikasi berbasis web yang dikembangkan dengan menggunakan teknologi Ruby on Rails. Web Server yang digunakan adalah Apache dengan bahasa pemrograman web server Ruby. Framework pengembangan aplikasi web yang
Gambar 4. Arsitektur Sistem
4.3 Desain Sistem
Tahapan selanjutnya adalah mendesain sistem yang akan dibuat berdasarkan kebutuhan user (user requirement), yang didapatkan pada tahap analisa kebutuhan. Desain sistem pada penelitian ini meliputi use case, activity diagram, class diagram, sequence diagram, desain database dan desain antarmuka. Pemodelan sistem dibuat dengan menggunakan teknik UML, yang terdiri dari use case diagram, activity diagram, class diagram dan sequence diagram. Pada penelitian ini, menggunakan CASE TOOL Rationale Rose 2002. Perancangan diagram use case Sistem Manajemen Cuti ini didasarkan pada fungsifungsi utama yang harus tersedia untuk mengelola data cuti dan proses bisnis yang ada di PT. Unilever Indonesia. Use case manajemen cuti ditunjukkan pada gambar 5. Proses atau use case yang dibutuhkan oleh keseluruhan pengguna adalah (1)Login. (2)Mengelola Cuti. (3)Melihat Arsip Cuti. (4)Melihat Informasi Departemen. (5)Melihat Informasi Kode Presensi. (6)Download Peraturan dan Prosedur Cuti. (7)Melihat Informasi Prosedur Cuti. (8)Melihat Peraturan Cuti. (9)Melihat Berita Perusahaan. (10)Mengelola Data Karyawan. (11)Mengelola Kode Presensi. (12)Mengelola Berita. (13)Mengelola Lokasi tempat bekerja. (14)Mengelola Peraturan Cuti. (15)Mengelola Pengguna dan Hak Aksesnya. (16)Mengelola Departemen.
23
SISFO-Jurnal Sistem Informasi (17)Mengelola Informasi Prosedur Pengajuan Cuti. (18)Mengelola Arsip cuti yang ditolak. (19)Persetujuan Cuti. (20)Hadiah Cuti. (21)Mengelola Tampilan Login. (22)Mengelola Tampilan Banner
ini memiliki banyak use case. Dengan beberapa use case tersebut, staf mengelola semua datadata tentang karyawan maupun data-data umum.
Desain activity diagram, class diagram dan sequence diagram dapat dilihat lebih detail dalam buku penelitian atau dokumen Spesifikasi Kebutuhan Perangkat Lunak.
Login
Pengguna
Fungsionalitas Untuk Karyawan
Karyawan
Staf HRD
Fungsionalitas Untuk Staf HRD
Administrator
Fungsionalitas untuk Manajer
Gambar 8. Use Case Fungsionalitas untuk Staf HRD Manajer
Fungsionalitas Untuk Administrator
Gambar 5. Usecase Manajemen Cuti
Use case untuk fungsionalitas manajer ditunjukkan pada gambar 6. Fungsionalitas user ini memiliki beberapa use case yaitu, persetujuan cuti, hadiah cuti, mengelola cuti.
Use case untuk fungsionalitas karyawan dapat dilihat pada 9. Karyawan merupakan pengguna umum dari sistem ini. Karyawan tidak dapat mengelola semua data, tetapi hanya dapat mengelola data pengajuan cuti dirinya. Fungsionalitas user ini memiliki beberapa use case, dimana fungsinya sebagian besar hanya menampilkan informasi.
Persetujuan Cuti
Manajer Hadiah Cuti Mengelola Cuti
Gambar 6. Use Case Fungsionalitas Manajer
Use case untuk fungsionalitas administrator dapat dilihat pada gambar 7. Fungsionalitas user ini hanya memiliki 2 use case, yaitu mengelola tampilan login dan mengelola tampilan banner. Administrator dapat mengubah gambar yang ada pada tampilan.
Administrator
Mengelola Tampilan Login
Mengelola Tampilan Banner
Gambar 7. Use Case Fungsionalitas Administrator
Use case untuk fungsionalitas staf HRD ditunjukkan pada gambar 8. Fungsionalitas user
24
Gambar 9. Use Case Fungsionalitas untuk Karyawan
4.4 Desain Database
Berdasarkan desain sistem di atas, dilakukan perancangan database yang akan digunakan sebagai tempat penyimpanan data. Model diagram yang dipakai untuk perancangan database adalah Entity Relationship Diagram (ERD), dengan menggunakan CASE TOOL Power Designer 12 yang merepresentasikan ERD ke dalam CDM (Conceptual Data Model) dan PDM (Physical Data Model). CDM dari sistem ditunjukkan pada gambar 10, sedang PDM ditunjukkan pada gambar 11.
SISFO-Jurnal Sistem Informasi perangkat lunak dan perangkat keras. Spesifikasi dari masing-masing perangkat yang digunakan dalam uji coba aplikasi Manajemen Cuti tampak pada tabel 1. Tabel 1. Tabel Lingkungan Uji Coba Perangkat keras Prosesor : Intel(R) Pentium (R) M (1.6 Ghz) Memori : 384 MB SDRAM Perangkat lunak Sistem Operasi : Microsoft Windows XP Home Edition Version 2002 SP2. Framework : Rails Web Server: Apache Web Browser: Mozilla Firefox Version 2.0.0.4 Basis Data : MySQL 5.3 Skenario Uji Coba Gambar 10. Conceptual Data Model
Uji coba dilakukan untuk menguji jalannya aplikasi mulai dari proses input sampai dengan proses output dan mengetahui kesesuaian antara desain dengan kenyataan. Data-data yang digunakan dalam proses uji coba ini menggunakan format data dari PT. Unilever Indonesia Tbk. Sedangkan isi dari tabel tersebut dibuat sendiri. Skenario uji coba akan dilakukan pada beberapa menu saja, tidak secara keseluruhan. Menu-menu yang akan diuji coba yaitu: 1.
Login Untuk menggunakan aplikasi manajemen cuti, semua pengguna harus melakukan proses Login terlebih dahulu. Setelah membuka URL Sistem di browser, maka form login akan terbuka. Hasil akhir dari ujicoba ini yaitu pengguna bisa mengakses sistem. Bila gagal, maka akan muncul pesan kesalahan yang akan ditampilkan kepada pengguna. Hal ini ditunjukkan pada gambar 12.
Gambar 11. Physical Data Model
5. IMPLEMENTASI DAN UJI COBA 5.1 Implementasi
Sistem berbasis web ini dikembangkan dengan menggunakan Framework Rails, webserver Apache. Sistem basis data yang digunakan adalah MySQL. Untuk pemetaan objek relasional dan koneksi basisdata, menggunakan ORM (Object Relational Mapping). Antar muka yang digunakan untuk berhubungan dengan pengguna adalah halaman-halaman RHTML yang dibangun dengan menggunakan bahasa ruby. 5.2 Uji Coba
Pada bagian ini akan dijelaskan mengenai lingkungan pengujian aplikasi, yang meliputi
Gambar 12. Form login
2.
Mengelola Berita Uji coba skenario mengolah berita terdiri dari lihat daftar berita, lihat detil berita, tambah data berita, ubah data berita, dan hapus data berita, Skenario ini mewakili skenario ujicoba pengelolaan data pada entitas-entitas bisnis yang lain karena mekanismenya yang sama. Hasil dari skenario ini dapat dilihat pada gambar 13.
25
SISFO-Jurnal Sistem Informasi 5.
Menyetujui Cuti Uji coba skenario menyetujui cuti terdiri dari proses persetujuan cuti. Untuk menyetujui cuti, manajer memilih menu persetujuan cuti. Ketika memilih menu ini, manajer akan dihadapkan pada daftar karyawan yang mengajukan cuti. Hasil akhir dari ujicoba ini adalah ketika manajer menyetujui permintaan cuti karyawan, maka data pengajuan cuti karyawan tersebut akan berubah statusnya. Hal ini ditunjukkan pada gambar 16.
Gambar 13. Hasil Ujicoba Mengelola Berita
3.
Mengelola Departemen Uji coba skenario mengelola departemen terdiri dari lihat daftar departemen, tambah data departemen, ubah data departemen, dan hapus data departemen. Bila dicoba untuk memasukkan isian yang salah akan keluar pesan kesalahan seperti gambar 14. Hasil akhir dari mengelola departemen ini hampir sama dengan mengelola berita, yaitu menampilkan semua data yang ada.
Gambar 14. Uji coba mengelola departemen
4.
Mengelola Cuti Uji coba skenario mengelola cuti terdiri dari lihat daftar cuti, lihat detil cuti, tambah data cuti, ubah data cuti, dan hapus data cuti. Untuk melihat daftar cuti, pengguna bisa memilih menu pengajuan pada daftar menu di bagian samping halaman. Hasil akhirnya adalah menampilkan semua data cuti karyawan seperti ditunjukkan gambar 15.
Gambar 16. Halaman Persetujuan Cuti
6. SIMPULAN Berdasarkan hasil penelitian yang dilakukan, maka dapat disimpulkan beberapa hal sebagai berikut : § Data-data milik PT. Unilever Indonesia yang terkait dengan proses pengajuan cuti karyawan yang perlu dikelola adalah data karyawan, data pengajuan cuti, dan lain-lain.
Gambar 15. Halaman Mengelola Cuti
26
§ Framework Rails sangat cocok digunakan dalam pengembangan aplikasi manajemen cuti ini, karena framework rails menyediakan
SISFO-Jurnal Sistem Informasi beberapa kemudahan dalam membuat kode program. Beberapa hal yang diharapkan dapat dikembangkan pada masa mendatang adalah sebagai berikut: § Menambah fitur untuk melihat berbagai macam berkas khususnya berkas-berkas cuti yang diajukan. § Menambahkan fungsi-fungsi lebih detil tentang permasalahan cuti yang belum tersentuh sama sekali. 7. DAFTAR PUSTAKA Barry Burd. 2007. Ruby on Rails ™ For Dummies®. Indianapolis, Indiana : Wiley Publishing, Inc. Dave Thomas, David Heinemeier Hansson. 2005. Agile Web Development with Rails, A Pragmatic Guide. Raleigh, North Carolina Dallas, Texas : The Pragmatic Bookshelf. Doug Rosenberg and Matt Stephens. 2007. Use Case Driven Object Modeling with UML Theory and Practice. United States of America : Apress. Grady Booch, Robert A. Maksimchuk, Michael W. Engle, Bobbi J. Young, Ph.D., Jim Conallen, Kelli A. Houston. Object-Oriented Analysis and Design with Application, Third Edition. Upper Saddle River: Booch Jacobson Rumbaugh, Addison Wesley. Rumbaugh, James. Jacobson, Ivar. Booch, Grady. 2004. The Unified Modeling Language Referance Manual, Second Edition, Addison Wesley, July. Stuart Halloway, Justin Gehtland. 2007. Rails for Java Developers. Dallas Texas : The Pragmatic Bookshelf.
27