Scrum Ne Değildir?

Scrum’ın ne olduğu konusunda az çok herkesin bilgisi var. Yazılım geliştirme süreçlerinin iyileştirildiği, güzelleştirildiği, geliştiriciyi daha ön plana koyan bir yöntem olarak biliyoruz. Peki Scrum ne değil?

1- Scrum, “Süper Kahraman” Değildir

Scrum bir süper kahraman değildir. Uçarak gelip süper güçleri ile var olan yönteminizi anında iyileştirmeyecektir. Dönüşüm, takım büyüklüğüne, var olan süreç yönetiminin kullanımına ve değişime olan dirence bağlı olarak günler, haftalar veya aylar alabilir. Scrum dönüşümü için bir Scrum Master geldi ise, aynı süperkahraman yaklaşımını ondan da beklemek yanlıştır. Genelde “Köle Kral” olarak adlandırılır bu kişiler zaten ve ekibin içinde onlarla beraber aynı eziyeti çekenlerden biri olur. Dönüşüm takım işidir, tek bir kişinin bu dönüşümü yapması imkansızdır.

Aynı zamanda, Scrum metolojilerini uygulamak, planından sapmış ve teslimata yaklaşmış projelerinizi garantili olarak rayına sokmaz. Scrum’ın amacı, son dakika kahramanı olmak değildir. Doğru, bazı projeleri son dakikada ipten alan Scrum hikayeleri mevcut, fakat bu her zaman olacak diye bir kaide yok. Asıl olay, Scrum yöntemlerini işin başından itibaren uygulamak ve son dakika sürprizlerinden olabildiğince uzak kalmakta.

2- Scrum, CMM-killer Değildir

Geleneksel süreç yönetimi kullanan geliştiriciler, Scrum’ı (ve diğer Agile yöntemleri),  bir CMM anti-tezi olarak görüp, mümkün olduğu kadar uzak dururlar. Hatta, bazı durumlarda saldırgan tavırlar da aldıklarını görüyoruz. Mesela, aldığım yüksek lisans dersinde, bir CMM fanatiği olan hocamız, sunumunu yaptığım Agile yöntemler araştırmasını ilgisizce izlemiş, sunum sonunda da neden CMM ile ilgili bir konu seçmediğimi, Agile yöntemlerin gereksiz olduğunu falan söylemişti. Madalyonun diğer tarafından da bakarsak, Scrum fanatikleri, bu yöntemi ağır CMM (ve diğer waterfall tabanlı süreçler) yöntemlerinden kurtuluş için bir fırsat olarak görür ve zamanında başarılı bir şekilde kullanmış olsalar bile, hiç bir CMM yöntemini uygulamazlar.

Halbuki, iş öyle değil aslında. Ne Scrum’ın amacı CMM’i yok etmektir, ne de bunu yapabilecek bir kapasitesi vardır. Dünya üzerinde bir çok CMM-3 süreç yönetimi ile Scrum tekniklerinin birleştirildiği ve başarıyla uygulandığı örnekler mevcut. Hatta, CMM-5 seviyesi ile birlikte bile kullanıldığını görmüştüm. Yani, önemli olan, başarısı kanıtlanmış olan yöntemlerin, takım için uygun olan yönlerini alarak uygulayabilmekte.

3- Scrum, Anarşi Değildir

Scrum

“Dökümantasyon yok, geniş çaplı plan yok, hatta proje yöneticisi bile yok”. Ee, ne var o zaman diye sorabilirsiniz. Scrum yöntemleri içinde evet, bu yazdıklarımız, bu şekilde olmasa bile yok. Çünkü Scrum ile amaç 2 yıllık bir plan hazırlayıp sakallı proje yöneticilerinin insiyatifinde, tek sayfası bile açılmayacak dökümantasyonlar yazmak değildir. Bu, genelde askeri hiyerarşi düzeninde yönetilen projelerden alınan bir yorum aslında, “yöneten birisi olmayınca burada anarşi olur” şeklinde. İnsiyatifi proje yöneticisine değil takıma bırakmak, bir otorite boşluğu doğuracak gibi görünür, ama aslında durum tam tersi. Geleneksel otoriter yöntemde, proje yöneticisi “emir” verir ve takım üyesi “uygular”. Takım üyesi, böyle bir durumda yaptığı işi sahiplenmez, sorumluluk almaktan, insiyatiften kaçınır ve bütün yükü proje yöneticisinin üzerine atar. Böyle projelerin bitişiyle ile birlikte de takımlar büyük ölçüde dağılır. Scrum ile, takım üyelerinin hepsi projenin sorumluluğunu alır, yapılacak olana birlikte karar verirler ve en önemlisi, yapılan işi sahiplenirler.

