Yazılım Mühendisliği Standartları

advertisement
Yazılım Mühendisliği Standartları
1
Yazılım Mühendisliği Standartları

Standartlar, ağırlıklı olarak süreçlere yönelik
olmakla birlikte, ürünle ilgili standartlar da
olabilir.
–
–
2
Standartlar, belirli programlama dilleriyle veya
teknolojilerle ilgili değildir.
Standartlar, belirli teknolojilerin yaşam süresinden
daha uzun süre geçerliliklerini korurlar.
Standartlar – ne için?

Standartlar, ağırlıklı olarak büyük ölçekli
yazılım geliştirmede yaygın olan konuları
içerirler:
–
–
–
–
3
Konfigürasyon Yönetimi
Kalite Güvence
Sınama/Doğrulama
..
Faydaları -1

Yazılım mühendisliği uygulamalarının tanımlı
olmasına katkıda bulunur ve böylece ürün
kalitesinin artmasını sağlarlar.
–
–
–
4
Yazılım üreticisi ve geliştiricisi arasında ortak bir
terminoloji oluştururlar,
Ürünün değerlendirilmesi için objektif kriterler
sağlarlar,
Güvenilirlik gibi kavramların tanımlanması için
yöntemler sunarlar.
Faydaları -2


5
Standartların uygulanması, bir işin itina ve
sorumluluk ile yapıldığına dair bir gösterge
oluşturur.
Yazılım Mühendisliği standartları, hem
yazılım geliştiricisi hem de alıcısı için yararlar
sağlar ve yazılım mühendisliği disiplininin
gelişimini destekler.
Kaynaklar

Uluslar arası Bilişim standartları için,
–

6
International Organization for Standartization
(ISO), International Electrtechnical Commission
(IEC) ve International Telecommunications Union
çalışmalar yapmaktadır.
IEEE Computer Society Software
Engineering Standartları Komitesi, standart
geliştirme çalışmaları kapsamında,
geliştirilmiş standartlardan yararlanmıştır.
IEEE Yazılım Müh. Standartları


7
1990’lı yıllarda başlayan bir çalışma ile
varolan standartların birleştirilmesi ve
standartlar arasında seçimin kolaylaştırılması
amaçlanmıştır.
2000 yılında yayınlanan standartlar kataloğu,
3 temel organizasyon kriteri etrafında
şekillenmiştir:
IEEE Standartların Yapısı -1
1.
Normative düzeyler: Standartlar, farklı
kullanıcılar için farklı ayrıntı düzeyinde yol
gösterici olmalıdır.
Terminoloji, genel kurallar,ilkeler, standartlar vb.
2.
Yazılım Mühendisliği Amaçları: Standartlar,
4 temel konuyu hedefler:
Müşteri, süreç, ürün ve kaynak.
Sf.80’deki soyut yazılım mühendisliği modelini esas
alır.
8
IEEE Standartların Yapısı -2
3.
9
Diğer disiplinlerle olan ilişkiler: Standartlar,
kalite yönetimi, proje yönetimi vb. sistem
mühendisliği disiplinleriyle bağlantılıdır. Bu
alanlardaki standartları benimseyerek, aynı
konuların yeniden tanımlanmasını önler.
IEEE/IEC 12207 Standartı -1/2

10
Yazılım için tüm yaşam döngüsünü içeren bir
çerçeve oluşturur ve bu yazılım süreçlerinin,
organizasyonel boyutunu hem teknik bakış
açısından hem de kurumun iş(business)
bakış açısından ele alır.
IEEE/IEC 12207 Standartı -2/2



Prosedür düzeyinde değil, süreç düzeyinde
tanımlanmıştır.
Bir prosedürün adım adım tanımlanması yerine,
süreç boyunca gerçekleştirilmesi gereken
sorumlulukları tanımlar.
3 Kategori tanımlanmıştır:
1.
2.
3.
11
Primary processes
Supporting processes
Organizational Processes
IEEE/EIA 12207 Standartı -1/6


12
IEEE/EIA 12207, Software Life Cycle
Processes, IEEE Standartlar kataloglarındaki
tüm müşteri ve süreç standartlarını kapsar.
1995 ISO/IEC standartının uyarlanmasından
oluşur.
IEEE/EIA 12207 Standartı – 2/6

IEEE/EIA 12207 standartı;
–
–
–
–
Yazılımın geliştirilmesi, temin edilmesi,çalıştırılması,
Bu fonksiyonların kalite güvence, konfigürasyon yönetimi,
doğrulama, sınama vb. ile desteklenmesi,
Kuruluşun süreçleri ve personelinin yönetilmesi,
Bir yazılım ürününün yaşam döngüsü boyunca taraflar
(kullanıcılar ve geliştiriciler) arasındaki anlayışın
geliştirilmesi,
için kullanılabilir.
13

14
IEEE/EIA 12207 Standartı yazılım yaşam
döngüsü boyunca gerçekleştirilebilecek
aktiviteleri 5 temel süreç, 8 destekleyen
süreç ve 4 kurumsal süreç olarak gruplar.
Yaşam Döngüsü Destek Süreçleri – 3/6


15
Bir destek süreci, bir başka süreci, sürecin bir
parçası olarak ancak ayrı bir amaç ile
destekler ve yazılım projesinin başarı ve
kalitesini artırır.
8 destek süreci tanımlanmıştır.
Destek Süreçleri – 4/6
1.
2.
3.
4.
5.
6.
7.
8.
16
Dökümantasyon
Konfigürasyon yönetimi
Kalite güvence
Doğrulama
Sınama
Review süreçleri
Kontrol(Audit) süreçleri
Problem çözme süreçleri
Kurumsal Yaşam Döngüsü Süreçleri 5/6

Bir kuruluş tarafından altyapıyı oluşturmak ve
daha sonra sürekliliği sağlamak için kullanılır.
–
–
–
–
17
Yönetim süreçleri
Altyapı(infrastructure) süreçleri
İyileştirme süreçleri
Eğitim süreçleri
Download