Bagikan melalui


Tradeoff Keunggulan Operasional

Keunggulan Operasional memberikan kualitas beban kerja melalui penerapan standar tim yang jelas, memahami tanggung jawab dan akuntabilitas, perhatian terhadap hasil pelanggan, dan kohesi tim. Implementasi tujuan ini berakar pada DevOps, yang merekomendasikan untuk meminimalkan varian proses, mengurangi kesalahan manusia, dan pada akhirnya meningkatkan pengembalian nilai untuk beban kerja. Nilai itu tidak hanya diukur terhadap persyaratan fungsi yang dilayani oleh komponen beban kerja. Ini juga diukur dengan nilai yang diberikan tim dalam berusaha untuk perbaikan.

Selama fase desain beban kerja dan selama siklus hidupnya, karena langkah-langkah peningkatan berkelanjutan diambil, penting untuk mempertimbangkan bagaimana keputusan berdasarkan prinsip desain Keunggulan Operasional dan rekomendasi dalam daftar periksa Tinjauan desain untuk Keunggulan Operasional dapat memengaruhi tujuan dan pengoptimalan pilar lain. Keputusan tertentu mungkin menguntungkan beberapa pilar tetapi merupakan tradeoff untuk orang lain. Artikel ini menjelaskan contoh tradeoff yang mungkin dihadapi tim beban kerja saat merancang arsitektur dan operasi beban kerja.

Tradeoff Keunggulan Operasional dengan Keandalan

Tradeoff: Peningkatan kompleksitas. Keandalan memprioritaskan kesederhanaan, karena desain sederhana meminimalkan kesalahan konfigurasi dan mengurangi interaksi yang tidak terduga.

  • Strategi penyebaran yang aman sering memerlukan sejumlah kompatibilitas maju dan mundur antara logika aplikasi dan data dalam beban kerja. Kompleksitas tambahan ini meningkatkan beban pengujian dan dapat menyebabkan kompleksitas atau masalah integritas dengan data beban kerja.

  • Infrastruktur yang sangat berlapis, termodulasi, atau berparameter sebagai kode dapat meningkatkan kemungkinan kesalahan konfigurasi yang tidak disengaja karena kompleksitas interaksi antara komponen kode.

  • Pola desain cloud yang menguntungkan operasi terkadang mengharuskan pengenalan komponen tambahan, misalnya, penggunaan penyimpanan konfigurasi eksternal atau koordinasi penyebaran sespan dalam platform aplikasi dalam kontainer. Komponen tambahan meningkatkan titik interaksi dalam sistem, meningkatkan area permukaan untuk kerusakan atau kesalahan konfigurasi.

  • Komponen beban kerja yang dirancang untuk berkembang secara independen untuk mendukung pengembangan tangkas dan hosting memperkenalkan dependensi pada penemuan layanan, atau bahkan DNS sebagai lapisan tidak langsung. Penemuan layanan mungkin tidak memiliki responsivitas untuk berubah, dan kerusakan bisa sulit didiagnosis.

Tradeoff: Peningkatan aktivitas yang berpotensi merusak. Pilar Keandalan mendorong penghindarian aktivitas atau pilihan desain yang dapat merusak sistem dan menyebabkan gangguan, pemadaman, atau kerusakan.

  • Menyebarkan perubahan kecil dan inkremental adalah teknik untuk mengurangi risiko, tetapi perubahan kecil tersebut juga diharapkan untuk dikirimkan ke produksi lebih sering. Penyebaran dapat merusak sistem, sehingga laju penyebaran meningkat, begitu juga risiko ini.

  • Budaya yang mengukur dirinya dengan metrik kecepatan seperti penyebaran per minggu dan menggunakan otomatisasi yang dapat memfasilitasi pengenalan perubahan dengan kecepatan yang lebih cepat juga cenderung melakukan lebih banyak penyebaran dalam waktu yang lebih singkat.

  • Meningkatkan kepadatan untuk menyederhanakan operasi dengan mengurangi jumlah permukaan kontrol dan pengamatan juga dapat menyebabkan peningkatan risiko ketersediaan karena kerusakan atau kesalahan konfigurasi meningkatkan radius dampak peristiwa yang tidak stabil.

