By-Design “Bugs” Kötü Bir İşaret midir?


29

Kullanıcılar, tasarım gereği işler için hata raporları gönderirse, bu kötü bir işaret midir?

Bu, uygulamanın kafa karıştırıcı veya net olmadığı anlamına mı geliyor, yoksa özellikle belirtilmediği sürece, bunu yalnızca bir defalık kullanıcı hatası ile mi düzeltmeliyim?

(Aslında böyle bir raporum yok. Bu, yanlı tasarım "hataların" kötü bir şey olup olmadığına dair tamamen varsayımsal bir sorudur.)


19
Belki de Lotus Notes'taki programcılardan bazıları yorum yapmak isterdi, çünkü standart cevap "bir hata değil, anlamadığınız bir özelliktir".
James Anderson

5
Bana, geliştiricilere verilen kullanıcı gereksinimlerinin, kullanıcıların istediklerini düşündükleriyle uyuşmadığını gösteriyor.
temptar

7
@temptar "İstediğim şey buydu, ama istediğim bu değildi."
StuperUser

5
Son zamanlarda tam olarak, özellikle, spesifikasyonda açıkça belirtilmiş olan (ve şartname aşamasında tartışılan) davranış için bir "hata" iş öğesi atandı. Davranış, kullanıcının bakış açısından beklenmedik olsa da (başka bir yere dikkat edilen belirli bir ayar göz ardı ediliyordu), eğer teknik olarak kelimenin tam anlamıyla hepsi "göz ardı edelim" diyorsa, o zaman benim için bir hata değil, bir değişim isteğidir. Elbette, bunun değişmesini istemek için iyi bir dava açılabilir, ancak bunu bir hata olarak adlandırmayın .
bir CVn

7
@Dunk: Her gün 24 saat süren bir sistem kurdum, çünkü müşteriyi Günışığı Tasarruf Zamanının varlığına ikna edemedik. Sadece 25 saat boyunca gün olduğuna inanmazlardı. Programdaki bir hata mı?
MSalters 13

Yanıtlar:


54

Kötü bir işaret mi? Sanırım içine girmeye değer bir uyarı ama aynı zamanda bunun gerçekleşmesi gerektiğini düşünüyorum.

İnsanlar bana herhangi bir geri bildirim gönderdiğinde, onu üç kovaya filtrelemeye çalışıyorum:

  • Hatalar
  • Özellik talepleri
  • Mis-haberleşme

Hatalar

Şey besbelli şekilde çalışmıyor zaman Hatalar vardır sen beklenebilir, ne de bir yol kullanıcı beklenebilir. Benim adımı istedi, "Scott" a girdim, enter'a bastım ve "Merhaba Joe!" Dedi.

Özellik talepleri

Bu, "Bundan hiç bahsetmediğimizi biliyorum, ancak program, fare hareketlerimden solak olduğumu ve Tamam düğmesini ekranın sol tarafına getirebileceğimi söyleyebilir mi?" Bu, mevcut davranış hem sizin hem de kullanıcının beklentileriyle eşleştiği zamandır, ancak beklentiyi değiştirmek isterler.

Mis-haberleşme

Bu olduğunda size biri senaryodan sonucunu ama beklenebilir kullanıcıyı farklı sonuçlar bekliyor. Bazen bu, beklentilerini henüz iletmemiş olmaları durumunda bir özellik isteği haline gelir, ancak yaptıklarını düşündüler. Beklentinizin yanlış olduğu kanıtlanırsa, bazen bu bir hata olur.

Ancak, çoğu zaman kullanıcının sahip olmadığı bilgisine sahipsiniz. "Bu ekranda, aynı adı ve soyadıyla iki kez kendim için bir kayıt ekleyebilirim! Açıkçası bir hata!" Yanıtınız şöyle olabilir: "Dünyada aynı ad ve soyadı olan birçok insan var, bu nedenle bu kombinasyonun benzersiz olmasını istemiyoruz. Geceleri çalışan ve Olası Yinelemeler Raporunu e-postayla gönderen bir temizlik görevimiz var. müşteri hizmeti, benzer bir isim ve adrese sahip bir kopya tespit ettiğini ve el ile kontrol etmelerini istediğini düşündüğü zaman ”dedi.

