---
title: 'Politika, Standart ve Yordam'
source: 'https://academia.sh/tr/kurslar/yonetisim-risk-uyumluluk/politika-standart-ve-yordam'
course: 'Yönetişim, Risk ve Uyumluluk'
language: tr
updated: '2026-08-17T18:08:36+00:00'
license: 'CC BY-SA 4.0'
---

# Politika, Standart ve Yordam

Belge hiyerarşisinin kanıt üretimi ekseninde ayrılması: 26 belgenin yalnız 10'unun denetimde kanıt üretmesi ve 9'unun ölçülebilir eşik taşımaması, 15 gereksinim zincirinin 9'unun tam olması ve 11'inin kanıtlanabilmesi, politikasız iki zincirin kayıt üreten yordamı sayesinde kanıtlanabilir kalması, eksik halkaları tamamlamanın 104 adam-günü kanıt kazandırırken 14 adam-günü yalnız görünüşü düzeltmesi ve belge sayısı ile kanıt üretimi sıralamalarının ayrışması.

Önceki dersin son iki tablosunda ölçülen her şey bir belgeye dayanıyordu: envanter bir belgedir,
saklama süresi bir belgede yazar, talep akışının adımları bir belgede tanımlıdır. Buraya kadar
belgeler tek bir kütle gibi ele alındı. Denetim açısından ise aralarında keskin bir fark vardır ve
bu ders o farkı ölçer.

Belge hiyerarşisi üç düzeylidir. **Politika** niyeti ve sorumluluğu bildirir; kimin neyi
sahiplendiğini söyler, ölçülebilir bir eşik vermez. **Standart** eşiği verir: bir sayı, bir süre, bir
yapılandırma değeri. **Yordam** adım adım bir işi tanımlar ve her koşumunda bir **kayıt** üretir.
Kanıt yalnız son düzeyden çıkar. Bir mimari kuralı koşturulabilir bir denetime çevirmenin bedeli
M20/K04'te ölçülmüştü; buradaki soru başkadır — denetçi karşısında hangi belge düzeyi bir **kalem**
olarak sayılır, hangisi yalnız okunup geçilir.

- **CE33.** Belge kümesi 26 kalemdir ve sekiz konu alanına dağılmıştır. Belgeler, kayıt sayıları ve
  yaşlar **kurgudur**.
- **CE34.** Her belgenin bir düzeyi (politika, standart, yordam), ölçülebilir eşik taşıyıp
  taşımadığı, dönemde ürettiği kayıt sayısı ve son güncellemeden bu yana geçen gün sayısı vardır.
- **CE35.** Bir gereksinim, üç düzeyi birbirine bağlayan bir **zincir** olarak yazılır: politika →
  standart → yordam. Boş hücre eksik halkadır.
- **CE36.** Kanıt kuralı: bir gereksinim ancak **kayıt üreten bir yordamı** varsa denetimde
  kanıtlanabilir sayılır. Politika ve standart tek başına kanıt değildir.
- **CE37.** Eksik halkayı üretmenin maliyeti düzeye göre değişir: politika 3, standart 8, yordam 15,
  yordamın kayıt akışı 10 adam-gün (kurgu).
- **CE38.** Bir yordam birden çok zincirde geçebilir; o zaman kayıt kalemi de paylaşılır.

