Maltepe Üniversitesi Mühendislik Fakültesi

Slides:



Advertisements
Benzer bir sunumlar
Yazılım Geliştirme Süreci
Advertisements

TS EN ISO 9001:2008 KALİTE YÖNETİM SİSTEMİ
Sistem Analizi ve Planlama
Büro Yönetimi ve Yönetici Asistanlığı
TEDARİK ZİNCİRİ YÖNETİMİ.
MODÜL 4 Organizasyon.
Maltepe Üniversitesi Mühendislik Fakültesi
BELGELEME Ian Sommerville, “Software Documentation”,
Fayda, Maliyet, İş Planlama, Raporlama, İş Tatmini
ÜNİVERSİTELERDE İŞ MÜKEMMELLİĞİ MODELİ 2 MART 2003.
Proje yönetiminde başarının yeni formülü. Daha başarılı projeler Daha ekonomik çözümler Daha özelleşmiş hizmetler için… Neden ?
DOKUZ EYLÜL ÜNİVERSİTESİ
Bilgisayarla ne yapılabilir? Bilgisayarların sınırları nelerdir?
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
ISO 9001:2008 Değişiklikleri Mart Madde No ve Değişiklikler Madde 1.2 “ürünün veya kuruluşun yapısı gereği bu standardın bir veya birkaç maddesinin.
Maltepe Üniversitesi Mühendislik Fakültesi
TESİS YÖNETİMİ DİREKTÖRLÜĞÜ
Prof. Dr. M. Erdal GÜZELDEMİR
7.1 GENEL Kuruluş, güvenli ürünler gerçekleştirmek için ihtiyaç duyulan süreçleri planlamalı ve geliştirmelidir.
Sistem Geliştirme Sistemin tanımı. Sistemin Temel özellikleri
Yazılım Proje Yönetimi
KALİTE YÖNETİMİ (EĞİTİMDE).
ELEKTRONİK ORTAMDA DENETİME GENEL BAKIŞ Prof. Dr
İSTANBUL ÜNİVERSİTESİ VATAN YAZILIMEVİ
T.C. OKAN ÜNİVERSİTESİ SOSYAL BİLİMLER ENSTİTÜSÜ SAĞLIK YÖNETİMİ YÜKSEKLİSANS 1.PROGRAM SAĞLIK HUKUKU ÖDEVİ-II HAZIRLAYAN Dr Beytullah ŞAHİN AKADEMİK DANIŞMAN.
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
İŞ KALİTESİ ve MALİYET İLİŞKİLERİ
27 TEDAVİ PLANLARI.
END3061 SİSTEM ANALİZİ VE MÜHENDİSLİĞİ
Kurumsal İçerik Yönetimi Kapsamında Bilgi Güvenliği
Kalite Yönetim Prensipleri (Devam)
Performans ölçme ve değerlendirme güz
Kalite Yönetim Sistemlerinin Tarihsel Gelişimi, ISO 9000 Standartlar Ailesi, Kalite Yönetim Prensipleri 2. Hafta.
Harun ÖKNEL Serdar ATA Ahmet KIRMIZIOĞLU
PERFORMANS KAVRAMI PERFORMANSIN BOYUTLARI
ISO/TS 16949:2009 (Hafta 10) ISO 9001:2008’E GÖRE FARKLAR.
Kamu Kuruluşlarında Stratejik Yönetim
ISO/TS 16949:2009 (Hafta 8) ISO 9001:2008’E GÖRE FARKLAR.
AYDIN ÇEVRE VE ŞEHİRCİLİK İL MÜDÜRLÜĞÜ
Süreç Yönetimi.
ISO ÇEVRE YÖNETİM SİSTEMİ TEMEL EĞİTİMİ
ISO 9001:2015 KALİTE YÖNETİM SİSTEMİ ŞARTLAR
Kalite Yönetimi Genel Tanımlar.
KALİTE YÖNETİM SİSTEMİ
Müşterilere Karar Vermelerinde Yardımcı Olmada Pazarlama Araştırması Kullanma Bu bölüme araştırma sürecini ele alarak başlanmaktadır. Daha sonra.
Bölümün Amacı Bu bölümün amacı, örgütlerin peşinde koştukları hedeflerin türlerini ve yöneticilerin bu hedeflere ulaşmak için kullandıkları rekabetçi.
SİSTEM VE YAZILIM Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur. Yazılım, bilgisayar sistemlerinin bir bileşeni.
Topluluk İnovasyon Girişimi Süreç Açıklaması ve Yol Haritası Dokümanı 26 Mayıs
KALİTE YÖNETİM SİSTEMLERİ. Kalite yönetim sistemi, amaçlanan kaliteye ulaşmak amacıyla ilerletilen tüm süreçleri, açıklanan prosedürleri, ve benimsenen.
Toplam Kalite Yönetimi
Proje Oluşturma ve Yönetimi
DAVRANIŞ BİLİMLERİNİN ETKİLENDİĞİ ÇAĞDAŞ YAKLAŞIMLAR
KALİTE GÜVENCESİ VE STANDARTLARI
 Bir projeyi yönetmek üzere görevlendirilen ve projeyi, mümkün olan en yüksek üretkenlik, en düşük belirsizlik ve risk ile yürütmekten sorumlu kişidir.