Tradeoff Keunggulan Operasional dengan Keamanan

Tradeoff: Peningkatan luas permukaan. Pilar Keamanan merekomendasikan pengurangan area permukaan beban kerja dalam hal komponen dan paparan operasi. Pengurangan ini meminimalkan vektor serangan dan menghasilkan cakupan yang lebih kecil untuk kontrol dan pengujian keamanan.

  • Komponen yang mengelilingi beban kerja dan mendukung operasinya, seperti otomatisasi atau sarana kontrol kustom, juga harus berada dalam cakupan untuk pengerasan dan pengujian keamanan reguler.

  • Operasi rutin, ad hoc, dan darurat meningkatkan titik kontak dengan beban kerja. Pendekatan zero trust mengharuskan proses ini dianggap sebagai vektor serangan dan harus disertakan dalam kontrol keamanan dan validasi untuk beban kerja.

  • Platform pengamatan sistem mengumpulkan log dan metrik tentang beban kerja, yang dapat menjadi sumber pengungkapan informasi yang berharga. Oleh karena itu, keamanan beban kerja perlu diperluas untuk melindungi sink data dari ancaman internal dan eksternal.

  • Membangun agen, konfigurasi eksternal dan penyimpanan pengalih fitur, dan pendekatan penyebaran berdampingan semuanya meningkatkan area permukaan aplikasi yang membutuhkan keamanan.

  • Frekuensi penyebaran yang lebih tinggi yang disebabkan oleh perubahan kecil dan bertambah bertahap atau oleh upaya "dapatkan saat ini, tetap terkini" menghasilkan lebih banyak pengujian keamanan dalam siklus hidup pengembangan perangkat lunak.

Tradeoff: Peningkatan keinginan untuk transparansi. Beban kerja yang aman didasarkan pada desain yang melindungi kerahasiaan data yang mengalir melalui komponen sistem.

Platform pengamatan menyerap data dari semua jenis untuk mendapatkan wawasan tentang kesehatan dan perilaku beban kerja. Saat tim mencoba mencapai keakuratan yang lebih tinggi dalam data pengamatan, ada peningkatan risiko yang dikontrol klasifikasi data, seperti masking data, dari sistem sumber tidak meluas ke log dan sink log platform observabilitas.

Tradeoff: Mengurangi segmentasi. Pendekatan keamanan utama untuk mengisolasi akses dan fungsi adalah merancang strategi segmentasi yang kuat. Desain ini diimplementasikan melalui isolasi sumber daya dan kontrol identitas.

  • Menemukan bersama komponen aplikasi yang berbeda dalam sumber daya komputasi, jaringan, dan data bersama untuk membuat manajemen lebih mudah membalikkan segmentasi atau membuat segmentasi berbasis peran lebih sulit dicapai. Komponen yang terletak bersama mungkin juga perlu berbagi identitas beban kerja, yang dapat menyebabkan penetapan izin yang berlebihan atau kurangnya keterlacakan.

  • Mengumpulkan semua log dari seluruh sistem dalam sink log terpadu dapat mempermudah kueri dan membuat pemberitahuan. Namun, melakukannya juga dapat mempersulit atau tidak mungkin untuk memberikan keamanan berbasis baris untuk memperlakukan data sensitif dengan kontrol audit yang diperlukan.

  • Menyederhanakan pengelolaan keamanan berbasis atribut atau berbasis peran dengan mengurangi granularitas peran dan tugasnya dapat menyebabkan izin yang tidak tepat luas.

Tradeoff Keunggulan Operasional dengan Pengoptimalan Biaya

Pilar Keunggulan Operasional tidak pernah merekomendasikan aktivitas yang mengurangi produktivitas atau membahmankan laba atas investasi beban kerja. Rekomendasi yang tampaknya mengalihkan fokus dari aktivitas pengiriman mempertimbangkan kepentingan terbaik jangka panjang untuk beban kerja dan tim. Jika beban kerja Anda mendekati tanggal matahari terbenam, mungkin tidak masuk akal untuk berinvestasi sangat dalam rekomendasi yang memicu tradeoff ini.

