Zarządzanie jakością oprogramowania

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj

Zarządzanie jakością oprogramowania (ang. Software Quality Assurance / Management) – proces mający na celu zapewnienie jakości tworzonego oprogramowania poprzez właściwe uruchomienie i zakończenie procesu testowania oprogramowania.

Informacje ogólne[edytuj | edytuj kod]

Zarządzanie jakością oprogramowania może być realizowane w różny sposób w zależności od organizacji i rodzaju realizowanego projektu, ale powinno wspierać cały proces rozwoju oprogramowania, tj.:

  • Zbieranie wymagań i definiowanie zakresu projektu – głównie pod kątem weryfikacji czy zdefiniowane wymagania będą możliwe do weryfikacji, tj. przetestowania. Jednym z produktów może być w tym przypadku strategia testów.
  • Projektowanie rozwiązania – głównie pod kątem zaplanowania procesu testowego, tj. rodzaju planowanych testów, sposobu realizacji tych testów np. poprzez zdefiniowanie środowisk testowych oraz sposobu pozyskania danych testowych. Jednym z produktów może być w tym przypadku plan testów zawierający harmonogram testów.
  • Kodowanie rozwiązania – poprzez bieżące tworzenie i realizacje scenariuszy i przypadków testowych oraz rejestrację defektów i ich sukcesywne rozwiązywanie. Oprogramowanie w trakcie poszczególnych iteracji może np. otrzymywać status alfa, beta, release candidate, silver i golden release. Jednym z produktów mogą być w tym przypadku scenariusze i przypadki testowe oraz raporty z realizacji iteracji testów.
  • Zarządzanie zmianami – poprzez weryfikację w jaki sposób planowane zmiany mogą wpłynąć na jakość tworzonego rozwiązania i zaplanowanie środków i sposobu zapewnienia jakości po realizacji zmiany. Jednym z produktów mogą być w tym przypadku zmiany planu testów oraz zmiany scenariuszy i przypadków testowych.
  • Zamknięcie projektu – poprzez realizację szeregu dedykowanych rodzajów testów mających na celu kompleksową weryfikację jakości tworzonego rozwiązania. Mogą to być przykładowo testy integracyjne (ang. System Integration Tests), testy akceptacyjne (ang. User Acceptance Tests) oraz testy operacyjne (ang. Operational Acceptance Tests). Jednym z produktów może być w tym przypadku rekomendacja dotycząca produkcyjnego uruchomienia systemu.

Powiązanie z metodykami IT[edytuj | edytuj kod]

Obraz pokazujący przykładową implementację Zarządzania jakością oprogramowania zgodnie z modelem V i metodyką RUP

Zarządzanie jakością oprogramowania jest tematyką powiązaną z różnymi metodykami zarządzania projektami, wytwórczymi i operacyjnymi m.in.

  • Metodyka zarządzania projektami PRINCE2 definiuje:
    • komponent „Jakość w środowisku projektowym”, który opisuje konieczność zastosowania podwójnej, obiektywnej kontroli wytwarzanych produktów oraz proponuje zastosowanie 4 składników – Systemu Zarządzania Jakością, Funkcji zapewnienia jakości, Planowaniu jakości i Kontroli jakości,
    • technikę „Przeglądy jakości” mają na celu weryfikację czy wytwarzane produkty spełniają przyjęte w projekcie kryteria jakości.
  • Metodyka zarządzania projektami PMBOK definiuje obszar wiedzy Zarządzania Jakością oraz następujące procesy:
  • Metodyka wytwórcza RUP definiuje dyscyplinę testowania, która jest zaangażowana we wszystkich etapach wytwarzania od Fazy rozpoczęcia do Fazy przekazania systemu
  • Metodyka wytwórcza MSF definiuje role testera i fazę stabilizacji, której głównym przedmiotem jest testowanie rozwiązania.
  • Metodyki adaptacyjne (ang. Agile) nie definiują precyzyjnie roli testera ani mechanizmów zarządzania jakością. Wskazują jedynie na konieczność zastosowania ciągłej integracji tworzonych rozwiązań (ang. Continuous Integration) i sugerują stosowanie techniki programowania kierowanego testami (ang. Test Driven Development). Nie mniej jednak w ostatnim okresie pojawia się coraz więcej informacji na temat praktyki adaptacyjnego testowania (ang. Agile testing).
  • Metodyka operacyjna CMMI definiuje między innymi obszar procesowy „Procesowe i produktowe zapewnienie jakości PPQA), które jest wymagane już w przypadku poziomu 2 w CMMI
  • Metodyka operacyjna COBIT definiuje między innym P08 Zarządzanie jakością (ang. P08 Manage Quality).
  • Metodyka operacyjna ITIL jest definiowana m.in. przez publikację Ustawiczne udoskonalanie usług (ang. Continual service improvement)
  • V-Model – model definiujący cykl życia oprogramowania i rolę procesu testowego w ramach tego modelu.
  • ISO 9000 – standard związany z systemami zarządzania jakością i stworzony w celu wsparcia organizacji w realizacji zaplanowanych potrzeb zgodnie z wymaganiami statutowymi i regulacyjnymi związanymi z wytwarzanymi produktami.

Stowarzyszenia i organizacje[edytuj | edytuj kod]

  • ISTQB (ang. International Software Testing Qualifications Board) to stowarzyszenie non-profit zarejestrowane prawnie w Belgii i działające na całym świecie, które zarządza procesem certyfikacji testerów oprogramowania. Organizacja ta wydała już ponad 200 000 certyfikatów ISTQB® (data: marzec 2012).
  • ASQ (ang. American Society for Quality) to globalna społeczność profesjonalistów do spraw jakości, zrzeszająca prawie 80 000 członków. Stowarzyszenie ma na celu promocję i rozwój jakości narzędzi, zasad i praktyk w miejscu pracy.

Zobacz też[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]