Thursday, February 23, 2006

Yerleşen Web Kültürü

Michael Bernard'ın Developing Schemas for the Location of Common Web Objects çalışması web kültürünün oldukça yerleşmiş olduğunu gösteriyor.

Çalışmayı açıklayıcı ve çok güzel buluyorum. Göz atmanızı öneririm.

(Artık web kullanıcıların alışkanlıklarına göre tasarımları geliştirme vakti:)

Hedef kitleye özel

Uygulama arayüzlerinde hedef kitle en öenmli etkendir. Eğer uygualama arayüzlerinde kullanıcıların profilini oluşturamiyor iseniz başarıyı yakalama şansınız giderek azalır. Örnek verir isek uygulamalar internet kullananımının yoğun olduğu bir kurum ise gerekli tasarımları internet ortamına uygun olmasına dikkat etmeniz gerekmektedir. Fakat uygulama arayüzü bir finans kurumuna üretilecek ise hızlı ve normal şartlarda karmakarışık olan yoğun bilgi yükü olduğu tasarımlar uygun olacaktır. 2005 Cebit Fuarında oldukça büyük bir yazılım firmamızın server tarafı ve pda üzerinden çalışan arayüzlü restoran programını incelemiştim. Yenekleri listeleme kutularından(list box) seciyordunuz. hicbir garsonun bunun ile uğraşacağını sanmadığımı söylediğimde çok datalı(yemekli) menulerde firmalarda en iyi çözümün bu olacağı yönünde ısrar ettiler. Ben aynı düşüncede olmadığımı ve 1-2 yada 3 tıklamayla bile olsa iconlar ile yemeklerin kategorize edilmesi gerektiğini söylediğimde itici bulunmuştum. Sonuçta benzer ürünleri çeşitli restoranlarda görüyorum ama o ürüne henüz raslamadım.

