Scrum Yazılım Geliştirme Yönteminin Uygulamaya Alınmasının Organizasyonel Etkileri Osman Karaahmetoğlu 25.09.2013.

Slides:



Advertisements
Benzer bir sunumlar
Meslek Yüksekokulu, 25 kasım 2010
Advertisements

Defterdarlıklar İç Kontrol Eğitimi 10 Mart-27 Nisan 2013
MODÜL 4 Organizasyon.
TAKIM KURMA VE GELİŞTİRME
PROJE YÖNETİMİ VE RİSK ANALİZİ
BEP BİREYSELLEŞTİRİLMİŞ EĞİTİM PROGRAMI.
KONTROL ORTAMI Defterdarlıklar İç Kontrol Eğitimi 10 Mart-27 Nisan 2013 Strateji Geliştirme Başkanlığı 1.
T.C. KOCAELİ ÜNİVERSİTESİ İç Denetim Birimi Başkanlığı
ÜNİVERSİTELERDE İŞ MÜKEMMELLİĞİ MODELİ 2 MART 2003.
SUNUM. STRATEJİK YÖNETİM Esnaf ve sanatkâr işyerleri sahipleri; bir meslek koluna tabi olup, mesleki yeteneklerini kullanmak suretiyle ailelerini geçindirmek.
Arş. Gör. Cevdet KIZIL Kadir Has Üniversitesi 21/02/2005
Eğitim İhtiyaçları Değerlendirmesi (TNA)
ERK İSG&İK – –
Bireyselleştirilmiş Eğitim Programı (BEP) Nedir?
AB-TÜRKİYE ODA FORUMU PROJESİ 1/51 DEĞERLENDİRME TABLOSU Başvuru Rehberi içinde yer alan ve proje tekliflerinin hangi kriterlere göre değerlendirileceğini.
Bora GÜRSEL CBÜ BAUM Proje Yöneticisi
Takımlar Neden Bu Kadar Popüler Oldu? Onlarca yıl önce W. L. Gore, Volvo ve General Foods gibi firmalar, üretim aşamalarına takımları da dâhil.
PERFORMANS BÜTÇE HAZIRLIK SÜRECİ
Sistem Geliştirme Sistemin tanımı. Sistemin Temel özellikleri
Support to Local Administration Reform 1 Yerel Yönetimler için Ulusal Eğitim Stratejisi.
KALİTE YÖNETİMİ (EĞİTİMDE).
İŞ PLANI İŞ PLANI NEDİR? İşin kurulacağı güne kadar hazırlanan kapsamın ortaya çıkarılması için bir çok aktivite sıralı ve önceden belirlenen niteliklerde.
AKDENİZ ÜNİVERSİTESİ TOPLAM KALİTE YÖNETİMİ ÜST DÜZEY YÖNETİCİ SEMİNERİ 1-2 MART 2003 ANTALYA.
ERK İSG&İK – –
H.Abdullah KAYA Daire Başkanı Ankara
OKUL GELİŞİMİ YÖNETİM EKİBİ (OGYE) TOPLANTISI
Kalite Kültürüne Dönüşüm Stratejileri
27 TEDAVİ PLANLARI.
TOPLAM KALİTE YÖNETİMİ NEDİR?
İNOVASYON.
İnsan Kaynakları Yönetiminin
KONULARIMIZ BEP Tanımı Amacı BEP nedir? \ ne değildir?
Bölüm 10 Takımlar.
T.C. SAĞLIK BAKANLIĞI ERZURUM NUMUNE HASTANESİ TOPLAM KALİTE YÖNETİMİ
Süreç Yönetimi.
ISO ÇEVRE YÖNETİM SİSTEMİ TEMEL EĞİTİMİ
İş Analizi ve İş Dizaynı
KALİTE YÖNETİM SİSTEMİ
YENİKENT AHMET ÇİÇEK TEKNİK VE ENDÜSTRİ MESLEK LİSESİ TOPLAM KALİTE YÖNETİMİ ÜST DÜZEY YÖNETİCİ SEMİNERİ 2010 ANKARA Nihat BÜLBÜL.
(Proje Yönetimi ve Danışmanlık Metodları)
Girişimcilik.
YENİ ORGANİZASYON YAKLAŞIMLARI
Proje Yönetim Döngüsü: -Aşamaları -Rol ve Sorumluluklar
BE P BİREYSELLEŞTİRİLMİŞ EĞİTİM PROGRAMI. BEP ; özel eğitim gereksinimi olan her birey için yazılı olarak geliştirilmiş ve özel eğitim gereksinimi olan.
YÖNETİM SÜRECİ VE ÖZELLİKLERİ
Topluluk İnovasyon Girişimi Süreç Açıklaması ve Yol Haritası Dokümanı 26 Mayıs
Toplam Kalite Yönetimi
Scrum Takımlarında Performans Ölçüm Yaklaşımı
TAKIMA DAYALI PERFORMANS DEĞERLENDİRME
TOPLAM KALİTE YÖNETİMİ
 Kalite en basit tanımıyla, müşteri isteklerine cevap verebilmektir.
 Bir projeyi yönetmek üzere görevlendirilen ve projeyi, mümkün olan en yüksek üretkenlik, en düşük belirsizlik ve risk ile yürütmekten sorumlu kişidir.
