Blog ini saya coba buat untuk menjadi catatan saya mendalami Enterprise Integration Pattern (EIP) atau dalam bahasa Indonesianya, kita sebut Pola Integrasi (bingung mencari terjemahan kata Enterprise, hehe). Kenapa EIP atau Pola Integrasi ini diperlukan? Bagi yang sering berurusan antar integrasi antar sistem/aplikasi, tentu sudah paham bahwa integrasi itu ribet dan menghabiskan waktu. Integrasi di sini bukan hanya bagaimana memanggil suatu API, konsep integrasi jauh lebih kompleks. Integrasi akan semakin kompleks ketika banyak sistem yang harus diintegrasikan.
![]() |
| Enterprise Integration Pattern (source: www.eaipatterns.com) |
Dalam dunia enterprise, kita akan semakin banyak berurusan dengan integrasi. Enterprise biasanya memiliki beberapa domain sistem: Customer Relationship Management (CRM), Supply Chain Management (SCM), Enterprise Resource Planning (ERP) dan Business Intelligence (BI). Masing-masing domain ini akan memiliki banyak aplikasi di dalamnya, dan masing-masing aplikasi baik dalam domain yang sama atau berbeda akan saling terintegrasi
Background saya adalah sebagai kuli IT yang bekerja di operator seluler di Indonesia. Ada beberapa aplikasi yang sudah saya buat dan diimplementasikan dan juga menjadi revenue generator bagi perusahaan saya, tetapi juga sekaligus ini merupakan 'dosa terselubung' saya karena saya dulu melakukan development tanpa arah yang jelas, problematic dan error-prone. Akibatnya, aplikasi yang saya buat semakin lama semakin sulit di maintain.
Hal ini menjadi pelajaran berharga bagi saya pribadi dan saya tidak ingin teman-teman saya mengulangi kesalahan saya. Oleh karena itu, saya berkomitmen untuk mencoba berbagi melalui blog ini tentang bagaimana menerapkan EIP/Pola Integrasi untuk membangun integrasi yang baik dan benar, terutama dalam dunia enterprise. Saya juga berencana melakukan reengineering salah satu aplikasi yang saya buat, dan blog ini akan bercerita tentang implementasinya.
Blog ini akan bercerita banyak tentang integrasi menggunakan bahasa pemrograman Java, dan solusi open-source. Kita juga akan sama-sama belajar bagaimana proses development (khususnya Java) sebaiknya dilakukan, mulai dari penggunaan Maven sebagai project management automation (compile, build, testing, release), penggunaan Spring sebagai framework, ActiveMQ sebagai messaging middleware sampai dengan github untuk repository.
Akhir kata, saya bukan seorang Java expert apalagi integration expert, saya cuma sedang mempelajari bagaimana integrasi diimplementasikan dengan benar dan berbagi di blog ini. Mohon masukan dan koreksinya juga :)
