
Kullanıcı beş adımlık başvuru formunun dördüncü adımındaydı. Telefonu çaldı, sekmeyi kapattı ve geri döndüğünde her şeye baştan başlamak zorunda kaldı. Bir daha da başlamadı.
Bu yazı, uzun formlarda ilerleme kaydetmeyi ele alıyor.
Veri Nerede Kaybolur?
- Oturum zaman aşımına uğrar.
- Tarayıcı kapanır.
- Bağlantı kesilir.
- Kullanıcı geri düğmesine basar.
- Doğrulama hatası formu sıfırlar.
Beşinci madde en can sıkıcı ve en kolay önlenebilir olanıdır: bir alanda doğrulama hatası olduğunda tüm formu boşaltıp kullanıcıya baştan doldurtmak, terk oranını doğrudan yükseltir.
Hata durumunda girilen tüm veriler forma geri doldurulmalıdır.
Birinci madde ise uzun formlarda kaçınılmazdır. Kullanıcı yarım saat düşünürken oturumu düşebilir.
İlerlemeyi Nerede Saklamalı?
| Yer | Değerlendirme |
|---|---|
| Oturumda | Kolay, oturumla birlikte ölür |
| Gizli alanlarda | Basit, güvenlik riski |
| Tarayıcı deposunda | Cihaza bağlı |
| Veritabanında taslak | En dayanıklı |
İkinci satır güvenlik açısından dikkat gerektirir: önceki adımlardaki verileri gizli alanlarda taşımak, kullanıcının o değerleri değiştirebilmesi demektir — fiyat veya yetki bilgisi taşınıyorsa ciddi bir açıktır.
Gizli alanlar yalnızca zararsız veriler için kullanılmalıdır.
Dördüncü satır en iyi deneyimi sunar. Kullanıcı başka bir cihazdan bile devam edebilir.
Üçüncü satır ise sunucu yükü olmadan çalışır ama cihaz değiştiğinde veri kaybolur ve hassas veri için uygun değildir.
Taslak Kaydı Deseni
Veritabanı tabanlı yaklaşımın işleyişi:
- İlk adımda bir taslak kaydı oluşturun.
- Her adımda güncelleyin.
- Durumu "taslak" olarak işaretleyin.
- Son adımda "tamamlandı" yapın.
- Eski taslakları temizleyin.
Üçüncü madde kritik bir ayrımdır: taslak kayıtların normal kayıtlarla aynı tabloda ama farklı durumda tutulması, raporlarınıza tamamlanmamış başvuruların karışmasına yol açabilir — tüm sorgulara durum filtresi eklemek gerekir.
Alternatif olarak taslaklar ayrı bir tabloda tutulabilir; bu, filtre unutma riskini ortadan kaldırır.
Beşinci madde ise birikimi önler. Aylardır dokunulmamış taslaklar temizlenmelidir.
Otomatik Kaydetme
Kullanıcıdan kaydetmesini beklemeden:
- Alan değiştikçe arka planda kaydedin.
- Her tuşta değil, duraklamada.
- Kaydedildiğini kullanıcıya gösterin.
- Başarısızlıkta uyarın.
İkinci madde sunucu yükünü yönetir: her tuş vuruşunda kaydetmek, uzun bir metin alanında yüzlerce gereksiz istek üretir — yazma durduktan birkaç saniye sonra kaydetmek aynı güvenliği çok daha az yükle sağlar.
Dördüncü madde ise yanlış güven vermeyi önler. Kaydetme başarısız olduğu hâlde "kaydedildi" göstermek, kullanıcının veriyi kaybetmesine yol açar.
Üçüncü madde ise güven verir. Küçük bir "kaydedildi" göstergesi, kullanıcının rahatça devam etmesini sağlar.
Adım Bazında Doğrulama
| Yaklaşım | Sonuç |
|---|---|
| Yalnızca son adımda | Kullanıcı geriye döner, sinirlenir |
| Her adımda | Hatalar erken yakalanır |
| Alan bazında anlık | En iyi deneyim |
Birinci satır en kötü deneyimi üretir: beşinci adımda "ikinci adımdaki telefon numarası geçersiz" demek, kullanıcıyı üç adım geriye göndermek ve muhtemelen tamamen kaybetmek demektir.
Her adım kendi içinde doğrulanmalı ve kullanıcı geçerli veriyle ilerlemelidir.
Önemli bir uyarı: istemci tarafındaki doğrulama yalnızca deneyim içindir. Sunucu tarafında her adım yeniden doğrulanmalıdır.
Üçüncü satır ise en hızlı geri bildirimi verir ama aşırı agresif olmamalıdır; kullanıcı yazmayı bitirmeden hata göstermek rahatsız edicidir.
İleri-Geri Gezinme
Kullanıcılar adımlar arasında dolaşmak ister:
- Geri gitmeye izin verin.
- Girilen veri korunsun.
- Tarayıcı geri düğmesi çalışsın.
- Tamamlanan adımları gösterin.
Üçüncü madde çok atlanır ve kullanıcıyı şaşırtır: tarayıcının geri düğmesine basıldığında formun bozulması veya baştan başlaması, kullanıcının en doğal refleksini cezalandırır.
Her adımın kendi adresi olması bu sorunu çözer ve aynı zamanda kullanıcının bağlantıyı kaydetmesine imkân verir.
Dördüncü madde ise ilerleme hissi verir. Kaç adım kaldığını görmek, tamamlama oranını artırır.
Dosya Yüklemeleri
Çok adımlı formlarda özel bir zorluk oluştururlar:
- Yükleme adımında hemen kaydedilmeli.
- Geçici olarak işaretlenmeli.
- Form tamamlanınca kalıcı yapılmalı.
- Terk edilenler temizlenmeli.
Birinci madde zorunludur çünkü dosyalar oturumda taşınamaz: bir dosyayı sonraki adıma taşımak için bellekte tutmak mümkün değildir — dosya yüklendiği anda diske yazılmalı ve forma yalnızca referansı taşınmalıdır.
Dördüncü madde ise disk israfını önler. Tamamlanmayan formlardan kalan dosyalar birikir.
Bu temizlik, taslak temizliğiyle birlikte çalıştırılmalıdır.
Kaç Adım Olmalı?
| Yaklaşım | Etki |
|---|---|
| Tek uzun sayfa | İlk bakışta korkutur |
| Az sayıda mantıklı adım | En iyi denge |
| Çok sayıda küçük adım | Bitmeyecek hissi verir |
Üçüncü satır sanılanın aksine iyi bir fikir değildir: on iki adımlık bir form, her adım kolay olsa bile kullanıcıda "bu iş bitmeyecek" hissi yaratır ve terk oranını yükseltir.
Adımlar konuya göre gruplanmalı ve sayı makul tutulmalıdır.
Birinci satır ise zorunlu alan sayısı azsa aslında iyi çalışır. Adım bölmek her zaman gerekli değildir.
En etkili iyileştirme genellikle adım sayısını değiştirmek değil, sorulan alan sayısını azaltmaktır.
Taslak kayıtları ve yüklenen dosyalar disk alanı tüketir; hosting kiralama paketinizde disk ve veritabanı kotanızı bu birikime göre planlamalısınız.
Sonuç
Uzun formlarda en kolay önlenebilir kayıp doğrulama hatalarındadır: bir alanda hata olduğunda tüm formu boşaltmak terk oranını doğrudan yükseltir — girilen veriler forma geri doldurulmalıdır. İlerlemeyi veritabanında taslak olarak saklamak en dayanıklı çözümdür; gizli alanlarda taşımak ise fiyat veya yetki bilgisi söz konusuysa açık üretir. Ve her adımın kendi adresi olsun; tarayıcının geri düğmesinde formun bozulması kullanıcının en doğal refleksini cezalandırır.
Sıkça Sorulan Sorular (SSS)
İlerlemeyi nerede saklamalıyım?
En dayanıklı yer veritabanında taslak kayıttır; kullanıcı başka cihazdan bile devam edebilir. Oturum kolaydır ama oturumla birlikte ölür. Gizli alanlar risklidir — kullanıcı o değerleri değiştirebilir, fiyat veya yetki bilgisi taşınıyorsa ciddi açıktır.
Otomatik kaydetmeyi nasıl kurmalıyım?
Her tuş vuruşunda değil, yazma durduktan birkaç saniye sonra kaydedin — her tuşta kaydetmek uzun metin alanlarında yüzlerce gereksiz istek üretir. Kaydedildiğini kullanıcıya gösterin ama başarısızlıkta mutlaka uyarın; "kaydedildi" yazıp kaydetmemek veri kaybettirir.
Doğrulamayı ne zaman yapmalıyım?
Her adımda. Beşinci adımda "ikinci adımdaki numara geçersiz" demek kullanıcıyı üç adım geriye gönderir ve muhtemelen tamamen kaybettirir. İstemci tarafındaki doğrulama yalnızca deneyim içindir; sunucu tarafında her adım yeniden doğrulanmalıdır.
Kaç adım olmalı?
Az sayıda ve konuya göre gruplanmış adımlar en iyi dengeyi verir. Çok sayıda küçük adım iyi bir fikir değildir — on iki adımlık bir form, her adım kolay olsa bile "bu iş bitmeyecek" hissi yaratır. En etkili iyileştirme genellikle adım sayısını değil, sorulan alan sayısını azaltmaktır.