DEVOPS (Development Dev and IT operations Ops)
Apa Itu DevOps?
DevOps merupakan singkatan dari dua kata yaitu Development dan Operation. Di mana kedua kata tersebut bermakna menggabungkan proses development/pengembangan dari sebuah sistem/aplikasi dengan operation/operasional. Seperti yang disebutkan sebelumnya, DevOps adalah sebuah prinsip developer untuk mengkoordinasikan antar tim yaitu tim development dengan tim operations dengan efektif dan efisien.
Pola pikir yang dibentuk oleh DevOps adalah koordinasi antar tim yang dapat dilakukan dengan cara singkat sehingga tidak membutuhkan banyak pertanyaan. Tim operation atau development cukup mengonfigurasi beberapa komponen yang dibutuhkan melalui prosedur yang dibuat.
Tools yang Digunakan DevOps
Tools DevOps bisa membantu dalam penyebaran kode, mendeteksi bug, mengatur konfigurasi, dan melakukan monitoring aplikasi dan server secara otomatis sehingga resiko kegagalan bisa diketahui sejak awal. Berikut ini adalah tools pada DevOps :
Kubernetes adalah sistem sumber terbuka untuk mengotomatiskan penerapan, penskalaan, dan pengelolaan aplikasi dalam container. Ini menjadwalkan beban kerja ke node clusterkomputasi dan secara aktif mengelolanya untuk memastikan bahwa statusnya sesuai dengan niat pengguna.
Katalon TestOps
Katalon TestOps adalah platform orkestrasi untuk pengujian otomatis yang menyatukan manajemen pengujian, perencanaan, eksekusi, dan analitik kualitas. TestOps menghubungkan tim dengan loop umpan balik yang instan, dapat ditindaklanjuti, dan berwawasan luas untuk tim QA, produk, dan DevOps.
Docker
The Docker memungkinkan tim DevOps membuat, mengirimkan, dan mengoperasikan aplikasi terdistribusi berbasis container. Platform ini memungkinkan perusahaan untukmengembangkan aplikasi, bertukar gambar kontainer, dan berkolaborasi dengan pengguna dengan memungkinkan mereka membangun program dari komponen.
Katalon Studio adalah alat otomatisasi pengujian kode rendah dan lengkap untuk web, API, seluler, dan desktop (Windows). Ini adalah alternatif populer untuk menggantikan kerangka kerja yang dibuat sendiri,mengurangi waktu yang dihabiskan untuk membuat, menjalankan, memelihara, dan mendapatkan laporan dari pengujian otomatis.
Ranorex Studio adalah alat otomatisasi pengujian untuk menguji aplikasi desktop, web, dan seluler. Ini sederhana untuk digunakan pemula tetapi kuat untuk para ahli, berkat alat tangkap dan putar ulang yang andal, objek UI seret dan lepas, dan modul kode untuk pengujian berbasis kata kunci.
Tujuan DevOps - adalah membangun komunikasi, integrasi, otomatisasi, dan kerja sama yang erat di antara semua orang. Dev Ops memiliki tujuan tersebut agar menghasilkan:
- Adaptasi terhadap pasar dan persaingan dengan cepat
- Menjaga stabilitas dan keandalan sistem
- Menurunkan kendala komunikasi antar tim
- Mempersingkat waktu perbaikan dan pemulihan aplikasi
- Mempercepat waktu delivery product
- Memangkas biaya infrastruktur
- Menghasilkan budaya kerja yang baik
Tugas DevOps
- Membuat ide, mendefinisikan, dan menjelaskan fitur dan kemampuan aplikasi atau sistem yang akan dibangun
- Melakukan otomatisasi dengan alat-alat selama proses pengembangan aplikasi, agar pengembang aplikasi dapat berjalan dengan cepat dan maksimal
- Membuat prototype dari hasil diskusi dengan pelanggan/user agar pengembangan aplikasi sesuai dengan yang diharapkan
- Mendokumentasi progres selama SDLC (siklus pengembangan aplikasi)
- Melacak bug, memonitoring sistem, dan mengelola pengembangan perangkat lunak dengan cepat
- Saling berkomunikasi terkait masalah yang terjadi pada setiap proses development
- Berinovasi dengan cepat tanpa mengorbankan kualitas, stabilitas, dan produktivitas
- Mengidentifikasi masalah sebelum mempengaruhi pengalaman pelanggan/user experience
Itulah tugas-tugas umum dari DevOps engineer. Meski terlihat banyak, tugas-tugas tersebut dapat dilakukan dengan efektif berkat adanya kolaborasi dan komunikasi yang baik antar tim.
Sekarang Anda mengetahui tugas DevOps secara umum. Nah, jika dijelaskan secara lebih rinci, tugas DevOps meliputi:
- Continuous Integration – DevOps engineer akan melakukan testing secara berulang untuk menemukan error dan memperbaiki kode. Jika pada proses ini terdapat error, maka error tersebut akan bisa cepat diketahui dan tertangani oleh tim Developer dan QA.
- Continuous Delivery – Dalam proses ini, tim akan melakukan beberapa pengujian manual untuk menemukan error. Setelah proses pengujian dijalankan, tim akan melakukan lebih banyak pembaharuan dan perbaikan pada aplikasi.
- Configuration Management – Proses ini berkaitan dengan pemeliharaan konfigurasi pada aplikasi. Di mana, tim akan memastikan otomatisasi pada aplikasi dapat berjalan dengan baik dan maksimal;
- Infrastructure as a Code (IAC) – IAC adalah manajemen infrastruktur sebuah aplikasi melalui kode yang dapat diprogram, distandarisasi, dan diduplikasi. Nah, IAC ini berguna agar ketika data aplikasi hilang, tim tidak perlu kesulitan membangun aplikasi dari awal karena IAC akan bisa menyediakan sumber daya, mengembalikan konfigurasi, dan memulihkan data-data lainnya dari cadangan;
- Logging – Tim akan meninjau setiap kejadian dalam sistem, termasuk keberhasilan update dan error. Dari situ, tim akan membuat catatan penting tentang aplikasi secara real-time. Nantinya, data log ini menjadi acuan dan dapat membantu tim Dev Ops memecahkan masalah dengan mengidentifikasi perubahan yang ada.
- Monitoring – Sementara dalam monitoring, tim akan bertugas untuk mendeteksi seluruh hal yang berkaitan pada sistem, termasuk aplikasi dan layanan cloud. Jika ada penyimpangan / anomali, tim akan mencatat dan sesegera mungkin dan memperbaikinya. Proses monitoring juga berguna untuk melihat perubahan kode aplikasi. Apakah kode ini memberikan dampak baik atau tidak. Nah, proses monitoring ini membutuhkan hasil dari logging. Karena jika tidak ada data log, proses monitoring tidak akan berjalan baik karena kekurangan sumber data penting.