```js
// belge/hiyerarsi.mjs — politika, standart ve yordam duzeylerinin kanit uretimi ekseninde ayrimi.
// MODELDIR: bolgesel olcum agi (kurgu); belgeler, kayit sayilari ve yaslar kurgudur.
export const satir = (s) => s.trim().split("\n").map((l) => l.trim().split("|"));
export const gen = (B) => (...h) => h.map((v, j) =>
  (j ? String(v).padStart(B[j]) : String(v).padEnd(B[0]))).join("");

// kod | duzey | alan | olculebilir esik | donemde urettigi kayit | son guncellemeden bu yana gun
export const BELGE = Object.fromEntries(satir(`
  P1|politika|erisim|hayir|0|420
  P2|politika|veri|hayir|0|180
  P3|politika|degisiklik|hayir|0|900
  P4|politika|olay|hayir|0|150
  P5|politika|tedarik|hayir|0|640
  P6|politika|farkindalik|hayir|0|300
  S1|standart|erisim|evet|0|120
  S2|standart|erisim|evet|0|540
  S3|standart|veri|evet|0|90
  S4|standart|veri|hayir|0|380
  S5|standart|degisiklik|evet|0|75
  S6|standart|olay|evet|0|200
  S7|standart|tedarik|hayir|0|700
  S8|standart|sureklilik|evet|0|260
  S9|standart|farkindalik|evet|0|340
  Y1|yordam|erisim|evet|240|60
  Y2|yordam|erisim|evet|48|110
  Y3|yordam|veri|evet|365|30
  Y4|yordam|veri|evet|30|45
  Y5|yordam|degisiklik|evet|310|20
  Y6|yordam|olay|evet|18|95
  Y7|yordam|olay|hayir|0|410
  Y8|yordam|tedarik|evet|3|280
  Y9|yordam|sureklilik|evet|4|150
  Y10|yordam|farkindalik|evet|4|85
  Y11|yordam|varlik|evet|12|40`)
  .map(([kod, duzey, alan, esik, kayit, yas]) =>
    [kod, { kod, duzey, alan, esik: esik === "evet", kayit: +kayit, yas: +yas }]));

// gereksinim | politika | standart | yordam  (bos hucre eksik halkadir)
export const ZINCIR = satir(`
  Z01 erisim onayi|P1|S1|Y1
  Z02 ayricalikli erisim|P1|S2|Y2
  Z03 kimlik dogrulama kurallari|P1|S2|
  Z04 veri siniflandirma|P2|S3|Y3
  Z05 silme talebi|P2|S4|Y4
  Z06 saklama suresi|P2|S3|Y3
  Z07 degisiklik onayi|P3|S5|Y5
  Z08 olay bildirimi|P4|S6|Y6
  Z09 olay sonrasi inceleme|P4|S6|Y7
  Z10 tedarikci degerlendirme|P5|S7|Y8
  Z11 tedarikciden cikis|P5||
  Z12 sureklilik tatbikati||S8|Y9
  Z13 farkindalik egitimi|P6|S9|Y10
  Z14 varlik envanteri|||Y11
  Z15 kayitlarin butunlugu|||`)
  .map(([ad, p, s, y]) => ({ ad, kod: ad.split(" ")[0], p, s, y }));

export const DUZEY = ["politika", "standart", "yordam"];
// Kanit kurali: bir gereksinim ancak kayit ureten bir yordamla kanitlanabilir.
export const kanitli = (z) => Boolean(z.y) && BELGE[z.y].kayit > 0;
export const kopus = (z) => !z.p ? "politika yok" : !z.s ? "standart yok"
  : !z.y ? "yordam yok" : BELGE[z.y].kayit === 0 ? "kayit uretmiyor" : "tam";

if (import.meta.url === `file://${process.argv[1]}`) {
  const hepsi = Object.values(BELGE);
  console.log(`model: ${hepsi.length} belge, ${ZINCIR.length} gereksinim zinciri, ` +
    `${new Set(hepsi.map((b) => b.alan)).size} konu alani`);

  const y = gen([12, 8, 11, 14, 14, 13]);
  console.log("\n" + y("duzey", "belge", "esikli", "kayit uretir", "donem kaydi", "ort yas gun"));
  for (const d of DUZEY) {
    const k = hepsi.filter((b) => b.duzey === d);
    console.log(y(d, k.length, k.filter((b) => b.esik).length,
      k.filter((b) => b.kayit > 0).length, k.reduce((a, b) => a + b.kayit, 0),
      (k.reduce((a, b) => a + b.yas, 0) / k.length).toFixed(0)));
  }
  console.log(`toplam ${hepsi.length} belgenin ${hepsi.filter((b) => b.kayit > 0).length} ` +
    `tanesi denetimde kanit uretiyor; ${hepsi.filter((b) => !b.esik).length} tanesi ` +
    `olculebilir esik tasimiyor`);

  const z = gen([18, 10, 12, 40]);
  console.log("\n" + z("zincir durumu", "sayi", "yuzde", "gereksinimler"));
  const DURUM = ["tam", "kayit uretmiyor", "yordam yok", "standart yok", "politika yok"];
  for (const d of DURUM) {
    const k = ZINCIR.filter((x) => kopus(x) === d);
    console.log(z(d, k.length, (100 * k.length / ZINCIR.length).toFixed(0),
      k.map((x) => x.kod).join(" ") || "-"));
  }
  console.log(`\nkanitlanabilir gereksinim ${ZINCIR.filter(kanitli).length}/${ZINCIR.length}; ` +
    `politikasi olan ${ZINCIR.filter((x) => x.p).length}, standardi olan ` +
    `${ZINCIR.filter((x) => x.s).length}, yordami olan ${ZINCIR.filter((x) => x.y).length}`);
  const eski = ZINCIR.filter((x) => x.p && x.y && BELGE[x.p].yas > BELGE[x.y].yas + 180);
  console.log(`politikasi yordamindan 180 gunden fazla eski olan zincir ${eski.length}: ` +
    `${eski.map((x) => `${x.kod} (${BELGE[x.p].yas}/${BELGE[x.y].yas} gun)`).join(", ")}`);
}
```

```
model: 26 belge, 15 gereksinim zinciri, 8 konu alani

