M Taufik Nelas DevOps sendiri sebenarnya adalah beberapa set prinsip pengembangan perangkat lunak yang berfokus pada mempercepat proses rilis atau menghantarkan produk secepat mungkin ke konsumen atau user. Dan terus melakukan perbaikan apapun terhadap proses yang dilakukan di step pertama.
Fase ini adalah fase dimana kita berbicara tentang biaya pengembangan produk, perencanaan siapa orang yang terlibat, jadwal kapan produk akan dibuat dan juga kemampuan atau pemahaman yang dibutuhkan dalam membangun produk. >
sangat penting bahwa anggota dan semua setuju dengan pemahaman yang sama. Seperti tim programmer tau butuh apa untuk membuat fitur A dan fitur B. Memilih alat yang tepat untuk membuat produk dan mengerti bagaimana cara menggunakannya. Semakin detail maka akan semakin baik. Skenario SDLC </ >
dan persyaratan selesai dibuat dan disepakati, selanjutnya adalah fase desain. Disini team desainer merancang prototype dan menaruh semua kreatifivas pada kertas mereka. Misalkan jika aplikasi nya facebook maka seperti apa tampilan sign up , sign in , beranda, messeger dan tampilan lainnya. Skenario SDLC </ >
produk atau aplikasi. Fase dimana proses membangun dimulai dan implementasi dilakukan tahap demi tahap sampai produk selesai. Sederhananya pada fase ini coding dimulai ~ Software Development : Skenario SDLC </ >
Tahapan menguji produk atau aplikasi. Pengujian dilakukan mengetes fitur atau rasa pada kue. Apakah fitur yang dibuat yg dibuat sudah sesuai perencanaan awal. Apa rasa kue nya kurang manis atau mungkin kekurangan mentega. Disinilah proses memerika setiap detail desain dan prototype aplikasi. Dan untuk melihat apakah rasa kue kita sudah pas atau belum. Testing : Skenario SDLC </ >
tahap ini produk siap untuk di pamerkan. Dari yang awalnya di buat didapur dan di cicipi oleh tim programmer, QA dan internal timnya. Serta melewati banyak percobaan pengujian untuk menemukan bugs & perbaikan demi perbaikan akhirnya produk siap untuk di taruh di toko. Aplikasi sudah siap untuk mulai digunakan oleh user. Go-live ! Deployment : Skenario SDLC </ >
adalah fase di mana aplikasi atau produk yang telah Go live dipantau dan dipelihara untuk memastikan fungsionalitas dan kualitasnya tidak memburuk. Memastikan rasanya tidak berubah dan kedepan membuat kue yang semakin enak. Maintenance : Skenario SDLC </ >
• Mengembangkan aplikasi dan produk • Mengembangkan aplikasi dan produk • Perbaikan bug • Testing • Code improvement • etc • Monitoring infrastruktur • Monitoring infrastruktur • Maintenance server • Configure and secure infrastructure • Bikin standar infrastruktur • etc Intinya : Melakukan pengembangan fitur aplikasi secepat mungkin agar bisa segera dideliver dan digunakan oleh user. Intinya : Memastikan sistem berjalan dengan normal, sehingga aplikasi yg di deliver bisa terus dapat digunakan dan diakses user tanpa ada gangguan.
Tim Development Tim Operational Tim Development ingin mengembangkan aplikasi dan memperbaiki bug dengan cepat. Artinya akan sering terjadi perubahan pada aplikasi tersebut. Bertolak belakang dengan tim development dimana tim operational tidak ingin sering ada perubahan yang bisa menyebabkan gangguan sistem. “We want to grow the app.” “We want reliable system.”
Programmer bilang code nya jalan di local • Operation bilang di server enggak • Programmer ngecek lagi ternyata lancar jaya • Tapi operation ngerasa config server udah bener Intinya : masalah ini yang bikin delivery produk jadi lambat. Dampak nya perubahan dan fitur pada aplikasi terhambat naik. Sedangkan Cost jalan terus a.k.a DUIT KELUAR BANYAK. • Jadi saling lempar bola masalah.
membuat sistem yang dapat men-deliver aplikasi secepat mungkin namun tetap mampu menjaga stabilitas sistem dan selalu memenuhi standar operasional ? . . _____ How ?
Tim Development Pengen aplikasinya cepat berkembang. Pengen sistem yang stabil dan dapat diandalkan. Fasilitator kebutuhan tim development dan tim operation. Tim Operation Tim DevOps
Banyak komunikasi dengan kedua tim dan memberikan edukasi tentang kultur DevOps • Build >> Deploy >> Testing >> Maintenance aplikasi Tujuan utama : “men-deliver aplikasi secepat mungkin dengan tetap stabilitas sistem dan memenuhi standar operational” Kolaborasi antar tim development dan operation • Desain arsitektur | Infrastruktur | Keamanan Menjaga standar operasional Bikin automasi • CI / CD | Automasi untuk testing QA, automasi backup , etc Monitoring infrastruktur dan aplikasi • Monitor CPU , kapasitas memory & disk , etc
Linux • Menggunakan CLI • Perintah shell • File System Linux • Mengelola layanan OS/Server/Services • Manajemen user & grup • Manipulasi Text • Manajemen aplikasi • Permission file
Delivery Software cepat • Berkurangnya kompleksitas untuk memanage • Resolusi masalah yang lebih cepat • Tim yang lebih produktif dan bahagia • Keterlibatan Tim yang lebih tinggi • Keuntungan Bisnis dan • Berkurangnya cost operational perusahaan • Environment yang lebih stabil • Komunikasi dan kolaborasi yang semakin baik • Waktu untuk berinovasi lebih banyak . . _____
Devops penting adanya? IYA. Bermula dari Covid-19, banyak sekali perusahaan yang melakukan digitalisasi terhadap usahanya. Hal itu dilakukan agar bisa beradaptasi dengan kebutuhan pasar dimana semua produk sudah mulai di digitalisasi di era sekarang ini. Sehingga dibutuhkan banyak DevOps untuk akselerasi digitalisasi ini.
roadmap. sh sebagai petunjuk belajar. 2. Sering baca blog terkait DevOps . misal : https://medium. com/@mtaufiknelas https://tuanpembual.wordpress. com 3. Gabung ke komunitas (Telegram, Discord atau komunitas offline). 4. Memulai mencoba membuat sesuatu dari yg sudah dipelajari. 5. Jangan takut salah. Cobain berulang-ulang. Teliti. 6. Pengan gampang. Join ke https://sekolahdevops. com
. . _____ “DevOps bukan teknologi atau standar. DevOps adalah cara organisasi berkolaborasi dengan lintas tim. DevOps dimulai dengan budaya dan dibantu oleh dorongan tools” – New Relic