# ÜretimIQ Teknik Mimari Dokümanı

**Proje:** ÜretimIQ Platformu
**Şirket:** Kerege Ltd. Şti.
**Sürüm:** 1.0 (KOSGEB Başvuru Eki)

---

## 1. Mimari Özeti

ÜretimIQ, **edge + cloud hibrit** bir mimaride çalışan, mikroservis tabanlı, çok kiracılı (multi-tenant) bir SaaS platformudur. Üretim tesislerinden gelen IoT ve ERP verilerini gerçek zamanlı işler, ML modelleriyle tahminler üretir ve KOBİ'lere Türkçe arayüzle sunar.

```mermaid
graph TB
    subgraph "Üretim Tesisi (Edge Layer)"
        IOT[IoT Sensörler<br/>Titreşim, Sıcaklık, Akım]
        PLC[PLC / SCADA<br/>OPC UA]
        ERP[ERP Sistemi<br/>SAP, Logo, Netsis]
        EDGE[Edge Gateway<br/>Yerel Önişleme + KVKK]
    end

    subgraph "Cloud Platform (AWS / Azure)"
        ING[Veri Alım Katmanı<br/>Kafka + MQTT]
        DL[(Data Lake<br/>S3 / Blob)]
        FE[Feature Engineering<br/>Apache Spark]
        ML[ML Pipeline<br/>TensorFlow + MLflow]
        API[API Gateway<br/>FastAPI]
        DB[(PostgreSQL<br/>+ TimescaleDB)]
    end

    subgraph "ML Modelleri"
        TT[Talep Tahmini<br/>LSTM + Prophet]
        OB[Öngörülü Bakım<br/>XGBoost + Anomali Tespiti]
        EO[Envanter Optimizasyonu<br/>Ensemble]
        EN[Enerji Optimizasyonu<br/>Reinforcement Learning]
    end

    subgraph "İstemci Uygulamaları"
        WEB[Web Uygulaması<br/>Next.js + React]
        MOB[Mobil Uygulama<br/>React Native]
        NLP[Türkçe NLP<br/>Doğal Dil Komut]
    end

    IOT --> EDGE
    PLC --> EDGE
    ERP --> EDGE
    EDGE -->|HTTPS / TLS 1.3| ING
    ING --> DL
    DL --> FE
    FE --> ML
    ML --> TT
    ML --> OB
    ML --> EO
    ML --> EN
    TT --> API
    OB --> API
    EO --> API
    EN --> API
    API --> DB
    API --> WEB
    API --> MOB
    NLP --> API
```

---

## 2. Katman Detayları

### 2.1 Edge Katmanı (Üretim Tesisinde)
- **Donanım:** Endüstriyel mini-PC (Intel NUC veya NVIDIA Jetson) — KOSGEB bütçesinin "Altyapı ve Donanım" kaleminde
- **Yazılım:**
  - Docker konteynerleri ile dağıtılan Python servisleri
  - OPC UA / Modbus protokol köprüleri
  - Yerel önişleme (filtreleme, agregasyon) — ham veri tesiste kalır, sadece anonim özellikler buluta gider
- **KVKK/GDPR Uyumu:** Veri lokalizasyonu, ham verinin tesiste kalması, gerekli veri sahibi onayları
- **Çevrimdışı dayanıklılık:** İnternet kesintilerinde 7 güne kadar yerel kuyruklama

### 2.2 Veri Alım ve Depolama
- **Mesaj kuyruğu:** Apache Kafka (yüksek hacimli zaman serileri için)
- **MQTT broker:** Hafif IoT mesajları için (Mosquitto)
- **Data Lake:** AWS S3 / Azure Blob — ham + işlenmiş veri katmanları
- **Zaman serisi DB:** TimescaleDB (PostgreSQL üzerinde)
- **Şifreleme:** At-rest (AES-256), in-transit (TLS 1.3)

### 2.3 Feature Engineering ve ML Pipeline
- **Pipeline orkestrasyonu:** Apache Airflow + MLflow
- **Eğitim ortamı:** GPU destekli (NVIDIA T4/A10) AWS SageMaker / Azure ML
- **Model registry:** MLflow Model Registry — versiyonlama ve A/B testi
- **Sürekli öğrenme:** Yeni veri ile aylık otomatik yeniden eğitim
- **Türkçe veri seti:** Kerege'nin pilot müşterilerinden anonim olarak toplanmış imalat verisi (KOBİ üretim hatları)

