, e-mail: zabinska@agh.edu.pl Katedra Informatyki AGH, D17/ 2.27
[ISO 9000] Jakość jest określana jako ogół cech i właściwości wyrobu lub usługi wymaganych do zaspokojenia stwierdzonych lub przewidywanych potrzeb. Por.: co to jest dobry system parametry projektu informatycznego wymagania niefunkcjonalne, ograniczenia, pożądane cechy systemu informatycznego dodatkowe kryteria oceny rozwiązań (faza strategiczna)
Jakość - pojęcie stopniowalne (słaba, dobra, doskonała) Wskaźnik kategorii lub stopnia jakości danego produktu lub surowca określamy mianem klasy jakości
Dwa podstawowe rodzaje: jakość wyrobu (stopień spełnienia wymagań odbiorcy) jakość wykonania (zgodność z dokumentacją projektową i warunkami odbioru) Dla otrzymania produktu o określonej jakości niezbędne jest precyzyjne zdefiniowanie potrzeb. (Można otrzymać produkt wysokiej jakości w sensie formalnym, równocześnie nieodpowiedniej jakości z punktu widzenia zaspokojenia potrzeb klienta)
Bierna dotyczy systemu już wykonanego. Czynna obejmuje analizę procesu projektowania, gdzie w trakcie jej trwania następuje identyfikacja źródeł błędów, a następnie zostają podjęte działania korygujące. Częściowa (wyrywkowa) sprawdzane są tylko wybrane moduły systemu.
Uzyskanie produktu wysokiej jakości: zarządzanie jakością i kontrola jakości musi odbywać się w sposób ciągły lub cykliczny, podczas całego procesu tworzenia oprogramowania. Najlepiej sprawdzają się do tego celu metodyki oparte na iteracyjności (Agile software development, RUP) lub modele spiralne. Metodyki te pozwalają w sposób cykliczny dokonywać przeglądów produktu.
Ważnym aspektem jest odpowiednie wyważenie stosunku jakości do budżetu jakim dysponuje wykonawca projektu. Im częściej dokonujemy przeglądów tym bardziej produkt zyska na jakości. Jednocześnie jednak, wraz ze wzrostem częstotliwości przeglądów wzrasta koszt wytworzenia oprogramowania.
TQM - kompleksowe zarządzanie jakością, które wymaga strategicznego zaangażowania najwyższego kierownictwa na rzecz zmiany całego podejścia procesu projektowania systemu informacyjnego do prowadzenia takiej działalności, która uczyniłaby jakość najważniejszym czynnikiem we wszystkich pracach nad systemem
Podstawę działań TQM stanowią działania projektanta, który jest wspierany przez elementy twarde (zespoły, systemy i narzędzia) oraz elementy miękkie (kultura, komunikacja, zaangażowanie) Elementem, wokół którego skupia się kompleksowe zarządzanie jakością jest zawsze użytkownik.
Nowoczesność (czy produkt posiada elementy innowacyjności). Zgodność ze standardami. Dokładność wykonania (liczba usterek). Zgodność z pierwowzorem (specyfikacją wymagań). Najważniejszy wymiar jakości w TQM. Forma estetyczna produktu.
. PDCA: Plan (Zaplanuj), Do (Wykonaj), Check (Sprawdź), Act (Działaj).
Normy IEEE - The Institute of Electrical and Electronics Engineers, Inc. IEEE 610.12:1990. Standard Glossary of Software Engineering Terminology inologyterminologia IEEE 730:2002. Standard for Software Quality Assurance Plans- zapewnianie jakości IEEE 829:1998. Standard for Software Test Documentation- dokumentacja testowa, IEEE 1008:1993. Standard for Software Unit Testing- testowanie unit-ów IEEE 1012:1986. Standard for Verification and Validation Plans- walidacja i weryfikacja IEEE 1028:1997. Standard for Software Reviews and Audits- przeglądy i audyty IEEE 1044:1993. Standard Classification for Software Anomalies- klasyfikacja anomalii IEEE 1044-1, 1, a guide to the classification of software anomalieswprowadzenie do klasyfikacji anomalii IEEE 1061:1998. Standard for a Software Quality Metrics Methodology ogymetryki jakości IEEE 1219:1998. Software Maintenance- serwis IEEE 1233, a guide for developing system requirements specifications ions-
Normy jakości ISO/IEC ISO/IEC 2382-1:1993. Data processing - Vocabulary - Part 1: Fundamental Terms- słownik ISO 9000:2000. Quality Management Systems - Fundamental and Vocabulary- podstawy jakości oraz słownik ISO/IEC 9126-1:2001. Software Engineering - Software Product Quality (Part 1: Quality Model; Part 2: External metrics; Part 3: Internal metrics; Part 4: Quality in use metrics;)- model jakości oraz metryki ISO 10006, Quality management Guidelines to quality in project management- zarządzanie jakością ISO/IEC 12207:1995. Information Technology - Software Life Cycle Processes- cykle życia w tworzeniu oprogramowania ISO/IEC 14598-1:1996. Information Technology - Software Product Evaluation - Part 1: General Overview ISO/IES 29119 Software Testing
Normy przemysłu samochodowego Misra Standards Normy przemysłu lotniczego DO-178B:1992. Software Considerations in Airborne Systems and Equipment Certification, Requirements and Technical Concepts for Aviation (RTCA SC167)
jakość - ogół cech i właściwości wyrobu lub usługi decydujący o zdolności wyrobu lub usługi do zaspokojenia stwierdzonych lub przewidywanych potrzeb użytkownika produktu system jakości - odpowiednio zbudowana struktura organizacyjna z jednoznacznym podziałem odpowiedzialności, określeniem procedur, procesów i zasobów, umożliwiających wdrożenie tzw. zarządzania jakością
zarządzanie jakością - jest związane z aspektem całości funkcji zarządzania organizacji, który jest decydujący w określaniu i wdrażaniu polityki jakości polityka jakości - ogół zamierzeń i kierunków działań organizacji dotyczących jakości, w sposób formalny wyrażony przez najwyższe kierownictwo organizacji, będącej systemem jakości audyt jakości - systematyczne i niezależne badanie, mające określić, czy działania dotyczące jakości i ich wyniki odpowiadają zaplanowanym ustaleniom, czy te ustalenia są skutecznie realizowane i czy pozwalają na osiągnięcie odpowiedniego poziomu jakości
Wspomagania organizacji w procesie wdrażania Zaufanie i zadowolenie klienta Uzyskanie i utrzymanie jakości wyrobów Wspomaga proces zarządzania jakością Przeświadczenie kierownictwa oraz personelu firmy o spełnieniu wymagań jakościowych produktu
ISO 9001: system zapewniania jakości w projektowaniu, konstruowaniu, produkcji, instalowaniu i serwisie ISO 9002: system zapewniania jakości w produkcji, instalowaniu i serwisie ISO 9003: system zapewniania jakości w kontroli ostatecznej i badaniach ISO 9000-3: system zapewniania jakości w przypadku rozwoju, dostarczania i konserwacji oprogramowania
ISO 9004: systemy zarządzania jakością - Wytyczne doskonalenia funkcjonowania ISO 9126: charakterystyka dobrego oprogramowania od strony użytkownika
Ogół wymagań tej normy jest ujęty w 20 punktach szczegółowych, podzielonych na cztery grupy funkcje podstawowe (przegląd umowy, sterowanie procesem, kontrola, transport, przechowywanie, pakowanie, dostarczanie i serwis) elementy infrastruktury uzupełniającej funkcje nawigacji Funkcje misji systemu jakości
Definiuje charakterystykę dobrego oprogramowania: Funkcjonalność Użyteczność Niezawodność Efektywność Pielęgnowalność Przenaszalność
Norma IEEE-730 została uzupełniona i uszczegółowiona normą IEEE-983 analiza punktów widzenia referencje wykonawcy zarządzanie przedsięwzięciem informatycznym dokumentacja standaryzacja działań przeglądy i audyty zarządzanie konfiguracją oprogramowania raport napotykanych trudności i podjętych działań prewencyjnych wykorzystywane metody i narzędzia kontrola kodu, mediów, dostawców zarządzanie hurtowniami danych pielęgnacja.
Bazzana G., Anderson O., Jokela T., ISO9126 and ISO9000: friends or foes?, Software Engineering Standards Symposium Begier B., Inynieria Oprogramowania - Problematyka Jakosci, WPP 1999 Boehm B., Brown J., Lipow M., MacCleod G, Characteristics of software quality, NY, American Elsevier, 1978 Diaz M., Sligo J., How Software Process Improvement Helped Motorola, IEEE Software 17(5), 1997
Gajewski, Andrzej S., Wymiary jakości w TQM -.: Wstęp do zarządzania jakością. Tarnów, 2007, str. 36 Kisielnicki J., Zarządzanie projektami. Ludzie procedury wyniki. Warszawa 2011 Kobylinski A., ISO/IEC 9126 - analiza modelu jakosci produktów programowych, w: Systemy Wspomagania Organizacji 2003, T. Porebska-Miac
?
Trudności w budowaniu systemów informatycznych [Frederic P. Brooks, Jr. Mityczny osobomiesiąc. Eseje o inżynierii oprogramowania ]: Prawo Brooksa Podwojenie liczby osób, NIE skraca do połowy czasu realizacji projektu, a nawet wydłuża ten czas ze względu na nakład czasu i pracy na komunikację przekazywanie informacji w celu utrzymania spójności. ilość pracy(czas, koszt): n(n-1)/2; por. n=2; n=3
Trudności w budowaniu systemów informatycznych [Frederic P. Brooks, Jr. Mityczny osobomiesiąc. Eseje o inżynierii oprogramowania ]: Zasada Brooksa Harmonogramowanie prac projektowych: 1/3(planowanie)+1/6(kodowanie)+ +¼(testowanie części)+1/4 (testowanie całości)