Scrum Çatısı altında bugüne dek ele aldığımız Scrum Master ve Product Owner rollerinden sonra sıra Geliştirme Takımı’nda! Bugüne dek yazılım ekipleriyle çalışmış olanlar, yazılımcı, yazılım mühendisi ya da geliştirici dediğimiz rolleri aşağı yukarı bilirler. Hemen gözümüzde canlanan o muhteşem insanı burada tabii ki tarif etmiyoruz. Biz, Scrum’la ürün geliştiren bir Scrum Takımı’nın içinde yer alan Geliştirme Takımı’nı bir bütün olarak tarif ediyoruz, hem de 5 karakteristik özelliği üzerinden.
1. Kendi kendisini yönetir, organize eder
Scrum çatısıyla çalışan geliştirme ekiplerinde herhangi bir “yönetici” bulunmaz. Buna ihtiyaç yoktur. Çünkü takım kendi kendine organize olabilmekte, kendi kendini yönetebilmektedir. Sprint için yapmayı taahhüt ettikleri potansiyel olarak canlıya alınabilir ürün parçacığını hayata geçirmek için gerekli tüm yönlendirmeleri kendi içlerinde yapar ve takımın ‘bitti’ tanımına göre mevzu bahis işi bir Scrum Eser’i olan Incerement’e, yani artıma kendi önderliklerinde çevirirler. Geliştirme takımı, Scrum Master da dahil olmak üzere, hiç kimseden işi nasıl hayata geçireceğine dair direktif almaz.
2. Çapraz işlevselliğe sahiptir
Scrum çatısıyla çalışan bir geliştirme takımı, ürünü/hizmeti hayata geçirirken gerekli tüm uzmanlık ve becerilere sahiptir. İdeal dünyada, işin analizinden testine, geliştirmesinden mimari tasarımına kadar her türlü uzmanlığı içinde bulunduran geliştirme ekibi çapraz işlevselliğe sahiptir. Yani takım elemanları belirli konularda uzmanlıkları olan kişiler olsa bile birbirinin yedeğiymişçesine hareket edebilir. Sorumluluklar uzmanlıklara göre kişilere atanmaz, sorumluluklar bir bütün olarak takıma aittir.
3. Takım üyelerinin ünvanı yoktur
Çapraz işlevselliğin doğası gereği uzmanlık alanına göre herhangi bir ‘title’/sıfat/ünvan bulunmaz. Herkes sadece ve sadece geliştirme takımı üyesidir. Hiyerarşik herhangi bir düzen yoktur. Tüm pozisyonlar yatayda yer almaktadır, takım üyeleri dirsek dirseğe çalışır.
4. Herhangi bir alt-takım yoktur
Çapraz işlevsellik ve ünvan demişken, ürünü hayata geçirmek üzere gerekli tüm yetkinliklere sahip geliştirme takımı herhangi bir alt takımı tanımaz. Örneğin işler bittikten sonra test ekibine test edilmek üzere yönlendirmeler yapmak gibi bir durum yoktur. Ortada sadece tek bir geliştirme takımı vardır ve her şey bu takım üzerinden yürür.
5. Sorumluluk her zaman tüm takıma aittir
Geliştirme takımı içerisinde yer alan bireylerin özel ilgi alanları, uzmanlıkları elbette olabilir. Ki gerçek dünyada da baktığımız zaman mevcut sistem üzerinde herkesin belirli bir alanda daha fazla tecrübesi/uzmanlığı olduğu aşikar. Ancak takımın yapmak üzere taahhüt verdiği işin sorumluluğu bir bütün olarak her zaman tüm takıma aittir.