### 2.4 ML Modelleri Detayı

| Modül | Algoritma | Hedef Metrik | Eğitim Verisi |
|-------|-----------|--------------|---------------|
| Talep Tahmini | LSTM + Prophet (Ensemble) | MAPE < %12 | Geçmiş satış + dış faktörler (mevsim, tatil, ham madde fiyatı) |
| Öngörülü Bakım | XGBoost + Isolation Forest | Recall > %90 (arıza tespiti) | Sensör verisi (titreşim, sıcaklık, akım) + bakım kayıtları |
| Envanter Optimizasyonu | Ensemble (RF + GBM) + Linear Programming | Stok devir hızı +%30 | Tedarik süreleri, satış hızları, stok maliyetleri |
| Enerji Optimizasyonu | Reinforcement Learning (DQN) | Enerji tüketimi -%15 | Üretim takvimi + enerji tarifesi + makine profilleri |
| Türkçe NLP | Fine-tuned BERTurk + Custom NER | Intent doğruluk > %92 | Türkçe imalat domain corpus (özel olarak hazırlanan) |

### 2.5 API ve Backend
- **Framework:** Python 3.11 + FastAPI (async I/O, OpenAPI dokümantasyonu)
- **Auth:** OAuth 2.0 + JWT, çok faktörlü doğrulama (TOTP)
- **Rate limiting + caching:** Redis
- **Observability:** Prometheus + Grafana + OpenTelemetry tracing

### 2.6 Frontend
- **Web:** Next.js 14 (App Router), TypeScript, Tailwind CSS
- **Mobil:** React Native (iOS + Android)
- **Görselleştirme:** Recharts + D3.js (karmaşık üretim panoları için)
- **Erişilebilirlik:** WCAG 2.1 AA seviyesi

### 2.7 DevOps ve Altyapı
- **Konteynerizasyon:** Docker
- **Orkestrasyon:** Kubernetes (EKS / AKS)
- **CI/CD:** GitHub Actions + ArgoCD
- **IaC:** Terraform
- **Yedekleme:** Otomatik günlük yedekleme, 30 gün retention, çok bölgeli replikasyon

---

## 3. Güvenlik Mimarisi

```mermaid
graph LR
    USER[Kullanıcı] -->|MFA + JWT| WAF[WAF / DDoS Koruma]
    WAF --> APP[Uygulama Katmanı]
    APP -->|RBAC| API[API Gateway]
    API -->|Encrypted| DB[(Şifreli DB)]
    EDGE[Edge Cihaz] -->|mTLS| API
    SIEM[SIEM / Audit Log] --> APP
    SIEM --> API
    SIEM --> DB
```

- **Sıfır güven (Zero Trust) yaklaşımı:** Her istek doğrulanır
- **mTLS:** Edge cihazlar ile cloud arası mutual authentication
- **RBAC:** Rol bazlı erişim kontrolü (admin, operatör, görüntüleyici)
- **Audit log:** Tüm kritik işlemler kayıt altında, 1 yıl saklama
- **Penetrasyon testi:** Yıllık 2 kez (bütçeye dahil)

---

## 4. Ölçeklenebilirlik

- **Yatay ölçekleme:** Kubernetes HPA ile otomatik
- **Hedef kapasite:**
  - 1. Yıl: 25 müşteri, ~500 IoT cihazı
  - 2. Yıl: 100 müşteri, ~2.500 IoT cihazı
  - 3. Yıl: 300+ müşteri (uluslararası), ~10.000 IoT cihazı
- **Performans hedefi:** API yanıt süresi p95 < 200ms, dashboard yükleme < 2sn

---

## 5. Patent Potansiyeli

Proje kapsamında patent başvurusu planlanan teknik buluşlar:

1. **Hibrit Talep Tahmin Algoritması** — Türkiye imalat sektörüne özel, dış faktör entegrasyonu ile çoklu model birleşimi
2. **Edge-Cloud Veri Füzyon Yöntemi** — KVKK uyumlu, ham veri yerel kalır, anonim öznitelikler bulutta birleşir
3. **Türkçe Üretim Domain Komut Sistemi** — Doğal dil ile üretim emri, raporlama ve bakım sorgulaması

---

Bu doküman, KOSGEB başvurusunun teknik mimari ekidir. Word'e aktarırken Mermaid diyagramları PNG/SVG'ye dönüştürülerek eklenmelidir (mermaid.live veya VSCode Mermaid Preview kullanılabilir).