duzey          belge     esikli  kayit uretir   donem kaydi  ort yas gun
politika           6          0             0             0          432
standart           9          7             0             0          301
yordam            11         10            10          1034          120
toplam 26 belgenin 10 tanesi denetimde kanit uretiyor; 9 tanesi olculebilir esik tasimiyor

zincir durumu           sayi       yuzde                           gereksinimler
tam                        9          60     Z01 Z02 Z04 Z05 Z06 Z07 Z08 Z10 Z13
kayit uretmiyor            1           7                                     Z09
yordam yok                 1           7                                     Z03
standart yok               1           7                                     Z11
politika yok               3          20                             Z12 Z14 Z15

kanitlanabilir gereksinim 11/15; politikasi olan 12, standardi olan 12, yordami olan 12
politikasi yordamindan 180 gunden fazla eski olan zincir 5: Z01 (420/60 gun), Z02 (420/110 gun), Z07 (900/20 gun), Z10 (640/280 gun), Z13 (300/85 gun)
```

Birinci tablo hiyerarşiyi düzey düzey ayırıyor ve üç sütunu birden okumak gerekiyor. Altı
politikanın **hiçbiri** ölçülebilir eşik taşımıyor ve hiçbiri kayıt üretmiyor; dokuz standardın
yedisi eşik taşıyor ama yine hiçbiri kayıt üretmiyor; on bir yordamın onu hem eşik taşıyor hem
kayıt üretiyor ve dönemde 1.034 kalem çıkarıyor. Yirmi altı belgenin **onu** denetimde kanıt
üretiyor. Kalan on altısı denetim dosyasına konabilir, okunur, kabul edilir — ama bir işin
yapıldığını göstermez, yalnız yapılması gerektiğini söyler.

Yaş sütunu bunun neden böyle olduğunu açıklıyor. Politikaların ortalama yaşı 432 gün, standartların
301, yordamların 120. Sıralamanın yönü rastlantı değildir: kayıt üreten belge her koşumunda
gerçeklikle karşılaşır ve tutmadığında değişir; hiç kayıt üretmeyen belge kendiliğinden hiçbir
baskıya uğramaz. Son satır bunun keskin biçimini veriyor — beş zincirde politika, kendi yordamından
180 günden fazla eskidir; değişiklik alanında politika 900, yordam 20 günlüktür. Bu zincirlerde iki
belge **aynı işi farklı biçimde** anlatıyor olabilir ve çelişki yalnız okuyan biri fark ederse
görünür.

İkinci tablo zincirleri koşturuyor. On beş gereksinimin dokuzu tam zincirdir. Kalan altı zincirin
koptuğu yer birbirinden çok farklıdır ve dört ayrı sonuç doğurur: Z09'un yordamı vardır ama kayıt
üretmez, Z03'ün standardı vardır yordamı yoktur, Z11'in yalnız politikası vardır, Z12, Z14 ve
Z15'in politikası yoktur.

Son satırdan önceki sayı bu dersin ana ayrımını veriyor: **kanıtlanabilir gereksinim 11'dir, tam
zincir ise 9.** Aradaki iki gereksinim — süreklilik tatbikatı ve varlık envanteri — politikasızdır,
ama kayıt üreten bir yordamları vardır. Denetimde bu ikisi kanıtlanır. Yani kanıt üretimi
hiyerarşinin üst düzeylerine bağlı değildir; kayıt üreten bir yordam, üzerinde hiçbir politika
olmasa da bir işin yapıldığını gösterir. Bunun tersi doğru değildir: on iki zincirin politikası
vardır ama politikaların hiçbiri tek başına hiçbir gereksinimi kanıtlamaz.

## Eksik Halkanın Bedeli

```js
// belge/tamamlama.mjs — kopuk halkayi tamamlamanin bedeli ve alan basina kanit uretimi.
import { BELGE, ZINCIR, DUZEY, gen, kanitli, kopus } from "./hiyerarsi.mjs";