İNSAN KAYNAKLARI YÖNETİMİ
Bilgisayar Mühendisliğindeki Yeri
Yazılım Mühendisliği YYurtaY. Ekip çalışması
Sistem Analizi ve Tasarımı
KAMU KURUMLARINDA SÜREÇ YÖNETİMİ ve
Konu 3 Kalite kontrolünün amaçları
Bilgi Sistemleri Hafta4
Yazılım Mühendisliği Standartları
Performans ve Ücret Yönetimi Yrd. Doç. Dr. Özlem BALABAN
Kalite Yönetim Prensipleri (Devam)
Yükseköğretim Kurulu Kalite Çalışmaları
NİŞANTAŞI ÜNİVERSİTESİ
Yazılım Mühendisliği Temel Süreçler - Sistem Analizi
İçerik Tarihçe Hizmetlerimiz ve Çözümlerimiz Organizasyon Yapısı
PERFORMANS KAVRAMI PERFORMANSIN BOYUTLARI
Sunum transkripti:

Maltepe Üniversitesi Mühendislik Fakültesi YAZILIM KALİTE GÜVENCESİ (SOFTWARE QUALITY ASSURANCE) Yrd. Doç. Dr. Fatih YÜCALAR fatihy@maltepe.edu.tr YZM 410 Maltepe Üniversitesi Mühendislik Fakültesi

2. BÖLÜM YAZILIM SÜRECİ YZM 410 - Yazılım Kalite Güvencesi

Genel Bakış… Süreç Kavramı Süreç Yaklaşımı Organizasyon ve Süreç Yazılım İçin Süreç Kavramı Süreç Teknolojisinin Amacı Bir Sürecin Kavramsal Modeli Yazılım Mühendisliği Süreci Nedir? Süreç Yaklaşımı Yazılım Süreç Kurma (Software Process Establishment) Yazılım Süreç Değerlendirme (Software Process Assessment) Yazılım Süreç İyileştirme (Software Process Improvement) Organizasyon ve Süreç Bu bölüm kapsamında, Süreç Kavramı ve Yaklaşımını inceleyeceğiz. Bu bağlamda, önce sürecin ne olduğunu öğreneceğiz, daha sonra da süreç kavramını yazılım için ele alacağız. Süreç teknolojisinin amacını ve bir sürecin kavramsal modelini göreceğiz. Süreç ile ilgili temel kavramları öğrendikten sonra süreç yaklaşımı ile ilgili yaklaşımları ele alacağız. Bu yaklaşımlar neler?  Yazılım Süreç Kurma, Yazılım Süreç Değerlendirme, Yazılım Süreç İyileştirme Son olarak ta, organizasyon ve süreç birlikteliğini inceleyeceğiz. YZM 410 - Yazılım Kalite Güvencesi

Süreç Nedir? “Ürün değil süreç önemlidir…” Süreci, yazılım ve yazılımla bütünleşik ürünlerin geliştirilmesi ve bakımı için kullanılan aktivitelerin, metotların, uygulamaların ve dönüşümlerin oluşturduğu bir bütün olarak tanımlayabiliriz. GİRİŞ: Bir ürünün kalitesi o ürünü incelemekle/sınamakla belirlenmez. Bir ürününün kalitesi büyük oranda onu üreten organizasyona ve üretim süreçlerine bağlıdır. Bu, Toplam Kalite Yönetimi ilkelerinden biridir. Süreç olgunlaşmadan kalite tesadüfe kalır. Yazılımla Bütünleşik Ürünler: proje planları, tasarım dokümanları, kod, test planları. İKİNCİ MADDEDEN SONRA: En basit anlamda süreci, başı sonu belli, ara adımları iyi belirlenmiş işlemler dizisi olarak da tanımlayabiliriz. YZM 410 - Yazılım Kalite Güvencesi

