8 dk

Yapay Zeka Yazılı Spesifikasyonları Gerçek Özelliklere ve Ekranlara Nasıl Dönüştürür

Yapay zekanın düz metin talimatları nasıl yorumlayıp UX akışlarını planladığını, arayüz ve kod ürettiğini ve geri bildirimle yineleyerek çalışan özellikler ve ekranlar ortaya çıkardığını öğrenin.

Yapay Zeka Yazılı Spesifikasyonları Gerçek Özelliklere ve Ekranlara Nasıl Dönüştürür

Yazılı Talimatlardan İnşa Etmek Ne Anlama Gelir

"Yazılı talimatlar", zaten ne inşa edilmesini istediğinizi açıklamak için kullandığınız kelimelerdir—bir AI'nin (ve bir ekibin) harekete geçebileceği bir biçimde yakalanmış metin.

Pratikte amaç mükemmel üslup değildir. Amaç, sistemin tahmin etmek zorunda kalmaması için açık niyet (hangi sonucun istendiği) artı açık sınırlar (neye izin verildiği, neyin yasak olduğu) sağlamaktır.

"Yazılı talimatlar" olarak ne sayılır

Bunlar resmi veya gayri resmi olabilir:

  • Notlar ve mesajlar: “Onay e-postasını yeniden gönderme butonu ekle.”
  • Kullanıcı hikayeleri: “Bir müşteri olarak, ödeme işlemi daha hızlı olsun diye gönderim adreslerimi kaydetmek istiyorum.”
  • Kabul kriterleri: “Giriş yaptıysam, 'Kaydet'e tıkladığımda adres listemde görünmeli ve varsayılan olarak kullanılmalı.”
  • Kenar durumlar ve kısıtlar: “PO box'lara izin verme,” “Mobilde çalışmalı,” “Verileri GDPR uyumlu bölgelerde depola.”

Önemli olan, metnin çıktıları ve kısıtları tanımlamasıdır. İkisi beraber olduğunda, AI iş kurallarını uydurmadan ekranlar, akışlar ve uygulama detayları önerebilir.

"Çalışan özellikler ve ekranlar" gerçekte ne demek

Çalışan bir özellik sadece bir mockup'tan daha fazlasıdır. Tipik olarak şunları içerir:

  • UI ekranları: düzenler, form alanları, butonlar, hata durumları
  • Navigasyon ve akışlar: kullanıcıların nereden başladığı, sonraki adımlar, başarı/başarısızlık durumlarında ne olduğu
  • Mantık ve kurallar: doğrulamalar, izinler, hesaplamalar, durum değişiklikleri
  • Veri: hangi verilerin saklandığı, getirildiği ve güncellendiği (ve ne zaman)

Örneğin “kaydedilmiş adresler” sadece bir sayfa değil—bir dizi ekran (liste, ekle/düzenle), kurallar (zorunlu alanlar, varsayılan adres) ve bağlantılar (API çağrıları, durum güncellemeleri) demektir.

AI destekli inşa döngüsü

Çoğu ekip basit bir döngüye girer:

Açıkla → üret → gözden geçir → iyileştir

Siz spesifikasyonu verirsiniz, AI UI/UX ve uygulama önerir, siz doğruluk ve ürün uyumu için gözden geçirirsiniz, sonra sonuç niyetinize uyan hale gelene kadar gereksinimleri düzeltirsiniz.

Koder.ai gibi bir vibe-coding platformu kullanıyorsanız, bu döngü genellikle daha hızlı hale gelir çünkü tek bir yerde kalabilirsiniz: sohbet içinde özelliği tanımlayın, uygulama değişikliklerini üretin, sonra hedefe yönelik takiplerle hızla yineleyin (ve gerekirse geri alın).

Beklentileri ayarlamak

AI ekran taslaklarını oluşturmayı, akışlar önermeyi ve kod üretmeyi hızlandırabilir, ama insanlar hâlâ:

  • ürün kararları ve takasları yapar
  • gereksinimlere göre doğruluğu teyit eder
  • gerçek davranışı test eder (özellikle kenar durumlar)
  • ürünle uyum, kalite ve güvenliği sağlar

AI'yi metni ilk (ve ikinci) taslağa hızla dönüştüren bir hızlandırıcı olarak düşünün—nihai sonuçtan insanlar sorumludur.

AI'nin Kullanabileceği Girdiler (ve Hangileri Açıklar)

AI formatlar konusunda esnektir ama açıklık konusunda seçicidir. Tek paragraftan madde listesine, bir PRD parçasına veya kullanıcı hikayelerine kadar çalışabilir—yeter ki niyet ve kısıtlar açık olsun.

İyi girdiler ("ham materyaller")

En faydalı başlangıç noktaları genellikle şunları içerir:

  • Bir kullanıcı hikayesi: kim neye ihtiyaç duyuyor ve neden (ör. “Mağaza yöneticisi olarak, kayıpları kontrol etmek için iade taleplerini onaylamak istiyorum”).
  • Hedef kitle: dahili ekip, ödeme yapan müşteriler, yöneticiler, ilk kez kullanıcılar vb.
  • Kısıtlar: mobil-öncelikli, koyu mod desteği, çevrimdışı çalışma, mevcut bir tasarım sistemine uyum, performans limitleri.
  • Başarı kriterleri: neyin tamamlandığını nasıl anlayacağınız (ör. “iade onayı 30 saniyeden kısa sürmeli ve bir denetim kaydı bırakmalı”).

