Czy jest zarządzanie jakością? Analiza zarządzania jakością

Transkrypt

Czy jest zarządzanie jakością? Analiza zarządzania jakością
Zarządzanie jakością w IT
Czy jest zarządzanie jakością?
Zarządzanie jakością, między innymi, to:
•identyfikacja standardów, które odpowiadają wymaganiom projektu
•wykonywanie zaplanowanych procesów tak aby zostały spełnione wymagania projektu,
•śledzenie wyników projektu,
•analiza czy zaplanowane standardy jakości są spełnione,
•identyfikacja sposobów wyeliminowania elementów nie spełniających norm jakości.
Z innego punktu widzenia zarządzanie jakością to:
•planowanie jakości,
•zapewnianie jakości,
•kontrola jakości.
Kontrola jakości ma za zadanie weryfikować, czy produkt spełnia wymagania jakości, w przeciwieństwie do
zapewniania jakości. Zapewnienie jakości (Quality Assurance) definiuje i optymalizuje procesy, które są
używane podczas wytwarzania produktu.
Tyle w teorii..., ale czy można te formalizmy nałożyć na codzienną pracę, na przykład dostarczając usługę
instalacji i konfiguracji platformy z systemem zarządzania danymi lub wytwarzając nową aplikację? Tak.
Wymaga to trochę czasu i wysiłku, ale w efekcie dostarczane rozwiązania będą wysokiej jakości produktami.
Metody, standardy, rozwiązania, aplikacje, oraz skróty użyte w tym artykule są szerzej opisane w dostępnych
publikacjach w Internecie, do których, pod koniec tego artykułu, zostały udostępnione linki.
Analiza zarządzania jakością
Prawidłowe zarządzanie jakością musi uwzględniać wiele elementów. Nie ma stałej listy zadań, która musi
zrealizowana przez osoby odpowiedzialne za zarządzanie i kontrolę jakości. Należy analizować, obserwować i
wyciągać wnioski z bardzo szerokiej palety sytuacji, które mają wpływ na jakość, na przykład:
•Odpowiedzialność całego zespołu za jakość - Nie można definiować zarządzania jakością jako zadania, za które
odpowiedzialny jest kierownik projektu lub inny przełożony (choć niektóre metodologie mówią inaczej).
Jakość wynika z pracy całego zespołu: programistów, testerów, architektów, analityków i administratorów.
Kierownik projektu natomiast powinien dostać po głowie od klienta, za to, że jakość jest nieodpowiednia.
Przykład:
Jakość wytwarzanego kodu jest zależna od tego, czy zespół dysponuje wspólnymi zasadami programowania.
Warto poszukać dokumentów, w których zawarte są dobre praktyki i zaadaptować je do swojego zespołu, jak
na przykład Dotnet Spider Best Practises. Można też wykorzystywać darmowe narzędzia do kontroli
standardów kodowania, takie jak FXCop. Dzięki standardom zwiększamy stabilność, możliwość rozwoju
(elastyczność) i upraszczamy zarządzanie kodem.
•Zadowolenie klienta - zarządzanie jakością jest dynamiczne, i musi się dostosować do wymagań klienta.
Wszystkie działania muszą dążyć do tego, aby jakość była wysoce zadowalająca, ale musi być także zgodna ze
standardami wewnętrznymi w firmie, projekcie i zespole.
•Ciągły rozwój - Total Quality Management is not a destination but a journey toward improvement, czyli Pełne
zarządzanie jakością to nie cel a podróż ku doskonałości -jakość musi ewoluować, i musi być ciągle ulepszana.
Wydrukowano w dniu 2017-03-04 13:37
Nie ma produktów idealnych.
Błędne zarządzanie jakością można zidentyfikować poprzez obserwację oraz analizę projektu i produktu.
Wykrywając niską jakość rozwiązania, powtarzające się błędy oraz niedozwolenie klienta, jesteśmy w stanie
określić błędy zarządzania jakością.
Przykład:
Od kilku godzin prowadzona jest instalacja pełnego środowiska SharePoint 2010. W ostatnim etapie, podczas
uruchomienia SharePoint 2010 Products Configuration Wizard pojawia się błąd:
Unrecognized attribute 'allowInsecureTransport'.
Rozwiązaniem problemu na szybko jest zainstalowanie poprawki KB9776462 dla Windows Server 2008 R2. Nie
można jednak oczekiwać, że każdy administrator będzie od razu to wiedział. Stres wywołany błędem pod
koniec ostatniego etapu instalacji i konfiguracji, wydłuży czas pracy i być może spowoduje dalsze błędy.
Rozwiązaniem problemu w kontekście zarządzania jakością jest precyzyjne zdefiniowanie zadań podczas
procesu wstępnej analizy środowiska klienckiego. W tym przypadku wyraźnie widać, że środowisko nie ma
aktualnych poprawek, więc osoba przeprowadzająca instalację środowiska powinna być na to przygotowana,
instalując wymagane poprawki lub zlecić to w dziale IT firmy, w której wykonujemy wdrożenie. Proces wstępnej
analizy środowiska powinien zawierać zadanie, które polega na sprawdzeniu stanu aktualizacji poprawek
środowiska.
Powyższe przykłady nie są rozwiązaniem problemu jakości, ale jedynie początkiem drogi dla każdego, który
chce na poważnie uwzględniać ją w swojej codziennej pracy. Wszystkie zawarte tu obszary i opisy nie
odzwierciedlają w pełni tego, co należy traktować jako jakość - tu zawarte są przykłady, dzięki którym można
zrozumieć jakość jako niezbędny element w każdym zadaniu.
Metody i standardy
Najbardziej rozpowszechnionym standardem, od którego wywodzi się wiele metod jest ISO/IEC 9126 Software engineering - Product quality. Standard ten definiuje model oraz różnego typu metryki, które
określają jakość produktu. Model uwzględnia takie obszary jak:
•Funkcjonalność
•Niezawodność
•Użyteczność
•Wydajność
•Łatwość utrzymania
•Przenośność
W zarządzaniu jakością warto wspomagać się jakąś metodą, a rynek oferuje ich wiele, także wspieranych przez
zaawansowane strategie zarządzania. Kontrola statystyczna procesów (Statistical Process Control) na przykład
pozwala na kontrolowanie procesów do tego stopnia, że zaczynają się zachowywać przewidywalnie.
Narzędziami SPC są wykresy oraz kluczowe czynniki wydajności (KPI), które wyznaczają w wartościach
liczbowych możliwości procesu i określają ryzyko utraty jakości produktu.
Ciekawym podejściem do zaplanowania jakości jest metoda Design Of Experiments (DOE). Uproszczając, jest to
rozwiązanie polegające na zbieraniu informacji podczas eksperymentowania z rozwiązaniem, wyszukując
elementów, które mogą być niestabilne z punktu widzenia jakości.
Wydrukowano w dniu 2017-03-04 13:37
Przykład
Przechodząc od wymagań klienta do implementacji należy uwzględnić wiele aspektów, których klient nie
uwzględnił w specyfikacji, ale na pewno nam wytknie jako nasz błąd. Kiedy klient wymaga aby rozwiązanie było
bezpieczne, my musimy brać pod uwagę wiele elementów, których klient nie wyspecyfikował. Najprostszym
przykładem jest konfiguracja kont użytkowników:
•Konta nie używane powinny być usunięte z serwera (włączając to w konto Guest)
•Nazwa konta Administrator powinna zostać zmieniona
•Stworzyć osobne konta do obsługi usług (Services)
•Zdefiniować poprawnie grupy dostępu do odpowiednich kolekcji witryn w SharePoint
Tworząc środowisko, możemy eksperymentować, i wyszukiwać tych elementów, które nie spełnią wymagań
klienta i co mogą wpłynąć na negatywną opinię o jakości produktu i projektu. W ten sposób także generujemy
jakość.
Wyniki planowania jakości
Planowanie jest w pełni zależne od standardów zdefiniowanych dla projektu. Planowanie nie jest procesem
jednorazowym, a ciągłym. W żaden sposób nie powinno się zamykać możliwości zwiększenia jakości, tylko
dlatego, że proces planowania został zakończony. Z drugiej strony jednak należy pamiętać, że dobrze
zaplanowana jakość na początku projektu skutkuje w obniżeniu jego kosztów, wyższej produktywności
pracowników i wyższemu zadowoleniu klienta. Planowanie jakości to dobór odpowiedniej metodyki oraz
oszacowanie kosztów jakości.
Ważnym aspektem jest zdefiniowanie kosztów jakości. Należy przeliczyć zyski i straty każdego kroku, który
podejmiemy, celem zapewnienia jakości.
Przykład
Narzucenie standardów kodowania spowoduje najprawdopodobniej zmniejszenie ilości błędów w
wygenerowanym kodzie. Dostarczając przewidywalny kod, jesteśmy także w stanie o wiele sprawniej wykryć
usterki. Usuwanie błędów w rozwijanym produkcie jest z czasem coraz bardziej kosztowne. Ustanowienie reguł
kodowania w dużej mierze zmniejsza ilość czasu, potrzebną na wykrycie i usunięcie problemu. Zatem
jednorazowy koszt stworzenia i wdrożenia standardów kodowania może być mniejszy od kosztów usuwania
błędów, których można było uniknąć poprzez spójne metody wytwarzania kodu.
Przykład
W przypadku SharePoint 2010, nie zalecane jest tworzenie widoków, prezentujących do 5000 elementów.
Przekroczenie tej wartości (choć jest to wartość konfigurowalna) może spowodować bardzo duże problemy z
wydajnością.
W tym przykładzie należy oszacować koszt naprawy rozwiązania, kiedy okaże się, że nie jest wydajne.
Być może w przypadku, gdy ograniczenie SharePoint stoi w konflikcie z wymaganiami klienta, trzeba będzie
poszukać alternatywnych rozwiązań co może zwiększyć koszty ale na pewno nie będzie trzeba naprawiać
rozwiązania (zmniejszone koszty) ponieważ planowanie jakości wyeliminowało ten błąd na początku procesu
produkcji.
Co może być wynikiem planowania jakości? Wynikiem powinien być plan. Istotą zarządzania jakością jest
analiza i wyciąganie wniosków, zatem plan nie musi być doskonały, ale na pewno musi być przemyślany. Wynik
zatem musi zawierać rozwiązania na problemy, które przewidzieliśmy i których się spodziewamy. Aczkolwiek
Wydrukowano w dniu 2017-03-04 13:37
nie można pomijać sytuacji, których przewidzieć nie jesteśmy w stanie, ale możemy się przygotować i
zareagować, minimalizując ewentualne straty.
Plan nie może być zamknięty, ponieważ analiza w trakcie projektu może wykazać, że potrzebne są następne
korekty produktu, które potencjalnie zwiększą jego jakość. Zatem konstrukcja musi być otwarta na nowe
zadania i procesy. Jest to niezwykle istotne dla długotrwających projektów.
Dla osób, które chciałyby zacząć planować wysokiej jakości wdrożenia SharePoint, polecam zapoznać się z
przykładowymi szablonami projektu wdrożenia udostępnionymi przez firmę Microsoft. Link jest dostępny
poniżej.
Wydrukowano w dniu 2017-03-04 13:37