Kejuruteraan pelepasan sering dikelirukan dengan DevOps. Ada alasan yang baik. Peranan dan tanggungjawab sering bertindih. DevOps boleh dianggap sebagai superset kejuruteraan pelepasan.
Lepaskan Kejuruteraan
Rilis kejuruteraan adalah disiplin yang menumpukan pada penggunaan perisian. Ia berusaha untuk membuat perisian yang lebih berkualiti dengan kadar yang boleh dipercayai dan dapat diramalkan. Amanatnya adalah untuk memperbaiki pembangunan perisian dan melepaskan saluran paip. Berikut adalah beberapa perkara yang ditekankan oleh kejuruteraan pelepasan:
- Mengimplementasikan Kawalan Versi - Kejuruteraan pelepasan cuba menambahkan kebolehkesanan dan kebolehpercayaan pada kod. Jadi kod tersebut dikekalkan di repositori kawalan versi seperti Git, SVN, Perforce, dll. Pasukan pembangunan menggunakan sistem kawalan versi ini untuk mengesan evolusi kod dengan lebih baik.
- Automated Build and Release Pipeline - Release engineering berkonsentrasi untuk mencari alat automasi untuk meningkatkan kelajuan dan kebolehpercayaan proses pelepasan. Dari komoditi pertama menjadi kawalan versi hingga produk akhir yang sampai ke pelanggan, teknik pelepasan terus meningkatkan prosesnya. Integrasi berterusan dan penyampaian berterusan (CI / CD) memainkan peranan penting dalam sistem binaan / pelepasan automatik moden.
- Pengurusan Konfigurasi - Semasa kod perisian bergerak melalui pelbagai kitaran pengembangan, pengujian, pementasan, dan produksi, pengurusan konfigurasi memastikan atribut produk konsisten sepanjang kitaran hayat perisian.
- Pengeluaran dan Penerapan - Setiap perisian yang diserahkan kepada pelanggan dalam persekitaran pengeluaran perlu terikat erat dengan asalnya. Oleh itu, jika ada masalah, perniagaan dapat menjabarkannya kembali ke sumbernya.
DevOps
DevOps mempunyai mandat yang lebih luas. Ia bertumpu pada mewujudkan kolaborasi lintas fungsi antara pasukan.
Pada masa lalu, pasukan pembangunan dan pasukan operasi bekerja di silo mereka sendiri. Ketika pasukan pengembangan menggunakan kod mereka dalam produksi, akan ada perbincangan hangat tentang siapa yang akan bertanggung jawab atas masalah produksi. Juga, pasukan pengembangan menginginkan fitur terbaru dan paling keren digunakan, sementara pasukan operasi ingin menjauhkan diri dari mengambil risiko. Ini menyebabkan konflik berterusan antara kedua-dua kumpulan.
Tujuan amalan DevOps adalah untuk mendekatkan pembangunan dan operasi. Berikut adalah beberapa perkara yang ditumpukan oleh DevOps:
- Penyediaan dan Penyediaan Infrastruktur - Secara tradisinya, jabatan IT merancang dan menyediakan infrastruktur. Falsafah DevOps mendorong pendekatan yang lebih berpusat pada pemaju. Saluran paip dibuat untuk memudahkan proses pembangunan melalui pelbagai peringkat dan kitaran tanpa gesekan. Pembangun mempunyai lebih banyak tanggungjawab untuk bagaimana aplikasi mereka berkelakuan dalam pengeluaran.
- Pengurusan Konfigurasi - Pasukan DevOps mengambil pandangan pengurusan konfigurasi yang lebih luas. Walaupun kejuruteraan pelepasan mungkin menggunakannya untuk produk perisian sahaja, amalan DevOps mencari cara untuk melaksanakan pengurusan konfigurasi ke setiap aspek organisasi. Tujuannya adalah untuk membantu seluruh organisasi menjalankan operasi yang lebih lancar melalui automasi.
- CI / CD - Integrasi berterusan dan penyampaian berterusan merupakan sebahagian besar dari falsafah DevOps. Amalan DevOps yang matang menggunakan CI / CD untuk mengautomasikan tugas IT tradisional dengan menggunakan infrastruktur sebagai kod.
- Pemantauan dan Penambahbaikan Organisasi - Amalan DevOps menekankan pengumpulan data mengenai proses untuk dianalisis dan diperbaiki. Oleh itu, mengumpulkan data, mengubahnya menjadi kepintaran yang dapat ditindaklanjuti dan menggunakannya untuk memperbaiki proses semasa adalah tanggungjawab DevOps yang penting.
Kesimpulannya
Kerana persimpangan masalah peningkatan proses perisian, kejuruteraan pelepasan sering dikelirukan dengan DevOps. Tetapi DevOps mempunyai skop yang lebih besar. Walaupun kejuruteraan pelepasan dapat hidup sebagai jabatan yang terpisah, DevOps memerlukan lebih banyak penyatuan dengan aliran kerja keseluruhan organisasi. Lebih mudah untuk membuat latihan teknik pelepasan kerana langkah-langkahnya adalah konkrit. DevOps memerlukan pemahaman mengenai tingkah laku organisasi, budaya kerja, dan infrastruktur. DevOps yang berjaya bukan hanya untuk produk, tetapi untuk keseluruhan organisasi.
Sambung belajar
Menuju Definisi Kejuruteraan Pelepasan dan DevOps