Bu unsurlar AI'ye ne inşa ettiğinizi ve "iyi"nin ne olduğunu söyler; bu da gereksiz tekrarları azaltır.

AI'nin tahmin etmesini önlemek için gereken temel detaylar

Gereksinimler eksik olduğunda, AI varsayılanlarla doldurur ve bunlar iş kurallarınızla uyuşmayabilir. Şunları dahil edin:

  • Roller ve izinler: kim görüntüleyebilir, oluşturabilir, düzenleyebilir, silebilir, onaylayabilir.
  • Veri alanları: hangi bilgiler saklanır, doğrulama kuralları, zorunlu vs isteğe bağlı.
  • Durumlar ve geçişler: taslak → gönderildi → onaylandı → reddedildi ve kim hangi geçişleri yapabilir.
  • Kenar durumlar: çoğaltmalar, boş durumlar, yavaş ağlar, kısmi veriler, hata yönetimi.

Belirsiz vs somut: önce/sonra

Belirsiz: “Bir ödeme ekranı ekle ve basit olsun.”

Somut: “Giriş yapmış kullanıcılar için bir ödeme akışı ekle. Adımlar: Adres → Gönderim → Ödeme → İnceleme. Kart + Apple Pay destekle. Kullanıcı başına en fazla 3 adres kaydet. Ödemeden önce vergi ve gönderim göster. Ödeme başarısız olursa, sepete dokunmadan tekrar deneme seçeneği göster. Başarı = sipariş oluşturuldu, makbuz e-posta ile gönderildi ve stok düşüldü.”

Neden açıklık yeniden işi ve sürprizleri azaltır

Açık girdiler AI'nin ekran, metin, doğrulama ve mantık üretimini gerçek kısıtlarla hizalar. Daha az uyuşmayan varsayım, daha az yeniden tasarım döngüsü ve ilk taslaktan ekiplerin gerçekten inceleyip test edip yayınlayabileceği bir şeye daha hızlı ulaşma sağlar.

Adım 1: Niyet ve Gereksinimleri Anlamak

AI ekranlar üretmeden veya kod yazmadan önce, ne anlamanız gerektiğini yani ne kastedildiğini anlamalıdır. Bu adım temelde bir ürün yöneticisi gibi spesifikasyonunuzu okumaktır: hedefleri, rol oyuncularını ve özelliğin doğru olması için gerekli kuralları çıkarmak.

AI düz metinden niyeti nasıl çıkarır

Çoğu spesifikasyon birkaç tekrar eden yapı taşına sahiptir:

  • Hedefler: başarı nasıl görünür (“kayıt sırasında terkleri azaltmak”).
  • Aktörler: kimin ne yaptığı (“misafir kullanıcı”, “admin”, “takım üyesi”).
  • Eylemler: ne yaptıkları (“oluştur”, “düzenle”, “onayla”, “dışa aktar”).
  • Nesneler: eylemin gerçekleştiği şeyler (“hesap”, “fatura”, “proje”, “yorum”).
  • Kurallar: ne olmak zorunda (“e-posta benzersiz olmalı”, “adminler herhangi bir gönderiyi silebilir”).

Bunlar net olduğunda, AI metni akışlara, ekranlara, veri yapılarına ve mantığa çevirebilecek yapılandırılmış bir anlayışa dönüştürebilir.

İfadeleri ürün kavramlarına eşleme

AI ayrıca yaygın ürün desenlerini tanır ve günlük dili uygulama kavramlarına eşler. Örneğin:

  • Hesap oluştur” genellikle bir kimlik doğrulama akışı gerektirir (kayıt formu, e-posta doğrulama, parola sıfırlama).
  • Gösterge paneli” tipik olarak bir özet ekranı ima eder (özet metrikler, son etkinlik, kısayollar).
  • Ekip davet et” roller/izinler ve davet sistemi gerektirebilir.

Bu eşleme, belirsiz isimleri tasarımcıların ve mühendislerin kullandığı somut yapı taşlarına dönüştürdüğü için faydalıdır.

Eksik bilgileri tespit edip doğru soruları sormak

İyi spesifikasyonlar bile boşluklar bırakır. AI nelerin eksik olduğunu işaretleyebilir ve şu tür sorular önerebilir:

  • “Hangi roller var ve her rol nereye erişebilir?”
  • “Kullanıcının zaten hesabı varsa ne oluyor?”
  • “Hangi alanlar zorunlu ve doğrulama kuralları nedir?”

Varsayımları görünür kılma ve varsayılanlarla başa çıkma

Bazen cevaplar olmadan ilerlemek istersiniz. AI makul varsayılanlar seçebilir (ör. standart parola kuralları, tipik gösterge panosu bileşenleri) ve aynı zamanda varsayımları inceleme için listeler. Önemli olan şeffaflıktır: varsayımlar net bir şekilde listelenmelidir ki insan onayı alınıp düzeltilsin.