Scrum iyidir..

Samsung Galaxy S2 için Jelly Bean Güncellemesi mi Geliyor?

Ameleler,

Android Jelly Bean

Android Jelly Bean

Samsung Galaxy S2 kullanıcıları olarak, Ağustos ayından beri Samsung tarafından dolaylı/dolaysız yapılan açıklamaları takip ediyoruz. Yapılan açıklamalarda 2012 yılının son çeyreğinde (gavurların Q4 dediği) Galaxy S2 için Anrdoid Jelly Bean (4.1) güncellemesinin geleceği duyurulmuştu. Bazı kaynaklarda da bu güncellemenin Kasım ayı sonunda çıkacağı yazıyordu. Test için kullanılan 4.1.2 ROM’unun ortamlara düşmesi ile bu sürümün gerçekten çıkacağını bir nevi öğrenmiş olduk. Fakat, 2012 bitmesine rağmen hala bir güncelleme gelmedi.

Son haberlere göre Galaxy S2 için Jelly Bean 4.1 güncellemesi Ocak 2013 sonuna doğru gönderilecek. Büyük ihtimalde, önümüzdeki günlerde, güncellemelerin deneme tahtası Polonya için 4.1.2 güncellemesi gelecektir. Türkiye için Ocak sonunu beklemek gerekecek muhtemelen.

Kaynak: http://www.youmobile.org/blogs/entry/Samsung-GALAXY-S2-and-GALAXY-Note-Jelly-Bean-4-1-2-updates-coming-on-January-2013

Ankara JUG – Aralık 2012 Buluşması Ardından

Ameleler,

Geçen ay ilki düzenlenen Ankara JUG (Java Users Group) buluşmasının ardından, geçen Perşembe günü ikinci buluşma gerçekleşti. Bu buluşmaya da katılarak öncelikle kendi adıma bir başarıya imza attım – bir işin devamını getirebildim 🙂

Ankara JUG

Ankara Java Users Group

Bu ayki konu, Agile (Çevik) Yöntemler ve bu yöntemlerden son zamanlarda en popüler olanı Scrum idi. scrumturkey.com kurucusu Barış Bal’ın yaptığı sunumda Scrum nedir, nasıl uygulanmalıdır sorularına cevaplar bulduk. Katılımcıların Scrum’a olan ilgisi açıkçası beni şaşırttı, çünkü Türkiye koşullarında Scrum gibi geleneksel olmayan bir yöntemin uygulanmasını geçtim bilinip konuşulması bile yargılanıyor. Yüksek lisans yaptığım zamanlarda, geleneksel yöntemin ateşli savunucusu hocama karşı Agile yöntemleri savunurken ne kadar zorlandığımı hatırlıyorum. Aynı durum yazılım sektörünün büyük oyuncuları için de geçerli, sanırım 2 seneden az süreli plan yapıldığı zaman yapılan iş küçük görülüyor. Aldığım proje yönetimi eğitiminde de, dışarıdan hizmet alınan proje yöntecilerinin tavırlarında da aynı havayı sezdim sürekli.

Geleneksel yöntemler bir yere kadar iyi sonuç verdi, fakat bu 1980’lere kadardı! O yıllardan beri yazılım mühendisleri, süreçleri iyileştirmek adına Scrum adı verilen bu yeni yöntemi geliştiriyor ve iyileştiriyorlar. Ankara JUG sayesinde de bu yöntemi belki de ilk kez tanıyan insanlar oldu. Katılımcılardaki heves, belki de Ankara’dan başlayarak yazılım süreçlerinde bir “Scrum Baharı” yaşatabilir.

Etkinlik ile ilgili Ankara JUG blog yazıları:

http://ankarajug.blogspot.com/2012/12/ankara-jug-aralk-ay-etkinligi.html

http://ankarajug.blogspot.com/2012/12/aralk-etkinligi-geri-bildirim-kapmz.html

 

Ankara JUG Kasım 2012 Etkinliği Ardından

Ameleler,

Birkaç iyi niyetli Java programcısının girişimiyle kurulan Ankara Java Users Group (Ankara JUG), ilk açık etkinliğini 22 Kasım Perşembe günü Bilkent Cyberpark’ta gerçekleştirdi. Gidelim, görelim dedik ve katıldık.

Ankara JUG

Ankara Java Users Group

