Mohon tunggu...
Alsy Amalia Jasmine Muin
Alsy Amalia Jasmine Muin Mohon Tunggu... Mahasiswa - Mahasiswa UIN Maulana Malik Ibrahim Malang

Science and Technology Enthusiast, gemar membaca buku, mendengarkan musik, dan permainan asah otak

Selanjutnya

Tutup

Ilmu Alam & Tekno

Process Mining, Solusi Optimalisasi Pipeline CI/CD di Era DevOps

23 September 2024   13:20 Diperbarui: 23 September 2024   13:33 63
+
Laporkan Konten
Laporkan Akun
Kompasiana adalah platform blog. Konten ini menjadi tanggung jawab bloger dan tidak mewakili pandangan redaksi Kompas.
Lihat foto
Ilustrasi Process Mining di era DevOps (Sumber: Freepik.com)

Process Mining: Solusi Optimalisasi Pipeline CI/CD di Era DevOps

Dalam dunia pengembangan perangkat lunak modern, efisiensi dan kualitas pipeline deployment menjadi fokus utama untuk mencapai proses pengiriman yang cepat dan tepat. Hal ini semakin penting dalam lingkungan DevOps yang mengedepankan integrasi dan pengiriman berkelanjutan. Artikel karya Ana Filipa Nogueira dan Mário Zenha-Rela berjudul "Process Mining Software Engineering Practices: A Case Study for Deployment Pipelines" yang dipublikasikan pada Information and Software Technology Volume 168 (Desember 2023) membahas bagaimana teknik Process Mining dapat digunakan untuk mengidentifikasi penyimpangan dan meningkatkan efisiensi pipeline CI/CD. Berdasarkan penelitian terhadap enam tim teknik di perusahaan e-commerce besar di Eropa, penelitian ini menggali bagaimana variasi lokal dalam pipeline dapat memengaruhi kualitas dan kecepatan pengiriman perangkat lunak.

Salah satu tantangan utama dalam lingkungan DevOps adalah mengelola kompleksitas pipeline deployment. Meskipun sudah ada standar yang diterapkan, artikel ini menunjukkan bahwa setiap tim memiliki variasi lokal yang sangat terkait dengan konteks bisnis yang mereka tangani. Nogueira dan Zenha-Rela mengumpulkan data dari ribuan event pipeline GitLab untuk menghitung metrik DevOps seperti lead time dan change failure rate, menghasilkan angka yang cukup mencolok. Misalnya, mereka menemukan bahwa siklus commit dapat memakan waktu rata-rata 7 hingga 10 menit untuk menyelesaikan proses, sementara siklus produksi bisa memakan waktu hingga 6.390 menit (sekitar 4,5 hari) di beberapa tim, menunjukkan adanya peluang besar untuk perbaikan.

Temuan ini menyoroti bahwa meskipun standar DevOps sudah mapan, realitas implementasi di lapangan sering kali jauh lebih kompleks. Dengan adanya variasi ini, sangat jelas bahwa penggunaan Process Mining tidak hanya membantu memahami proses yang sebenarnya terjadi, tetapi juga menjadi alat penting untuk mengoptimalkan efisiensi pengiriman perangkat lunak di lingkungan yang sangat dinamis.

***

Salah satu aspek menarik dari artikel Nogueira dan Zenha-Rela adalah bagaimana mereka menggunakan Process Mining untuk menganalisis dan meningkatkan pipeline CI/CD di lingkungan yang kompleks. Berdasarkan data dari enam tim teknik di perusahaan e-commerce, mereka menemukan bahwa meskipun ada template standar untuk pipeline deployment, realitasnya setiap tim menunjukkan variasi proses yang signifikan. Variasi ini sangat dipengaruhi oleh konteks bisnis dari masing-masing tim, yang menunjukkan bahwa standar satu ukuran untuk semua sering kali tidak cukup efektif dalam implementasi.

