Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

3 x 45 min

Spis treści

1.

Wprowadzenie ................................................................................................................................ 2

2.

Tematy projektu 2 ........................................................................................................................... 5

3.

Forma opracowania ......................................................................................................................... 6

Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

3 x 45 min

1. Wprowadzenie

Obecnie, bardzo często podpisanie kontraktu - zwłaszcza w obrocie międzynarodowym - wiąże się z

posiadaniem stosownego certyfikatu ISO serii 9000. Produkt oznaczony takim symbolem, gwarantuje,

iż spełnia on wszelkie wymogi jakościowe. W branży informatycznej podobną rolę odgrywa CMMI,

który jest znakiem towarowym zastrzeżonym w Amerykańskim Urzędzie Patentów i Znaków

Towarowych.

Capability Maturity Model Integration (CMMI) – jest modelem służącym ocenie dojrzałości

procesów tworzenia oprogramowania w organizacji. Został opracowany przez grupę amerykańskich

programistów, pracujących w Software Engineering Institute (SEI), działającym przy Carnegie Mellon

University w Pittsburghu.

W modelu CMMI mamy 5 poziomów. Pierwszy poziom to poziom początkowy. Na tym poziomie są

wszystkie firmy, które nie spełniają wymagań związanych z wyższymi poziomami. A zatem znalezienie

się na pierwszym poziomie CMMI jest bardzo łatwe. Drugi poziom CMMI jest zwany Zarządzanym (w

starym modelu CMM nazywał się Powtarzalny ). Na tym poziomie znajdują się najważniejsze praktyki

dotyczące zarządzania przedsięwzięciem informatycznym. Trzeci poziom, Zdefiniowany , dotyczy całej

organizacji i prezentuje bardziej zaawansowane praktyki. Poziom czwarty, Zarządzany ilościowo ,

zawiera zaawansowane praktyki analizy danych dotyczących efektywności procesów wytwarzania

oprogramowania bazujące na statystycznej kontroli procesów (Statistical Process Control, w skrócie

SPC). Najwyższy, piąty, poziom nazywa się Optymalizujący – organizacje znajdujące się na tym

poziomie potrafią w systematyczny sposób przygotować się do zmian (np. zmian związanych z

rozwojem technologii wytwarzania oprogramowania).

Wszystkie modele CMMI, niezależnie od dyscypliny, składają się z pięciu poziomów. Z kolei każdy

poziom (od drugiego w górę) składa się z obszarów procesu. Liczba obszarów na jednym poziomie

może być większa, na innym mniejsza.

Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

3 x 45 min

Na przykład na drugim poziomie CMMI (obszar zarządzany) mamy siedem obszarów:

• Zarządzanie wymaganiami,

• Planowanie przedsięwzięcia,

• Monitorowanie i kontrola przedsięwzięcia,

• Zarządzanie podzleceniami,

• Pomiary i analiza,

• Zapewnianie jakości procesu i produktu,

• Zarządzanie konfiguracją.

Obszar planowania przedsięwzięcia

W tym obszarze mamy trzy cele specyficzne:

• Oszacowania parametrów przedsięwzięcia muszą być opracowane i aktualizowane.

• Plan przedsięwzięcia musi być opracowany i aktualizowany, gdyż jest to podstawa

zarządzania przedsięwzięciem.

• Zobowiązania do planu przedsięwzięcia muszą być ustanowione i aktualizowane.

Przyjrzyjmy się praktykom specyficznym związanym z pierwszym celem, czyli szacowaniem

parametrów przedsięwzięcia.

a) Po pierwsze, należy ustalić na wysokim poziomie abstrakcji strukturę hierarchiczną

produktów stanowiącą oszacowanie zakresu przedsięwzięcia. Na przykład, jeśli mamy

zbudować elektroniczną księgarnię internetową, to hierarchiczna struktura produktów może

mieć dwa poziomy i na drugim poziomie możemy wyliczyć, jakiego typu artefakty mają być

rezultatem przedsięwzięcia (np. specyfikacja wymagań, plan przedsięwzięcia, kod systemu i

automatyczne przypadki testowe).

b) Po drugie należy ustalić i pielęgnować oszacowania atrybutów produktów i zadań. Na

przykład atrybutem kodu może być jego rozmiar liczony w punktach funkcyjnych lub w liniach