Adım 2: Metni Bir Özellik Planına Dönüştürmek

Niyet netleşince sıradaki adım yazılı spesifikasyonu gerçekten inşa edilebilir bir şeye çevirmektir: bir özellik planı. Hedef kod değil—yapının kendisidir.

Gereksinimleri ekranlara ve yolculuklara eşleme

İyi bir plan cümleleri ekranlar, navigasyon ve kullanıcı yolculuklarına çevirerek başlar.

Örneğin: “Kullanıcılar ürünleri wishliste kaydedebilir ve sonra görüntüleyebilir” genellikle (1) bir ürün detay etkileşimi, (2) bir wishlist ekranı ve (3) ana navigasyondan erişim yolu anlamına gelir.

AI'den ekranları listelemesini ve sonra “mutlu yol” yolculuğunu ve birkaç yaygın sapmayı (oturum açılmamış, ürün kaldırıldı, boş liste) açıklamasını isteyin.

Çalışılabilir görevlere bölme

Sonra AI'den özelliği ekiplerin tanıyacağı görevlere bölmesini isteyin:

  • UI bileşenleri (butonlar, formlar, boş durumlar, yükleme durumları)
  • API endpoint'leri (ör. create/remove/list)
  • Doğrulamalar ve kurallar (limitler, zorunlu alanlar, izinler)
  • Kenar durumlar (çoğaltmalar, çevrimdışı, çakışmalar)

Bu aynı zamanda belirsiz gereksinimleri açığa çıkarır. Örneğin kullanıcı aynı öğeyi iki kez kaydetmeye çalışırsa ne olacağı belirtilmemişse, plan bunu sorgulamalıdır.

Kabul kriterlerini tanımlama ("bitmiş" nasıl görünür)

Kabul kriterlerini düz dilde tutun. Örnek:

  • Giriş yapmış kullanıcı "Kaydet"e tıkladığında, öğe 2 saniye içinde Wishliste görünmeli.
  • Kullanıcı çıkış yapmışsa, giriş yapmaya yönlendirilmeli ve aynı öğeye geri döndürülmeli.
  • Wishlist boşsa, boş durum bir geri dönme bağlantısı ile gösterilmeli.

Kapsamı kontrol altında tutma

AI'den öğeleri zorunlu ve iyi-olur olarak etiketlemesini isteyin (ör. “wishlist paylaşma” iyi-olur olabilir). Bu planın başlangıçta genişlemesini engeller.

Adım 3: Ekranlar, Düzenler ve UX Akışları Üretmek

Korkmadan yineleyin
Bir yineleme ters giderse anlık görüntüler ve geri alma ile güvenle deneyin.

Bir özellik planıyla AI metni somut bir “ekran haritası”na ve erken bir UI taslağına dönüştürmede yardımcı olabilir. Amaç ilk denemede piksellerin mükemmel olması değil—kullanıcıların ne göreceği ve ne yapacağı konusunda ortak bir model elde etmektir.

Ekran listesini ve kullanıcı akışını taslaklama

İlk olarak mutlu yolu kısa bir hikaye olarak anlatın: kullanıcı ne istiyor, nereden başlıyor, neye tıklıyor ve başarı nasıl görünüyor. Bundan AI minimum ekran setini (her ekranda nelerin olacağıyla birlikte) önerebilir.

Sonra yaygın alternatifleri isteyin: “Eğer oturum açılmamışsa ne olur?”, “Sonuç yoksa?”, “Yarım bırakırlarsa ne olur?”. Bu, sadece demo için çalışan bir UI inşa etmemenizi sağlar.

Açıklamanızdan tel kafesler veya UI taslakları üretme

