|
Gereksinimlerin Yönetimi - 1 |
|
Gönderiliyor lütfen bekleyin... |
|
|
Gereksinimlerin yönetiminin amacı, projenin
müşterinin belirttiği ihtiyaçları tamamıyla karşılayacak bir biçimde
oluşturulmasıdır. Bu noktada önemli olan, amacı gerçekleştirirken zaman ve
maliyet açısından da en az çabanın sarfedilmesidir.
Şunu unutmamak gerekir ki insanlar
doğalarının bir gereği olarak fikir değiştirbilirler ve gereksinimleri de
değişebilir.
Açıklamaları dikkate
alarak daha detaylı olarak bakacak olursak, gereksinimler yönetimi,
tartışmalarla, raporlarla, iyi bir müşteri yönetimiyle birleşen ve neyin yazıya
dökülüp neyin dökülmediğini, gereksinimlerin analizi, değişiklikleri,
geçerlilikleri gibi konuları kapsayan bir süreçtir. Bu süreçte en önemli nokta
yazılım geliştirici, kullanıcı, müşteri tarafların üzerinde anlaşabildiği,
doğru bir yazılım gereksinimleri dökümanı hazırlamaktır. Bu gereksinimler
dökümanı, yazılım geliştirme çabasının kapsamını ve yazılım tasarımının,
gerçekleştiriminin, testinin temelini oluşturur.
Şekil-1 Gereksinimlerin Döküman Hiyerarşisi
Gereksinimlerin
yönetiminin amacı, müşteri ve yazılım projesi tarafından belirlenen müşteri
gereksinimleri üzerinde ortak bir anlayış/bakış açısı sağlamaktır.
Sistem
gereksinimlerinin yazılıma, donanıma, diğer sistemlere dağıtılması, dış
uzmanlar tarafından(sistem mühendisleri grubu) yapılabilir ve yazılım
mühendisliği grubunun bu dağıtımda hiçbir şekilde söz hakkı olmayabilir. Proje
sınırları içinde, yazılım mühendisliği grubu, yazılıma atanan sistem
gereksinimlerinin düzenli olarak kontrolünden ve raporlanmasından sorumludur.
Bu süreç de gereksinimlerin yönetimi ile başarıya ulaşır.
Sorumlu olunan kontrol ve
raporlamanın başarıya ulaşabilmesi için, grup başlangıçtaki ve değişikliğe
uğrayan gereksinimleri inceler. Gereksinimlerin değişmesiyle birlikte,
etkilenecek olan yazılım planları, ürünleri, aktiviteleri değişen
gereksinimleri karşılayacak bir şekilde değiştirilir.
Şekil-2 Değişimlerin Yönetimi ve Gereksinimlerin
Yönetimi
Buradan, gereksinimlerin yönetimindeki ilk adımın
gereksinimlerin tanımlanması
–son kullanıcıdan
gereksinimleri almak- olduğunu çıkarabiliriz. Eğer gereksinimler daha önceden
iş teklifi, iş anlaşması şeklinde ortaya konulduysa, yapılması gereken
gereksinimleri çıkarmak değil, sadece gereksinimlerin proje başlamadan önce
detaylarını belirlemek ve resmi bir formata sokmak olacaktır. Eğer
gereksinimler belirsiz ise, “gereksinimlerin tanımı” aşaması çok fazla analiz
ve çalışma gerektirecektir.
Ayrıca,
müşterinin ne istediği hakkında olabildiğince fazla bilgi elde etmek
gerekecektir. İlk önce sistemin ne yapacağını belirleyecek olan kullanıcılar ve
müşteriler belirlenerek, bu kişilerle konuşarak onların tam olarak ne
istediklerininin anlaşılmasına çalışılmalıdır. Bunu yaparken, konuşma
esnansında akla gelmeyen, gizli kalmış gereksinimler ortaya çıkacaktır. Bu
gizli gereksinimler, büyük ihtimalle konuştuğunuz kişinin alanında çok açık
şekilde bilinen ve gereksinim olarak söylenmeye ihtiyaç duyulmamış konular
olacaktır.
Gereksinimlerin toplanmasında başka yollar da mevcuttur.
Eğer yeni sistem varolan bir sistemin yerine geçecekse, eski sistem ve
dökümantasyonu incelenebilir. JAD (Joint Application Design) Birleşik Uygulama
Tasarımı toplantıları düzenlenebilir. Bu toplantılar geliştiriciler ile
müşterilerin tutarlı yapısal bir toplantı süreci içinde birlikte sistem tasarımı
yapmalarına dayanmaktadır. Prototipler, müşterinin erken bir zamanda ne elde
edeceğini görmesini sağlayacaktır.
Gereksinimlerin
toplanmasındaki önemli noktalar;
-->
Gereksinimlerin
detaylı bir şekilde analiz edilmesi
-->
Gereksinimlerin
birbiriyle uyumlu olması
-->
Gereksinimlerin tutarlı, gerçekçi olması
İzlenebilirlik
matrisi, tüm gereksinimlerin sistem bileşenlerine atandığını doğrulamaya yarar.
Matris aynı zamanda gereksinimlerin kaynaklarını da gösterir. İzlenebilirlik
matrisi, bir değişiklik olduğunda tüm gereksinimlerin karşılanacağını garanti
eder. Etkilenen bileşenlerin kolayca belirlenebilmesi, değişen gereksinimlerin
sistem üzerindeki etkisinin belirlenmesi, maliyetin tahmini, zaman
çizelgelerinin hazırlanması gibi konularda kolaylık sağlar.
Bu aşamalardan
sonra elde edilecek olan gereksinim tanımlanma raporu, sistem tarafından
sağlanacak fonksiyonlar, performans gereksinimleri, tasarım ve gerçekleştirim
kısıtlamaları gibi teknik konuları; hangi ürünlerin teslim edileceği, ürünlerin
teslim tarihleri, ara raporlar gibi teknik olmayan konuları içermelidir.
Gereksinimlerinin yönetiminin önemli amaçlarından biri olan
gereksinimlerin tanımı raporu şu özelliklerde olmalıdır:
1-Doğru
2-Tamamlanmış,
eksiksiz
3-Tutarlı
4-Kısa
5-
İyi düzenlenmiş
Bu
aşamadan sonra, gereksinimlerin yönetiminin bir parçası olan gereksinimleri
izleme sürecinde, değişikliğe uğrayan gereksinimler geliştirici gurp ve müşteri
tarafından karşılıklı onaylanmalıdır.
Gereksinimlerin
yönetimindeki en önemli noktalar:
Ø
Gereksinimlerin planlanması
aşaması
Ø
Gereksinim sürecini kurma
aşaması
Ø
Gereksinimlerin değişimini
kontrol etmek
Ø
Yeni gereksinimlerin
eklenmesini en azda tutmak
Ø
Takip
süreci
Ø
Müşteri ve geliştirici
arasındaki sorunları çözmek
Ø
Belirli aralıklarla
gereksinimleri gözden geçirmek
Şekil-3 Gereksinimlerin Yönetimi Yapısı
Şekil-3 Gereksinimlerin Yönetimi Yapısı
Makale:
Gereksinimlerin Yönetimi - 1 Yazılım Mühendisliği Tanıl Ergin
|
|
|
-
-
Eklenen Son 10
-
Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor
|
|