sales@amanahcorp.co.id

HomeBlog

Choosing The Right Architecture

Choosing The Right Architecture

Friday, 05 December 2025

Admin User

Share to

InstagramLinkedInTwitterFacebookYouTube

Choosing The Right Architecture

Ditulis oleh Rakean Gilang Dipa Pawitra - Tech Lead Developer Amanah Corp

Hal terpenting dalam membuat sebuah sistem informasi adalah arsitektur sistem. Dengan memilih arsitektur yang tepat, kita memastikan sistem berjalan dengan baik dan proses pengerjaannya juga efisien. Sebaliknya, kesalahan dalam memilih arsitektur bisa berdampak fatal. Sistem yang lambat, proses debugging berhari-hari, hingga kebocoran data adalah suatu keniscayaan jika kita memilih arsitektur sistem yang buruk.

Diantara banyak pola arsitektur sistem, salah satu yang paling terkenal adalah Layered Architecture yang dipopulerkan oleh Martin Fowler dalam bukunya Patterns of Enterprise Application Architecture. Konsep Layered Architecture membagi sistem kedalam 4 layer, yakni Presentation (Interface), Application, Domain (Business Logic), dan Infrastructure (Data Source). Pemecahan ini membuat sistem jadi lebih mudah dipahami oleh developer dan fungsionalitas antar layer jadi tidak saling bergantung. Contohnya, kita bisa me-redesign tampilan website hanya dengan mengubah Presentation Layer. Kita juga bisa mengubah sumber data dari MySQL ke PostegreSQL cukup dengan mengubah Infrastructure Layer.

Meskipun pola Layered Architecture lazim diadopsi, ada kalanya kebutuhan sistem memaksa kita 'melanggar' pola ini. Di beberapa project yang saya dan tim kerjakan, Business Logic tersebar di Domain dan Infrastructure Layer karena alasan fleksibilitas. Sebagai contoh, jika suatu sistem memiliki Business Logic yang sering berubah, kemampuan untuk merubah Logic on-the-fly menjadi sangat penting. Ketika dibutuhkan perubahan Logic dan sumberdaya yang tersedia adalah Business / System Analyst, maka sangat menguntungkan jika Business Logic disimpan di database dalam bentuk Stored Procedure karena BA / SA bisa langsung melakukan penyesuaian.

Jadi, mana yang benar? Apakah kita harus mengikuti arsitektur yang diadopsi dengan saklek atau boleh melakukan perubahan? Kalau menurut saya, modifikasi boleh dilakukan sesuai keperluan. Karena pada dasarnya, kita sebagai software developer merancang sistem untuk memenuhi kebutuhan bisnis, bukan sebaliknya. Di tim project Amanah Corp, kami terbiasa merancang sistem dan mengadaptasi teknologi sesuai keperluan client. Mulai dari arsitektur MVC, Microservice, hingga PWA sudah pernah dikerjakan oleh tim.

Artikel Terkait

icon-WhatsApp