Kompleksowy model dojrzałości organizacyjnej

Model dojrzałości procesów

Kompleksowy model dojrzałości organizacyjnej[1] (Capability Maturity Model Integration – CMMI) – model szkoleniowy i oceniający doskonalenie na poziomie procesu. Znajduje się w ofercie CMMI Institute, filii ISACA, został opracowany na Carnegie Mellon University (CMU). Jest wymagany przy wielu kontraktach rządowych Stanów Zjednoczonych, zwłaszcza w zakresie rozwoju oprogramowania. CMU twierdzi, że CMMI może być używany do kierowania doskonaleniem procesów w ramach projektu, oddziału lub całej organizacji. CMMI definiuje następujące poziomy dojrzałości dla procesów: początkowy, zarządzany, zdefiniowany, zarządzany ilościowo i optymalizujący. Wersja 2.0 została opublikowana w 2018 r. (Wersja 1.3 została opublikowana w 2010 r. i jest modelem odniesienia dla pozostałych informacji w tym artykule wiki). CMMI jest zarejestrowany w Urzędzie Patentów i Znaków Towarowych USA przez CMU[2].

Model CMMI[3]

Przegląd edytuj

Pierwotnie CMMI definiował trzy obszary:

  1. Rozwój produktów i usług – CMMI for Development (CMMI-DEV),
  2. Ustanawiania usług, zarządzanie – CMMI dla usług (CMMI-SVC) oraz
  3. Pozyskiwanie produktów i usług – CMMI for Acquisition (CMMI-ACQ).

W wersji 2.0 te trzy obszary (które wcześniej miały osobny model) zostały połączone w jeden model.

CMMI został opracowany przez grupę przedstawicieli przemysłu, rządu i Instytutu Inżynierii Oprogramowania (SEI) przy CMU. Model CMMI zawiera wskazówki dotyczące opracowywania lub ulepszania procesów, które spełniają cele biznesowe organizacji. Model CMMI może być również wykorzystywany jako podstawa oceny dojrzałości organizacji procesowej[3]. Do stycznia 2013 r. cały zestaw produktów CMMI został przeniesiony z SEI do CMMI Institute, nowo utworzonej organizacji w Carnegie Mellon[4].

Historia edytuj

CMMI został opracowany w ramach projektu CMMI, którego celem było zwiększenie użyteczności modeli dojrzałości poprzez integrację wielu różnych modeli w jedną platformę. Projekt składał się z przedstawicieli przemysłu, rządu i Carnegie Mellon Software Engineering Institute (SEI). Głównymi sponsorami były: Biuro Sekretarza Obrony (OSD) oraz Narodowe Stowarzyszenie Przemysłu Obronnego.

CMMI jest następcą modelu dojrzałości zdolności (CMM) i oprogramowania CMM. CMM był rozwijany od 1987 do 1997 roku. W 2002 roku została wydana wersja 1.1, wersja 1.2 pojawiła się w sierpniu 2006 roku, a wersja 1.3 w listopadzie 2010 roku. Niektóre główne zmiany w CMMI V1.3[5] to wsparcie rozwoju oprogramowania zwinnego[6], ulepszenia praktyk wysokiej dojrzałości[7] oraz dostosowanie reprezentacji (etapowej i ciągłej)[8].

Według Instytutu Inżynierii Oprogramowania (SEI, 2008), CMMI pomaga „integrować tradycyjnie oddzielne funkcje organizacyjne, ustalać cele i priorytety doskonalenia procesów, zapewniać wytyczne dotyczące procesów jakości oraz zapewniać punkt odniesienia do oceny bieżących procesów”[9].

Mary Beth Chrissis, Mike Konrad i Sandy Shrum Rawdon wchodzili w skład zespołu autorów publikacji papierowej CMMI dla wersji rozwojowych 1.2 i 1.3. Publikacja Addisona-Wesleya w wersji 1.3 została poświęcona pamięci Wattsa Humphry’ego. Eileen C. Forrester, Brandon L. Buteau i Sandy Shrum byli zespołem autorów publikacji papierowej CMMI dla wersji usług 1.3. Rawdon „Rusty” Young był głównym architektem rozwoju CMMI w wersji 2.0. Wcześniej był właścicielem produktu CMMI i kierownikiem ds. jakości SCAMPI w Instytucie Inżynierii Oprogramowania.

W marcu 2016 Instytut CMMI został przejęty przez ISACA.