Süreç Kavramı Sürecin amacı, bir standart oluşturmak, değişkenlikleri azaltmak ve devamlı iyileştirmeler sağlamaktır. Bir sürecin göze çarpan karakteristikleri; Süreç bir amaca erişmek için bir işi yapma usulüdür, Genelde, alt süreç, adım ve işlemlerden oluşur, Yazılı ve grafiksel olarak belgelenmiştir, Tekrarlanırlar, Girdileri, çıktıları vardır, Aktörleri vardır, Uyduğu kurallar, politikalar vardır. Büyük (karmaşık) veya küçük (basit) tanımlanabilir. YZM 410 - Yazılım Kalite Güvencesi

Süreç Kavramı (devam…) Süreç örneği verirsek; Müşteri ilişkileri süreci, tek bir süreç olabilir veya bu süreci; pazar araştırması süreci, müşteri isteklerinin belirlenmesi süreci, fizibilite süreci, isterlerin modellenmesi süreci, spesifikasyonların belirlenmesi süreci gibi alt süreçlere ayrılabiliriz. Bu anlattıklarımızın ışığında bir süreç örneği vermek istersek; müşteri ilişkileri sürecini verebiliriz. YZM 410 - Yazılım Kalite Güvencesi

Örnek: Tipik Bir İyi Firma Süreci Test mühendisi, bir “sorun raporu (problem report)” düzenler. Sorun raporunu proje yöneticisine yollar. Proje yöneticisi, “sorun raporunu” inceler ve bir değişim istemi (change request) düzenler. Değişim istemini analizciye verir. Analizci değişim istemini inceler, etkilenen modülleri belirler, o modüllerdeki isterlere ait değişiklikleri yapar. Tasarım değişiklikleri yapılır ve değişiklik istemi 1 belgesi üretilir. Bu belgeyi konfigürasyon yöneticisine verir. Entegrasyon ve Test aşamasında bir hata bulundu. Ne olacak? YZM 410 - Yazılım Kalite Güvencesi

Örnek: Tipik Bir İyi Firma Süreci (devam…) Konfigürasyon yöneticisi, isterler ve tasarım belgelerindeki konfigürasyon değişikliğini yapar. Değişiklik isteği 1’i programcıya verir. Programcı istenilen kod değişikliğini yapar. Yeni kodu konfigürasyon yöneticisine geri verir. Konfigürasyon yöneticisi, yeni kodu entegrasyon ve teste gönderir. Sonuçlar olumlu gelirse, ürün piyasaya sürülür. YZM 410 - Yazılım Kalite Güvencesi

Yazılım İçin Süreç Kavramı Yazılımın nasıl gerçekleştirildiğini, yönetildiğini, ölçüldüğünü, planlandığını, desteklendiğini, organize edildiğini, işletildiğini, iyileştirildiğini, ... vb. işlerin nasıl yapıldığının anlatılıp, tanımlanmasına “yazılım süreci” adı verilir. Tüm ciddi yazılım firmaları, çalışmalarını süreçlere dayandırmaktadır. Yazılım süreçleri ile ilgili standartlar ortaya çıkmıştır ve gelişmektedir. YZM 410 - Yazılım Kalite Güvencesi

Yazılım İçin Süreç Kavramı (devam…) Yazılım süreçlerine örnek olarak aşağıdaki süreçler verilebilir; Yazılım Belirtimi (Mühendislik), Tasarım x Gerçekleştirme (Mühendislik), Doğrulama, Sağlama (Destek), İşletme (Destek), Kalite Yönetimi (Yönetim), Proje Yönetimi (Yönetim). YZM 410 - Yazılım Kalite Güvencesi

Süreç Teknolojisinin Amacı Bir süreç modeli ortaya koymak ve tüm yazılım faaliyetlerini bu modele dayandırmaktır. Ayrıca bilgisayar destekli süreç desteği sağlamaktır. BİRİNCİ MADDEDEN SONRA: Modeller, süreç değerlendirme ve iyileştirmenin temelini oluşturmuştur. Şekilde, klasik üretim üzerinde süreç teknolojisinin yeri görüyoruz. YZM 410 - Yazılım Kalite Güvencesi

