Evrak Yönetim ve Takip Platformu – Teknik Dokümantasyon
📌 Proje Özeti
Bu proje; kurumların ve firmaların evrak süreçlerini dijital ortama taşıyarak işveren–alt işveren ilişkilerini modernize etmeyi amaçlamaktadır. Evrakların yüklenmesi, kontrolü, onaylanması, saklanması ve analiz edilmesi gibi işlemler web tabanlı ve mobil uyumlu bir sistem üzerinden mikroservis mimarisi ile yönetilecektir.
1. Proje Tanımı ve Amacı
Bu yazılım projesi; kurumların ve firmaların evrak süreçlerini dijitalleştirmek, ana işveren–alt işveren ilişkilerini yönetmek, evrakların yüklenmesi, kontrolü, arşivlenmesi ve analiz edilmesi gibi tüm iş akışlarını düzenlemek amacıyla geliştirilmiştir. Sistem web tabanlı çalışacak, mobil uyumlu olacak, mikroservis mimarisi ile geliştirilecek ve Google servisleriyle entegre edilecektir.
2. Sistem Mimarisi
Servisler
- Kullanıcı Servisi: Python (FastAPI) veya Node.js (Express)
- Evrak Servisi: Python (Django REST veya FastAPI), entegre OCR/AI
- Bildirim Servisi: Node.js (Express) veya Python (Flask), e-posta & SMS yönetimi
- Ödeme Servisi: Node.js, iyzico API ile entegrasyon
- Raporlama Servisi: Java (Spring Boot) veya Python tabanlı veri analiz altyapısı
- Admin Servisi: React/Next.js tabanlı kullanıcı arayüzü ile bağlantılı backend
Teknoloji ve Dağıtım
- Veritabanı: PostgreSQL (ilişkisel yapı ve ölçeklenebilirlik için)
- Depolama: Google Drive API
- OCR: Google Cloud Vision API, Tesseract (yedek)
- AI: Google AI Studio ile doküman analizi
- CI/CD: GitHub Actions, GitLab CI
- Konteyner: Docker + Kubernetes
- Gateway: NGINX / Kong
- Mesajlaşma: RabbitMQ (isteğe bağlı)
Ölçeklenebilirlik
- Yük dengeleme (load balancer) ile her mikroservis dağıtılır
- Kubernetes autoscaler ile trafik artışlarında otomatik pod çoğaltma
- API rate-limiting ve önbellekleme (Redis) kullanımı önerilir
3. Evrak Takibi
- Ana işveren, sisteme yüklenen tüm evrakları görüntüleyebilir.
- Asıl evraklar yalnızca ana işveren tarafından görülebilir ve onay süreci onun kontrolündedir.
- Evrakların geçerlilik süresi sistem tarafından kontrol edilir.
- Süresi yaklaşan belgeler için bildirim gönderilir (hem alt işverene hem ana işverene).
- Eksik belgeler için sistem AI destekli uyarı verir.
- Alt işveren yüklemeyi tamamladığında ana işverene otomatik e-posta ile bildirim gönderilir.
Evrak Onay Süreci
- Evraklar “Yüklendi”, “İnceleniyor”, “Onaylandı”, “Reddedildi” durumlarında izlenir
- Sadece yetkili ana işveren veya admin kullanıcı onaylayabilir
- Reddedilen belgeler için açıklama notu ile geri bildirim sağlanır
4. Bildirim Sistemi Detayları
- Bildirim türleri: E-posta, SMS (isteğe bağlı push notification)
- Bildirim tetikleyiciler:
- Yeni evrak yüklendiğinde
- Evrak süresi yaklaşırken (7/3/1 gün kala)
- Evrak reddedildiğinde
- Abonelik süresi dolmak üzere olduğunda
- Kullanıcılar bildirim tercihlerini (kanal ve sıklık) panelden ayarlayabilir
5. Raporlama
- Evrak durumu raporu: Evrak sayısı, onay oranı, gecikmeler
- Personel bazlı eksik evrak listesi
- Firma bazlı tüm yükleme performansı
- Filtreleme: Tarih aralığı, belge türü, kullanıcı
- Dışa aktarma: Excel, PDF
6. Erişilebilirlik
- Sistem, WCAG 2.1 uyumlu olarak geliştirilecektir
- Yüksek kontrast modları, ekran okuyucu uyumluluğu sağlanacaktır
- Klavye ile tam kontrol edilebilirlik test edilecektir
7. Yedekleme ve Felaket Kurtarma
- Her gün saatlik snapshot yedekleme
- Yedekler Google Cloud içinde farklı zonlarda saklanır
- 7 gün geri dönüş garantisi (RTO < 4 saat / RPO < 1 saat)
8. Sürekli Güvenlik İzleme
- Güvenlik duvarı ve anomali tespiti için WAF (Web Application Firewall)
- Fail2Ban tarzı IP engelleme sistemi
- Otomatik saldırı analizi: XSS, CSRF, SQLi, DoS
- Denetim izleri günlük olarak merkezi log servisine iletilir
9. Veri Saklama Politikası
- Evraklar en az 5 yıl süreyle saklanır
- Silinen kullanıcıya ait evraklar 30 gün arşivlenir
- Süresi geçmiş evraklar arşiv klasörüne taşınır ve raporlanır
10. Proje Yönetimi – Sprint Planlaması
- 1. Sprint: Giriş/kayıt, kullanıcı yönetimi, veri modeli
- 2. Sprint: Evrak yükleme ve OCR altyapısı
- 3. Sprint: Evrak kontrol ve AI modülü
- 4. Sprint: Bildirim sistemi ve panel akışı
- 5. Sprint: Ödeme modülü, wizard ve raporlar
- 6. Sprint: UI/UX son düzenlemeler ve testler
11. Test Süreçleri
Fonksiyonel Testler
- Tüm modüller için kullanıcı senaryoları oluşturulur
- Evrak yükleme, onay, silme gibi işlemler kontrol edilir
Performans Testleri
- 1000 eş zamanlı kullanıcı için yük testi yapılır
- Belge yükleme süresi < 2 saniye hedeflenir
Güvenlik Testleri
- OWASP testleri (XSS, CSRF, SQLi)
- Bağımsız 3. taraf PenTest uygulanır
- Açıklar giderilmeden sistem canlıya alınmaz
12. Geliştirme Tavsiyeleri ve Eksik Yönler
- Kullanıcı Doğrulama ve Yetkilendirme: JWT veya OAuth 2.0 standardı ile kimlik doğrulama, RBAC ile yetkilendirme önerilir.
- Veri Tutarlılığı: Servisler arası iletişim için RabbitMQ zorunlu hale getirilmeli, Saga Pattern ile süreç akışı yönetilmelidir.
- Mobil Uyumluluk: Web responsive tasarımı netleştirilmeli, gerekirse PWA ya da mobil uygulama alternatifi düşünülmelidir.
- OCR/AI Performansı: Doğruluk oranı hedefi konulmalı, hata durumları için manuel kontrol mekanizması eklenmelidir.
- Ödeme İşlemleri: Başarısız ödeme, iade ve abonelik yenileme akışları tanımlanmalıdır.
- Performans Testleri: OCR ve raporlama servislerine özel test senaryoları eklenmelidir.
- Erişilebilirlik: WCAG 2.1 uyumu için manuel + otomatik test araçları kullanılmalı (Lighthouse, axe-core).
- KVKK/GDPR Uyumu: Veri saklama, şifreleme, rıza alma süreçleri net şekilde belgelenmelidir.
- Sprint Riskleri: Sprint planına bağımlılıklar ve olası gecikmeler için contingency plan eklenmelidir.
- Beta Süreci: Kullanıcı geri bildirimi toplanmalı ve iterasyon planı ile iyileştirmeler yapılmalıdır.
13. Firma ile Çalışma Süreci ve Proje Takibi
1. Proje Yönetim Aracı
- Trello, ClickUp veya Jira gibi araçlardan biri tercih edilecektir
- Proje; “Yapılacaklar”, “Devam Edenler”, “Testte”, “Tamamlandı” gibi sütunlarla izlenecektir
- Her modül kart olarak tanımlanır ve geliştirici/ekip üyelerine atanır
2. Haftalık Toplantılar ve Geri Bildirim
- Her hafta online toplantı yapılacaktır (Google Meet, Zoom vb.)
- İlerlemenin kontrolü, yaşanan zorluklar ve sprint durumu değerlendirilir
- Küçük demo gösterimleri ile projenin doğru yönde ilerleyip ilerlemediği kontrol edilir
3. Raporlama ve Dökümantasyon
- Her hafta sonunda kısa bir “Haftalık İlerleme Raporu” hazırlanır
- Test edilen özellikler, tamamlanan işler ve tespit edilen hatalar belgelenir
- Güncellenmiş sürümler GitHub/Bitbucket gibi sürüm kontrol platformları üzerinden paylaşılır
14. Sonuç ve Teklif Talebi
Bu dokümantasyon, Evrak Yönetim ve Takip Platformu projesinin teknik gereksinimlerini, mimari yapısını ve geliştirme süreçlerini kapsamlı şekilde tanımlamaktadır. Sistemin başarılı şekilde hayata geçirilebilmesi için bu dokümana uygun bir şekilde geliştirme yapılması beklenmektedir.
Fiyat Teklifi ve Zaman Planı Talebi
- Geliştirme Süresi: Her sprint için tahmini teslim süresi
- Toplam Proje Süresi: MVP ve tam sürüm için ayrı ayrı
- Fiyatlandırma: Sprint bazlı veya proje bazlı toplam ücret
- Ekip Bilgisi: Projede görev alacak geliştiricilerin sayısı ve uzmanlık alanları
- Destek ve Bakım: Canlıya alındıktan sonraki teknik destek şartları
Geliştirici Özgeçmişleri
Lütfen aşağıdaki nitelikleri içeren geliştirici CV'lerini PDF formatında iletiniz:
- Ad Soyad
- Uzmanlık Alanı (Backend, Frontend, DevOps vb.)
- Kullandığı Teknolojiler / Frameworkler
- Daha önce geliştirdiği benzer projeler (varsa örnek linklerle)
- GitHub / GitLab profili (varsa)
- İletişim bilgileri
