Zarządzanie jakością i metryki oprogramowania


Zapewnienie jakości
produktu informatycznego
" Pomiar jako główny element technik
Zarządzanie jakością
zapewniania jakości
i metryki oprogramowania
" Statystyczna kontrola procesu
(jedna z podstaw sukcesu gospodarczego Japonii)
Organizacja i Zarządzanie
Projektem Informatycznym
" Zapewnienie jakości  w oprogramowaniu:
zbiorczy termin odnoszący się do zestawu mgliście
zdefiniowanych działań, w związku z którymi
Jarosław Francik,
większość ludzi nie dostrzega żadnej potrzeby
kwiecień 2002
dokonywania pomiarów
Norman Fenton
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Plan Podstawowe parametry mierzalne
" Zapewnienie jakości produktu informatycznego " Koszt i nakład pracy
" Podstawowe parametry mierzalne " Wydajność ludzi
" Metryki oprogramowania " Oprogramowanie
" Rejestrowanie problemów " Niezawodność
" Wybrane normy i standardy " Wydajność
" Podsumowanie " Złożoność
" Dojrzałość procesu wytwarzania
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Zapewnienie jakości
Podstawowe parametry mierzalne
produktu informatycznego
kryteria
czynniki
" Zapewnienie jakości (quality assurance): komunikatywność
użyteczność dokładność
użycie
Działanie związane z dostarczeniem wszystkim spójność
działanie
niezawodność
zainteresowanym dowodów wystarczających
efektywność urządzeń
produktu
do powstania przekonania, że funkcja jakości
efektywność dostępność
jest realizowana poprawnie
kompletność
wielokrotne
METRYKI
wykorzystanie
strukturalność
Zaplanowany i systematyczny ogół wszystkich działań
pielęgnowalność zwartość
niezbędnych do wytworzenia odpowiednio silnego
retrospekcja
niezal. od urządzeń
zaufania, że element lub produkt odpowiada
produktu
przenośność
czytelność
ustalonym względem niego wymaganiom technicznym
testowalność autoopisowość
norma IEEE 729 (1983)
śladowość
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
1
Metryki oprogramowania Metryki oprogramowania
Plan Pomiary gęstości defektów
" Wstęp: Elementy pomiaru oprogramowania
metryka gęstości defektów
" Pomiary gęstości defektów
" Pomiary wielkości
liczba defektów odkrytych w C
" Pomiary złożoności
M =
 nauka o programach Halsteada
rozmiar C
 liczba cyclomatyczna McCabea
" Szacowanie nakładów
Problemy:
 model COCOMO
 modelowanie regresyjne
 wyraża jakość programu czy może rzetelność testów?
" Szacowanie funkcjonalności  metoda punktów funkcyjnych
 brak zgody co do definicji defektu
" Dojrzałość procesu wytwarzania - model CMM
 brak zgody co do sposobu pomiaru rozmiaru kodu
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Metryki oprogramowania Metryki oprogramowania
Elementy pomiaru oprogramowania Pomiary gęstości defektów
" Pomiar:
metryka gęstości defektów
Proces, w którym atrybutom elementów świata
rzeczywistego przydzielane są liczby lub symbole
w taki sposób, aby scharakteryzować te atrybuty
liczba defektów odkrytych w C
M =
według jasno określonych zasad. Jednostki
rozmiar C
przydzielone atrybutom nazywamy ich miarą.
" Mimo to:
" LOC (Line of Code): jednostka miary długości
 standard de facto
programu (ale nie złożoności ani nawet
 formalne definicje na użytek wewnętrzny
rozmiaru)
 poszukiwanie możliwości porównania zewnętrznego
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Metryki oprogramowania Metryki oprogramowania
Elementy pomiaru oprogramowania Pomiary wielkości
" Elementy  przedmioty pomiaru: " Metryki długości kodu zródłowego:
 procesy  LOC  Lines of Code
(projektownie, kodowanie, pierwsze trzy miesiące)
 KLOC  Kilo Lines of Code
 produkty
 Liczba instrukcji
(kod zródłowy, specyfikacja, modyfikacja, plan testów,
 Liczba instrukcji wykonywalnych (bez deklaracji)
podręcznik użytkownika, pakiet instalacyjny)
 DSI  Delivered Source Instruction
 zasoby
