Solution Architecture: Modullar
Proqram biznes tələblərindən başlayaraq əsaslandırılmış həll arxitekturası hazırlamağı öyrədir: keyfiyyət atributlarını ölçülən hala gətirmək, uyğun üslub və inteqrasiya nümunəsi seçmək, data və təhlükəsizliyi dizayn etmək, bulud və xərc kompromislərini qiymətləndirmək. Nəticə: C4 və ADR ilə sənədləşdirilmiş və review-dan keçmiş həll.
01
Tələblər, keyfiyyət atributları və məhdudiyyətlər
Qeyri-dəqiq biznes istəyini yoxlana bilən keyfiyyət ssenarilərinə çevirmək.
- Funksional və qeyri-funksional tələb fərqi
- Keyfiyyət atributu ssenarisi formatı
- Məhdudiyyətlər: büdcə, komanda, qanunvericilik, legacy
- Atributlar arasında kompromis
- Tələblərdə qeyri-müəyyənliyin aşkarlanması
Laboratoriya: Verilmiş biznes təsvirindən 8 keyfiyyət ssenarisi və prioritetləşdirilmiş məhdudiyyət siyahısı hazırlamaq.
02
Arxitektura üslubları və sərhədlər
Üslub seçimini komanda, tələb və inkişaf mərhələsi kontekstində qiymətləndirmək.
- Monolit, modul monolit və mikroservis kompromisləri
- Domen sərhədləri və bounded context
- Hadisə yönümlü arxitektura və onun qiyməti
- Layered, hexagonal və onların yeri
- Evolyusion arxitektura və miqrasiya yolları
Laboratoriya: Eyni tələb üçün iki üslub variantı çıxarıb müqayisə cədvəli və tövsiyə yazmaq.
03
İnteqrasiya nümunələri
Sistemlər arasında etibarlı və dəyişikliyə dözümlü əlaqə qurmaq.
- Sinxron API və asinxron mesajlaşma seçimi
- Idempotency, retry və outbox
- API versiyalaşdırma və müqavilə təkamülü
- Anti-corruption layer və xarici sistemlər
- Saga və paylanmış əməliyyat alternativləri
Laboratoriya: Ödəniş provayderi və anbar sistemi ilə inteqrasiya axını dizayn etmək, uğursuzluq ssenarilərini cədvəllə.
04
Data arxitekturası
Data sahibliyi, konsistentlik və hesabat ehtiyacları arasında balans.
- Hər xidmətin öz datası və paylaşılan verilənlər bazası riski
- Güclü və son konsistentlik seçimi
- CQRS, read model və cache
- Data miqrasiyası və sıfır dayanma yanaşmaları
- Analitika və operativ data ayrılması
Laboratoriya: Sifariş domeni üçün data sahibliyi xəritəsi və legacy bazadan miqrasiya planı.
05
Təhlükəsizlik arxitekturası
Təhlükəsizliyi sonradan əlavə deyil, dizaynın hissəsi kimi qurmaq.
- Təhdid modelləşdirməsi (STRIDE)
- Kimlik doğrulama, icazə və OAuth 2.0 / OIDC axınları
- Trust sərhədləri və şəbəkə seqmentasiyası
- Gizli məlumatların idarəsi və şifrələmə
- OWASP API Security Top 10 üzrə yoxlama
Laboratoriya: Verilmiş həll üçün trust sərhədli diaqram, təhdid siyahısı və azaltma tədbirləri.
06
Bulud, etibarlılıq və xərc kompromisləri
Yerləşdirmə modelini, dayanıqlığı və xərci tələblərlə əlaqələndirmək.
- Managed xidmət və özün idarə etmək kompromisi
- Çoxzonalı dayanıqlıq, RTO və RPO
- Mürəkkəbliyin xərci və vendor asılılığı
- Capacity və xərc modelləşdirməsi
- Observability tələbləri arxitekturada
Laboratoriya: İki yerləşdirmə variantı üçün dayanıqlıq və xərc kompromisi cədvəli (rəqəmləri fərziyyə kimi qeyd edərək).
07
C4 və ADR ilə sənədləşdirmə
Arxitekturanı müxtəlif auditoriya üçün aydın və yenilənə bilən saxlamaq.
- C4: context, container, component səviyyələri
- Hər səviyyədə nəyi göstərmək və göstərməmək
- ADR və diaqramlar arasında əlaqə
- Sənədin yenilənməsi və sahibliyi
- Dynamic və deployment diaqramları
Laboratoriya: Case study üçün C4 diaqramlarının context-dən component-ə qədər dəsti.
08
Arxitektura review və delivery komandası ilə iş
Arxitektura qərarını komandaya çatdırmaq və icra zamanı onu qorumaq.
- Arxitektura review formatları və meyarları
- ATAM tipli yanaşmanın yüngül forması
- Fitness function və avtomatik yoxlama
- Delivery komandası ilə əməkdaşlıq
- Qərar kənarlaşmasının idarəsi
Laboratoriya: Başqa iştirakçının həllinə mock arxitektura review aparıb yazılı nəticə hazırlamaq.