Agile Manifesto’nun 12 prensibinden birisi “En önemli önceliğimiz, değerli yazılımın erken ve devamlı teslimini sağlayarak müşterileri memnun etmektir.” Bu madde diğer presiplerdeki gibi tek bir cümle olmasında rağmen gerçekleştirmesi kolay değildir.
Bu prensibin gerçekleştirebilmesi için ilk olarak ürün kapsamında yapılacak tüm işleri büyük parçalar halinde belirlemesi, aralarından değerli olan maddeleri ortaya çıkarması ve sırayla da hayata geçirmesi gerekecektir.
Jeff Patton, 2005 yılında yazdığı “User Story Mapping” kitabı ile ürün kapsamında gelişitirilecek taleplerin hiyerarşik olarak düzenlenebilmesi ve yapılan işlerin büyük resme olan etkisinin görsel sunumunun nasıl sağlanacağı ile ilgili oldukça faydalı bilgiler sunmaktadır. Yeri gelmişken Agile Coach, Product Owner veya ürün geliştirme ile ilgili çalışan herkesin okumasını tavsiye ederim.
User Story Mapping ile işler hiyerarşik olarak görülebildiği gibi yapılacaklar işler arasındaki öncelikler ve öncelikle hayata geçirilmesi gereken değerli kısımlar görsel olarak görülebilmekte, farkındalıkları artırmaktadır.
User Story Mapping oluşturma öncesi yapılacaklar ve dikkat edilecekler;
- Kullanıcı bakış açısı ile oluşturulması çok çok önemli. Teknik işlerden, zorluklardan, kısıtlardan uzaklaşarak son kullanıcı gözüyle bakılması basit ve daha hızlı ilerlenmesini sağlayacaktır.
- Ürünün baştan sona tüm akışı dikkate alınmalıdır.
- Sadece talep sahiplerinin değil, talep sahipleri, paydaşların ve geliştirmesini yapacak tüm teknik çalışanlarında katılımıyla gerçekleştirilmesi herkesin ortak bir anlayışa sahip olmasını sağlayacaktır. Ürünün geliştirilmesi sürecindeki tüm partilerin de aynı noktada olması, birbirini daha da anlamasını sağlayacaktır.
- Herkesin fikirlerini paylaşabileceği ortam hazırlanmalıdır. Bunun için fikirlerin rahatça tereddütsüz bir şekilde paylaşabileceği şekilde etkinliğin fasilite edilmesi gerekiyor.
- Yapılan çalışma finalize edilmiş bir çalışma değildir. Ürün geliştirmenin son aşamasına kadar değişiklikler yapılabilir. Bu sebeple hem yaptıklarımızı değerlendirmek hem de değişiklikleri yapmak için yinelemeli düşünmeyi kullanmalıyız.
- Sadece iş akışındaki ilk aşamanın hepsini tamamlamak hayata geçirilebilir bir ürünü vermeyecektir. Bu sebeple iş akışındaki her bir adım için en değerli kısımları bularak hayata geçirmek kullanıcı hikayelerini de şekilde belirlemek önemlidir.
User Story Mapping oluşturmanın adımları;
- İş akışının çıkarılması. Bu adımda teknik bir rolde çalışıyorsanız da tüm teknik işlerden, zorluklardan, kısıtlardan uzaklaşıp sadece son kullanıcı gözünden iş akışına odaklanılması gerekmektedir. Teknik bir çalışanın zaman zaman bu aşamada teknik süreçlerden uzak olması zorlayabiliyor ama bunun için çaba gösterilmesi ve katılımcıların birbirini kontrol etmesi önemli. Amacımız bir kullanıcının ürünü kullanırken baştan sonra geçtiği aşamaları çıkarmak.
- Aktivitelerin belirlenmesi. İş akışımız sürexindeki tüm aşamalar için kullanıcının gerçekleştireceği aktivitelerin belirlenmesi.
- Task’ların belirlenmesi. Aktiviteler kapsamında gerçekleştirilecek henüz olgunlaşmamış işlerin belirlenmesi.
- Önceliklerin ve hayata geçirilecek özelliklerin belirlenmesi. İş akışı, aktiviteler ve task’ların belirlenmesi ürün kapsamında geliştirilecek tüm işlerin tek bir ortamda görünür hale gelmesi sonrası bunların arasından önceliklerin belirlenmesi, öncelikler arasından hayata geçirilecek değerli kısımları belirlemek çok daha kolay olacaktır.
User story mapping ortaya çıktıktan sonra ise geliştirme stratejilerinin belirlenmesi gerekmektedir. Bu aşamaya da kullanıcı ile yazılımı buluşturmak noktası olarak düşünebiliriz.