
Belakangan ini istilah DevOps semakin sering digunakan dalam kaitannya pengembangan layanan hasil teknologi informasi. DevOps sendiri pada dasarnya menyatukan fungsi Development (pengembangan) dan Operations atas layanan teknologi informasi. Dengan konsep ini, layanan-layanan atau produk baru dari teknologi informasi akan lebih cepat diwujudkan, dan akan cepat pula untuk dilakukan pembaruan dengan rilis berikutnya.
DevOps menggabungkan tim dari Developer dan Operations menjadi satu tim, sehingga kerjasama di antara mereka menjadi lebih efektif; juga dalam berkomunikasi dan berintegrasi di antara kedua fungsi tersebut. Dengan DevOps, mereka akan bekerja menyeluruh sepanjang kegiatan pengembangan aplikasi (lifecycle), mulai dari fase development, pengetesan, dan juga deployment ke production (operation).
Bagi organisasi, DevOps akan meningkatkan kemampuannya dalam meluncurkan layanan dan aplikasi dengan lebih cepat; meningkatkan kualitas dan kebaruan produk dibandingkan dengan organisasi yang menggunakan paradigma tradisional dalam mengembangkan aplikasi (perangkat lunak) dan infrastruktur pengoperasiannya. Dengan demikian, organisasi dapat memberikan layanan terbaiknya bagi pelanggan dan mampu berkompetisi dengan lebih efektif di pasar / industri.
Delivery dan Feedback
Secara garis besar, model DevOps pada umumnya membaginya ke dalam 2 hal utama yaitu Delivery dan Feedback. Delivery di sini artinya serangkaian proses sehingga sebuah produk dapat dinikmati oleh pelanggan, yaitu:
- Build
- Test
- Release
Sedangkan Feedback yang dimaksud di sini adalah sebuah upaya berkesinambungan bagi organisasi / perusahaan untuk meningkatkan dan mengembangkan (inovasi) atas layanan yang pernah diluncurkan:
- Monitor
- Plan
Contoh sederhananya adalah layanan platform Gojek. Pada awalnya, hanya beberapa jenis layanan yang diberikan. Namun sejalan dengan demand, evaluasi dan feedback yang didapatkan, Gojek dapat merencanakan (dan akhirnya meluncurkan) layanan lainnya yang lebih lengkap seperti sekarang. Bayangkan jika Gojek harus menunggu semua pengembangan layanannya siap, baru diluncurkan sekaligus ke pasar (pelanggan), bisa jadi akan kehilangan momentum, karena peluangnya diambil oleh kompetitornya.
CI/CD dan DevOps
Continuous Integration (CI) di sini berarti bahwa dalam melakukan pengembangan software, selalu secara rutin melakukan penggabungan source code ke dalam sebuah repository yang terpusat, sehingga dapat dengan mudah ditemukan jika terdapat kekurangan (bugs), sekaligus cepat pula dilakukan perbaikan (bugs fixing).
Sedangkan Continous Delivery, berkaitan dengan otomatisasi proses pembentukan obyek (build), pengetesan, dan juga persiapan sampai release ke production.