26 Kasım 2014 Çarşamba

Çıkarımlar : Bu yazıda ürün yerleştirme kullanılmıştır.


Scrum’i profesyonel olarak uygulamaya başladıktan sonra scrum ile ilgili kavramları hayatımın her köşesinde görür olmaya başladım.

Ataletten kurtulma ve kilo problemini aşmak için sahilde koşmaya başlamıştım. İlk başlarda hiç bir şey ölçümlemiyordum. Sonra bunun bir ihtiyaç olduğu farketmeye başladım. Gelişip gelişmediğim anlamanın tek yolu ölçümlemekti. Runkeeper programını cep telefonuma yükledim ve koşuya her gittiğimde kayıt etmeye başladım. Büyükada, Bostancı, Pendik, Belgrad ormanı vs. bir çok yerde kaydettim. Bu koşular sırasında bazı çıkarımlarım oldu. Şöyleki; 

Çıkarım 1- Yol değişirse, hızını mukayese etmenin bir anlamı kalmaz. 
Bunun scrum’daki karşılığı takımın velocity’si takımın işine bağlı olarak değişir. Takımdaki kişiler ve sprint uzunluğu değişirse velocity’yi karşılaştırmak anlamlı değildir. Onun üzerinden bir çıkarımda bulunulamaz 

Çıkarım 2- Herzaman odaklanılacak iyi bir taraf vardır. 
Runkeeper programı her koşumda o koşuya has iyi yaptığım birşey varsa onu söyleyerek beni motive ediyor. Örneğin en iyi hızını yaptın, en uzun koşunu gerçekleştirdin, yada 1-3 km arası en iyi hızını koştun, en yüksek eğimini tırmandın vs. Retrospective’lere başladğımızda genelde takım iyiye odaklanma konusunda sorun yaşıyor. Bu anlamda Runkeeper örnek alınabilir. 

Çıkarım 3- Önemli olan sürdürülebilir bir hız yakalayabilmektir. 
Bir kaç koşu sonrası artık ortalama ne kadar sürede koştuğumu biliyorum. [Ve bu sürenin bağlı olduğu değişkenleri keşfettim.] Bazen yanımda arkadaşlarla koşarken onların hızına aldanıp hızlı gittiğim bir iki kilometre oluyor, sonrasında kendimi zorladığım için geri kalan kısımda kendi ortalamamın oldukça aşağısına düşüyorum. 
Scrumda takım kendi sürdürülebilir hızını bulmalıdır.  Ve Kaizen gereği bunu artırmak için çabalamalıdır. HyperProductive takımlar ancak bu şekilde oluşturulabilirler. 

Son olarak Scrum takımı deyince aklıma kürek takımı geliyor. Arkada nereye gidileceğini belirleyen ve dümeni elinde tutan Product Owner, Önde takımı motive eden ve takımın fonksiyonelitesini ve verimliliğini sağlayan Scrum Master ve Ortada hedefe ulaşmak için var gücüyle çalışan Development Team.


