Yapay Zekanın Ürettiği Kod Nasıl Denetlenir? Çevik Ekipler İçin Denetim ve Yönetişim Çerçevesi
Yapay zeka ile üretilen kodun kalitesini ve güvenliğini nasıl garanti altına alırsınız? Teknik denetim katmanları, Definition of Done güncellemesi, insan onayı, risk matrisi ve kalite metrikleriyle uygulanabilir bir çerçeve.
Aycan Altınöz · 2026-10-21 · Güncellendi: 2026-10-21
Kısa cevap: Yapay zekanın ürettiği kod, insanın yazdığı koddan daha az değil, farklı biçimde denetlenmelidir. Otomatik kontroller (statik analiz, güvenlik taraması, bağımlılık ve lisans kontrolü, testler) her değişikliği CI/CD hattında yakalar. İnsan incelemesi ise riske göre derinleşir. Bu denetim ayrı bir aşama olarak değil, sprint'in Definition of Done'ı ve kalite metrikleri içinde yönetildiğinde hem hız hem güven korunur.
Yapay zeka kodu neden ayrı bir denetim yaklaşımı gerektirir?
Kod asistanları ekiplerin daha kısa sürede çok daha fazla kod üretmesini sağlıyor. Sorun, üretim hızının inceleme kapasitesinden hızlı artmasıdır. Pull request'ler büyür, inceleme yüzeyselleşir ve "testler geçti" ifadesi kalite kanıtı yerine geçmeye başlar.
Yapay zeka kodunda tekrar eden risk tipleri şunlardır:
- Sözdizimi doğru, ancak iş kuralını yanlış uygulayan mantık
- Var olmayan veya güvenilmeyen paketlere yapılan referanslar
- Eski veya güvensiz kütüphane sürümleri ve kalıplar
- Girdi doğrulaması, yetkilendirme ve hata yönetiminin atlanması
- Lisansı belirsiz kod parçaları
- Mevcut mimari kurallarla çelişen, kopyalanmış çözümler
- Kodu yazan kişinin kendisinin de tam açıklayamadığı yapılar
Bu nedenle soru "yapay zeka kodu güvenilir mi?" değil, "hangi kontrolün hangi riski hangi aşamada yakaladığı tanımlı mı?" olmalıdır.
Yapay zeka çıktılarında teknik denetim katmanları
Denetim tek bir kontrol noktası değil, birbirini tamamlayan katmanlardan oluşur. Her katman farklı bir risk tipini yakalar.
| Katman | Ne kontrol eder? | Nasıl uygulanır? | Ne zaman? | ||
|---|---|---|---|---|---|
| 1. Statik analiz ve kod standartları | Stil, karmaşıklık, kod kokuları, kullanılmayan kod | Linter ve statik analiz araçları, kalite kapısı eşikleri | Her commit ve pull request | ||
| 2. Güvenlik taraması | Bilinen açık kalıpları, gömülü gizli bilgiler (secret) | SAST ve secret scanning | Her pull request | ||
| 3. Bağımlılık ve lisans kontrolü | Var olmayan veya riskli paketler, açık içeren sürümler, lisans uyumu | SCA aracı, onaylı paket listesi, lisans politikası | Bağımlılık eklendiğinde veya değiştiğinde | ||
| 4. Otomatik testler | Fonksiyonel doğruluk, regresyon, sınır durumları | Birim, entegrasyon ve sözleşme testleri; kritik akışlarda kapsam eşiği | Her pull request ve sürüm öncesi | ||
| 5. İnsan incelemesi | İş kuralına uygunluk, mimari tutarlılık, okunabilirlik, bakım maliyeti | Riske göre derinleşen code review | Her pull request (derinlik riske göre değişir) | ||
| 6. Üretim sonrası gözlem | Gerçek kullanımda hata, performans ve güvenlik sinyalleri | İzleme, alarm, hata takibi, geri alma planı | Sürekli |
İlk dört katman otomatik olmalıdır. İnsan incelemesinin değeri, makinenin yakalayamadığı alanlara odaklanmasıyla artar: iş mantığı, mimari ve bakım maliyeti.
Geleneksel code review ile AI destekli code review arasındaki fark
| Boyut | Geleneksel code review | AI destekli code review | ||
|---|---|---|---|---|
| İncelemenin odağı | Satır satır kontrol, stil ve hata avı | Stil ve bilinen hatalar otomatik; insan iş kuralı, mimari ve riske odaklanır | ||
| Pull request boyutu | Geliştiricinin yazma hızıyla sınırlı | Kolayca büyür; boyut sınırı ve parçalama kuralı gerekir | ||
| Kanıt | "Testler geçti" ve inceleyenin onayı | Testler, tarama sonuçları, kullanılan prompt veya bağlam notu ve gerekçe | ||
| Sorumluluk | Kodu yazan geliştirici | Kodu commit eden geliştirici; araç sorumluluk taşımaz | ||
| Bilgi aktarımı | İnceleme sırasında doğal olarak gerçekleşir | Bilinçli tasarlanmalı; geliştirici kodu açıklayabilmeli | ||
| Ölçüm | İnceleme süresi, yorum sayısı | Ek olarak: AI destekli değişikliklerde hata kaçışı, geri alma ve yeniden iş oranı |
Temel ilke değişmez: kodu commit eden kişi, kodun her satırını açıklayabilmeli ve sorumluluğunu üstlenmelidir.
Çevik süreçlerde AI denetimi: Definition of Done güncellemesi
Yapay zeka kodunu ayrı bir onay kuyruğuyla yönetmek, çevik ekipte yeni bir darboğaz yaratır. Daha sağlıklı yol, denetimi mevcut çalışma sisteminin içine almaktır. Bunun merkezinde Definition of Done (DoD) vardır.
AI destekli geliştirme yapan bir ekip için DoD'ye eklenebilecek maddeler:
- Statik analiz, güvenlik taraması ve bağımlılık kontrolü kalite kapısından geçti.
- Yeni eklenen her paket onaylı listede veya onay sürecinden geçti.
- Değişikliğin kritik akışları otomatik testlerle kapsanıyor.
- Pull request belirlenen boyut sınırını aşmıyor; aşıyorsa parçalara bölündü.
- Yüksek riskli alanlarda (kimlik doğrulama, ödeme, kişisel veri, yetkilendirme) ikinci bir kıdemli inceleme yapıldı.
- Geliştirici, değişikliğin mantığını pull request açıklamasında kendi cümleleriyle anlattı.
- Gerekli durumlarda geri alma yöntemi tanımlandı.
Seremonilerde de karşılığı olmalıdır:
- Sprint Planning: AI ile hızlanması beklenen işler için inceleme kapasitesi de planlanır. Yazma süresi kısalırken inceleme süresi uzayabilir.
- Backlog Refinement: Yüksek riskli işler önceden etiketlenir ve hangi inceleme derinliğinin uygulanacağı belirlenir.
- Sprint Review: Yalnızca özellikler değil, kalite kapısı sonuçları ve kaçan hatalar da gösterilir.
- Retrospective: AI destekli değişikliklerde hangi hata tiplerinin tekrar ettiği konuşulur ve DoD güncellenir.
İnsan döngüde (human-in-the-loop) denetim stratejileri
Her değişikliğe aynı derinlikte inceleme uygulamak ya kapasiteyi tüketir ya da incelemeyi yüzeyselleştirir. Riske göre kademeli bir model daha sürdürülebilirdir.
| Risk seviyesi | Örnek değişiklikler | İnceleme yaklaşımı | ||
|---|---|---|---|---|
| Düşük | Dokümantasyon, test verisi, iç araçlarda küçük değişiklikler | Otomatik kontroller + tek inceleyen | ||
| Orta | Yeni iş kuralı, API değişikliği, veri modeli güncellemesi | Otomatik kontroller + ilgili alanı bilen inceleyen + test kapsamı kontrolü | ||
| Yüksek | Kimlik doğrulama, yetkilendirme, ödeme, kişisel veri, şifreleme, altyapı | Otomatik kontroller + iki inceleyen (biri kıdemli) + güvenlik incelemesi + kontrollü yayın |
İnsan onayının da tasarlanması gerekir: hangi rol, hangi eşikte, hangi bilgiye bakarak ve ne kadar sürede onay verecek? Bu tanımlanmazsa "human in the loop" sunumda kalan bir ifadeye, sahada ise darboğaza dönüşür.
Yapay zeka kod üretiminde risk ve yönetişim matrisi
Proje yöneticileri ve teknik liderler için riskleri sahipleri ve kontrolleriyle birlikte görünür kılan bir matris:
| Risk | Olası etki | Önleyici kontrol | Sahibi | ||
|---|---|---|---|---|---|
| Yanlış iş mantığı | Hatalı hesaplama, yanlış karar, müşteri şikayeti | Kabul kriterleri, iş kuralı testleri, alan uzmanı incelemesi | Product Owner + geliştirici | ||
| Güvenlik açığı | Veri sızıntısı, yetkisiz erişim | SAST, secret scanning, yüksek riskli alanlarda güvenlik incelemesi | Güvenlik sorumlusu | ||
| Riskli veya var olmayan bağımlılık | Tedarik zinciri saldırısı, derleme hatası | Onaylı paket listesi, SCA taraması | Teknik lider | ||
| Lisans uyumsuzluğu | Hukuki risk | Lisans politikası ve otomatik kontrol | Hukuk + teknik lider | ||
| Teknik borç birikimi | Artan bakım maliyeti, yavaşlayan teslimat | Karmaşıklık eşikleri, mimari kurallar, refactoring payı | Teknik lider | ||
| Hassas verinin AI aracına gönderilmesi | Gizlilik ve mevzuat ihlali | Onaylı araç listesi, kullanım politikası, eğitim | BT yönetişimi | ||
| Bilgi kaybı | Kodu kimsenin tam anlamaması | Geliştiricinin açıklama zorunluluğu, eşli inceleme | Ekip lideri |
Yapay zekaya özgü uygulama riskleri için OWASP'ın LLM uygulamaları için yayımladığı Top 10 listesi, güvenli yazılım geliştirme pratikleri için NIST'in Secure Software Development Framework'ü (SP 800-218) referans alınabilir.
AI denetimini CI/CD hattına entegre etmek
Denetimin sürdürülebilir olması için kontrollerin geliştiricinin hatırlamasına değil, teslimat hattına bağlı olması gerekir. Örnek bir akış:
- Geliştirici, AI asistanıyla ürettiği değişikliği küçük ve anlamlı bir pull request olarak açar.
- Otomatik kalite kapısı çalışır: statik analiz, güvenlik taraması, bağımlılık ve lisans kontrolü, testler.
- Kapıdan geçemeyen değişiklik incelemeye gitmeden geliştiriciye geri döner.
- Değişiklik, dokunduğu alana göre düşük, orta veya yüksek risk olarak etiketlenir.
- Risk seviyesine göre bir veya iki inceleyen atanır; yüksek riskte güvenlik incelemesi eklenir.
- Onaylanan değişiklik kontrollü olarak yayına alınır (feature flag, kademeli yayın).
- Üretimde izleme ve alarm devrededir; sorun halinde geri alma planı uygulanır.
- Kaçan hatalar retrospektifte analiz edilir ve kalite kapısı veya DoD güncellenir.
Ölçülebilir başarı: AI destekli geliştirmede kalite metrikleri
AI kod asistanlarının etkisi, üretilen kod satırı veya kabul edilen öneri sayısıyla ölçülmemelidir. Bunlar faaliyet göstergesidir, sonuç göstergesi değildir. Aşağıdaki metrikler, AI kullanımı öncesindeki baz dönemle karşılaştırılarak izlenmelidir.
| Metrik | Ne anlatır? | ||
|---|---|---|---|
| Change failure rate | Üretime çıkan değişikliklerin ne kadarının hataya yol açtığı | ||
| Lead time for changes | Kodun commit'ten üretime geçme süresi | ||
| Hata kaçış oranı | Testlerden ve incelemeden kaçıp üretimde bulunan hatalar | ||
| Yeniden iş ve geri alma oranı | Kısa süre içinde düzeltilen veya geri alınan değişiklikler | ||
| İnceleme süresi ve pull request boyutu | İnceleme kapasitesinin darboğaza dönüşüp dönüşmediği | ||
| Güvenlik bulgu yoğunluğu | Değişiklik başına tespit edilen güvenlik bulguları | ||
| Karmaşıklık ve tekrar eden kod eğilimi | Teknik borcun birikip birikmediği |
İlk iki metrik DORA'nın teslimat performansı göstergeleri arasındadır. Bu metriklerin birlikte okunması önemlidir: teslimat hızı artarken hata ve geri alma oranı da artıyorsa, kazanılan hız sonraki sprintlerde yeniden iş olarak geri ödenir.
Proje yöneticileri için AI ile üretilen kod hazırlık kontrol listesi
- ☐ Ekipte hangi AI kod araçlarının onaylı olduğu ve hangi verilerin bu araçlarla paylaşılamayacağı yazılı olarak tanımlı mı?
- ☐ CI/CD hattında statik analiz, güvenlik taraması, bağımlılık ve lisans kontrolü otomatik çalışıyor mu?
- ☐ Definition of Done, AI destekli geliştirmeye özgü maddeleri içeriyor mu?
- ☐ Riske göre inceleme derinliği (düşük, orta, yüksek) tanımlı mı?
- ☐ Pull request boyutu için bir sınır var mı?
- ☐ Yüksek riskli alanlar listelenmiş ve bu alanlar için ek inceleme zorunlu mu?
- ☐ AI kullanımı öncesine ait baz metrikler (hata oranı, lead time, yeniden iş) ölçülmüş mü?
- ☐ Sprint planlamasında inceleme kapasitesi ayrıca hesaba katılıyor mu?
- ☐ Kaçan hatalar retrospektifte düzenli olarak analiz ediliyor mu?
- ☐ Ekip, AI çıktısını sorgulama ve doğrulama konusunda eğitim aldı mı?
AI Destekli Geliştirmede ROI Yaklaşımı
Basitleştirilmiş bir hesaplama şu şekilde yapılabilir:
ROI (%) = [(Ölçülebilir toplam fayda − Toplam yatırım maliyeti) / Toplam yatırım maliyeti] × 100
Toplam fayda; doğrulanmış iş gücü tasarrufu, yeniden çalışma maliyetindeki azalma, belirli operasyonel maliyetlerin düşmesi veya daha erken değer sunumundan elde edilen ekonomik katkıları içerebilir.
Toplam maliyet ise araç lisansları, entegrasyon, eğitim, güvenlik kontrolleri, model kullanımı ve bakım giderlerini kapsamalıdır.
Örneğin bir organizasyon yapay zeka araçları sayesinde geliştirme faaliyetlerinde zaman kazandığını belirleyebilir.
Ancak kod inceleme ve test süreleri aynı oranda artmışsa net kazanım beklenenden düşük olabilir.
Bu nedenle AI yatırımının gerçek etkisi, kod üretiminden üretim ortamına kadar uzanan bütün süreç üzerinden değerlendirilmelidir.
Otomatik kalite kontrolleri ROI'ye nasıl katkı sağlar?
Otomatik kalite kontrolleri, belirli hata türlerinin daha erken tespit edilmesine ve manuel inceleme yükünün daha doğru alanlara yönlendirilmesine yardımcı olabilir.
Bununla birlikte yanlış pozitif bulgular, uzun süren pipeline çalışmaları ve bakım gerektiren test altyapıları da maliyet oluşturabilir.
Dolayısıyla hedef mümkün olan en fazla kontrolü eklemek değil, riskleri anlamlı biçimde azaltan ve delivery akışını destekleyen kontrol mekanizmaları oluşturmaktır.
90 Günlük Uygulama Planı
Kurumsal organizasyonlarda AI destekli yazılım geliştirme yönetişimi tek seferde bütün ekiplere uygulanmak zorunda değildir.
Kontrollü bir geçiş planı daha uygun olabilir.
İlk 30 gün: Mevcut durum ve risk analizi
Kullanılan yapay zeka araçları, mevcut kalite kontrolleri, güvenlik politikaları ve geliştirme süreçleri değerlendirilir.
AI kullanım senaryoları risk düzeylerine göre sınıflandırılır.
31–60. gün: Pilot uygulama ve kontrol tasarımı
Seçilen ekiplerde güncellenmiş Definition of Done kriterleri, otomatik kalite kontrolleri ve insan denetimi mekanizmaları uygulanır.
Başlangıç performansı ile pilot dönem sonuçları karşılaştırılır.
61–90. gün: Ölçüm ve iyileştirme
Delivery, kalite ve geliştirici deneyimi göstergeleri değerlendirilir.
Gereksiz kontroller sadeleştirilir, eksik güvenlik mekanizmaları geliştirilir ve başarılı uygulamaların diğer ekiplere yaygınlaştırılması planlanır.
Bu süreler örnek bir uygulama çerçevesidir. Büyük ve düzenlemeye tabi organizasyonlarda kapsamlı değerlendirme ve uygulama daha uzun sürebilir.
Nex4Future yaklaşımı
Nex4Future olarak AI destekli yazılım geliştirmeyi bir araç kurulumu olarak değil, teslimat sisteminin yeniden tasarımı olarak ele alıyoruz. Çalışma modelimiz dört adımdan oluşur:
- Keşfet: Mevcut SDLC, kalite kapıları ve baz metrikler çıkarılır.
- Tasarla: Risk matrisi, Definition of Done ve CI/CD kontrolleri ekibe göre tasarlanır.
- Uygula: Pilot ekiple eğitim, koçluk ve uygulama birlikte yürütülür.
- Ölç ve geliştir: Kalite ve teslimat metrikleri baz döneme göre izlenir, çerçeve sprint'ler içinde iyileştirilir.
Ekibinizin AI ile ürettiği kodu güvenle teslim etmesi için AI destekli SDLC dönüşümü ve AI destekli proje ve program yönetimi hizmetlerimizi inceleyebilirsiniz.
Sık sorulan sorular
Yapay zekanın ürettiği kod, insanın yazdığı koddan daha mı risklidir?
Doğası gereği daha riskli değildir, ancak farklı riskler taşır. En önemli fark hacimdir: AI çok daha fazla kodu çok daha hızlı üretir ve inceleme kapasitesi aynı hızda artmaz. Bu nedenle otomatik kontroller ve riske göre derinleşen inceleme zorunlu hale gelir.
AI ile üretilen kodun sorumluluğu kime aittir?
Kodu commit eden geliştiriciye ve onu onaylayan inceleyene aittir. AI aracı sorumluluk taşımaz. Bu yüzden geliştiricinin değişikliği kendi cümleleriyle açıklayabilmesi Definition of Done'ın parçası olmalıdır.
Her AI destekli değişiklik ayrıca incelenmeli mi?
Her değişiklik otomatik kalite kapısından geçmelidir. İnsan incelemesinin derinliği ise riske göre belirlenmelidir: düşük riskli değişikliklerde tek inceleyen yeterliyken, kimlik doğrulama, ödeme veya kişisel veri içeren değişikliklerde iki inceleyen ve güvenlik incelemesi gerekir.
Definition of Done'a hangi maddeler eklenmeli?
Kalite kapısının geçilmesi, yeni bağımlılıkların onaylanması, kritik akışların testle kapsanması, pull request boyut sınırı, yüksek riskli alanlarda ek inceleme, geliştiricinin değişikliği açıklaması ve gerektiğinde geri alma planı en temel maddelerdir.
AI kod asistanlarının etkisi nasıl ölçülür?
Üretilen kod satırı veya kabul edilen öneri sayısı yerine sonuç metrikleri izlenmelidir: change failure rate, lead time for changes, hata kaçış oranı, yeniden iş ve geri alma oranı. Bu metrikler AI kullanımı öncesindeki baz dönemle karşılaştırılmalıdır.
