Kitap Takası — Proje Kapsam Belgesi

Task 1.1 · Kapsam & Gereksinim Dokümanı
Versiyon: 2.1
Tarih: 30 Mayıs 2026
Durum: Taslak

1 · Proje Amacı

Kitap Takası, ikinci el kitapların atıl kalmak yerine topluluk içinde el değiştirmesine olanak tanıyan, tam yığınlı (full-stack) bir web tabanlı takas platformudur. Proje; kullanıcıların kişisel kitaplıklarını dijital ortamda oluşturmasını, başkalarının kitaplarını aramasını ve doğrudan eşler arası (peer-to-peer) takas taleplerini yönetmesini sağlar. Böylece hem ekonomik tasarruf hem de sürdürülebilir tüketim hedeflenmektedir.

Hedef Kitle

  • Üniversite öğrencileri (ders kitabı maliyetini azaltmak isteyenler)
  • Kitap tutkunları (koleksiyonunu büyütmek / tazelemek isteyenler)
  • Topluluk tabanlı paylaşım ekonomisine ilgi duyan herkes

Çözülen Problem

  • İkinci el kitapların geniş kitlelere ulaşamaması
  • Mevcut platformlardaki karmaşık listeleme ve para akışı engelleri
  • Takas sürecinin takibinde yaşanan belirsizlikler
  • Kitap bilgisinin manuel girilmesinden kaynaklanan hatalar

2 · Kapsam

✅ Projeye Dahil

  • Kullanıcı kayıt & giriş (bcrypt şifreleme)
  • ISBN ile otomatik kitap ekleme (Google Books API)
  • Başlık / yazar ile manuel kitap ekleme
  • Kişisel kitaplık görüntüleme & silme
  • Başlığa göre kitap arama (regex destekli)
  • Takas talebi gönderme ve alma
  • İsteği kabul etme & kargo durumu bildirimi
  • Gelen / giden takas listesi yönetimi
  • Tek Sayfa Uygulama (SPA) React arayüzü
  • Backend & frontend birim testleri

🚫 Projeye Dahil Değil

  • Para transferi / ödeme sistemi
  • Mobil uygulama (iOS / Android)
  • Gerçek zamanlı mesajlaşma / bildirim sistemi
  • Kargo entegrasyonu (3. taraf lojistik API)
  • Sosyal medya paylaşım özellikleri
  • Yönetici (Admin) paneli & raporlama
  • Çok dil desteği
  • Cookie tabanlı oturum yönetimi (v2.1 kapsamı dışı)

3 · Teknoloji Yığını

Katman Teknoloji Seçim Gerekçesi
Ön Yüz React 18, React Router v6, SCSS Bileşen tabanlı SPA; Virtual DOM ile yüksek performans
Arka Yüz Node.js, Express 4 JavaScript dil birliği; olay güdümlü, bloklamayan G/Ç
Veritabanı PostgreSQL, pg (bağlantı havuzu) Güçlü ilişkisel veri modeli; users–books–users_books şeması
Güvenlik bcrypt 5 (salt rounds: 12) Endüstri standardı parola karma; brute-force direnci
Harici API Google Books API ISBN'den otomatik başlık, yazar, tür bilgisi çekme
Test / Derleme Jest, Testing Library, Supertest, Webpack 5, Babel 7 Uçtan uca birim testi; modern JS transpile desteği

4 · Başarı Kriterleri

İşlevsel Kriterler

  • Kullanıcı 30 saniye içinde kayıt olup giriş yapabilmelidir
  • ISBN girişinde kitap bilgisi API'den otomatik doldurulmalıdır
  • Takas talebi karşı tarafa anlık yansımalıdır
  • Tüm CRUD işlemleri hatasız tamamlanmalıdır

Kalite Kriterleri

  • Şifreler hiçbir zaman düz metin olarak saklanmamalıdır
  • Birim test kapsamı ≥ %70 (backend + frontend)
  • Sayfa yükleme süresi < 2 saniye (yerel ağ)
  • SQL injection'a karşı parametreli sorgu kullanımı

5 · Zaman Çizelgesi (Özet)

Analiz & Tasarım
Hafta 1–2
Backend Geliştirme
Hafta 3–4
Frontend Geliştirme
Hafta 4–6
Test & Entegrasyon
Hafta 7
Demo & Teslim
Hafta 8