Bu yüzden her hata raporunu okumalısınız, ancak çoğu karmaşık sistem gerçekten yalnızca özellik istekleri veya muhtemelen gereksinimlerin yanlış anlaşılması olan hata raporlarına sahip olacak. Gerçek dünyanın altında yatan karmaşıklığı anlamamak, muhtemelen bu sorunların en büyük kaynağıdır.


3
Yanlış iletişim, ayrıca iletilen ve kabul edilen beklentileri yanlış hatırlamayı (veya doğrudan unutmayı) da içerir.
Peter Taylor

1
Büyük farklılıklar, ancak hala başvurunun yanlış iletişimi açıklamaya çalışması gerektiğini düşünüyorum. Uygulamanın aynı adı taşıyan birden fazla kişinizle "Zaten 3 tane John Smith var, bunlardan biri olmadığından emin misiniz?" Diyerek 'Hayır, bunun yeni bir John Smith olduğundan eminim' seçeneğiyle.
Alex Andronov

@Alex Andronov - bir yanlış anlaşılma, atılacak bir eylem olmadığı anlamına gelmez: ya dokümantasyonu, araç ipuçlarını vb. Değiştirin, eğitim materyalini güncelleyin ya da kısa bir açıklama ve devam edin.
Scott Whitlock

7

Bu, şimdiye kadarki cevaplarda değinilmedi, bu yüzden cahil bir kullanıcı tabanının da işareti olabileceğini ekleyeceğim. Ben "cahil" kelimesini aşağılayıcı veya küçümseyici bir şekilde kullanmam, sadece kendi alanlarında veya yazılımın kendi karmaşıklıklarında uygun bilgi veya eğitim olmadan olduklarını ifade etmenin bir yolu olarak kullanmıyorum.

Çoğu kullanıcı, belirli gereksinimleri karşılamak için ne kadar karmaşık bir yazılım olması gerektiğinin farkında değildir. Çabaların% 80'ine etki eden bir şey, işlevselliğin yalnızca% 20'sine (saçak ve istisna vakaları) girmektedir.

Bazen, çok sayıda hata veya veri bozulmasını önlemek için yazılımın neden belirli bir şekilde davranması gerektiğini anlamıyorlar.

Net ve özlü dokümantasyon ve iletişim ile daha iyi hale geldiğinden, bu endişe verici değildir.


2
+1 ama lütfen karmaşık ve karmaşık arasındaki farka bakın ... Yazılımın karmaşık olması gerekmez, ancak çoğu zaman çok karmaşıktır.
Marjan Venema

Bu çok doğrudur. Karşılaştığım en yaygın durum, kullanıcılar arasında, bire çok ilişkiler arasında çoktan bire ilişkilerin arasındaki farkı fark etmemek. Aldığım ortak bir istek, "raporun başlıktaki sipariş numarasını göstermesini sağlayabilir misiniz?" ve açıklamam gerekir ki, vakaların yaklaşık% 95'inde, üzerinde çalıştıkları eşyada yalnızca bir sipariş numarası varken, sorgunun birden fazla sipariş boyunca verileri içerebileceği birçok durum vardır. Sonra sormam gerekiyor, başlıktaki tüm sipariş numaralarını virgülle ayrılmış olarak mı listelememi istersiniz veya rapordaki her ayrıntı satırındaki sipariş numaralarını mı istiyorsunuz?
Scott Whitlock

@ScottWhitlock Evet, aynı şey. İyi bir geliştirici veya iş analisti, yalnızca müşterinin istediğini yapmamalı, aynı zamanda neden böyle bir talepte bulundukları için karşılaştıkları temel sorunu da ortaya çıkarmaya çalışmalıdır. Sorunlarını tanımladıktan sonra uygun bir çözümü tanımlayabilir ve uygun gereksinimleri veya kullanıcı hikayelerini yazabilirsiniz.
maple_shaft

