Dalam beberapa tahun terakhir, modernisasi aplikasi menjadi topik yang ramai dibicarakan. Hal ini tidak lepas dari perubahan bisnis saat ini, yang semakin berorientasi digital dan begitu cepat berubah. Kebutuhan seperti itu menjadi sulit diladeni oleh monolithic application, sehingga inisiatif modernisasi pun menjadi kencang bergulir.
Studi Infosys di tahun 2022 memprediksi, hanya 10% legacy system yang akan tersisa dalam lima tahun ke depan. Sebanyak 50% inisiatif modernisasi aplikasi akan terjadi dalam dua tahun ke depan, yang menunjukkan banyak perusahaan menyadari saatnya meninggalkan aplikasi lamanya.
Apa itu modernisasi aplikasi?
Modernisasi aplikasi adalah proses mengubah aplikasi yang selama ini digunakan (legacy application) menjadi aplikasi yang lebih modern dan sesuai dengan perubahan zaman. Saat ini, diskusi tentang modernisasi aplikasi mengarah kepada proses mengubah monolithic application menjadi aplikasi yang berbasis microservices.
Baca Juga: Belajar modernisasi aplikasi dari Bank Raya
Pada monolithic application, semua fitur dan komponen aplikasi dibuat menjadi satu kesatuan dengan keterikatan yang kuat. Sementara microservices menggunakan pendekatan sebaliknya, yaitu fitur dan komponen dibagi-bagi ke satuan kecil dengan ikatan yang lebih longgar.
Selain berbeda secara konsep, monolithic dan microservices application juga berbeda dari sisi proses dan platformnya. Monolithic application biasanya dibangun dengan pendekatan waterfall, sementara microservices menggunakan pendekatan DevOps. Platformnya pun berbeda, karena monolithic application biasanya ditempatkan di on-premise sementara microservices memiliki karakteristik yang cocok di lingkungan cloud.
Pendek kata, modernisasi aplikasi melibatkan perubahan mendasar dari sisi arsitektur, cara kerja, maupun infrastruktur digitalnya.
Mengapa harus modernisasi aplikasi?
Modernisasi aplikasi biasanya diperlukan ketika aplikasi lama sudah tidak bisa (atau sulit) memenuhi kebutuhan bisnis. Analoginya seperti merenovasi rumah. Jika memiliki pondasi yang bagus, rumah tersebut mungkin bisa ditambah satu atau dua tingkat tambahan. Namun tentu saja akan beresiko jika kita membangun rumah lima tingkat dari pondasi lama.
Begitu pula dengan monolithic application. Saat dibangun, monolithic application mungkin sudah memenuhi kebutuhan bisnis saat itu. Namun saat ini, kebutuhan bisnis berubah. Ketika perusahaan ingin berkolaborasi dengan pihak ketiga, misalnya, kita mungkin harus membongkar monolithic application tersebut agar bisa “berbicara” melalui teknologi API. Atau ketika kita ingin menganalisis perilaku konsumen dengan teknologi Artificial Intelligence, kita juga harus melakukan perubahan besar di monolithic application yang kita miliki.
Perubahan di monolithic application memang tetap bisa dilakukan. Namun karena monolithic application dibangun dalam satu kesatuan, setiap perubahan akan berpengaruh ke semua komponen yang ada. Kita harus memastikan perubahan tersebut tidak berpengaruh negatif kepada sistem yang sudah berjalan.
Hal ini tentu saja berdampak pada semakin banyaknya waktu dan juga usaha yang harus kita lakukan untuk melakukan perubahan tersebut.
Apa keuntungan melakukan modernisasi aplikasi?
Banyak studi yang menunjukkan, modernisasi aplikasi akan berdampak positif bagi perusahaan. Contohnya studi McKinsey yang menemukan, modernisasi aplikasi meningkatkan kecepatan time-to-market sampai 60%. Selain itu, keuntungan juga didapat dari berkurangnya software bug (60%) serta peningkatan produktivitas tim TI (30%).
Studi lain juga menemukan, mengelola legacy system akan menyita 60-80% dari anggaran IT. Dengan melakukan modernisasi aplikasi, anggaran yang dibutuhkan pun dapat turun.
Tantangan melakukan modernisasi aplikasi
Meski menawarkan banyak keuntungan, modernisasi aplikasi juga memiliki banyak tantangan. Beberapa tantangan yang harus Anda antisipasi adalah:
- Proses yang panjang. Melakukan modernisasi aplikasi adalah perjalanan yang panjang, sulit, dan makan waktu. Aplikasi lama harus dipecah menjadi bagian-bagian yang lebih kecil, sehingga membutuhkan nafas yang “panjang” bagi semua pihak yang terlibat
- Mahal. Karena prosesnya yang panjang, modernisasi aplikasi akan membutuhkan biaya yang tidak sedikit. Biaya bukan cuma dari proses penulisan ulang aplikasi, namun juga support dan documentation yang menyertai.
- Butuh Talenta. Untuk melakukan modernisasi, dibutuhkan tim dan talenta yang paham aplikasi lama maupun aplikasi baru. Tim ini harus bisa menerjemahkan fungsi-fungsi di aplikasi/teknologi lama menjadi fungsi di aplikasi/teknologi yang baru. Hal ini akan menjadi tantangan tersendiri apalagi jika dokumentasi aplikasi lama memang terbatas.
Apakah perusahaan harus melakukan modernisasi aplikasi?
Sebenarnya, tidak harus. Jika aplikasi lama masih bisa menjawab kebutuhan bisnis saat ini, perusahaan tidak perlu mengambil risiko dan mengeluarkan investasi untuk modernisasi aplikasi.
Namun jika rencana bisnis ke depan membutuhkan teknologi-teknologi baru, modernisasi aplikasi menjadi satu hal yang tidak dapat dihindari. Segera lakukan modernisasi dengan mengikuti best practice yang ada selama ini. Dan jangan lupa, persiapkan organisasi Anda untuk siap menghadapi tantangan yang muncul dari modernisasi aplikasi tersebut.