005 alternatif yazilim surecleri [99 slides]

99
UML/UP ile Yazılım Geliştirme Bölüm 5/7

Upload: erol-bozkurt

Post on 15-Dec-2014

1.017 views

Category:

Documents


3 download

DESCRIPTION

Unified Process ve UML ile Yazılım Geliştirme - 5 - Alternatif Yazılım Geliştirme Süreçleri

TRANSCRIPT

Page 1: 005 Alternatif Yazilim Surecleri [99 Slides]

UML/UP ile Yazılım Geliştirme

Bölüm 5/7

Page 2: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• UML’in Sizin için Anlamı• UML Şemaları, Semboller ve Semantik İlişkileri• Şema ve Model Bazlı UML Çalışmaları

Arasındaki Farklar• Alternatif Yazılım Geliştirme Süreçlerinde

UML'in Yeri• UML ile Gereksinim Yönetimi• UML ile Nesne Yönelimli Tasarım

Page 3: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 4: 005 Alternatif Yazilim Surecleri [99 Slides]

Değişen

gereksinimler

Yeni

sistem

Süreç

Süreç Nedir?

• Kimin Neyi Ne Zaman Nasıl yapacağını tanımlamaktır.

Page 5: 005 Alternatif Yazilim Surecleri [99 Slides]

1. Gereksinim Yönetimi (Ne?)

Ürünün yerine getirmesi gerekenler

2. Analiz (Nasıl?)

Sistemin parçalarının ve birbirleriyle alakalarının kavramsal seviyede belirlenmesi

3. Tasarım (Nasıl?)

Sistemin parçalarının ve birbirleriyle alakalarının bir teknolojiye has olarak (J2EE, C++) belirlenmesi

4. İmplementasyon (Kodlamak)

Sistemin kaynak kodunun geliştirilmesi

5. Test (Verifikasyon: Fonksiyonel Test)

Test verileriyle uygulamayı çalıştırmak

6. Bakım (Hata Düzeltme ve Geliştirme)

Ürünün hatalarını giderme ve yeni özellikler ekleme

Yazılım Süreci Aşamaları

Page 6: 005 Alternatif Yazilim Surecleri [99 Slides]

1. Gereksinim Yönetimi: Uygulama kullanıcının bakiyesini göstermelidir.

2. Analiz ve Tasarım: Tasarım VadesizHesap ve VadeliHesap class’larına sahip olmalıdır.

3. İmplementasyon: class VadesizHesap{ double bakiye; getBakiye{}; setBakiye{}} …

4. Test: yatırılan $44.92 / yatırılan $32.00 / çekilen $101.45 / … bakiye $2938.22, testi geçti.

5. Bakım: Hata düzeltme: Bakiye sıfır olunca ve para çekme işlemi yapılmak istenince sistem

göçüyor.Ek Özellik Geliştirme: Euro para birimini destekleme.

Süreç Örneği: Bireysel Finans

Page 7: 005 Alternatif Yazilim Surecleri [99 Slides]

Waterfall Yazılım Süreci

zaman

GereksinimAnalizi

Tasarım

Milestone(s)

Fazlar

İmplementasyon

Test

Bakım

Ürünün sürümleri

Bu fazlar kısa bir süre için örtüşebilir

Page 8: 005 Alternatif Yazilim Surecleri [99 Slides]

Waterfall Neden Pratik Değildir?

1. Sahip olunması istenen bilgilerin hepsi hazır değildirBütün detayları işin başında görmek zordur

2. Gereksinimlerin implementasyon maliyetlerini sadece tahmin edebiliriz Tahminin isabetliliğini anlamak için en riskli olanlarının tasarlanıp,

implemente edilmeleri gerekirBuradan alınan sonuçlara göre gereksinimler değişebilir

3. Sık sık ara sürümler çıkarmak zorunda kalırızPaydaşların (müşteriler, yöneticiler) projeye güvenlerini tazelemek gerekirTasarımcılar ve programcılar geliştirdikleri sistemin istenen sistem

olduğunun konfirmasyonunu beklerler (Bunun yegane yolu: kademe kademe parçaları birleştirerek (iterative ve incremental) yazılım geliştirme ve testtir)

4. Tipik olarak yazılım ekibinin elemanları farklı fazlarda da görev alırlar

