Wprowadzenie do jakości

Slides:



Advertisements
Podobne prezentacje
SKUTECZNOŚĆ i EFEKTYWNOŚĆ SYSTEMU
Advertisements

niemiecki z ekonomią w tle
Rodzaje testów oprogramowania
Jarosław Kuchta Jakość Systemów Informatycznych Jakość Oprogramowania
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Jarosław Kuchta Jakość Oprogramowania
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Diagramy stanów i diagramy aktywności
Wprowadzenie do jakości Oprogramowania
Jakość w procesie wytwarzania oprogramowania
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Modelowanie przypadków użycia
Jakość w procesie wytwarzania oprogramowania
Projektowanie w cyklu życia oprogramowania
Jarosław Kuchta Dokumentacja i Jakość Oprogramowania
Inżynieria Oprogramowania 10. Szacowanie kosztu oprogramowania cz. 2
7-8 października 2003, I Seminarium Integrujące Komponenty B.1 i B.2Projekt Usuwania Skutków Powodzi - Polska, kredyt nr 4264 POL 1 System Monitoringu.
Role w zespole projektowym
Analiza ryzyka projektu
Wykład (12 godz): Jan Aleksander Wierzbicki Ćwiczenia ( godz):
Zarządzanie projektem informatycznym ZPR
JAKOŚĆ & Metody Jej Pomiaru
1 / 47 WARSZAWA 2005 Przemysław Siekierko Stanisław Andraszek Rational Unified Process.
SYSTEMY ZARZĄDZANIA - GENEZA
SYSTEM ZARZĄDZANIA JAKOŚCIĄ
Zarządzanie konfiguracją Doskonalenie Procesów Programowych Wykład 6 Copyright, 2001 © Jerzy.
Komputerowe systemy sterowania Copyright, 2006 © Jerzy R. Nawrocki Wprowadzenie do informatyki.
Cykle życia oprogramowania
Systemy operacyjne.
Inżynieria Oprogramowania dla Fizyków
Marcin Barylski Katedra Architektury Systemów Komputerowych WETI PG
Życiorys mgr inż. Rafał Mikołajczak Katedra Architektury Systemów Komputerowych WETI PG Urodzony: r. Wykształcenie: studia na kierunku.
Jarosław Kuchta Jakość Systemów Informatycznych
Pomiary w inżynierii oprogramowania
Pomiary w inżynierii oprogramowania
Administracja zintegrowanych systemów zarządzania
Jakość systemów informacyjnych (aspekt eksploatacyjny)
Rational Unified Process
Analiza, projekt i częściowa implementacja systemu obsługi kina
Analiza i projektowanie systemów informatycznych Definiowanie i analiza wymagań
Wykład 7 Projektowanie kodu oprogramowania
Wykład 2 Cykl życia systemu informacyjnego
© Victo Testowanie dla menedżerów Wersja TDM Slajd 1 (27) Testowanie oprogramowania dla menedżerów Co menedżerowie i kierownicy naprawdę potrzebują
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
Wykład 1 – część pierwsza
Budowa systemu komputerowego
Microsoft Solution Framework
Zarządzanie jakością projektu
Systemy operacyjne. Komputer aby mógł realizować zadania oraz aby wszystkie urządzenia w systemie komputerowym mogły działać poprawnie, musi być wyposażony.
M i k r o j ą d r o D e f i n i c j a. M i k r o j ą d r o to rodzaj jądra systemu operacyjnego, które zawiera tylko najbardziej niezbędne elementy, takie.
Bezpieczeństwo a zarządzanie projektami
Dr Karolina Muszyńska Na podst.:
1 Każdy obiekt jest scharakteryzowany poprzez: tożsamość – daje się jednoznacznie wyróżnić; stan; zachowanie. W analizie obiektowej podstawową strukturą
Planowanie przepływów materiałów
Studium osiągalności. Rozmiar projektu (np. w punktach funkcyjny projektu w porównaniu do rozmiaru zakładanego zespołu projektowego i czasu Dostępność.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Jarosław Kuchta Jakość Oprogramowania
Dodatkowe slajdy (Koszty jakości)
Copyright © Jerzy R. Nawrocki Team Software Process Inżynieria oprogramowania II Wykład.
ZASTOSOWANIE KOMPUTEROWEGO WSPOMAGANIA W ZARZĄDZANIU JAKOŚCIĄ - METODY FMEA I QFD Politechnika Śląska, Wydział Organizacji i Zarządzania, Katedra Zarządzania.
Eksploatacja zasobów informatycznych przedsiębiorstwa.
Eye-tracking Nowoczesne metody badania zachowań wzrokowych
1 Dodatkowe slajdy prof.nadzw.dr hab. Zofia Zymonik (Koszty jakości)
Wykład 2 – Zintegrowane systemy informatyczne Michał Wilbrandt.
(c) InMoST 2006 Plan szkolenia ▪ Wprowadzenie (9:00-10:30): Czym jest szacowanie? (MO) Systematyczne podejście do planowania (ŁO) Planowanie, a kalendarz.
Zarządzanie projektami informatycznymi
IV Konferencja Naukowo-Techniczna "Nowoczesne technologie w projektowaniu, budowie.
Wykład 1 – część pierwsza
Zapis prezentacji:

Wprowadzenie do jakości Jarosław Kuchta Jakość Systemów Informatycznych Jakość Oprogramowania Wprowadzenie do jakości http://www.eti.pg.gda.pl/katedry/kask/pracownicy/Jaroslaw.Kuchta/Jakosc J.Kuchta@eti.pg.gda.pl

Znaczenie jakości systemów informatycznych Systemy bankowe Systemy medyczne Systemy projektowe Sterowanie ruchem (lotniczy, kolejowy, drogowy) Systemy energetyczne Samochody (zapłon, hamulce, sterowanie) Telefony Sprzęt AGD ... JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Statystyka projektów JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Skala problemu średni roczny koszt błędów (USA) ok. 60 mld USD 0,6% PKB 50% użytkownicy, 50% dostawcy oprogramowania 1/3 błędów można by uniknąć złożoność oprogramowania – 106 linii kodu 80% kosztów opracowania – na wykrywanie i usuwanie błędów JSI/JO Wprowadzenie do jakości

Przykłady skutków błędów 1962 – zboczenie z kursu rakiety nośnej sondy kosmicznej Mariner I 1982 – eksplozja gazociągu transsyberyjskiego 1985-87 – przedawkowania przy terapii radiologicznej aparatem THERAC-25 – USA, Kanada 1988 – pierwsze zarażenie komputerów w Berkeley przez robaka internetowego 1988-96 – brak bezpieczeństwa w systemie Kerberos 1990 – łańcuchowe załamanie komunikacji sieciowej AT&T 1993 – błąd dzielenia Intel Pentium 1995/96 – błąd w komunikacie „ping” 1996 – katastrofa rakiety Ariane 5 1998 – awaria nowojorskiej giełdy towarowej (NYMEX) 1999 – katastrofa sondy marsjańskiej Mars Orbiter 2000 – przedawkowania w National Cancer Institute, Panama City 2000 – problem roku 2000 JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Co to jest jakość? Stopień w jakim system, komponent lub proces /obiekt spełnia wyspecyfikowane wymagania  Stopień w jakim system, komponent lub proces /obiekt spełnia oczekiwania klienta lub użytkownika    IEEE Std. 610 - 1990 JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Wymagania systemowe Wymagania systemowe funkcjonalne niezawodnościowe funkcje zasoby dostępność gotowość obsługi interfejsy platformy ochrona przed intruzami czasowe czas reakcji czas oczekiwania porządek zdarzeń H.Krawczyk JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Wymagania a atrybuty Wymagania Atrybuty jakości funkcjonalne funkcjonalność czasowe wydajność niezawodnościowe wiarygodność ograniczenia elastyczność JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości „Drzewo” jakości Jakość Funkcjonalność Wydajność Wiarygodność Satysfakcja Elastyczność Kompletność funkcjonalna Efektywność wykonania Niezawodność Łatwość użycia Przenośność Odporność na błędy Modyfikowalność Zrozumiałość Złożoność Wydajność interakcji Bezpieczeństwo Łatwość nauki Konfigurowalność Adekwatność Stabilność Łatwość testowania Ochrona Spójność Skalowalność Produktywność Łatwość testowania Łatwość śledzenia Akceptowalność Łatwość testowania JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Funkcjonalność Funkcjonalność (Functionality) – dopasowanie systemu do potrzeb funkcjonalnych Kompletność funkcjonalna (Functional completness) – stopień pokrycia wymaganych funkcji Złożoność (Complexity) – stopień skomplikowania systemu i jego elementów Adekwatność (Adequacy) – stopień dopasowania wykonywanych funkcji do ich specyfikacji Spójność (Integrity) – stopień dopasowania poszczególnych elementów systemu do siebie Łatwość śledzenia (Traceability) – łatwość orientowania się w sposobie działania systemu Łatwość testowania (Testability) – łatwość sprawdzenia poprawności działania systemu JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Wydajność Wydajność (Performance) – zbiór cech związanych z osiągami systemu Efektywność wykonania (Execution efficiency) – szybkość działania systemu Wydajność interakcji (Interaction performance) – szybkość komunikacji z użytkownikiem Stabilność (Stability) – odporność systemu na zmiany środowiska (platformy programistycznej, systemu operacyjnego, zmiennych środowiskowych) Skalowalność (Scalability) – podatność systemu na zmianę (zwiększenie) wymagań ilościowych JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Wiarygodność Wiarygodność (Dependability) - stopień zaufania do systemu Niezawodność (Reliability) - określa, czy system nie upadnie i można korzystać z jego usług Odporność na błędy (Error-tolerance) - stopień tolerancji błędów; Bezpieczeństwo (Safety) - stopień zapobiegania szkodom, jakie system może wyrządzić w otoczeniu Ochrona (Security) - stopień kontroli dostępu do systemu Łatwość testowania (Testability) - zdolność do wykrywania i identyfikacji błędów w systemie JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Satysfakcja Satysfakcja (Satisfaction) – zespół cech określających stopień zadowolenia użytkownika Łatwość użycia (Ease of use) – łatwość obsługi produktu Zrozumiałość (Understandability) – łatwość zrozumienia produktu wynikająca z zastosowanych konwencji jego opisu Łatwość nauki (Learnability) – nakład pracy wymagany do zdobycia umiejętności posługiwania się produktem Produktywność (Productivity) – stopień wspomagania zadań użytkownika przez system Akceptowalność (Acceptance) – stopień akceptacji przez użytkownika JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Elastyczność Elastyczność (Flexibility) – umiejętność dopasowania się systemu do zachodzących zmian Przenośność (Portability) – łatwość przystosowania systemu do nowego środowiska lub rozszerzenia środowiska Modyfikowalność (Modifiability) – łatwość wprowadzania zmian w funkcjach systemu Konfigurowalność (Configurability) – łatwość dostosowania systemu do potrzeb użytkownika bez konieczności zmian jego funkcji Łatwość testowania (Ease of testing) – łatwość projektowania i wykonywania testów JSI/JO Wprowadzenie do jakości

Wagi atrybutów w różnych klasach aplikacji (1) Klasy aplikacji Specjalistyczne Internetowe Czasu rzeczywistego Wiarygodność 0,3 0,5 1 Bezpieczeństwo Niezawodność Ochrona Odporność na błędy 0,6 Łatwość testowana 0,9 JSI/JO Wprowadzenie do jakości

Wagi atrybutów w różnych klasach aplikacji (2) Klasy aplikacji Specjalistyczne Internetowe Czasu rzeczywistego Satysfakcja 0,3 0,9 0,6 Łatwość użycia 0,7 1 0,8 Zrozumiałość 0,2 Łatwość nauki Produktywność Akceptowalność 0,5 JSI/JO Wprowadzenie do jakości

Wagi atrybutów w różnych klasach aplikacji (3) Klasy aplikacji Specjalistyczne Internetowe Czasu rzeczywistego Funkcjonalność 0,8 0,9 Kompletność funkcjonalna 1 0,6 Złożoność 0,5 Adekwatność Spćjność 0,7 Łatwość śledzenia 0,4 JSI/JO Wprowadzenie do jakości

Wagi atrybutów w różnych klasach aplikacji (4) Klasy aplikacji Specjalistyczne Internetowe Czasu rzeczywistego Elastyczność 0,3 1 Przenośność 0,1 0,2 Modyfikowalność Konfigurowalność 0,7 0,9 Łatwość testowania JSI/JO Wprowadzenie do jakości

Wagi atrybutów w różnych klasach aplikacji (5) Klasy aplikacji Specjalistyczne Internetowe Czasu rzeczywistego Wydajność 0,2 0,8 0,4 Skalowalność 0,1 1 Stabilność Wydajność interakcji 0,5 Efektywność wykonania JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Atrybuty a metryki Jakość Funkcjonalność Wydajność Wiarygodność Satysfakcja Elastyczność Kompletność funkcjonalna Atrybuty – cechy jakościowe produktu, świadczą o jego wartości dla użytkownika Złożoność Metryki – cechy ilościowe, określają sposób oceny poszczególnych atrybutów Adekwatność Spójność Łatwość śledzenia Łatwość testowania JSI/JO Wprowadzenie do jakości

Wyznaczenie atrybutów Jakość Funkcjonalność Wydajność Wiarygodność Satysfakcja Elastyczność Kompletność funkcjonalna Mj – metryka [0 – 1] × = j i w M A Złożoność Adekwatność wj – waga metryki ? Spójność Ai – atrybut [0 – 1] Łatwość śledzenia Łatwość testowania JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Metryki a miary Liczba zrealizowanych funkcji Kompletność funkcjonalna = Liczba wymaganych funkcji Metryka – to co się mierzy Miara – jak się mierzy [%] [MFLOPS] [KLOC] [0 – 1] ? JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Miary a pomiary 0,95 ekspert1 0,94 ekspert2 0,96 AVG Miara 0,99 ekspert3 ? 0,92 ekspert4 1 ekspert5 Czy jakość = 0,6 to dużo, czy mało? JSI/JO Wprowadzenie do jakości

Podsumowanie problemów z oceną jakości Jakość jest pojęciem złożonym Pomiar jest często subiektywny Często brak punktu odniesienia Problem z normalizacją wyniku pomiaru Wagi mogą być arbitralnie ustalone Problem z oceną wyniku JSI/JO Wprowadzenie do jakości

Wprowadzenie do jakości Literatura http://www.nist.gov/public_affairs/releases/n02-10.htm (2002) http://www.galorath.com/wp/software-project-failure-costs-billions-better-estimation-planning-can-help.php Norton Fenton: Software Metrics, Chapman Hall, 1998. John L. Hennesy & David Patterson: Computer Architecture a quantitative approach. Morgan Kaufmann Publishers, Inc, 1996 Pressman R.S., Software engineering. A practitioner’s approach, McGraw-Hill, International Edition, 1992 Górski J. et al., Inżynieria oprogramowania w projekcie informatycznym, wyd. Mikom, Warszawa, 2000 JSI/JO Wprowadzenie do jakości