Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Proje Geliştirme Adımları.  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.

Benzer bir sunumlar


... konulu sunumlar: "Proje Geliştirme Adımları.  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."— Sunum transkripti:

1 Proje Geliştirme Adımları

2  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 Proje Geliştirmede aşama modeli

3  Aşama modeli Fikir Başlangıç Ne Tanımlama Nasıl geliştirilecek Tasarım Geliştirme Proje'nin uygulanması Uygulama destek-bakım izleme

4  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? Başlangıç aşama

5  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ı

6  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ı -örnek

7  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 gereksinimleri projenin yürütülmeli olduğu ortamı ifade eder. Örnek olarak yasaları, çalışma ortamı düzenlemelerini göstermek mümkündür. İşlevsel gereksinimler proje ü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 gereksinimler proje ü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 gereksinimleri proje 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ı gereksinimleri projenin 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 Tanımlama aşaması -2

8  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 imkanı 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. Tasarım aşaması

9 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. Geliştirme aşaması

10  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. Uygulama aşaması

11  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şa bilir, 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. Uygulama aşaması-2

12  Ç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. İzleme aşaması

13  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. İzleme aşaması-2

14 YAZILIM SÜRECİ VE YAZILIM SÜRECİ VE SÜREÇ MODELLERİ SÜREÇ MODELLERİ

15 Yazılım süreci  Yazılım Sistemlerinin belirtilmesi, tasarlanması, çalıştırılması ve denetimi için gereken faaliyetlerin uyumlu kümesi  Faaliyetler: - Yazılım sisteminin tanımlanması ve çözümleme - yazılımın işlevselliği ve işlemlere koyulmuş sınırlamalar tanımlanmalıdır  Tasarım (Geliştirme) – gereksinimleri sağlayan yazılım üretilmelidir  Deneme – müşteri isteklerinin karşılandığına emin olmak için yazılım doğrulanmalıdır  Çalıştırma ve bakım  Yazılımın evrimi – müşterinin değişen isteklerinin sağlana bilmesi için yazılım gelişe bilmelidir

16  Yazılım süreci modeli sürecin basitleştirilmiş soyut tasviridir.O, her hangi özgü açıdan süreci ifade eder. Yazılımın geliştirilmesi için kullanılan genel modeller:  Şelale modeli  Faaliyetlere bağımsız süreçler gibi bakılıyor  6 aşamalı model bir şelale modelidir  Evrimsel geliştirme  Kullanıcı ve sistem gereksinimleri evrimsel olarak karşılanmaktadır Yazılım Geliştirme Modelleri

17 Şelale Modeli Şelale Modeli Şelale modeli klasik projelerin (inşaat, gemicilik, köprü yapma ve diğerleri) geliştirilmesi sürecini yansıtmaktadır. İdeal halde modelin bir adımı gerçekleştikten sonra bir sonraki adımın geçekleştirilmesine geçmek mümkündür. Her adımdan sonra uygun adım için proje raporu hazırlanmalı ve yönetime sunulmalıdır. Rapor onaylandıktan sonra bir sonraki adıma geçilebilir. Şelale modelinin özelliği her adımın ayrıntılı biçimde düşünülmesi, incelenmesi ve doğru karar verile bilmesidir. Bir adım yapıldıktan sonra geriye dönüş yoktur.

18 Şelale Modelinin adımları  Gereksinimlerin çözümlenmesi ve tanımlanması  Sistem ve yazılım tasarımı  Birim ve bütünleşme denemesi  Sistem ve teslimat denemesi  Çalıştırma ve bakım  Şelale modelinin yetersiz yönü, süreç tamamlandıktan sonra değişikliklerin yapılmasının zorluğudur

19 Şelale Modelinin sorunları  Projenin farklı aşamalara esnek biçimde bölünmemesi; Bu, değişen müşteri gereksinimlerini yerine getirmekte zorluklar yaratır  Bu nedenle, şelale modeli, gereksinimlerin yalnız çok iyi tanımlandığı takdirde uygun modeldir

20 Yazılım geliştirmenin gerçek süreci Yazılım geliştirme süreci safhaları

21 Evrimsel Geliştirme  Temel düşünce: ilkin bir çalışma yapmak,bunu müşteri görüşüne sunmak, bu görüşleri de dikkate alarak sistemin son gereken halini alana dek sürümlerini geliştirmek  Açınsama (Exploratory)Geliştirmesi  Müşteri ile birlikte çalışarak gereksinimlerin açınsaması; başlangıç ana hatlarıyla verilmiş belirteçten son sisteme doğru evrimsel geliştirme yapılması. Sistemin anlaşıla bilir kısmı ile başlanılmalıdır. Müşterinin önerdiği yeni özellikleri ilave etmekle evrimleşmelidir.  Prototip geliştirme  Hedef- müşteri gereksinimlerinin anlaşılması; sistem için en iyi gereksinim tanımlanmasının geliştirilmesi; müşteri gereksinimlerinin zayıf anlaşılır kısımları üzeride denemelere odaklanıyor.

22 Evrimsel geliştirme yaklaşımları arasındaki farklar  Açınsama yaklaşımında hedef çalışır sistemi son kullanıcıya teslim etmektir. Daha iyi anlaşılır ve yüksek öncelikli gereksinimlerle başlanılır. Zayıf öncelikli ve kesin anlaşılmayan kısımlar yalnız kullanıcı isteği ile çalıştırılır.  Prototip yaklaşımında ise hedef sistem gereksinimlerinin geçerliliğini yoklamaktır. Zayıf anlaşılabilir gereksinimlerle başlamanın nedeni onları daha iyi anlamaktır. Çok iyi anlaşılan gereksinimler için prototipe gerek yoktur

23 Evrimsel geliştirme yaklaşımları arasındaki farklar  Açınsama yaklaşımında hedef çalışır sistemi son kullanıcıya teslim etmektir. Daha iyi anlaşılır ve yüksek öncelikli gereksinimlerle başlanılır. Zayıf öncelikli ve kesin anlaşılmayan kısımlar yalnız kullanıcı isteği ile çalıştırılır.  Prototip yaklaşımında ise hedef sistem gereksinimlerinin geçerliliğini yoklamaktır. Zayıf anlaşılabilir gereksinimlerle başlamanın nedeni onları daha iyi anlamaktır. Çok iyi anlaşılan gereksinimler için prototipe gerek yoktur

24 Evrimsel Geliştirme Sistemin a na hatların ın tanımlanması Paralel işlemler çözümleme tasarım deneme İlk sürüm Aralık sürümler Nihai sürüm

25 Evrimsel geliştirme-Prototip Geliştirme başlama başlama Gereksinimlerin edinmesi ve arındırma hızlı tasarım Prototip oluşturma Son kullanıcı değerlendirmesi Yeni prototipin tanımlanması Mühendis ürünü bitiş

26  Sorunlar  Geliştirme sürecini bütünlükle görmek mümkün olmaya bilir  Sistemler çoğu zaman zayıf yapılanmış oluyorlar  Özel marifetler (örneğin, hızlı prototipler oluştura bilen diller) gereke bilir  Uygulana bilirlik  Küçük ve orta boyutlu etkileşimli sistemler için  Büyük sistemlerin kısımları için (örneğin, kullanıcı arayüzü)  Kısa yaşam süreli sistemler için daha uygundur Evrimsel Geliştirme (devamı)


"Proje Geliştirme Adımları.  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." indir ppt

Benzer bir sunumlar


Google Reklamları