Model dojrzałości zdolności (CMM) wyjaśniony w 5 minut lub mniej

Capability Maturity Model (CMM) to skuteczny i łatwiejszy sposób skalowania wielu funkcji Twojej firmy.

Aby prowadzić firmę, kontrolować system lub zarządzać grupą, zrozumienie możliwości jest niezbędnym aspektem.

Po zawężeniu różnych funkcji Twojej firmy musisz ocenić wydajność wszystkich tych funkcji. Na tej podstawie wyznaczasz standardy i cele dla swojego biznesu.

Tak więc, aby mierzyć i kontrolować wydajność i postęp pracy każdej funkcji i osoby, przedsiębiorcy i liderzy biznesowi muszą mieć solidne rozwiązanie i je uchwycić.

W ten sposób firma może opracować systemy, które udźwigną ciężar złożoności i zapewnią precyzję niezbędną do skalowania.

I tu pojawia się CMM.

W tym artykule omówię, czym są CMM i CMMI, ich poziomy i różnice między nimi.

Zaczynajmy!

Co to jest model dojrzałości zdolności?

Capability Maturity Model (CMM) to prosta metodologia, która służy do tworzenia i udoskonalania procesu tworzenia aplikacji w organizacji. Umożliwia to programistom rozwijanie i ulepszanie procesu tworzenia oprogramowania, co skutkuje większą spójnością i wydajnością.

Niezależnie od tego, jaką rolę przypisano Ci w zespole programistów, zapoznanie się z CMM może pomóc zwiększyć Twoją wydajność. Można więc powiedzieć, że CMM to metoda, która pomaga oceniać, rozwijać i ulepszać proces tworzenia oprogramowania.

CMM nakreśla podstawowe procedury tworzenia oprogramowania i inne księżniczki, które przechodzą inżynierię, zarządzanie i planowanie. Zakłada, że ​​regularny proces doskonalenia jest osiągalny dzięki małym oznakom postępu zamiast większych przełomów.

Ponadto oferuje ramy do zarządzania mniejszymi znakami na różnych poziomach dojrzałości, aby zapewnić platformę do ciągłego doskonalenia procesu tworzenia oprogramowania. Dlatego ta metodologia jest sercem systemów zarządzania specjalnie zaprojektowanych w celu poprawy jakości rozwoju produktów i usług wraz z ich dostawami.

CMM został opracowany i promowany przez SEI (Software Engineering Institute), centrum badawczo-rozwojowe sponsorowane przez US DOD. Jest teraz częścią Carnegie Mellon University. Firma SEI została założona w 1984 roku w celu rozwiązywania różnych problemów związanych z oprogramowaniem i rozwijania metodologii oprogramowania.

Firma SEI została utworzona w celu optymalizacji procesu opracowywania, nabywania i konserwacji systemów mocno zarezerwowanych dla oprogramowania dla Departamentu Obrony (DOD). Opowiada się za ukierunkowanym na branżę przyjęciem rozwijającej się CMM, tj. CMM Integration (CMMI).

Dlaczego potrzebujesz maszyny współrzędnościowej?

CMM ma wiele mocnych stron, a najbardziej użyteczną korzyścią płynącą z zastosowania tej metodologii jest oszczędność czasu i pieniędzy. Dzieje się tak dlatego, że system jest doskonale zaprojektowany, aby skuteczniej niż inne modele rozpoznawać defekty w procesie doskonalenia.

Ponadto CMM usprawnia procesy biznesowe, a także ogranicza nagłe zmiany w harmonogramach produkcji. Ponieważ CMM był pierwszym modelem zaprojektowanym w celu usprawnienia procesu przemysłowego, może być kamieniem węgielnym dla tworzenia innych modeli, takich jak ulepszona wersja CMM (tj. CMMI), Business Capability Maturity Model (BCMM) i inne.

CMM to dość elastyczny model dla wszystkich procesów i rynków. Bez względu na to, do jakiego sektora należysz, jeśli masz zespół programistów, członkowie mogą wykorzystać model do naprawienia błędów w procesie.

Pięć poziomów dojrzałości w CMM

Pięć poziomów modelu dojrzałości zdolności (CMM) w procesie rozwoju to:

# 1. Początkowy poziom

Na tym poziomie procesy nie przebiegają we właściwej kolejności. Czasami może być nawet chaotycznie. Tutaj sukces zależy od wysiłków pojedynczego członka i nie jest uważany za proces powtarzalny. Dzieje się tak tylko dlatego, że proces nie jest dobrze udokumentowany i wystarczająco zdefiniowany, aby można go było powtórzyć.