İlk başta, kısa bir Ankara JUG tanıtımı gerçekleşti. Türkiye için de bir ilk olan Ankara JUG, henüz Oracle tarafından resmi olarak tanınmasa da, bu konuda girişimlerin başladığını öğrendik. Yazılım sektörünün bu kadar geniş olduğu, Java kullanan geliştirici sayısının bu kadar fazla olduğu Ankara’da böyle bir girişimin olması hem sektör açısından hem de bu işle uğraşanların kariyer gelişimleri açısından çok faydalı olacaktır. Özellikle etkinliklerin her ay düzenli bir şekilde yapılması, sektörün bu girişime daha çok destek vermesi ile güçlü bir topluluk oluşacaktır.

Ankara JUG tanıtımından sonra, gecenin sponsoru Prime Teknoloji’nin meşhur ürünü PrimeFaces tanıtımını dinledik. Açıkçası, daha önce PrimeFaces’i internette bulmuş ve denemeye çalışmıştım, fakat arkasında bu kadar büyük bir topluluk olduğunu, dünya çapında bu kadar çok seveni olduğunu bilmiyordum. Türkiye’den Açık Kaynaklı bir ürünün çıkarak dünya çapında başarı sağlaması çok hoşuma gitti. Tanıtımı dinlerken, bir yandan da aklımdaki fikirleri PrimeFaces ile yapabilir miyim diye düşünmeye başladım 🙂

Etkinliğin sonunda T2 Yazılım’ın dağıttığı Scrum Poker kartlarından aldık. Keşke birkaç deste daha alsaymışım diye hayıflandım daha sonradan ama başlangıç için iyi bahane oldu. Yakın bir zamanda, proje planlaması yaparken bu kartları kullanarak ilk denememizi yapacağız.

Şimdilik bu kadar. Aşağıda etkinlik ile ilgili bağlantıları bulabilirsiniz.

https://www.facebook.com/media/set/?set=a.532468203447830.132601.524483007579683&type=3

http://ankarajug.blogspot.com/2012/11/ankara-jug-kasm-2012-etkinligi_23.html

http://ankarajug.blogspot.com/2012/11/geribildirim-kapmz.html

Windows’da Ağ Paylaşım Şifrelerinin Unutturulması

Ameleler,

terminalWindows ortamında, başka bir bilgisayardaki paylaşılmış bir dizine bağlanırken şifre kullandığımız olmuştur. Bazı durumlarda da, paylaşımdaki bir dizini “Ağ Sürücüsü” şeklinde bilgisayarımıza bağlayıp, yerel diskmiş gibi kullanmışızdır. Bazı durumlarda aynı bilgisayar üzerindeki farklı paylaşımlara bağlanmamız da gerekmiştir. Mesela, ortak kullanılan bir sunucu üzerinde Samba ile paylaşıma açılmış değişik dizinler olabilir (\\samba-server\music, \\samba-server\videos gibi). Bu paylaşımlar için de farklı kullanıcı bilgileri kullanmamız gerekebilir. Böyle bir durumda, mesela \\samba-server\music paylaşımına bağlandıktan sonra, \\samba-server\videos paylaşımına bağlanırken, kullanıcı adını girmemize rağmen paylaşım alanına bağlanamayabiliriz. Bunun sebebini bilmiyorum, ama çözümünü biliyorum.

Paylaşım erişimleri için kullandığımız şifrelerin hepsini unutmak için:

$> net use * /delete /yes

Bir sunucuya bağlanırken kullandığımız şifreleri unutmak için:

$> net use \\<samba-server> /delete /yes

Bir sunucu üzerindeki belirli bir paylaşım için kullandığımız şifreleri unutmak için:

$> net use \\<samba-server>\share /delete /yes

İşinize yarar umarım.

Kaynak:

http://r3dux.org/2009/07/how-to-force-windows-to-forget-a-network-share-password/

Samsung Galaxy S2 – Exchange Hizmetleri ve Pil Sorunu

Ameleler,