Page 9: 005 Alternatif Yazilim Surecleri [99 Slides]

Spiral Süreç

Page 10: 005 Alternatif Yazilim Surecleri [99 Slides]

Spiral Süreç

zaman

1 Gereksinim

Tasarım

Kodlama

Test

1İterasyon #

1

1

2

2

2

3

3

3

X sürüm 1.0

M I L E S T O N E S

2 3

2 3 1

α(prototype) X

β

Page 11: 005 Alternatif Yazilim Surecleri [99 Slides]

Örtüşen Süreç Aşamaları: UP

Page 12: 005 Alternatif Yazilim Surecleri [99 Slides]

RUP’un Gelişimi

İşlevsellik TestiPerformans TestiGereksinim Denet.Değişiklik Denet.İş AkışıVeri TabanıUI

Rational Unified Process 5.01998

Rational Objectory Process 4.11996-1997

Objectory Process 1.0-3.81987-1995

Ericsson Yaklaşımı

Rational Yaklaşımı UML

Page 13: 005 Alternatif Yazilim Surecleri [99 Slides]

Süreç Seçim Yaklaşımı Olarak MPP

• Method over Tool:“Herhangi bir yazılım mühendisliği ürününden ziyade

yönteme odaklanmak”• Project over Method:“Herhangi bir yazılım sürecinden ziyade projeye/ürüne

odaklanmak”• People over All:“Herşeyden çok ürünün kullanıcıları ve onu geliştirenler

dahil olmak üzere paydaşlara odaklanmak”

Page 14: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 15: 005 Alternatif Yazilim Surecleri [99 Slides]

Proje Gelişim Süreci

zaman

Inception Elaboration Construction Transition

•Inception: Projenin sınırlarının belirlenmesi, Verilecek hizmetin berraklaştırılması

•Elaboration: Proje planının oluşturulması, ürün özelliklerinin saptanması, Baseline

•Construction: Ürünün oluşturulması•Transition: Kullanıma sunulma

saptama tasarlama oluşturma sunma

GereksinimKontrolü

SistemMimarisi

Kullanılabilirlik ResmiSürüm

Page 16: 005 Alternatif Yazilim Surecleri [99 Slides]

Aşamalar ve İterasyonlar

Bir iterasyon planlı olarak gerçekleştirilmiş faaliyetler bütünüdür. Sonucunda başarısı ölçülebilen çalıştırılabilir bir bilgisayar programı oluşur.

ArchIteration

... Dev Iteration

Dev Iteration

... TransIteration

...

Release Release Release Release Release Release Release Release

PrelimIteration

...

Inception Elaboration Construction Transition

Page 17: 005 Alternatif Yazilim Surecleri [99 Slides]

İterasyonlar ve İşler

P re lim in a ry

Ite ra tio n (s )ite r.

# 1

ite r.

# 2

ite r.

# n

ite r.

#n + 1

ite r.

# n +2

ite r.

# m

ite r.

#m +1

Inception Elaboration Construction Transition

Gereksinim

Tasarım

Uygulanma

Test

Analiz

Aşamalar

İşler

İterasyon

Page 18: 005 Alternatif Yazilim Surecleri [99 Slides]

İterasyonlar ve Risk

Transition

Inception

Elaboration

Construction

PreliminaryIteration

Architect.Iteration

Architect.Iteration

Devel. Iteration

Devel. Iteration

Devel. Iteration

TransitionIteration

TransitionIteration

Post-deployment

Waterfall

Proje risklerinin ortaya konması

•Mimarinin revizyonu

•Risk-bazlı iterasyonlar

•Entegrasyon

•Kullanıma sunma

•Müşteri memnuniyetini ölçme

•Senaryolarla sistemin yapısının ve davranışının oluşturulması

•Sistem Mimarisinin oluşması

•Temel mekanizmaların tasarlanması

Page 19: 005 Alternatif Yazilim Surecleri [99 Slides]

Risk Azaltma Odaklı İterasyonlar

İlk Proje Riskleriİlk Proje Odağı

Yenilenen Proje Planı• Maliyet• Zamanlama• Odak/İçerik

İterasyon N’in Planı• Maliyet• Zamanlama

