Yazılım Proje Yönetimi
Yazılım proje yönetimi, doğru ürünün kabul edilebilir maliyet, zaman çizelgesi ve kalite içinde teslim edilmesini sağlamak amacıyla yazılım projelerine planlama, organize etme, tahmin etme ve kontrol tekniklerinin uygulanmasıdır.
Tanım
Yazılım proje yönetimi, bir yazılım projesinin kapsam, zaman çizelgesi, maliyet ve kalite hedeflerini karşılamak üzere insanları, süreçleri ve kaynakları planlama, izleme ve kontrol etme disiplinidir.
Kapsam
Bu alan, efor ve maliyet tahmini; zaman çizelgeleme ve planlama; risk yönetimi; ekip organizasyonu ve yazılım çalışmalarının insan faktörleri; konfigürasyon ve değişiklik yönetimi; yazılım kalite yönetimi; ilerlemeyi takip etmek için ölçüm ve metrikler; ve yazılım yönetimini diğer mühendislik projelerinden ayıran kendine özgü ekonomik ve koordinasyon zorluklarını kapsamaktadır.
Alt konular
Temel sorular
- Yazılım eforu, maliyeti ve zaman çizelgesi belirsizlik altında nasıl tahmin edilmektedir?
- Bir proje boyunca riskler nasıl belirlenmekte, önceliklendirilmekte ve hafifletilmektedir?
- Ekip yapısı ve iletişim üretkenliği nasıl etkilemektedir?
- Proje boyunca değişiklikler ve kalite nasıl kontrol edilmektedir?
Temel kuramlar
- Brooks Yasası ve Ekip Ekonomisi
- Brooks, geç kalan bir yazılım projesine insan eklemenin projeyi daha da geciktirdiğini gözlemlemiştir, çünkü iletişim ve işe alıştırma maliyetleri eklenen kapasiteden daha hızlı artar; bu durum, yazılım eforunun basitçe bölünebilir olmadığını vurgulamaktadır.
- Algoritmik Maliyet Tahmini
- COCOMO gibi modeller, efor ve zaman çizelgesini boyut ve proje faktörlerinin fonksiyonları olarak tahmin ederek, uzman yargısını ve analojiye dayalı yaklaşımları tamamlayan tekrarlanabilir, kalibre edilebilir tahminler sunmaktadır.
Klinik önem
Sağlam proje yönetimi, yazılımın zamanında, bütçe dahilinde ve yeterli kalitede teslim edilip edilmediğini belirler; kötü tahminler, yönetilmeyen riskler ve ekiplerin doğrusal olmayan ekonomisinin göz ardı edilmesi, yazılım projelerinin başarısızlığının ve bütçe/zaman aşımının önde gelen nedenlerindendir.
Kanıt ve kılavuzlar
SWEBOK Yazılım Mühendisliği Yönetimi bilgi alanı ve PMBOK Kılavuzu, uzlaşmaya dayalı çerçeveler sunmakta olup, ISO/IEC/IEEE 16326 gibi standartlar yazılım için proje yönetimi planlamasını ele almaktadır.
Tarihçe
Brooks, 1960'lı yılların büyük projelerinden elde edilen zorlu dersleri 1975'te kalıcı yönetim ilkelerine dönüştürmüştür; Boehm, 1981'de yazılım ekonomisini ve maliyet tahminini resmileştirmiştir; o zamandan beri bu alan risk yönetimi, metrikler ve çevik yöntemlerin daha hafif, uyarlanabilir planlamasını bünyesine katmıştır.
Tartışmalar
- Öngörücüye Karşı Uyarlanabilir Proje Yönetimi
- Yazılım projelerinin detaylı ön planlarla mı yoksa uyarlanabilir, yinelemeye dayalı kontrolle mi en iyi şekilde yönetildiği tartışılmaktadır; çevik yaklaşımlar ampirik kontrolü ve sık yeniden planlamayı tercih ederken, geleneksel yönetim temel alınmış planları vurgular ve hibrit yaklaşımlar yaygındır.
Öne çıkan isimler
- Frederick Brooks
- Barry Boehm
- Tom DeMarco
- Watts Humphrey
İlgili konular
Temel eserler
- brooks1995
- boehm1981
- swebok2014
Sıkça sorulan sorular
- Geç kalan bir projeye insan eklemek neden projeyi daha da geciktirir?
- Yeni insanların hızlandırılması gerekmekte ve iletişim yollarının sayısı ekip büyüklüğünün karesiyle yaklaşık olarak artmaktadır; bunun sonucunda ortaya çıkan ek yük ve aksaklık, başlangıçta çıktıyı artırmak yerine azaltır; bu gözlem Brooks Yasası olarak bilinmektedir.
- Yazılımı tahmin etmek neden bu kadar zordur?
- Yazılım soyuttur, genellikle yenidir ve değişen gereksinimlerle şekillenir, bu nedenle tarihsel analojiler kusurludur ve belirsizlik yüksektir; disiplinli tahmin, bu belirsizliği yönetmek için tek noktalı tahminler yerine modelleri, uzman yargısını ve aralıkları birleştirmektedir.