Tematy CMMI edytuj

Reprezentacja edytuj

W wersji 1.3 CMMI istniał w dwóch reprezentacjach: ciągłej i etapowej[3]. Reprezentacja ciągła ma na celu umożliwienie użytkownikowi skupienia się na konkretnych procesach, które są uważane za ważne dla bezpośrednich celów biznesowych organizacji lub tych, którym organizacja przypisuje wysoki stopień ryzyka. Reprezentacja etapowa ma na celu zapewnienie standardowej sekwencji ulepszeń i może służyć jako podstawa do porównania dojrzałości różnych projektów i organizacji. Reprezentacja etapowa zapewnia również łatwą migrację z SW-CMM do CMMI[3].

W wersji 2.0 powyższy rozdział reprezentacji został zniesiony i obecnie istnieje tylko jeden spójny model[10].

Struktura modelu (v1.3) edytuj

W zależności od wykorzystywanych obszarów zainteresowania (pozyskiwanie, usługi, rozwój) zawarte w nim obszary procesowe będą się różnić[11]. Obszary procesowe to obszary, które zostaną objęte procesami organizacji. W poniższej tabeli wymieniono siedemnaście głównych obszarów procesu CMMI, które są obecne dla wszystkich interesujących obszarów CMMI w wersji 1.3.

Główne obszary procesu integracji modelu dojrzałości (CMMI)
Skrót Obszar procesu Kategoria Poziom dojrzałości
CAR Analiza przyczyn i rozwiązanie Wsparcie 5
CM Zarządzanie konfiguracją Wsparcie 2
DAR Analiza decyzji i rozwiązywanie Wsparcie 3
IPM Zintegrowane Zarządzanie Projektami Zarządzanie projektami 3
MA Pomiar i analiza Wsparcie 2
OPD Definicja procesu organizacyjnego Zarządzanie procesem 3
OPF Koncentracja na procesie organizacyjnym Zarządzanie procesem 3
OPM Zarządzanie wydajnością organizacji Zarządzanie procesem 5
OPP Wydajność procesów organizacyjnych Zarządzanie procesem 4
OT Szkolenie organizacyjne Zarządzanie procesem 3
PMC Monitorowanie i kontrola projektu Zarządzanie projektami 2
PP Planowanie Zarządzanie projektami 2
PPQA Zapewnienie jakości procesu i produktu Wsparcie 2
QPM Ilościowe zarządzanie projektami Zarządzanie projektami 4
REQM Zarządzanie wymaganiami Zarządzanie projektami 2
RSKM Zarządzanie ryzykiem Zarządzanie projektami 3
SAM Zarządzanie umowami z dostawcami Wsparcie 2

Poziomy dojrzałości usług edytuj

Poniższe obszary procesów i ich poziomy dojrzałości są wymienione dla modelu CMMI dla usług:

Poziom dojrzałości 2 – Zarządzany

  • CM – Zarządzanie konfiguracją
  • MA – Pomiar i analiza
  • PPQA – Proces i Zapewnienie Jakości
  • REQM – Zarządzanie wymaganiami
  • SAM – Zarządzanie umowami z dostawcami
  • SD – Świadczenie usług
  • WMC – Monitorowanie i kontrola pracy
  • WP – Planowanie pracy

Poziom dojrzałości 3 – Zdefiniowany

  • CAM – Zarządzanie pojemnością i dostępnością
  • DAR – Analiza decyzji i rozwiązywanie
  • IRP – Rozwiązywanie i zapobieganie incydentom
  • IWM – Zintegrowane zarządzanie pracą
  • OPD – Definicja procesu organizacyjnego
  • OFE – Koncentracja na procesie organizacyjnym
  • OT – Szkolenie organizacyjne
  • RSKM – Zarządzanie ryzykiem
  • SCON – Ciągłość usług
  • SSD – Rozwój systemu serwisowego
  • SST – Transformacja systemu usług
  • STSM – Strategiczne zarządzanie usługami

Poziom dojrzałości 4 – Zarządzanie ilościowe

  • OPP – Wydajność procesów organizacyjnych
  • QWM – Ilościowe zarządzanie pracą

Poziom dojrzałości 5 – Optymalizacja

  • CAR – Analiza i rozwiązywanie przyczyn
  • OPM – Zarządzanie wydajnością organizacji.

Modele (v1.3) edytuj