Bir Sürecin Kavramsal Modeli Süreç modelinde ana unsurlardan biri aktör ve onun rolüdür. Diğer unsurlar ise; aktiviteler, ürünler, araçlar ve politikalardır. YZM 410 - Yazılım Kalite Güvencesi

Yazılım Mühendisliği Süreci Nedir? Kullanıcı gereksinimlerinin yazılım haline dönüştürülmesi için gerekli bütün yazılım mühendisliği aktiviteleri serisidir. Yazılım mühendisliği süreci, oluşturulacak teknolojileri yani teknik yöntemleri ve otomatikleştirilmiş araçları içine alır. YZM 410 - Yazılım Kalite Güvencesi

Süreç Yaklaşımı Süreç yaklaşımı üç aşamadan oluşur: Yazılım Süreç Kurma (Software Process Establishment) Yazılım Süreç Değerlendirme (Software Process Assessment) Yazılım Süreç İyileştirme (Software Process Improvement) Süreç yaklaşımında amaç iyileştirmedir (SPI). Ama önce süreç kurma (SPE) ve süreç değerlendirme (SPA) aşamaları gelir. Süreç kurma (SPE) için, uluslararası bir modelin referans alınması tavsiye edilir. Değerlendirme (SPA) için de mutlaka bir uluslararası model gerekir. YZM 410 - Yazılım Kalite Güvencesi

Yazılım Süreç Kurma (SPE) Yazılım üreten bir organizasyonda süreçlerin tanımlanması, belgelenmesi, personelin eğitilmesi, uygulamanın başlaması, rayına oturması ve normal akışa girmesi; böylece kararlı (stabil) bir üretim ortamına erişilmesi sürecine “yazılım süreç kurma (software process establishment)” diyoruz. YZM 410 - Yazılım Kalite Güvencesi

Yazılım Süreç Kurma (SPE) (devam…) Referans modelini belirle ve incele. Kendi ihtiyaçlarını belirle ve incele. Modeli kendi durumunla uyuşturup, uyarlama ve adaptasyon ile süreçlerini tanımla. Kendi süreç sisteminle 1-3 yıl arası çalış. Gerekli gördüğün değişiklikleri yap. Önce proje düzeyindeki süreçleri, daha sonra kurumsal süreçleri ele al. Projeler arasında farklar olması muhtemeldir. Süreçler oturunca değerlendirme (SPA) yaptır. YZM 410 - Yazılım Kalite Güvencesi

Yazılım Süreç Kurma (SPE) (devam…) Standart modellerde 3 farklı yolla değişiklik yapılabilir: uyarlama (tailoring), ekleme (extend), değiştirme (adaptation) GİRİŞ: Bir önceki slaytta, “Gerekli gördüğün değişiklikleri yap” demiştik. Standart modellerde 3 farklı yol ile değişiklik yapılabilir. YZM 410 - Yazılım Kalite Güvencesi

Süreç Değerlendirme (SPA) Yazılım süreç değerlendirme (software process appraisal), bir organizasyonun yazılım süreçlerinin disiplinli bir biçimde incelenmesi ve notlanmasıdır. İki amacı vardır: Kendi durumunu bilerek bir iyileşme programı oluşturma, Yetenek belirleme (iş/proje verebilmek için). Değerlendirme, uluslararası standart bir metoda göre yapılmalıdır. SON MADDEDE SÖYLE: Çünkü kıyaslama yani benchmarking yapabilmek için, değerlendirmenin uluslararası standart bir metoda göre yapılması gerekir. YZM 410 - Yazılım Kalite Güvencesi

Süreç Değerlendirme (SPA) (devam…) Süreç değerlendirme, başarımın nicel ölçümü biçiminde olmalıdır. Değişik model ve standartlar vardır: CMM, Bootstrap, CMMI, ve ISO 15504 sürece veya yazılım üreten gruba not verirler. ISO 9001 ve TickIT geçti-kaldı notu verir. Firmaların kendi iç modelleri de vardır. Süreç kalitesinin iyileştirebilmesi için öncelikle, süreçlerin mevcut durumunu değerlendirecek, kanıtlanmış, nicel, tutarlı ve güvenilir bir metoda ihtiyaç vardır. Bunu süreç değerlendirme modelleri sağlar. (CMM, SPICE, CMMI) YZM 410 - Yazılım Kalite Güvencesi

