Kuchta Jarosław Jakość Oprogramowania. Modele dojrzałości procesu wytwarzania oprogramowania CMM/CMMI

Podobne dokumenty
INŻYNIERIA OPROGRAMOWANIA Jakość w projekcie informatycznym - normy

CMM. Capability Maturity Model for Software. Capability Maturity Model for Software - Strona 1 z 6

Metodologia weryfikacji wymagań IRIS w obszarze Projektowania i Rozwoju w teorii i praktyce. Szymon Wapienik TUV NORD Polska

Jakość w procesie wytwarzania oprogramowania

PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB KLUCZ ODPOWIEDZI. Część DODATEK

ISO 9000/9001. Jarosław Kuchta Jakość Oprogramowania

Wstęp do zarządzania projektami

Zarządzanie zmianą - rozwój zarządzania procesowego wg ISO 9001:2015

Goal Question Metrics. Jarosław Kuchta Jakość Systemów Informatycznych

Cechy charakterystyczne tworzenia oprogramowania w Inżynierii Biomedycznej. Wykładowca Dr inż. Zofia Kruczkiewicz

Wstęp do zarządzania projektami

Analityk i współczesna analiza

OD JAKOŚCI DO TRWAŁOŚCI REZULTATÓW W PROJEKTACH ERASMUS+

Wstęp do zarządzania projektami

Wprowadzenie w tematykę zarządzania projektami/przedsięwzięciami

INSTRUKCJA ZARZĄDZANIA RYZYKIEM W PROJEKTACH I PROGRAMACH STRATEGICZNYCH

Metodyki zarządzania projektami PRINCE2

Zarządzanie projektami IT

Dojrzałość procesowa organizacji

Projekt Kompetencyjny - założenia

ISO 9001:2015 przegląd wymagań

dr Stanisław Gasik Podstawy konkurencyjności w projektach Koszt Wartość

Inżynieria Programowania Zarządzanie projektem

Skrót wymagań normy ISO 9001/2:1994, PN-ISO 9001/2:1996

Inżynieria Programowania Zarządzanie projektem. Plan wykładu. Motto. Motto 2. Notatki. Notatki. Notatki. Notatki.

Ryzyko w świetle nowych norm ISO 9001:2015 i 14001:2015

Etapy życia oprogramowania

Państwowa Wyższa Szkoła Zawodowa w Elblągu KSIĘGA JAKOŚCI

Administracja jako organizacja zarządzana procesowo

Norma to dokument przyjęty na zasadzie konsensu i zatwierdzony do powszechnego stosowania przez

INŻYNIERIA OPROGRAMOWANIA Wykład 6 Organizacja pracy w dziale wytwarzania oprogramowania - przykład studialny

Michał Gadomski. Grzegorz Poręcki

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010

Zastosowania informatyki w gospodarce Projekt

PLAN ZARZĄDZANIA WYMAGANIAMI PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