Tradeoff: Peningkatan pengeluaran sumber daya. Pendorong biaya utama untuk beban kerja adalah biaya sumber dayanya. Menyebarkan lebih sedikit sumber daya, sumber daya ukuran yang tepat, dan mengurangi konsumsi umumnya membantu menjaga biaya tetap rendah.

  • Menerapkan praktik penyebaran yang aman, bahkan jika perubahannya relatif kecil, dapat menyebabkan peningkatan jumlah sumber daya yang disebarkan secara bersamaan. Pola-pola ini memerlukan penyebaran beberapa instans bersamaan dari aplikasi atau komponen infrastruktur sehingga lalu lintas dapat digeser dengan cara yang terkontrol. Peningkatan ini lebih jelas dalam beban kerja yang menggunakan pendekatan infrastruktur yang tidak dapat diubah.

  • Tim mungkin perlu memperkenalkan komponen beban kerja tambahan untuk menerapkan pola desain cloud yang selaras secara operasional atau otomatisasi beban kerja. Misalnya, untuk mendukung kelincahan penyebaran, mereka mungkin menambahkan komponen perutean gateway. Untuk mendukung manajemen konfigurasi yang lebih baik, mereka mungkin menambahkan penyimpanan konfigurasi eksternal. Untuk mendukung peristiwa siklus hidup penyewa, mereka mungkin membangun sarana kontrol. Sumber daya ini juga memengaruhi biaya lingkungan praproduksi.

  • Meningkatkan jumlah lingkungan praproduksi untuk meningkatkan pengalaman pengembangan dan pengujian melalui isolasi juga meningkatkan jumlah sumber daya. Sumber daya ini, yang tidak digunakan untuk memberikan pasokan terhadap permintaan produksi, meningkatkan biaya solusi.

  • Meningkatkan paritas lingkungan praproduksi dengan lingkungan produksi, dalam hal jumlah sumber daya, SKU, dan volume data, meningkatkan proses jaminan kualitas. Biaya meningkat seiring meningkatnya paritas.

  • Meskipun data telemetri bukan sumber daya secara langsung, untuk memungkinkan efektivitas platform pengamatan, data ini perlu dipertahankan. Sebagian besar penyimpanan data operasional memiliki harga yang didasarkan pada kombinasi tingkat penyerapan dan volume. Umumnya, karena jumlah telemetri latensi rendah dan keragaman tinggi meningkat, biaya juga meningkat. Untuk penyebaran multi-wilayah, sink data operasional ini diharapkan akan disebarkan per wilayah, sehingga biaya per sumber daya menjadi faktor.

Tradeoff: Penurunan fokus pada aktivitas pengiriman. Anggota tim beban kerja memberikan peningkatan nilai beban kerja dengan melakukan tugas yang selaras dengan kemampuan mereka secara efisien.

  • Tim beban kerja yang menghabiskan waktu untuk membuat dan menyempurnakan struktur dukungan yang sehat dan bertanggung jawab serta respons insiden memberikan layanan yang berharga bagi pengguna beban kerja. Ketika upaya dukungan meningkat (misalnya, rotasi on-call formal), biasanya karena perubahan kekritisan bisnis, biaya aktivitas ini meningkat. Peningkatan biaya ini dapat merupakan hasil dari peningkatan staf atau dapat dikeluarkan secara tidak langsung dalam bentuk perhatian yang bergeser dari aktivitas pengiriman ke fungsi pendukung.

  • Pelatihan adalah bagian penting dari proses peningkatan berkelanjutan pribadi tim beban kerja. Pelatihan ini dapat formal atau diarahkan sendiri selama waktu pengayaan pribadi. Ketika jumlah waktu pelatihan meningkat, jumlah waktu yang tersedia untuk pengembangan langsung beban kerja berkurang. Investasi dalam pelatihan berkurang ketika pelatihan tidak berbasis peran atau secara khusus relevan dengan beban kerja atau masa depannya.

  • Tugas operasional rutin standar untuk melindungi keandalan, keamanan, dan efisiensi performa beban kerja membutuhkan waktu untuk menentukan, memperbaiki, dan melakukan. Waktu ini tidak langsung dihabiskan untuk pengiriman. Beberapa contoh tugas ini adalah analisis dampak perubahan yang komprehensif, proses kontrol perubahan, pengujian menyeluruh, dan peningkatan manajemen patch. Ketika frekuensi, komprehensif, atau beban operasional tugas-tugas ini meningkat, waktu yang diinvestasikan juga meningkat.

