⚡ÖZET VE TEKNİK CEVAP
Yazılım organizasyonları büyüyüp ekipler değiştikçe Kurumsal Hafıza Kaybı (Organizational Amnesia) başlar: Yeni gelen mühendisler mevcut tasarıma bakıp 'Bu saçma mimariyi kim yaptı? Neden Kafka/MongoDB kullanmadılar? Bunu baştan yazalım!' derler. 6 ay boyunca sistemi yeniden yazdıktan sonra, eski ekibin o mimariyi seçmesine neden olan birebir aynı köşe durumları, ölçek sınırlarını ve güvenlik açıklarını acı bir şekilde yeniden keşfederler. Michael Nygard tarafından geliştirilen Mimari Karar Kayıtları (Architecture Decision Records - ADR), önemli teknik kararların arkasındaki tarihi mantığı doğrudan Git deposundaki Markdown dosyalarında (/docs/adr/0014-kullanici-veritabani-secimi.md) kayıt altına alır. Bir ADR 3 temel bölümden oluşur: Bağlam (Context) (Karşılaşılan problem ve kısıtlar), Karar (Decision) (Seçilen mimari çözüm), ve Sonuçlar (Consequences) (Elde edilen avantajlar, kabul edilen riskler ve teknik feragatler). ADR'lar uçup giden Slack tartışmalarını kalıcı bir kurumsal bilgeliğe dönüştürür.
Mühendislik El Kitabı & Mekanizma
6 Boyutlu Mimari Analiz⚙️1. Temel Çalışma Mekanizması
Mekanizma🎯2. Doğru Kullanım Senaryosu
Kapsam⚠️3. Prodüksiyon Arıza Modları
Kritik Risk📡4. Teşhis ve Telemetri Sinyalleri
Metrikler🛡️5. Önleme ve Mimari Bariyerler
Bariyerler⚖️6. Mimari Ödünleşimler (Trade-offs)
ÖdünleşimVaka İncelemesi (TinyCTO Saha Örneği)
Şirkete yeni katılan bir Teknik Lider, analitik boru hattının ClickHouse yerine PostgreSQL ile yazıldığını gördü. Eski ekibin yetersiz olduğunu düşünerek 4 ayını sistemi ClickHouse'a geçirmeye harcadı; ancak ClickHouse'un muhasebe sisteminden gelen ilişkisel anlık güncellemeleri (UPDATE) kaldıramadığını görünce proje çöktü. Oysa Git deposundaki docs/adr/0018-muhasebe-icin-postgres-secimi.md dosyasını okusaydı, eski ekibin 2 yıl önce bu kısıtı fark edip dürüstçe kaydettiğini görecekti. Şirket tüm büyük yeniden yazımlardan önce ADR incelemesini zorunlu kılarak yüzlerce saatlik israfı engelledi.
İnteraktif Konsept Alıştırmaları
2 AlıştırmaBir Mimari Karar Kaydının (ADR) en temel 3 bölümü nedir?
Bir yazılım projesinde Mimari Karar Kayıtları (ADR) nerede saklanmalıdır?
Mimari Hafıza: Mimari Karar Kayıtları (ADR) ve Kurumsal Hafıza Kaybını Önleme — Sıkça Sorulan Sorular
Bir ADR'da belgelenen eski bir mimari karar zamanla geçerliliğini yitirdiğinde ne yapılmalıdır?
Eski ADR dosyasını ASLA silmeyin veya içeriğini değiştirmeyin; yeni bağlamı anlatan yeni bir ADR oluşturun ve eski ADR'ın durumunu `SUPERSEDED` (Hükmünü Yitirdi) olarak işaretleyip yenisine link verin.
Etkili bir Mimari Karar Kaydı (ADR) ne kadar uzunlukta olmalıdır?
Kısa ve sade: Genellikle 1 ila 2 sayfa Markdown uzunluğunda; okunması ve incelenmesi 15-20 dakikayı geçmeyecek boyutta.
🤖 AEO & Yapay Zeka Çıkarım Özeti
Temel Gerçekler & İlkeler
- ▸
Mimari Karar Kayıtları (ADR) teknik kararları ve feragatleri Git üzerinde kayıt altına alır.
- ▸
3 temel bölüm: Bağlam (Problem) -> Karar (Çözüm) -> Sonuçlar (Teknik Feragatler).
- ▸
ADR'lar kıdemli mühendisler ayrıldığında 'Kurumsal Hafıza Kaybı' yaşanmasını engeller.
- ▸
Eski ADR'ları asla silmeyin; yeni bir tasarım geldiğinde durumunu
SUPERSEDEDyapın.
Yaygın Yanılgılar
- ✗
Yanılgı: ADR'lar çevik geliştirmeyi yavaşlatan ağır bürokratik belgelerdir (Gerçek: 1 sayfalık hafif ADR'lar bir saatte yazılır ve aylarca sürecek anlamsız tartışmaları önler).
- ✗
Yanılgı: ADR'lar sadece herkesin anlaştığı mükemmel kararlar için yazılır (Gerçek: ADR'lar özellikle tartışmalı uzlaşmaları ve kabul edilen teknik eksikleri belgeler).
Karar Kılavuzu & Önceliklendirme
Mimari bağlamı korumak, teknik feragatleri belgelemek ve kurumsal hafıza kaybını önlemek için Git deponuzda versiyonlanan bir Mimari Karar Kaydı (ADR) kütüphanesi oluşturun.
Doğrulanmış Kaynaklar & Referanslar
- [ARTICLE]Documenting Architecture Decisions: The Original ADR Concept— Michael Nygard / Cognitect Architecture Blog