Normy ISO serii Normy ISO serii Tomasz Greber ( dr inż. Tomasz Greber.

System. zarządzania jakością. Pojęcie systemu. Model SZJ wg ISO 9001:2008. Koszty jakości. Podsumowanie. [Słownik języka polskiego, PWN, 1979] System

AL 1302 ZARZĄDZANIE PROJEKTAMI W OPARCIU O METODYKĘ PRINCE2

KSIĘGA JAKOŚCI 8. POMIARY, ANALIZA, DOSKONALENIE

1

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Dojrzałość procesowa subiektywnie i obiektywnie

Część I - Załącznik nr 7 do SIWZ. Warszawa. 2011r. (dane Wykonawcy) WYKAZ OSÓB, KTÓRYMI BĘDZIE DYSPONOWAŁ WYKONAWCA DO REALIZACJI ZAMÓWIENIA

Staże i praktyki zagraniczne dla osób kształcących się i szkolących zawodowo

Rozdział 5: Zarządzanie testowaniem. Pytanie 1

KSIĘGA JAKOŚCI 8 POMIARY, ANALIZA I DOSKONALENIE. Państwowa WyŜsza Szkoła Zawodowa w Elblągu. 8.1 Zadowolenie klienta

Marek Krętowski Wydział Informatyki PB. Wersja 1.1 IO2 (wyk.

Szkolenie Stowarzyszenia Polskie Forum ISO Zmiany w normie ISO i ich konsekwencje dla organizacji Warszawa,

CMMI Doskonalenie Procesów w Organizacji XII

Certyfikacja systemu zarządzania jakością w laboratorium

Agile vs PRINCE /2015 I rok st. magisterskie Informatyka

PRINCE2. Metodyka zarządzania projektami. Na podstawie prezentacji R. Radzik, J. Binkiewicz, K. Kasprzak

Zmiany w standardzie ISO dr inż. Ilona Błaszczyk Politechnika Łódzka

OPIS RÓL PROJEKTOWYCH

Księga Zintegrowanego Systemu Zarządzania ODPOWIEDZIALNOŚĆ KIEROWNICTWA

Spis treści Wstęp 1. Wprowadzenie 2. Zarządzanie ryzykiem systemów informacyjnych

Opis metodyki i procesu produkcji oprogramowania

Szkolenie: Zarządzanie cyklem projektu w Jednostkach Samorządu Terytorialnego

Zmiany wymagań normy ISO 14001

Fundusze UE, jako środki publiczne, wymagają starannego wydatkowania.

Wpływ SZŚ na zasadnicze elementy ogólnego systemu zarządzania przedsiębiorstwem. Błędy przy wdrażaniu SZŚ

Obowiązuje od: r.

Charakterystyka systemu zarządzania jakością zgodnego z wymaganiami normy ISO serii 9000

Zarządzanie projektami a zarządzanie ryzykiem

System antyfraudowy w praktyce. marcin zastawa wiceprezes zarządu. Warszawa, października 2006r.

Proces certyfikacji ISO 14001:2015

Wprowadzenie, podstawowe pojęcia, projekt a produkt Wykład1

Zarządzanie jakością wg norm serii ISO 9000:2000 cz.1 system, kierownictwo i zasoby

Zarządzanie jakością

Agile Project Management

Dojrzałość procesowa subiektywnie i obiektywnie

Wdrażanie zarządzania jakością na uczelni

DCT/ISO/SC/1.02 Podręcznika Zintegrowanego Systemu Zarządzania w DCT Gdańsk S.A. Informacja dla Klientów

Zarządzanie projektami. Porównanie podstawowych metodyk

Zarządzenie Nr W ojewody Dolnośląskiego z dnia sierpnia 2016 r.

DCT/ISO/SC/1.01 Księga Jakości DCT Gdańsk S.A. Informacja dla Klientów

Zarządzanie konfiguracją produktu w całym cyklu Ŝycia. Aleksandra Grzywak-Gawryś Warsztaty Rola IRIS w branŝy kolejowej

2.11. Monitorowanie i przegląd ryzyka Kluczowe role w procesie zarządzania ryzykiem

Projekt. Prince2 PRoject. IN Controlled Environments PROCESY KOMPONENTY TECHNIKI

Poziomy zarządzania projektem w odniesieniu do ról i odpowiedzialności

JAK SKUTECZNIE PRZEPROWADZAĆ AUDITY

MSF. Microsoft Solution Framework

Poziom 1 DZIAŁANIA DOSKONALĄCE Data:

1/ Nazwa zadania: Dostawa, wdrożenie i serwis informatycznego systemu zarządzania projektami dla Urzędu Miejskiego Wrocławia wraz ze szkoleniem.

ISO w przedsiębiorstwie

Skuteczność => Efekty => Sukces

Działania korekcyjne, korygujące i zapobiegawcze oraz nadzór nad niezgodnościami

Zmiany i nowe wymagania w normie ISO 9001:2008

Programowanie obiektowe

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Monitorowanie i kontrola testów według modelu TMMi

Wprowadzenie w tematykę zarządzania przedsięwzięciami/projektami. dr inż. Agata Klaus-Rosińska

Opis Usług Portfel IT Consulting

Zarządzanie kompetencjami

Team Prevent Poland Sp. z o.o. Graficzna prezentacja struktury ISO 9001:2015 i IATF 16949:2016

Wprowadzenie, podstawowe pojęcia, projekt a produkt Wykład1

Przegląd systemu zarządzania jakością

WZ PW Norma ISO/IEC 27001:2013 najnowsze zmiany w systemach zarzadzania bezpieczeństwem informacji IT security trends

Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami

Transkrypt:

Kuchta Jarosław Jakość Oprogramowania Modele dojrzałości procesu wytwarzania oprogramowania CMM/CMMI

Krótka historia CMM/CMMI 1986 Software Engineering Institute (SEI) - schemat dojrzałości procesu wytwarzania oprogramowania 1991 model dojrzałości możliwości dla oprogramowania Capability Maturity Model for Software SW-CMM Od 1991 wiele modeli CMM dla różnych dyscyplin: inżynieria oprogramowania inżynieria systemów akwizycja oprogramowania zarządzanie siłą roboczą zintegrowane tworzenie produktów i procesów 2002 CMMI (CMM Integration) Jakość Oprogramowania CMM/CMMI 2

CMM

Spostrzeżenia W miarę dojrzewania organizacji proces wytwarzania oprogramowania staje się coraz lepiej zdefiniowany i coraz spójniej zaimplementowany w danej organizacji. Możliwości procesu stanowią środek do przewidywania najbardziej prawdopodobnych rezultatów następnego projektu oprogramowania, którego wytworzenia podejmie się organizacja Dojrzałość procesu zakłada potencjalny wzrost jego możliwości. W miarę wzrostu dojrzałości procesu organizacja instytucjonalizuje proces poprzez swoją politykę, standardy i struktury organizacyjne. Instytucjonalizacja pociąga za sobą tworzenie infrastruktury i kultury w zakresie metod, praktyk i procedur, tak że pozostają one zachowane nawet wówczas, gdy osoby, które je pierwotnie zdefiniowały odejdą. Jakość Oprogramowania CMM/CMMI 4

Poziomy dojrzałości Optymalizowany Zarządzany 4 5 Zdefiniowany 3 Powtarzalny 2 Inicjalny 1 Jakość Oprogramowania CMM/CMMI 5

Poziom 1. inicjalny Proces programowania jest organizowany ad hoc, czasami nawet chaotycznie. Często pojawiają się kryzysy związane z przekroczeniem harmonogramu lub budżetu. Procesy nie są zdefiniowane lub są słabo zdefiniowane. Kryzysy powodują odejście od założonych procedur i powrót do kodowania i testowania. Sukces zależy od indywidualnego wysiłku zaangażowanych ludzi, wyjątkowego kierownika projektu, doświadczonego i wydajnego zespołu. Ewentualny sukces nie może być powtórzony, chyba że zostanie zaangażowany ten sam zespół ludzi. Jakość Oprogramowania CMM/CMMI 6

Poziom 2. powtarzalny Ustanowiono podstawowe procesy zarządzania projektem. Kierownicy projektów kontrolują koszty, harmonogram i funkcjonalność oprogramowania. Utrzymuje się konieczną dyscyplinę procesu. Rejestruje się doświadczenia dla powtórzenia wcześniejszych sukcesów w podobnych projektach. Jakość produktów jest powtarzalna pod warunkiem podobieństwa projektów. Jakość Oprogramowania CMM/CMMI 7

Poziom 3. zdefiniowany Procesy są dokumentowane i standaryzowane zarówno w zakresie zarządzania, jak i inżynierii oprogramowania. Wszystkie procesy są integrowane w danej organizacji w standardowy proces programowania. We wszystkich projektach wykorzystuje się zatwierdzone, przykrawane wersje standardowego procesu. Jakość produktów jest przewidywalna i stała. Jakość Oprogramowania CMM/CMMI 8

Poziom 4. zarządzany Organizacja określiła w sposób ilościowy cele jakościowe w zakresie procesów i produktów. Jakość procesów i produktów jest mierzona i rejestrowana we wspólnej dla organizacji bazie danych. Wyniki pomiarów są rozumiane i analizowane w celu kontrolowania procesu programowania. Zapewniona jest przewidywalnie wysoka jakość produktów. Jakość Oprogramowania CMM/CMMI 9

Poziom 5. optymalizowany Wdrożono ciągłe udoskonalanie procesu programowania przez analizowanie pomiarów efektywności procesu. Zdefiniowano słabości i mocne strony organizacji. Słabości są eliminowane, mocne strony są preferowane. Wprowadzane są innowacyjne pomysły i technologie mające usprawnić proces programowania. Jakość Oprogramowania CMM/CMMI 10

prawdopodobieństwo ukończenia Poziom dojrzałości a przewidywalność wyników 5 Na poziomie 5. budżet i harmonogram są prawie zawsze w założonych granicach 4 3 2 1 Na poziomie 1. budżet i harmonogram są prawie zawsze przekroczone Czas, koszt,... Jakość Oprogramowania CMM/CMMI 11

Kluczowe obszary procesowe 1 Inicjalny -- 2 Powtarzalny Zarządzanie Wymaganiami, Planowanie Projektu, Monitorowanie i Nadzorowanie Projektu, Zarządzanie Podwykonawcami, Zapewnienie Jakości Oprogramowania, Zarządzanie Konfiguracją Oprogramowania 3 Zdefiniowany Koncentracja Procesów w Organizacji, Definicja Procesu w Organizacji, Program Szkoleń, Zintegrowane Zarządzanie Oprogramowaniem, Inżynieria Produktu Programowego, Koordynacja Międzygrupowa, Przeglądy Wzajemne 4 Zarządzany Ilościowe Zarządzanie Procesem, Zarządzanie Jakością Oprogramowania 5 Optymalizowany Zapobieganie Defektom, Zarządzanie Zmianami Technologii, Zarządzanie Zmianami Procesu Jakość Oprogramowania CMM/CMMI 12

Poziom 2. Powtarzalny (1) Zarządzanie Wymaganiami Wymagania systemowe dla oprogramowania stanowią bazę projektową dla inżynierów oprogramowania i dla podejmowania decyzji przez kierownictwo. Plany projektowe, produkty i aktywności muszą być utrzymywane w spójności z wymaganiami systemowymi dla oprogramowania. Planowanie Projektu Planowanie musi być oparte o udokumentowane szacowanie. Planuje się i dokumentuje aktywności projektowe. Odpowiednie grupy i osoby zgadzają się na udział w projekcie. Monitorowanie i Nadzorowanie Projektu Aktualna wydajność i wyniki prac muszą być śledzone pod względem zgodności z planem. Gdy wydajność lub wyniki prac odbiegają znacznie od zaplanowanych, podejmuje się akcje naprawcze. Zmiany są uzgadniane z odpowiednimi grupami i osobami. Jakość Oprogramowania CMM/CMMI 13

Poziom 2. Powtarzalny (2) Zarządzanie Podwykonawcami Główny wykonawca wybiera odpowiednich podwykonawców Główny wykonawca i podwykonawca zgadzają się co do wzajemnych zobowiązań. Główny wykonawca i podwykonawca utrzymują ciągłą komunikację. Główny wykonawca sprawdza wyniki i wydajność pracy podwykonawcy pod względem jego zobowiązań. Zapewnienie Jakości Oprogramowania Zgodność produktów i aktywności z odpowiednimi standardami, procedurami i wymaganiami musi być sprawdzana obiektywnie. Odpowiednie grupy i osoby muszą być informowane o podejmowanych aktywnościach SQA i ich rezultatach. Problemy, które nie mogą być rozwiązane w zespole projektowym, powinny być przekazane dla wyższego kierownictwa. Zarządzanie Konfiguracją Oprogramowania Wybrane produkty softwerowe są identyfikowane, kontrolowane i dostępne. Zmiany w zidentyfikowanych produktach softwerowych są kontrolowane. Odpowiednie grupy i osoby są informowane o statusie i zawartości ich źródeł softwerowych. Jakość Oprogramowania CMM/CMMI 14

Poziom 3. Zdefiniowany (1) Koncentracja Procesów w Organizacji Procesy opracowania oprogramowania i aktywności doskonalące są koordynowane w ramach organizacji. Mocne i słabe strony używanych procesów są identyfikowane względem standardowego procesu. Opracowanie i doskonalenie standardowego procesu w organizacji musi być zaplanowane. Definicja Procesu w Organizacji Standardowy proces dla organizacji musi być opracowany i zachowany. Informacje związane z wykorzystaniem standardowego procesu organizacji są zbierane, przeglądane i udostępniane. Zintegrowane Zarządzanie Oprogramowaniem Definiowany proces projektowy jest przykrawaną wersją standardowego procesu organizacji. Projekt musi być planowany i zarządzany zgodnie z definiowanym procesem projektowym. Jakość Oprogramowania CMM/CMMI 15

Poziom 3. Zdefiniowany (2) Inżynieria Produktu Programowego Zadania inżynierii oprogramowania muszą być definiowane, integrowane i spójnie wykonywane. Produkty softwerowe muszą być utrzymywane w spójności ze sobą. Koordynacja Międzygrupowa Wymagania klienta muszą być uzgadniane przez wszystkie zaangażowane grupy. Zobowiązania pomiędzy grupami inżynierskimi są uzgadniane z zaangażowanymi grupami Grupy inżynierskie identyfikują, śledzą i rozwiązują problemy międzygrupowe. Przeglądy Wzajemne Defekty w produktach softwerowych muszą być identyfikowane i usuwane. Program szkoleń Trzeba zapewnić szkolenia dla podniesienia wiedzy i umiejętności do poziomu potrzebnego dla odpowiedniego zarządzania i wykonywania zadań technicznych. Osoby z grupy inżynierii oprogramowania i grup związanych z oprogramowaniem powinny otrzymać szkolenie potrzebne im do wykonywania swoich ról. Jakość Oprogramowania CMM/CMMI 16

Ilościowe Zarządzanie Procesem Poziom 4. Zarządzany Wydajność definiowanego procesu projektowego musi być kontrolowana ilościowo. Możliwości standardowego procesu organizacji są poznawane w ujęciu ilościowym. Zarządzanie Jakością Oprogramowania Muszą być zdefiniowane mierzalne cele dla jakości produktów softwerowych i ich priorytety. Aktualny postęp w kierunku celów jakościowych produktów softwerowych musi być oceniany ilościowo i zarządzany. Jakość Oprogramowania CMM/CMMI 17

Poziom 5. Optymalizowany Zapobieganie Defektom Wspólne przyczyny defektów musza być przemyślane i zidentyfikowane. Trzeba określić priorytety dla wspólnych przyczyn defektów i je systematycznie eliminować. Zarządzanie Zmianami Technologii Nowe technologie muszą być oceniane dla określenia ich wpływu na jakość i wydajność. Właściwe nowe technologie muszą być włączane do normalnej praktyki w organizacji. Zarządzanie Zmianami Procesu Zarówno standardowy proces organizacji jak i definiowane procesy projektowe muszą być ciągle doskonalone. Udział w doskonaleniu standardowego procesu organizacji powinien być jak najszerszy. Jakość Oprogramowania CMM/CMMI 18

CMMI

Dwie reprezentacje reprezentacja stopniowana (staged) jak w CMM wymagania dojrzałości na każdym poziom muszą być spełnione w całości reprezentacja ciągła (continuous) organizacja sama określa jaki poziom dojrzałości chce osiągnąć w określonej dziedzinie Jakość Oprogramowania CMM/CMMI 20

Komponenty modelu Obszar Procesowy 1 Obszar Procesowy 2 Obszar Procesowy N Cele specyficzne Cele ogólne Praktyki specyficzne Poziomy możliwości Praktyki ogólne Jakość Oprogramowania CMM/CMMI 21

Poziomy dojrzałości procesów 0 inicjalny (niekompletny) - proces nie jest wykonywany lub jest wykonywany częściowo. Przynajmniej jeden cel specyficzny obszaru procesowego nie jest spełniony. 1 wykonywany proces spełnia wszystkie specyficzne cele obszaru procesowego. Wspiera i umożliwia wytworzenie określonych produktów wyjściowych na podstawie określonych produktów wejściowych. 2 zarządzany proces jest również planowany, a jego wykonanie jest kontrolowane pod względem zgodności z planem. Gdy osiągane wyniki i wydajność różnią się od planowanych, to podejmowane są odpowiednie akcje korygujące. 3 zdefiniowany proces jest wybierany ze zbioru standardowych procesów organizacji i jest przycinany do aktualnego projektu. 4 zarządzany ilościowo proces jest kontrolowany przy użyciu technik statystycznych i innych technik ilościowych. 5 optymalizowany proces jest zmieniany i adaptowany dla spełnienia odpowiednich bieżących i projektowanych celów biznesowych. Jakość Oprogramowania CMM/CMMI 22

Porównanie SW-CMM i CMMI Dodano nowe obszary procesowe Dodano najlepsze, współczesne praktyki Dodano cel ogólny (implementacyjny) do każdego obszaru procesowego Do reprezentacji stopniowanej dodano ciągłą Zmieniono niektóre kluczowe obszary procesowe Jakość Oprogramowania CMM/CMMI 23

Literatura Mark C. Paulk, Bill Curtis, Mary Beth Chrissis, Charles V. Weber: The Capability Maturity Model for Software Key Practices of the Capability Maturity Model SM, Version 1.1, Technical Report, CMU/SEI-93-TR-025, ESC-TR-93-178, February 1993 Carnegie Mellon: Upgrading From SW-CMM to CMMI, Software Engineering Institute Carnegie Mellon: Capability Maturity Model Integration (CMMISM), Version 1.1, Software Engineering Institute Jakość Oprogramowania CMM/CMMI 24