Daha önceki yazımda, Samsung Galaxy S2 için, ICS güncellemesinden sonra pil sorununu nasıl aştığımı anlatmıştım. O zaman bulduğum sorun, büyük ihtimalle güncelleme sırasında eski uygulamaların yeni işletim sistemine tam uymamasından kaynaklanıyordu. Bir süre o çözüm idare etse de, pil sorunu bir süre sonra yeniden ortaya çıktı. Özellikle gün içinde 3G bağlantısını açık bıraktığım zaman, akşam olmadan yeniden şarj etmeye ihtiyaç duyuyordum. Daha sonra, Android 4.0 ile gelen detaylı pil tüketimi ekranında, ekran ve Android sisteminden sonra en fazla gücü Exchange Hizmetleri’nin tükettiğini farkettim. Aslında ilk başta bu hizmetin çok fazla pil tüketmeyeceğini, sadece e-postalarımı kontrol ederken fazla zorlandığını düşündüm. Bir süre, e-postalarıma telefondan bakmadım, e-posta alma sıklığını da tamamen elle yapılacak (manuel) şekilde ayarladım. Fakat, Exchange Hizmetleri’nin güç harcama oranı değişmedi. Harcanan enerjinin %30-%35’lik kısmını bu hizmet yine tüketmeye devam etti. İnternette biraz araştırınca bu sorunun güncellemeden sonra yedeklenen e-posta ayarlarının geri yüklenmesinden, güncelleme sırasında e-posta ayarlarının aynen devam etmesinden vs. kaynaklandığını gördüm. Exchange üzerinden kullandığım e-posta hesabımı telefondan kaldırdım. Biraz da zorlamak için gün içinde cep telefonumdan internet kullanımımı arttırdım. 14 saat içinde pil sadece %40 azaldı. Aynı kullanım ile daha önce pil %70 azalıyordu.

İnternette bulduğum bazı yorumlarda Exchange hesabını kaldırıp yeniden kurunca da pil tüketiminin çok fazla artmadığını yazmışlar. Onu henüz denemedim, birkaç gün içinde deneyebilirsem onu da yazarım.

Denemesi bedava.

Windows’ta Sembolik Link Oluşturma

Sembolik Link

Linux, Unix ve türevleri ile ilgilenenler bilirler, bir dizini ya da dosyayı başka bir yerdeymiş gibi göstermek için kullanabildiğimiz “sembolik link” gibi güzide bir özelliği var. Bu özellik sayesinde kurduğumuz kütüphaneleri ortak bir yerde bırakıp uygulamalarımızın kullanmasını, ev dizinimizde hazırladığımız sayfaların web sunucusu üzerinde görüntülenmesini vb. sağlayabiliyoruz. Hazırladığımız uygulamalar bu sayede bir dosya/dizinin her zaman belirttiğimiz yerde olduğundan emin olarak çalışabiliyor. Tabi, bu durum Windows ortamında uygulama geliştirip bu uygulamayı Linux ortamda çalıştıran geliştiriciler için biraz sıkıntı olabiliyor. Çünkü, ilk bakışta Windows üzerinde böyle bir özellik bulunamıyor – tabi iyi aranmaz ise.

NTFS dosya sisteminin içinde, sembolik link özelliği mevcut. Çoğu kimsenin bilmediği bu özellik, “mklink” komutu ile kullanılıyor. Bir dosyaya hızlı bir şekilde sembolik link oluşturmak için şu komutu kullanabilirsiniz:

$>mklink <link_adı> <hedef_dosya>

Bu komutta, hiç parametre belirtmezseniz, bulunduğunuz dizin içinde <link_adı> ile belirttiğiniz ad ile, <hedef_dosya> ile belirtilen dosyayı gösteren bir link oluşturulacaktır. Bu linki bir dizine vermek için ise /d parametresini kullanmak gerekir:

$>mklink /d <link_adi> <hedef_dizin>

Şimdi, örnek olarak C:\amele dizini altında D:\yazilim dizinine ve bu dizin altındaki yzlm.txt dosyasına link oluşturalım.

$>mklink /d yaz D:\yazilim
$>mklink yzlm D:\yazilim\yzlm.txt

Bu komutlardan sonra, bulunduğumuz dizinde dir komutunu çalıştırırsak, aşağıdaki çıktıyı elde ederiz:

C:\amele>dir
Directory of C:\amele
01.01.1970 00:00 <DIR> .
01.01.1970 00:00 <DIR> ..
01.01.1970 00:00 <SYMLINKD> yaz [D:\yazilim]
01.01.1970 00:00 <SYMLINK> yzlm [D:\yazilim\yzlm.txt]

Gördüğünüz gibi, bu oluşturduğumuz linkler dosya veya dizin olarak değil, SYMLINK ve SYMLINKD olarak görünüyorlar. Silmek için normal dosya ve dizin silme komutlarını (del, rmdir) kullanabilirsiniz.

Unutmayın, buradaki komutların, benim gördüğüm kadarı ile Windows Explorer arayüzünde bir karşılığı yok, o yüzden komut satırından yapma mecburiyetindeyiz.

İyi linklemeler.

Kaynaklar:
[1] http://en.wikipedia.org/wiki/NTFS_symbolic_link
[2] http://technet.microsoft.com/en-us/library/cc753194(WS.10).aspx