Eğer spesifikasyonunuz düzen ipuçları içeriyorsa (ör. “başlıkta arama, sonuç listesi filtrelerle, ana CTA altta”), AI şu yapılandırılmış taslağı üretebilir:

  • bir tel kafes taslağı (bölümler ve hiyerarşi)
  • bileşen önerileri (kartlar, tablolar, sekmeler, modal'lar)
  • örnek metin (buton etiketleri, yardımcı metin, boş durum mesajları)

En iyi prompt'lar içerik önceliklerini (“fiyat ve stok bilgisini açıklamanın üstte göster”), etkileşim kurallarını (“filtreler oturumlar arasında korunur”) ve kısıtları (“mobil-öncelikli; tek baş parmakla kullanılabilecek”) içerir.

Anahtar UI durumlarını tasarlama (çoğu spesifikasyonun belirsiz olduğu yer)

Çalışan bir ürün sadece “normal” ekrana sahip olmamalıdır. AI'den uygulayacağınız durumları sıralamasını isteyin:

  • Yükleme: iskelet mi spinner mı, hangi elemanlar tıklanabilir kalır
  • Boş: hangi mesaj görünür ve bir sonraki eylem ne olur
  • Hata: dostça metin, yeniden deneme davranışı, geri dönüş seçenekleri
  • Başarı: onay, sonraki adımlar, toast mı yönlendirme mi
  • İzinler: ne zaman istenir, reddedilirse ne gösterilir

Bu durum kararları doğrudan geliştirme çabasını ve kullanıcı güvenini etkiler.

Basit bir tasarım sistemi ile tutarlılığı koruma

AI, yeniden kullanılabilir bileşenler ve kurallar önererek tutarlılığı destekleyebilir: tipografi ölçeği, boşluk tokenleri, buton stilleri ve form desenleri.

Zaten bileşenleriniz varsa, iç yönergelere (ör. /design-system) referans verin ve AI'den yeni desenler icat etmek yerine bunları yeniden kullanmasını isteyin.

Adım 4: Özellikleri Veriye ve Kurallara Çevirme

Sonraki adım "uygulamanın ne yapması gerektiğini" hangi verileri saklayacağına ve neye izin vereceğine çevirmektir. Bu, yazılı spesifikasyonun somut bir veri modeli ve iş kuralları setine dönüşmesidir.

Ana varlıkları belirleme

AI genellikle metindeki “isimleri” çıkarır ve bunları varlıklar olarak ele alır. Örneğin, “Kullanıcılar Proje oluşturup Görev ekleyebilir, yöneticiler zaman kayıtlarını onaylar” ifadesi User, Project, Task, TimeEntry gibi varlıkları önerir.

Alanlar, ilişkiler ve kısıtlar önerme

Her varlık için AI şu önerileri yapar ve eksikleri işaretler:

  • Alanlar: isim, durum, tarihler, tutarlar, notlar, ekler
  • İlişkiler: bir Project'in birçok Task'ı vardır; bir Task bir Project'e aittir; bir User birçok Project'e sahiptir
  • Kısıtlar: zorunlu vs opsiyonel alanlar, benzersizlik (ör. e-posta), formatlar (ISO tarihleri), izin verilen değerler (ör. durum = Taslak/İnceleme/Onaylandı)

Ayrıca “hesap başına bir aktif abonelik” (benzersizlik) veya “sipariş toplamı satır tutarlarının toplamına eşit olmalı” (hesaplanmış doğrulama) gibi örtük kenar durumları da işaretlemelidir.

Doğrulamaları ve iş kurallarını düz dille tanımlama

İyi çıktı kuralları okunabilir tutar, kod içinde gömülmez. Örnekler:

  • “Bir Task, atanan kişi olmadan Tamamlandı olarak işaretlenemez.”
  • “İadeler ödeme tarihinden itibaren 30 gün içinde yapılabilir, sipariş çekişme halindeyse uygulanmaz.”
  • “Yöneticiler yalnızca sorumlu oldukları projeler için zaman kayıtlarını onaylayabilir.”

Veri yaşam döngüsünü planlama

Son olarak kayıtların zaman içindeki değişimini eşleyin: oluştur, güncelle, sil ve silme yerine ne yapılacağı (soft delete). AI ayrıca denetim izleri (kim neyi ne zaman değiştirdi) ve izlenebilirlik gerektiğinde geçmiş/sürümleme önerebilir.

Adım 5: UI ve Mantık için Kod Üretme

Artık kullanıcıların tıklayacağı UI ve doğru davranmasını sağlayan mantığın “ilk çalışan taslağını” üretebilirsiniz.

Koder.ai kullanıyorsanız, platform genellikle sohbet tabanlı spesifikasyondan tutarlı bir full-stack uygulama (web, backend, veritabanı) üretebilir; daha sonra geleneksel iş akışında devam etmek isterseniz kaynak kodunu dışa aktarma seçeneği sunar.

Frontend: bileşenler, formlar, yönlendirme ve durum yönetimi

“Proje Oluştur” ekranı gibi bir spesifikasyondan AI şu iskeleti üretebilir:

  • Bir sayfa bileşeni (düzen, başlıklar, yardımcı metin)
  • Doğrulama kurallarıyla bir form (zorunlu alanlar, karakter limitleri)
  • Yönlendirme (ör. /projects/new) ve navigasyon bağlantıları
  • Durum yönetimi (yükleme, başarı, hata, devre dışı bırakılmış gönderme)

Ayrıca tekrar kullanılabilir yapı taşları (örn. \u003cProjectForm /\u003e hem oluşturma hem düzenleme için) oluşturabilir, böylece kod tutarlı kalır.

Backend: endpoint'ler, servisler ve izin kontrolleri

Sunucu tarafında AI temel “sözleşmeyi” taslaklayabilir:

  • Endpoint'ler (POST /api/projects, GET /api/projects/:id)
  • İş kurallarını uygulayan servis metotları (ör. workspace başına benzersiz isim)
  • İzin kontrolleri (kim oluşturabilir, kim düzenleyebilir)

Anahtar nokta, backend mantığını spesifikasyonun kurallarına bağlamaktır (“sadece adminler görünürlüğü private yapabilir”)—sadece UI'nin gönderdiğini kaydetmek değil.

UI'yi veriye bağlama: API çağrıları, önbellekleme ve hatalar

AI UI'yi API istemcinize (fetch/Axios/React Query vb.) bağlayabilir, uygun durumlar için önbellekleme ve yeniden denemeler ekleyebilir. Ayrıca alan düzeyinde doğrulama hataları ve ağ hataları için kullanıcı dostu hata yönetimi oluşturmalıdır.

// Example: submit handler with loading + error state
async function onSubmit(values) {
  setStatus({ loading: true, error: null });
  try {
    await api.post('/api/projects', values);
    router.push('/projects');
  } catch (e) {
    setStatus({ loading: false, error: 'Could not create project. Try again.' });
  }
}

Kodu sürdürülebilir tutma

Oluşturulan kod, adlandırmada açıklık, öngörülebilir klasör yapısı, küçük fonksiyonlar ve paylaşılan yardımcılar (doğrulayıcılar, API istemcileri, izin yardımcıları) izlediğinde en faydalıdır.

Bir stil rehberiniz veya tercih edilen desenleriniz varsa, bunlara açıkça referans verin ve dahili dokümanları (ör. /engineering/frontend veya /engineering/api-guidelines) belirtin.

Adım 6: Her Şeyi Çalışır Bir Özelliğe Bağlamak

Kod tabanına sahip olun
İstediğiniz zaman kaynak kodunu dışa aktararak kod tabanına sahip olun.

Bu noktada ekranlar, UI bileşenleri, veri şekilleri ve iş kuralları hazırdır. “Bağlama”, bu parçaların gerçekten birbirleriyle konuştuğu yerdir: butonlar eylemi tetikler, eylemler backend endpoint'lerini çağırır, cevaplar UI'yi günceller ve izinler kişilerin neyi görebileceğine karar verir.

AI, yazılı spesifikasyona göre ekranları bağlayabilir: rotalar (URL veya uygulama yolları) oluşturma, kilit eylemler sonrası ne olacağını tanımlama ve sayfalar arasında doğru bağlamı geçirme.

Örneğin: “Kaydettikten sonra listeye dön ve yeni öğeyi vurgula” ifadesi somut bir akış olur—formu gönder → başarı bekle → listeye git → toast göster ve yeni satırı odakla.

Kimlik doğrulama, roller ve erişim kontrolü

Spesifikasyonlar genellikle rollerden bahseder (“Admin düzenleyebilir, Viewer sadece okuyabilir”). Bağlama, bunun birden fazla yerde uygulanmasını gerektirir:

  • UI kuralları: alınamayacak eylemleri gizle veya pasifleştir
  • API kuralları: izinleri ihlal eden istekleri reddet
  • Veri kapsamı: kullanıcıların sadece görmeye yetkili olduklarını görmesini sağla

AI burada tutarlı kontroller üretme konusunda yardımcıdır; sadece bir ekran kilitli görünse de endpoint'in hâlâ çalışmadığından emin olmak için sunucu tarafı kontrolleri ekler.

Gizli bilgileri sızdırmadan ortam yapılandırması

Çoğu özellik yapılandırmaya bağlıdır: API temel URL'leri, analiz anahtarları, feature flag'ler, depolama kovaları vb. AI geliştirme/staging/production için ayrı ayarlar oluşturabilirken sırları kod tabanına koymamalıdır.

Tipik çıktılar:

  • .env şablonları (güvenli yer tutucular)
  • çevresel değişkenlerden okuyan konfigüratörler
  • dağıtımda neyin ayarlanması gerektiğine dair net notlar (Git'e commit etmeyin)

Uçtan uca davranışı doğrulama

Amaç tam döngüdür: “tıkla → istek → cevap → UI güncelleme.” AI eksik bağlantı kodunu (yükleme durumları, hata yönetimi, yeniden denemeler) ekleyebilir ve basit kontroller üretebilir:

  • “Kaydet”e tıklamak beklenen payload'i gönderir
  • Başarı UI ve önbelleği/state'i günceller
  • Hatalar kullanıcı dostu bir mesaj gösterir ve girdileri korur

Bu, bir özelliğin mock olmaktan çıkıp gerçek bir ürün gibi davranmaya başladığı noktadır.

Adım 7: AI Yardımıyla Test Etme ve Hata Ayıklama

Bir özellik “çalışır” hale geldikten sonra, gerçek bir kullanıcı gibi (ve dağınık gerçek dünya şartlarıyla) test edin. AI kabul kriterlerinden somut kontroller oluşturup hata ayıklamanın sıkıcı kısımlarını hızlandırarak yardımcı olabilir.

Kabul kriterlerinden doğrudan testler üretme

Spesifikasyonunuz “Kullanıcı parolasını sıfırlayabilir ve onay mesajı görür” diyorsa, AI bu ifadeye uyan test vakalarını çok seviyeli olarak önerebilir:

  • Birim testleri: küçük kuralları doğrula (parola uzunluğu, token süresi)
  • Entegrasyon testleri: sistemlerin doğru konuştuğunu doğrula (örn. reset e-postası veri tabanına token oluşturur)
  • UI kontrolleri: davranışı doğrula (başarı toast'ı görünür; buton gönderim sırasında pasifleşir)

Hile, AI'ye kesin kabul kriterlerini ve minimal bağlamı vermektir: özellik adı, ana ekranlar ve mevcut test konvansiyonları.

Kullanıcılar bulmadan önce kenar durumlarını keşfetme

Spesifikasyonlar genellikle mutlu yolu tarif eder. AI, destek taleplerine yol açabilecek “ya olursa” senaryolarını üretmede iyidir:

  • Geçersiz giriş: boş alanlar, garip karakterler, çok uzun metin, geçmiş tarihler
  • Yavaş veya dalgalı ağ: yeniden denemeler, zaman aşımı, çift gönderimler, çevrimdışı mod
  • Çakışan güncellemeler: iki sekme açık, iki admin aynı kaydı düzenliyor, eski önbellekli veri

Hepsini hemen uygulamanız gerekmez, ama hangi durumların ürün risk düzeyiniz için önemli olduğunu belirlemelisiniz.

Arızaları daha hızlı teşhis etmek için AI kullanma

Bir test başarısız olduğunda, AI'ye geliştiricinin sorduğu gibi bilgi verin: başarısız olan assertion, ilgili loglar, stack trace'ler ve tam yeniden üretim adımları.

AI sonra:

  • olası nedenleri önerebilir (yarış koşulları, eksik mock verisi, zaman dilimi sorunları)
  • şüpheli kod yollarını işaret edebilir
  • minimal bir düzeltme ve aynı hatanın dönmemesi için bir takip testi önerebilir

Önerilerini hipotez olarak değerlendirin; testleri tekrar çalıştırıp UI davranışını kontrol ederek doğrulayın.

Teknik olmayan gözden geçiriciler için basit QA kontrol listesi

Hızlı inceleme döngüleri için kısa bir listede tutun:

  1. Ana görevi uçtan uca tamamlayabiliyor muyum?
  2. Hata mesajları ne yapmam gerektiğini açıklıyor mu?
  3. Yavaş internette mantıklı davranıyor mu (çoğaltma yok, iş kaybı yok)?
  4. İzinler doğru mu (kim neyi görebilir/düzenleyebilir)?
  5. Yenileme sonrası ve başka cihaz/hesapta sonuçlar kalıcı mı?

Adım 8: İlk Taslaktan Üretime Hazır Hale Yönelik Yineleme

Spec'inizden inşa edin
Yazılı spesifikasyonunuzu yapıştırın ve ekranlar ile kurallar niyetinize uyana kadar sohbet ortamında yineleyin.

AI ile üretilen ilk taslak genellikle "tepki vermeye uygun"tur ama "yayınlanmaya hazır" değildir. Yineleme, gereksinimleri sıkılaştırarak, kenar durumlarını düzelterek ve küçük, gözden geçirilebilir adımlarla değişiklikler yaparak makul bir özelliği güvenilir hale getirir.

Geri bildirim döngüleri nasıl çalışır (promptlar, diff'ler, hedef değişiklikler)

Sağlıklı döngü şu görünür: üret → gözden geçir → belirli bir değişiklik iste → ne değiştiğini karşılaştır → tekrarla.

Tüm uygulamayı yeniden sormak yerine hedefe yönelik güncellemeler isteyin. AI'den yalnızca bir parçayı (bir ekran, bir bileşen, bir doğrulama kuralı, bir sorgu) değiştirmesini ve bir diff veya net bir "önce/sonra" döndürmesini isteyin. Bu, değişikliğin problemi çözüp çözmediğini doğrulamayı kolaylaştırır.

İş akışınız destekliyorsa, değişiklikleri küçük commit'ler halinde tutun ve bir ekip arkadaşının pull request'ini inceler gibi diff'i tarayın, uygulamayı çalıştırın ve davranışı doğrulayın.

Koder.ai gibi platformlar için de bu yaklaşım faydalıdır: önce kapsam ve akışlarda anlaşın ("planlama modu"), sonra üretin, dar dilimlerle yineleyin ve deneme sırasında snapshot/rollback'e güvenin.

Değişiklik istemenin en iyi yolu

Belirsiz istekler (“daha iyi yap”, “akışı düzelt”) belirsiz sonuçlar verir. Güçlü değişiklik istekleri şunu belirtir:

  • Bir ekran: “Checkout → Ödeme ekranı”
  • Bir durum: “Kart reddedildiğinde” veya “Sepet boşken”
  • Beklenen davranış: “Satır içi hata göster, kullanıcı aynı ekranda kalsın ve form değerleri korunmalı”

Mümkünse kabul kriterleri ekleyin: “Gerekli alanlar doğrulanana kadar ‘Öde’ butonu devre dışı olsun” veya “Gönderim ülkesini değiştirince vergi anında yeniden hesaplansın.”

Sürümleme ve gözden geçirme: ne değişti ve neden

AI çıktısını kendi kodunuz olarak yönetin. Güncellemelerle kısa değişiklik notları (ne değişti, neden değişti, ne test edilmeli) talep edin.

AI bir refaktör önerecek olursa, amacını açıklamasını ve potansiyel riskleri listelemesini isteyin (ör. “bu doğrulama zamanlamasını değiştirir” veya “bu API yanıt işleme şeklini değiştirir”).

Ne zaman yinelemeyi durduracağınızı bilmek

Yineleme, net sürüm kriterleri karşılandığında biter. Sınırlar belirleyin:

  • Kapsam: bu sürüme dahil olanlar vs ertelenenler
  • Kalite barı: ana akışlar doğrulandı, hata durumları ele alındı, analiz/etkinlik izleme (gerekliyse) yerinde
  • Stabilite: bilinen kritik hata yok ve değişiklikler artık çıktıyı anlamlı şekilde geliştirmiyor

Bu noktada spesifikasyonu dondurun, yayınlayın ve bir sonraki yinelemeyi yeni, sınırlandırılmış bir değişiklik isteği olarak planlayın.

Sınırlamalar, Güvenlik ve En İyi Uygulamalar

AI yazılı spesifikasyonları şaşırtıcı derecede eksiksiz özelliklere dönüştürebilir, ama yargı yerine geçmez. AI çıktısını bir taslak olarak ele alın—özellikle kullanıcı verileri, ödemeler veya izinler söz konusuysa dikkatli olun.

Gizlilik ve hassas veriler (neyi yapıştırmamalı)

Bir prompt'a yapıştırdığınız her şeyin saklanabileceğini veya incelenebileceğini varsayın. Şunları yapıştırmayın:

  • .env dosyalarından API anahtarları, özel tokenlar, parolalar veya sırlar
  • Gerçek müşteri verileri (e-postalar, adresler, telefon numaraları), destek kayıtları veya sohbet dökümleri
  • Paylaşılmasına izin verilmeyen özel kod, finansal veriler veya yasal belgeler

Gerçekçilik gerekiyorsa, anonimleştirin: isimleri yer tutucularla değiştirin, ID'leri karıştırın ve ham ihracatlar yerine örüntüleri (“10k kullanıcı, 3 rol”) tanımlayın.

AI'nin yardımcı olabileceği güvenlik temelleri

AI temel güvenlik kontrolleri oluşturmakta faydalıdır, ama bunları yine doğrulamanız gerekir.

  • Girdi doğrulama: zorunlu alanları, formatları ve sunucu tarafı kontrolleri tanımlayın (sadece UI kontrollerine güvenmeyin).
  • Yetkilendirme kontrolleri: her kaynağın kimin görüntüleyebileceğini/düzenleyebileceğini belirtin; her endpoint'te yetkilendirme şartı koyun.
  • En az ayrıcalık: roller başlangıçta minimal olmalı; izinleri kasıtlı ekleyin. AI'den her rol için izinleri listelemesini ve bunları eylemlere eşlemesini isteyin.

Dikkat edilmesi gereken yaygın sınırlamalar

  • Üretilmiş API'ler: AI var olmayan endpoint'lere, SDK metodlarına veya veritabanı tablolarına referans verebilir. Bunları mevcut stack ile karşılaştırın.
  • Tutarsız gereksinimler: küçük ifade farkları çelişkili davranışlara yol açabilir (ör. “adminler düzenleyebilir” vs “sahipler sadece”). Tek bir doğruluk kaynağı tutun.
  • Tasarım sürüklenmesi: ekranlar arasında UI farklılaşabilir. Bir tasarım sistemi belirleyin ve promptlarda tekrar belirtin.

Daha iyi promptlar ve daha güvenli sonuçlar için pratik kontrol listesi

Kod veya ekran istemeden önce şunları ekleyin:

  1. Hedef ve hedef olmayanlar (başarı nasıl görünür)
  2. Kullanıcı rolleri ve izinler
  3. Veri modeli: ana varlıklar + gerekli alanlar
  4. Kenar durumlar (boş durumlar, hatalar, yükleme)
  5. Kısıtlar: teknoloji yığını, yönlendirme, stil sistemi, erişilebilirlik ihtiyaçları
  6. Kabul kriterleri: test edilebilir "bitmiş" ifadeler

Sonraki adımlar

Bir taslak prototipiniz olduğunda, hızlı bir inceleme planlayın: yol haritasıyla karşılaştırın, şimdi neyin yayınlanacağına karar verin ve değişiklikleri dokümante edin.

Taslakları bir plana dönüştürmenizde yardım isterseniz, /pricing sayfasını inceleyin veya ilgili rehberlere /blog bölümünden bakın. Sohbet odaklı geliştirmeyi keşfediyorsanız, Koder.ai bu iş akışı için tasarlandı: yazılı spesifikasyonları çalışan web, backend ve mobil özelliklere dönüştürün, hızlı yineleyin ve hazır olduğunuzda kaynak kodunu dışa aktarın.

SSS

Yapay destekli bir inşa sürecinde "yazılı talimatlar" nedir?

"Yazılı talimatlar" niyeti (istediğiniz sonuç) ve sınırları (kısıtlar, kurallar ve neyin yasak olduğu) açıkça belirten herhangi bir metindir. Bu, hızlı bir Slack mesajı, bir PRD parçası, kullanıcı hikayeleri, kabul kriterleri veya kenar durumlar listesi olabilir—önemli olan biçim değil, açıklıktır.

"Çalışan özellikler ve ekranlar" gerçekte ne anlama geliyor (mockuptan öte)?

“Çalışan” bir özellik genellikle görselin ötesinde şeyler içerir:

  • UI ekranları (hata/boş/yükleme durumları dahil)
  • Navigasyon ve kullanıcı akışları (başarı ve hata yolları)
  • İş mantığı (doğrulamalar, izinler, hesaplamalar)
  • Veri bağlantısı (oluştur/oku/güncelle, kalıcılık)

Bir mockup görünümü gösterir; çalışan bir özellik uçtan uca doğru davranır.

Tipik yapay destekli inşa döngüsü nedir?

Çoğu ekip basit bir yineleme döngüsü kullanır:

  1. Tanımla (özelliği tanımla: hedef, kullanıcılar, kısıtlar)
  2. Üret (taslak: ekranlar/akış/kod)
  3. Gözden geçir (doğruluk ve ürün uyumu)
  4. İyileştir (spesifikasyonu/promptu düzenle)

Hız, hızlı taslaklardan; kalite ise disiplinli gözden geçirme ve yinelemeden gelir.

AI kritik davranışı tahmin etmesin diye hangi detayları eklemeliyim?

AI hızlı ilerleyebilir ama eğer belirtmezseniz varsayımlar yapar:

  • Roller ve izinler (kimin ne yapabileceği)
  • Gerekli alanlar ve doğrulama kuralları
  • Durumlar ve geçişler (taslak → gönderildi → onaylandı)
  • Kenar durumlar (çoğaltmalar, boş durumlar, yavaş ağlar)

Bu öğeleri baştan eklemek yeniden işi azaltır ve işinizle uyuşmayan "makul varsayımları" engeller.

AI'ye başlangıçta vereceğim en iyi “ham materyaller” nelerdir?

Dört temel öğeyle başlayın:

  • Kullanıcı hikayesi (kim, ne, neden)
  • Hedef kitle (müşteriler, yöneticiler, dahili kullanıcılar)
  • Kısıtlar (mobil öncelikli, tasarım sistemi, performans, uyumluluk)
  • Başarı kriterleri (bitmiş sayılma koşulları)

Bu, AI'ye hem yön hem de bir kalite çıtası verir, sadece bir fikir değil.

Belirsiz bir isteği AI'nin inşa edebileceği somut bir spesifikasyona nasıl dönüştürürüm?

Somut spesifikasyonlar şunları tanımlar:

  • Adımlar ve akış (ör. Adres → Gönderim → Ödeme → İncele)
  • Desteklenen yöntemler/seçenekler (ör. kart + Apple Pay)
  • Limitler (ör. kullanıcı başına en fazla 3 adres sakla)
  • Hata işleme (ör. ödeme başarısız olursa ne olur)
  • Net "bitti" çıktıları (sipariş oluşturuldu, makbuz gönderildi, stok düşüldü)

Bu ayrıntılar ekranlara, kurallara ve API davranışına doğrudan çevrilir.

Kod üretmeden önce bir "özellik planı" neler içermeli?

Kod üretmeden önce AI'den bir özellik planı isteyin:

  • Gerekli ekranları ve mutlu yol hikayesini listele
  • Ortak sapmaları ekle (oturum açılmamış, boş liste, öğe kaldırıldı)
  • Çalışmayı UI bileşenlerine, endpoint'lere, doğrulamalara ve kenar durumlara böl
  • Öğeleri zorunlu ve iyi-olur olarak etiketle

Bu, eksik gereksinimleri erken ortaya çıkarır; değişiklikler ucuzken çözülür.

Demo-ötesi ekranlar için hangi UI durumlarını AI'den belirtmesini istemeliyim?

Her önemli ekran durumu için açık tanımlar isteyin:

  • Yükleme davranışı (iskelet mi yoksa spinner mı)
  • Boş durumlar (mesaj + sonraki eylem)
  • Hata durumları (satır içi mi yoksa global mi, yeniden deneme davranışı)
  • Başarı durumları (toast mı yoksa yönlendirme mi, onay metni)
  • İzin durumları (gizle mi yoksa pasifleştir mi, yerine ne gösterilir)

Üretim hataları ve kötü UX genellikle mutlu yol eksikliğinden değil, eksik durum ele alımından kaynaklanır.

Yazılı bir spesifikasyonu veritabanı modellerine ve iş kurallarına AI nasıl çevirir?

AI genellikle metindeki "isimleri" çıkarır ve bunları varlıklar olarak ele alır; ardından şunları önerir:

  • Alanlar (gerekli/opsiyonel, formatlar)
  • İlişkiler (has-many, belongs-to)
  • Kısıtlar (benzersizlik, izin verilen durum değerleri)
  • Düz yazı iş kuralları (ne doğru olmalı)

Ayrıca veri yaşam döngüsünü de tarif etmesini isteyin: oluştur/güncelle/soft-delete ve gerekiyorsa denetim izi ya da sürümleme.

Özellik üretmek için AI kullanırken hangi sınırlamalar ve güvenlik uygulamaları geçerlidir?

AI çıktısını bir taslak olarak görün ve koruyucu önlemler koyun:

  • Gizli anahtarları, gerçek müşteri verilerini veya özel tokenları yapıştırmayın
  • Her endpoint'te kimlik doğrulama ve sunucu tarafı doğrulamalarını denetleyin
  • AI’nın ürettiği API'lerin, SDK'ların veya tabloların var olmadığını görebilir—bunları doğrulayın
  • Değişiklikleri küçük tutun ve diff'leri inceleyin (bir ekran/ kural seçin)

AI yinelemeyi hızlandırır, ancak doğruluk, güvenlik ve kalite için insanlar hâlâ sorumludur.

Related posts