Artikel ini memberikan angka-angka yang relevan dan membuka mata terkait efisiensi proses. Sebagai contoh, dalam siklus commit, semua tim memiliki waktu penyelesaian antara 5 hingga 10 menit. Namun, ketika proses berlanjut ke siklus penerimaan dan produksi, terdapat perbedaan besar. Tim yang paling cepat menyelesaikan siklus penerimaan memakan waktu 14,8 menit, sementara tim dengan kinerja terendah membutuhkan hingga 2.416 menit (sekitar 40 jam). Sementara itu, dalam siklus produksi, tim terlama membutuhkan hingga 6.390 menit (lebih dari 4 hari) untuk menyelesaikan pipeline dari commit hingga pengujian otomatis di lingkungan produksi. Data ini menunjukkan bahwa bottleneck dalam pipeline sangat mungkin terjadi di bagian manual seperti pengujian atau persetujuan deployment, yang sangat bergantung pada kecepatan tim untuk merespons.

Selain itu, Process Mining juga membantu mengidentifikasi change failure rate, yang dihitung dari persentase kegagalan dalam pipeline deployment. Dari data yang dikumpulkan, mereka menemukan bahwa kegagalan dalam siklus penerimaan dan produksi cenderung bervariasi, dengan angka rata-rata antara 0% hingga 12%. Tim dengan change failure rate yang tinggi sering kali mengalami kegagalan deployment akibat langkah manual yang tidak diselesaikan dengan baik. Namun, dengan adanya visibilitas yang diberikan oleh Process Mining, tim-tim ini dapat menemukan akar masalah mereka dan mengurangi kegagalan di masa depan.

Selain memperbaiki kecepatan dan kualitas, artikel ini juga menyoroti pentingnya standar metrik yang digunakan untuk mengukur kinerja pipeline. Nogueira dan Zenha-Rela menggunakan metrik seperti flow efficiency, yang mengukur seberapa efisien waktu yang digunakan untuk bekerja dibandingkan dengan waktu yang dihabiskan untuk menunggu. Mereka menemukan bahwa tim yang paling efisien memiliki rata-rata flow efficiency sebesar 77% untuk feature branch dan 68% untuk main branch, sementara tim dengan performa lebih rendah menunjukkan angka yang jauh lebih rendah, mengindikasikan adanya ruang besar untuk optimasi.

Secara keseluruhan, artikel ini menunjukkan bahwa Process Mining adalah alat yang sangat efektif untuk memberikan wawasan mendalam tentang pipeline deployment, memungkinkan organisasi untuk mengidentifikasi area perbaikan yang signifikan dan mendorong tim teknik untuk lebih produktif dalam siklus pengiriman perangkat lunak mereka.

***

Artikel Ana Filipa Nogueira dan Mário Zenha-Rela memberikan bukti kuat bahwa Process Mining memainkan peran penting dalam meningkatkan pipeline CI/CD di lingkungan DevOps yang dinamis. Dengan data konkret dari ribuan event dan analisis mendalam tentang lead time, flow efficiency, dan change failure rate, penelitian ini berhasil menunjukkan bagaimana organisasi dapat memanfaatkan teknologi ini untuk mengoptimalkan proses pengiriman perangkat lunak. Efisiensi yang bervariasi antara tim menunjukkan adanya peluang besar untuk perbaikan, terutama pada tahap manual seperti pengujian dan persetujuan deployment.

Dengan memanfaatkan wawasan dari Process Mining, perusahaan dapat meningkatkan visibilitas dan transparansi, mempercepat pengiriman, dan mengurangi kegagalan di setiap tahap pipeline. Secara keseluruhan, artikel ini menggarisbawahi pentingnya penggunaan teknologi canggih untuk tetap kompetitif dalam lanskap pengembangan perangkat lunak yang terus berubah dan berkembang.

Referensi

Nogueira, A. F., & Zenha-Rela, M. (2023). Process mining software engineering practices: A case study for deployment pipelines. Information and Software Technology, 168, 107392. https://doi.org/10.1016/j.infsof.2023.107392 

Baca konten-konten menarik Kompasiana langsung dari smartphone kamu. Follow channel WhatsApp Kompasiana sekarang di sini: https://whatsapp.com/channel/0029VaYjYaL4Spk7WflFYJ2H

HALAMAN :
  1. 1
  2. 2
Mohon tunggu...

Lihat Konten Ilmu Alam & Tekno Selengkapnya
Lihat Ilmu Alam & Tekno Selengkapnya
Beri Komentar
Berkomentarlah secara bijaksana dan bertanggung jawab. Komentar sepenuhnya menjadi tanggung jawab komentator seperti diatur dalam UU ITE

Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!
LAPORKAN KONTEN
Alasan
Laporkan Konten
Laporkan Akun