Iteration N’in değerlendirilmesi

Giderilen RisklerDiğer Riskler• Yeni öncelikler

Iteration N’in oluşması• Maliyet ve Kalite ölçümleri

En önemli risklere yönelik senaryoların oluşturulması

Iterasyon N

Page 20: 005 Alternatif Yazilim Surecleri [99 Slides]

Use Case Odaklı İterasyonlar

Inception Elaboration Construction Transition

İterasyon1İterasyon2 İterasyon3

İterasyon PlanıGereksinimler

Analiz + TasarımUygulama

Test Release

“Mini-Waterfall” Süreci

Page 21: 005 Alternatif Yazilim Surecleri [99 Slides]

İterasyon Süreci

• Önceki iterasyonların sonuçları• Güncel Risk Raporu• Model, kod ve test kayıtları

Release raporuYeni Risk RaporuKonfigürasyon Denet.

İterasyon Planı

Gereksinimlerin Sapt.

Analiz + Tasarım

Uygulama

Test

Release

Page 22: 005 Alternatif Yazilim Surecleri [99 Slides]

Adapte Olabilen bir Süreç: UP

Murray CantorMurray CantorMurray CantorMurray Cantor

Rational Stratejik Hizmetler Biriminde baş Rational Stratejik Hizmetler Biriminde baş danışman. danışman.

Uzmanlık alanları:Uzmanlık alanları:

• Yazılım Mühendisliği SüreçleriYazılım Mühendisliği Süreçleri

• Sistem Mühendisliği SüreçleriSistem Mühendisliği Süreçleri

• Yazılım Proje YönetimiYazılım Proje Yönetimi

• LiderlikLiderlik

Software Leadership: A Guide to Successful Software Development

Rational Stratejik Hizmetler Biriminde baş Rational Stratejik Hizmetler Biriminde baş danışman. danışman.

Uzmanlık alanları:Uzmanlık alanları:

• Yazılım Mühendisliği SüreçleriYazılım Mühendisliği Süreçleri

• Sistem Mühendisliği SüreçleriSistem Mühendisliği Süreçleri

• Yazılım Proje YönetimiYazılım Proje Yönetimi

• LiderlikLiderlik

Software Leadership: A Guide to Successful Software Development

Slaytlar 20 - 28

Page 23: 005 Alternatif Yazilim Surecleri [99 Slides]

Eski Müşteri/Yazılım Ekibi İlişkisi

• Gereksinimleri ‘bitir’ kaynak değerlendirmesi yap proje planı yaz taahhüt ver planı uygula proje başarısızlığını gör suçluyu ara sonunda kabul edilebilecek bir çözüm sun (belki)

• Varsayımlar – Gereksinimlerin, proje içeriğinin, kullanılacak teknolojinin

eksiksiz ve gereken detay seviyesinde anlaşıldığını ... – Çok isabetli tahminlerde bulunmanın mümkün olduğunu ...– Detaylı bir planın yapılabileceği ve uygulanabileceği ...

Page 24: 005 Alternatif Yazilim Surecleri [99 Slides]

‘Waterfall’ Yaklaşımının SonuçlarıDetaylı toplantılar yapılıyor /Toplantı

notları yazılıyor

Tasarım uygun gözüküyor.

Detaylı bir spesifikasyon hazırlanıyor.

Gereksinim kapsama yüzdesi (% 100) yüksek.

• Tasarım “suçu ispatlanana kadar

masum.”

Toplantılar ve dokümanlar karmaşık bir yazılım sisteminin gerçek risklerinin çok azına değiniyor.

Elle tutulur bir delil yok.

Yanıltıcı bir güvenlik hissi var.

Pek azı n*(% 10) tasarımı yönlendiriyor.

Gereksinimlerin hepsine nüfuz etme çabası kritik noktaları gözden kaçırıyor.

Her zaman suçlu. Tasarım hatası ileride istemediğimiz bir zamanda ortaya çıkacak.

Sözde Sonuçlar Gerçek Sonuçlar

Page 25: 005 Alternatif Yazilim Surecleri [99 Slides]

Pareto KanunuFa

yd

aFa

yd

a

EmekEmek20%20%

80%80%