Süreç İyileştirme (SPI) Değerlendirme sonuçlarına göre, süreçleri uygun ve gerekli görülen biçimde değiştirmek üzere bir programın hazırlanması, programın uygulamaya konması (SPE gibi); sonuçlarının yeniden değerlendirilerek (SPA) beklenen ve istenen iyileşmenin (not yükselmesi) sağlanmasıdır. Organizasyonun iş amaçlarının yerine getirilmesini sağlar; verimlilik artışı, kalite artışı, müşteri memnuniyeti. Bir sanayi ürününde mevcut durumu değerlendirme, belirli bir süre içinde çıkan hatalı parça sayısı ile olabilir. İyileştirme programı da, işçinin eğitimi veya makinenin kalibrasyonunu düzeltme gibi işler olabilir. YZM 410 - Yazılım Kalite Güvencesi

Süreç İyileştirme (SPI) (devam…) Süreç değerlendirmenin amacı, iyileştirmeyi sağlamaktır. SPI konusu, SPA modellerinde ele alınır. SPI; hedeflenen bir not için yapılabilir, sürekli iyileşme için yapılabilir, işletme hedefleri göz önüne alınarak yapılabilir. YZM 410 - Yazılım Kalite Güvencesi

Ölçme ve İyileştirme Hedefi Biz neredeyiz? Dünya nerede? SPA: Süreç Değerlendirme Karşılaştırma Normları Nerede olmak istiyoruz… İş İhtiyaçları YZM 410 - Yazılım Kalite Güvencesi

Süreç Değerlendirme Ortamı tarafından incelenir risklerini belirler yeteneğini ve değişiklikleri belirler Süreç Değerlendirme öncülük eder öncülük eder Süreç İyileştirme Yetenek Belirleme motive eder YZM 410 - Yazılım Kalite Güvencesi

Organizasyon ve Süreç Kaliteli yazılım geliştirme ancak uygun bir yapılanma ile gerçekleştirilir. Organizasyonların olgunluk dereceleri geliştirdikleri yazılımın kalitesine doğrudan etki eder. Organizasyonların olgunlaştırılması için, yazılım ve süreç arasındaki ilişkinin iyi bilinmesi ve uygulanması gereklidir. Süreç belirleme, iyileştirme ve bunlara bağlı olarak yetenek belirleme amacıyla çeşitli modeller oluşturulmuştur. Kalite değerlendirme uygulaması içinde sıradüzensel olarak, belgelendirilecek kurumun seçilmesi, ön değerlendirme etkinlikleri, değerlendirme süreci, sürekli inceleme etkinlikleri, yeniden değerlendirme aşamaları uygulanır. YZM 410 - Yazılım Kalite Güvencesi

Olgun Organizasyonlar… Yazılım geliştirme ve bakımını yönetecek bir yetenek tüm organizasyon çapında bulunmaktadır. Yazılım geliştirme süreci, çalışanlara ve yeni elemanlara doğru bir şekilde iletilmektedir. Tüm aktiviteler belirli bir plana göre yürütülmektedir. Tanımlı süreçler içersindeki roller ve sorumluluklar tüm proje ve organizasyon için belirlenmiştir. Disiplinli bir süreç takip edilmekte ve tüm katılımcılar tarafından bunun değeri bilinmektedir. GİRİŞ: Olgun bir organizasyonun en belirgin özellikleri… YZM 410 - Yazılım Kalite Güvencesi

Olgun Olmayan Organizasyonlar… Yazılım geliştirme süreçleri belgelenmemiştir. Yazılım geliştirme süreçleri proje sırasında yönetici ve uygulayıcılar tarafından doğaçlama ile oluşturulmaktadır. Belirtimi yapılmış olsa bile, belirli bir yazılım geliştirme süreci takip edilmemekte ve mecbur tutulmamaktadır. Yöneticiler sürekli kriz çözmekle meşguldür. Ürün kalitesini ölçmek için tutarlı bir temel yoktur. Kaliteyi yükseltici etkinlikler projeler gecikince çoğu kez atlanmaktadır. Olgun olmayan bir organizasyonun özellikleri ise … Kaliteyi yükseltici etkinlikler = belgelendirme, gözden geçirme, test YZM 410 - Yazılım Kalite Güvencesi