Mragowo 2004, A. Blikle

Transkrypt

Mragowo 2004, A. Blikle
JAKO W SYSTEMACH
INFORMATYCZNYCH
Czy tak musi by ?
Andrzej Blikle
pa dziernik 2004
Deklaracja wykładowcy
Nie przyjmuj adnej odpowiedzialno ci za to, e w trakcie
wykładu obok informacji prawdziwych b d podawał
informacje cz ciowo lub całkowicie nieprawdziwe, b d
obra ał słuchaczy, zarzucał im pedofili , nepotyzm,
złodziejstwo oraz gotowo do przyjmowania łapówek.
B d równie zabierał im portfele i obcinał krawaty, a
tak e polewał ich trudno zmywalnymi farbami.
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
2
Definicja jako ci
Jako produktu jest tym wy sza, im mniej
jest w produkcie wad.
Wad produktu jest ka da taka jego cecha
negatywna, której u ytkownik ma si prawo
nie spodziewa .
Jako
pa dziernik 2004
produktu jest cech relatywn wobec
oczekiwa u ytkownika
Andrzej Blikle, Jako
w systemach informatycznych
3
Jako
a poziom oczekiwa
Maseratti
systemy
informatyczne
administracja
pa stwowa
pa dziernik 2004
Andrzej Blikle, Jako
zegarek
szwajcarski
Trabant
w systemach informatycznych
4
Katastrofy
mier sze ciu pacjentów w klinikach USA po bł dnie
policzonej przez komputer dawce promieniowania (1985)
Katastrofa ameryka skiego l downika na Wenus (198?)
Katastrofa platformy wiertniczej w norweskim fiordzie
(1991)
Katastrofa Airbusa w Warszawie (1993)
Przeoczenie przez niemieckie słu by meteorologiczne
zbli ania si huraganu Lothar (1999)
Bł dy zaokr gle w arytmometrze Intela (200?)
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
5
Drobne uci liwo ci
(kilka przykładów z do wiadcze własnych)
Czas ukazania si formularza na ekranie zale y do dnia miesi ca
Bł dnie działaj ca funkcja zaokr gle w bazie danych (np. odokr gla
liczby okr głe)
Raport PLU systemu kasowego niezgodny z pami ci fiskaln
Po zgrupowaniu rysunek w edytorze tekstu drukuje si jedynie w
cz ci lub wcale
Suma kolumny liczb w arkuszu kalkulacyjnym nie zale y od warto ci
jej składników
Problemy z moim palmtopem
Problemy z moim laptopem
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
6
Dwie ortogonalne dziedziny
wiedzy o jako ci
Kompleksowe zarz dzanie jako ci (TQM):
jak utrzymywa i doskonali jako przy
produkcji seryjnej
Wiedza bran owa: jak dobrze wykona
jedn sztuk
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
7
Główne typy wad w systemach
informatycznych
niezgodno z powszechn wiedz :
125/10 = 12,500000004632876
niezgodno z opisem systemu
nieprofesjonalny opis
Informatyka ewoluuje w
kierunku wiedzy
eksperymentalnej
pa dziernik 2004
Andrzej Blikle, Jako
główne ródło
problemów
w systemach informatycznych
8
JAK DO TEGO
DOSZŁO?
(zdaniem wykładowcy)
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
9
Nadzieje lat 1960-tych
Po wyj ciu z pionierskiego okresu lat 1950-tych in ynieria
oprogramowania b dzie upodabnia si do
klasycznych in ynierii:
•
podstawowa wiedza in ynieryjna oparta na
matematyce,
•
najpierw projekt pó niej produkt,
•
budowanie zło onych produktów z gotowych i
sprawdzonych podzespołów,
•
formalne uprawnienia zawodowe.
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
10
ALGOL 60
Alles was sich überhaupt sagen lässt, lässt sich klar sagen; und
wovon man nich reden kann, darüber muss man schweigen.
Ludwig Wittgenstein
Formalny opis składni (gramatyka bezkontekstowa) ca.10
stron
Nieformalny, ale do precyzyjny (abstrakcyjny) opis
semantyki: zmienna, blok, widoczno , procedura,
parametr procedury, rekursja; 33 strony
Podr cznik z przykładami: 170 stron
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
11
Semantyka Operacyjna
Vienna Definitional Language
Opis semantyki j zyka przy pomocy formalnego
opisu implementuj cej go maszyny abstrakcyjnej.
J zyk programowania traktowany jako j zyk
rozkazów dla maszyny.
Problem 1: Niski stopie abstrakcji, bliski opisowi
rzeczywistej implementacji,
Problem 2: Opis odległy od rzeczywistej implementacji
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
12
Dowodzenie poprawno ci programów
(logiki programów)
Przy pomocy testowania mo esz jedynie udowodni obecno
nie mo na jednak udowodni , e ich nie ma!
bł dów,
Alen Turing 1949
Bob Floyd (nagroda im. Turinga) lata 1960-te
Anthony Hoare (programy strukturalne) lata 1970-te
Andrzej Blikle (programy z zaci ciami) lata 1980-te
Problem 1: dowód jest zawsze dłu szy od twierdzenia,
Problem 2: nie da si udowodni poprawno ci niepoprawnego programu
Problem 3: podziałról na programistów i walidatorów
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
13
Semantyka denotacyjna
Vienna Definition Method
(1970-1980 Dana Scott, Dines Bjorner i inni)
Zaleta: wysoki stopie abstrakcji -- j zyk jako narz dzie opisu
algorytmu, a nie do sterowania maszyn .
Wada: fascynacja tym co skomplikowane i niepotrzebne:
nieograniczone goto-sy -- kontynuacje
procedura, która mo e przyj sam siebie jako parametr
VDM okazałsi zbyt skomplikowany
dla projektantów systemu
(cho u yto go do wykonania kompilatora j zyka ADA!)
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
14
Naiwna semantyka denotacyjna
MetaSoft (1983-1990)
Andrzej Blikle, Andrzej Tarlecki i inni
skoki (w zasadzie) ograniczone do obsługi wyj tków w
tym bł dów,
typologiczna hierarchia procedur,
warto ci nieokre lone jako „obywatele pierwszej
kategorii”,
najpierw semantyka pó niej składnia
J zyk MetaSoft
nigdy nie wyszedłpoza faz wst pnego projektu
cho miałwszystkie mechanizmy potrzebne do opisu
współczesnych j zyków programowania
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
15
Stan aktualny
klikologia i menulogia pozwalaj ca ka demu na budowanie
„potiomkinowskich wiosek”,
budowanie z modułów pozbawionych profesjonalnej
dokumentacji,
opisy systemów w j zyku dziecinno-gazetowym; np. Delphi
2000 stron; brak aparatu poj ciowego
brak odwołania do (i znajomo ci) podstawowej terminologii,
społecznie zaakceptowany brak odpowiedzialno ci za produkt
ze strony producentów oprogramowania,
brak wymagania uprawnie zawodowych.
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
16
Ekonomiczne powody tego stanu
rzeczy
Prawo Wasilewskiego: Ka dy producent b dzie wytwarzał
tak zły produkt, jak tylko rynek na to pozwoli.
Nierzadko firmy softwareowe czerpi powa ne korzy ci z
bł dów w dostarczanych systemach.
U ytkownik systemu informatycznego uzale nia si od
niego.
Programi ci s wynagradzani za ilo i terminowo , a nie za
jako .
Naukowcy s wynagradzani za ilo (ewentualnie naukow
jako ) publikacji, ale nie za ich praktyczn u yteczno .
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
17
Naukowe powody tego stanu
rzeczy
Praktycy stwierdzili, e to co teoretycy maj do
zaoferowania w zakresie opisu systemów nie nadaje si do
wykorzystania w praktyce.
Teoretycy stwierdzili, e problem opisu j zyków i systemów
zostałju dawno rozwi zany i zaj li si nowymi problemami
cz sto bardzo odległymi od praktyki.
pa dziernik 2004
Andrzej Blikle, Jako
w systemach informatycznych
18
Czy to mo na zmieni ?
!"#$(367 5"
!"#$%"&'()
&*("
+
+
+,,
+,
,
/
,
.
!"#$0 1 23 &*"
4
4
1 ,
8
/
4
4
!"#$
1$&' ! 0)
&*("
4
5
pa dziernik 2004
Andrzej Blikle, Jako
1 ,
:
w systemach informatycznych
9
/
19

Podobne dokumenty