%%2020’lik ’lik eemekmek faydanınfaydanın %%8080’ini sağlar’ini sağlar..%%2020’lik ’lik eemekmek faydanınfaydanın %%8080’ini sağlar’ini sağlar..

Page 26: 005 Alternatif Yazilim Surecleri [99 Slides]

Hata Payını En Aza İndirmek Çok Emek İster

• Gereksinimler karmaşıktır– Fonksiyon/Davranış– Sistem tarafı ayrıca karmaşıktır.

• Tam anlamıyla anlamak analiz, deneyler ve neticelerin değerlendirilmesiyle mümkündür.

• Gereksinimlerle Sistem Mimarisinin ilişkilerinin belirlenmesi gerekir.

• Tüm bu emek bahsettiğimiz 80/20 kuralına tabiidir. – Eksiksiz bir bilgiye erişim en iyimser yaklaşımla ekonomik

değildir. Gerçekçi olursak mümkün değildir. – Bilgi proje süresince eksiksizleşir.

Page 27: 005 Alternatif Yazilim Surecleri [99 Slides]

ParadoksYapılacak işi yönetebilmek içim yazılım taahhütlerinin olması gerekli

Taahhütlerin çok detaylı bir şekilde tarif edilmeleri mümkün değil

Çözüm:– Açık bir şekilde ortaklaşa çalışma, müşteriye sonuç göstererek

yönetim ve programcı arasında ahenk oluşturarak çalışmak– İteratif yazılım geliştirme– Elde edilen bilgilerin kademeli olarak zaman içerisinde

eksiksizleşmesi ve detay seviyelerinin artması.

Page 28: 005 Alternatif Yazilim Surecleri [99 Slides]

Yazılım Problemi: İki nokta arasındaki en kısa yol

Buradan Buraya

Nasıl gideceğiz?

Buradan Buraya

Nasıl gideceğiz?

Düşündüğümüz GüzergahDüşündüğümüz Güzergah

Projenin ilk Durumu

Mevcut ‘malzemeler’, teknolojiler

Elemanlar, kabiliyetleri, bilgileri

Kaynak eksiklikleri

Belirsizlikler

Projenin ilk Durumu

Mevcut ‘malzemeler’, teknolojiler

Elemanlar, kabiliyetleri, bilgileri

Kaynak eksiklikleri

Belirsizlikler

Müşteriyi Tatmin Edebilecek Alan

Katmadeğer: Kullanıcıya (kullanılabilirlik, performans, kalite)

Maliyet (zaman ve para)

Katmadeğer: Yazılım Geliştirici (kar, deneyim, satış, Pazar payı vs.)

Müşteriyi Tatmin Edebilecek Alan

Katmadeğer: Kullanıcıya (kullanılabilirlik, performans, kalite)

Maliyet (zaman ve para)

Katmadeğer: Yazılım Geliştirici (kar, deneyim, satış, Pazar payı vs.)

Page 29: 005 Alternatif Yazilim Surecleri [99 Slides]

Gerçek Güzergah

İterasyonlar ve Projenin İlerlemesinin Gözlenebilmesi

Müşteriyi Tatmin Edebilecek Alandaki BelirsizlikMüşteriyi Tatmin Edebilecek Alandaki Belirsizlik

Planlanan Planlanan İçerikİçerik

Planlanan Güzergah

Projenin ilk Projenin ilk DurumuDurumu

Page 30: 005 Alternatif Yazilim Surecleri [99 Slides]

Planlanan GüzergahPlanlanan Güzergah

Gerçek GüzergahGerçek Güzergah

‘Waterfall’ Yönetimi: “Planla ve Takip Et”

Planlanan Proje Planlanan Proje BitişiBitişiPlanlanan Proje Planlanan Proje BitişiBitişi

Gerçek Proje BitişiGerçek Proje BitişiGerçek Proje BitişiGerçek Proje Bitişi

Müşteriyi Tatmin Edebilecek AlanMüşteriyi Tatmin Edebilecek AlanProjenin ilk DurumuProjenin ilk Durumu

Planla ve Takip Et: Projenin tüm aşamalarındaki tüm faaliyetlerin zamanlamasını tahmin et ve bu tahminleri takip et. Gerçek ve Hayal: Bu durum iki farklı planın takip edilmesini gerektiriyor.

