UDENTIVA, sağlamlıq proqramı üçün axtarılan proses yetkinliyini arxitekturanın özünə hopdurur. Bu səhifə; tərtibat həyat dövrümüzü, SPICE / ISO-IEC 15504 bacarıq səviyyələrini, davamlı xəta loglama və nəzarət mexanizmlərimizi, versiya və təhlükəsizlik meyarlarımızı və tərtibat tarixçəmizi sübutları ilə ortaya qoyur.
Əsas: Sağlamlıq Məlumatı İdarəetmə Sistemləri Haqqında Yönətmelik (MevzuatNo 39682) m.6 və m.20 — proqram keyfiyyət (CMMI/SPICE) sertifikatlaşdırma tələbi.
Proses tərifi, tətbiqi və izlənəbilən iş məhsulları strukturlaşdırılıb; kəmiyyət ölçüsü, qüsurun qarşısının alınması və davamlı təkmilləşdirmə mexanizmləri istehsalda işlədilir. Rəsmi qabiliyyət səviyyəsi bəyanı müstəqil qiymətləndirmə (appraisal) əhatəsinə tabedir.
SPICE prosesləri 0-dan 5-ə qədər qabiliyyət səviyyəsi ilə qiymətləndirir. UDENTIVA Səviyyə 1-3 gözləntilərini proses tərifi/tətbiq/izlənilə bilən iş məhsulları səviyyəsində qarşılayacaq şəkildə qurulmuşdur; Səviyyə 4-5 üçün kəmiyyət ölçmə və davamlı təkmilləşdirmə mexanizmləri işlədilir. Rəsmi səviyyə bəyanı müstəqil qiymətləndirməyə tabedir.
Səviyyə 4-5-ə aid kəmiyyət nəzarəti və davamlı təkmilləşdirmə mexanizmləri aşağıda sübutları ilə (canlı ölçmə, xəta/CAPA reyestri, yerləşdirmə qeydləri) işlədilir.
Hər proses sahəsi UDENTIVA-da konkret bir tətbiqə və yoxlanıla bilən bir sübuta uyğun gəlir. Proses bir sənəd deyil, işləyən koddur.
| Proses Sahəsi | UDENTIVA Tətbiqi | Sübut |
|---|---|---|
| ENG.1 Tələb Çıxarımı | Faza xəritəsi + şaquli-dilim (vertical slice) tələb tərifi; UDENTIVA.md layihə müqaviləsi tələbləri kilidləyir. | UDENTIVA.md (QIZIL QAYDALAR), 02_tech_spec/ texniki spesifikasiya, faza/modul xəritəsi |
| ENG.4 Proqram Təminatı Dizaynı | Modul monolit; kontekst (context) paketləri bir-birinin cədvəlini paylaşmır; interfeys (interface) ilə əlaqə; xarici xidmət = adapter. | internal/{identity,patient,billing,export,...} sərhəd qaydası; ADR-001..008 |
| ENG.5 Proqram Təminatı İnşası | Açıq SQL (sqlc, ORM yoxdur); context hər funksiyada ilk parametr; xəta bükümü %w; pul = numeric. | sqlc.yaml tip override (numeric→string), db/queries/*.sql, gofmt/golangci-lint |
| ENG.6 Proqram Təminatı İnteqrasiyası | PHP(BFF) ↔ Go ↔ PostgreSQL ↔ Redis loopback zənciri; vahid public səth. | web/core/ApiClient, /healthz komponent sağlamlığı (db+redis) |
| ENG.7 Proqram Təminatı Testi | Cross-tenant izolyasiya testi (ən kritik), idempotency, randevu toqquşması, pul dəqiqliyi, 2FA/OTP, TOTP RFC6238 vektoru, QR (OpenCV+ISO doğrulama). | internal/integration/*_test.go, platform/totp/totp_test.go, go test ./... |
| SUP.1 Keyfiyyət Təminatı | Hər PR QIZIL QAYDALARA uymağa məcburdur; lint təmiz; izolyasiya testi CI-da qırmızıdırsa merge yoxdur. | golangci-lint, Definition of Done kontrol listesi |
| SUP.8 Konfiqurasiya İdarəetməsi | Git versiya idarəetməsi (branch core); goose ardıcıl sxem versiyalama; build artefaktları ehtiyatlanır. | git, goose_db_version tablosu, .tools/deploy yedekleri |
| SUP.9 Problem Həlli | Yalnız əlavə edilən (append-only) audit qeydi + e-poçt/SMS outbox (hər göndəriş qeydi) + deploy ehtiyat/rollback intizamı. | audit_log, email_outbox/sms_outbox, bin/server.exe.bak-* rollback |
| SUP.10 Dəyişiklik Tələbi İdarəetməsi | Hər sxem dəyişikliyi yeni nömrəli migration; geri-alına bilən (goose Down); deploy classifier-təsdiqi. | db/migrations/0001..0027, +goose Up/Down |
| MAN.3 Layihə İdarəetməsi | Şaquli-dilim təhvili (hər dilim uçtan uca işləyir); sessiya təhvil qeydləri. | super-devam.md, faz tablosu (DoD per dilim) |
| MAN.6 Ölçmə | Sağlamlıq yoxlaması, tutum ölçmə, e-poçt/SMS göndəriş metrikləri, audit həcmi, canlı event telemetriyası. | /healthz, Proses İzləmə & Keyfiyyət panosu (event/xəta/deploy/KPI) |
Məsuliyyətlər qatlara ayrılmışdır; domain səlahiyyəti tək nöqtədədir və loopback ilə izolə edilmişdir. Brauzer yalnız nazik BFF-i görür, domain və məlumat qatına heç vaxt birbaşa daxil ola bilməz.
| Təbəqə | Məsuliyyət və Təhlükəsizlik | Yer |
|---|---|---|
| Sunum (BFF) | PHP 8.4 — nazik BFF: sessiya, render, CSRF, yönləndirmə. İş qaydası/DB YOXDUR. Vahid public səth (IIS:443). | web/ |
| Uygulama / Domain | Go modul monolit — domenin YEGANƏ səlahiyyəti. RBAC, iş qaydaları, transaction. Yalnız 127.0.0.1 dinləyir. | api/internal/ |
| Veri | PostgreSQL — hər cədvəl tenant_id + RLS FORCE; açıq SQL (sqlc), parametrli. Pul numeric. | api/db/ |
| Keş / Növbə | Redis — sessiya, idempotency, paylanmış kilid, asynq növbə (SMS/e-fatura). | platform/redisx |
| Nesne Depolama | S3-uyğun — böyük fayl (rentgen) presigned/stream; blob heç vaxt DB-də deyil. | platform/storage |
| Xarici Xidmət (adapter) | e-Fatura, SMS(NetGSM), e-poçt(SMTP), (sonradan e-Nabız/MEDULA/DICOM) — interface arxasında mücərrəd. | internal/notify |
Ölçmə bir bəyan deyil, işləyən bir sistemdir. Bütün əməliyyatlar canlı olaraq sayılır (uğur/uğursuzluq), istehsal xətaları daimi qeydə tutulur və aşağıdakı KPI çərçivəsi periyodik tədbirlərə bağlanır. Verilən mənbələri gerçək cədvəllərdir: event_counter (canlı əməliyyat sayğacı), error_log (daimi xəta qeydi), deploy_log (yayımlanma qeydi).
| Ölçmə Sahəsi | KPI | Hədəf | Verilən Mənbəyi | Dövr | Aksiya |
|---|---|---|---|---|---|
| Tenant izolyasiya təhlükəsizliyi | cross-tenant test fail | 0 | CI / izolasyon testi | her PR | Merge blokajı |
| İstehsal xətası | açıq xəta (5xx/panic) | 0 | error_log (daimi) | davamlı/canlı | RCA + CAPA zorunlu |
| Əməliyyat uğur nisbəti | success / toplam event | ≥ %99 | event_counter (canlı) | davamlı/canlı | Düşüşdə kök səbəb |
| Həll müddəti | MTTR (orta həll) | ↓ azalan trend | error_log (resolved) | aylıq | Trend incelemesi |
| Dağıtım etibarlılığı | rollback nisbəti | < %5 | deploy_log | 30 gün | Rollback review |
| Kimlik təhlükəsizliyi | 2FA/OTP kritik olay | 0 | audit + event_counter | aylıq | Sərtləşdirmə |
| Mesajlaşma etibarlılığı | SMS/e-posta failure | ↓ aşağı | *_outbox | günlük | Provayder review |
| Bərpa hazırlığı | restore test uğuru | %100 | DR test (hedef) | rüblük | Runbook yenilə |
Hər istehsal xətası standart bir kök səbəb (RCA) və düzəldici/önləyici tədbir (CAPA) dövrəsindən keçir; eyni xətanın təkrarı reqressiya nəzarəti və trend izləməsi ilə əngəllənir.
İstehsal xətası (5xx/panic) avtomatik tutulur → daimi error_log (eyni imza təkrarında count++, defect trend).
Səviyyə (error/panic), təsir və təkrar sayı müəyyən edilir; uğursuz event sayğacları ilə yayılma ölçülür.
Proses İzləmə panosunda kök səbəb analizi aparılır və qeyd edilir.
Düzəldici aksiya + qarşısını alan aksiya (kod, test, migration qaydası, təhlükəsizlik yoxlaması) müəyyən edilir və qeyd edilir.
Eyni xətanın təkrarını əngəlləyən test/qayda əlavə edilir; davamlı telemetriya ilə izlənilir.
KPI trendləri (MTTR, xəta nisbəti, rollback) dövri qiymətləndirilir; təkrarlanan xəta üçün proses-səviyyəli aksiya açılır.
SPICE Səviyyə 5-in mahiyyəti: xətaların davamlı loglanması, nəzarət altında saxlanması, qüsurun önlənməsi və davamlı təkmilləşdirmə. UDENTIVA bu mexanizmləri istehsalatda işlədir.
Dəyişdirilə bilməyən (append-only) audit_log hər kritik əməliyyatı; email_outbox/sms_outbox hər göndərişi (status, attempts, error) daimi qeyd edir. Heç bir hadisə səssizcə itmir.
Ardıcıl xəta zərfi {error:{code,message}}; daxili xəta/stack heç vaxt sızdırılmır. Hər deploy öncəsi binary + web ehtiyatı; outage anında bin/server.exe.bak-* ilə saniyələr içində rollback.
Fail-closed memarlıq: RLS kontekst yoxdursa 0 sətir; idempotency ikiqat əməliyyatı əngəlləyir; numeric pul float xətasını mümkünsüz edir; whitelist (export dataset) SQL injeksiyasını qarşısını alır. Xətalar dizaynla əvvəldən əngəllənir.
Kritik komponentlər iki müstəqil üsulla doğrulanır: TOTP RFC6238 test vektoru, QR üçün OpenCV cv2 decode + ISO/IEC 18004 referans codeword, cross-tenant izolyasiya testi.
Hər sessiyada təhlükəsizlik auditi → tapıntılar → sərtləşdirmə (məs. faza2/faza3 RBAC əlavə edildi, 2FA, Export API). Proses qeydləri (super-devam.md) ilə korporativ yaddaş qorunur.
Yeni tənzimləmə tələbi (VEM Görüntüsü) birbaşa məhsul xüsusiyyətinə və dəlilə çevrilir; qanunvericilik dəyişiklikləri davamlı izlənilir və uyğunluq xəritəsinə işlənir.
Tək kod bazası, bayraqla daraltma — fork yox.
Sxem, mənbə, yayımlanma və API səviyyəsində izlənilə bilən versiya.
Bütün tərtibat prosesi versiya nəzarətindədir; hər yayımlanma geri-alına bilir (rewind/rollback).
Təhlükəsizlik bir xüsusiyyət deyil, arxitekturanın özüdür. İhlalı PR rəddi olan, danışıq mövzusu olmayan qaydalar:
Sistem, hər biri uçdan-uca işləyən şaquli dilimlərlə inşa edildi. Aşağıda fazlar və son dövr təhlükəsizlik/tənzimləmə işlərinin xronologiyası yer alır.
pgx+sqlc, goose, RLS fail-closed testi, WithTenantTx, sessiya middleware, login+RBAC, audit, PHP↔Go loopback, asynq bazası, health.
Pasiyent CRUD + cross-tenant izolyasiya testi → Randevu (exclusion constraint + Redis lock) → Odontogram/Müalicə planı (FDI, append-only) → Tahsilat/Cari/Kassa (derive, idempotent) → e-Fatura adapter (fast-follow) → Anbar → Rentgen (S3) → SMS xatırlatma (asynq backoff).
Platform-operator (super-admin) tieri (X-Platform-Key, ayrı kimlik müstəvisi); tenant idarəetməsi, abunəlik/faturalama modeli, tutum ölçmə, legal versiya redaktoru, reCAPTCHA, NetGSM parametrləri.
i18n (20 dil, key-based, RTL); 20 tema + klinik public site (/s/{slug}) + lead-booking; demo klinik siteleri.
Paylaşılan OTP primitivi; şifrə sıfırlama + magic-link + hesab aktivləşdirmə (real SMTP); NetGSM SMS nüvə; çox-tenant public auth; klinika istifadəçi idarəetməsi.
TOTP (RFC6238) + ehtiyat kodlar; MƏCBURİ QR (xarici-müstəqil, CSP-təmiz qr.js; OpenCV+ISO ilə müstəqil doğrulandı); SMS telefon doğrulaması (KVKK razılıq).
VEM Görüntüsü (Minimum Veri Modeli) 12 export view + Export API (SuperUser-müəyyən, tenant-kilidli, fail-closed); Qanunvericilik & Uyğunluq xəritəsi; %100 qanunvericiliyə yönəlik legal müqavilə revizyası.
Ticket-izləmə ilə Dəstək Mərkəzi; SPICE proses sənədləşdirməsi (bu səhifə); davamlı təhlükəsizlik auditi + sərtləşdirmə.
Arxitektura, təhlükəsizlik və tənzimləmə uyğunluğu haqqında ətraflı məlumat üçün komandamızla əlaqə saxlayın.
We use cookies necessary for core functionality; analytics and marketing cookies are enabled only with your consent. Kuki Siyasəti