Tasarım Kuralları Bilgisayar ve Öğretim Teknolojileri Eğitimi Bölümü Doktora Programı 2017-2018 Bahar Dönemi BTÖ-711 İnsan Bilgisayar Etkileşimi Hasan ÇORUK N17142705 Prof. Dr. Hakan TÜZÜN
TASARIM KURALLARI GENELLEME OTORİTE Tasarımcıya, hazırladığı yazılım ürününün kullanışlılığını arttırmada yardım eden kurallardır. Tasarım esnasında hangi kuralların uygulanacağı ya da önerileceğidir. Bir kuralın bir çok duruma ya da sadece belirli durumlara uygulanabilirliğidir.
TASARIM KURALLARI STANDARTLAR KILAVUZLAR İLKELER Öğrenilebilirlik Öngörülebilirlik Sentezlenebilirlik Aşinalık Genellenebilirlik Tutarlılık Esneklik Dialog başlatıcı Multi-threading (Çoklu Kullanım) Görev geçişgenliği Substitutivity ( Yerini Alabilme) Özelleştirilebilirlik Dayanıklılık Gözlenebilirlik Geri alma - Düzeltme Yanıt Verme (responsiveness) Görev uyuşması STANDARTLAR Smith ISO-9241 Standartları Kullanılabilirlik Etkililik Verimlilik Memnuniyet KILAVUZLAR Smith ve Moiser Shneiderman’ın 8 altın ilkesi Norman’ın 7 kuralı İLKE : Soyut Tasarım Kuralları, Genellenebilirlik yüksek, Otorite düşük STANDART : Özel Tasarım Kuralları, Otorite yüksek, Sınırlı uygulama KLAVUZ : Genel Tasarım Kuralları, Otorite düşük, Genel Uygulama
İLKELER Öğrenilebilirlik (Learnability) Kullanıcıların sistemi ilk kullanımları sırasında kolay bir şekilde sistemin kullanımını öğrenmesi ve yüksek başarı performansı elde etmesidir. Öngörülebilirlik (Predictability) Geçmişteki sistem etkileşimleri, gelecekteki etkileşim sonuçlarını etkiler. Kullanıcı merkezli bir yapıdır ve kullanıcın sistem üzerindeki işlem etkilerini belirlemeye çalışır. Sentezlenebilirlik (Synthesizability) Kullanıcının eskiden yaptığı işlemleri o anki durumunu etkilediğini anlayabilme yeteneğidir.
İLKELER Öğrenilebilirlik (Learnability) Aşinalık (Familiarity) Kullanıcının sahip olduğu bilgiler ve etkileşim kurması için gereken bilgilerin ölçümüdür. Genellenebilirlik (Generalizability) Kullanıcının bir duruma özgü etkileşim bilgisini benzer durumlar için kullanabilmesidir. Tutarlılık (Consistency) Benzer durumlarda ortaya çıkan davranışların arasında benzerlik ve uyumun olmasıdır.
İLKELER Esneklik (Flexibility) Kullanıcı ve sistem arasında çeşitli yollardan yapılan bilgi alışverişlerinin tümüne verilen addır. İletişimin hangi türde olacağı tasarlanan sistemin özelliğine göre şekillenebilmektedir. Diyalog Başlatıcı (Dialog initiative) Kullanıcı ile sistem arasındaki iletişimin başlaması esnasında hangisinin diyalogda inisiyatif sahibi olduğudur. System pre-emptive : Sistem diyaloğu 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 kullanım (multi – threading ) Sistemin, kullanıcının aynı anda birden fazla görevle etkileşimini destekleyebilme yeteneğidir.
İLKELER Esneklik (Flexibility) Görev geçişkenliği (Task migratability) Görev gerçekleştirilirken sistem ve kullanıcının uygulamalarının kontrolünü birbirlerine devredebilme durumudur. Güvenliğin kritik olduğu durumlarda görev geçişkenliği etkili olabilir. Yerine geçebilirlik (Substitutivity) Birbirinin yerine geçebilen değerlerin çevrilmesine sistemin olanak tanımasıdır Uyarlanabilirlik (Customizability) Kullanıcı arayüzünün, kullanıcı(adaptability) ya da sistem(adaptivity) tarafından değiştirilebilir olması durumudur.
İLKELER Dayanıklılık (Robustness) Kullanıcıya hedeflerin başarılı bir şekilde gerçekleştirilmesinde ve değerlendirilmesinde sağlanan destektir. Gözlenebilirlik (Observability) : Kullanıcıya, kullanıcı ara yüzü aracılığıyla sistemde olup bitenlerin gösterilmesidir. Browsability : Sistemin iç durumunun ara yüzdeki sınırlı bir bölgede gözlenebilmesidir. Static/Dynamic Defaults : Kullanıcının hata yapmasını önlemeye yönelik mekanizmalar. Reachability : Bir sistemden diğer bir sisteme geçiş yapılabilme durumudur. 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.
İLKELER Dayanıklılık (Robustness) Düzeltme- Geri alma (Recoverability) : Kullanıcı, yapılan hatayı geri alıp düzeltebilmesidir. Forward-Backward : İşlemi geri adımlamak için undo ileri adımlamak için redo komutunu tetiklemektir. Yanıt Verme (Responsiveness) : Sistem ile kullanıcı arasındaki iletişim oranının hesaplanmasıdır. Yanıtlama zamanı, sistemin değişiklikleri kullanıcıya sunma süresidir. Görev Uyumu (Task conformance): Etkileşimli sistemin, kullanıcının ilgilendiği tüm görevleri, kullanıcının istediği gibi destekleyebilmesidir.
STANDARTLAR Smith Standartlar, etkileşimli sistem tasarımları oluşturmak amacıyla ulusal ya da uluslararası olarak belirlenen gerekliliklerdir. Donanıma ya da yazılıma uygulanabilirler. Smith donanım ile yazılım arasındaki, tasarım standartlarını etkileyen karakteristik farklılıklar üzerine çalışma yapmış ve çeşitli standartlar belirlemiştir. Temel Teori (Underlying Theory) : Donanım standartları psikoloji ya da ergonomi/insan faktörlerinin anlaşılması temelindedir. Görece iyi bilinirler ve donanımın tasarımına hızlıca uyarlanabilirler. Öte yandan yazılım standartları psikoloji ya da bilişsel bilimler temelindedir. Daha az bilinir, hala gelişim aşamasındadır ve yazılım tasarımı diline uyarlanması kolay değildir.
STANDARTLAR Smith Değişim (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. Bu sebeple, standart enstitüleri yazılımdan önce donanımlara standartlar belirlemiştir. Örneğin İngiltere Savunma Bakanlığı’nın yayınladığı ‘’Ekipman Tasarımcıları için İnsan Faktörleri’’ standardı 12 bölümden oluşur ve bunlar arasında sadece son 3 bölüm yazılım tasarımı süreciyle ilgilidir.
STANDARTLAR ISO-9241 ISO 9241 standardının kullanılabilirlik bileşeni, donanıma ve yazılıma eşit oranda uygulanmaktadır. Bu standarda ait tanımlar şu şekildedir: Kullanılabilirlik : Belirli ortamlarda belirli kullanıcıların hedeflerine etkili, yeterli ve memnun bir şekilde ulaşabilmesidir. Etkililik : Belirli kullanıcıların belirli ortamlarda amaçlarına doğru ve eksiksiz bir şekilde ulaşabilmesidir. Verimlilik : Kaynakların, hedeflere doğru ve eksiksiz bir şekilde ulaşılmasına yönelik harcanması. Memnuniyet : Çalışma sisteminin kullanıcılarına ve kullanımından etkilenen diğer kişilere verdiği konfor.
KILAVUZLAR (Guidelines) Smith ve Mosier (1986) Kılavuzlar daha genel ve öneri şeklindedirler. Tasarıma başlamadan önce tasarımcıya fikir verme amaçlıdırlar. Kılavuzlar, otoritede düşük olma eğilimindedirler ve uygulamada daha geneldirler. Smith ve Mosier tarafından ortaya konan rehberin temel kategorileri şunlardır: Veri girişi Veri görüntüleme Dizi kontrolü Kullanıcı rehberliği Veri aktarımı Veri koruma
KILAVUZLAR (Guidelines) Shneiderman’ın 8 altın kuralı: Soyut ilkeler ve rehberler, tasarımcıların daha kullanılabilir sistemler üretmesine yardımcı olabilir ancak bunları uygulamak tasarımcıların da kendilerini bir anlamda adamalarını gerektirir. Bunu başarmak adına bazı tasarımcılar ‘’altın kural ya da sezgiler’’ öne sürmüşlerdir. Shneiderman’ın 8 altın kuralı: Tutarlılığa bağlı kalmak Kullanıcılara kısa yollar kullanma olanağı vermek Bilgilendirici geri bildirimler sağlamak Kullanıcılar için Biten Görev Diyalogları tasarlamak Hata önlemek ve basit hataları yönetmek Eylemlerin kolaylıkla geri alınmasına olanak vermek İçsel kontrolü desteklemek Kısa süreli bellek üzerindeki yükü azaltmak
KILAVUZLAR (Guidelines) Norman’ın 7 ilkesi: 1. Hem dünyadaki hem de kafanızdaki bilgileri birlikte kullanın: sistem gerekli bilgileri kullanıcıya sağlamalı ve işlem süreci şeffaf olmalı 2. Görevin yapısını basitleştirin: Bellek yükünden ve karmaşık problemlerden kaçınmak için görevlerin basitleştirilmesi gerekir. Bunun yollarından biri teknolojiyi kullanarak kullanıcıya görev hakkında daha iyi bilgilendirme ve dönütler sağlamaktır. 3. Görselleştirin: Sistem arayüzü, sistemin neler yapabileceğini ve bunun nasıl olduğunu açık bir şekilde göstermelidir. 4. Haritalandırmayı doğru yapın: Kullanıcının istekleri sistem kontrolleri üzerinde haritalandırılabilmelidir. Bu şekilde neyin ne kadar olduğu net bir şekilde anlaşılır.
KILAVUZLAR (Guidelines) Norman’ın 7 ilkesi: 5. Sınırlamaları ortaya çıkarın: Sınırlamalar, her şeyi doğru bir şekilde yapmaya yarar. Buna doğru parçaların sadece doğru parçalarla eşleştiği puzzle lar örnek verilebilir. 6. Hata tasarımı: Hatayı insan yapar. Öyleyse yapılabilecek hataları önceden düşünün ve sistemde bu hataların telafisini tasarlayın. 7. Diğer her şey başarısız olduğu zaman standartlaştırın: Doğal haritalandırması olmayan durumlarda haritalandırmalar standart olmalı ki kullanıcılar tek bir kere öğrenmek durumunda kalsınlar. Örneğin farklı otomobillerde küçük detaylar farklı olsa da temel kontroller hep standarttır.
Teşekkürler Hasan ÇORUK…