Planla ve Takip Et: Projenin tüm aşamalarındaki tüm faaliyetlerin zamanlamasını tahmin et ve bu tahminleri takip et. Gerçek ve Hayal: Bu durum iki farklı planın takip edilmesini gerektiriyor.

Page 31: 005 Alternatif Yazilim Surecleri [99 Slides]

Müşteriyi Tatmin Edebilecek AlanMüşteriyi Tatmin Edebilecek AlanProjenin ilk DurumuProjenin ilk Durumu

Planlanan GüzergahPlanlanan Güzergah

İteratif Yaklaşımda Liderlik: “Manevra Yap ve Adapte Ol”

Planlanan Proje Planlanan Proje BitişiBitişiPlanlanan Proje Planlanan Proje BitişiBitişi

Gerçek GüzergahGerçek Güzergah

Gerçek Proje BitişiGerçek Proje BitişiGerçek Proje BitişiGerçek Proje Bitişi

Devamlı olarak :Resmin geneline hakim ol – Proje yönelik istek değişikliklerini değerlendirManevra yap ve adapte ol – İterasyonlar bir dizi ufak sonuç sağladığından projenin tüm istekleri yerine getirmesini sağlamak için kullanılabilir: Hangi yönde manevra yapacağız?

Devamlı olarak :Resmin geneline hakim ol – Proje yönelik istek değişikliklerini değerlendirManevra yap ve adapte ol – İterasyonlar bir dizi ufak sonuç sağladığından projenin tüm istekleri yerine getirmesini sağlamak için kullanılabilir: Hangi yönde manevra yapacağız?

Page 32: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 33: 005 Alternatif Yazilim Surecleri [99 Slides]

UP’in 3 Temel Parçası

Use Case’leri tanımla

Use case paketi

Use case

sorumluluğu

Analist

Artifact(Oluşanlar)

Sürecin oluşturduğu, kullandığı veya değiştirdiği bir ürün

Role (Çalışan)

Bir rol Activity (Faaliyet)

Bir iş

Page 34: 005 Alternatif Yazilim Surecleri [99 Slides]

Role

• Analistler: İş Analisti, Sistem Analisti, vs.• Yazılım Geliştirenler: Tasarımcı, Programcı,

Kullanıcı Arayüzü Tasarımcısı, vs.• Yöneticiler: Proje Yöneticisi, Süreç Uzmanı, vs.• Diğer: Konu Uzmanları, Denetçiler (Reviewer),

vs.

Page 35: 005 Alternatif Yazilim Surecleri [99 Slides]

Activity

Page 36: 005 Alternatif Yazilim Surecleri [99 Slides]

Artifact

Page 37: 005 Alternatif Yazilim Surecleri [99 Slides]

Unified Process Yapısı

Page 38: 005 Alternatif Yazilim Surecleri [99 Slides]

Discipline ve Workflow

Disiplin: Gereksinim Yönetimi

Workflow: Gereksinim Yönetimine ait çalışma şekli detayları

Page 39: 005 Alternatif Yazilim Surecleri [99 Slides]

Workflow Details

Page 40: 005 Alternatif Yazilim Surecleri [99 Slides]

Daha Fazla Detay “Rol Üzerinden”

Page 41: 005 Alternatif Yazilim Surecleri [99 Slides]

Daha Fazla Detay“Yapılacak İş Üzerinden”

Page 42: 005 Alternatif Yazilim Surecleri [99 Slides]

Daha Fazla Detay“Üretilenler Üzerinden”

Page 43: 005 Alternatif Yazilim Surecleri [99 Slides]

Daha Fazla Detay“Bir Adım Daha İleriye: Şablonlar”

Page 44: 005 Alternatif Yazilim Surecleri [99 Slides]

İş Akışları Modelleri Oluşturur

Page 45: 005 Alternatif Yazilim Surecleri [99 Slides]

“Ürünler ve Kullanım Teknikleri”

Page 46: 005 Alternatif Yazilim Surecleri [99 Slides]

Özetlersek

Page 47: 005 Alternatif Yazilim Surecleri [99 Slides]

Sorulamayan Soruyu Bulmak“Sorulamayan soruyu bulmak gerçekle hayali birbirinden ayırmamızı sağlar.”

