Model dojrzałości zdolności (CMM) & to poziomy w inżynierii oprogramowania

Spisie treści:

Anonim

Co to jest CMM?

Model dojrzałości zdolności jest używany jako punkt odniesienia do pomiaru dojrzałości procesu tworzenia oprogramowania w organizacji.

CMM została opracowana w Instytucie Inżynierii Oprogramowania pod koniec lat 80-tych. Został opracowany w wyniku badania finansowanego przez Siły Powietrzne USA jako sposób oceny pracy podwykonawców. Później, w oparciu o model CMM-SW utworzony w 1991 roku w celu oceny dojrzałości rozwoju oprogramowania, wiele innych modeli jest zintegrowanych z CMM-I, którymi są

W tym samouczku nauczymy się,

  • Co to są poziomy modelu dojrzałości zdolności (CMM)?
  • Co dzieje się na różnych poziomach CMM?
  • Jak długo trwa wdrożenie CMM?
  • Struktura wewnętrzna CMM
  • Ograniczenia modeli CMM
  • Dlaczego warto korzystać z CMM?

Co to są poziomy modelu dojrzałości zdolności (CMM)?

  1. Inicjał
  2. Powtarzalne / zarządzane
  3. Zdefiniowane
  4. Zarządzane ilościowo
  5. Optymalizacja

Co dzieje się na różnych poziomach CMM?

Poziomy Zajęcia Korzyści
Poziom 1 początkowy
  • Na poziomie 1 proces jest zwykle chaotyczny i ad hoc
  • Zdolność charakteryzuje się na podstawie jednostek, a nie organizacji
  • Postęp nie jest mierzony
  • Opracowywane produkty są często zaplanowane i przekraczają budżet
  • Duże różnice w harmonogramie, kosztach, funkcjonalności i celach jakościowych
Żaden. Projekt to Total Chaos
Zarządzany na poziomie 2
  • Zarządzanie wymaganiami
  • Oszacuj parametry projektu, takie jak koszt, harmonogram i funkcjonalność
  • Mierz rzeczywisty postęp
  • Opracuj plany i proces
  • Zdefiniowano standardy projektu oprogramowania
  • Identyfikuj i kontroluj produkty, zgłaszaj problemy, zmiany itp.
  • Procesy mogą się różnić w zależności od projektu
  • Procesy stają się łatwiejsze do zrozumienia
  • Menedżerowie i członkowie zespołu spędzają mniej czasu na wyjaśnianiu, jak rzeczy są wykonywane, a więcej na ich wykonywaniu
  • Projekty są lepiej oszacowane, lepiej zaplanowane i bardziej elastyczne
  • Jakość jest zintegrowana z projektami
  • Koszty mogą być początkowo wysokie, ale z czasem spadają
  • Poproś o więcej dokumentów i dokumentacji
Zdefiniowany na poziomie 3
  • Wyjaśnij wymagania klienta
  • Rozwiąż wymagania projektowe, opracuj proces wdrażania
  • Upewnia się, że produkt spełnia wymagania i przeznaczenie
  • Analizuj decyzje systematycznie
  • Napraw i kontroluj potencjalne problemy
  • Doskonalenie procesu staje się standardem
  • Rozwiązanie przechodzi od „kodowania” do „inżynierii”
  • Bramy jakości pojawiają się podczas całego projektu, w którym zaangażowany jest cały zespół
  • Ryzyko jest ograniczone i nie zaskakuje zespołu
Poziom 4 zarządzany ilościowo
  • Zarządza statystycznie procesami i podprocesami projektu
  • Zrozum wydajność procesu, ilościowo zarządzaj projektem organizacji
  • Optymalizuje wydajność procesów w całej organizacji
  • Wspiera ilościowe zarządzanie projektami w organizacji.
Optymalizacja poziomu 5
  • Wczesne wykrycie i usunięcie przyczyny usterek
  • Identyfikuj i wdrażaj nowe narzędzia i ulepszenia procesów, aby sprostać potrzebom i celom biznesowym
  • Wspiera innowacje organizacyjne i wdrażanie
  • Daje impuls do analizy przyczyn i rozwiązania

Poniższy diagram przedstawia obrazowo to, co dzieje się na różnych poziomach maszyny współrzędnościowej

Jak długo trwa wdrożenie CMM?