5

Alanında uzman bir kullanıcı varsa, büyük bir sorununuz olabilir. Yazılımınızı, tasarım gereği genel muhasebe prosedürlerine uymadığını veya yanlış bir formülün olduğunu keşfeden bir mühendisin bulamadığını düşünün. Bunun doğru olup olmadıklarını anlamak için araştırma yapmak çok zor olmamalı. Gerekirse çabucak yeniden tasarlayın ve düzeltin.

Belirli bir UI özelliği veya bir para birimi sembolü olması gerektiğini düşündüğü bir alan veya bir diğer biçimlendirme hakkında bir görüş, en azından daha fazla geri bildirim alana kadar göz önünde bulundurulmalıdır. Bunu araştırmak biraz daha zor olabilir.


1
Sanırım tek bir cevap yok. Durum bazında değerlendirilmelidir. Ben de öyle düşündüm.
Maxpm

5

Tecrübelerime göre tasarım hataları, kullanım durumlarınızın gerçek kullanıcılarınıza uymadığı anlamına gelir. Kullanım durumlarınız için gerçek kullanıcıları kullanma hakkında okumaya çalışın (sadece onlara adlar verin ve küçük resim açıklaması kullanım durumlarının kalitesi için harikalar yaratır.)

Önde gelen işletim sistemi satıcıları "bu davranış tasarım gereğidir" derken genellikle uygulama kolaylığı ya da ticari avantajı göz önünde bulundurulmuştur. Bu siz değilseniz, kullanıcılarınıza gerçek beceri seti ve yazılımınızla ilişkilerini bulmaya çalışın. Bütün gün kullanıyorlar mı? Eğlence için ? Haftada bir kez TPS formlarını değiştirdiği için mi?


5

Kullanıcı Arabirimi , En Az Şaşırtma İlkesini izlemelidir - tasarlandığı gibi çalışan bir özellik üzerine tekrarlanan hata raporları, bu ilkenin doğru bir şekilde uyulmadığının bir göstergesidir.


3
Veya, bölünmüş bir kullanıcı grubu olduğunu. Örneğin, webapp'inizin bir Masaüstünü taklit ettiğini varsayalım. Bir pencereyi kapatmanın programı kapatmasını bekliyor musun? Evet, Windows kullanıcıları için, Mac kullanıcıları için hayır.
keppla

1
@Keppla - iyi bir noktaya değin. Herkesi memnun edemezsiniz, bu yüzden burada belirtilenler gibi "hatalar" durumunda, "düzeltmeden" önce olduğundan daha fazla hata raporu almayacağınızdan emin olmak için bazı araştırmalar yapmanız gerekir.
Joris Timmermans

1
belki, ama "yüzlerce insan bu konuda hata yapmış!" verilerinden alıntı yapmak çok daha güçlü! Birkaç kuduz kullanıcının , En Az Şaşkınlık Büyülü Prensibi hakkındaki kişisel yorumlarını ihlal ettiğinizi ve şaşkın olduklarını söylemeleri . İkincisinden biraz bıktım, çünkü bir erkek "şaşkınlığı" başka bir erkeğin "basit" olduğunu.
Jeff Atwood

@Jeff Atwood - "bir kırlangıç ​​bir yaz yapmaz" dediği gibi, "bir hata raporu tasarım hatası anlamına gelmez". Bir özellik olan bir şey hakkındaki tek bir hata raporu, yeniden tasarlamanın bir nedeni değildir ve ortak bir özellik hakkındaki birkaç rapor bile, kullanıcılarınızın çoğunun bir "düzeltme" olmadan daha mutlu olamayacağı anlamına gelmez. Özellikle, orijinal sürümünüz zaten popülerse ve insanlar "bu şekilde" kullanmaya alışkınsa.
Joris Timmermans