Çeşitli göz taraması testlerinin verdiği örnekler incelendiğinde görsel hafızanın kullanıcıların üzerinde sanılanın aksine daha etkili olduğu ve navigasyonu yönlendirdiği ortadadır. (Mark C. Russel'ın lHotspots and Hyperlinks: Using Eye-tracking to Supplement Usability Testing) Çeşitli görevleri yerine getirmeye çalışan kullanıcıların İlgilendiklari alanlar (Area of Interest) verilen göreve göre şekillendiği ve göze batmanın yanında alışkanlıklarında önemli olduğunu göstermiştir. Test oldukça güzel okumanızı şddetle öneririm.

Benim ilgimi çeken ise çocukların verdiği sonuçlar. Zira okumayı daha bilmeyen yiğenimin google dan flash oyunları aratıp bulup oynaması üstelik bunların detaylı bilgilerini çözmesi oldukça takdire şayendi. Onun arkdaşlarının da benzer şekilde davrandığını farkedince anladım ki çoçukların öğrenme yaşında belirlediği hedefler belirli zorlukları aşmalarına çok kolay. Muhtemelen bir kere bir arkadaşında gördüğü işlemi tekrarlayarak başarıya ulaşması onun yeni denemeler yapmasına da olanak sağlamıştı. (Google'ın başarısı ise başka bir konu). Yeni oyunlar aramış toplam 5 harften oluşan (Games, yada oyun ) onun kolayca yazabilmesini sağlamış ve yeni yeni oyunlar bulduğunda denemekten de geri kalmamıştı. Burda sitenin linguistik yapısının hiç bir önemi yok zira oyunlara giden yerler belirli ve google arama yapınca bunlara ulaşabiliyor.

Çocuklar ile iletişime geçebiliyor iseniz muhtemelen başka dil konuşan insanlar ile görsel objeler kullanark iletişime geçebilirsiniz. Buda gösteriyor ki eğer doğru hedef kitlesi belirler iseniz istediğiniz başarıyı yakalmak için doğru tasarım kararları uygulamalısınız.

RIA (Zengin Internet Uygulamaları)

Kuşkusuz internet uygulamaları geleneksel uygulamaların yerini aldıkça daha fazla gelişiyorlar ve giderek hayatımızda önemli yere sahip oluyorlar.

Yeni nesil diye adlandırabileceğimiz web uygulamlarında önemli kriterlerinden biri klasik web uygulamalarının el es geçtiği yoğun bilgiyi sayfa elemanları ile fazla tıklamadan aynı sayfa içerisinde göstermek. GAP da ürünlerin quick view ve aynı sayfa içerisindeki add to bag seçeneği oldukça etkili ve şapşahane bir uygulama. Bu uygulama ile kullanıcılara konsantreleri dağılmadan maksimum seçeneği sunarak e-alışverişin bütün sıkıntılı süreçlerinden kurtulmasını sağlıyor.

Ajax teknolojisi ve DHTML kullanılarak harika bir uygulama gerçekleştirmişler.

Zengin Web Uygulamaları geliştirmek için kullanıcı odaklı tasarımlar hem web 2.0'ın getirdiği yeni vizyona hemde maksimum gelişime olanak sağlıyacaklar diye düşünüyorum.

Yaşasın web 2.0

Tuesday, February 21, 2006

Size salak diyebilirmiyim?

Bu gece yeni tanıştığım Creating Passionate Users blogu bana oldukça eğlenceli ve dolu bi gece verdi. The Clueless Manifesto makalesi yenilikçilik unsurunu çok güzel anlatıyor.

"Yeni başlayanların bir çok olasılığı olmasına rağmen profesyonellerin daha azdır." - Shunryu Suzuki

Oldukça etkileyici bir cümle!!!. Gerçekten bu böyle mi? Yoksa zaten bu olasılıkları denedikleri için mi profesyonellik ortaya çıktı. Yoksa profesyoneller kendi yollarını çizdikleri için diğer yolları denemediler. Yani olası yolları sadece tecrübe etmedikleri için mi olasılık listelerinden çıkardılar?

Kendimden örnek vermek gerekirse; Oldum olası kelimeler ile oynamayı seviyorum. İmla hatalarımı görmezden gelmeye çalışıyorum. Belki türkçeyi hakettiği gibi kullanmadığım için yeni vizyonlar üretebiliyorum. Belki bu eksiğim yüzünden "profesyonel" hayatımı yürütebiliyorum. Denemediğim yolların olasılık listemden çıkmasını istemiyorum fakat denediğim ama bir türlü çıkışı bulmadığım yolları ise olasılık listesinden siliyorum.

Salakça sorular büyük devrimlerin başlangıcı olabilir mi?

Dünya yuvarlakmıdır?
Uzaya gidilir mi?
Bakkallar mı ucuz supermarketler mi?
Prizde elektrik var mı?
Tasarım mı kasarım mı?

Tasarımda değişim

Creating passionate users blogunda ufak odaların beyin hücrelerini öldürdüğüne ve karmaşık şartlarda kalan beyinin nöron ürettiğine dair hoş bir makale var. Bu bana kurumsal firmalarda yaratıcılığın gerilemesinde ki sebebi de açıklar gibi geldi.

Belki bu yüzden değişimi kabul etmekte bu kadar zorlanıyoruz. Belki odacıkları bizler çevremizde örüyoruz ve bu bizim beyin hücrelerimizi öldürüyor.Belki dinlediğimiz müziklerin benzerlikleri bizi odacıklara mahkum ediyor. Belki benzer blog tasarımlarına fazla prim verdiğimiz için yeni odacıklar oluşturuyoruz. Kimbilir?

Friday, February 17, 2006

Yüzlerce yıllık tasarım öğütleri

Uygulama ve web arayüz tasarımlarının bir dil olduğunu söylemiştik. Bir dilin güzel kullanılması için neler yapılabileceğini düşünürken tasarımları Tao ile özleştiren John Allsopp’un DAO makalesi gözüme ilişti. Kültür ve arayüz tasarımı hakkında bir şeyler karalarken fark ettim ki tarihimizde tasarım uygulamalarına hem felsefe olarak hem de yol gösterici olarak Mevlana’nın kutsal düşünceleri bize çok yardımcı olacak. Kısa bir araştırmadan sonra Mevlana’nın 7 öğüdünü tasarım ile yorumlama fikri bana heyecan verdi. Başarılı tasarımları incele isek bu 7 öğüdün ne kadar kritik ve değerli olduğu su götürmez bir gerçek.

Mevlana’nın 7 öğüdü,

1.cömertlikte ve yardim etmede akarsu gibi ol
Kullanıcılara kolay ulaşılabilir tasarım üret. Neye ihtiyaçlarını var ise göz önünde bulundur. Öngördüklerinden daha fazla bilgi, içerik, işlev koy. Tasarımın kullanılmasında yardımcı ol. Alışkanlıklarını göz önünde bulundur ama akarsu gibi dinamik ol. Değişimleri izle ve uyarla.

2.sefkat ve merhamette günes gibi ol
Kullanıcıların hata yapmasına izin ver. Nerelerde hata yapabileceklerini düşün ve yardımcı ol. Hata kodlarını düzgün yaz. Kullanıcılarına karmaşık duygular hissettirme. Sade ve amacına uygun basit ol. Korkutma ve onları sakın hor görme.

3.baskalarinin kusurunu örtmede gece gibi ol
Site erişebilirliğini herkese göre hazırla. Görme engellileri, işitme engellileri unutma. Siteyi her platform ve browser bağımsız tasarla. Sadece RSS isteyenleri unutma.

4.hiddet ve asabiyette ölü gibi ol
Herşeyi kullanıcıların gözüne sokar gibi agresif, ve kaos sever yapma. Her tarafa flash bannerlar koyup sitede agresif tavır benimseme. Yapamadıkları şeyler için kolaylıklar üret.

5.tevazu ve alcak gönüllülükte toprak gibi ol
Estetik olarak sade ol. Kullanıcıları yorma ve ne kadar büyük olduğunu hissettirmek için gereksiz aktivasyonlardan kaçın. Toprak gibi ne ekersen onu biçersini yetişebileceğini hissettir. (Bu google in kullandığı en akıllıca yolardan biri bence)

6.hos görürlülükte deniz gibi ol
Kullanıcıların ve site sponsorlarının isteklerini dinle, iyi özümse ve en iyisi üretmeye çalış.

7.ya oldugun gibi görün , ya da göründügün gibi ol...
Gerçek hayatta ne isen onu yansıt. Olduğun gibi görün. Ekstra makyaj yapma ama ne isen onu gösterecek kadar da yetkin ol.

Mevlana bügün yaşasa ve tasarım yapsa keşke

Herkese iyi Çalışmalar

Wednesday, February 15, 2006

Guru Guruya olmaz!
Kültür dikkate alınmadan adım atılmaz.

Tasarımların uygulamaların başarılarına direkt ve indirekt olarak etki ettiğini düşünüyorum. Yurtdışında geliştirilen tasarım prensiplerini Türkiye'de uygulamak kullanıcılara uyarlamadan sunmak biraz dikte etmek gibi geliyor. Zira kullanıcılar belirli bir altyapı yada kullanım fikrine sahipler. Türkiye'de ise durum biraz farklı zira kullanıcıların çoğu bilgisayarı yeşil ekranlı muhasebe programlarından ibaret sanıyorlar(dı). 90larda Microsoft, SAP veya Oracle'ın geliştirdiği uyulamalar tasarım özürlü olarak sadece işlevsel yönüyle kullanıldı. Kullanıcılar uygulamaların arayüzlerine değil işlevselliğine dikkat ettiler. Bu uygulamarda kulanılan arayüz soğuk ve her an kullancıya sen hata yapabilirsin hissi vermek üzere tasarlanmış gibiydi.(bunu tasarlayan muhendislerin hata ayıklama isteğinin bir parça etkisi var sanırım)


90'ların sonlarında 2000'lerin başında ise web tabanlı uygulamalar lisans avantajı yüzünden yaygınlaşması kurumlara kısa zamanda hareket etmek zorunda bıraktı. (Ben tasarım kaygısı ile inceleyceğim) Bu durum ise bazı dezavantajları beraberinde
getirdi bunlar;

  1. Kurumlar için heyecan verici ama eskiye dayanan bir alışkanlıklardan farklı,
  2. Client uygulamlarına göre daha kısıtlı kullanılabilirlik yetenekleri,
  3. Lokasyon ve platform bağımsız olduğu için öngörülemeyen sorunlar
  4. Sadece muhendislerin tasarım yeteneklerine bırakma hatası,
  5. Kullanıcı tecrübe strateji eksikliği,
  6. Adaptasyon ve eğitim stratejileri eksikliği,vb,

Arayüz tasarımcıları internetin nimetlerinden faydalanarak kısa zamanda bilgilerini ve tecrübelerini paylaşmaya başladı. Kullanıcı deneyimlerinden, Kullanılabilirlik testlerine, Persona yaratımlarından Tasarım Kararlarına kadar bilgilerini paylaştıkça hızla bir yol katedildi.

Gerek tecrübelerime dayanarak gerekse meslektaşalrımın tecrübelerimden faydalanarak arayüz tasarımlarında dikkat edilmesi gereken kuralları sıralamaya çalışacağım.

  • Uygulama Amacını, dönüm noktalarını ve başarı kriterlerini müşteriniz ile birlikte net olarak belirleyin,
  • Uygulama hedef kitlesini belirleyin ve ona göre strateji oluşturun. üstdüzey yöneticiler farklı bir dil kullanır. Unutmayın.
  • Mutlaka tasarımda B planınız olsun. (Aynı kurumun 3 ayrı deparmanına farklı işlerde çok farklı tasarımlar uygulamak durumunda kalmıştım. Sebebi kullanıcıların web uygulamlarına soğuk bakmasıydı. bi türlü beğenmedikleri gibi başarısını
    kullanmada zorluklar çıkararak etkileyecekler gibiydi. Pratik bir çözüm ile değiştirilebilir Templateler yaptım ve kullanıcılar önyargılarını seçim haklarını kullanarak (Uygulamayı Kişiselleştirerek) giderdiler)
  • Kullanıcıların daha önce yaptıkları iş süreçlerinden hem tasarım hem foksiyonelite olarak uzaklaşmayın,
  • Uygulamada kullanıcıların keşfedebilecekleri ufak araçlar geliştirin. Manuellere koymayın ama kolayca keşfetmelerini sağlayın. (basit hesap makinası, kısayol tuşları vb)
  • Kullanıcıların deneyimlerini mutlaka gözlemleyin. Kullanmaya başladıkları anda bir ay sonra ve 3 ay sonra tekrar tekrar edin.Alışkanlıklarını değiştirebildiklerini alanları ve sebepleri belirleyin. Tasarım hataları mutlaka bu aşamada ortaya çıkar.Bunları yeniden tasarlayın.
  • Bölgesel kültürleri önemseyin. İnsanlar kendilerini sıcak hissettigi arayüzlerde uygulamara daha kolay adapte oluyorlar. Gerekirse Lokasyona göre hata mesajlarınızı düzeltin.(Ben uygulamarın eğlenceli olması gerektiğini düşünüyorum. Abartıya kaçmıyacak şekilde hata mesajlarında kullancı profiline göre hoş suprizler yapın. örneğin karadenizliye bir hata mesajında "ne yaptın uşağım yeniden dene da!" adanalıya "Aboooo, oldu mu ya şimdi" gibi)
  • Geliştirdiğiniz uygulamarı size anlatan ve beraber geliştirdiğiniz departmanın genellikle Bilişim Departmanı olduğunu unutmayın. Bu genelde bilişime çok yatkın insanların kullanabileceği şekilde tasarlanmış oluyor. Ama kullananlar ise bambaşa profillerdeler.
  • Kullanıcıyı korkutmayın. Kendini karmakarışık bir sistemde ne yapacağını bilmez şekilde bırakmayın. Ona hergün yaptığı işten farklı olmadığını hissettirin. Mümkün olduğu kadar günlük işlerine benzetip basitleştirin. unutmayın ki kullanıcı bu programları kullanmaz ise uygulama başarılı olamaz.
  • Kullanıcının başarısı ödüllendirecek yöntemler geliştirin. (Sign Outlarda gerekli mesajalrı verebilirsiniz.)
  • Kullanıcının aidiyet duygusunu hissetmesini sağlayın. Kullanıcı çalıştığı kurmun etkisini hissetsin. Çalıştığı kurumda hergün gördüğü ve alışık olduğu görsel objeleri yormadan, sıkmadan kullanın. Çoğu kullanıcı kurum sembollerini görmekten mutluluk duyar.
  • Kullanıcının diğer kullanıcılar ile iletişime geçmesini sağlayın. (FAQ leri dinamik yapıda kullanırsanız sorunlarda insanların paylaşmasını sağlarsınız.)
  • Mutlaka eğitim materyalini uygulamadan önce görsel olarak hazırlayın.
  • Mevsimsel değişikliklere dikkat edin. Yazları boğucu renkler yerine ferahlatıcı renklerin çekici geldiğini unutmayın.
  • Eninde sonunda uygulamanın hakimiyetini kullanıcılarda olduğunu uygulamanın ne kullanıcı ne isterse onu yaptığını hissettirin.
  • Tasarımı yaşatın. Tasarımı devamlı geliştirme imkanının olursa buna kaynak ayırın.
  • Uygulamanın fiziksel ürün desteğini sağlayın.(Mümkünde tip&tricks içeren ufak notebooklar bastırın)
  • Çoğu yöneticinin uygulamanın yazılım mimarilerine bir eleştiri getirmeyecekleri için ilk hedef tasarım olacak unutmayın.

Yukarıda saydığım tasarım kaydıları uygulamanın mühendis ve işletme yetenekleri tam ve muazzam olarak kabul edilerek yazılmıştır. Ülkemizde daha uygulama arayüz tasarımlarına login ekranı dışında bakılmadığını düşünür isek çok yolumuz olduğunu biliyorum.

İlginç deneyimlerin yanı sıra iyi bir tasarımın uygulamaya fark yarattığını bilmek benim hoşuma gidiyor.

Gelecek yazımda uygulama arayüz tasarımında deneyler başlığıyla yazacağım.

Herkese iyi çalışmalar.