Stosowane procesy są niedojrzałe i adhoc, co jest niestabilnym środowiskiem do tworzenia oprogramowania. Ponadto nie ma podstaw do przewidywania jakości produktu i czasu jego realizacji.

#2. Powtarzalne

Na tym poziomie wymagane procesy są dobrze ugruntowane, udokumentowane i zdefiniowane. W rezultacie techniki zarządzania projektami są odpowiednio ugruntowane, a sukces może nie zostać powtórzony w niektórych kluczowych obszarach procesu.

Powtarzalny poziom można osiągnąć poprzez ustanowienie kilku podstawowych zasad zarządzania projektami. Doświadczenie we wcześniejszych projektach jest wykorzystywane do zarządzania projektami o podobnym charakterze. Obejmuje to zdefiniowanie wymaganych zasobów, celów, ograniczeń i nie tylko dla projektu.

Ten poziom przedstawia szczegółowy plan, którego należy odpowiednio przestrzegać, aby pomyślnie ukończyć wysokiej jakości oprogramowanie. Głównym celem jest utrzymanie wydajności produktu, takiego jak jego składnik, przez cały cykl życia oprogramowania.

Poziom powtarzalny obejmuje również opinie klientów i zarządzanie recenzjami, co może prowadzić do pewnych zmian w ustalonym wymaganiu. To zarządzanie wymaganiami polega na dostosowaniu zmodyfikowanych wymagań.

Ponadto zarządzanie podwykonawstwem koncentruje się na zarządzaniu kwalifikowanymi wykonawcami w zakresie rozwoju oprogramowania. Oznacza to, że zarządza niektórymi częściami oprogramowania opracowanymi przez osoby trzecie. Zapewnienie jakości oprogramowania gwarantuje wysokiej jakości oprogramowanie z pewnymi zasadami i standardowymi wytycznymi podczas procesu tworzenia.

#3. Zdefiniowane

Na tym poziomie odbywa się dokumentacja wytycznych i procedur. Jest to dobrze zdefiniowany zestaw procesów inżynierii oprogramowania i zarządzania. To zawiera:

  • Recenzje koleżeńskie: W tej metodzie konieczne jest usunięcie defektów przy użyciu różnych procesów recenzowania, takich jak inspekcje, kontrole koleżeńskie, instruktaże itp.
  • Koordynacja międzygrupowa: Ta metoda polega na interakcji między wieloma zespołami programistycznymi w celu zapewnienia właściwego i efektywnego zaspokojenia potrzeb.
  • Definicja procesu organizacji: Metoda koncentruje się na rozwoju i utrzymaniu procesów tworzenia oprogramowania.
  • Koncentracja na procesie organizacji: obejmuje praktyki i działania, których należy przestrzegać, aby zwiększyć możliwości procesowe organizacji.
  • Programy szkoleniowe: Programy szkoleniowe koncentrują się na podnoszeniu wiedzy i umiejętności członków zespołu oraz zapewniają poprawę efektywności pracy.

#4. Zarządzany

Na tym poziomie wyznaczane są cele ilościowe dotyczące jakości oprogramowania i procesów związanych z oprogramowaniem organizacji. Dokonywane pomiary pozwalają organizacji przewidzieć jakość procesu i produktu w granicach określonych ilościowo.

Ten poziom obejmuje strategie i plany opracowane w celu opracowania i zrozumienia analizy ilościowej i jakości produktu. Koncentruje się również na zarządzaniu wynikami projektów.

#5. Optymalizacja

Jest to końcowy etap dojrzałości procesowej w CMM, który koncentruje się wyłącznie na ciągłym doskonaleniu procesów rozwojowych w organizacji poprzez ilościowe sprzężenie zwrotne. Odbywa się to za pomocą technik, oceny i narzędzi dla procesów oprogramowania, aby zapobiec powtarzaniu się znanych defektów.

Ten poziom obejmuje:

  • Zarządzanie zmianą procesu: ten proces zarządzania koncentruje się na ciągłym ulepszaniu procesów tworzenia oprogramowania. Poprawia to jakość, czas cyklu i produktywność oprogramowania.
  • Zarządzanie zmianą technologii: Polega na wykorzystaniu technologii i technik identyfikacji w celu poprawy jakości produktu i zminimalizowania czasu jego rozwoju.
  • Zapobieganie defektom: Zapobieganie defektom można osiągnąć, identyfikując przyczyny defektów i zapobiegając ich ponownemu pojawieniu się w kolejnych projektach. Poprawia to procesy zdefiniowane w projekcie.

