19 Mayıs 2015 Salı

Issue Tracking araçları ve önemi

  Merhaba, bu yazımda tech proje geliştirme sürecinde task yönetimi ve bunun öneminden bahsetmek istiyorum.

Task yönetim araçları nerede kullanılmalıdır?
Ekibiniz 2 yada daha fazla kişiden oluşuyorsa ve projeniz bir haftalık kısa bir proje değilse  bu araçlar kullanılmalıdır.

Neden?
Şöyle bir senaryomuz olsun. Önemli bir geliştirme görevimiz yada yeni bir projemiz olsun ve deadline miz 3 ay, ekibimiz 5 kişi. Normal Türk usulü olarak bu geliştirme nasıl yapılır tahmin edebiliriz az çok. Proje yöneticisi bir toplantıda görev paylaşımı yapar, Tasklar kağıt kalemler, word excel mail vb. araçlarla elektronik ve yazılı ortama aktarılır.

Başlarda her şey yolundadır. Ancak task sayısı yükseldikçe yavaş yavaş kazan kaynamaya başlar. Taskların bazıları unutulur, bazıları aslında tam yapılmamıştır. Hangi task yarım hangisi bitmiş hangisi başlanmamış gibi konular için oldukça fazla zaman harcanmaya başlar. Kimse projenin ne durumda olduğunu göremez, ne yapması gerektiğini bilemez. Sonu her daim kaos ve ekip içinde yüksek oranda negatif enerji yoğunluğudur.(bunu gördüğüm yerden kaçarım)

Ekip üyeleri anlayamadıkları tasklar için proje yöneticisi ile tekrar iletişime geçer ve task hakkında bilgi alır (burası en tahammül edemediğim kısımdır). Çünkü tamamen boşa harcanan bir zaman ve etkileşimdir.
Bu kullandığınız task yönetim tekniğinin sadece kıytırık bir mail kadar işe yaradığını gösterir.
Eğer bir task açılıyorsa bu taskın anlaşılabilir olması için harcanan zaman burada harcanmalıdır.

Task açıldığında görevlendirilen kişi tekrar bilgi için geliyorsa, ya iki taraftan biri ekipte çok yenidir, ya task aracı problemi ifade etmede yetersiz kalıyordur, yada task ı açan kişi bu konuda beceriksizdir.

Ne yapmamız lazım?
  Bize şöyle bir şey lazım. Öyle bir şey olması lazım ki, taskları açarken problemi herkesin anlayabileceği şekilde ifade edebilmemiz ve bunu yaparken sadeliği koruyabilmemiz lazım. Yani aynı zamanda task ile görevlendirilen kişi de görevi anlamak için fazla zaman harcamaması lazım.

 Öyle bir şey olmalı ki binlerce task olsa bile hangisinin ne durumda olduğunu çat diye görebilmem lazım. İstediğim bir filtrelemeyi kaydedip sonra tekrar aynı işlemi yapmadan bu sonuçları alabilmem lazım.

 Öyle bir şey olmalı ki, ekip üyeleri diğer üyelerin taskları arasında filtreleme yapmadan sadece kendi görevlerini görebilmeli, ama aynı zamanda diğerlerinin yaptıklarını da isterse takip edebilmeli.

Bunları başardık ne oldu şimdi?
Şimdi elimizde tıkır tıkır yürüyen bir sistem var. Görevler konusunda fazla konuşulmuyor çünkü gerek kalmıyor. Bu da ekibin stres yükünü önemli bir ölçüde alıyor. Ekip üyeleri ne yapmaları gerektiğini düşünmek zorunda kalmıyor, çünkü taskları var.
Ancak bu demek değildir ki kimse konuşmuyor herkes makineleşmiş çalışıyor. Aksine herkeste keyifler yerinde olduğu için ve eskisine göre çok daha fazla boş zamanları olacağı için, ekip eskisinden daha iyi birbiriyle etkileşim halinde.

Bu iş için hangi yazılımı kullanmalıyız?
Piyasa da ekip içi etkileşim ve task yönetimi ile ilgili pek çok araç mevcut. Ancak yukarıda bahsettiğim problemleri çözebilen, aslında komplex olup ayrıca basit olmasını becerebilen, pek çok task yönetim aracı kullanmış birisi olarak benim favorim Jira var. (İsteniyorsa Agile&Scrum metodolojileri ile harika bir şekilde kullanılabiliyor).

Daha önce bir iki firmada (bazı çalışanların bana ayar olmasına rağmen) ısrarım ile bu sistemi entegre ettim. O zamanlar bu süreç benim için problemli olsa da, eminim ki şu an bunu yaptığım için tüm kullanıcılar memnundur.
Son dipnot olarak bir şey daha, bu araçların içinden Trello kullanacaksanız, e-mail üzerinden devam edin, pek bir farkları yok. Trello kadar olamasa da Asana da öyle. Ve büyük bir ekip olup da task yönetimi aracı olarak bunlardan biri kullanılıyorsa o ekip yada firma için üç ünlem olsun beyninizde.

İlerideki günlerde Jira kullanımı ile ilgili eğitsel makaleler de yazacağım.