Polskie Towarzystwo Informatyczne
NUMER ARCHIWALNY:     11-12 / 17-18 rok II | listopad-grudzień 1983
Archiwum
Menu chronologiczne Menu tematyczne


Polskie Towarzystwo Informatyczne

Formalne metody inżynierii oprogramowania
 
(głos w sprawie powołania nowej sekcji PTI)
 
                Jak powszechnie wiadomo, proces uruchamiania systemu oprogramowania konsumuje nierzadko połowę ceny całego systemu, po czym użytkownik i tak otrzymuje produkt z wieloma błędami. Jest to wynikiem stosowania dalece nieformalnych metod przy specyfikowaniu, projektowaniu, tworzeniu i wreszcie dokumentowaniu dużych programów. Tam, gdzie inżynier mechanik lub elektronik posługują się rachunkiem matematycznym i rysunkiem technicznym, inżynier informatyk tworzy swój, i ileż bardziej złożony produkt niemalże z wyobraźni. Zamiast rysunku technicznego popartego obliczeniami otrzymuje on mętną i najczęściej niekompletną specyfikację w języku potocznym. Tę samą specyfikację przekazuje później użytkownikowi, który spędza wiele bezsennych nocy na odkrywaniu w systemie tego wszystkiego, co jego twórca nie znalazłszy w specyfikacji musiał sobie dopowiedzieć.
                Opisana tutaj, dość dramatyczna sytuacja nie pozostaje bez echa w środowisku praktyków i teoretyków. Od wielu lat prowadzi się na świecie (również w Polsce) liczne badania zmierzające do jej poprawy. Pierwszy sukces odnotowano ok. roku 1960, gdy w definicji Algolu użyto metody BNF do opisu syntaktyki. Od tego czasu metoda ta nie tylko stała się podstawowym narzędziem przy projektowaniu języków programowania, lecz także weszła na stałe do kompendium wiedzy informatycznej. Nadal pozostał jednak nie rozwiązany bardzo trudny problem opisu semantyki języków programowania.
                Zagadnieniami związanymi z semantyką języków programowania zaczęto się zajmować w końcu lat sześćdziesiątych, ale dopiero jakieś 10 lat później pojawiły się pierwsze wyniki mogące mieć zastosowanie praktyczne. Opracowanie metody semantyki denotacyjnej i odpowiednich metajęzyków do jej użycia w praktyce doprowadziło do powstania nowej metody wiedeńskiej (Vienna development method, w skrócie VDM). Jej zastosowania obejmują obecnie definiowanie (składni i semantyki) języków programowania, systematyczne tworzenie implementacji, projektowanie i implementację systemów operacyjnych, systemów obsługi baz danych itp., a także projektowani‚ architektury sprzętu. Oprócz tej metody istnieją także inne, mniej znane, o podobnych zastosowaniach.
                Wprowadzenie metod formalnych do opisu systemów programowania nie tylko uczyniło te opisy precyzyjnymi i kompletnymi, lecz także pozwoliło na zastosowanie wielu innych metod formalnych w procesie tworzenia takich systemów. Zespół tych metod określa się dzisiaj w literaturze anglosaskiej terminem rigorous methods of software development. W języku polskim mówimy często o formalnych metodach inżynierii oprogramowania.
                Dotychczasowe bardzo pozytywne doświadczenia w stosowaniu tych metod powodują, że coraz więcej uniwersytetów na świecie wprowadza je do programów nauczania. Pierwsi absolwenci, którzy w ostatnich latach zaczęli opuszczać te uczelnie, pracują na ogół o wiele szybciej i sprawniej niż ich koledzy posługujący się metodami tradycyjnymi, a wykonane przez nich systemy są o wiele bardziej niezawodne. Skłania to wiele dużych firm przemysłowych, np. IBM, do organizowania dla swych pracowników odpowiednich kursów. W niektórych krajach, m. in. w Anglii i Danii, powstają specjalne instytuty, których zadaniem jest rozwój formalnych metod inżynierii oprogramowania oraz propagowanie ich w przemyśle.
                W Polsce upowszechnienie tych metod jest prawie żadne, istnieje jednak grupa osób je znających, mających dostęp do bieżącej literatury, a także pracujących twórczo w tym zakresie. Wydaje się więc celowe stworzenie forum wymiany informacji, na którym formalne metody inżynierii oprogramowania mogłyby być szerzej upowszechniane i na którym teoretycy mogliby konfrontować swe poglądy w dyskusji z praktykami. Takie forum mogłaby stanowić sekcja formalnych metod inżynierii oprogramowania PTI.
                Początkowo, działalność sekcji mogłaby polegać na regularnych spotkaniach seminaryjnych (np. raz na miesiąc w Warszawie) poświęconych zapoznaniu się członków sekcji z semantyką denotacyjną i metodą VDM. oraz z ich zastosowaniami w projektowaniu i dokumentowaniu języków i systemów programowania. W przyszłości tematykę spotkań można by rozszerzyć o wymianę doświadczeń członków sekcji, dotyczących własnych zastosowań formalnych metod inżynierii oprogramowania, oraz o inne ich działy, takie jak zagadnienia niezawodności oprogramowania, mechanizmy złożonych typów danych, mechanizmy współbieżności w oprogramowaniu itp.
 
                PTI dysponuje pewnymi funduszami, które mogą być wykorzystane na wsparcie działalności sekcji, np. na zakup książek krajowych lub powielanie materiałów nadchodzących z zagranicy. Członkiem sekcji może być każdy członek PTI, w spotkaniach sekcji mogą brać udział również nie–członkowie, oczywiście już bez prawa bezpłatnego otrzymywania materiałów. Osoby zainteresowane przedstawionym projektem powołania tej sekcji przy PTI są proszone o nadsyłanie pisemnych zgłoszeń pod adresem: prof. Andrzej Blikle, Instytut Podstaw Informatyki PAN, Pałac Kultury i Nauki, skr. poczt. 22, 00-901 Warszawa, tel. 20-38-88.
                Dla ułatwienia dalszej korespondencji i opracowania wstępnego planu prac sekcji zgłoszenie powinno zawierać (w podanej kolejności): 1) nazwisko, imię i ew. stopień naukowy; 2) adres do korespondencji i ew. telefon; 3) specjalność zawodową i rodzaj wykształcenia (wydział, uczelnia, rok ukończenia); 4) miejsce pracy z określeniem, czy pracodawca jest członkiem wspierającym PTI; 5) określenie przynależności do PTI.
                Pierwsze spotkanie, z udziałem ok. 40 osób, odbyło się 3 grudnia ub. r. — wcześniej, niż tę wstępną informację o sekcji udało nam się w biuletynie opublikować! Termin następnego spotkania: 14 stycznia, godz. 11.00, Pałac Kultury i Nauki, sala 1044.

Andrzej Blikle

Archiwum PTI Ewa Łukasik ( elukasik@cs.put.poznan.pl) Grzegorz Przybył ( grzegorz.przybyl@wp.pl ) www.pti.org.pl Kontakt PTI ( pti@pti.org.pl )
Tutorial


Tutorial

Wyszukiwanie

Całość
tylko prodialog
tylko biuletyny
tylko konferencje
tylko multimedia
tylko sprawozdania
tylko uchwały
tylko zawody
tylko zjazdy
pozostałe treści

Rodzaj przeszukiwania
Słowa kluczowe
Pełen tekst

pelen zakres dat
ograniczony zakres
od:

do:




Kontakty

Instytut Informatyki

Polskie Towarzystwo Informatyczne

Nasz Skrzynka Pocztowa

+ - D A