Kötü Analizin Bedelini Kim Öder?

Metin Akın
ProductTank İstanbul
4 min readFeb 23, 2020
Pexels tarafından Pixabay’da paylaşılmış bir fotoğraf

Klimalı ofiste yaz sıcağında üşümeye başlayınca elimdeki bir bardak kahveyle ofisin bahçesindeki ağaçları ve kuş sesleri arasında yürüyüşe çıktım. Ağustos ayının güneşiyle ısınırken, bir yandan da üzerine çalıştığım işi nasıl bir açıklamayla yazılımcıya gönderebilirim diye düşünüyorum. Buldum.
Masama geri dönünce yazılımcıya sorun takip sistemi üzerinden:

Böyleyken böyle, şöyleyken şöyle yapalım ve sorunu giderelim.

diye yorum bıraktım.

Ancak bir terslik var.
İlettiğim problem kaydı ışık hızıyla bana geri dönüyor.
Düşülen yorum daha da düşündürücü:

Yaptığımız geliştirme, geçen ay bize iletilen talebe göre kurgulandı.
Şimdi bunu değiştiremeyiz. Daha büyük soruna yol açar.
Analiz hatasından dolayı kurduğumuz yapıyı şu anda düzeltemeyiz.
Ne istediğinizden emin olun ya da müşteriye yapamadığımızı açıklayın.

Peki ama aylar önce istediği şeyi zaten anlatmış bir müşteriye, ortaya çıkacak şeyin kendi beklediğinden farklı olacağını nasıl açıklayacağız?
Kötü analizin bedelini yine müşteri mi ödeyecek?

Bu yazıda yazılım yaşam döngüsünde gereken değeri görmemiş, hakkıyla yapılmamış bir analiz çıktısının kimleri nasıl etkilediğini sizlerle paylaşmaya çalışacağım. Ancak öncesinde analizin tanımına gelin hep birlikte bakalım.

Bilişim sektöründeki iki otoriteye göre (kaynak) iş analizi için yapılan tanımlar şöyle:

“Bir kurum içerisinde ihtiyaçların tanımlanması ve paydaşlara değer katan çözümler önerilmesi yoluyla değişimin gerçekleşmesini sağlayan uygulamalar bütünü”

olarak açıklanıyor.

“İş ihtiyaçlarının tanımlanması, uygun çözümlerin önerilmesi, gereksinimlerin ortaya çıkarılması, belgelendirilmesi ve yönetilmesi için uygulanan aktiviteler bütünü”

olarak açıklanıyor. Yani ne yapılacağına ve nasıl yapılacağına yol gösterme işleminin adına analiz; bu işlemi yapan insana da analist deniyor.

Her sektörün kendi dinamikleri ve buna özel bir analiz ihtiyacı vardır.
Bu ayrım nedeniyle finans sektörü için yapılan analiz çıktısıyla telekom sektöründe çıkan analiz sonucu pek tabii ki birbirine denk değildir.
Ancak tüm analistlerin ortak yanları vardır. Bunlar:

  • Masanın etrafında doğru iş ortaklarını bir araya getirmek,
  • Zor soruları sormak, dinlemek ve
  • Ölçüp biçerek, sağlam temellendirilmiş kararı vermektir.
Tipik bir gereksinim toplama amaçlı analiz toplantısı

Karar verebilmek önemli bir meziyettir. Genellikle pek çok kişi bir karar vermekten kaçınır. İsterseniz, bir örnekle kendi hayatınızda yarın deneyin. Birlikte çalıştığınız iş arkadaşlarına: “Öğle yemeğine nereye gidelim?” diye bir sorun. Kaçamak cevaplar alacak ve çoğunlukla: “Farketmez” için karar kılınacaktır.

Analiz toplantılarında anlamaya çalıştığınız şey çoğunlukla büyük olsun, küçük olsun bir iş modelidir. İş modelinin içerisinde temelde

  1. para verecek müşteriyi temsilen,
  2. hizmeti sağlayacak çalışanları/tedarikçiyi temsilen,
  3. parayı saklayacak muhasebeyi temsilen,

insanları barındırır.

Şirketin çalışan sayısı arttıkça isimlerin altında yazan ünvanlar da daha ‘havalı’ hale gelir. Belki de sizin ünvanınıza ürün yöneticisi diyenler de çıkar. Ancak yapılan iş genellikle yukarıdaki maddelerden birine girer ve günlük olarak sizin göreviniz herkesi bir toplantı odasında dinlemek olur.

Dinlemek bu Dünya’nın sihridir.
Dinlemek bu Dünya’nın sihridir.