(osoby, zespoły, oprogramowanie, infrastruktura, biura)
" Problemy:
" Mierzone atrybuty:
 mierzalne na etapie implementacji
 wewnętrzne
 trudne do wcześniejszego prognozowania
 zewnętrzne
 wielkość `"długość (co ze złożonością?)
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
2
Metryki oprogramowania Metryki oprogramowania
Pomiary złożoności Szacowanie nakładów
Nauka o programach Halsteada Model COCOMO
Halstead s software science Constructive Cost Model
n1  liczba różnych operatorów
n2  liczba różnych operandów
nakład pracy = a * rozmiar b [osobomiesiące]
N1  całkowita liczba wystąpień operatorów
rozmiar = KDSI  kilo DSI (Delivered Source Instructions)
N2  całkowita liczba wystąpień operandów
Wysiłek:
system ograniczony a = 2,4 b = 1,05
E = n1 N2 (N1 + N2) log(n1 + n1) / 2n2
system częściowo wydzielony a = 3,0 b = 1,12
Czas:
system wbudowany a = 3,6 b = 1,2
T H" E / 18 [s]
oraz wiele innych wskazników...
(http://yunus.hun.edu.tr/~sencer/complexity.html)
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Metryki oprogramowania Metryki oprogramowania
Pomiary złożoności Szacowanie nakładów
Model COCOMO
Liczba cyklomatyczna McCabe a
McCabe s cyclomatic number Constructive Cost Model
czas = a * nakład-pracy b [miesiące]
M = liczba niezależnych dróg w schemacie blokowym
system ograniczony a = 2,5 b = 0,38
M = liczba decyzji w programie + 1
system częściowo wydzielony a = 2,5 b = 0,45
system wbudowany a = 2,5 b = 0,32
" WADA:
 wymagana znajomość rozmiaru kodu
(jeden problem prognostyczny zastępujemy innym)
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Metryki oprogramowania Metryki oprogramowania
Pomiary złożoności Szacowanie nakładów
" Problemy: Model regresyjny
log E (nakład pracy)
Niektórzy twierdzą, że metryki te
nie są lepsze niż LOC!
10000
 nie pozwalają przewidzieć nakładu pracy, 1000
niezawodności, pielęgnowalności
 mierzalne na etapie implementacji 100
log E = log a + b * log S
 wciąż zbyt uproszczone (nie uwzględniają złożoności
log a
przepływów danych, zagnieżdżenia itd..)
10 E = a * S b
1K 10K 100K 1000K 10000K log S
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland (rozmiar)
3
e
i
n
e
l
y
h
c
a
n
=
b
Metryki oprogramowania Metryki oprogramowania
Szacowanie funkcjonalności Dojrzałość procesów wytwarzania
" Model dojrzałości procesu wytwarzania CMM
Metoda punktów funkcyjnych Albrechta
poziom 5:
optymalizujący
FP = UFC * TCF
poziom 4:
zarządzany
UFC  pierwotna liczba punktów funkcyjnych:
ważona liczba wejść, wyjść, logicznych plików głównych poziom 3:
(pamięć danych), plików interfejsowych i usług zdefiniowany
TCF  współczynnik złożoności technicznej:
poziom 2:
dodatkowy wpływ 14 innych czynników
powtarzalny
poziom 1:
International Function Point User Group
początkowy
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Metryki oprogramowania
Rejestrowanie problemów
Szacowanie funkcjonalności
Metoda punktów funkcyjnych Albrechta
" Rodzaje problemów:
 usterka (defekt)  wada w produkcie powstała na
skutek błędu człowieka
" Metoda precyzyjna
 awaria  odstępstwo systemu od wymaganego
" Prognoza uzyskiwana na podstawie specyfikacji
zachowania
NIE TRZEBA PROGNOZOWAĆ ROZMIARU
 incydent  niepożądane zdarzenie zaobserwowane
" Zastosowania:
podczas pracy systemu, mogące być skutkiem awarii
 metryka rozmiaru (zamiast LOC),
(ale niekoniecznie!)
 wydajności programistów,
 metryki gęstości defektów
" Podważana sensowność użycia TCF
" WADA: metoda skomplikowana i trudna w użyciu
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Metryki oprogramowania
Rejestrowanie problemów
Dojrzałość procesów wytwarzania
" Cel: Poprawa procesów programowych " Rejestrowane informacje:
(SPI  Software Process Improvement)  Lokalizacja
 Czas
" Model dojrzałości procesu wytwarzania
 Tryb
(CMM - Capability Maturity Model)
 Skutek
 Carnegie Mellon Univ.
 Mechanizm
 zastosowanie: Dept. Obrony USA
 Przyczyna
 Natężenie
 Koszt
ortogonalna baza cech
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
4
Rejestrowanie problemów Podsumowanie
"
" Raport o incydencie: " Rola metryk w zarządzaniu jakością
 Lokalizacja  id komputera, nr seryjny, platforma
" Cele:
 Czas  data i godzina wystąpienia incydentu
 polepszenie oceny nakładów na produkcję
 Tryb  komunikat o błędzie
oprogramowania
 Skutek  np. utrata danych, załamanie systemu
 ocena wydajności programistów
 Mechanizm  np. poprzedzające komendy klawiatury
 ocena i kontrola jakości końcowego produktu
 Przyczyna  próba diagnozy
 Natężenie  nieznaczny / powazny / krytyczny
 Koszt  koszt naprawy + utraconych danych
Institute of Informatics, Silesian University of Technology, Gliwice, Poland Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Rejestrowanie problemów
"
" Raport o usterce:
 Lokalizacja  id modułu lub dokumentu
 Czas  faza w której usterkę wprowadzono
 Tryb  sposób wykrycia usterki
 Skutek  opis awarii będącej skutkiem usterki
 Mechanizm  jak usterka powstała i jak ją wykryto
 Przyczyna  na czym polegał błąd człowieka
 Natężenie  czy może prowadzić do awarii (jakiej)
 Koszt  koszt lokalizacji i skorygowania
Institute of Informatics, Silesian University of Technology, Gliwice, Poland
Wybrane normy i standardy
" ISO 9001: Standard kontroli jakości
nie odnosi się do żadnej konkretnej branży
" ISO 9003
wersja ISO 9001 dotycząca oprogramowania
" TickIT
uregulowanie brytyjskie, oparte na ISO 9003
Institute of Informatics, Silesian University of Technology, Gliwice, Poland
5


Wyszukiwarka

Podobne podstrony:
Rola laboratoriów w świetle wymagań systemów zarządzania jakoscią
Zarzadzanie jakoscia rozwiazanie testu
Białka Zarządzanie jakością
Wspolczesne systemy zarzadzania Jakosc?zpieczenstwo ryzyko zaprak
Motywacja w systemie zarządzania jakością usług
Koncepcje zarządzania jakością
27 Zarządzanie jakością
zarządzanie jakością 1
zarządzanie jakością wykład 2
Zarzadzanie jakoscia teoria i praktyka zajako
zarzadzanie jakoscia wyklad 1
zarzadzanie jakoscia wyklad 1
04 Stosowanie procedur zarządzania jakością
notatek pl zarzadzanie jakoscia dr janusz niezgoda wyklady

więcej podobnych podstron