kodu (będzie na ten temat osobny wykład). Atrybutem specyfikacji wymagań może być liczba

przypadków użycia albo liczba stron.

c) Po trzecie, należy zdefiniować fazy cyklu życia przedsięwzięcia. Można np. przyjąć, że

najpierw będzie zbieranie wymagań, potem projektowanie oprogramowania, następnie jego

kodowanie i na końcu testowanie.

Znając produkty i związane z nimi atrybuty można oszacować pracochłonność. Jedną z bardzo

znanych metod szacowania pracochłonności jest COCOMO II.

Zgodnie z drugim celem specyficznym związanym z planowaniem przedsięwzięcia, w każdej

organizacji znajdującej się na drugim poziomie CMMI plan przedsięwzięcia jest opracowany

i aktualizowany jako podstawa zarządzania przedsięwzięciem. W tym zakresie należy przede

wszystkim ustalić i pielęgnować budżet oraz harmonogram przedsięwzięcia. Harmonogram

przedsięwzięcia jest często prezentowany za pomocą wykresu Gantta. Są takie narzędzia, jak MS

Project, które wspomagają tworzenie harmonogramów przedsięwzięć.

Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

3 x 45 min

Z każdym przedsięwzięciem jest związany szereg różnego typu czynników ryzyka. Należy te czynniki

ryzyka identyfikować i analizować. Problem polega na tym, że potencjalnych czynników ryzyka może

być ponad 100. Trudno je wszystkie analizować i nimi zarządzać. Rozsądnym rozwiązaniem jest

skupienie uwagi na najważniejszych czynnikach ryzyka. Aby je wyłonić można dla każdego czynnika

ryzyka oszacować prawdopodobieństwo jego wystąpienia i wpływ na przedsięwzięcie. Można tę

ocenę przeprowadzić np. w skali od 0 do 4 (0 – zdarzenie skrajnie mało prawdopodobne lub –

w odniesieniu do wpływu - o skrajnie małym negatywnym wpływie na przedsięwzięcie; 4 – zdarzenie

bardzo prawdopodobne lub – jeśli chodzi o wpływ – o katastrofalnym wpływie na przedsięwzięcie).

Niech waga czynnika ryzyka oznacza iloczyn prawdopodobieństwa i wpływu. Można posortować

czynniki ryzyka wg ich wagi i przyjąć, że np. będą analizowane i śledzone tylko te czynniki ryzyka,

których waga wynosi 12 lub więcej.

Zgodnie z kolejną praktyką specyficzną należy zaplanować zarządzanie danymi przedsięwzięcia.

Należy odpowiedzieć na następujące pytania:

• Jakie dane zbierać? Mogą to być dane dotyczące pracochłonności (bardzo przydadzą się przy

korekcie planu przedsięwzięcia), wyniki testowania, nastroje w zespole realizującym

przedsięwzięcie itp.

• Które z nich mają trafić do klienta?

• Gdzie dane będą przechowywane?

• Jaki poziom ochrony jest potrzebny?

• Kto ma być odpowiedzialny za dane?

Należy także zaplanować zasoby potrzebne do realizacji przedsięwzięcia. Mogą to być komputery,

narzędzia programistyczne, specjalny sprzęt do uruchamiania budowanego oprogramowania lub jego

testowania itp. Należy także ocenić wiedzę i umiejętności potrzebne do realizacji przedsięwzięcia.

Jeśli okaże się, że potrzebne są kompetencje, których w firmie nikt nie ma, to można wysłać ludzi na

szkolenia, zaprosić ekspertów-konsultantów, by pełnili rolę mentorów, zlecić wykonanie pewnych

zadań firmie, która ma brakujące nam kompetencje lub poszukać jeszcze innego rozwiązania. Im

szybciej taka ocena wiedzy i umiejętności zostanie przeprowadzona, tym większe jest pole manewru.

Trzeci cel specyficzny związany z planowaniem przedsięwzięcia dotyczy zobowiązań: zobowiązania

względem planu przedsięwzięcia mają być ustanowione i aktualizowane. Z celem tym związane są

trzy praktyki specyficzne. Zgodnie z pierwszą z nich należy dokonać przeglądu wszystkich planów,

które mają wpływ na realizację przedsięwzięcia. Na przykład przedsięwzięcie związane