Integracja modelu dojrzałości zdolności

Capability Maturity Model Integration (CMMI) to prosty model procesu, którego organizacje mogą używać do ulepszania procesów programistycznych, pobudzania efektywnych zachowań i zwiększania produktywności w przepływie pracy podczas opracowywania produktu, usługi lub projektu. Powoduje to zmniejszenie ryzyka w całym procesie.

CMMI został opracowany i wprowadzony przez Carnegie Mellon University. Głównym celem tego rozwoju jest zwiększenie wydajności i użyteczności modeli dojrzałości, które mogą mierzyć zdolność organizacji do ciągłego doskonalenia w określonych obszarach. Można to osiągnąć tylko poprzez integrację wielu modeli w jednej strukturze.

Pierwsza wersja została wydana w 2002 r., a następna w 2006 r. W 2010 r. pojawiła się wersja 1.3, a najnowsza wersja, 2.0, została wydana w 2018 r., która zawierała różne zmiany, takie jak uczynienie jej bardziej dostępną, wydajniejszą itp. ., dla firm.

CMMI zostało kupione przez ISACA (wcześniej znane jako Information Systems Audit and Control Association), które posiada certyfikaty takie jak ramy COBIT. CMMI to model procesowy i behawioralny, który pomaga organizacjom w całym procesie rozwoju produktów lub usług.

Tak więc cel CMMI jest dość jasny. Służy do poprawy jakości usługi lub produktu poprzez podążanie za modelem, który spełnia oczekiwania klientów i zwiększa wartość organizacji na rynku. Ocenia również reputację Twojej firmy i wartość interesariuszy w branży.

CMMI obecnie zajmuje się następującymi obszarami zainteresowania:

  • CMMI for Development: służy do opracowywania produktów i usług.
  • CMMI dla usług: Służy do tworzenia, dostarczania i zarządzania usługami.
  • CMMI for Acquisition: Obejmuje nabywanie produktów i usług.

Reprezentacja CMMI

Reprezentacja CMMI pozwala organizacji realizować zestaw celów doskonalenia. Istnieją dwie reprezentacje:

Reprezentacja sceniczna

  • Wykorzystuje zdefiniowany zestaw obszarów procesu rozwoju do opisania ścieżki doskonalenia.
  • Zapewnia szereg ulepszeń, gdzie każda część serii służy jako struktura dla następnego ulepszenia.
  • Definiuje ulepszoną ścieżkę za pomocą poziomów dojrzałości. A poziom dojrzałości mówi o dojrzałości różnych procesów w organizacji.
  • Umożliwia porównanie różnych organizacji na różnych poziomach dojrzałości.

Ciągła reprezentacja

  • Umożliwia wybór poszczególnych obszarów procesu.
  • Wykorzystuje poziomy zdolności do pomiaru poprawy indywidualnego procesu.
  • Ponadto umożliwia porównywanie organizacji w oparciu o obszar procesu po obszarze procesu.
  • Ciągła reprezentacja pozwala również organizacjom wybierać spośród różnych procesów w celu lepszego doskonalenia.
  • W tej reprezentacji organizacje mogą lepiej realizować swoje cele i ograniczać ryzyko, wybierając kolejność doskonalenia różnych procesów.

Etapy w CMMI

Istnieje pięć etapów dojrzałości w CMMI z reprezentacją etapową:

#1.Początkowe: Na tym poziomie procesy rozwojowe są słabo kontrolowane lub zarządzane. Wiąże się to również z nieprzewidywalnymi skutkami procesów rozwojowych. Ponadto stosowane są podejścia chaotyczne i ad hoc. Nie znajdziesz żadnych zdefiniowanych kluczowych obszarów procesowych (KPA). Jakość nie jest tak dobra, a produkt lub usługi są najbardziej zagrożone.

#2. Zarządzane: Na tym etapie dojrzałości wymagania są odpowiednio zarządzane, a procesy rozwojowe kontrolowane i planowane. Tutaj projekt jest właściwie zarządzany i realizowany zgodnie z udokumentowanymi planami. Jednak ryzyko nadal istnieje, ale jest niższe od poziomu wyjściowego.

#3.Zdefiniowany: Na określonym poziomie dojrzałości procesy rozwojowe są dobrze opisane i scharakteryzowane przy użyciu odpowiednich procedur, standardów, narzędzi i metod. Jakość, którą znajdziesz, jest średniej klasy, a ryzyko jest również średnie.