Toplantı odası ise bir analistin en doğal yaşam alanıdır. Orada dinler, sorar; orada sorgular, orada anlarsınız. Anladığınızı yine başka bir toplantı odasında aktarırsınız.

Her katılımcı kendisini aynı seviyede anlatamaz, düşündüklerini aktaramaz.
Kimisi yavaş konuşur, kimisi dolaylı konuşur. Sizin her türden insanı dinleyecek yetkinliğiniz olmalıdır. Aslında kurulan her cümlenin arkasında bir neden vardır ve doğru analiz çıktısına ulaşılabilmesi için o cümlelerin arkasındaki kök nedene farklı tekniklerle sizin ulaşmanız gerekmektedir.

Yabancıların tam bu durum için kullandığı elicitation adında güzel bir kelimesi var. Herkesin söyleyecek bir sözü, paylaşacak görüşü varken gerçekten neye ihtiyacı olduğunu bilmek ve anlamak olarak çevrilebilir.

Analizi doğru şekilde almak için yapılması gereken şey aslında hiç zor değil.

  • Dinlemek,
  • Not almak,
  • Belgelendirmek.

Ancak çoğunlukla zaman baskısından ötürü kötü analiz çıktısı meydana gelebiliyor ve kötü haliyle yazılım yaşam döngüsü için bir girdi kabul ediliyor.
Hiç yoktan iyidir, öyle değil mi?
Emin olmayın.

İsterseniz, kötü analizin nelere yol açabileceğini birlikte bir kez daha düşünelim:

  • Hatalı teknik tasarım,
    İhtiyaç yanlış anlaşıldığı için kullanılacak olan arkayüz API’leri, ekran tasarımları yanlış olarak tasarlanır ve yakın gelecek için yeniden düzeltmekle uğraşırsınız
  • Hatalı geliştirme,
    Niye böyle bir şey istemişler ki, çok saçma değil mi bunu böyle yapmak” diye diye geliştiriciler kod yazmaya devam eder. Kodun kalitesi düşer çünkü her kullanılan if’in anlamsız bir nedeni vardır. Kimse sorgulamak da istemez.
  • Hatalı test,
    İsterleri karşılamak adına mantık çerçevesinden uzak oluşturulan senaryolar meydana getirilir. İçerikten bağımsız Pass olup olmadığına bakılır ve artık raporlamak için sayıya oynanmaya başlar. Bir zamandan sonra yazılım çıktısının kalitesinden ödün verilmeye başlanır.
  • Ben bunu istememiştim’ diyen bir müşteri,
    İlk prototip (increment ya da adına her ne diyorsanız) paylaşılınca yukarıdaki sinyallerin yetersiz olduğunu dile getiremeyen ama düşünen herkesin düzeltmek için daha fazla mesai yapmasına neden olur
  • Hedeflenen zamanı tutturamayan bir proje yönetimi,
    Yeniden düzenleme için ekstra bir zaman planlaması (analiz, tasarım, geliştirme, test, devreye alma) yapılacağı için zaman takvimini tutturmak artık eskisinden daha zor hale gelir
  • İşlerin neden sarktığını açıklayamayan bir yönetim,
    Hiç kuşkusuz bir şeyler terstir ancak gereksinim toplama aşaması çok önceden kapandığı için analizin eksik veya yanlış olduğunun adını koymak büyük bir cesaret ister. Oluşan stres çalışanlara yansımaya başlar

Kötü analizin bir sonucu olarak artık bütün ekibiniz gülmenin ve gülümsemenin zor olduğu döneme girersiniz. Bedeli bütün ekibinizden çıkar.
Üstüne müşterinizin pazarı kaçırmasına da neden olabilirsiniz.

Analizi doğru şekilde yapmak aslında hiç zor değil.
Yapılacak iş kabaca bir Tweet’e sığıyor:

İyi bir analiz nasıl yapılır? sorusuyla çoğunlukla karşılaşıyorum.
Verdiğim tek kelimelik bir cevap var: dinleyerek.

Kendi fikirlerinizi, düşüncelerinizi, hayallerinizi ve isteklerinizi bir kenara bırakarak, tüm dikkatinizle karşınızdakini dinlemeniz gerekiyor. Bu kimi zaman bir yönetici olabileceği gibi bazen de son kullanıcı olabilir.

Doğru soruları, zor soruları sormak ve dinlemek iyi bir analistin görevidir.

İsterseniz sizin (veya şirketiniz)için doğru analizin nasıl olması gerektiğini ücretsiz olarak anlatabilirim. metoinside.com üzerinden iletişime geçmeniz yeterli, detayları konuşuruz.

--

--

Metin Akın
ProductTank İstanbul

Helping companies to achieve their business goals with technology.