260 likes | 638 Views
TASARIM KURALLARI (DESIGN RULES). ESRA TELLİ. BTO611- İNSAN BİLGİSAYAR ETKİLEŞİMİ. GİRİŞ. GİRİŞ. Tasarım kuralları, tasarımcıya hazırladığı yazılım ürününün kullanılabilirliğini arttırmada yardım eden kurallardır. Bu kuralları iki boyutta ele alınır: otorite ve genelleme.
E N D
TASARIM KURALLARI(DESIGN RULES) ESRA TELLİ BTO611- İNSAN BİLGİSAYAR ETKİLEŞİMİ
GİRİŞ Tasarım kuralları, tasarımcıya hazırladığı yazılım ürününün kullanılabilirliğini arttırmada yardım eden kurallardır. Bu kuralları iki boyutta ele alınır: otorite ve genelleme. • Otorite ile, tasarımda hangi kuralların takip edilip edilmeyeceği ya da hangilerinin önerildiği ifade edilir. • Genelleme ile ise, kuralın hangi tasarım durumlarında uygulanıp uygulanmayacağı ya da daha sınırlı uygulama durumlarında kullanılıp kullanılmayacağı anlatılır.
GİRİŞ 3 tip tasarım kuralı vardır: • İlkeler (Principles) soyut tasarım kurallarıdır, yüksek genellenebilirlikleri ve düşük otoriteleri vardır • Standartlar (Standards) spesifik tasarım kurallarıdır, yüksek otoriteli ve uygulamada sınırlıdırlar • Rehberler (Guidelines) otoritededüşükolmaeğilimindedirlerveuygulamada daha geneldirler.
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER • Öğrenilebilirlik (Learnability): Yeni kullanıcıların etkili etkileşime başlamaları ve maksimum performans göstermeleri kolaylığıdır • Esneklik (Flexibility): Kullanıcı ve sistemin bilgiyi değiş-tokuş edebilecekleri yolların çokluğudur • Sağlamlık (Robustness): Kullanıcıya hedeflerin başarılı bir şekilde gerçekleştirilmesinde ve değerlendirilmesinde sağlanan destektir
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER ÖĞRENİLEBİLİRLİK (LEARNABİLİTY) • Öğrenilebilirlik, etkileşimli sistemlerde acemi kullanıcıların ilk başlangıçta sistemi nasıl kullanacaklarını anlamalarıyla ve sonra da nasıl daha yüksek performans gösterebilecekleriyle ilgili özelliklerdir. Öğrenilebilirlik beş ilkeyi içerir: • Tahmin edilebilirlik (Predictability) • Sentezlenebilirlik (Synthesizability) • Aşinalık (Familiarity) • Genellenebilirlik (Generalizability) • Tutarlılık/Uyum (Consistency)
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Tahmin edilebilirlik (Predictability) • Kullanıcının etkileşim bilgisin, gelecekteki etkileşim sonuçlarını belirlemeye yeterli olmasıdır. Yani kullanıcının gelecekteki hareketlerini belirlemek geçmiş etkileşimine dayanır. Sentezlenebilirlik: • Kullanıcının eskiden yaptığı işlemlerin o anki durumunu etkilediğini anlayabilme yeteneğidir. Aşinalık: • Yeni bir kullanıcı için, etkileşimli bir sistemin aşinalığı kullanıcıda var olan bilgiler ile etkili bir etkileşim için gerekli bilgi arasındaki ilişkinin ölçülmesidir.
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Genellenebilirlik: • Kullanıcının spesifik bir etkileşim bilgisini benzer durum ya da durumlar için kullanmasıdır. Tutarlılık/Uyum: • Benzer durum ya da görevlerin birbirlerine benzerolmalarıdır. “Tutarlı olun!”. Tasarımda çok geniş kullanım alanı olan bir ilkedir.
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER ESNEKLİK (FLEXİBİLİTY) Kullanıcı ve sistemin bilgiyi değiş-tokuş edebilecekleri yolların çokluğudur. • Diyalog İnisiyatifi (Dialogue initiative) • Çoklu İşbölümü (Multi-threading) • Görev Geçişgenliği (Task migratability) • Yerine Geçebilirlik (Substitutivity) • Uyarlanabilirlik (Customizability)
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Diyalog İnisiyatifi : Sistemle kullanıcı arasındaki etkileşim başladığında, eşlerden hangisinin diyalogda inisiyatif sahibi olduğudur. • System pre-emptive: Sistem diyalogu başlatır ve kullanıcının bilgiye ulaşması için talepte bulunması gerekir. • User pre-emptive: Kullanıcı sisteme karşı herhangi bir fiilde bulunmakta serbesttir. Çoklu İşbölümü (Multi-threading) Sistemin, kullanıcının aynı anda birden fazla görevle etkileşimini destekleyebilme yeteneğidir
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Görev Geçişgenliği (Task migratability): Sistem ve kullanıcının task uygulamalarının birbirlerine verilmesi sorumluluğudur. Otomatik pilota geçme gibi Yerine Geçebilirlik (Substitutivity): Birbirlerine eşit olan giriş ve çıkış değerlerinin, birbirleri yerine geçebilmesidir. Çizgi çizip, uzunluğun program tarafından verilmesi ya da koordinatların verilip, çizginin program tarafından çizilmesi. Uyarlanabilirlik (Customizability): Kullanıcı ara yüzünün kullanıcı tarafından programlama bilgisi dahilinde (adaptability) ya da sistem tarafından (adaptivity) değiştirilebilmesidir.
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER SAĞLAMLIK (Robustness): Kullanıcıya hedeflerin başarılı bir şekilde gerçekleştirilmesinde ve değerlendirilmesinde sağlanan destektir. • Gözlenebilirlik (Observability) • Geri alıp-düzeltilebilirlik (Recoverability) • Görev Uyumu (Task conformance) • Yanıt Verme (Responsiveness)
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Gözlenebilirlik: Kullanıcıya sistemin iç durumunu değerlendirme izninin verilmesidir. • Browsability: Sistemin geçerli iç durumunun ara yüzün sınırlılığı ile araştırılma imkanının sağlanmasıdır • Defaults: Kullanıcının hata yapmasını önlemeye yöneliktir • Reachability: Kullanıcının verilen herhangi bir sistemden diğer herhangi bir sisteme geçiş yapabilmesidir • Persistence: İletişimin etkisinin devamlılığı ve kullanıcının bu etkiyi kullanabilmesidir • Operation visibility: Kullanıcının bir sonraki işlemde nasıl bir performans gösterebileceğidir
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Geri alıp-düzeltilebilirlik: Kullanıcının yaptığı hatayı geri alıp düzeltebilmesidir. İleri – geri tuşları • Forward-Backward: Metin editörlerinde bir hata durumunda işlemi geri adımlamak için undo komutunu tetikleyen buton kullanabilir. Adımlama ileriye doğru da olabilir. • Reachability: Düzeltilebilirlik erişilebilirlikle ilgilidir. Kullanıcıya mevcut durumundan hedeflediği bir duruma geçebilmesine imkan tanınmasıdır.
KULLANILABİLİRLİĞİ DESTEKLEYEN İLKELER Görev Uyumu: Sistem hizmetlerinin kullanıcının işlemlerinin tümünü destekleme derecesidir. Görevlerin tamamlanabilmesi için sistem ara yüzlerinin anlaşılır olması gerekir. Yanıt Verme: Kullanıcı ile sistem arasındaki iletişimin (communication) oranıdır. • Cevap verme zamanı: Sistemin kullanıcıya durum değişikliğini bildirene kadar geçen zamandır. • İstikrar: Aynı / Benzer durumlardaki değişmezliğin sürdürülmesidir.
STANDARTLAR Underlying Theory: • Donanım için kullanılan standartlar ergonomi/insan faktörü ve psikolojiye dayanır, iyi bilinirler ve donanım tasarımına kolayca uyarlanabilirler. • Yazılım standartları ise psikolojiye ve bilişsel bilime dayanırlar, nispeten daha az bilinirler ve yazılıma uyarlanmaları kolay değildir. Change: Donanımın güncellenmesi yazılıma göre daha pahalı ve daha zordur. Donanım için değişiklik isteği yazılımdaki gibi sıklıkla ortaya çıkmaz. Standartlar nispeten sabit olduklarından dolayı yazılımlardan çok donanımlar için uygundurlar.
STANDARTLAR ISO 9241’de kullanışlılık etkililik, yeterlilik, memnuniyet ile kullanıcıların belirli çevrelerde hedeflerini başarmaları şeklinde tanımlanmıştır. • Etkililik: Doğruluk ve tamlık (eksiksizlik) ile kullanıcıların belirli çevrelerde hedeflerini başarmaları • Yeterlilik: Kaynakların, hedeflerin doğru ve eksiksiz olarak başarılmasına yönelik harcanması • Memnuniyet: Kullanıcı ve o sistemin kullanılmasından etkilenen insanlar için sistemin konfor ve kabul edilebilirliği
YÖNERGELER • Yönergeler otoritede düşük olma eğilimindedirler ve uygulamada daha geneldirler. • Daha genel ve daha öneri şeklindedirler. • Tasarıma başlamadan önce tasarımcıya fikir verme amaçlıdırlar.
YÖNERGELER Birçok rehber bulunurken bunlara en tipi örnek Smith ve Mosier tarafından ortaya konmuştur. Bu rehber temel kategorileri şunlardır: • Veri girişi • Veri görüntüleme • Dizi kontrolü • Kullanıcı rehberliği • Veri aktarımı • Veri koruma
YÖNERGELER Birçok rehber bulunurken bunlara en tipi örnek Smith ve Mosier tarafından ortaya konmuştur. Bu rehber temel kategorileri şunlardır: • Veri girişi • Veri görüntüleme • Dizi kontrolü • Kullanıcı rehberliği • Veri aktarımı • Veri koruma
Shneiderman’ın 8 Altın Kuralı • Tutarlılık için gayret etmek • Kullanıcılara sık kullandıkları eylemlere yönelik kısayol / macro / tuş kombinasyonları sağlama ve kullanma imkanı verme • Bilgilendirici geri dönütler sunma • Bir görevi tamamlayan kullanıcıya bilgilendirici diyaloglar tasarlamak • Hataların önlemesi ve basit hataların yönetilmesi • Hareketlerin kolayca geri alınmasına izin vermek • İç kontrolün desteklenmesi • Kısa süreli hafıza yüklemesini azaltmak
Norman’ın 7 Kuralı • Kafanızdaki ve çevrenizdeki bilgileri birlikte kullanmak • Görevlerdeki yapıyı basitleştirme (Yüksek düzeyli bellek yüklemesinden ya da karmaşık problem çözme becerilerinden kaçınmak için görev yapıları basitleştirilmelidir. Basitleştirme, zihinsel yardım sağlayarak, görevler hakkında daha fazla bilgi ve daha iyi dönütler veren teknolojiden yararlanılarak, görevi yada görevin bir bölümünü otomatikleştirerek ya da görevin doğasını değiştirerek yapılabilir.) • Nesneleri görünür yapma (Uygulama ile değerlendirme arasında bağlantı olmalıdır.) • Haritalamaları doğru yapma (Kullanıcının hareketleri sistem kontrollerinde ayrıntılarıyla planlanmalıdır. Böylece neyin ne kadar yapıldığı daha açık bir hale gelir.) • Hem doğal hem yapay sınırlamaların gücünden yaralanma. • Hata için tasarım (Kullanıcıların yapmaları muhtemel hataları önceden tahmin edip, sistem içinde geri almaları da tasarlamak gerekir.) • Ara yüzde küçük farklılıklar olabilir ama kritik kontrol öğeleri herkesin alışageldiği şekilde olmalıdır (otomobil örneği).
HCI Şablonları / Örüntüleri • Tasarıma başlamanın bir yolu daha önce başarısını kanıtlamış örneklerden yararlanmaktır yani bir sistem ya da paradigmayı başarılı kılan unsurları tekrar kullanmaktır. • Örüntü: Belirli bir kurala göre dizilmiş şekil veya sayı dizisidir. Örüntü yaklaşımında, başarılı tasarımların yeni durumlarda tekrar tekrar kullanılabilen temel bilgilerinin özetleri alınarak tekrar kullanılır. • Örüntüler, psikolojik teorilerden değil başarılı uygulamaların sonuçlarından üretilirler ve tasarımcıya bir şeylerin nasıl yapılacağını değil, nelerin neden yapılması gerektiğini anlatırlar.