Konu Başlıkları
Yükleniyor...

Tehlikeli Aksiyonları Ayırmak: Onay Kutusu mu, Geri Alma mı?

Yanlış Tıklamayı Önleyen Buton Yerleşimi ve Geri Alma

Kaydet ile sil butonunun yan yana durması bir yerleşim tercihi değil, bir hata üretme mekanizmasıdır. Rutin bir akışta kullanıcı butonu değil, sıradaki hareketi tıklar. O yüzden tehlikeli aksiyonu ayırmak, kullanıcıyı dikkatli olmaya çağırmaktan çok daha etkili.

Rutin akışta ne olur

Bir işlemi günde otuz kez yapan kişi, arayüzü her seferinde yeniden okumaz. Hareket dizisi ezberlenir: şuraya tıkla, sağdaki kutuya geç, alttaki butona bas. Ezberlenen şey butonun etiketi değil, ekrandaki konumu. Konum aynı kalıp anlam değiştiğinde, ya da iki farklı sonuç doğuran buton aynı bölgede toplandığında, hata kullanıcının dikkatsizliğinden değil düzenin kendisinden çıkar.

Peki bu kişi gerçekten dikkatsiz mi? Otomatikleşme, sık tekrarlanan işlerde beklenen ve verimli olan davranıştır. Arayüz onu cezalandıracak şekilde kurulmuşsa sorun arayüzdedir.

Onay kutusu neden aşınır

Standart çözüm ikinci onay diyaloğu. İşe yarar, ama her yerde değil. Sık tekrarlanan bir işlemde diyalog da akışın parçası hâline gelir: kullanıcı metni okumadan Evet konumuna gider, çünkü son yüz seferde de Evet demişti. Böylece koruma diye eklenen adım koruma sağlamaz, sadece her doğru işlemi bir tık uzatır.

Buradaki çelişki çoğu tasarım tavsiyesinde birlikte durur: aynı metin hem kullanıcıların otomatik davrandığını söyler, hem çareyi otomatikleşmeye en açık adımda arar. Diyalog, nadiren yapılan ve gerçekten geri dönüşü olmayan işlemlerde anlamlı. Hesabı kapatmak, veritabanını silmek, faturayı göndermek. Bir listeden tek satır silmek için değil.

Geri alma, onaydan daha güvenilir

Silme akışlarında geri alma imkânını onay diyaloğundan daha güvenilir buluyorum. Diyalog kullanıcının o anki dikkatine bel bağlar; geri alma, dikkat dağıldıktan sonra bile çalışır. Kullanıcı yanlış satırı sildiğini üç saniye sonra fark eder ve düzeltir, kimseye sormaya gerek kalmaz.

Geri almanın yaygınlaşmamasının sebebi daha kötü çalışması değil, daha pahalı olması. Kaydı gerçekten silmemeniz gerekir: bir silindi işareti, bir saklama süresi, süresi dolanları temizleyen bir görev, ilişkili kayıtların ne olacağına dair bir karar. Diyalog ise tek bir bileşenle çözülür. Bütçe kısıtlıysa bu tercih anlaşılır, ama tercihin neye dayandığı bilinsin: maliyete, güvenliğe değil.

Ayırmanın pratik yolları

  1. Mesafe: Yıkıcı işlemi zararsız olanın hemen yanına koymayın, araya boşluk ya da ayraç girsin.
  2. Renk ve ikon: Kırmızı tek başına yetmez; renk körlüğü olan kullanıcı için ikon ya da metin farkı da gerekir.
  3. Etiket: Sil yerine Tüm kategorileri sil. Diyalogda da aynısı geçerli: Evet yerine Sil.
  4. Gruplama: Kavramsal olarak farklı işlemleri görsel olarak da ayrı gruplara koyun, aynı buton şeridine dizmeyin.

Uçak kollarından kalan ders

İkinci Dünya Savaşı sırasında pilotlar iniş takımı ile kanat flapı kollarını sürekli karıştırıyordu. Kollar aynı yerde, aynı biçimdeydi. Çözüm eğitim ya da uyarı değil, biçim farkıydı: kolların uçlarına farklı dokuda ve şekilde parçalar takıldı, pilot bakmadan hangisini tuttuğunu anladı. Ekranda dokunma duyusu yok, ama aynı mantık geçerli. Grammarly ve Sonos gibi uygulamalarda benzer isimli aksiyonların renk, ikon ve hizalamayla ayrılması bu fikrin arayüze taşınmış hâli.

Ne kadar uzağa?

Fitts yasası, bir hedefe ulaşma süresinin uzaklıkla artıp hedef büyüklüğüyle azaldığını söyler. Riskli butonu uzaklaştırmak yanlış tıklamayı azaltır, ama o butona kasten basmak isteyen kullanıcıyı da yavaşlatır. Yani ayrım bedava değil.

Peki her tehlikeli butonu ekranın köşesine mi atmalı? Hayır. Ölçü şu: işlemin geri alınma maliyeti, ona ulaşma maliyetinden büyükse uzaklaştırın. Bir yorumu silmek geri alınabiliyorsa buton yerinde kalabilir. Yedeklenmemiş bir projeyi silmek geri alınamıyorsa hem uzaklaşsın, hem farklılaşsın, hem de yazarak onaylatın.

Bir şeyi de test etmeden bilemezsiniz: kullanıcıların hangi ikiliyi karıştırdığı. Destek kayıtlarında geri alma talebi en çok hangi işlem için geliyorsa ayıracağınız ilk çift odur.