Scrumofobi

        Yazılım geliştirme insanının scruma dönüşme korkusudur. Bu fobi yazılım geliştirme insanının gündelik iş hayatını etkiler. Scrumofobi'nin kök nedeni olarak değişime karşı duyulan korku ve direnç gösterilebilir. Yazılım geliştirme insanı ünvandan bağımsız olmakla birlikte bu modeli bir güç kaybı olarak değerlendirebilir. Kendi içinde oluşturduğu bu ön yargı, onu scrum'ın çerçevesini tam anlayamamasına sebep olur. 
         
         Daha çok proje yöneticisi, yazılım-analiz takım lideri gibi ünvanlarında çalışan kişilerde görülebilir. Bu kişiler geleneksel takım modelinden, çevik takım modeline geçmeyi yadsırlar ve bu onların adaptasyonlarını zorlaştırır. Eski modelde yetkin bir yönetici ve altında ona bağlı çalışanlar varken, Scrumda tüm takımın yetkinliğin artmasını sağlayan ve insiyatif almalarına olanak veren bir yapı vardır. Scrum daki bu takım yapısı taahhüt kavramınında tüm ekipçe paylaşılmasını sağlar ve sorumlu olarak geleneksel modelde olduğu gibi kişileri değil tüm takımı muhatap alır. Bu takıma güvenmeyi sağladığı için takımın kendine olan güvenin ve dolayısıyla üretilen işin kalitesinin artmasına sebep olur. Geleneksel takımla yönetilen işlerde muhatap hiyerarşik olarak tepede olan kişidedir, sorumlu odur ve bu takımda iş sahiplenişi azaltabilir. 
         
        Scrumofobik kişilerin bir diğer özelliğide şeffaflığa açık olmayışlarıdır. Kendi takımlarını korumak adına onlara sormadan karar verme yetkileri vardır. Kendilerinde olmayan şeffaflığın diğer ekiplerde de olmadığına inandıkları için sürekli defans halindedirler. 
         
        Bu kişiler bu şeffaflık aylayışlarından dolayı workaround'lara, by-pass çözümlere bayılırlar, kendi çarklarını döndürebildikleri müddetçe onlar için ortada bir sorun yoktur. Sistemin kendilerine by-pass çözüm üretebilecekleri bir açığını bulduklarında bundan kimseye bahsetmeden kullanmaya devam ederler. Kalıcı çözümler, Kaizen kültürü onlar için maliyetli şeylerdir. Ve genellikle o topa hiç girmeyelimcidirler. 
          
         Scrumofobik insanlar proje yöneticisi, takım lideri vb. pozisyonlarda olabileceği gibi, takım içerisinde hiyerarşiden beslenen ve ondan hesap sorulabilecek bir pozisyonda olmadığı sürece rahatsız olmayan yazılımcı/analist/testçi gibi pozisyonlarda da ortaya çıkar. Üstten gelsinci, gelmeden yapmamcı, yaparken banamı sorduncu bu tipler, sorumluluk ve insiyatif kelimesi ile kendilerini en uzak noktada konumlandırırlar. Bu kişiler Daily Scrum'ları bile kendi işlerinden hesap sorulduğu bir ortam olarak algılayabilirler. 

          Genel olarak değişime, şeffaflığa, deneyselliğe yani scrum'ın özüne uzak yazılım geliştirme insanının scrum dönüşümüne gösterdiği korkudur.


18 Kasım 2014 Salı

C'Lean development

[Aim of the book]:
In this book, we hope to chane the software paradigm 
from process to people, 
from disaggregation to aggregation,
from speculation to data-based decision making,
from planning to learning
from traceability to testing
from cost-and-schedule to deliver business value.

if you think that better, cheaper and faster can’t coexist, you should know that we used to think the same way in the pre-lean days of manufacturing and product development. However, we learned that by focusing on value, flow and people, you got better quality, lower cost and faster delivery. 
[p:xviii] 

[For whom is this book] 
software development managers, project managers and technical leaders.

[Introduction]
The story of Florida and Minesota.[p:xxi]

Differences between companies are rooted in their organisational history and culture, their approach to the market and their ability to capitalise on opportunities. [p:xxi]

The story of General Motor GM-10 and Honda [p:xxii]

[Outline] [p:xxv]
1.Eliminate Waste
2.Amplify Learning
3.Decide as late as possible
4.Deliver as fast as possible 
5.Empower the team
6.Build integrity in
7.See the whole

[2.Amplify Learning] 
Development is an exercise in discovery, while production is exercise in reducing variation.
and for this reason, a lean approach to development results in practices that are quite than lean production practices. 
Development is like creating a recipe, production is like making the dish. 
[p:xxvi] 


9 Kasım 2014 Pazar

Örnek Alınacak Scrum Master



Scrum eğitimi ve sonrasında hizmetkâr liderlik (servant-leadership) kelimesini birçok kez duyduk. Peki, Scrum Master denildiği zaman aklımıza ilk gelen hizmetkâr liderlik ne demek ve neleri gerektirir? Bu konu üzerindeki düşüncelerimi ve elde ettiğim bazı bilgileri paylaşmak istiyorum. Yazımda hizmetkâr liderliğin temel taşlarından biri olan örnek bir insan olma üzerinde duracağım.
 
