Model kematangan ini membawa Anda dalam perjalanan dari kesadaran biaya dasar hingga penguasaan pengoptimalan tingkat lanjut.
Dimulai dengan praktik dasar seperti transparansi dan akuntabilitas, Anda akan secara bertahap membangun kemampuan canggih termasuk analisis sistematis, wawasan berbasis pengguna, pembelajaran produksi, dan teknik efisiensi yang pada akhirnya canggih. Perkembangan dirancang untuk mengubah pendekatan Anda dari sekadar bereaksi terhadap kejutan biaya hingga secara proaktif membentuk hasil keuangan yang selaras dengan tujuan bisnis Anda.
Model ini disusun menjadi lima tingkat kematangan yang berbeda, masing-masing dengan tujuan utama dan serangkaian strategi inti. Gunakan tampilan bertab di bawah ini untuk menjelajahi setiap tingkat. Pastikan juga untuk meninjau kompromi yang disorot dan risiko terkait dengan seiring kemajuan Anda.
Buat akuntabilitas tim dan proses dasar untuk mengelola biaya beban kerja sepanjang siklus hidupnya.
Model kematangan tingkat 1 membantu tim beban kerja memahami anggaran mereka dan menyiapkan proses dan alat untuk mengelola biaya mereka selama siklus hidup beban kerja. Sebelum menyiapkan proses yang lebih matang, seperti membangun model biaya, Anda harus fokus pada praktik terbaik manajemen biaya dasar untuk memulai beban kerja Anda tanpa menyebabkan masalah dengan anggaran.
Rekomendasi berikut dapat membantu Anda mengelola biaya dengan bijak sambil membangun beban kerja Anda secara efisien.
Strategi utama
✓ Bagikan tujuan keuangan, detail anggaran, dan pengeluaran beban kerja dengan semua anggota tim, manajer, dan pembuat keputusan
Berikan informasi terperinci kepada pemangku kepentingan tentang anggaran yang dialokasikan, perincian biaya, dan tujuan keuangan untuk beban kerja Anda. Bagikan wawasan terperinci tentang berbagai pengeluaran, seperti biaya infrastruktur, lisensi perangkat lunak, dan biaya operasional. Praktik ini tidak sering dipikirkan tetapi penting. Ini membantu membangun kepercayaan antara tim beban kerja dan tim kepemimpinan dan menunjukkan bahwa tim beban kerja berpikir ke depan tentang mengelola pengeluaran. Kolaborasi ini juga membantu memotivasi tim beban kerja untuk tetap rajin dalam manajemen biaya mereka karena komitmen mereka terhadap tim kepemimpinan.
Gunakan alat kolaborasi untuk mendorong anggota tim berbagi ide dan wawasan pengoptimalan biaya. Berikan mekanisme bagi tim untuk berkolaborasi dalam ide dan wawasan mereka. Pendekatan ini memberdayakan anggota tim untuk menawarkan saran di semua disiplin ilmu tim beban kerja. Ketika Anda menumbuhkan budaya kolaborasi pada pengoptimalan biaya, Anda memperkuat pola pikir yang mengelola biaya beban kerja bergantung pada setiap anggota tim secara merata.
Untuk memotivasi pola pikir pengoptimalan biaya, pertimbangkan untuk mengakui individu dan tim yang menunjukkan tanggung jawab keuangan dan berkontribusi pada pengoptimalan biaya. Anda dapat menggunakan evaluasi performa, insentif, atau program pengenalan lainnya.
✓ Mengumpulkan data biaya terperinci dari semua sumber, termasuk data yang ditagih dan diukur
Data yang ditagihkan mewakili jumlah yang ditagih sebenarnya, dan data terukur bersifat prediktif berdasarkan rencana penagihan. Untuk mendapatkan gambaran lengkap tentang biaya beban kerja Anda, jelajahi semua alat dan metode yang tersedia yang ditawarkan penyedia layanan Anda. Tagihan bulanan mungkin tidak memberikan detail yang cukup kepada pemangku kepentingan tentang pengeluaran. Mengumpulkan data untuk menghemat waktu dalam menyelidiki biaya yang tidak jelas dan menjelaskan istilah yang ambigu. Setelah Anda mengumpulkan data penggunaan, pusatkan data tersebut ke dalam sistem terpadu.
Manfaatkan dasbor penagihan yang memiliki filter untuk tampilan yang berbeda. Pemangku kepentingan dan anggota tim beban kerja dapat menggunakan filter untuk dengan mudah melihat informasi yang paling relevan bagi mereka.
✓ Menentukan faktor biaya
Untuk mengidentifikasi bagaimana komponen beban kerja yang berbeda berkontribusi pada biaya keseluruhan, gunakan alat yang Anda adopsi untuk mengumpulkan data penagihan. Beri perhatian khusus pada biaya yang terkait dengan proses, seperti transfer data atau transaksi, dan bagaimana mereka berkontribusi pada biaya keseluruhan. Biaya ini sering diabaikan selama estimasi biaya sumber daya awal sebelum penyebaran.
Anda juga harus memahami bagaimana faktor-faktor yang tidak terkait langsung dengan sumber daya cloud Anda dapat memengaruhi anggaran Anda. Faktor-faktor ini dapat mencakup pelatihan untuk anggota tim dan lisensi perangkat lunak yang tidak dikelola penyedia cloud Anda.
✓ Memutuskan apakah akan membangun atau membeli
Salah satu keputusan pertama yang perlu dibuat tim beban kerja adalah apakah mereka harus menggunakan solusi off-the-shelf atau membangun solusi secara internal. Umumnya, Well-Architected Framework mendukung hal-hal yang sederhana. Menggunakan solusi siap pakai mengikuti filosofi itu. Solusi yang didukung dengan baik meringankan tim beban operasional Anda dan mengurangi waktu yang diperlukan untuk pengembangan sehingga pengembang dapat fokus pada fungsionalitas inti aplikasi sebagai gantinya.
Trade-off: Pertimbangkan biaya saat Anda memutuskan apakah akan membangun atau membeli solusi. Membangun solusi secara internal biasanya berarti investasi di muka untuk waktu pengembangan dan sumber daya apa pun yang diperlukan untuk menyelesaikan pengembangan. Tetapi Anda memiliki lebih sedikit biaya berulang karena Anda tidak perlu mempertahankan kontrak atau lisensi dukungan.
Untuk membantu Anda membuat keputusan yang tepat bagi tim Anda, evaluasi poin-poin berikut.
-
Tingkat kontrol yang diinginkan: Tentukan berapa banyak kontrol yang Anda butuhkan atas fungsionalitas solusi.
-
Jumlah kustomisasi yang diperlukan: Tentukan tingkat penyesuaian yang sesuai untuk beban kerja Anda yang berkembang.
-
Waktu yang diharapkan untuk meluncurkan ke pasar: Pahami harapan pemangku kepentingan untuk membawa beban kerja Anda ke pasar dan bagaimana Anda dapat memenuhi jadwal tersebut dengan sebaik-baiknya.
-
Keahlian teknis yang diperlukan: Tentukan berapa banyak keahlian yang perlu Anda pertahankan untuk membangun dan mengoperasikan solusi.
-
Beban operasional yang diharapkan: Perkirakan berapa banyak waktu dan upaya yang dibutuhkan tim operasi untuk mendukung solusi.
Evaluasi ini membantu Anda memahami total biaya setiap opsi sehingga Anda dapat menimbangnya satu sama lain. Total biaya mungkin bukan satu-satu faktor penentu. Tetapi jika opsi memiliki perbedaan yang signifikan, pilih opsi biaya yang lebih rendah untuk mempercepat pengembangan beban kerja Anda.
✓ Berinvestasi dalam keterampilan tim Anda
Berinvestasi dalam peningkatan keterampilan di bidang yang tim Anda kurang pengetahuan. Keterampilan cloud yang kuat memfasilitasi pengambilan keputusan jangka panjang yang baik dan mengoptimalkan produktivitas harian Anda. Pertimbangkan pelatihan atau sertifikasi yang ditawarkan penyedia cloud atau mitra Anda lainnya. Meningkatkan produktivitas tim beban kerja Anda dan pembuat keputusan lainnya menghemat waktu dan uang Anda dengan meminimalkan kesalahan yang mahal.
Buat analisis dan pelaporan biaya sistematis untuk memahami pola pengeluaran.
Setelah penyebaran awal, umumnya untuk fokus pada pengembangan fitur baru dan mendorong penjualan sambil mengabaikan manajemen biaya. Pada Tingkat 2, pengeluaran diperkirakan akan meningkat, jadi Anda perlu mengambil pendekatan terstruktur. Menilai biaya alat dan teknologi, membangun garis besar, dan mengidentifikasi pendorong biaya utama.
Manajemen biaya mungkin tampak luar biasa, tetapi analisis biaya sistematis pada tahap awal diperlukan untuk menjaga kontrol keuangan dan mendukung pertumbuhan.
Strategi utama
✓ Mengembangkan model biaya dasar
Model biaya adalah perkiraan biaya keseluruhan beban kerja. Biaya dipecah oleh faktor-faktor berkontribusi, seperti layanan platform, penyimpanan data, alur pengguna dan sistem, dan operasi. Minimal, Anda harus melakukan analisis biaya sistematis dan membuat model biaya dasar. Latihan ini membantu Anda membuat keputusan berdasarkan informasi tentang alokasi dan pengoptimalan sumber daya.
Buat inventaris semua sumber daya Azure dan tentukan aspek mana dari setiap sumber daya yang menghasilkan biaya yang lebih tinggi.
Ajukan pertanyaan tentang pilihan teknologi dan keselarasannya dengan tujuan seperti skalabilitas dan keandalan dalam batasan biaya. Untuk setiap sumber daya, perhatikan biaya dan tentukan apakah biaya terlalu tinggi atau terlalu rendah. Pertimbangkan beban yang diharapkan dengan memperhatikan potensi pertumbuhan.
Perhatikan biaya alur dan bedakan antara aliran kritis dan noncritical. Prioritaskan alur penting, seperti pengalaman pengguna dalam aplikasi e-niaga, melalui alur noncritik, seperti pekerjaan latar belakang untuk tujuan audit.
Hitung biaya penyimpanan data dan pola akses data.
✓ Membuat laporan biaya
Buat laporan biaya dasar untuk visibilitas keuangan dan analisis pola biaya. Selain itu, siapkan pemberitahuan biaya saat Anda melebihi jumlah pengeluaran tertentu.
Kami menyarankan agar Anda menggunakan Microsoft Cost Management untuk menganalisis, memantau, dan mengontrol pengeluaran Anda untuk layanan. Jika opsi tersebut tidak tersedia untuk Anda, buat sistem untuk melacak konsumsi dan menghasilkan laporan bulanan.
✓ Menyiapkan akuntabilitas
Akuntabilitas tidak dapat dinegosiasikan untuk manajemen biaya. Pada tahap awal, tetapkan anggota tim untuk meninjau anggaran dan laporan biaya setiap bulan dan untuk memberi tahu tim lonjakan yang tidak terduga. Orang yang bertanggung jawab harus mengevaluasi pengeluaran beban kerja dan memandu tim yang sesuai.
Awalnya, akuntabilitas dapat fleksibel. Saat startup matang, terapkan kontrol yang lebih ketat.
✓ Mengevaluasi peluang pengoptimalan
Model biaya Anda harus memberi Anda pemahaman yang baik tentang driver biaya utama, dan laporan biaya harus memberikan bukti. Evaluasi driver tersebut dan jelajahi peluang untuk mengoptimalkan. Pertimbangkan strategi berikut:
Evaluasi model penagihan untuk setiap sumber daya Azure yang digunakan beban kerja. Tentukan apakah Anda memerlukan semua fitur yang dibundel setiap paket. Misalnya, jika Anda memerlukan fitur tertentu seperti titik akhir privat dengan Azure Front Door, Anda mungkin memerlukan paket premium. Jika tidak, pertimbangkan untuk memilih paket yang lebih rendah untuk menghemat biaya.
Pilih antara penagihan berbasis konsumsi dan penagihan berbasis komitmen. Kami menyarankan agar Anda mulai dengan penagihan berbasis konsumsi sehingga Anda dapat memahami biaya yang dikeluarkan. Jika beban konsisten, Anda dapat menjelajahi diskon yang disediakan Azure untuk beban yang konsisten di tahap selanjutnya.
Mengevaluasi praktik pengkodean. Gunakan instrumentasi kode untuk mengidentifikasi proses yang mahal untuk dijalankan dan memberikan wawasan tentang masalah performa, yang dapat dikenakan biaya yang tidak perlu. Kumpulkan metrik seperti durasi proses dan tingkat kegagalan untuk membuat keputusan berbasis data untuk pengoptimalan di masa mendatang.
✓ Memutuskan strategi penskalakan awal
Perluasan skala lebih disukai karena lebih hemat biaya dan lebih mudah diterapkan dibandingkan dengan peningkatan skala. Peningkatan skala melibatkan waktu henti dan biaya yang lebih tinggi.
Pertimbangkan pengujian dan metrik performa, dan peluasan skala atau peningkatan skala berdasarkan evaluasi Anda.
Menggabungkan umpan balik pengguna dan sinyal operasional untuk menyempurnakan strategi pengoptimalan biaya.
Pada tahap awal pengembangan dan operasi beban kerja, Anda mungkin mengandalkan perulangan umpan balik pengembangan internal untuk mengoptimalkan beban kerja Anda. Pada tingkat kematangan ini, penting untuk memperluas perulangan umpan balik Anda untuk menyertakan pengguna internal dan eksternal, serta pemangku kepentingan lainnya. Saat Anda membuat penyempurnaan pengoptimalan biaya pada beban kerja Anda, Anda juga perlu mempertimbangkan trade-off dengan pilar lain, terutama pilar Efisiensi Performa dan Keandalan.
Tingkat 3 pilar Pengoptimalan Biaya berfokus pada persiapan beban kerja Anda untuk produksi dengan mengintegrasikan umpan balik internal dan eksternal ke dalam strategi Anda sambil memastikan bahwa target performa dan keandalan terpenuhi.
Strategi utama
✓ Berinvestasi dalam aliran yang berdampak dan menyempurnakan alur lain
Pertimbangkan prioritas yang ditetapkan ke alur aplikasi Anda. Prioritaskan upaya pengembangan pada alur penting sambil Anda mencari cara untuk menyederhanakan dan mengurangi biaya aliran non-kritis. Alur non-kritis mungkin memiliki persyaratan keandalan yang kurang ketat. Akibatnya, Anda mungkin dapat menyederhanakan desainnya.
Untuk setiap alur, hilangkan elemen yang tidak perlu, pilih tingkat performa yang sesuai, sesuaikan pengaturan penskalaan untuk permintaan variabel, dan sesuaikan konfigurasi agar selaras dengan kebutuhan performa dan anggaran. Pantau alur untuk mengidentifikasi inefisiensi seperti instans komputasi diam, data yang tidak digunakan, dan bandwidth jaringan rendah. Gunakan alat pengelogan dan analisis asli untuk membantu mengagregasi dan menganalisis metrik ini untuk tren.
✓ Menerapkan pagar pembatas biaya dengan menggunakan pemberitahuan
Buat ambang pengeluaran dan pemberitahuan terkait untuk memberlakukan pagar pembatas biaya. Pendekatan ini memastikan bahwa beban kerja tetap sesuai anggaran. Contoh pemberitahuan mencakup jenis berikut:
Pemberitahuan anggaran memungkinkan Anda menetapkan ambang batas pengeluaran, memantau biaya, dan menerima pemberitahuan untuk membantu mengontrol pengeluaran dan tetap mendapatkan informasi.
Pemberitahuan anomali biaya memberi tahu Anda tentang variasi biaya tak terduga. Mereka memungkinkan Anda untuk menyelidiki dan mengatasi inefisiensi atau pola pengeluaran abnormal.
Pemberitahuan penggunaan paket berbasis komitmen membantu Anda memantau dan mengoptimalkan penggunaan sumber daya berbasis komitmen Anda dengan memberi tahu pemangku kepentingan saat penggunaan turun di bawah ambang yang diinginkan.
✓ Mengembangkan strategi untuk mengoptimalkan penggunaan sumber daya Anda
Saat Anda membangun lingkungan nonproduksi dan produksi, Anda mungkin secara tidak sengaja menyebarkan sumber daya yang dipasang berlebihan. Seiring waktu, Anda mungkin mengumpulkan sumber daya yang disebarkan untuk bukti konsep (PoC) atau untuk pengujian yang tidak lagi diperlukan. Mengembangkan strategi untuk mengidentifikasi sumber daya yang kurang digunakan dan tidak digunakan sangat penting untuk peningkatan berkelanjutan dalam mempertahankan lingkungan cloud yang dioptimalkan. Pertimbangkan rekomendasi berikut:
Gunakan jenis sumber daya dan SKU yang benar untuk setiap lingkungan. Teliti opsi infrastruktur yang disediakan platform cloud Anda dan pilih jenis sumber daya dan SKU yang sesuai untuk setiap kasus penggunaan. Seringkali ada jenis sumber daya dan SKU tertentu yang ditargetkan khusus untuk lingkungan PoC dan dev/test. Jenis sumber daya dan SKU ini jauh lebih murah daripada sumber daya standar atau berkinerja tinggi, tetapi Anda tidak dapat menggunakannya untuk beban kerja produksi.
Konfigurasikan dan terapkan kebijakan untuk membatasi jenis sumber daya, SKU, wilayah, dan izin penyebaran untuk pengguna. Kebijakan otomatis membantu mengelola perubahan lingkungan. Proses ini mengurangi risiko penyebaran yang tidak sah.
Standarkan dengan menggunakan infrastruktur sebagai kode untuk semua perubahan lingkungan. Pendekatan ini membantu menegakkan kebijakan perubahan lingkungan Anda dan menyederhanakan praktik operasi Anda untuk mengurangi risiko kesalahan manusia.
Pantau metrik penggunaan seperti CPU, memori, dan penyimpanan untuk membantu menentukan apakah sumber daya kurang digunakan dan dapat diturunkan skalanya.
Tinjau lingkungan nonproduksi dan produksi untuk sumber daya yang tidak digunakan yang dapat dimatikan atau dihapus dengan aman.
Manfaatkan alat yang disediakan platform cloud Anda untuk membantu mengidentifikasi pengoptimalan sumber daya. Misalnya, Azure Advisor memberikan rekomendasi pengoptimalan biaya yang mengidentifikasi potensi inefisiensi dan menyarankan langkah-langkah untuk mengatasinya.
Trade-off: Pertimbangkan target performa dan keandalan saat Anda menyesuaikan sumber daya Anda. Terlibat dengan pemangku kepentingan ketika kompromi dapat membantu menyeimbangkan performa, keandalan, dan biaya, atau ketika batasan anggaran menghambat peningkatan beban kerja.
✓ Mengoptimalkan lisensi dan biaya statis lainnya
Saat Anda menyebarkan sumber daya cloud, ambil pendekatan strategis untuk membeli lisensi dan biaya bulanan tetap lainnya. Biaya ini termasuk lisensi server dan database, lisensi perangkat lunak, dan reservasi yang telah dibeli sebelumnya. Pertimbangkan strategi penghematan biaya berikut:
Opsi evaluasi, seperti Azure Hybrid Benefit, untuk menerapkan lisensi yang ada ke sistem yang Anda migrasikan ke cloud atau untuk pengembangan baru di cloud. Teliti lisensi volume atau perjanjian perusahaan apa pun yang dikelola organisasi Anda untuk memanfaatkan kemungkinan penghematan biaya pada sumber daya cloud atau lisensi perangkat lunak.
Gunakan lisensi nonproduksi dan dev/test untuk sistem yang berlaku, seperti lisensi dev/test dari Visual Studio.
Pertimbangkan untuk membeli kapasitas sumber daya cloud di muka ketika praktis. Mempertahankan kapasitas dapat secara signifikan mengurangi biaya penggunaan bulanan Anda dan membantu mempertahankan pengeluaran yang lebih konsisten.
Risiko: Saat membeli reservasi, pastikan Anda memilih model yang paling hemat biaya untuk kasus penggunaan Anda. Misalnya, jika sumber daya dapat diturunkan skalanya per malam atau musiman, mungkin lebih hemat biaya untuk menyesuaikan penskalaannya secara cerdas. Selain itu, identifikasi SKU yang benar untuk dibeli sebelumnya melalui pengujian dasar dan perencanaan kapasitas.
✓ Menyempurnakan kebijakan autoscaling
Kebijakan penskalakan awal Anda mungkin didasarkan pada perulangan umpan balik pengembangan internal Anda. Kebijakan ini berfokus pada penyesuaian skala untuk memenuhi kebutuhan pengembangan. Seiring berkembangnya beban kerja Anda, masukkan umpan balik pengguna internal dan eksternal untuk memastikan bahwa performa tetap dalam rentang yang dapat diterima.
Sesuaikan ambang penskalaan dan perkenalkan periode pendinginan untuk mengurangi lonjakan beban sementara. Terus memantau dan menyempurnakan sistem untuk mengoptimalkan biaya dan memenuhi persyaratan. Tentukan unit skala yang akan digunakan ke depan. Unit-unit ini bergantung pada faktor-faktor seperti desain beban kerja, kasus penggunaan, komponen, alur, dan persyaratan bisnis.
Misalnya, untuk beban kerja yang penting bagi misi, satu unit skala mungkin berupa seluruh tanda penyebaran. Atau, untuk beban kerja yang lebih sederhana yang memiliki alur non-kritis, unit skala mungkin didasarkan pada jumlah instans komputasi SKU tertentu yang dialokasikan untuk beban kerja. Pilih unit skala yang memungkinkan beban kerja menangani peningkatan beban yang diharapkan tanpa kapasitas yang terbuang. Perbarui model biaya Anda untuk menyertakan perkiraan kebutuhan penskalaan.
✓ Optimalkan aset data Anda
Data adalah pendorong utama biaya cloud. Manajemen data yang tepat dapat membantu Anda menjaga biaya tetap konsisten dan sesuai anggaran. Gunakan strategi berikut untuk mengelola data estate Anda:
Klasifikasikan dan beri label data untuk menerapkan kontrol yang sesuai dan menentukan tingkat keandalan dan performa yang sesuai untuk berbagai jenis dan penyimpanan data.
Tangkap hanya data penting, kompresi data untuk penyimpanan yang lebih dingin, dan hapus data yang tidak diperlukan dengan menggunakan kebijakan retensi yang tepat. Deduplikasi data untuk menghilangkan data berlebihan dan mendidik pengguna tentang praktik penyimpanan data yang efisien.
Optimalkan pencadangan dengan menggunakan cadangan bertambah bertahap, mengaktifkan kompresi, dan memindahkan cadangan lama ke penyimpanan dingin.
Optimalkan replikasi dengan menerapkan model replikasi yang sesuai, baik sinkron atau asinkron, untuk mengoptimalkan replikasi berdasarkan kebutuhan Anda. Sesuaikan frekuensi replikasi agar selaras dengan kebutuhan spesifik Anda. Terus mengevaluasi kebutuhan dan konfigurasi Anda.
Masukkan umpan balik internal dan eksternal untuk meninjau pola akses penyimpanan dan menyesuaikan strategi manajemen siklus hidup data Anda.
Gunakan alat untuk membantu mengoptimalkan kueri.
Trade-off: Bandingkan kebijakan pencadangan dan replikasi Anda dengan target-target pemulihan Anda. Replikasi yang lebih jarang atau membongkar cadangan lama ke penyimpanan dingin dapat memengaruhi waktu pemulihan Anda, jadi berhati-hatilah untuk menerapkan pengoptimalan ini.
✓ Mengoptimalkan kode, praktik pengembangan perangkat lunak, dan strategi pengembangan fitur
Kode yang tidak efisien dapat menurunkan performa sistem. Ketidakefisienan ini dapat mengakibatkan biaya yang lebih tinggi untuk penggunaan sumber daya. Mengoptimalkan kode Anda dapat meningkatkan efisiensi dan memungkinkan beban kerja Anda menangani lebih banyak beban tanpa perlu meningkatkan skala sumber daya Anda. Gunakan strategi berikut untuk mengoptimalkan kode Anda:
Analisis data runtime dan ukur performa dengan menggunakan alat pembuatan profil.
Mengevaluasi logika bisnis dan efeknya pada pengalaman pengguna.
Tinjau rekomendasi performa khusus bahasa.
Hapus panggilan fungsi yang tidak perlu, minimalkan pengelogan, dan perbaiki perulangan dan kondisional.
Kurangi pemrosesan data, minimalkan permintaan jaringan dan alokasi memori, serta nilai implementasi lintas sektor.
Gunakan metode berikut untuk mengoptimalkan jalur jaringan:
Minimalkan transfer data antar komponen dan di seluruh wilayah geo-jauh dengan menganalisis dan menghilangkan transfer yang tidak perlu. Pastikan bahwa hanya bidang data yang diperlukan yang dikirim dan bukan seluruh objek atau struktur data. Pendekatan ini mengurangi ukuran dan frekuensi transfer data.
Hindari mentransfer data berlebihan dengan hanya mengirim informasi penting.
Refaktor kode Anda untuk mengurangi permintaan berulang dan mengelompokkannya jika memungkinkan.
Menyederhanakan praktik pengembangan meningkatkan kecepatan build. Pendekatan ini membantu tim beban kerja menghemat waktu yang berharga dan secara efisien memberikan peningkatan pada produksi. Gunakan strategi berikut untuk menyederhanakan praktik pengembangan:
Percepat waktu build dengan mengoptimalkan konfigurasi, menghilangkan langkah dan proses yang tidak perlu, mem-paralelkan tugas, menggunakan cache, dan mengaktifkan build bertahap untuk mencegah kompilasi redundan.
Gunakan tiruan produksi untuk mengoptimalkan pengujian. Mocking produksi memungkinkan pengembang memfokuskan pengujian pada simulasi skenario yang tidak dapat dipraktikkan di lingkungan produksi.
Optimalkan praktik perencanaan pengembangan dengan menentukan tujuan dan metrik yang jelas, menggunakan alat pemantauan untuk melacak indikator performa utama, dan memprioritaskan wawasan yang dapat ditindaklanjuti.
Gunakan alat bantuan pengodian AI, seperti GitHub Copilot, untuk mengurangi waktu pengembangan saat praktis.
Evaluasi strategi pengembangan fitur Anda untuk memastikan bahwa fitur berharga diprioritaskan. Masukkan umpan balik dari pengguna internal dan eksternal dan pemangku kepentingan untuk mengidentifikasi fitur yang paling meningkatkan kepuasan pengguna dan mendorong keterlibatan yang lebih tinggi. Dalam beberapa skenario, fitur mungkin dirancang khusus untuk mengoptimalkan biaya. Bandingkan fitur-fitur ini dengan prioritas fungsi untuk menilai nilai relatifnya.
Mendorong pengoptimalan biaya yang ditargetkan dengan menggunakan data operasional dari produksi.
Tahap Tingkat 4 dari model kematangan mengasumsikan bahwa Anda telah dideploy ke produksi dan telah mengoperasikan beban kerja Anda untuk waktu yang cukup guna mengumpulkan informasi berguna tentang operasi normalnya. Pada tingkat ini, terapkan wawasan produksi ini ke lingkungan Anda.
Perubahan di lingkungan produksi Anda secara langsung memengaruhi aspek lain dari beban kerja Anda. Misalnya, penyempurnaan hemat biaya dapat memengaruhi satu atau beberapa pilar Well-Architected Framework lainnya. Untuk alasan ini, praktik manajemen perubahan yang matang sangat penting. Saat Anda melakukan penyesuaian penghematan biaya pada beban kerja Anda, tinjau dan uji perubahan secara menyeluruh dan kembangkan rencana putar kembali untuk mengurangi dampak performa, keamanan, dan keandalan.
Strategi utama
✓ Memperbaiki model biaya berdasarkan pembelajaran produksi
Setelah Anda menyebarkan dan mengoperasikan beban kerja dalam produksi dalam jangka waktu yang cukup lama untuk memahami pola penggunaan normal Anda, tinjau kembali model biaya Anda untuk merencanakan masa depan. Model biaya harus memproyeksikan pengeluaran di masa mendatang, mengalokasikan dana, dan menyesuaikan penyimpangan. Dalam analisis skenario, model biaya mengevaluasi dampak keuangan dari perubahan bisnis yang berbeda dan mengantisipasi implikasi biaya perilaku pelanggan. Untuk pengoptimalan sumber daya, ini mengidentifikasi sumber daya cloud yang kurang digunakan, memperkirakan biaya penskalaan, dan membandingkan model penagihan penyedia cloud sehingga Anda dapat memilih opsi yang paling ekonomis.
Sebagai bagian dari latihan ini, tentukan seberapa dekat biaya berjalan Anda selaras dengan model biaya yang dikembangkan sebelumnya dan selidiki penyebab perbedaan. Menemukan biaya tak terduga adalah hal yang umum dan menetapkan kesalahan untuk mereka biasanya tidak produktif. Sebagai gantinya, evaluasi nilai komponen yang mendorong biaya tak terduga. Berkolaborasilah dengan pemangku kepentingan untuk memutuskan apakah akan menyesuaikan desain beban kerja untuk penyelarasan yang lebih baik dengan model biaya, atau apakah model biaya harus dimodifikasi.
Trade-off: Perlu diingat bahwa sulit untuk memproyeksikan biaya variabel secara akurat, terutama ketika Anda mengadopsi teknologi baru. Anda mungkin harus mencari kompromi saat merencanakan anggaran Anda. Pastikan bahwa pemangku kepentingan memahami bagaimana Anda menentukan perkiraan biaya variabel dan strategi Anda untuk menjaga biaya ini tetap terkendali.
Risiko: Langkah-langkah pemotongan biaya dapat berdampak buruk pada keandalan, keamanan, performa, dan keunggulan operasional. Analisis dengan cermat dampak setiap ukuran pemotongan biaya yang direncanakan dan tentukan apakah membuat perubahan sepadan dengan dampak potensial.
✓ Optimalkan penggunaan data Anda untuk menghemat biaya
Gunakan wawasan produksi Anda untuk menyempurnakan strategi data Anda. Secara khusus, cari peluang pengoptimalan untuk faktor-faktor berikut:
- Optimalkan solusi penyimpanan Anda dengan mempertimbangkan kemudahan pengelolaan. Menilai apakah solusi penyimpanan yang saat ini Anda terapkan paling sesuai dengan kasus penggunaan Anda dan apakah transisi ke teknologi yang berbeda dapat mengurangi beban operasional atau biaya penggunaan. Misalnya, Anda mungkin awalnya telah menyebarkan SQL Server pada komputer virtual untuk dengan mudah memigrasikan beban kerja Anda atau karena itu adalah teknologi yang paling akrab untuk tim beban kerja Anda. Pindah ke solusi platform-as-a-service (PaaS) dapat secara signifikan mengurangi overhead operasional dan biaya yang lebih rendah, tergantung pada berbagai faktor.
✓ Meningkatkan kepadatan sumber daya
Jika praktis, optimalkan biaya dengan mengonsolidasikan layanan bersama di seluruh beban kerja. Misalnya, Anda dapat menghosting beberapa aplikasi web di satu server atau instans PaaS. Beberapa beban kerja dapat berbagi database, jaringan, keamanan, dan layanan lainnya. Lakukan analisis cost-benefit untuk menentukan apakah mengonsolidasikan sumber daya cukup berharga bagi tim Anda untuk melakukan. Setelah Anda mengidentifikasi kandidat untuk konsolidasi, rencanakan implementasi dengan cermat dan ikuti praktik manajemen perubahan yang baik. Pastikan bahwa pemangku kepentingan memahami risikonya.
Risiko: Mengonsolidasikan sumber daya dapat membuat beban kerja Anda kurang andal dan kurang aman. Beban kerja kritis misi dan kritis bisnis harus memprioritaskan keandalan dan keamanan daripada konsolidasi.
Risiko: Konsolidasi yang dijalankan dengan buruk dapat menyebabkan inefisiensi di masa mendatang. Tinjau rencana konsolidasi Anda secara menyeluruh untuk memastikan bahwa Anda tidak membuat hambatan yang dapat memengaruhi Anda di masa mendatang sebelum melakukan migrasi. Setelah migrasi, beri perhatian ekstra dalam pemantauan Anda ke sumber daya terkonsolidasi untuk memastikan mereka berkinerja seperti yang diharapkan.
✓ Evaluasi dan optimalkan fitur aplikasi Anda
Pantau pola penggunaan fitur dalam produksi untuk menilai keselarasannya dengan model biaya Anda. Tentukan apakah fitur harus dipertahankan, direfaktor, atau dihapus. Dalam beberapa kasus, fitur monetisasi mungkin merupakan keputusan bisnis strategis. Fitur mungkin tidak membenarkan investasi saat ini tetapi masih dapat memberikan nilai kepada pelanggan. Menawarkan fitur-fitur ini sebagai add-on berbayar atau langganan dapat membantu mengimbangi biaya investasi.
✓ Meminimalkan biaya penskalan dengan mengatur permintaan
Strategi yang dapat membantu Anda mengoptimalkan biaya penskalaan sumber daya adalah mengatur permintaan alih-alih menambahkan kapasitas. Pendekatan ini dapat mencakup pengalihan permintaan ke sumber daya lain atau menguranginya melalui berbagai strategi seperti antrean prioritas, buffering, penyeimbangan beban, dan cache. Ketika Anda mempertimbangkan taktik ini, nilai dampaknya pada pilar lain dari Well-Architected Framework. Mengontrol pasokan dengan membatasi batas penskalaan dan menetapkan anggaran membantu menjaga pengeluaran dalam ambang yang ditentukan. Lacak penggunaan dan gunakan platform manajemen biaya dan pemberitahuan anggaran untuk membantu memantau dan mengontrol pengeluaran secara efektif.
Trade-off: Membongkar tugas ke sumber daya lain dapat mengurangi biaya penskalaan, tetapi mungkin menimbulkan tantangan operasional dan pemeliharaan. Lakukan analisis manfaat biaya menyeluruh untuk mengonfirmasi bahwa metode offloading yang Anda pilih efisien dan layak. Pastikan untuk menyeimbangkan penghematan dengan kompleksitas potensial.
✓ Memberlakukan akuntabilitas biaya melalui kepemilikan
Menunjuk individu yang bertanggung jawab langsung terhadap biaya (DRI) membantu tim beban kerja mengambil alih kepemilikan atas biaya beban kerja mereka. DRI bertanggung jawab untuk mengelola dan mengoptimalkan biaya dengan memantau penggunaan, menerapkan strategi hemat biaya, dan memastikan bahwa pengeluaran selaras dengan tujuan anggaran dan bisnis. DRI membuat keputusan terkait alokasi sumber daya cloud, mengidentifikasi area potensi pengurangan biaya, dan memastikan penggunaan layanan cloud yang efisien untuk menghindari pengeluaran yang tidak perlu.
DRI juga berfungsi sebagai garis depan pertahanan terhadap biaya beban kerja yang lebih tinggi dari yang diharapkan. DRI dapat membantu mengidentifikasi penyebab biaya tinggi ini dan secara proaktif bekerja dengan tim beban kerja untuk menguranginya ke rentang yang diharapkan sebelum mereka menjadi darurat biaya.
Mengubah pengoptimalan biaya menjadi keunggulan kompetitif melalui inovasi berkelanjutan.
Pada Tingkat 5 dari model kematangan, Anda harus memiliki banyak mekanisme dan proses pengoptimalan biaya yang sudah ada. Level 5 berfokus pada memaksimalkan return on investment (ROI) Anda dengan mempertahankan anggaran beban kerja yang konsisten dan dapat diprediksi, menghasilkan prakiraan yang sangat akurat, dan menerapkan penyempurnaan lanjutan. Pertimbangkan rekomendasi berikut untuk mencapai tujuan ini.
Strategi utama
✓ Memberlakukan pagar pembatas pengeluaran dalam proses pengembangan perangkat lunak Anda
Gunakan gerbang rilis untuk berfungsi sebagai pagar pembatas pengeluaran dengan menetapkan kriteria terkait biaya yang harus dipenuhi untuk melewati gerbang. Misalnya, Anda dapat mengatur batas pengeluaran untuk memastikan bahwa rilis tidak menambahkan biaya tak terduga ke anggaran beban kerja Anda. Masukkan gerbang ini ke dalam integrasi berkelanjutan dan alur pengiriman berkelanjutan Anda untuk memastikan bahwa mereka disertakan dalam setiap penyebaran.
✓ Berinvestasi dalam bangunan pengetahuan
Berdayakan tim beban kerja Anda untuk mengambil kepemilikan inisiatif pengoptimalan biaya dengan mengembangkan program pelatihan keterampilan. Dorong anggota tim untuk belajar dari para pemimpin pemikiran industri dengan berpartisipasi dalam konferensi, webinar, dan acara relevan lainnya. Berikan pelatihan internal untuk mendukung keterampilan silang dan menciptakan lingkungan kotak pasir untuk pengalaman belajar langsung. Selaraskan pelatihan dengan inisiatif pengoptimalan biaya seperti mengoptimalkan strategi penskalaan. Tim yang sangat terampil meningkatkan efisiensi dan dapat mengurangi keandalan pada pihak ketiga untuk proyek di masa depan.
Pastikan model biaya Anda mencakup pelatihan terencana untuk periode fiskal tertentu, seperti kuartal mendatang.
✓ Mengoptimalkan ketersediaan tinggi dan biaya pemulihan bencana
Setelah Anda menjalankan latihan pemulihan bencana dunia nyata (DR) atau mengalami insiden DR dunia nyata, Anda mungkin menemukan peluang untuk pengoptimalan biaya. Anda mungkin menemukan bahwa strategi DR yang lebih murah cukup untuk komponen tertentu sambil tetap memenuhi target pemulihan Anda. Misalnya, Anda mungkin tidak memerlukan desain cadangan aktif untuk alur yang tidak kritis. Dalam skenario ini, pertimbangkan untuk menerapkan pendekatan penerapan saat pemulihan sebagai gantinya.
Sebagai bagian dari praktik peningkatan berkelanjutan Anda, kunjungi kembali target pemulihan Anda secara teratur untuk memastikan bahwa mereka sesuai untuk persyaratan keandalan dan biaya.
✓ Memperbaiki desain beban kerja
Setelah Anda mengamati beban kerja dalam produksi selama jangka waktu yang lama, Anda mungkin menentukan bahwa Anda berada pada batas pengoptimalan yang berharga tanpa melakukan refaktor bagian-bagiannya. Pemfaktoran ulang dapat menjadi padat karya dan mahal. Namun, refaktor mungkin merupakan investasi yang berharga jika menghasilkan penghematan biaya jangka panjang. Ini juga dapat memperpanjang siklus hidup beban kerja dengan mengadopsi teknologi dan praktik manajemen yang lebih efisien. Pertimbangkan strategi berikut:
Gabungkan alur serupa. Kurangi redundansi atau penggunaan sumber daya yang kurang digunakan dengan mengonsolidasikan alur serupa ke sumber daya bersama atau sekumpulan sumber daya. Misalnya, Anda dapat menghosting beberapa aplikasi web pada satu instans komputasi, atau menghosting beberapa database di satu server logis.
Pisahkan aliran dissimilar. Menetapkan tugas yang memiliki kebutuhan komputasi yang berbeda untuk sumber daya khusus meningkatkan efisiensi dan mengurangi biaya. Pendekatan ini meningkatkan skalabilitas, toleransi kesalahan, dan kemampuan beradaptasi dengan meminimalkan gangguan dan mengoptimalkan alokasi sumber daya sesuai dengan prioritas setiap tugas.
Merancang ulang beban kerja untuk mendapatkan efisiensi. Tinjau seluruh arsitektur beban kerja untuk mencari peluang untuk meningkatkan efisiensi. Mendukung desain layanan mikro dan jelajahi dengan menggunakan layanan tanpa server atau terkelola yang meringankan beban operasional dan dapat dengan mudah berukuran tepat melalui penskalaan otomatis. Tujuan akhir untuk arsitektur Anda mungkin untuk secara otomatis menyebarkan lingkungan nonproduksi hanya jika diperlukan untuk aktivitas penyebaran. Lingkungan ini kemudian dapat dihancurkan setelah itu untuk meminimalkan biaya penggunaan yang tidak perlu.
Terus memantau dan menyesuaikan ukuran sumber daya berdasarkan pola penggunaan untuk mengoptimalkan biaya.
✓ Mengembangkan operasi tim Anda
Penelitian dan adopsi metodologi pengembangan yang efisien seperti Scrum, Kanban, dan air terjun. Menilai kembali efisiensi tim Anda secara teratur untuk menentukan apakah metodologi yang Anda pilih paling cocok. Tentukan biaya tugas untuk setiap karyawan, yang dikenal sebagai biaya unit, dan cari peluang untuk menurunkan biaya tersebut. Tinjau tugas termahal dan evaluasi ROI mereka.
Mengevaluasi apakah tugas tertentu dapat dilepaskan ke tim lain. Misalnya, tim cloud terpusat mungkin mengelola tugas operasional untuk unit bisnis atau beban kerja lainnya, sementara tim keamanan terpusat mungkin menangani pemantauan dan pengujian. Saat Anda membongkar tugas, rencanakan penyerahan dengan hati-hati, pastikan komunikasi yang jelas di antara semua tim yang terlibat, dan ikuti proses manajemen perubahan yang ditetapkan.