Najlepsze praktyki CMMI są publikowane w dokumentach zwanych modelami, z których każdy dotyczy innego obszaru zainteresowania. Wersja 1.3 zawiera modele dla trzech obszarów zainteresowania: rozwoju, pozyskiwania i usług.

  • CMMI for Development[12], wersja 1.3 została wydana w listopadzie 2010 roku. Dotyczy procesów rozwoju produktów i usług.
  • CMMI for Acquisition[13], v1.3 został wydany w listopadzie 2010 roku. Odnosi się do procesów zarządzania łańcuchem dostaw, nabywania i outsourcingu w administracji rządowej i przemyśle..
  • CMMI dla usług[14], v1.3 został wydany w listopadzie 2010 roku. Obejmuje wskazówki dotyczące świadczenia usług w ramach organizacji oraz klientom zewnętrznym.

Model (v2.0) edytuj

W wersji 2.0 DEV, ACQ i SVC zostały połączone w jeden model, w którym każdy obszar procesu potencjalnie ma specyficzne odniesienie do jednego lub więcej z tych trzech aspektów. Próbując nadążyć za branżą, model zawiera również wyraźne odniesienie do aspektów zwinnych w niektórych obszarach procesu.

Niektóre kluczowe różnice między modelami v1.3 i v2.0 podano poniżej – ta lista nie jest wyczerpująca[15].

  1. „Obszary procesu” zostały zastąpione przez „Obszary ćwiczeń (PA)”. Ten ostatni jest uporządkowany według poziomów, a nie „celów szczegółowych”.
  2. Każdy PA składa się z sekcji „podstawowej” (tj. ogólnego i wolnego od terminologii opisu) oraz „specyficznego kontekstu” (tj. opisu z perspektywy Agile/Scruma, rozwoju, usług itp.).
  3. Ponieważ wszystkie praktyki są teraz obowiązkowe do przestrzegania, sekcja „Oczekiwane” została usunięta.
  4. „Praktyki ogólne” zostały umieszczone w nowym obszarze o nazwie „Infrastruktura zarządzania i wdrażania”, podczas gdy „praktyki szczególne” zostały pominięte.
  5. Nacisk na zapewnienie wdrażania PA i praktykowanie ich w sposób ciągły, aż staną się „przyzwyczajeniem”.
  6. Wszystkie poziomy dojrzałości koncentrują się na słowie kluczowym „wydajność”.
  7. Uwzględniono dwa i pięć opcjonalnych PA z zakresu „Bezpieczeństwo” i „Bezpieczeństwo”.
  8. Połączono obszary procesów PCMM.

Ocena edytuj

Organizacja nie może być certyfikowana na zgodność z CMMI – zamiast tego jest oceniana. W zależności od rodzaju oceny organizacji można przyznać ocenę poziomu dojrzałości (1–5) lub profil osiągnięć na poziomie zdolności.

Wiele organizacji uznaje wartość mierzenia swoich postępów poprzez przeprowadzanie oceny. Oceny są zazwyczaj przeprowadzane z jednego lub kilku z następujących powodów:

  1. Aby określić, jak dobrze procesy organizacji wypadają w porównaniu z najlepszymi praktykami CMMI oraz zidentyfikować obszary, w których można dokonać ulepszeń
  2. Aby poinformować klientów zewnętrznych i dostawców o tym, jak dobrze procesy organizacji wypadają w porównaniu z najlepszymi praktykami CMMI
  3. Aby spełnić wymagania umowne jednego lub więcej klientów

Oceny organizacji wykorzystujących model CMMI muszą być zgodne z wymaganiami określonymi w dokumencie Appraisal Requirements for CMMI (ARC). Istnieją trzy klasy ocen, A, B i C, które koncentrują się na identyfikacji możliwości doskonalenia i porównaniu procesów organizacji z najlepszymi praktykami CMMI. Spośród nich ocena klasy A jest najbardziej formalna i jako jedyna może skutkować oceną poziomu. Zespoły oceniające wykorzystują model CMMI i metodę oceny zgodną z ARC, aby kierować swoją oceną organizacji i raportowaniem wniosków. Wyniki oceny mogą być następnie wykorzystane (np. przez grupę procesową) do zaplanowania usprawnień dla organizacji.

Standardowa metoda oceny CMMI dla doskonalenia procesów (SCAMPI) to metoda oceny, która spełnia wszystkie wymagania ARC[16]. Wyniki oceny SCAMPI mogą zostać opublikowane (jeśli oceniana organizacja wyrazi na to zgodę) na stronie internetowej CMMI SEI[17]. SCAMPI wspiera również prowadzenie ISO/IEC 15504, znanego również jako SPICE (ulepszanie procesu oprogramowania i określanie zdolności), oceny itp.