Tradeoff: Peningkatan tuntutan dan keragaman perkakas. Pilar Pengoptimalan Biaya merekomendasikan pengurangan perkakas yang terhampar, konsolidasi vendor, dan pendekatan berukuran tepat untuk semua pembelian peralatan.

Tim beban kerja membeli alat dan perangkat keras untuk mendukung aktivitas yang dilakukan selama seluruh siklus hidup pengembangan perangkat lunak (SDLC), termasuk perencanaan dan desain, pengembangan dan pengujian, dan pemantauan. Pasar untuk perkakas di ruang ini semakin berkembang. Alat ditawarkan di berbagai titik harga yang biasanya sesuai dengan fitur dan kemampuan alat. Dengan pengecualian penawaran gratis, alat-alat ini dikenakan biaya lisensi awal, yang mungkin per-seat atau seluruh situs. Mereka sering juga memerlukan kontrak pemeliharaan yang sedang berlangsung. Hubungan vendor baru mungkin perlu dibuat. Berikut adalah beberapa contoh peralatan atau pengeluaran perangkat keras yang diharapkan yang terkait dengan prinsip-prinsip keunggulan operasional:

  • Persyaratan dan manajemen backlog
  • Alat desain arsitektur
  • Alat desain UI/UX
  • Hosting kode dan aset
  • Lingkungan pengembangan kode dan kode rendah
  • Alat automasi
  • Stasiun kerja pengembangan dan jaminan kualitas
  • Alur pengembangan dan penyebaran
  • Menguji eksekusi dan pelacakan
  • Alat pengamatan

Tradeoff Keunggulan Operasional dengan Efisiensi Performa

Tradeoff: Peningkatan pemanfaatan sumber daya. Pilar Efisiensi Performa merekomendasikan alokasi sebanyak mungkin komputasi dan jaringan yang tersedia dengan persyaratan beban kerja.

  • Kerangka kerja pengamatan beban kerja mengharuskan komponen dalam arsitektur mengalokasikan waktu dan sumber daya untuk membuat, mengumpulkan, dan mengalirkan log dan metrik. Poin data ini membantu memastikan bahwa pemberitahuan dan pemantauan yang efektif dimungkinkan untuk keandalan, keamanan, dan performa. Ketika tingkat instrumentasi meningkat, ketahanan pada sumber daya sistem juga dapat meningkat.

  • Beberapa model penyebaran, seperti penyebaran biru/hijau, yang mungkin digunakan beban kerja untuk penyebaran yang aman, mungkin memperkenalkan penyebaran berdampingan pada platform aplikasi produksi. Penyebaran ini memerlukan penskalaan preemptive untuk menyediakan pasokan yang cukup untuk memenuhi permintaan di masa mendatang, atau membiarkan sebagian besar penyebaran tidak aktif di tempat untuk jangka waktu tertentu untuk mendukung pemutaran kembali.

Tradeoff: Peningkatan latensi. Untuk membuat beban kerja yang berkinerja, tim mencari cara untuk mengurangi waktu dan sumber daya yang digunakan beban kerja untuk melakukan tugas mereka.

  • Banyak model penyebaran memerlukan penggunaan pola akses perutean gateway, yang dapat memperkenalkan latensi. Latensi ini bertentangan dengan anggaran target performa untuk alur terkait.

  • Beberapa pola desain cloud yang mendukung pendekatan "perubahan independen dari waktu ke waktu" untuk mendukung cita-cita peningkatan inkremental dapat memperkenalkan latensi karena traversal komponen tambahan. Latensi ini dapat diperkenalkan oleh gateway, broker olahpesan, atau lapisan antikorupsi.

Jelajahi tradeoff untuk pilar lain: