5 kluczowych różnic między zapewnianiem jakości a kontrolą jakości

Discover how to deliver better software and systems in rapidly scaling environments. Join our Community

W świecie technologii terminy kontrola jakości i zapewnianie jakości są często łączone jako QA/QC. Termin ten jest używany tak, jakby QA/QC stanowiły jeden pakiet, bez wyraźnego rozróżnienia między tymi rolami. Stało się powszechnym skrótem opisującym cały proces oceny jakości jako QA/QC.  Może to być mylące dla osoby nowej w tej dziedzinie (lub spoza niej), ponieważ […]

W świecie technologii terminy kontrola jakości i zapewnianie jakości są często łączone jako QA/QC. Termin ten jest używany tak, jakby QA/QC stanowiły jeden pakiet, bez wyraźnego rozróżnienia między tymi rolami. Stało się powszechnym skrótem opisującym cały proces oceny jakości jako QA/QC. 

Może to być mylące dla osoby nowej w tej dziedzinie (lub spoza niej), ponieważ jeśli chodzi o rzeczywistą pracę, którą wykonują, istnieją między nimi wyraźne różnice.

Jeśli różnica między kontrolą jakości a zapewnianiem jakości wydaje Ci się nieco zagmatwana, ten tekst jest dla Ciebie. Oto omówienie kilku ważnych różnic między QA/QC.

Główna różnica między QA a QC

Istnieje jedna podstawowa różnica między QA a QC. 

Zapewnianie jakości odbywa się na etapie tworzenia.

natomiast...

Kontrola jakości odbywa się po zakończeniu tworzenia. 

QA a QC

Istnieje pięć sposobów przeanalizowania różnic między QA/QC. Są to:

  1. Etap tworzenia
  2. Główny obszar zainteresowania
  3. Sposób wykonywania pracy
  4. Ważne umiejętności
  5. Co dzieje się po znalezieniu błędów?

Na każdym etapie zobaczysz, czym QA/QC różnią się od siebie. Po przeczytaniu tego artykułu będziesz mieć jasność co do tego, które obowiązki należą do zapewniania jakości, a które do kontroli jakości. 

Etap tworzenia

Zapewnianie jakości 

QA rozpoczyna się na wczesnym etapie cyklu tworzenia.

Niektóre formy testowania QA, takie jak testowanie statyczne, można przeprowadzać, zanim oprogramowanie będzie w pełni funkcjonalne. 

Dzięki współpracy z programistami na wczesnym etapie cyklu produkcyjnego można upewnić się, że błędy popełnione na początku nie przerodzą się w poważne problemy, gdy tworzenie będzie zbliżać się do końca. Testy QA będą przeprowadzane na każdym etapie tworzenia.

Get Free Access
Get regular tech leadership wisdom for delivering better software and systems.
Get Free Access

Have an account? Log In

Kontrola jakości 

QC rozpoczyna się po zakończeniu tworzenia. 

QC zapewnia, że stworzony produkt spełnia określone standardy i specyfikacje. Osoby zajmujące się QC weryfikują produkt, a ich celem jest utrzymanie niskiego wskaźnika defektów w momencie udostępnienia produktu publicznie. 

Główny obszar zainteresowania

Zarówno zapewnianie jakości, jak i kontrola jakości koncentrują się na znajdowaniu błędów i defektów. Dlatego często łączy się je jako QA/QC. Jednak choć mają ten sam cel, przyczyna, która kieruje ich pracą, jest inna. 

Zapewnianie jakości 

Celem QA jest znajdowanie, przewidywanie i zapobieganie błędom oraz nieefektywności w procesie tworzenia oprogramowania. 

Zespoły QA często ściśle współpracują z programistami, aby pomóc w naprawianiu błędów. Na przykład analitycy QA współpracują z różnymi zespołami — od kierowników projektów po liderów zespołów programistycznych — aby określić najbardziej optymalny sposób tworzenia produktu. 

QA ma charakter proaktywny. 

Kontrola jakości 

QC koncentruje się na znajdowaniu błędów i defektów w gotowym oprogramowaniu. Osoby zajmujące się QC upewniają się, że programiści, analitycy QA ani testerzy QA niczego nie przeoczyli. 

Kontrola jakości jest zasadniczo procesem reaktywnym, ponieważ odbywa się zbyt późno w cyklu tworzenia oprogramowania, aby sugerować programistom poprawki. 

Sposób wykonywania pracy przez QA/QC

Zapewnianie jakości 

QA to proaktywne podejście do znajdowania błędów i nieefektywności. 

Zespół QA często próbuje znaleźć sposoby na maksymalizację wydajności procesu tworzenia i testowania. Zespoły QA korzystają z metodologii takich jak integracja modelu dojrzałości zdolności (CCMI), która dzieli organizację na kilka obszarów i przypisuje każdemu z nich wartość od 1 do 5 w celu określenia stopnia jego dojrzałości. 