Bilgisayar Mühendisliğindeki Yeri
ÇEVİK (Agile) SÜREÇLER Değişen gereksinimler, teknik riskler gibi önceden belirlenemeyen durumlara ve yazılım ürününü etkileyebilecek her tür değişikliğe.
Kurumsal Kültür Yapılandırma Projesi
EKİP ÇALIŞMASI Ekip çalışmasının önemini gözeterek meslekler arası işbirliği yapabileceksiniz.
Yrd.Doç.Dr. Çağdaş Erkan AKYÜREK
Okul Yöneticilerinin Denetim ve Değerlendirme Rolü
TOPLAM KALİTE YÖNETİMİ
Performans ve Ücret Yönetimi Yrd. Doç. Dr. Özlem BALABAN
TKY UYGULAMASI.
3- Projenin Başlatılması
İNSAN KAYNAKLARI YÖNETİMİ
Öğretimin Planlanması
SATINALMA YÖNETİMİ ve TEKNİKLERİ Eğitimi
Matriks Organizasyon Yapısı
NİŞANTAŞI ÜNİVERSİTESİ
Süreç Yönetimi Smith iş bölümü kavramının üç yararından bahsetmektedir.
Sunum transkripti:

Scrum Yazılım Geliştirme Yönteminin Uygulamaya Alınmasının Organizasyonel Etkileri Osman Karaahmetoğlu 25.09.2013

Scrum Scrum çevik bir yazılım geliştirme yaklaşımıdır. Yazılım süreci doğrudan başlar, ihtiyaç yazılım sürecinde ayrıntılandırılır. Yazılımcı ile müşteri arasında yoğun bir iletişim vardır. Uygulama geliştirme, ideal olarak iki haftalık sprint’ lerde gerçeklenir. Scrum bir takım çalışmasıdır, takım üyelerinin bireysel başarılarından ziyade takımın başarısı önemlidir. Scrum takımları kendi kendine organize olur ve her sprint sonunda bir ürün geliştirmeyi amaçlar. Scrum yaklaşımında, ürün müşteri isteklerine göre çevik bir şekilde değiştirilebilir.

Çevik (Agile) Manifesto Süreç ve Araçlar İnsan İlişkileri ve İletişim Ayrıntılı Dokümantasyon Çalışan Uygulama Sözleşme Müşteri İletişimi Plana göre ilerleme Değişikleri Karşılayabilme www.agilemanifesto.org

Sprint Scrum yaklaşımında yazılım sprint olarak isimlendirilen döngüler süresince gerçekleştirilir. Bu döngülerin süresi çıkarılacak ürünün büyüklüğüne bağlı olarak değişir. Edinilen tecrübeler 2 veya 3 haftanın ideal olacağını göstermektedir.

Takım Scrum yaklaşımında az sayıda üyeden oluşan takımlar, çok sayıda üyeden oluşan takımlara göre daha verimlidir. Yapılan çalışmalar ideal takım üyesi sayısının en az 5, en fazla 9 olması gerektiğini göstermektedir. 10-12 kişiden fazla sayıda üyesi olan takımlarda bağlılık, güven ve takım kültürünü oluşturmak zor ve uzun zaman almaktadır. Scrum yaklaşımda üründen sorumlu olan ürün yöneticisi, takımı yönlendiren scrum yöneticisi ve takım üyeleri olmak üzere üç farklı yetenek seviyesinde takım üyesi gerekir.