2

İki tür hata vardır: işlevsellik programcının amaçlarına uymuyor veya işlevler gereksinimlere uymuyor. Programcıların öncekine odaklanma eğilimi vardır ve ikincisinin zararına. Basitçe söylemek gerekirse, kullanıcılarınız çok fazla "tasarım hatası" bildiriyorsa gereksinimleriniz düşündüğünüz gibi değildir.


2

Şart değil. Rapor edilen hatanın, başlangıçta tanımlanmış kapsamının hemen dışındaki yazılımı kullanması olabilir. A, B ve C yapmak için tasarlanan yazılımı düşünün (önemsiz bir örnek için, çizgi, üçgen ve dikdörtgen çizin). Eğer D bir sonraki mantıksal adım ise (örneğin beşgenler), kullanıcı bunu da yapması gerektiğini ve bunu yapmanın bir hata olduğunu varsayabilir. Ancak, bu orijinal kapsamın dışındaysa, bir hata değildir. Bunun yerine, tasarımdaki bir gözetim (hata) veya teknik özelliklerde gri bir alan veya geliştirici ve kullanıcı tarafından yapılan farklı varsayımlar olabilir.

(Düzenle - @Marjan Venema'nın önerisine göre cevabımı yorumuma ekledik.


Bunun bir hata raporu olarak işaretlendiğini gerçekten görmüyorum. Bir öneri veya özellik isteği gibi daha fazla. (Her ne kadar bazı hata takip sistemlerinde, her
halükarda

1
Çoğu zaman katılıyorum, ancak tasarımda bir gözetim (hata) veya teknik özelliklerde gri bir alan veya geliştirici ve kullanıcı tarafından yapılan farklı bir varsayımlar kümesi olabilir.
James McLeod

1
James, bu yorumu cevabına eklersen, cevabın tamamı daha iyi olur.
Marjan Venema

1

Tasarımın genel olmadığı ve kullanıcıların gereksinimlerinin tam olarak anlaşılmadığı / analiz edilmediği için bunun kötü bir işaret olduğuna inanıyorum.

Tasarımın iki kategorisini görüyorum, - Kazara tasarım. - Niyetle Tasarım.

Kaza sonucu tasarım sık sık bu tür sorunlara neden olur ve devam edemez.


1

Maple_shaft'ın kullanıcıların "cehaleti" konusundaki cevabını eklemek istiyorum. Ayrıca, kullanıcıların% 90'ının yalnızca kendi deneyimlerini ve sistemi kullanma yollarını önemseyeceğini aklınızda bulundurmanız gerekir . Diğer kullanıcıları umursamıyorlar, neden olmasınlar? Tüm farklı kullanıcı türlerinden girdi almak ve herkese mümkün olan en iyi şekilde uygun bir şeyler yapmak tasarımcı / geliştirici olarak bizim işimiz. Çoğu zaman herkes için en uygun çözümü yapamazsınız.

Ancak elbette kullanıcılarınızın geri bildirimlerini okumanız ve değerlendirmeniz gerekiyor! Ne de olsa, sizin yaratılışınızı kullananlar!


0

Hata isteklerini gönderen kullanıcılara genel olarak tasarıma danışılmadı, bu yüzden işleri kasıtlı tasarım kararları olan hatalar olarak görmeleri şaşırtıcı değil. Bir kullanıcı için beklendiği gibi çalışmayan bir şey bir hatadır.

Sorunun genellikle BA veya PM'nin yalnızca gerçek kullanıcılar olmayan yöneticilerden talep aldığının bir işareti olduğunu buldum. Yöneticilerin sistemden beklentileri genellikle verilere giren kişilerin gerçekte ihtiyaç duyduklarından oldukça farklıdır. Doğrudan gerçek kullanıcılardan veri toplamam istendi, ancak son zamanlarda karşılaştığım BA'ların çoğu yalnızca yöneticilerle (ve genellikle görece üst düzey yöneticilerle) konuşuyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.