Stosując podejście takie jak CCMI, analitycy QA mogą identyfikować sposoby maksymalizacji wydajności i kontrolowania rezultatów. 

Kontrola jakości

Reaktywne podejście QC do wykrywania i znajdowania błędów oznacza, że osoby zajmujące się QC stosują inne metody wykonywania swojej pracy. 

Kontrola jakości (QC) przykłada ogromną wagę do dokładności. Uwzględnia również statystykę. Dział QC będzie miał coś, co nazywa się akceptowalnym poziomem jakości, czyli odsetkiem produktów, którym wolno nie przejść kontroli. W przypadku większości zadań akceptowalny poziom jakości wygląda następująco:

  • Wady krytyczne: 0%
  • Wady poważne: 2.5%
  • Wady drobne: 4%

Oznacza to, że zadaniem zespołu kontroli jakości jest zagwarantowanie, że żaden z produktów przeznaczonych do wydania nie ulegnie katastrofalnej awarii. 

Co się dzieje, gdy QA/QC znajdą błędy?

Zapewnianie jakości 

Jeśli tester QA znajdzie błąd w oprogramowaniu, udokumentuje swoje ustalenia, w tym sposób odtworzenia błędu, i zgłosi go zespołowi programistycznemu. 

Następnie zespół programistyczny naprawi problem i odeśle oprogramowanie do zespołu QA w celu przeprowadzenia dalszych testów. Tester QA pozostaje w stałym kontakcie z zespołem programistycznym. Dokumentacja jest niezbędna, aby wskazać programistom, gdzie popełniono błąd i jak go naprawić. 

Największą obawą testera QA jest sytuacja, w której błąd mieszczący się w zakresie jego testów trafi do środowiska produkcyjnego. Testerzy QA stanowią bufor między programowaniem a środowiskiem produkcyjnym.

Kontrola jakości

Do czasu rozpoczęcia testów błędów przez dział QC produkt jest ukończony i niemal gotowy do uruchomienia. 

Zespół QC będzie gromadzić dane, takie jak odsetek wadliwych jednostek, i przekazywać wyniki kierownictwu. To, co stanie się później, zależy od wyników ich testów. 

Jeśli odsetek wad w oprogramowaniu jest wysoki, zespół może zwołać spotkanie w celu opracowania planu usprawnienia procesu produkcyjnego (to naprawdę ostatnia rzecz, do której zespół ds. zapewniania jakości chciałby doprowadzić). 

Przez większość czasu, jeśli produkt mieści się w akceptowalnym poziomie jakości, zespół kontroli jakości zaoferuje korzyści każdemu klientowi, który doświadcza powtarzających się problemów. 

Kontrola jakości często stanowi bufor między produkcją a klientem. 

Ważne umiejętności 

More Articles

Zapewnianie jakości 

Testerzy QA muszą dobrze rozumieć popularne języki programowania. Pięć ważnych języków to:

  1. Python
  2. Java
  3. C++
  4. Ruby
  5. PHP

Co więcej, muszą wiedzieć, jak korzystać z popularnych narzędzi QA (takich jak Selenium).

Tester QA musi wykazywać się umiejętnością wykonywania przypadków testowych oraz dokumentowania swoich ustaleń w sposób łatwy do zrozumienia. Analityk QA, choć dobrze radzi sobie z wykonywaniem przypadków testowych, musi również umieć je tworzyć. 

Ponieważ zespół QA pozostaje w stałym kontakcie z programistami, ważna jest również umiejętność jasnego i precyzyjnego komunikowania się przez testerów QA. 

Kontrola jakości

Członkowie zespołu QC muszą dobrze rozumieć siedem kluczowych strategii kontroli jakości. Są to:

  1. Stratyfikacja: oddziela dane zebrane z wielu źródeł, aby ujawnić wzorce. 
  2. Histogram: popularny wykres służący do przedstawiania rozkładów częstotliwości. 
  3. Arkusz kontrolny: 
  4. Diagram przyczynowo-skutkowy: porządkuje pomysły i pomaga ujawnić zależności między potencjalnymi przyczynami. 
  5. Wykres Pareto: ustala priorytety czynników mających największy wpływ na problem. 
  6. Diagram rozrzutu: pomaga zobrazować zależność między zmiennymi. 
  7. Karta kontrolna: analizuje zmienność procesu w czasie. 

Ponadto zespół QC musi umieć gromadzić dokładne próbki danych, aby upewnić się, że produkt spełnia akceptowalny poziom jakości. 

Zrozumienie różnicy

W kontekście testowania istnieje wiele terminów i ról. Czasami łączy się je ze sobą, przez co różnice stają się niejasne. Czy teraz lepiej rozumiesz różnice między QA a QC? Daj mi znać w komentarzach!

Jason Boog
Over his 15-year career, Jason Boog has worked as a QA tester, QA analyst, and Senior QA Analyst on video games, commercial sites, and interactive web applications. He spent more than a decade building out the QA team and process as Director of Quality & Client Support at a full-service digital agency.
Follow the author:

You may also like