Ürün Yöneticisi Müşteri ile ilişkileri sağlamakla görevlidir. Üretilecek ürünün gereksinimlerini ve iş kurallarını takıma sağlamakla yükümlüdür. İş önceliklerini belirler. Ürün kabulünü yapar ve yaygınlaştırma tarihlerini belirler. Yazılım süreci esnasında yazılım geliştiricinin gereksinimler ve iş kuralları ile ilgili takıldığı noktalarda sorunları çözebilecek düzeyde bilgiye, yetersiz kaldığı noktalarda ise müşteri tarafından gerekli bilgilerin edinilmesini sağlayacak koordinasyonu yapabilecek iletişim becerilerine sahip olması gerekir.

Scrum Yöneticisi Takımın lideridir. Takımın sözcüsüdür; müşteri, ürün yöneticisi ve üst yönetim ile iletişimi sağlar. Ürün geliştirme süreçlerinde, takımın ilerlemesini engelleyen sorunların çözümünü sağlar. Takım üyesi olarak, yazılım geliştirme süreçlerinde de görev alır.

Günlük Scrum Toplantısı Scrum Süreci Günlük Scrum Toplantısı Ürün Çıktısı Ürün Kataloğu Sprint Kataloğu 24 Saat 2-3 Hafta

Scrum Uygulama Geliştirme Süreci Ürün yöneticisi müşteri taleplerine göre ürün kataloglarını oluşturur. Takım sprint toplantısında ürün kataloğunda belirtilen önceliklere göre iş planlarını yapar ve sprint kataloğu oluşur. Takım üretime başlar. Sprint sonunda, yapılan çalışmalar ile ilgili değerlendirme toplantısı yapılır. Sprint retrospective toplantısında, takım sprint’teki iyi ve kötü yönlerini değerlendirir ve ilerisi için dersler çıkarır. Sprint kapatılır.

Ürün Kataloğu Ürün Kataloğu Gereksinimler Gereksinimin içeriğini anlatan kısa bir kullanıcı hikâyesi (user story) Öncelik Bilgisi (Planlama açısından önemli) Ürün Kataloğu

Örnek Ürün Kataloğu 1 3 5 2 ... … 8 4 Gereksinim Kullanıcı Hikayesi Öncelik Maliyet Tahmini Hasta Kabul İşlemi Hasta için dosya oluşturulur. 1 3 Visit Kaydı Hastanın dosya bilgilerine ulaşılır ve hastaneye gelişiyle ilgili kayıt oluşturulur. 15 gün süre ile hastanın işlemleri bu numara ile takip edilir. 5 Tetkik İsteği Hasta için muayene sonunda gerekli görülen tetkik istemleri yapılır. 2 ... … 8 4

Sprint Planlama Toplantısı Ürün yöneticisi takımdan beklenen gereksinimleri içeren ürün kataloğu sunumunu yapar. Takım iş planlarını yapar. Takım gereksinimlerin iş adımlarını belirler. İş adımlarının sürelerini oylama yoluyla belirler (Planning Poker). Kararlar oybirliği ile alınır. Takım öncelik ve kapasite parametrelerine göre sprint’te yapacağı işleri belirler (Sprint kataloğu). Takımın sprint’te yapacağı işlere göre burndown eğrisi oluşur. !!! Burndown eğrisi başarım ölçümü açısından önemlidir.

Sprint Burndown Eğrisi Saat

Sprint Kataloğu İş Adımı Paz Salı Çar Per Cuma 8 10 16 8 16 12 4 12 16 Kullanıcı Arayüzü Kodlama Hata Günlüğü Ekleme 8 10 16 8 16 12 4 12 16 8 4 11 8 8 Orta Katman Kodlama Orta Katman Testi Yardım Dosyası Yazılması Sınıf Yazılımı

