Yazılım projelerinin geliştirilmesi sırasında geliştirme süreci konusunda bizlere çeşitli yazılım geliştirme süreçleri öğretmişlerdi.
Şelale (Waterfall) modeli üniversite yıllarında öğrendiğimiz metoddu. Daha sonra iş hayatıma atıldığımda iterative yöntemler konusunda iş arkadaşım Pete’in masasında bir kitap görmüştüm. Scrum ile tanışmam ise Serdar ile konuşmalarımız sonrasında ortaya çıktı. Scrum’ın da içerisinde bulunduğu Çevik metodların manisfestosu ise www.agilemanifesto.org adresinde yer almaktadır.
Hem manifesto, hem 12 prensibi hem de manifestonun altına kimler ne imza koymuş bakmadan geçmemenizi öneririm.
Manifesto for Agile Software Development
We are uncovering better ways of developing software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas
© 2001, the above authors this declaration may be freely copied in any form, but only in its entirety through this notice.
Internet üzerinde Türkçe olarak araştırdığımda http://www.acm-software.com/Makaleler/tabid/87/ctl/Details/mid/632/ItemID/20/Default.aspx adresinde hem manifetonun hem 12 prensibinin Türkçesini buldum. Biraz değiştirerek aşağıda paylaşmak istiyorum.
Manifesto derki;
Yazılım geliştirmenin daha iyi yollarını yazılımı geliştirerek ve diğerlerinin yazılım geliştirmesine yardımcı olarak ortaya çıkartıyoruz. Bu çalışmamız sırasında aşağıdaki değerlere ulaştık:
Bireyler ve aralarındaki etkileşimlerin, kullanılan araç ve süreçlerden;
Çalışan yazılımın, detaylı dokümantasyondan;
Müşteri ile işbirliğinin, sözleşmedeki kesin kurallardan;
Değişikliklere uyum sağlayabilmenin, mevcut planı takip etmekten;
Sağdaki konularda değer olmakla beraber; soldaki konulara daha fazla değer veriyoruz.
Çevik Yazılımın Prensipleri:
1- İlk öncelik, sürekli, kaliteli yazılım teslimatıyla müşteri memnuniyetini sağlamaktır.
2- Proje ne kadar ilerlemiş olursa olsun değişiklikler kabul edilir. Çevik yazılım süreçleri değişiklikleri müşteri avantajına dönüştürürler.
3- Mümkün olduğunca kısa zaman aralıklarıyla (2-6 hafta arası) çalışan, kaliteli yazılım teslimatı yapılır.
4- Analistler, uzmanlar, yazılımcılar, testçiler vs. tüm ekip elemanları bire bir iletişim halinde, birlikte çalışırlar.
5- İyi projeler motivasyonu yüksek bireyler etrafında kurulur. Ekip elemanlarına gerekli destek verilmeli, ihtiyaçları karşılanarak proje ile ilgili ekiplere tam güvenilmelidir.
6- Ekip içerisinde kaliteli bilgi akışı için yüz yüze iletişim önemlidir.
7- Çalışan yazılım, projenin ilk gelişim ölçütüdür.
8- Çevik süreçler mümkün olduğunca sabit hızlı, sürdürülebilir geliştirmeye önem verir.
9- Güçlü teknik alt yapı ve tasarım çevikliği arttırır.
10- Basitlik önemlidir.
11- En iyi mimariler, gereksinimler ve tasarımlar kendi kendini organize edebilen ekipler tarafından yaratılır.
12- Düzenli aralıklarla ekipler kendi yöntemlerini gözden geçirerek verimliliği arttırmak için gerekli iyileştirmeleri yaparlar.
Referans: www.agilemanifesto.org