Öncelikle üzerinde düşündüğümüz hizmetkâr liderlik, 1970 yılında Robert K. Greenleaf tarafından tanımlanan hizmetkâr liderlik tanımından çok daha öncesinden gelen ve geçerliliğini yitirmemiş bir liderlik şeklidir. İslamiyet ve diğer dinler bu tür liderliği çok daha öncesinden benimsemiş ve uygulamıştır.
 
Peygamberimizin (SAV) “Bir milletin efendisi, ona hizmet edendir.” (Aclûnî, Keşfü'l-Hafâ, 2:463) hadisi ve kendisinin yönetim şekli bize bu manada fazlasıyla örnek oluyor. Buradaki düşüncelerin bir kısmını zaten biliyor ve uyguluyor olsam da çoğunun farkına İdris Tüzün’ün kaleme aldığı “Hizmetkâr Liderlik Modeli” adlı kitabını okuduktan sonra vardım. Okunmasını şiddetle tavsiye ediyorum.
 

Örnek Bir İnsan Olmak

 

Liderlik öncelikle yaşantısı ve davranışlarıyla örnek bir insan olmakla başlar. İnsanlar münasebet içinde olduğu kişilerden etkilenir. Etrafında iyi kişiler olan kişinin zamanlar iyileşmesi ve kötü kişilerle takılanların zamanla kötü adetler edinmesi herkes tarafından bilinen bir gerçektir. Liderlerin ve idarecilerin insanlar üzerinde çok daha fazla etkisi vardır. İnsanlar genellikle liderlerini örnek alırlar. Bir lider olarak takımımızdaki kişilerin nasıl olmasını istiyorsak bizde öyle olmalıyız. Eğer lider iyiyse, etrafındakilerde iyi olur. Eğer cesursa etrafındakilerde cesur, korkaksa korkak olur. Eğer Scrum’ı benimser ve uygulama gayreti içinde olursa takımı da ona uyar, gevşeklik veya umursamazlık içindeyse takımı Scrum’dan daha fazla uzaklaşır.


İnsan eğer söylediklerini kendisi yaşamıyorsa dediklerinin hiçbir tesiri olmayacaktır. Hatta dediklerini tam manasıyla yaşayan bir kişinin örnek davranışı başka söze hacet bırakmaz. Kendisi sigara içtiği halde çocuklara sigaranın zararlarından bahseden bir kişinin ne kadar boş konuşmuş olduğunu ve dediklerini karşısındakilerin hiç kale almayacağını hepimiz tahmin edebiliyoruz. Scrum, karmaşık olan yazılım geliştirme süreci için biçilmiş kaftan diyen fakat Scrum’ın kaideleri konusunda gevşeklik gösteren ve kendini geliştirme çabası içinde olmayan bir Scrum Master’ın sözleri de aynı şekilde etkisiz olacaktır.
 
Ayrıca yanlış örnek olmamak için doğruyu biliyor ve bildiklerimizi de arttırıyor olmalıyız. Bilindiği gibi Scrum kendisi basit ama uzmanlaşması zor bir konu. Scrum Master Gelişim Programı bizim için hazırlanmış şahane bir yol haritası. Öncelikle programı takip etmeli, öğrendiğimiz konuları takımımız ve arkadaşlarımızla paylaşmalı ve çalışma hayatımıza uyguluyor olmalıyız. Daha sonra da öğrenmeye hevesli ve açık olmalı, bu konuda yazılmış kitap, yayın ve konferansları takip ediyor olmalıyız.
 
Son olarak Kur’an da buyurulan “Siz insanlara iyiliği emreder de kendinizi unutur musunuz?” (Bakara 44) ayetiyle yazımı sonlandırmak istiyorum. Yorumlarınızı ve eklemek istediğiniz değerli düşüncelerinizi bekliyorum.