24 Mart 2012 Cumartesi

McCabe Metriği


McCabe Metriği (Cyclomatic Complexity), bir yazılımdaki birbirinden lineer olarak bağımsız olan yolların sayısıdır. Bu şekilde ne kadar çok yol olursa o kadar çok hata riski vardır. Dolayısıyla lineer bağımsız yolların sayısını azaltmak hem yazılımın karmaşıklığını hem de hata riskini azaltır.

14 Mart 2012 Çarşamba

Satın Almada Önemli Noktalar


Günlük hayatımızda hemen her gün satın alma sürecinden geçeriz. Kimi zaman ekmek, kimi zaman ev, kimi zaman da başka bir kişisel ihtiyaç... Sadece bizler değil kurumlar da satın alma yaparlar. Hatta satın almayla ilgili her kurumun kendine özgü yaklaşımı vardır. Dahası bazı şirketlerde bu konuya özel büyük bölümler bile kurulmuştur. Satın alma süreçlerinde işinize yarayabilecek bazı ipuçlarını paylaşmak isterim:
  • Satın alacağınız ürünün özelliklerini öyle belirleyin ki hem net olarak ne istediğiniz belli olsun ve gelen teklifler karşılaştırılabilsin; hem de ürünü satan firmaların ihtiyaca yönelik daha iyi çözümlerine açık olsun ve daha akılcı çözümlerin size ulaşamadan elenmesinin önüne geçebilin. Örneğin “elma” satın almak istiyorsanız, bunu yazın ama size farklı tür elmaların sunulmasının önünü kapatmayın, belki de düşünmediğiniz kadar iyi bir elma teklif edilebilir J
  • Teklif verecek firmaların ne istediğinizi anlamasına izin verin.
  • En az 3 teklif alın ve kıyaslayın.
  •  Ağırlıklandırma ve eleme kriterleriniz net ve sayısal olsun ki duygusal seçimlerin önü kapansın.
  • Satın almayı ürünün sabit fiyatı (fixed price) ile yapmak akılcıdır, ancak bazen mümkün değildir. Böyle durumlarda hedef maliyet belirlemek ve hedefi aşan maliyeti, ürünü/hizmeti sağlayan firma ile paylaşmak da iyi bir çözüm olabilir.
  • Satın alma kontratını kapatmadan önce ürün/hizmet kabulü yapın ve bunun kriterlerini kontratın yapılması aşamasında belirleyin.

Herkese iyi satın almalar, keyifli projeler

10 Mart 2012 Cumartesi

Çok Odaklı Tasarım


Tüm yeni işlerde sektörü ne olursa olsun mutlaka tasarım yapılır. İster inşaat, ister otomotiv, ister IT, ister tarım, ister finans, mutlaka bir tasarım ile yola çıkılır. Bu kimi zaman yazılı çizili olur, kimi zaman bir kişinin kafasındadır, kimi zaman da bilgisayar dosyası olur. Tasarımı nasıl yaptığınıza elbette karışamayız J mutlaka herkesin kendine göre bir yolu yöntemi vardır. Bununla beraber tasarıma yaklaşımınıza yeni bir açı getirmek isterim.
Son zamanlarda duyulmaya başlayan, Çok Odaklı Tasarımdan (set-based design) bahsedeceğim bugün. Tasarımı bir ihtiyaca cevap olarak yaparız ve ihtiyacı karşılamaya odaklanırız. En iyi sonucu verecek tasarımı bulduktan sonra onun üzerinde ilerleriz, işte buna Nokta Odaklı Tasarım (point-based design) deniyor. Bu birçok durumda işe yaramış ve yaramaya devam edecek. Öte yandan çok hızlı değişen bir dünyada değişen ihtiyaçlarla birlikte yaşıyoruz. Bu hızlı değişim, karşılamak istediğimiz ihtiyacın biz tasarım ve üretim aşamalarındayken değişmesini olası kılıyor. Bu değişime ayak uydurabilmek için tasarımınızın mümkün olan en geniş yelpazeye cevap verebilir yapıda olması gerekiyor. Bir başka deyişle, sadece verilen ihtiyaca odaklanıp Nokta Odaklı Tasarım yaptığınız anda alternatif tasarımları da öldürmüş oluyorsunuz. Bu da aslında ileride oluşabilecek potansiyel ihtiyaçları karşılamakta güçlük çekme ve bazen yenibaştan tasarım yapma sonucunu doğuruyor. Burada püf nokta mümkün olan en geniş tasarım setini hazırlamak ve bu setin üretimde verilecek kararları mümkün olan en geç zamana kadar ertelenmesi ve alternatfilerin de yaşaması şeklinde özetlenebilir. Bu sayede silip yeniden yapmak yerine uyarlamak ve en az maliyetle işin altıdan kalkmak mümkün olabiliyor. Yaklaşım oldukça mantıklı, denemeye değer. Herkese keyifli tasarımlar, iyi projeler.