Alışveriş Sepeti Tasarımında Kararı Zorlaştıran Dört Detay
Sepet çoğu ekipte ödeme akışının ilk adımı sayılır. Kullanıcı için öyle çalışmıyor: sepet, satın alınmasına henüz karar verilmemiş ürünlerin bekletildiği yer. Bu ayrım kabul edilince tasarım soruları da değişiyor, çünkü karar odasında işe yarayan şeyle bir ödeme formunda işe yarayan şey aynı değil.
Sepet listesi bir bekleme listesidir
Kullanıcı sepete ürün eklerken çoğu zaman "bunu alıyorum" demiyor, "bunu kaybetmeyeyim" diyor. Fiyatları yan yana görmek, toplamı bütçeyle karşılaştırmak, ikisinden birini elemek için ekliyor. Mini sepet bu iş için yetersiz; bir katmanın içine sığdırılmış üç satır karşılaştırma yaptırmaz.
Buradan çıkan sonuç "hem mini sepet hem tam sepet koyun" gibi bir denge cümlesi değil. Tam sepet asıl arayüz, mini sepet sadece bir bildirim. Mini sepette ürünü düzenlenebilir yapmaya çalışmak, aynı işi iki yerde farklı davranışlarla uygulamak demek ve tutarsızlık genelde oradan çıkıyor.
Ürün satırındaki bilgi hangi soruya cevap veriyor
Sepet satırına ne konacağı sorusu genelde "görsel büyük olsun, açıklama kısa olsun" düzeyinde cevaplanıyor. Asıl mesele daha dar: kullanıcı o satıra bakarken hangi tereddüdü çözmeye çalışıyor?
Pratikte iki tereddüt öne çıkıyor. Birincisi varyant doğrulaması: seçtiğim gri miydi, mavi mi? Görselin varyanta göre değişmesi bu yüzden kozmetik bir istek değil, satırın tek işlevi. İkincisi fiyat: sepette gördüğüm rakam ödeyeceğim rakam mı?
İkinci soru arayüz sorusu gibi durur ama cevabı veri modelinde. Sepet satırı fiyatı ekleme anında dondurup saklıyorsa, kampanya bitince kullanıcı hâlâ eski rakamı görür ve ödeme adımında sürprizle karşılaşır. Anlık hesaplıyorsa sepeti her açışta fiyat ve stok sorgusu gerekir (küçük kataloglarda dert değil, binlerce varyantta hesabı önceden yapmak gerekiyor). Ortası da var: fiyat anlık hesaplanır, değiştiyse satırın üstünde açıkça söylenir. Sessizce güncellemek en kötüsü, çünkü kullanıcı değişikliği fark etmediği yerde güveni kaybediyor.
Sıfır adet silme sayılmaz
Sepet tavsiyelerinde sık rastlanan iki madde yan yana konunca çelişiyor: "net bir kaldır düğmesi koyun" ve "miktarı sıfıra indirerek de silinebilsin". İkincisi sessiz bir silme yolu açıyor. Sayı alanında bir backspace, satırın kaybolmasına yetiyor ve kullanıcı bunu bir işlem olarak yaşamıyor.
Miktar alanının alt sınırı 1 olsun, silme yalnızca kaldır düğmesiyle yapılsın. Kaldırma işleminden sonra satırın yerinde birkaç saniye duran bir geri al bağlantısı, onay penceresinden daha iyi çalışıyor: onay her seferinde herkesi yavaşlatır, geri al sadece hata yapanı kurtarır.
Ürün sayfasına dönüş tavsiyesine ihtiyatlı yaklaşın
Sepetteki her ürün adının detay sayfasına bağlanması standart tavsiye. Mantığı doğru, kullanıcı gerçekten detaya dönmek istiyor. Ama bu bağlantı kullanıcıyı karar ekranından çıkarıyor ve geri dönüş yolunu tarayıcının geri düğmesine bırakıyor.
Detayın büyük kısmı satır içinde açılabilir. Beden tablosu, kargo süresi, iade koşulu: bunlar sepetten çıkmadan görülebilecek şeyler ve karar da tam olarak bunlara bakılarak veriliyor. Tam sayfaya dönüşü ise gerçekten gereken yerde bırakın, teknik ürünlerde uzun özellik listesi gibi.
Asıl kırılgan yer: anonim sepetin hesaba bağlanması
"Sepet kaybolmasın" maddesi listelerde tek satırla geçiştiriliyor, oysa arkasında iki ayrı depo var: tarayıcıda tutulan anonim sepet ve hesaba bağlı sepet. Kullanıcı ödeme adımında giriş yapınca bu ikisi birleşmek zorunda.
Birleşme kuralı önceden yazılmazsa çıkan sonuç genelde şu oluyor: aynı ürün iki satır olarak duruyor, ya da hesaptaki eski sepet yenisinin üzerine yazıyor ve kullanıcı az önce eklediği şeyi kaybediyor. Kuralı basit tutmak mümkün: aynı varyant iki tarafta da varsa adetler toplanmaz, yüksek olan alınır; farklı varyantlar yan yana eklenir; birleşme sonrası kullanıcıya "hesabınızdaki sepet eklendi" gibi kısa bir bilgi verilir. Terk oranını konuşurken düğme metinlerine harcanan zamanın bir kısmı buraya ayrılsa daha çok işe yarar.
Sepet arayüzünde karar desteğinin ne anlama geldiğini derinleştirmek isteyenler için Interaction Design Foundation'ın karar verme başlığı iyi bir başlangıç.