John M. Berry (A.B.D.’li Filozof)

• UP diğer süreç tanımları gibi ‘geleneksel bir model’ değildir.– Varsayımları (Neden’i) açık ve belli.– Çalışma şekillerinin girdisi, çıktısı, kimlerin ne işine yaradığı ve kimler

tarafından oluşturuldukları belli.• Yapılacakları dikte etmez: Ne’nin yanında Nasıl’da vardır.• Ne’lerin neler olacağına UP’un kullanıcısı karar verebilir.• Ne mevcut değilse onu ekleyebilir: UP plug-in’leri.• Ne’sini, Nasıl’ını ve Neden’ini (en küçük yapı taşına kadar) açıkça ortaya koyan

bir sistem soyut ve anlamsız (süreç için süreç) bir kavrama dönüşmez.• UP’u çok ciddi bir hedef olan CMM-I için de daha çok programcı odaklı

Extreme Programming için de kullanabiliriz.

Page 48: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 49: 005 Alternatif Yazilim Surecleri [99 Slides]

SPEM“Software Process Engineering Metamodel”

• UML gibi OMG tarafından onaylanmaktadır. Açık bir standarttır.

• Bitmiş bir standart değildir. Ufak değişmeler (gelişmeler) söz konusu olacaktır.

• Tamamıyla Unified Process üzerine oturur.• Biz, örneklerimizde, kabaca kullanacağız.

Page 50: 005 Alternatif Yazilim Surecleri [99 Slides]

SPEM Gösterimi“Disiplinler”

XXX

Page 51: 005 Alternatif Yazilim Surecleri [99 Slides]

SPEM Gösterimi“Roller”

Page 52: 005 Alternatif Yazilim Surecleri [99 Slides]

SPEM Gösterimi“Yapılanlar”

Page 53: 005 Alternatif Yazilim Surecleri [99 Slides]

SPEM Gösterimi“Üretilenler”

Page 54: 005 Alternatif Yazilim Surecleri [99 Slides]

SPEM Gösterimi“Roller, Yapılanlar ve Üretilenler”

Page 55: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 56: 005 Alternatif Yazilim Surecleri [99 Slides]

Süreç Haritası

Page 57: 005 Alternatif Yazilim Surecleri [99 Slides]

Süreç Haritası“Çevik Süreç Tanımları”

Page 58: 005 Alternatif Yazilim Surecleri [99 Slides]

Süreç Haritası“CMMI”

Page 59: 005 Alternatif Yazilim Surecleri [99 Slides]

Süreç Haritası“Unified Process”

Page 60: 005 Alternatif Yazilim Surecleri [99 Slides]

UP Uyarlamaları

Page 61: 005 Alternatif Yazilim Surecleri [99 Slides]

Gereksinim Yönetimi“Standart UP”

Page 62: 005 Alternatif Yazilim Surecleri [99 Slides]

Analiz ve Tasarım “Standart UP”

Page 63: 005 Alternatif Yazilim Surecleri [99 Slides]

İmplementasyon “Standart UP”

Page 64: 005 Alternatif Yazilim Surecleri [99 Slides]

Bizim UP Sürecine Yaklaşımız

Page 65: 005 Alternatif Yazilim Surecleri [99 Slides]

Proje Süresince Roller• Bir kişi birden fazla rolü canlandırabilir.• Aynı kişinin canlandırdığı rollerin çıkarları bir çelişki

oluşturmamalıdır.• Bütçe ve Eleman sayımızı gözeterek ve en verimli

süreç tanımını hedefleyerek,• Aşağıdaki gibi bir kadroyla yola çıkarsak,

– Ahmet Bey: Birincil görevi Sistem Analizi– Leyla Hanım: Birincil görevi Tasarım– Mehmet Bey: Birincil görevi Veritabanı Tasarımı – Hülya Hanım: Birincil görevi Proje Yönetimi

Page 66: 005 Alternatif Yazilim Surecleri [99 Slides]

1. Gereksinimler

Page 67: 005 Alternatif Yazilim Surecleri [99 Slides]

2. Analiz

ve Tasarım

Page 68: 005 Alternatif Yazilim Surecleri [99 Slides]

3. İmplementasyon

Page 69: 005 Alternatif Yazilim Surecleri [99 Slides]

