Proje Yöneticisi zaman, maliyet ve kalite sınırlamaları içinde proje hedeflerine ulaşmak için tek sorumluluk merkezidir.
Proje yöneticisi proje başladıktan tamamlanana dek projenin genel sorumluluğunu ve yükümlülüğünü kabul eder.
O, projeyi “oluştur veya parçala” mantığı ile yönetir
Proje yöneticisi projenin esas ilgili taraflarını- müşterileri, paydaşları, danışmanları, tedarikçileri, resmi kurumları, emek birliklerini, rakipleri ve yatırımcıları proje kapsamında yönetir.
Proje Yöneticisinin Sorumlulukları
Sorumluluk, görevi yerine getirmek için bir yükümlülüktür. Onu başkasına devretmek olmaz.
Sorumluluklar bunlardır:
Projenin bütünlüğünün tanımlanması ve sağlanması
Proje takımının seçilmesi
İlgili tarafların tanımlanması ve yönetimi
Proje çalışmalarının planlanması
Projenin örgütlenmesi
Projenin çalıştırılması
Proje denetimi ve gelişmesinin izlenilmesi
Mali yönetim
Değişimlerin ve ihtilafların yönetimi
Proje Yöneticisi Neleri Bilmelidir
Öncelikleri
Yetkileri
İşi yürütmek için imkan ve araçlar
Nasıl başarıya ulaştığını bilmek için geri bildirim
Anlamsal bilgi - nesne sınıflarının ifadesi, örgüt yapısı… gibi kavramsal bilgiler
Bu bilgiler öğrenme ve deneyim yolu ile kazanılıyor
Sözdizimsel bilgi-bilginin sunum ayrıntıları hakkında bilgi –Java’da nesne nasıl gösteriliyor, hangi standart fonksiyonları kullanıla bilir, “=“ veya “:=“ simgelerinden hangisi kullanılmalıdır…
Anlamsal bilgi yapısal biçimde bellekte tutuluyor
Anlamsal Bilgi
Anlamsal Bilgiler
Bilgi işlem kavramları – iterasyon, döngü, nesne … kavramları
Mesele (sorun) kavramları - algoritmik – özgü bir meseleni nasıl çözmeli
Yazılım geliştirme yeteneği, yeni bilgileri mevcut bilgisayar ve mesele bilgileri ile bütünleştirmek ve yaratıcı problem çözümlerini geliştirmek
Sorun çözme dile bağımlı değildir
Bilgi Edinme
Deneyim ve etkin öğrenme yolu ile anlamsal bilgi kazanılması
Sözdizimsel bilgi ezberleme gerektiriyor.
Yeni sözdizimsel bilgiler mevcut bilgileri engelleyebilir
Deneyimli programcının, farklı programlama dillerinin sözdizimlerinin karıştırılması
Sorun Çözme
Farklı türden (bilgisayar, görev, alan, kurum) olan bilgilerin bütünleşmesini gerektiriyor
Çözümün anlamsal modelinin geliştirilmesi ve sonra bu modelin denenmesi
Grup bir bütün olarak çalışır ve sistemi etkileyecek kararlar üzerinde uzlaşmaya varır
Grup lideri, grubun dışarı ile iletişimini sağlar
Görülecek işler grupta tartışılır ve grup üyeleri arasında, deneyimlerine ve yeteneklerine göre paylaştırılır
Bu yaklaşım, grubun tüm üyelerinin deneyimli ve yetenekli olduğu hallerde başarılı sonuçlar vere bilir
Personelin Seçilmesi ve İşe Alınması
Projede çalışacak insanların seçilmesi başlıca yöneticilik görevlerindendir
İnsanların seçilmesi kararı genellikle aşağıdakiler esasında veriliyor:
Aday tarafından sağlanan bilgi (onun özgeçmişi ve ya CV’si)
Mülakat, görüşme yolu ile edinilen bilgi
Adayı iyi tanıyan birileri tarafından tavsiye
Bazı şirketler psikoloji veya yetenek sınavları yapıyorlar
Bu sınavların gerçekten yararlı olup olmadığı hakkında ortak fikir yoktur
Yazılım Projeleri İçin Personel Seçme Etkenleri
Etkenler
Açıklaması
Uygulama alanı üzere deneyim
Başarılı sistem geliştirmek için geliştirici uygulama alanını anlamalıdır
Programlama dili deneyimi
Genelde yeni dil öğrenmek için yeterli zamanın bulunmadığı kısa süreli projeler için önemlidir
Eğitim altyapısı
Adayın bilgisini ve öğrenme yeteneğini değerlendirmek için bir gösterge olarak kullanıla bilir. Bu etken, mühendisin projelerde deneyim kazanması ile önemsiz olabilir
İletişim yeteneği
Proje personelinin diğer bir-birleriyle, yönetici ve mühendislerle sözel ve yazılı iletişim kura bilmesi çok önemli başarı göstergesidir
Uyum sağlama
Adayın öğrenme yeteneğini değerlendirmek için önemli etkendir
Hırs,istek
Proje personeli işi istekle yapmalı, yeni beceriler edinmek için çaba göstermelidir. Bu çok önemlidir
Kişisel özellikler
Adayların diğer proje çalışanları ile kıyaslanması yapıla bilmelidir. Bazı türden insanlar yazılım mühendisliği için uygun olmaya bilir. Çok önemlidir.
Çalışma Yeri
Çalışma yerinin özelliklerinin bireysel verimliliğe önemli etkisi bulunmaktadır
Rahatlık
Özellik, yalnızlık
Yararlılık
Sağlık ve güvenlik gerekçeleri dikkate alınmalıdır
Aydınlatma
Isınma
Mobilya
Çevresel Etkenler
Her bir personel, çalışmasının kesilmeyeceği çalışma ortamı ister
İnsanlar doğal aydınlanması olan odalarda çalışmak ister
Bireyler çeşitli yollarla çalışma ortamlarını kendileri için daha uygun ortama dönüştürmeye çalışırlar
Çalışma Ortamı
İnsanların, müdahale olmadan çalışa bilmelerine olanak sağlayan özel çalışma alanları
İnsanın Yetenek Olgunluğu Modeli kurumdaki personelin yeteneğini yükseltmek için bir çerçevedir
1709
5. Proje Geliştirme Adımları
Proje Geliştirmede Aşama Modeli
Proje Geliştirme sürecini daha iyi yönete bilmek için bu süreç bileşenlere ayrılır. Bu amaçla farklı modeller kullanılabilir. Biz burada aşama modelini öğreneceğiz. Projenin aşamalara bölünmesi onu iyi yönetme imkanı sağlar. Proje geliştirme sürecinin izlenmesi ve denetimi kolaylaşır.
Modele göre proje geliştirme 6 aşamadan oluşmaktadır:
1. Başlangıç
2. Tanımlama
3. Tasarım
4. Geliştirme
5. Çalıştırma
6. Teslim sonrası bakım
Aşama Modeli
Başlangıç Aşama
Bu safhada projenin temel fikri araştırılır ve incelenir. Projenin gerçekleşebilirliği belirlenir. Projenin kimler tarafından yürütüleceği, kimlerin projeye katılacağı ve katkı sunacakları (sunabilecekleri) konuları da araştırılır.
Projenin önderliğini yapan (veya fikir sahipliğini yapan) bu konuların açıklamalarının yer aldığı proje önerisini yazar. Projenin muhtemel destekçisi (sponsoru) bu öneriyi değerlendirir ve onaylaması durumunda gereken mali desteği sağlar. Proje resmi olarak onaylandığı tarihten başlar.
Başlangıç aşama aşağıdaki sorulara cevap vermelidir:
Projenin önemi nedir?
Proje yapılabilir mi?
Projenin muhtemel paydaşları kimlerdir?
Proje sonuçları ne olmalıdır?
Projenin kapsamı nedir?
Tanımlama Aşaması
Proje onaylandıktan sonra proje ikinci aşamaya- tanımlama aşamasına geçer. Bu aşamada proje sonuçlarına ulaşmak için gereken gereksinimler mümkün oldukça açık bir biçimde belirlenmelidir.
Gereksinimleri mümkün oldukça erken aşamalarda belirlemek önemlidir
Proje ile ilgili tüm tarafların, özellikle son kullanıcıların gereksinimlerin belirlenmesinde işbirlikçi yaklaşımları önemlidir. Bu proje ürünü ile bağlı oluşabilecek anlaşmazlıkları önlemek için gereklidir.
Tanımlama aşamasından sonra müşteri yeni gereksinimler suna bilmez
Tanımlama aşaması –örnek
Bir eğitim videosunun geliştirilmesinin yalnızca son evresinde öğrenciler de dahil edildi. Oyun neredeyse tamamlandığında öğrencilerden oyunu test etmeleri istendi. Öğrencilerin ilk değerlendirmeleri ılımlı ve samimi göründü. Ama bir az baskı yapıldığında öğrenciler oyunun çok sıkıcı ve kullanışsız olduğunu söylediler. Haliyle, eğitim videosu da internette kullanılmamış kaldı. Eğer öğrenciler geliştirmenin daha erken evrelerinde projeye katılmış olsa idiler bu sonuç da çıkmazdı.
Tanımlama Aşaması (Devam)
Proje gereksinimlerini aşağıdaki gibi sınıflandırmak mümkündür:
Ön koşul gereksinimleri
İşlevsel gereksinimler
İşlevsel olmayan gereksinimler
Uygulama (Çalışma ) gereksinimleri
Tasarım sınırlamaları
Ön koşul gereksinimleriprojenin yürütülmeli olduğu ortamı ifade eder. Örnek olarak yasaları, çalışma ortamı düzenlemelerini göstermek mümkündür.
İşlevsel gereksinimlerproje ürününün olmazsa olmazlarını, işlevlerini ifade eden gereksinimlerdir. Örneğin, veritabanı yönetim sistemi uygulamalarında veritabanındaki herhangi veriye ulaşıla bilmesi
İşlevsel olmayan gereksinimlerproje ürününün başarımı, kalitesi, boyutu türünden gereksinimlerdir. Bu gereksinimler sağlanmadığı durumlarda da ürünün uygulanması (çalışması) genellikle mümkündür. Ama kalite göstergeleri düşecektir. Örneğin, kullanıcı sorgularına en geç 4 saniye içinde sistem yanıt vermelidir
Uygulama gereksinimleriproje sonuçlarının kullanımını kapsar. Örneğin, yazılım projesi gerçekleştikten sonra hataların sayısı yüzde 90 azalmalıdır.
Tasarım sınırlamaları gereksinimleriprojenin fiili gerçekleşmesi ile bağlıdır. Örneğin, proje zehirli maddelerin kullanımına veya çocuk emeğini istismar eden şaibeli uluslararası kurumların projeye katılımına izin vermemelidir
Tasarım Aşaması
Tanımlama aşamasında geliştirilen gereksinimler listesi tasarım çözümlerini oluşturmak için kullanılır. Tasarım aşamasında proje çözümünü elde etme imkânı verecek bir veya daha fazla tasarım geliştirile bilir.
Proje denetçileri bu tasarımları, kesin tasarımı seçmek için kullanır. Tanımlama aşamasında olduğu gibi, tasarım seçildikten sonra projenin sonraki aşamalarında değiştirile bilmez.
Geliştirme Aşaması
Geliştirme aşaması boyunca, projede uygulanması gereken her şey düzenlenmiş olacak; Muhtemel tedarikçiler ve taşeronlar belirlenmiştir, iş-zaman programı oluşturulmuştur, malzeme ve araçların yeri, işlevi belirlenmiştir, personeller için talimatlar oluşturulmuştur,…
Geliştirme aşaması, proje ürünü uygulamaya hazır olduğu zaman biter.
Tüm taraflar için gerçekleştirilmesi gereken sorunlar açıklık kazanmalıdır. Bazı projelerde, özellikle küçük projelerde resmi geliştirme aşamasına gerek kalmaya bilir. Önemlisi odur ki, çalıştırma aşamasında kimin ne zaman ve ne yapacağı kesinleşmiş olsun.
Uygulama Aşaması
Bu aşama gerçek proje ürününün yapılandırılması süresidir; Programcılar kodla uğraşıyorlar. Tasarımcılar grafik materyalleri geliştiriyor, yükleniciler inşa ediyorlar.
Bu aşamada proje dışarıdakilere görünür ve onlar projeyi yenice başlanmış gibi görüyorlar.
Uygulama aşamasının sonunda proje sonuçları tanımlama aşamasında belirlenmiş gereksinimlere göre değerlendirilir. Aynı zamanda tasarıma uygunluk yoklanır. Uygulama aşaması tüm gereksinimler yerine getirildiği ve tasarım koşulları sağlandığı zaman son bulmuş oluyor.
Bu aşama tüm gereksinimlerin karşılanması ve proje ürününün tasarıma uygun olması ile sonlanır.
Tanımlama aşamasında gösterilen tüm gereksinimlerin kesin olarak karşılanması kolay iş değildir; Beklenmedik durumlar oluşabilir veya gereksinimlerin orijinal listesinde ilerleyen zamanlarda değişiklikler yapıla bilir.
Genellikle gereksinimler tanımlama aşamasından sonra değiştirilemez. Bu tasarıma da aittir. Tasarım, uygun aşama sonlandıktan sonra değiştirilemez. Proje lideri, tüm değişimleri, özellikle müşteri ile mümkün kadar erken aşamalarda tartışmalıdır. Yanlış anlamaları önlemek için yapılacak değişimler çok iyice belgelenmelidir.
İzleme Aşaması
Çok önemli olmasına rağmen, bu aşama çoğu zaman umursanmaz. Bu aşama süresince her şey projeyi başarılı tamamlanmaya götürmesi için gereken biçimde düzenlenir. Bu aşamada girişimlere örnek olarak kullanıcı için kılavuz yazılması, sonuçların bakımı, proje raporunun yazılması, projenin feshi gösterile bilir.
Önemli soru projenin ne zaman ve nerede sonlanmasıdır. Proje önderleri sık sık kendi aralarında böyle bir şaka yapıyorlar ki, projenin ilk yüzde doksanı çok hızlı tamamlana bilse de son yüzde onunun tamamlanması yıllarca süre bilir. Projenin sınırları proje başlangıcında belirlenmeli ve proje bu sınırlara ulaştığı zaman sonlanmalıdır.
Bazen proje sonucunun (ürünü) kesin ifadesi mümkün olmaz. Bu özellikle, yenilikçi projelerde (sonucu belirli olmayan) kendini gösteriyor. (Müşteriler ticari ürün almak için beklentide buluna bilirler, ama proje ekibi prototip oluşturma düşüncesinde ola bilir).
Bu durumun özellikle izleme aşamasında ortaya koyulması muhtemeldir.
“düşün, sonra yap” sloganı altı aşamalı modelin temel düşüncesidir Her aşamanın kendi iş paketi bulunuyor. Her bir paketin dikkat yetirilmesi gereken yönleri bulunuyor.
YAZILIM SÜRECİ VE SÜREÇ MODELLERİ
Yazılım Sistemlerinin belirtilmesi, tasarlanması, çalıştırılması ve denetimi için gereken faaliyetlerin uyumlu kümesi