Treść książki
Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
1.
Wprowadzeniedotestowania
1.1.
Dlaczegotestowaniejestniezbędne
Komputeryisystemyinformatycznestałysięnieodzownymelementemnaszegocodzien-
negożycia.Oprogramowanie–czytowpostaciaplikacji,czyteżjakosystemywbudo-
wane–możnaznaleźćprawiewkażdymurządzeniu,poczynającodrakietykosmicznej,
askończywszynapralceczykuchencemikrofalowej.Wszyscynieustanniekorzystamy
ztakichurządzeń,dlategokażdyznasznalazłsięwielokrotniewsytuacji,wktórejuży-
wanyprzezniegosprzętlubprogramkomputerowyniedziałałtak,jakpowinien.Takie
sytuacjeniesądlaużytkownikakomfortowe.Tracimyprzeznieczas(ponowneurucho-
mieniekomputera)ipieniądze(zakupnowegosprzętupoawarii).Oileniektóreobjawy
źledziałającegooprogramowaniamogąpowodowaćjedynieirytacjęczyzłośćwywołaną
np.koniecznościąponownegouruchomieniaaplikacji,otylebłędywsystemachozna-
czeniukrytycznymmogądoprowadzićnawetdoutratyzdrowiaczyżycia.Przykładyta-
kichbłędówzostałyopisanewpodrozdziale1.3.
system(ang.system)–zbiórmodułówzorganizowanywceluosiągnięciazadanej
funkcjonalności[7]
systemkrytycznyzewzględówbezpieczeństwa(ang.safetycriticalsystem)–system,
któregoawarialubnieprawidłowedziałaniemożeskutkowaćśmierciąlubpoważ-
nymiobrażeniamiludzi,atakżeutratąuszkodzeniamiurządzeńlubzanieczyszcze-
niemśrodowiska
Głównąprzyczynąawariioprogramowaniasątkwiącewnimusterki,którezkolei
wynikajązpomyłekprogramistów.Programiścisątylkoludźmi,akażdyczłowiekpo-
pełniabłędy,zwieluróżnychprzyczyn.Skomplikowanyizłożonykod,pracapodpresją
czasu,wykorzystaniezaawansowanejtechnologii,dużainterakcjamiędzytworzonymi
3