CMM jest najbardziej pożądanym procesem utrzymania jakości produktu dla każdej firmy tworzącej oprogramowanie, ale jego wdrożenie trwa niewiele dłużej niż oczekiwano.

  • Wdrożenie CMM nie następuje z dnia na dzień
  • To nie tylko „papierkowa robota”.
  • Typowy czas na wdrożenie to
    • 3-6 miesięcy -> na przygotowanie
    • 6-12 miesięcy -> na realizację
    • 3 miesiące -> na przygotowanie oceny
    • 12 miesięcy -> na każdy nowy poziom

Struktura wewnętrzna CMM

Każdy poziom w CMM jest zdefiniowany jako kluczowy obszar procesu lub KPA , z wyjątkiem poziomu-1. Każdy KPA definiuje zbiór powiązanych działań, które wykonywane zbiorczo pozwalają osiągnąć zestaw celów uważanych za istotne dla poprawy możliwości oprogramowania

Dla różnych poziomów maszyny współrzędnościowej istnieje zestaw KPA, na przykład dla maszyny współrzędnościowej model-2, KPA są

  • REQM - Zarządzanie wymaganiami
  • PP - Planowanie projektu
  • PMC - Monitorowanie i kontrola projektu
  • SAM - Zarządzanie umowami z dostawcami
  • Proces PPQA i zapewnienie jakości
  • Zarządzanie konfiguracją CM

Podobnie w przypadku innych modeli maszyn współrzędnościowych masz określone KPA. Aby dowiedzieć się, czy wdrożenie KAL jest efektywne, trwałe i powtarzalne, należy je odwzorować na następnych podstawach

  1. Zaangażowanie w działanie
  2. Umiejętność wykonania
  3. Wykonywanie czynności
  4. Pomiary i analiza
  5. Weryfikacja implementacji

Ograniczenia modeli CMM

  • CMM określa, do czego powinien odnosić się proces, a nie jak powinien być wdrażany
  • Nie wyjaśnia wszystkich możliwości usprawnienia procesu tworzenia oprogramowania
  • Koncentruje się na kwestiach oprogramowania, ale nie bierze pod uwagę strategicznego planowania biznesowego, wdrażania technologii, tworzenia linii produktów i zarządzania zasobami ludzkimi
  • Nie mówi, w jakim biznesie powinna się znajdować organizacja
  • CMM nie przyda się w projekcie, który ma teraz kryzys

Dlaczego warto korzystać z CMM?

Obecnie maszyny współrzędnościowe pełnią rolę „pieczęci aprobaty” w branży oprogramowania. Pomaga na różne sposoby w poprawie jakości oprogramowania.

  • Prowadzi do powtarzalnego standardowego procesu, a tym samym skraca czas nauki wykonywania zadań
  • Praktykowanie CMM oznacza przećwiczenie standardowego protokołu do celów programistycznych, co oznacza, że ​​nie tylko pomaga zespołowi zaoszczędzić czas, ale także daje jasny obraz tego, co robić i czego się spodziewać
  • Działania wysokiej jakości dobrze komponują się z projektem, a nie są traktowane jako osobne wydarzenie
  • Działa jako osoba dojeżdżająca między projektem a zespołem
  • Wysiłki CMM mają zawsze na celu poprawę procesu

Podsumowanie

CMM została po raz pierwszy wprowadzona pod koniec lat 80-tych w amerykańskich siłach powietrznych w celu oceny pracy podwykonawców. Później, w ulepszonej wersji, został zaimplementowany w celu śledzenia jakości systemu tworzenia oprogramowania.

Cały poziom CMM jest podzielony na pięć poziomów.

  • Poziom 1 (początkowy): Tam, gdzie wymagania dotyczące systemu są zwykle niepewne, niezrozumiane i niekontrolowane. Proces jest zwykle chaotyczny i doraźny.
  • Poziom 2 (zarządzany): Oszacuj koszt projektu, harmonogram i funkcjonalność. Zdefiniowano standardy oprogramowania
  • Poziom 3 (zdefiniowany): zapewnia, że ​​produkt spełnia wymagania i jest zgodny z przeznaczeniem
  • Poziom 4 (zarządzany ilościowo): Statystycznie zarządza procesami i podprocesami projektu
  • Poziom 5 (dojrzałość): identyfikacja i wdrażanie nowych narzędzi i usprawnień procesów w celu spełnienia potrzeb i celów biznesowych