Yazılım Geliştirme
Yazılım Geliştirme
Yazılım geliştirme projelerinde karşılaşılan zorlukların büyük bir kısmı, üretmek için kuruldukları şeyin soyut doğası ile ilgilidir.
Belirtildiği gibi, bir yazılım geliştirme ürünü bir çekiçtir, değeri ancak kullanıldığında anlaşılır. Çekiçten farklı olarak, muhtemelen daha önce hiç var olmayan ve yalnızca kullanıcı için değerli olabilecek benzersiz bir araçtır. tuhaf ve eğitimsiz bireylerden oluşan küçük bir gruptur.
Her biri kendi zorluklarına, risklerine ve özel yönetim becerileri gereksinimlerine sahip farklı türde yazılım geliştirme projeleri vardır.
Bunları dört başlık altında açıklar:
- Yerleşik sistem yazılımını kullanan mevcut bir bilgisayarda uygulanan bir uygulama sistemi geliştiren uygulama odaklı projeler. Bunlar, kuruluştaki belirli bir bağımsız işlevle (örneğin maaş bordrosu) veya tüm organizasyonu kapsayan ve birçok departmanı içeren bir işlevin uygulanmasıyla (örneğin, entegre olmayan sipariş satış sistemi) veya bunlarla ilgili olabilir. büyük ölçüde diğer bilgisayar sistemlerinin veri ve dosyalarına (örneğin, muhasebe sistemi) veya “yukarıdakilerin hepsinin varlığını varsayan kapsamlı sistemlere (örneğin, bir yönetim bilgi sistemi) dayanan sistemler. Deneyim ve gerekli Bu projelerin yöneticisinin becerileri, geliştirilecek sistemin karmaşıklığı ile birlikte artar (az önce açıklanan sırayla).
- Bir bilgisayar konfigürasyonunun uygulanmasını içeren donanım kuran projeler (saha hazırlama ve kabul testleri gibi görevler dahil). Yeni bir donanım veya yazılım yelpazesinin erken teslimatı söz konusu olmadıkça, bu tür projelerin yönetimi genellikle nispeten kolaydır.
- Zorlukları nihai ürünün kendisiyle ilgili olan gelecekteki bir uygulama için yeni dosya yapılarının tanıtılması gibi yazılım uygulama projeleri.
Belirli bir projeyi yönetmenin kolaylığını veya zorluğunu değerlendirmek, projenin başarılı bir şekilde yürütülen herhangi bir projedeki problemlerle tipik olarak ilişkilendirilen özelliklere sahip olup olmadığının belirlenmesine dayanır.
Örneğin, halihazırda var olan bir yazılım sisteminin geliştirilmesini içeren bir proje, benzer bir sistemi sıfırdan geliştiren bir projeden çok daha az riskli olacak veya uzman proje yönetimine daha az ihtiyaç duyacaktır.
Bunun nedeni, ikinci tür projenin, yeni gereksinimlerin geliştirilebileceği önceden oluşturulmuş bazı gereksinimlerden (mevcut sistem) yola çıktığı için, kullanıcı gereksinimlerini yanlış anlama olasılığının daha düşük olmasıdır (yazılım geliştirmede tipik bir sorun).
Gerçek (nihai) gereksinimlere göre yazılım geliştirmek, yazılım geliştirme projelerinde oldukça nadir görülen bir durumdur. xcality’de, gereksinimlerin değişmesi, proje kaymasının ve maliyet aşımlarının ana nedenlerinden biridir. Ayrıca, gereksinimler genellikle eksik, belirsiz ve/veya tutarsızdır.
23 kuruluş üzerinde yapılan bir çalışmada, projelerin üçte ikisinde gereksinim analizi çabasının tekrarlanması gerektiği ortaya çıktı. Ek gereksinimler, ya orijinal gereksinimlerde atlanan bir şey nedeniyle ya da uygulama ortamında veya son kullanıcıların sistemle çalışma biçiminde bir değişiklik olduğu için keşfedildi.
Yazılım geliştirme Taban Puanları
Yazılım geliştirme Nedir
Yazılım geliştirme maaş
Yazılım geliştirme Bölümü Nedir
Yazılım geliştiriciliği Nedir
Yazılım Geliştirme Bölümü
Yeditepe yazılım geliştirme ekşi
Yazılım geliştirme Yöneticisi Nasıl Olunur
Ancak, bu projelerin yöneticilerinin sadece yarısının bu ihtiyaç analizi yinelemesini ve sonuçlarını planladığını da buldular. Değişiklik kontrolünü kolaylaştırarak bu sorunu hafifletmek amacıyla sıklıkla çeşitli teknikler kullanılır.
Alternatif olarak, kullanıcı ile analist/geliştirici arasında yakın bir ilişkinin geliştirilmesi, genellikle olası sorunları önlemenin en iyi yolu olarak önerilir.
Potansiyel olarak yanlış olan veya değişme olasılığı olan gereksinimler, bir yazılım geliştirme projesinin yöneticisi için başlıca endişe kaynağı olsa da, 294 yöneticinin deneyimlerine ilişkin bir ankette, sorunların bazı ek nedenlerini belirleyen tek neden bunlar değildir. :
- doğru tahmin etme ve planlama becerisi zayıf
- proje ekibinden beklenen performans kalitesini ve üretim miktarını ölçmek için standartların ve tekniklerin eksikliği,
uygun organizasyon yapısını seçmede veya doğru yönetim tekniklerini seçmede karar yardımcılarının olmaması; - projenin ilerlemesinin görünürlüğüne veya etkili kontrolüne yardımcı olabilecek tekniklerin eksikliği;
- kimin neyden sorumlu olduğunu tanımlayan yetersiz sorumluluk;
- yazılım geliştirme için uygun olmayan başarı kriterleri.
Yukarıda sıralanan nedenler, proje yöneticisinin sorumluluklarını yerine getirmesinde sorun yaratırken, bunların etkileri projede fiilen ortaya konan işin kalitesine faaliyetleri aracılığıyla yayılabilir. Gerçek proje çalışmasında izlenen hata kaynakları söz konusudur.
- problemin tanımlanabilirliği, çözülebilirliği, mevcut prosedürler ve araçlar gibi teknolojik nedenler;
- iş yükünün bölünmesi, mevcut bilgi, iletişim, kaynaklar gibi organizasyonel nedenler;
- projenin, programın tarihi, özel durumlar, dış etkiler gibi tarihsel nedenler;
- işbirliği yapma isteği, proje ekibi içindeki rollerin dağılımı gibi grup dinamiği nedenleri;
- deneyim, yetenek, bireysel ekip üyelerinin oluşumu gibi bireysel nedenler vardır.
Yazılım geliştirme projelerinde karşılaşılan sorunların nedenleri, genellikle proje tamamlandıktan veya projeden vazgeçildikten sonra geriye dönük olarak incelenerek belirlenir.
Geçmişteki başarısız projeleri, katılımcıları sorgulayarak veya hatta birinin başarısız bir projeye katılıp katılmadığını sorgulayarak gözden geçirme girişimlerinin tarafsızlığı şüphelidir.
Birinin ortaya çıkarması muhtemel nedenler, sorgulayanın ve sorgulananın öznel görüşleri veya önyargılarıdır. Gerçekte elde edilen şey daha çok gelecek için tavsiye gibidir. Bir projenin başarısı veya başarısızlığı özneldir ve gözlemciler kendi bakış açılarını tartışsalar bile uzlaştırılamayan bir tartışma konusu olabilir.
Bir sorunun nedeni tartışmasız bir şekilde tespit edilmiş olsa bile, soruna önerilen çözümler tartışma konusu olabilir. Örneğin, bir yönetici tarafından ortaya atılan bir çözüm, programcı tarafından kalıcı bir çözüm sağlamak yerine sorunun yalnızca bir parçası olarak görülebilir.
‘Ayrıca, projenin başına gelebilecek olası sorunların çoğu, proje özeti ile birlikte yaşamıyor. Projenin başlangıcından itibaren bunları her zaman net bir şekilde tahmin etmek ve bunları ele almak için plan yapmaya çalışmak her zaman mümkün değildir. Proje başladıktan sonra, strateji değişikliğini gerektirecek veya acil eyleme geçilmesini gerektirecek şeyler olabilir.
Örneğin, ürüne artık ihtiyaç duyulduğu için proje çalışmasının aciliyeti artabilir veya belirtilen yazılım geliştirme araçları ile üzerinde çalışması beklenen donanım arasında bir uyumsuzluk keşfedilebilir. Bu gibi durumlarda yönetici, acil olmayan durumlarda kullanılanlardan niteliksel olarak farklı olan yönetim tekniklerinin derhal kullanılmasını gerektiren bir acil durumla karşı karşıya kalır.
Yazılım geliştiriciliği Nedir Yazılım Geliştirme Bölümü Yazılım geliştirme Bölümü Nedir Yazılım geliştirme maaş Yazılım geliştirme Nedir Yazılım geliştirme Taban Puanları Yazılım geliştirme Yöneticisi Nasıl Olunur Yeditepe yazılım geliştirme ekşi