Podejście to promuje szkolenie członków EPG i PAT w CMMI, przeprowadzanie nieformalnej oceny (SCAMPI C) oraz priorytetowe traktowanie obszarów procesu w celu poprawy. Bardziej nowoczesne podejścia, które obejmują wdrożenie dostępnych na rynku procesów zgodnych z CMMI, mogą znacznie skrócić czas osiągnięcia zgodności. SEI prowadzi statystyki dotyczące „czasu na awans” dla organizacji stosujących wcześniejszą CMM oprogramowania, a także CMMI[18]. Statystyki te wskazują, że od 1987 r. mediana czasu przejścia z poziomu 1 na poziom 2 wynosi 23 miesiące, a z poziomu 2 na poziom 3 dodatkowe 20 miesięcy. Od czasu wydania CMMI mediana czasu przejścia z poziomu 1 na poziom 2 wynosi 5 miesięcy, a mediana przejścia do poziomu 3 to kolejne 21 miesięcy. Statystyki te są aktualizowane i publikowane co sześć miesięcy w profilu dojrzałości. 

Metodyka procesu tworzenia oprogramowania przez zespół Software Engineering Institute (SEI) oraz wykorzystanie modeli CMMI mogą być wykorzystane do podniesienia poziomu dojrzałości. Nowy produkt o nazwie Accelerated Improvement Method[19] (AIM) łączy wykorzystanie CMMI i TSP.[20]

Bezpieczeństwo edytuj

Aby rozwiązać problemy związane z bezpieczeństwem użytkowników, dostępne są dwa nieoficjalne przewodniki dotyczące bezpieczeństwa. Biorąc pod uwagę przypadek bezpieczeństwa Treść w CMMI for Services ma jeden obszar procesowy, Zarządzanie bezpieczeństwem[21]. Security by Design z CMMI for Development, wersja 1.3 ma następujące obszary procesów:

  • OPSD – przygotowanie organizacji do bezpiecznego rozwoju
  • SMP – Bezpieczne Zarządzanie w Projektach
  • SRTS – Wymagania bezpieczeństwa i rozwiązania techniczne
  • SVV – weryfikacja i walidacja bezpieczeństwa

Chociaż nie mają one wpływu na poziom dojrzałości ani zdolności, te obszary procesu można zgłaszać w wynikach oceny[22].

Aplikacje edytuj

SEI opublikowało badanie, z którego wynika, że 60 organizacji zmierzyło wzrost wydajności w kategoriach kosztów, harmonogramu, produktywności, jakości i satysfakcji klienta[23]. Mediana wzrostu wydajności wahała się od 14% (zadowolenie klienta) do 62% (produktywność). Jednak model CMMI dotyczy głównie tego, jakie procesy należy wdrożyć, a nie tego, jak można je wdrożyć. Wyniki te nie gwarantują, że zastosowanie CMMI zwiększy wydajność w każdej organizacji. Mała firma z niewielkimi zasobami może mieć mniejsze szanse na skorzystanie z CMMI[24]. Spośród małych organizacji (<25 pracowników) 70,5% jest ocenianych na poziomie 2: Zarządzane, podczas gdy 52,8% organizacji zatrudniających od 1001 do 2000 pracowników jest ocenianych na najwyższym poziomie (5: Optymalizacja).

Turner i Jain (2002) twierdzą, że chociaż oczywiste jest, że istnieją duże różnice między CMMI a zwinnym tworzeniem oprogramowania, oba podejścia mają ze sobą wiele wspólnego. Uważają, że żaden sposób nie jest „właściwym” sposobem tworzenia oprogramowania, ale istnieją fazy projektu, w których jeden z dwóch jest lepiej dopasowany. Sugerują, że należy połączyć różne fragmenty metod w nową metodę hybrydową. Sutherland i in. (2007) twierdzą, że połączenie Scrum i CMMI zapewnia większą adaptacyjność i przewidywalność niż pojedynczo[25]. David J. Anderson (2005) daje wskazówki, jak interpretować CMMI w sposób zwinny[26].

