Çevik Yazılım Geliştirme ve Çevik Manifestosu

1
1809

Hepimiz içinde bulunduğumuz projelerde, çeşitli sorunlarla karşılaşabiliyoruz. Bu sorunları maddeler halinde ifade edecek olursak;

  • Teknolojinin çok hızlı gelişmesi ve bu yeniliklerin projeye uygulanamaması,
  • Müşterilerin, proje başlangıcında, büyük resmin tamamını, yani projeye ait bütün gereksinimleri ortaya koyamamaları,
  • Müşteri gereksinimlerinin çok çabuk ve sık değişmesinden dolayı, müşterilerin güncel ihtiyaçlarına cevap veremeyen bir yazılım ortaya çıkması,

olarak özetleyebiliriz. Bu sorunlar; birçok projenin başarısız olmasına neden olmuş, kaliteli ürün/servis/hizmet sağlama ihtiyacı ve artan rekabetle birlikte kurumların, sürekli değişen müşteri gereksinimlerine yanıt verebilme yeteneklerini arttırması gerekliliği doğmuştur.

Çevik Yazılım Geliştirme, geleneksel proje yönetimi ve yazılım geliştirme metodolojilerinin darboğazlarını ortadan kaldıracak bir yaklaşım olarak, bu sorunların çözümüne ışık tutmaktadır.

Peki, Çevik nedir?

Bu soruyu sorduğunuzda, büyük ihtimalle çok sayıda farklı cevap alırsınız. Çünkü Çevik için evrensel olarak kabul görmüş resmi bir tanım yoktur. Çevik kavramı; 2001 yılında, 17 yazılım gurusu, Snowbird – Utah’da bir araya gelerek Çevik Yazılım Geliştirme Bildirgesi’ni yazdığında resmileşmiştir.

Bu bildirge, nasıl daha iyi bir yazılım geliştirdiklerini ve bunu yapmak isteyenlere yol gösterecek 4 maddeden oluşmaktadır.

Çevik Manifestosu

1) Süreçler ve araçlar üzerinde bireyler ve etkileşimler
Çevikliğin, birinci önceliği müşteriye ürünü hızlı ve sürekli kullanılabilir bir şekilde teslim etmektir. Katı bir kural benimsenmediği için, geliştirmenin her aşamasında, değişikliğe açık bir yapısı vardır. Bu nedenle iş teslimi parçalara bölünür, ürün birbirinden bağımsız parçalar olarak geliştirilir, bu geliştirme belirli periyotlarda yapılır. Bu yüzden, işin aynı süreçlerde ürüne dönüşmesi sağlanmalı ve yine bu anlamda sürdürülebilir geliştirmeye açık olmalıdır.
2) Kapsamlı belgeler üzerinde çalışma yazılımı
Test edilebilen, yani her özelliği göz önünde olan ve kolay anlaşılabilen/kullanılan bir yazılım, tüm detayları belgeler içerisinde saklanmış ve bu belgelere daha fazla önem verilmiş bir yazılımdan daha önemlidir.
3) Sözleşme müzakeresi için müşteri işbirliği
Müşterinin isteklerini iyi anlamak… Bununla beraber, sözleşmedeki kurallara bağlı kalmadan, gerekli yerleri işbirliği ile müşteriye “Burasını şöyle yaparsak daha iyi olur” veya “Yazılımınızın daha hızlı olması için şöyle bir yöntem kullanalım” demek, her zaman daha iyi ve başarılı sonuçlar almamızı sağlamaktadır.
4) Bir planı izleyerek değişime tepki verme
Yazılımda aksaklıklar veya değişmesi gereken yerler çıkabilir. Başından sonuna kadar olan belirli, sabit bir planda bu sorunları yönetmek çok daha zordur. Fakat Çevik metodolojide değişikliklere uyum sağlamak, gerçekleştirilen aşamalarda çok daha kolay ve iyi bir şekilde halledilebilmektedir. Bildirgeyi tamamlamak için grup, çevik yazılım geliştirmeyi daha kapsamlı bir şekilde tanımlayan 12 ilke yazmıştır.

Bu ilkelerle, kendini örgütleyebilen, çok fonksiyonlu takımlar oluşturabilmeyi, takımların çevik davranabilmesini, projeleri parçalar haline teslim edebilmeyi, projelerin çıkış hızını ve kalitesini artırabilmeyi, proje ekibinin ve paydaşların değişime olan uyumlarını artırabilmeyi, sürekli öğrenen ve değişime açık bir kültürün oluşması ve gelişmesi hedeflenmiştir.

Bakıldığında ilkeler, genel ve belirsizdirler, işlerin biraz daha somutlaştığı yer çevik yöntemlerdir. Çevik yöntemler içerisinde en çok kullanılan çerçeveler; Scrum, Kanban, Lean, Extreme Programming (XP), Test-Driven Development, Feature-Driven Development (FDD), Dynamic Systems Development Method (DSDM). Çevik yöntemlerin her biri çevik’in farklı yönlerini vurgular. Asıl önemli olan, hedeflerinize en uygun yöntemi seçmektir.

Dünyada ve ülkemizde birçok şirket Çevik yöntemleri kullanarak değişime ayak uydurmaya başladı. Daha hızlı, daha yeni, daha kolay olan bu çerçeveler işinize gerçekten yarayacak. Henüz başlamadıysanız, şirketinizin Çevik dönüşümü için adım atmanın tam zamanı.

PAYLAŞ
YTÜ Üniversitesi Matematik Mühendisliği ve Endüstri Mühendisliği bölümleri mezunu. IT sektöründe "Proje Yöneticisi" olarak çalışmalarına devam etmektedir.

1 YORUM

  1. Güzel paylaşım. Emeğinize sağlık
    Bizim memlekettekiler buna geçene kadar yeni bir şeyler icat olunacağı kesin gibi. :)))

Comments are closed.