İş Adımı Paz Salı Çar Per Cuma 50 40 30 Saat 20 10 Paz Salı Çar Per Kullanıcı Arayüzünün Kodlanması 8 4 12 16 8 10 16 7 11 8 Orta Katmanın Kodlanması 16 Orta Katmanın Testi 8 Yardım Dosyalarının Yazılması 12 50 40 30 Saat 20 10 Paz Salı Çar Per Cuma

Günlük Scrum Toplantısı Takım Scrum yöneticisi önderliğinde, Her sabah, Ayaküstü, Kısa süreli bir değerlendirme toplantısı yapar. Tüm takım üyeleri Dün ne yaptınız? Bugün ne yapacaksınız? Bir sorun var mı yok mu? sorularını cevaplar. Takımın ilerlemesini engelleyen sorunlar için aksaklık (impediment) tanımı yapılır.

Sprint Değerlendirme Takımın sprint’te yaptığı işlerin sunumu ve değerlendirmesi yapılır. Tüm takım katılmalıdır, takım üyesi olmayanlarda katılabilir.

Sprint Retrospective 15-30 dakikalık kısa bir toplantıdır. Takım kendi özeleştirisini tarafsız olarak yapar. Sprint’teki iyi yönler pekiştirmek üzere vurgulanır. Hataların nedenleri ve çözümleri üzerine derin analizler yapılır. Takım hatalarından ders alır. Takım elinde olmayan nedenlerden dolayı oluşan aksaklıkların bildirimini yapar.

Scrum Üstü Scrum (Scrum Of Scrums)

Takım Bazında Başarım Ölçümü Scrum yaklaşımında amaç, takımın ürettiği toplam fayda olduğu için başarım ölçümü de takım bazında yapılmalıdır. Sprint üretim hedeflerine ulaşılması ve sprint süresince takımın üretim faaliyetlerini geliştirmede izledikleri yöntemlerin etkinliği, takım üyelerinin birbirleriyle iletişimi, minimum iş tekrarı, takım çalışması sonucu oluşan sinerji ile üretimin katlanması, kendine güvenen ve kaliteli üretim yapan takım ortamının oluşturulması açısından, takım bazında başarım ölçülmelidir.

Başarı Kriteri Müşteri açısından; Sprint, vaat edilen ürün, belirlenen kalite kriterlerinde tamamlanmışsa başarılıdır. Organizasyon açısından işin içine farklı parametreler dahil olmaktadır. Takım sprint hedefine ulaşmış olabilir fakat sprint’te hedeflenen üretim takımın kapasitesinin altında olabilir veya üretim maliyeti kabul edilebilir sınırların üzerinde olmuş olabilir.

Başarı Faktörleri Sprint hızı, takımın sprint dahilinde bir günde ürettiği toplam adam/saat işi göstermektedir. Sprint hızındaki sapmalar takım için bir başarı faktörü olarak seçilebilir. Sprint süresince yapılan üretim sonucunda yapılan üretimin müşteri taleplerini karşılama oranı Müşterinin ürün üzerindeki yeni talepleri ve bu taleplerin alacağı adam/saat süreler temel alınarak hesaplanabilir. Ürünün kalitesi Üretimin kullanıcı kabul süreçlerinde ve gerçek ortama alınması sonucunda ürünle ilgili müşteri dönüşlerinin sayısı ve önem derecesine göre hesaplanabilir. Takımın şirket karlılığına etkisi Takımın sprint süreçlerindeki üretim faaliyetlerinin tamamı etkin olabilir fakat üretilen ürünün şirket gelirlerine etkisi düşük olabilir.

Takımların Belirlenmesi Scrum takım çalışmasını temel aldığına göre scrum yaklaşımını kullanan organizasyonların yapısı da takım kültürüne uygun olmalıdır. Takım üyeleri yapılacak iş konusunda birbirine yakın düzeyde bilgi ve beceriye sahip olmalıdır. Organizasyon bünyesindeki takımlar yerine getirilmesi gereken işlere göre kurulmalıdır. Takım üyelerinin bilgi ve beceri sahip olduğu işler takım sorumluluğuna verilerek iş bölümlenmesinin yapılması birbiriyle ilgisi olmayan işlerin aynı takım sorumluğunda toplanması sonucunu doğurabilir.

