Ders 10 / 22
Hazırlık
Hazırlığın kalem olarak sayılması: on iki hazırlık kaleminin uyarıdan karara giden altı adımlık zinciri 470 dakikadan 182 dakikaya indirmesi, sınırlama anını 656'dan 368'e ve erişilen kalemi 13'ten 9'a çekmesi, varlık envanterinin eksikliğinin tek başına 49 dakika eklemesi, iletişim ağacının kişi-saat başına 5,00 dakika kazandırmasına karşılık adli toplama hazırlığının 0,11 dakikada kalması ve ön onaylı yetkinin yılda 103 dakika kazandırırken 233 meşru iş kalemi kesmesi.
İçindekiler
Önceki konu tespit hattını kurdu: kaynaklar toplandı, normalleştirildi, bağıntı kuralları yazıldı, eşik tarandı ve yinelenen müdahale otomatikleştirildi. Konunun bıraktığı soru şuydu: uyarı doğru çıktığında ne olacak. Hat bir uyarıyı doğru üretti; bundan sonra sayılan şey artık kuralın kalitesi değil, uyarının düştüğü an ile erişimin durduğu an arasındaki süredir.
Bu konu boyunca ölçü birimi ikilidir: dakika ve kalem. Fark etme süresi tespit hattının çıktısıdır ve bu konuda girdi olarak verilir. Ölçülen şey sınırlama süresidir — uyarıdan erişimin durmasına kaç dakika geçtiği ve o dakikalarda kaç kaleme erişildiği. Hazırlık, bu sürenin tek tek sayılabilir bileşenidir: bir plan, bir yetki matrisi ya da bir iletişim ağacı ya olayın başladığı gün hazırdır ya da olay sırasında yazılır. İkincisi dakika ekler.
Uyarıdan Karara Zincir
Örnek, kurslar boyunca sürdürülen kurgu bölgesel ölçüm ağıdır: şube toplayıcıları, doğrulayıcı, faturalama, abone portalı ve iş emri servisleri; üç kişilik bir vardiya. Olay da kayıtlar da kurgudur; gerçek bir kurum, adres ya da olay yoktur.
OM1: Uyarı, olayın başlangıcından 186 dakika sonra düşer ve doğrudur; bu değer tespit hattından gelen girdidir. OM2: Erişim eğrisi on dört kalemden oluşur; her kalem belirli bir dakikada erişilebilir hale gelir ve o kalem bir daha kapanmaz. Eğri veridir, ölçüm değil; saldırı tarafına ait hiçbir adım dizisi yazılmaz, yalnız hangi kaleme kaçıncı dakikada erişildiği verilir. OM3: Uyarıdan sınırlamaya giden zincir altı adımdır: doğrulama, kapsam, yetki, karar, seçim, uygulama. Her adımın hazırlıksız bir taban dakikası vardır. OM4: On iki hazırlık kalemi vardır; hazır olan kalem etkilediği adımın dakikasını bir çarpanla kısaltır, eksik olan kalem hiçbir şey yapmaz — adım tabanda kalır. OM5: Her hazırlık kaleminin yıllık bakım bedeli kişi-saattir. OM6: Sınırlama uygulandığı anda erişim durur; o ana kadar erişilmiş kalem sayısı geç kararın bedelidir.
// hazirlik/model.mjs — olay mudahale hazirligi modeli: gercek bir olay kaydi yok. Erisim // egrisi, zincir adimlari ve hazirlik kalemleri veri yapisidir; sureler kurgu verilerdir. export const UYARI = 186; // uyarinin dustugu dakika (tespit hattinin ciktisi) // erisim egrisi: [dakika, kalem adi] — kalem o dakikada erisilir hale gelir (veri) export const ERISIM = [ [0, "toplayici-03 uzerinde calistirma"], [26, "toplayici-03 yerel kimlik deposu"], [58, "dogrulayici-01 hizmet hesabi"], [95, "toplayici-07"], [134, "toplayici-11"], [171, "dogrulayici-02"], [214, "faturalama okuma ucu"], [263, "abone portali kopyasi"], [318, "is emri kuyrugu"], [372, "saha dizustu yonetim kanali"], [441, "yedek deposu listeleme"], [505, "fatura arsivi disari aktarma"], [588, "ikinci bolge toplayici kumesi"], [676, "yonetim konsolu okuma"]]; export const kalem = (dk) => ERISIM.filter(([t]) => t <= dk).length; // zincir adimi: ad, hazirliksiz taban dakika export const ADIM = [["dogrulama", 68], ["kapsam", 124], ["yetki", 96], ["karar", 82], ["secim", 54], ["uygulama", 46]]; // hazirlik kalemi: ad, etkiledigi adimlar, adim carpani, yillik bakim kisi-saati export const HAZIRLIK = [ ["mudahale plani", ["secim"], 0.55, 16], ["yetki matrisi", ["yetki"], 0.45, 8], ["iletisim agaci", ["karar"], 0.50, 6], ["varlik envanteri", ["kapsam"], 0.55, 24], ["kayit kaynagi haritasi", ["dogrulama"], 0.50, 12], ["yedek erisim kanali", ["uygulama"], 0.75, 10], ["on onayli sinirlama yetkisi", ["yetki"], 0.55, 4], ["kimlik mudahale yordami", ["secim"], 0.65, 14], ["adli toplama hazirligi", ["uygulama"], 0.90, 18], ["dis mudahale destegi", ["karar"], 0.85, 5], ["masa basi tatbikati", ADIM.map(([a]) => a), 0.88, 30], ["geri getirme sinamasi", ["uygulama"], 0.85, 22]]; // hazir kalem kumesiyle zincirin adim dakikalari ve toplami export function zincir(hazir) { const dk = Object.fromEntries(ADIM); for (const [ad, adimlar, carpan] of HAZIRLIK) if (hazir.includes(ad)) for (const a of adimlar) dk[a] *= carpan; const toplam = Math.round(Object.values(dk).reduce((s, v) => s + v, 0)); return { dk, toplam, sinirlama: UYARI + toplam, kalem: kalem(UYARI + toplam) }; } export const TUM = HAZIRLIK.map(([a]) => a); export const KISMI = ["mudahale plani", "yetki matrisi", "iletisim agaci", "varlik envanteri", "kayit kaynagi haritasi", "yedek erisim kanali"]; // yillik uyari kumesi: 24 dogrulanmis uyarinin 6'si gercek olay (veri) export const UYARI_YIL = 24, GERCEK_YIL = 6, KESILEN_SAATLIK = 26;
Ölçüm dosyası zinciri üç hazırlık düzeyinde koşturur, sonra tam kümeden kalemleri tek tek çıkarıp her birinin eksikliğinin kaç dakika eklediğini sayar.
// hazirlik/olc.mjs — hazirlik kalemi hazirken karar kac dakika kisaliyor, eksik kalem // kac dakika ve kac erisilen kalem ekliyor, on onayli yetkinin iki yonlu bedeli ne. import { UYARI, ADIM, HAZIRLIK, TUM, KISMI, zincir, kalem, UYARI_YIL, GERCEK_YIL, KESILEN_SAATLIK } from "./model.mjs"; const yaz = (g, ...s) => console.log(s.map((v, i) => (g[i] < 0 ? String(v).padEnd(-g[i]) : String(v).padStart(g[i]))).join("")); const t0 = process.hrtime.bigint(); const D = { hazirliksiz: zincir([]), kismi: zincir(KISMI), tam: zincir(TUM) }; console.log(`uyari ${UYARI}. dakikada dustu; ${HAZIRLIK.length} hazirlik kalemi, ` + `${ADIM.length} zincir adimi`); console.log("\n1. uyaridan karara zincir (dakika)"); const A = [-24, 14, 10, 10]; yaz(A, "adim", "hazirliksiz", "kismi (6)", "tam (12)"); for (const [ad] of ADIM) yaz(A, ad, ...Object.values(D).map((r) => r.dk[ad].toFixed(0))); yaz(A, "toplam", ...Object.values(D).map((r) => r.toplam)); yaz(A, "sinirlama dakikasi", ...Object.values(D).map((r) => r.sinirlama)); yaz(A, "erisilen kalem", ...Object.values(D).map((r) => `${r.kalem}/14`)); yaz(A, "yillik kisi-saat", ...Object.entries({ hazirliksiz: [], kismi: KISMI, tam: TUM }) .map(([, k]) => HAZIRLIK.filter(([a]) => k.includes(a)) .reduce((s, h) => s + h[3], 0))); console.log("\n2. kalem eksikken zincire eklenen dakika (tam kumeden tek tek cikarilir)"); const B = [-28, 11, 10, 12, 14, 15]; yaz(B, "eksik kalem", "toplam dk", "+dakika", "sinirlama", "yillik s-saat", "dakika/s-saat"); const t = D.tam; const sirali = HAZIRLIK.map((h) => [h, zincir(TUM.filter((a) => a !== h[0]))]) .sort((x, y) => y[1].toplam - x[1].toplam); for (const [h, r] of sirali) yaz(B, h[0], r.toplam, "+" + (r.toplam - t.toplam), r.sinirlama, h[3], ((r.toplam - t.toplam) / h[3]).toFixed(2)); yaz(B, "(hicbiri eksik degil)", t.toplam, "-", `${t.sinirlama} (${t.kalem}/14)`, HAZIRLIK.reduce((s, h) => s + h[3], 0), "-"); console.log("\n3. on onayli sinirlama yetkisinin iki yonu (yilda " + `${UYARI_YIL} dogrulanmis uyari, ${GERCEK_YIL} gercek olay)`); const C = [-34, 10, 12, 13]; yaz(C, "kosum", "yetki dk", "yil kazanc", "yil kesilen"); for (const [ad, kume] of [["on onay yok", TUM.filter((a) => a !== "on onayli sinirlama yetkisi")], ["on onay var", TUM], ["on onay var, kayit haritasi yok", TUM.filter((a) => a !== "kayit kaynagi haritasi")]]) { const r = zincir(kume), onay = kume.includes("on onayli sinirlama yetkisi"); const kazanc = onay ? GERCEK_YIL * (zincir(kume.filter((a) => a !== "on onayli sinirlama yetkisi")).dk.yetki - r.dk.yetki) : 0; const kesilen = onay ? (UYARI_YIL - GERCEK_YIL) * (r.dk.dogrulama / 60) * KESILEN_SAATLIK : 0; yaz(C, ad, r.dk.yetki.toFixed(0), kazanc.toFixed(0) + " dk", kesilen.toFixed(0) + " kalem"); } console.log("\n4. sinirlama dakikasi tarandiginda erisilen kalem"); const E = [-16, 9, 9, 9, 9, 9, 9]; const tara = [200, 280, 362, 470, 560, 656]; yaz(E, "sinirlama dk", ...tara); yaz(E, "erisilen kalem", ...tara.map((d) => `${kalem(d)}/14`)); const ms = Number(process.hrtime.bigint() - t0) / 1e6; // ham olcum basilmaz, bant denetlenir console.log(`\nuc duzey ve ${HAZIRLIK.length} marjinal kosum 500 ms bandinda: ` + (ms < 500 ? "evet" : "hayir"));
uyari 186. dakikada dustu; 12 hazirlik kalemi, 6 zincir adimi 1. uyaridan karara zincir (dakika) adim hazirliksiz kismi (6) tam (12) dogrulama 68 34 30 kapsam 124 68 60 yetki 96 43 21 karar 82 41 31 secim 54 30 17 uygulama 46 35 23 toplam 470 251 182 sinirlama dakikasi 656 437 368 erisilen kalem 13/14 10/14 9/14 yillik kisi-saat 0 76 169 2. kalem eksikken zincire eklenen dakika (tam kumeden tek tek cikarilir) eksik kalem toplam dk +dakika sinirlama yillik s-saat dakika/s-saat varlik envanteri 231 +49 417 24 2.04 iletisim agaci 212 +30 398 6 5.00 kayit kaynagi haritasi 212 +30 398 12 2.50 yetki matrisi 207 +25 393 8 3.13 masa basi tatbikati 207 +25 393 30 0.83 on onayli sinirlama yetkisi 199 +17 385 4 4.25 mudahale plani 196 +14 382 16 0.88 kimlik mudahale yordami 191 +9 377 14 0.64 yedek erisim kanali 189 +7 375 10 0.70 dis mudahale destegi 187 +5 373 5 1.00 geri getirme sinamasi 186 +4 372 22 0.18 adli toplama hazirligi 184 +2 370 18 0.11 (hicbiri eksik degil) 182 - 368 (9/14) 169 - 3. on onayli sinirlama yetkisinin iki yonu (yilda 24 dogrulanmis uyari, 6 gercek olay) kosum yetki dk yil kazanc yil kesilen on onay yok 38 0 dk 0 kalem on onay var 21 103 dk 233 kalem on onay var, kayit haritasi yok 21 103 dk 467 kalem 4. sinirlama dakikasi tarandiginda erisilen kalem sinirlama dk 200 280 362 470 560 656 erisilen kalem 6/14 8/14 9/14 11/14 12/14 13/14 uc duzey ve 12 marjinal kosum 500 ms bandinda: evet
Sayılar ölçüm sınıfındadır; girdileri yukarıdaki varsayımlardır.
Üç Hazırlık Düzeyi
Birinci tablo hazırlığı dakikaya çevirir. Hiçbir kalem hazır değilken zincir 470 dakika sürer: uyarı 186. dakikada düşer, sınırlama 656. dakikada uygulanır ve o ana kadar on dört kalemin on üçüne erişilmiştir. Altı kalemle 251 dakikaya, on iki kalemle 182 dakikaya iner; sınırlama 368. dakikaya çekilir ve erişilen kalem dokuza düşer.
Adım kırılımı, hazırlığın nereye dokunduğunu gösterir. En büyük iki taban kapsam (124 dakika) ve yetki (96 dakika) adımlarıdır — yani “hangi varlıklar etkilendi” ve “kim kesebilir” soruları. Tam hazırlıkta kapsam 60, yetki 21 dakikaya iner. Doğrulama adımı 68’den yalnız 30’a düşer ve tam hazırlıkta zincirin ikinci en uzun adımı olarak kalır; doğrulama bir belge işi değil, kayıt okuma işidir ve hazırlıkla kısaltılabilecek bir tavanı vardır.
İki düzey arasındaki fark eşit dağılmaz. İlk altı kalem yılda 76 kişi-saat ister ve zincirden 219 dakika düşürür — kişi-saat başına 2,88 dakika. İkinci altı kalem 93 kişi-saat daha ister ve yalnız 69 dakika düşürür; kişi-saat başına 0,74. Hazırlığın getirisi azalan bir eğridir: ilk kalemler zincirin en uzun adımlarına dokunur, sonrakiler kalan payı böler.
Dördüncü tablo aynı eğriyi tek başına gösterir. Sınırlamayı 656. dakikadan 368’e çekmek dört kalem kazandırır; 368’den 280’e çekmek bir kalem daha. Eğri düz değildir: erken dakikalarda kalem sayısı hızla artar, sonra seyrelir. Bu, hazırlığın getirisinin de sabit olmadığı anlamına gelir.
Kalem Başına Dakika
İkinci tablo hazırlığı kalem olarak sayar. Tam kümeden tek bir kalem çıkarıldığında zincire eklenen dakika, o kalemin gerçek karşılığıdır. Varlık envanterinin eksikliği en pahalıdır: tek başına 49 dakika ekler, çünkü kapsam adımı hem en uzun tabana sahiptir hem de envanter yoksa elde hiçbir başlangıç listesi yoktur. İletişim ağacı ve kayıt kaynağı haritası otuzar dakika, yetki matrisi ve masa başı tatbikatı yirmi beşer dakika ekler.
Bu üç kalemin ne olduğu sayının anlamını verir. Varlık envanteri, hangi makinenin hangi hizmeti koşturduğunu ve hangi ağ bölütünde durduğunu tutan listedir; olay sırasında yoksa kapsam adımı önce bu listeyi üretmek zorunda kalır. Yetki matrisi, hangi rolün hangi eylemi hangi onayla uygulayabileceğini yazar: bir ağ bölütünü kesmek, bir hizmet hesabını kilitlemek ya da bir uç noktayı ağdan almak farklı satırlardır. İletişim ağacı, hangi bilginin kime hangi kanalla gideceğini önceden bağlar; olay sırasında bu ağ yoksa karar adımı doğru kişiyi aramakla geçer.
Son sütun kararı verir: kişi-saat başına kaç dakika. İletişim ağacı yılda altı kişi-saat bakım ister ve kişi-saat başına 5,00 dakika kazandırır; ön onaylı yetki dört kişi-saatle 4,25; yetki matrisi 3,13. Masa başı tatbikatı otuz kişi-saatle en pahalı kalemdir ve 0,83’te kalır — ama tek adım değil, altı adımın hepsini birden ölçekler, yani tabloda göründüğünden geniş bir etkisi vardır.
Listenin sonundaki iki kalem dikkat ister. Geri getirme sınaması 0,18, adli toplama hazırlığı 0,11 dakika/kişi-saat verir; ikisi birlikte kırk kişi-saat harcar ve zincirden yalnız altı dakika düşürür. Bu derste ölçülen tek şey karar dakikasıdır. Adli toplama hazırlığının karşılığı bu tabloda değil, kanıtın toplanıp toplanmadığının sayıldığı yerdedir; geri getirme sınamasının karşılığı da kurtarmanın kaç aşamada yapıldığı ölçüldüğünde çıkar. Tek eksende ölçülen bir hazırlık kalemi, o eksende ucuz göründüğü için çıkarılırsa başka bir eksende bedeli ödenir.
Hazırlığın İki Yönü
Üçüncü tablo hazırlığın bedava olmadığını gösterir. Ön onaylı sınırlama yetkisi, vardiyanın kıdemli onay beklemeden kesmesine izin verir. OM7: Yılda 24 doğrulanmış uyarı incelenir, bunların altısı gerçek olaydır; ön onay varken kesme, uyarının elenmesine kadar yani doğrulama adımı boyunca sürer ve saatte 26 meşru iş kalemi keser. Ön onay olmadan yetki adımı 38 dakikadır, ön onayla 21 dakika; altı gerçek olayda yılda 103 dakika kazandırır. Aynı yetki, gerçek olmayan on sekiz uyarıda toplam 233 meşru iş kalemi keser.
Üçüncü satır iki hazırlık kaleminin birbirine bağlı olduğunu gösterir. Kayıt kaynağı haritası eksikken doğrulama 30 dakikadan 60 dakikaya çıkar; ön onaylı yetkinin kazandırdığı dakika aynı kalır (103), ama kestiği meşru iş 467 kaleme çıkar. Erken kesme yetkisinin bedeli, o kesmenin ne kadar sürede geri alınabileceğine bağlıdır. Hızlı doğrulama olmadan verilen erken kesme yetkisi, kazandığı dakikanın iki katı bedeli üretir. Hazırlık kalemleri bağımsız satırlar değildir; bir kalemin değeri, başka bir kalemin hazır olup olmamasına göre değişir ve tek tek toplanan dakikalar bu bağımlılığı göstermez.
Özet
- Uyarıdan sınırlamaya giden zincir altı adımdır; hazırlıksız 470, altı kalemle 251, on iki kalemle 182 dakika sürer. Sınırlama anı 656’dan 368’e, erişilen kalem 13’ten 9’a iner.
- En büyük iki adım kapsam (124 dakika taban) ve yetkidir (96 dakika); hazırlık bunları 60 ve 21 dakikaya indirir, doğrulama ise 68’den yalnız 30’a inip zincirde ikinci sırada kalır.
- Tek bir kalemin eksikliğinin bedeli ayrı ayrı sayılır: varlık envanteri +49, iletişim ağacı ve kayıt kaynağı haritası +30, yetki matrisi ve masa başı tatbikatı +25 dakika.
- Kişi-saat başına kazanç iletişim ağacında 5,00, ön onaylı yetkide 4,25 dakikadır; adli toplama hazırlığı 0,11’de kalır — karşılığı bu eksende değil, kanıt sayıldığında ölçülür.
- Ön onaylı yetki yılda 103 dakika kazandırır ve 233 meşru iş kalemi keser; kayıt kaynağı haritası eksikken aynı yetkinin kestiği kalem 467’ye çıkar.
Sonraki Adım
Zincirin ilk iki adımı bu derste yalnız birer dakika değeriydi: doğrulama 30, kapsam 60. İkisi de tek bir soruyu yanıtlamak zorundadır — bu uyarı gerçekten bir olay mı ve kaç varlık etkilendi. Sonraki ders bu iki adımın içine girer: uyarı hangi varlığı işaret ediyor, o varlıktan kaç adım uzağa bakmak gerekiyor, bakılan varlıkların kaçında kayıt var ve kapsamı dar tutmak kaç etkilenmiş varlığı listenin dışında bırakıyor.
İlerlemeni kaydetmek ve not almak için Giriş yap
Notlarım
Not almak için giriş yapmalısın.