// Eksik halkayi uretmenin maliyeti (adam-gun, kurgu)
const GUN = { politika: 3, standart: 8, yordam: 15, kayit: 10 };
const eksikler = (z) => [...(!z.p ? ["politika"] : []), ...(!z.s ? ["standart"] : []),
  ...(!z.y ? ["yordam", "kayit"] : BELGE[z.y].kayit === 0 ? ["kayit"] : [])];
const maliyet = (z) => eksikler(z).reduce((a, e) => a + GUN[e], 0);

const eksikZincir = ZINCIR.filter((z) => eksikler(z).length > 0);
const y = gen([31, 32, 7, 15, 14]);
console.log(`${eksikZincir.length} zincirde eksik halka var; kanitlanabilir gereksinim ` +
  `${ZINCIR.filter(kanitli).length}/${ZINCIR.length}`);
console.log("\n" + y("gereksinim", "eksik halka", "gun", "kanit kazanci", "gun / kazanc"));
for (const z of [...eksikZincir].sort((a, b) => maliyet(a) - maliyet(b))) {
  const kazanc = kanitli(z) ? 0 : 1;
  console.log(y(z.ad, eksikler(z).join("+"), maliyet(z), kazanc,
    kazanc ? maliyet(z) : "kazanc yok"));
}
const kanitsiz = eksikZincir.filter((z) => !kanitli(z));
const gorunus = eksikZincir.filter((z) => kanitli(z));
console.log(`\nkanit kazandiran ${kanitsiz.length} zincirin toplam bedeli ` +
  `${kanitsiz.reduce((a, z) => a + maliyet(z), 0)} adam-gun; hicbir kanit kazandirmayan ` +
  `${gorunus.length} zincirin bedeli ${gorunus.reduce((a, z) => a + maliyet(z), 0)} adam-gun`);
console.log(`ucuzdan pahaliya siralama: ` +
  `${[...eksikZincir].sort((a, b) => maliyet(a) - maliyet(b)).map((z) => z.kod).join(" < ")}`);
console.log(`kanit kazancina gore siralama: ` +
  `${[...eksikZincir].sort((a, b) => (kanitli(a) ? 1 : 0) - (kanitli(b) ? 1 : 0) ||
    maliyet(a) - maliyet(b)).map((z) => z.kod).join(" < ")}`);