Plany CMMI[27] przedstawiają działania, które są zorientowane na cel podejściem do wyboru i wdrażania odpowiednich obszarów procesu z modelu CMMI-DEV, mogą dostarczyć wskazówek i skoncentrować się na efektywnym przyjęciu CMMI. Istnieje kilka planów CMMI dla ciągłej reprezentacji, z których każdy zawiera określony zestaw celów doskonalenia. Przykładami są plan projektu CMMI[28], plan integracji produktów i produktów CMMI[29] oraz plan procesów i pomiarów CMMI[30]. Plany te łączą zalety zarówno reprezentacji etapowej, jak i ciągłej.

Opisano połączenie techniki zarządzania projektami z zarządzaniem wartością wypracowaną (EVM) z CMMI[31]. Podsumowując podobne zastosowanie CMMI, Extreme Programming (XP), metoda inżynierii oprogramowania, została oceniona z CMM/CMMI (Nawrocki i in., 2002). Na przykład podejście do zarządzania wymaganiami XP, które opiera się na komunikacji ustnej, zostało ocenione jako niezgodne z CMMI.

CMMI można oceniać za pomocą dwóch różnych podejść: etapowego i ciągłego. Podejście etapowe daje wyniki oceny jako jeden z pięciu poziomów dojrzałości. Podejście ciągłe daje jeden z czterech poziomów zdolności. Różnice w tych podejściach są odczuwalne tylko w ocenie; najlepsze praktyki są równoważne, co skutkuje równoważnymi wynikami doskonalenia procesów.

Zobacz też edytuj

Przypisy edytuj

  1. K. Sacha, Inżynieria oprogramowania. PWN, W-wa 2010, s. 318.
  2. Trademark Electronic Search System (TESS). [dostęp 2016-12-21]. (ang.).
  3. a b c d What is CMMI? NASA presentation. [dostęp 2008-12-08]. [zarchiwizowane z tego adresu (2009-04-04)]. (ang.).
  4. CMMI Institute – Home. (ang.).
  5. CMMI V1.3: Summing up. [dostęp 2011-01-11]. (ang.).
  6. CMMI V1.3: Agile. [dostęp 2010-11-20]. (ang.).
  7. CMMI V1.3: Released high matutity clarified. [dostęp 2010-11-02]. (ang.).
  8. CMMI V1.3: Deploing the CMMI. [dostęp 2010-11-16]. (ang.).
  9. CMMI Overview. Software Enginnering Institute. [dostęp 2011-02-16]. (ang.).
  10. Zarchiwizowana kopia. [dostęp 2021-06-06]. [zarchiwizowane z tego adresu (2018-12-16)].
  11. CMMI V1.3 Process Areas. (ang.).
  12. CMMI-DEV.
  13. CMMI-ACQ.
  14. CMMI-SVC.
  15. Dodatkowe informacje są dostępne tutaj.
  16. Standard CMMI Appraisal Method for Process Improvement (SCAMPISM) A, Version 1.2: Method Definition Document. [dostęp 2006-09-23]. (ang.).
  17. Opublikowane wyniki oceny SCAMPI. sas.cmmiinstitute.com. [zarchiwizowane z tego adresu (2018-10-13)]..
  18. Process Maturity Profile. [dostęp 2011-02-16]. (ang.).
  19. Digital Library. (ang.).
  20. TSP Overview. (ang.).
  21. Eileer Forrester and Kieran Doyle. Considering the Case for Security Content in CMMI for Services (October 2010).
  22. Siemens AG Corporate Technology. Security by Design with CMMI for Development, Version 1.3 (May 2013).
  23. CMMI Performance Results of CMMI. [dostęp 2006-09-23]. (ang.).
  24. Pogląd ten jest wspierany przez profil dojrzałości procesu (s. 10).
  25. http://jeffsutherland.com/scrum/SutherlandScrumCMMIHICSSPID498889.pdf
  26. Stretching agile to fit CMMI level 3 – the story of creating MSF for CMMI. DOI: 10.1109/ADC.2005.42. ISBN 0-7695-2487-7.
  27. CMMI Roadmaps. (ang.).
  28. CMMI V1.3: The CMMI Project roadmap. [dostęp 2010-12-07]. (ang.).
  29. CMMI V1.3: The CMMI Product and Product Integration roadmaps. [dostęp 2010-12-14]. (ang.).
  30. CMMI V1.3: The CMMI Process and Measurement roadmaps. [dostęp 2010-12-28]. (ang.).
  31. Solomon, 2002.

Linki zewnętrzne edytuj