İletişim ve Etkin Kapasite Kullanımı Takım temelli organizasyon yapısı ve aynı alandaki uygulama geliştirme faaliyetlerinden sorumlu olunması, etkin kapasite kullanımı, iletişim ve uzmanlaşmayı sağlayacaktır. Müşteri, yönetim ve takımlar arasında yakın iletişim yatay organizasyon ile kurulabilir. Takımın orta kademe yönetici yerine bölüm müdürüne bağlı olması,hızlı kararlar alması ve uygulamasını, atak bir iş geliştirme ve yönetim stratejisi ile iletişimin üst düzeyde olmasını sağlayacaktır.

Ürün Yöneticisi Scrum yaklaşımında müşteri ile takım arasında doğrudan bir iletişimin olması başarı açısından kaçınılmazdır. Organizasyon şemasında ürün yöneticisinin üretici organizasyonda yer alması ve hatta takımın ürün yöneticisine bağlı olması takım ile müşteri arasındaki doğrudan iletişimi kesecektir. Scrum yöneticisinin hareket alanı daralmakla kalmayacak, ürün yöneticisinin müşteri üzerinde idari bir otoritesi olmadığı için takımın üretim için gerek duyduğu iş kurallarını elde edebilecek müşteri koordinasyonunda sıkıntılar oluşacaktır. Buna ek olarak scrum yöneticisi ve ürün yöneticisi görev tanımlarının net olarak yapılmaması iki rolün birbirleriyle çatışmasına ve takımın verimliliğinin düşmesine neden olacaktır.

Proje Yönetim Ofisi Çevik bir yaklaşım olan scrum yönteminde proje yöneticilerinin yerini çevik proje yöneticileri (agile project manager) alır. Birden fazla scrum grubunun faaliyetlerini kapsayan projelerin scrum üstü yapılarla koordine edilmesi gereklidir. Bu tip projeler için proje yönetim ofisleri faaliyetlerini sürdürebilirler. Scrum yaklaşımda sprint planları dışında belirsizlik vardır. Sprintler kısa sürelidir ve proje birçok sprintten oluşur. Belirsizlik nedeniyle portföy ve program yönetimi teknikleri uygulanamaktadır. Kaynaklara atanan iş maliyetleri yerine kalan iş maliyeti üzerinden takım bazlı yönetim yapılabilir fakat kalan iş maliyetleri de müşteri taleplerine göre değişkendir.

Rotasyon Takım oluşturmak, takım üyelerinin ortak bir hedefe yönelimini sağlamak, emek isteyen ve sabır gerektiren bir süreçtir. Takım üyelerini içine düştüğü ataletten kurtarmak, kurum içerisindeki diğer scrum takımlarında yapılan işlerden ve çalışma biçimlerimden haberdar olmasını sağlamak, kurum içi iletişimi artırmak ve scrum üstü bir takım oluşturmak amacıyla takımlar arası rotasyon uygulanabilir. Bu rotasyon gerektiğinde scrum yöneticileri için de yapılabilir.

Scrum Yöneticisi Scrum yöneticisi liderlik özelliği taşıyan takım üyelerinden seçilmelidir. Takım üyelerinin bilgi birikimi, beceri ve liderlik vasıflarına saygı duyduğu takım üyelerinin scrum yöneticisi olması takım içi çatışmaları en aza indirgeyecektir. Scrum yöneticiliği sprint’te yapılan işin niteliğine göre rotasyona tabi tutulabilir. Sprint toplantısı sürecinde takım üyeleri oylayarak scrum yöneticilerini seçebilirler. Bu durum takımın motivasyonu artırmakla birlikte kariyer açısından takım üyelerinin farkındalığını artırır.

Sonuç Scrum yönetimindeki bu kazanımları elde etmek için şirketlerin uygulama geliştirme birimleri, scrum yaklaşımına uygun olarak takımlarını belirlemeli, takım ve takımlar arası işbirliği, iletişim ve sinerjiyi üst düzeyde tutacak şekilde organize olmalı, şirket amaçlarını bireysel amaçlarından önde tutarak, ortak bir hedefe koşullanan takım kültürünün şirket geneline yayılması ve çalışanlarca benimsenmesi sağlanmalıdır Oluşabilecek sorunları önceden sezinleyen ve engellemek için gerekli önlemleri alan şeffaf bir yönetim anlayışının şirket genelinde seçilmesi gerekir.