z opracowaniem nowego typu telefonu komórkowego może obejmować trzy elementy: sprzęt,

książkę telefoniczną i asystenta osobistego (PDA od ang. Personal Digital Assistant). Z każdym z tych

elementów może być związany osobne pod-przedsięwzięcie z własnym planem. Ktoś musi panować

Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

3 x 45 min

nad całością, w tym m.in. musi dokonać wszystkich planów składowych (albo zorganizować

zespołowy przegląd tych planów) tak, aby mieć pewność, że są one spójne. Należy też doprowadzić

do równowagi między oszacowanymi a dostępnymi zasobami. Te zasoby mogą dotyczyć liczby

dostępnych specjalistów, pieniędzy, czy też ilości potrzebnego czasu. Jeśli okaże się, że dostępne

zasoby są mniejsze niż wynikające z oszacowania, to należy zastanowić się nad ewentualnym

dostosowaniem zakresu przedsięwzięcia do posiadanych zasobów. Liczenie, że jakoś to będzie może

doprowadzić do sporych kłopotów. Należy także uzyskać akceptację udziałowców przedsięwzięcia

zaangażowanych w jego realizację. Dotyczy to osób zarówno po stronie wykonawcy, jak i po stronie

klienta. Bardzo dobrą praktyką jest prośba o pisemną akceptację planu przedsięwzięcia. Widać tu

związek z trzecią zasadą zarządzania jakością dotyczącą zaangażowania ludzi, zgodnie z którą

odpowiedzialność powinna być zaakceptowana przez osoby nią obarczone.

2. Tematy projektu 2

a) Lista do oceny poziomu dojrzałości dla obszaru planowania przedsięwzięć

Należy zaproponować listę pytań kontrolnych, za pomocą której można będzie ocenić poziom

dojrzałości w zakresie planowania w Państwa firmie (14 pytań: 3.0, 17 pytań: 3.5, 20 pytań: 4.0, 24

pytań: 4.5, 27 pytań: 5.0 )

Przykładowa lista pytań do oceny obszaru Planowania przedsięwzięć

1: Czy wykonujecie i aktualizujecie Państwo oszacowanie dotyczące parametrów przedsięwzięcia

(rozmiar kodu, dokumentów, liczba wymagań, liczba przypadków testowych, itp.)?

2: Czy opracowujecie i aktualizujecie Państwo plan przedsięwzięcia tak, aby stanowił on dobrą

podstawę do zarządzania przedsięwzięciem?

3: Czy ustalacie i aktualizujecie Państwo budżet oraz harmonogram przedsięwzięcia?

4: Czy wszystkie plany, które mają wpływ na realizację przedsięwzięcia są przeglądane przed

rozpoczęciem przedsięwzięcia?

5: Czy zabiegacie Państwo aby plan przedsięwzięcia był realistyczny w sensie równowagi pomiędzy

planowanymi a dostępnymi zasobami?

6: Czy przed rozpoczęciem przedsięwzięcia uzyskujecie Państwo akceptację planu przez wszystkich

jego udziałowców?

7: Czy ustanawiacie i aktualizujecie Państwo zawartość całego planu przedsięwzięcia?

b) Propozycja dobrych praktyk (min. 10)

Jesteś właścicielem małej firmy programistycznej (zatrudniasz 5 programistów). Opracuj

dokument, w którym zbierzesz dobre praktyki dla planowania stosowane w twojej firmie.

Uzasadnij wybór i spróbuj ocenić, na jakim poziomie znalazłaby się twoja organizacja.

c) Odpowiedź na pytanie

1. Jakie korzyści znajdujesz we wdrożeniu CMMI w firmie programistycznej?

Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

3 x 45 min

3. Forma opracowania

1. Strona tytułowa zawiera:

a. Tabelkę

Politechnika Krakowska im. Tadeusza Kościuszki

Wydział Mechaniczny

Instytut Informatyki Stosowanej M-7

CMMI i inne systemy zapewnienia jakości

Projekt 2 - Model dojrzałości CMMI

Opracowali:

Rok akademicki: 2010/2011

Grupa 13k3

Xxxx

Xxxx

b. Spis treści

2. Opracowanie powinno zostać zakończone i oddane na trzecich zajęciach.

Proszę zwracać uwagę na estetykę opracowanego dokumentu, jest on Państwa wizytówką.