// Alan basina belge sayisi ile kanit uretimi
const alanlar = [...new Set(Object.values(BELGE).map((b) => b.alan))];
const belgeSay = (a) => Object.values(BELGE).filter((b) => b.alan === a);
const z2 = gen([13, 9, 12, 13, 13, 12]);
console.log("\n" + z2("konu alani", "belge", ...DUZEY, "donem kaydi"));
for (const a of alanlar) {
  const k = belgeSay(a);
  console.log(z2(a, k.length, ...DUZEY.map((d) => k.filter((b) => b.duzey === d).length),
    k.reduce((x, b) => x + b.kayit, 0)));
}
const sB = [...alanlar].sort((a, b) => belgeSay(b).length - belgeSay(a).length ||
  a.localeCompare(b));
const sK = [...alanlar].sort((a, b) => belgeSay(b).reduce((x, i) => x + i.kayit, 0) -
  belgeSay(a).reduce((x, i) => x + i.kayit, 0) || a.localeCompare(b));
console.log(`\nbelge sayisina gore ilk uc : ${sB.slice(0, 3).join(", ")}`);
console.log(`kanit uretimine gore ilk uc: ${sK.slice(0, 3).join(", ")}`);
console.log(`ortak: ${sK.slice(0, 3).filter((a) => sB.slice(0, 3).includes(a)).length}/3; ` +
  `tek belgeli varlik alani ${belgeSay("varlik").reduce((x, b) => x + b.kayit, 0)} kayit, ` +
  `dort belgeli olay alani ${belgeSay("olay").reduce((x, b) => x + b.kayit, 0)} kayit uretiyor`);
console.log(`kopus noktalari: ` +
  `${eksikZincir.map((z) => `${z.kod} ${kopus(z)}`).join("; ")}`);
```

```
6 zincirde eksik halka var; kanitlanabilir gereksinim 11/15

gereksinim                                          eksik halka    gun  kanit kazanci  gun / kazanc
Z12 sureklilik tatbikati                               politika      3              0    kazanc yok
Z09 olay sonrasi inceleme                                 kayit     10              1            10
Z14 varlik envanteri                          politika+standart     11              0    kazanc yok
Z03 kimlik dogrulama kurallari                     yordam+kayit     25              1            25
Z11 tedarikciden cikis                    standart+yordam+kayit     33              1            33
Z15 kayitlarin butunlugu         politika+standart+yordam+kayit     36              1            36

kanit kazandiran 4 zincirin toplam bedeli 104 adam-gun; hicbir kanit kazandirmayan 2 zincirin bedeli 14 adam-gun
ucuzdan pahaliya siralama: Z12 < Z09 < Z14 < Z03 < Z11 < Z15
kanit kazancina gore siralama: Z09 < Z03 < Z11 < Z15 < Z12 < Z14

konu alani       belge    politika     standart       yordam donem kaydi
erisim               5           1            2            2         288
veri                 5           1            2            2         395
degisiklik           3           1            1            1         310
olay                 4           1            1            2          18
tedarik              3           1            1            1           3
farkindalik          3           1            1            1           4
sureklilik           2           0            1            1           4
varlik               1           0            0            1          12

