Skip to main content
search

Geçen hafta İngiltere’de katıldığımız “Lean Kanban Day London” ve “ACCU 2015” etkinliklerinde öne çıkan detaylar;

Lean Kanban Day London

· Projelerin üzerinde, Strateji katmanında da Kanban uygulamalarından faydalanılabileceğinden bahsedildi, “Enterprise Service Planning: Future of Kanban”. Bu sayede stratejinin de projeler gibi değişen koşullara adapte edilebileceği üzerinde duruldu.

· Lean Kanban yaklaşımda “Discovery” ve “Delivery” fazlarının birbirlerinden bağımsız ama iç içe ve dengeli düşünülmesi gerektiği, üzerinde durulan konulardan biriydi. Discovery fazında, “Exploring New Knowledge” konusuna odaklanılırken, Delivery fazında “Exploiting Existing Knowledge” paradigması ile mevcut bilgi birikiminin ürüne dönüştürülmesine odaklanılıyor. Bu sayede hem ürün geliştiriminden geri kalınmazken, hem de kazanılan know-how ile ileriki zamanda yeterli bilgi/tecrübe eksikliğinden kaynaklanabilecek sorunların önüne geçilmesi hedefleniyor. Bu yaklaşımları kullanarak delivery hızından ödün verilmemesi amaçlanıyor.

· Üzerinde durulan ve katıldığımız sessionlarda birçok kez duyduğum bir konu da; “Unkown Unkown” , “Known Unknown” ve “Known Know” kavramlarıydı. “Unkown Unkown” lar için en iyi yaklaşımın varsayımlar bulunarak, bu varsayımlardan bilgi edinilmeye çalışılması olduğundan bahsedildi.

· Projelerdeki eforların tahminlemesi için “#NoEstimates” isimli bir oturum düzenlendi. Temelde prediction yerinde forecast yapılmasının faydalı olacağına değinildi. Forecast’in predictiondan farkının historical data üzerinden ilerlemesi olduğundan bahsedildi. Bu aşamada kullanılabilecek iki farklı data’nın “Story Points” ve “Number of Stories” olduğu ve ve farklı case’ler ile desteklenerek birbirlerine göre bir avantajı/dezavantajı olmadığından bahsedildi.

· Kanban projelerinin ölçümlenmesinde kullanılabilecek önemli metrikler belirtildi. Bunlar; Delivery Time, Lead Time Distribution, Story Health, Iteration Throughput, Points vs Cycle Time, Bugs per Story Points, Bugs per Iteration, Flow Efficiency, Time in Status şeklindeydi.

ACCU 2015

· Behavior Driven Development (BDD), Test Driven-Development’dan sonra yazılım toplam kalitesinin arttırılması için bir sonraki olgunluk adımı olarak değerlendirilebilir. Ancak BDD senaryolarının iyi ve solid olması, getireceği değer açısından oldukça önemlidir.

· BDD sayesinde elde edilmek istenilen “Yaşayan Dokümantasyon” hedefine ulaşılabilmesi için (Aynı zamanda diğer proje paydaşlarının da anlayabilmesi için), senaryoların ayrıntıya boğulmadan basit bir biçimde hazırlanması gerekmektedir, “Imperative vs Declerative Design”.

· BDD senaryolarının belirlenmesinde, mümkün olduğunca, 3 farklı birimin de (Tester, Developer, Product Owner) katılımı sağlanmalı. Bu toplantılara “Deliberate Discovery” gibi bir isim verilip, lifecycle’a entegre edilmesi süreklilik açısından faydalı olacaktır.

· Behavior = Context + Action + Outcome olarak düşünülmelidir.

· BDD tasarımı sırasında; User Story, Acceptance Criteria ve Example’lar ayrı ayrı ortaya konulmalıdır.

· BDD gerçekleştirilmesinde populer araçlardan biri olan Cucumber, Gherkin gibi bir language parser ile kullanılabilmektedir (Business Readible Domain Language. Türkçe’nin de dahil olduğu 40’ın üzerinde dil desteği var).

· Test otomasyonu konusunda scripting dillerden Ruby, Python ve Grovy ön plana çıkanlardan (Tahmin ettiğim üzere Python Avrupalı mühendisler arasında daha popüler).

· Junit ve TestNG gibi unit testing frameworklerinin devamı olarak geliştirilmiş ve JBehave gibi BDD framework’lerinin özelliklerini harmanlayan “Spocktacular” framework’ünden bahsedildi. (Şimdilik test kodunun sadece Grovy’de geliştirilmesi mümkün).

· Oyun motoru geliştiricisi Unity, test yaklaşımlarından bahsetti. Genel olarak bizim yaklaşımımıza çok benzer. Sadece daha fazla alfa ve beta testi yapıyorlar.

· DevOps & Infrastructure as Code konusunda tartışmalar yeni başlamış durumda. Birçok kez automated deployment hakkında konuşulduğunu duydum. Ancak bunlar genelde konsept seviyesinde kalıyorlar. Case haline gelmiş fazla bir çalışma bulunmuyor.

· DevOps amacıyla kullanılan Docker aracı üzerine bir oturum vardı. Docker, “Build, Ship and Run Any App, Anywhere” mottosuna sahip open-source bir araç. Benzer araçlar olduğu gibi bu hizmet Google ve Amazon gibi şirketlerden tarafından da servis olarak verilmeye başlanmış. Docker’ın temel amacı, linux üzerinde çalışan uygulamaların yönetiminin otomasyonu.

ACCU 2015 kısaca bu şekilde özetlenebilir. Özenle hazırlanmış tüm oturumlar için Keynote’lar, British Computer Society (BCS) ve ACCU’ya teşekkürler. Ayrıca, Türkiye’de gerçekleştirdiğimiz etkinliklerin / kazandığımız tecrübenin yurtdışındakilerle karşılaştırıldığında gayet iyi bir konumda olduğunu deneyimlemek oldukça gurur vericiydi.

Ayrıntılara http://lanyrd.com/2015/llkd15/ ve http://accu.org/ adreslerinden ulaşabilirsiniz.

Yazan: Berk Dülger

Close Menu