Yazılım Geliştirmede Agile Önemi Nedir?
Agile Geliştirme Nedir? Agile yani çevik metodoloji, size nispeten daha az baş ağrısıyla daha
hızlı ürün teslimatı vadeden bir proje yönetim ve yazılım geliştirme
yaklaşımıdır. Her şeyi planda toplayıp aynı anda önetmek yerine küçük ve
etkili bir metot önerir bize Agile. Kendileri tekrarlayıcı
ve artırımlıbir perspektiften bakan hıza ve ürünün kendisine odaklanmış faydalı bir
yaklaşımdır.
Agile Manifesto nedir? Agile yaklaşımı kendisini oluşturan bir çerçeveyle anlatılabilir.
Bu çerçeve Agile manifestosudur, peki nedir bu manifesto? Bu manifesto 4 temel değer
ve 12
prensip
ile şekillendirilmiştir.Süreç ve araçlardan ziyade bireyler ve
etkileşimKapsamlı dokümantasyondan ziyade çalışan bir yazılımSözleşmeye ve pazarlıklara odaklanmak yerine müşteri iş birliğiBir plana bağlı kalmak yerine talep edilen değişime karşılık vermekdaha kıymetlidir der Agile Manifesto bizlere Prensiplerden bazıları ise şunlardır:Markette hız, her an değişime açık olmak, sürekli ve demoyla müşteri etkileşimi, motivasyonu yüksek yüzyüze etkileşim ve dahası üzerine kurulmuştur. Yani kısacası Agile az zamanda en çok
verimi elde etme yaklaşımıdır, kelime anlamının çevik olmasından da bu
çıkarıma kolaylıkla ulaşılabilir diye düşünüyorum .
Yazılım Geliştirme Süreçleri Konuya paldır küldür giriş yapmamak adına öncelikle yazılım geliştirme nedir, bunun süreçleri nelerdir bunun döngüsü nasıl yorumlanır ve Agile metodolojisinin bu konudaki mevcudiyeti nedir sorularını incelemekte fayda olabilir.Öncelikle yazılım geliştirme döngüsü nedir sorusuna odaklanalım. En kısa zamanda ve en yüksek değerdeki yazılımı üretme uğraşıyla oluşturulmuştur. Hedeflenen bu uğraş için geliştirilen tüm aşamalara yazılım geliştirme döngüsü adı verilir İçerisinde tanımlanmış 6 alt başlıktan oluşur; Planlama/Analiz, Dizayn, Kodlama, Test, Uygulama/Integrasyon ve Bakım.
Yazılım Geliştirme Süreçleri Konuya paldır küldür giriş yapmamak adına öncelikle yazılım geliştirme nedir, bunun süreçleri nelerdir bunun döngüsü nasıl yorumlanır ve Agile metodolojisinin bu konudaki mevcudiyeti nedir sorularını incelemekte fayda olabilir.Öncelikle yazılım geliştirme döngüsü nedir sorusuna odaklanalım. En kısa zamanda ve en yüksek değerdeki yazılımı üretme uğraşıyla oluşturulmuştur. Hedeflenen bu uğraş için geliştirilen tüm aşamalara yazılım geliştirme döngüsü adı verilir İçerisinde tanımlanmış 6 alt başlıktan oluşur; Planlama/Analiz, Dizayn, Kodlama, Test, Uygulama/Integrasyon ve Bakım.
Planlama
Kısaca Planlama ve Analiz evresinde işin gerektirdikleri
ve odak noktaları üzerine pozisyon alınır. Bu fazın odağında proje
yöneticileri ve işin ilgilileri rol oynamaktadır. Potansiyel
User/Kullanıcı kimdir, nasıl kullanacaklar, hangi veriler girdi
olarak verilmeli sonucunda nasıl çıktılar olmalıdır ve benzeri
sorulara cevaplar aranır. Sonucunda Requirement Specification
dokümanı elde edilir ve bu projenin ileriki fazları için bir
yönerge olmaktadır.
Dizayn
Kısaca talep edilen gereklilikler üzerinden sistem
gereklilikleri dizayn edilir. Bize yazılım ve donanım
konusunda sistem mimarisi planlanmasında yardımcı olur.
Kodlama
Yorum Gönder (0)
gerekli implementasyonun yapıldığı ana fazdır.
Ardından geliştirilen kodlama Test fazında test edilir.Bu aşamada gerekli
fonksiyonel testler, sistem testleri, integrasyon
testleri ve onay testi yapılır.Gerekli test aşamalarını geçen proje kodlarımız
sistemimize Uygulama fazında deploy edilir. Talep edilen sistemimiz
böylece geliştirilmiş olur, temelde geriye kalan
yalnızca bakım dır o da problem bazlı ya da talep bazlı
ilerlemektedir.
Agile in Yazılım Geliştirme Döngüsündeki Yeri
Agile metodolojisi, yazılım/uygulama
geliştirmek için süreci, işi hızlı bir şekilde
bitirip müşterinin isteklerini tam anlamıyla
karşımaya yönelik belirlemektedir. Bu bağlamda
standart yazılım geliştirme döngüsüyle
arasındaki farklılıklara bu şekilde
değinilebilir:
Kullanım farklılıkları normal döngü verimli ve kaliteli ürün
için iyi dokümente edilmiş şekilde kendi
çerçevesinden sapmadan ilerlerken Agile arttırımlı
yaklaşımla kaliteyi yakalamayı
hedeflemektedir. Fazlar normal döngüde nettir, geliştirme farklı
fazlar üzerinden belli bir döngüde
yönetilirken Agile talep üzerine farklılık
gösterebilir esnektir, böylece modellenebilir.Normal geliştirme döngüsünde ürün her
türlü platformu desteklerken Agile yalnızca arttırımlı
geliştirmeyi sağlayabilecek şekilde
parçalandırılmış platformlarda
desteklenebilir.Üstteki farklılıklardan ziyade Agile
metodolojisini sahip olduğu yere getiren
farklılıklardan bahsedelim;
Agile hıza ve ürün geliştirmeye odaklı
değişim bazlı bir metodoloji olduğu için
yalnızca daha düşük
kapsamlı
projelerde/küçük uygulamalarda kayda değer
verimde uygulanabilmektedir. Tabiki iyi
dokümente etmeden, sağlam görev dağılımı
ve bölüm koordinasyonu ayarlamadan
yalnızca ürün geliştirme odaklı yaklaşım
için bunu tahmin etmek çok da zor
olmamalı.Startup'lar ve düşük kapsamlı
projeler için biçilmiş kaftan olması
gerçeğini değiştirmese de her türlü
projeye entegre edilebilir. Agile kritik
ve son dakika değişimleri de dahil her türlü değişim için açık
dinamik bir yaklaşımdır bu bağlamda çok
büyük avantaj sağlaması da muhtemeldir.
Değişimin ihtiyaç olduğu tüm projelerde
uygun ve verimlidir. Agile realist
ve esnek yaklaşımda temellendirilir ve yönetimi
kapsamının daha kısıtlı olmasından dolayı
çok daha kolay yönetilebilir.
Diğer uygulamalarla paylaşın
Copy Post Link