#4. Zarządzanie ilościowe: W tym modelu ustala się cele ilościowe dla procesów jakości i wydajności. Opiera się na potrzebach organizacji, wymaganiach klientów i nie tylko. Miary wydajności procesu są analizowane ilościowo. Tutaj znajdziesz procesy wyższej jakości przy niższym ryzyku.

#5.Optymalizacja: Jest to ostatni etap modelu dojrzałości, który obejmuje ciągłe doskonalenie wydajności i procesów. Poprawa na tym poziomie jest zarówno innowacyjna, jak i przyrostowa. Procesy i wykonania są wyższej jakości, a ryzyko najniższe.

Poziomy możliwości CMMI

Poziom zdolności mówi o odpowiednich praktykach dla określonego obszaru procesu w celu usprawnienia procesów organizacji związanych z obszarem procesu. Istnieje sześć poziomów możliwości dla modeli CMMI:

  • Poziom zdolności 0 (niekompletny): Obejmuje niekompletne, częściowe i niewykonane procesy. Na tym poziomie nie ma ogólnych celów.
  • Poziom zdolności 1 (wykonany): Wydajność procesu nie jest stabilna na tym poziomie. Cele dotyczące kosztów, harmonogramu i jakości nie są spełnione. Proces poziomu 1 musi wykonywać określone praktyki.
  • Poziom zdolności 2 (zarządzany): Na tym poziomie proces jest monitorowany, kontrolowany i planowany. Tutaj cele to zarówno model, jak i inne, takie jak jakość, harmonogram i koszt. Organizacja musi aktywnie zarządzać procesami za pomocą metryk.
  • Poziom zdolności 3 (zdefiniowany): Jest to określony poziom, na którym proces jest dobrze zarządzany i spełnia zestaw wytycznych i standardów organizacyjnych. Koncentruje się na standaryzacji procesów.
  • Poziom zdolności 4 (zarządzany ilościowo): Tutaj proces jest kontrolowany przy użyciu technik ilościowych i statystycznych. Na tym poziomie wydajność procesu jest rozumiana w kategoriach metrycznych i statystycznych.
  • Poziom zdolności 5 (Optymalizacja): Ten poziom koncentruje się na ciągłym doskonaleniu wydajności procesu. Wydajność poprawia się zarówno w sposób innowacyjny, jak i stopniowy.

CMM vs. CMMI: różnica

CMMI to zaktualizowany lub nowszy model CMM. SEI opracowało CMMI w celu standaryzacji i integracji CMM, które ma różne modele dla każdej funkcji, którą obejmuje. Te modele nie są zsynchronizowane; ich integracja sprawia, że ​​proces jest elastyczny i wydajny.

W odniesieniu do kluczowych obszarów procesów, praktyk, poziomów dojrzałości i celów struktura CMMI jest podobna do struktury CMM. Jednak CMMI oferuje dwie różne reprezentacje procesów.

Dowiedzmy się więcej o różnicach między CMM a CMMI:

CMMCMMICMM oznacza Capability Maturity Model, opracowany w roku 1984. CMMI oznacza Capability Maturity Model Integration, opracowany w roku 2006. Jest to model behawioralny opracowany w celu pomiaru procesów tworzenia oprogramowania w organizacji. Jest to zaktualizowana wersja modelu CMM, który jest bardziej zorientowany na zadania i efektywny. Głównym celem jest ocena poziomów dojrzałości w procesie tworzenia oprogramowania. Głównym celem jest połączenie różnych modeli oprogramowania w jedno oprogramowanie i przezwyciężenie niektórych wad CMM. CMM ma pięć etapów: początkowy, powtarzalny, zdefiniowany, zarządzany i zoptymalizowany CMMI ma pięć etapów: początkowy, zarządzany, zdefiniowany, zarządzany ilościowo i optymalizowany. CMM jest mniej efektywny. CMMI jest bardziej efektywny. Jest zbyt zorientowany na proces. Jest zorientowany na cel.

Wniosek

Capability Maturity Model (CMM) to system rozwiązywania problemów dla procesów tworzenia oprogramowania w branżach. Może to uchronić firmy przed problemami związanymi z procesami.

Z drugiej strony CMMI ma zaawansowaną metodologię niż CMM. Obejmuje spełnianie oczekiwań klientów, docenianie twórczości, rozwój marketingu, poprawę jakości produktów i usług oraz wzmacnianie reputacji.

Możesz także zapoznać się ze strukturą zarządzania cyklem życia aplikacji, która pomaga w opracowywaniu i dostarczaniu oprogramowania zgodnie z harmonogramem, w ramach budżetu i najwyższej jakości.