4. Test

Page 70: 005 Alternatif Yazilim Surecleri [99 Slides]

Proje Yönetimi

Page 71: 005 Alternatif Yazilim Surecleri [99 Slides]

Süreç Mühendisliği

Page 72: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 73: 005 Alternatif Yazilim Surecleri [99 Slides]

İdeal Proje Ekibi

Page 74: 005 Alternatif Yazilim Surecleri [99 Slides]

BizimProje

Ekibimiz

BizimProje

Ekibimiz

Page 75: 005 Alternatif Yazilim Surecleri [99 Slides]

Ahmet = Sistem Analisti

Page 76: 005 Alternatif Yazilim Surecleri [99 Slides]

Ahmet = UI Tasarımcısı

Page 77: 005 Alternatif Yazilim Surecleri [99 Slides]

Ahmet = Testçi

Page 78: 005 Alternatif Yazilim Surecleri [99 Slides]

Leyla = Sistem Mimarı

Page 79: 005 Alternatif Yazilim Surecleri [99 Slides]

Leyla = Tasarımcı

Page 80: 005 Alternatif Yazilim Surecleri [99 Slides]

Leyla = Programcı

Page 81: 005 Alternatif Yazilim Surecleri [99 Slides]

Mehmet = Veritabanı Tasarımcısı

Page 82: 005 Alternatif Yazilim Surecleri [99 Slides]

Hülya = Proje Yöneticisi

Page 83: 005 Alternatif Yazilim Surecleri [99 Slides]

Hülya = Süreç Uzmanı

Page 84: 005 Alternatif Yazilim Surecleri [99 Slides]

İçerik

• Yaygın Yazılım Süreçleri• İteratif Yazılım Geliştirme• Unified Process (UP) Yapısı• SPEM Gösterimi ile Yazılım Süreci Tanımlama• Pratik bir UP Yaklaşımı• Yazılım Rolleri ve Kaynak Yönetimi• Proje Hazırlık Çalışmaları

Page 85: 005 Alternatif Yazilim Surecleri [99 Slides]

Proje Hazırlık Çalışmaları“Tanımlamalar”

• Paydaş Türleri• Gereksinim Türleri• Gereksinim Değişkenleri• Kısıtlama Türleri• Risk Türleri• Metrik Türleri• Emek Türleri• Bakım Türleri• Test Türleri• UML Standardına Ekleriniz, vs. vs.

Page 86: 005 Alternatif Yazilim Surecleri [99 Slides]

1a. Paydaşlar“Kullanıcılar”

Page 87: 005 Alternatif Yazilim Surecleri [99 Slides]

1b. Paydaşlar“Proje Ekibi Adayları”

Page 88: 005 Alternatif Yazilim Surecleri [99 Slides]

1c. Paydaşlar“Proje Ekibi”

Page 89: 005 Alternatif Yazilim Surecleri [99 Slides]

2a. Gereksinim Türleri

Page 90: 005 Alternatif Yazilim Surecleri [99 Slides]

2b. Gereksinim Türleri

Page 91: 005 Alternatif Yazilim Surecleri [99 Slides]

2c. Gereksinim DeğişkenleriÖrnek: “Statü”

Page 92: 005 Alternatif Yazilim Surecleri [99 Slides]

3. Kısıtlama Türleri

Page 93: 005 Alternatif Yazilim Surecleri [99 Slides]

4. Risk Türleri

Page 94: 005 Alternatif Yazilim Surecleri [99 Slides]

5. Metrik Türleri

Page 95: 005 Alternatif Yazilim Surecleri [99 Slides]

6. Emek Türleri

Page 96: 005 Alternatif Yazilim Surecleri [99 Slides]

7. Bakım“Problem Türleri”

Page 97: 005 Alternatif Yazilim Surecleri [99 Slides]

8. Test

Page 98: 005 Alternatif Yazilim Surecleri [99 Slides]

9. UML Kapsamına Ekler“Size Özel Stereotype”

Page 99: 005 Alternatif Yazilim Surecleri [99 Slides]

İlham Kaynakları

James Bach

Watts Humphrey

Philippe Kruchten

Murray Cantor

James Rumbaugh Grady Booch

Terry Quatrani

Ivar Jacobson