Ocena procesu tworzenia oprogramowania

Ocena procesu tworzenia oprogramowania to zdyscyplinowane badanie procesów oprogramowania stosowanych w organizacji w oparciu o model procesu. Ocena obejmuje identyfikację i charakterystykę obecnych praktyk, identyfikację obszarów mocnych i słabych stron oraz zdolność obecnych praktyk do kontrolowania lub unikania istotnych przyczyn niskiej jakości (oprogramowania), kosztów i harmonogramu.

Ocena oprogramowania (lub audyt) może mieć trzy typy.

  • ZA self-assessment (first-party assessment) jest wykonywana wewnętrznie przez własny personel organizacji.

  • ZA second-party assessment jest przeprowadzana przez zewnętrzny zespół oceniający lub organizacja jest oceniana przez klienta.

  • ZA third-party assessment jest wykonywana przez stronę zewnętrzną lub (np. dostawca oceniany przez stronę trzecią w celu zweryfikowania jego zdolności do zawierania umów z klientem).

Oceny procesów oprogramowania są przeprowadzane w otwartym i opartym na współpracy środowisku. Przeznaczone są do użytku organizacji w celu ulepszenia jej procesów oprogramowania, a wyniki są poufne dla organizacji. Oceniana organizacja musi mieć członków zespołu oceniającego.

Ocena dojrzałości procesu tworzenia oprogramowania

Zakres oceny procesu tworzenia oprogramowania może obejmować wszystkie procesy w organizacji, wybrany podzbiór procesów oprogramowania lub określony projekt. Większość podejść do oceny procesu opartych na standardach niezmiennie opiera się na koncepcji dojrzałości procesu.

Gdy celem oceny jest organizacja, wyniki oceny procesu mogą się różnić, nawet przy kolejnych zastosowaniach tej samej metody. Istnieją dwa powody różnych wyników. Oni są,

  • Należy określić badaną organizację. W przypadku dużej firmy możliwych jest kilka definicji organizacji, dlatego rzeczywisty zakres oceny może się różnić w kolejnych ocenach.

  • Nawet w przypadku tego, co wydaje się być tą samą organizacją, próba projektów wybrana do reprezentowania organizacji może wpływać na zakres i wynik.

Gdy docelowa jednostka oceny znajduje się na poziomie projektu, ocena powinna obejmować wszystkie znaczące czynniki, które przyczyniają się do sukcesu lub porażki projektu. Nie należy go ograniczać ustalonymi wymiarami danego modelu dojrzałości procesu. W tym miejscu ocenia się stopień realizacji i ich skuteczność, potwierdzoną danymi z projektu.

Dojrzałość procesu staje się istotna, gdy organizacja zamierza zastosować ogólną długoterminową strategię doskonalenia. Oceny projektów oprogramowania powinny być niezależnymi ocenami, aby były obiektywne.

Cykl oceny procesu tworzenia oprogramowania

Według Paulka i współpracowników (1995) podejście do oceny oparte na CMM wykorzystuje sześciostopniowy cykl. Oni są -

  • Wybierz zespół - członkowie zespołu powinni być specjalistami posiadającymi wiedzę w zakresie inżynierii oprogramowania i zarządzania.

  • Przedstawiciele ocenianego miejsca wypełniają standardowy kwestionariusz dojrzałości procesu.

  • Zespół oceniający przeprowadza analizę odpowiedzi na pytania zawarte w kwestionariuszu i identyfikuje obszary, które wymagają dalszej eksploracji zgodnie z kluczowymi obszarami procesu CMM.

  • Zespół oceniający przeprowadza wizytę w witrynie w celu zrozumienia procesu tworzenia oprogramowania w witrynie.

  • Zespół oceniający sporządza listę ustaleń, która identyfikuje mocne i słabe strony procesu tworzenia oprogramowania w organizacji.

  • Zespół oceniający przygotowuje analizę profilu Kluczowego Obszaru Procesu (KPA) i przedstawia wyniki odpowiedniej grupie odbiorców.

Na przykład, zespołem oceniającym musi kierować upoważniony Główny Asesor SEI. Zespół musi składać się z od czterech do dziesięciu członków zespołu. Co najmniej jeden członek zespołu musi pochodzić z ocenianej organizacji, a wszyscy członkowie zespołu muszą ukończyć wprowadzenie SEI do kursu CMM (lub jego odpowiednika) oraz szkolenie zespołu SEI CBA IPI. Członkowie zespołu muszą również spełnić pewne wytyczne dotyczące selekcji.

Jeśli chodzi o gromadzenie danych, CBA IPI opiera się na czterech metodach:

  • Standardowy kwestionariusz dojrzałości
  • Wywiady indywidualne i grupowe
  • Recenzje dokumentów
  • Informacja zwrotna z przeglądu wstępnych ustaleń z uczestnikami oceny

SCAMPI

Standardowa metoda oceny CMMI dla doskonalenia procesu (SCAMPI) została opracowana w celu spełnienia wymagań modelu CMMI (Software Engineering Institute, 2000). Opiera się również na CBA IPI. Zarówno CBA IPI, jak i SCAMPI składają się z trzech faz -

  • Plan i przygotowanie
  • Przeprowadź ocenę na miejscu
  • Zgłoś wyniki

Działania związane z planem i fazą przygotowawczą obejmują:

  • Określ zakres oceny
  • Opracuj plan oceny
  • Przygotuj i przeszkol zespół oceniający
  • Dokonaj krótkiej oceny uczestników
  • Administrować kwestionariuszem oceny CMMI
  • Sprawdź odpowiedzi na pytania zawarte w kwestionariuszu
  • Przeprowadź wstępny przegląd dokumentów

Działania na etapie oceny na miejscu obejmują:

  • Przeprowadź spotkanie otwierające
  • Prowadzić przesłuchania
  • Skonsoliduj informacje
  • Przygotuj prezentację wstępnych ustaleń
  • Przedstaw wstępne ustalenia
  • Konsoliduj, oceniaj i przygotuj ostateczne ustalenia

Działania w fazie raportowania wyników obejmują:

  • Przedstaw ostateczne ustalenia
  • Przeprowadź sesję wykonawczą
  • Podsumuj ocenę