belge sayisina gore ilk uc : erisim, veri, olay
kanit uretimine gore ilk uc: veri, degisiklik, erisim
ortak: 2/3; tek belgeli varlik alani 12 kayit, dort belgeli olay alani 18 kayit uretiyor
kopus noktalari: Z03 yordam yok; Z09 kayit uretmiyor; Z11 standart yok; Z12 politika yok; Z14 politika yok; Z15 politika yok
```

Birinci tablo, ucuzdan pahalıya dizildiğinde en yukarıda iki tuzak taşıyor. Süreklilik tatbikatı 3
adam-günde, varlık envanteri 11 adam-günde "tam zincir" hâline gelir; ikisi de **hiçbir yeni kanıt
üretmez**, çünkü ikisi de zaten kanıtlanabilir durumdadır. Toplam 14 adam-gün, denetim raporundaki
tablo görüntüsünü düzeltir ve denetimde gösterilen kalem sayısını değiştirmez. Buna karşılık olay
sonrası incelemenin kayıt akışını kurmak 10 adam-gündür ve kanıtlanamayan bir gereksinimi
kanıtlanabilir yapar.

İki sıralama tam olarak burada ayrışıyor. Ucuzdan pahalıya sıra Z12 ile başlıyor; kanıt kazancına
göre sıra Z09 ile başlıyor ve Z12 ile Z14 en sona düşüyor. Eksik halkaları düzeye bakarak
tamamlamak — "önce politikaları yazalım, hiyerarşi tamamlansın" — 14 adam-günü **yalnız görünüşe**
harcamak demektir. Kanıt kazandıran dört zincirin toplam bedeli 104 adam-gündür ve bunun 36'sı tek
bir zincire, hiçbir düzeyi olmayan kayıt bütünlüğüne gider.

Son tablo aynı ayrışmayı konu alanı düzeyinde gösteriyor. Belge sayısına göre ilk üç erişim, veri ve
olay alanlarıdır; kanıt üretimine göre ilk üç veri, değişiklik ve erişimdir. Olay alanı dört belge
taşıyor ve dönemde 18 kayıt üretiyor; varlık alanının tek bir belgesi var ve 12 kayıt üretiyor.
**Bir alanda kaç belge olduğu, o alanda ne kadar kanıt üretildiği hakkında bilgi vermiyor.** Belge
sayımı bir çaba ölçüsüdür; kayıt sayımı bir sonuç ölçüsüdür ve bu iki sayı arasında yapısal bir bağ
yoktur.

## Özet

- Belge hiyerarşisi üç düzeylidir: politika niyeti bildirir, standart ölçülebilir bir eşik verir,
  yordam koşumunda kayıt üretir. Denetimde kanıt yalnız son düzeyden çıkar.
- Yirmi altı belgenin onu kanıt üretiyor; altı politikanın hiçbiri eşik taşımıyor ya da kayıt
  üretmiyor, dokuz standardın yedisi eşik taşıyor ama hiçbiri kayıt üretmiyor.
- Kayıt üreten belge daha tazedir: politikaların ortalama yaşı 432, yordamların 120 gündür. Beş
  zincirde politika kendi yordamından 180 günden fazla eskidir.
- Kanıtlanabilir gereksinim 11, tam zincir 9'dur: iki gereksinim politikasız olduğu hâlde kayıt
  üreten yordamı sayesinde kanıtlanır. Bunun tersi doğru değildir — hiçbir politika tek başına bir
  gereksinimi kanıtlamaz.
- Eksik halkaları düzeye göre tamamlamak yanıltır: 14 adam-gün iki zinciri "tam" gösterir ve hiçbir
  yeni kanıt üretmez; kanıt kazandıran dört zincirin bedeli 104 adam-gündür ve en ucuzu 10 gündür.
- Bir konu alanındaki belge sayısı, o alanın kanıt üretimi hakkında bilgi vermiyor: dört belgeli
  olay alanı 18, tek belgeli varlık alanı 12 kayıt üretiyor.

## Sonraki Adım

Bu dersin bütün sayıları bir kabule dayanıyor: zincirin dolu olduğu söylenen hücreleri gerçekten
doludur, kayıt üretiyor denen yordam gerçekten üretiyordur, 900 günlük politika hâlâ geçerlidir. Bu
kabulün kaynağı bellidir — tabloyu dolduran, belgeleri yazan ve kayıtların üretildiğini bildiren
taraf aynı taraftır. Beş ders boyunca ölçülen her şey kurumun **kendi beyanı** üzerinde koşturuldu.

Sonraki ders konuyu kapatır ve bu kabulü kaldırır: aynı kişi hem kontrolü kurup hem denetlerse kaç
bulgu hiç görünmez, kuran ile denetleyeni ayırmak kaç kalemi ortaya çıkarır ve bu ayrımın kendisi
kaç kalem ek iş getirir. Bağımsız güvence bir sıfat değil, sayılabilir bir düzenlemedir.
