SpecVer - metodyka tworzenia oprogramowania integrująca zadania specyfikacji, implementacji i weryfikacji modułów programów



Podobne dokumenty
Egzamin / zaliczenie na ocenę*

Wyznaczanie klas dziedziczonych w Javie. Aleksander Nałęczyński

PRZEWODNIK PO PRZEDMIOCIE

INŻYNIERIA OPROGRAMOWANIA

Michał Olejnik. 22 grudnia 2009

Opracowanie systemu sterowania wybranej linii technologicznej z uwzględnieniem zagadnień inżynierii oprogramowania

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE)

PRZEWODNIK PO PRZEDMIOCIE

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

PRZEWODNIK PO PRZEDMIOCIE

Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

KARTA MODUŁU KSZTAŁCENIA

Inżynieria oprogramowania - opis przedmiotu

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

I rok. semestr 1 semestr 2 15 tyg. 15 tyg. Razem ECTS. laborat. semin. ECTS. konwer. wykł. I rok. w tym. Razem ECTS. laborat. semin. ECTS. konwer.

Wykład Ćwiczenia Laboratorium Projekt Seminarium

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Programowanie współbieżne i rozproszone

Współczesna problematyka klasyfikacji Informatyki

Programowanie sieciowe Network programming PRZEWODNIK PO PRZEDMIOCIE

KARTA PRZEDMIOTU. 1. NAZWA PRZEDMIOTU: Zespołowy projekt informatyczny. 2. KIERUNEK: Matematyka. 3. POZIOM STUDIÓW: I stopnia

PRZEWODNIK PO PRZEDMIOCIE

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

Projekt grupowy - opis przedmiotu

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2014/2015

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/17

PRZEWODNIK PO PRZEDMIOCIE

Projekt systemu informatycznego

Zaawansowane programowanie w języku C++

Zaawansowane narzędzia programowania rozproszonego

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/17

PRZEWODNIK PO PRZEDMIOCIE

IBM SPSS Statistics - Essentials for Python: Instrukcje instalacji dla Windows

LISTA KURSÓW PLANOWANYCH DO URUCHOMIENIA W SEMESTRZE ZIMOWYM 2015/2016

Wydział Informtyki i Nauki o Materiałach Kierunek Informatyka. kod kierunku (dodaj kod przedmiotu)

KARTA KURSU (realizowanego w module specjalności)

Rok akademicki: 2014/2015 Kod: IEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Dokument Detaliczny Projektu

PRZEWODNIK PO PRZEDMIOCIE

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

SYLABUS/KARTA PRZEDMIOTU

SYLABUS/KARTA PRZEDMIOTU

KARTA PRZEDMIOTU. Programowanie wieloplatformowe, D1_1

Wykład 1 Inżynieria Oprogramowania

Programowanie Zespołowe

Wydział Informtyki i Nauki o Materiałach Kierunek Informatyka. kod kierunku (dodaj kod przedmiotu)

PRZEWODNIK PO PRZEDMIOCIE

Wydział Informtyki i Nauki o Materiałach Kierunek Informatyka. kod kierunku (dodaj kod przedmiotu)

Kierunek i poziom studiów: Chemia, pierwszy. Sylabus modułu: Technologia informacyjna (0310-CH-S1-003) 1. Informacje ogólne

Narzędzia CASE dla.net. Łukasz Popiel

Wydział Informtyki i Nauki o Materiałach Kierunek Informatyka. kod kierunku (dodaj kod przedmiotu)

PRZEWODNIK PO PRZEDMIOCIE

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

ROZWÓJ SYSTEMÓW SZTUCZNEJ INTELIGENCJI W PERSPEKTYWIE "PRZEMYSŁ 4.0"

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz

Grupa treści kształcenia, w ramach której przedmiot jest realizowany Przedmiot kierunkowy

OPIS PRZEDMIOTU ZAMÓWIENIA. Część nr 4.3

5-6. Struktura dokumentu html. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

KIERUNKOWE EFEKTY KSZTAŁCENIA

Michał Strzelecki Metody przetwarzania i analizy obrazów biomedycznych (3)

OWASP OWASP. The OWASP Foundation Cross-Site Scripting. Ryzyko do zaakceptowania? Warszawa, 27 stycznia 2011 Michał Kurek

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Dokumentacja kompilacji źródeł aplikacji 1.0

PRZEWODNIK PO PRZEDMIOCIE

Integracja systemu CAD/CAM Catia z bazą danych uchwytów obróbkowych MS Access za pomocą interfejsu API

PRZEWODNIK PO PRZEDMIOCIE

Field of study: Computer Science Study level: First-cycle studies Form and type of study: Full-time studies. Auditorium classes.

Inżynieria Oprogramowania w Praktyce

INFORMATYKA. PLAN STUDIÓW NIESTACJONARNYCH 1-go STOPNIA STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM 2015/16. zajęć w grupach A K L S P

Rok akademicki: 2012/2013 Kod: ZIE s Punkty ECTS: 3. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Wstęp do Programowania potok funkcyjny

Środowisko wspomagające testowanie oprogramowania obiektowego

1. Tabela odniesień efektów kierunkowych do efektów obszarowych z komentarzami. Kierunkowy efekt kształcenia - opis

KARTA KURSU. Student zna podstawy analizy, projektowania i programowani obiektowego oraz podstawy języka C++.

Podstawy programowania.

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Inżynieria oprogramowania, C12

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

METODY REPREZENTACJI INFORMACJI

Opracowanie dodatkowego rodzaju pytań dla systemu Moodle

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA Bieżący sylabus w semestrze zimowym roku 2016/17

INFORMATYKA. PLAN STUDIÓW NIESTACJONARNYCH 1-go STOPNIA STUDIA ROZPOCZYNAJĄCE SIĘ W ROKU AKADEMICKIM 2016/17. zajęć w grupach A K L S P

Kierunkowy Wybieralny Polski Semestr V

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Kierunkowy Wybieralny Polski Semestr V

KARTA PRZEDMIOTU. Projekt zespołowy D1_10

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE

SYLABUS/KARTA PRZEDMIOTU

Opis efektów kształcenia dla modułu zajęć

PRZEWODNIK PO PRZEDMIOCIE

Załącznik 1 instrukcje instalacji

PRZEWODNIK PO PRZEDMIOCIE

Rodzaje Code slicing w weryfikacji Narzędzia Literatura. Code slicing. Bartłomiej Wołowiec. 16 lutego 2011

OFERTA SZKOLENIOWA PROGRESS SOFTWARE

KARTA PRZEDMIOTU. 1. Informacje ogólne. 2. Ogólna charakterystyka przedmiotu. Projekt zespołowy D1_10

Transkrypt:

Zakład Zaawansowanych Technik Informacyjnych (Z-6) SpecVer - metodyka tworzenia oprogramowania integrująca zadania specyfikacji, implementacji i weryfikacji modułów programów Praca nr 06300067 Warszawa, grudzień 2007

SpecVer metodyka tworzenia oprogramowania integrująca zadania specyfikacji, implementacji i weryfikacji modułów programów Praca nr 06300067 Słowa kluczowe: inżynieria oprogramowania, środowiska wspomagające tworzenie oprogramowania, programowanie wysoce zintegrowane, specyfikacja, weryfikacja, logika algorytmiczna. Kierownik pracy: prof. dr hab. Andrzej Salwicki Wykonawca pracy: prof. dr hab. Andrzej Salwicki Kierownik Zakładu: dr inż. Janusz Granat Copyright by Instytut Łączności, Warszawa 2007

Spis Treści 1. Wstęp 2. Prace opublikowane a. G. Mirkowska, A. Salwicki, O. Świda, SpecVer the methodology integrating specification, programming and verification, invited talk in Proceedings of the CS&P'2007 Łagów 27-29 październik 2007 (L.Czaja ed.) Wydawnictwa Uniwersytetu Warszawskiego, pp 9-20, ISBN 978-83-88734-28-9, b. H. Langmaack, A. Salwicki, M. Warpechowski, A deterministic algorithm elaborating direct superclassesin Java-like languages, in Proceedings of the CS&P'2007 Łagów 27-29 październik 2007 (L.Czaja ed.) Wydawnictwa Uniwersytetu Warszawskiego, pp.388-399, ISBN 978-83- 88734-28-9, c. A. Salwicki, Andrzej Grzegorczyk's contribution to Computer Science, Fundamenta Informaticae 81(2007) pp. 253-261, d. H. Langmaack, A. Salwicki, M. Warpechowski, Ueber das Vererben und dessen implicite Definition in der Sprachspezifikation des neuen Java mit inneren Klassen, invited talk during 14 th Colloquium Programiersprachen und Grundlagen der Programierung, Timmendorfer Strand, 10-12 Oktober 2007 3. Prace przyjęte do druku a. On an algorithm determining direct superclasses In Java-like languages with inner classes its correctness, completeness and uniqueness of solutions, wspólnie z H. Langmaackiem I M. Warpechowskim ok. 45 str. artykuł złożony do Information and Computation i zaakceptowany b. H. Langmaack, A. Salwicki, M. Warpechowski, On the correctness and completeness of a deterministic algorithm elaborating direct super classes in Java-like languages, złożone do druku w Fundamenta Informaticae, c. G. Mirkowska, A. Salwicki, O. Świda, Algorithmic Logic + SpecVer = the methodology for high integrity programming, przyjete do druku w Fundamenta Informaticae 4. Oprogramowanie

Wstęp Tworzymy coraz większe programy, o coraz bardziej złożonej strukturze. Ryzyko już nie błędu, a katastrofy jakie jest z tym związane rośnie co najmniej wykładniczo wraz z długością kodu. Niektórzy inwestorzy dostrzegli problem i zamawiają oprogramowanie wraz dowodem jego poprawności. Uważamy, że stosowane dotąd metody nie są adekwatnie dobrane do trudnego celu udowodnienia poprawności oprogramowania. Powstają rozmaite produkty, ale to dopiero początek. Nowe technologie dopiero powstaną. Nasza propozycja to nowa oryginalna metodologia tworzenia oprogramowania integrująca: specyfikację modułów, implementację czyli tworzenie oprogramowania i weryfikację otrzymanego oprogramowania względem wcześniej powstałej specyfikacji. Co udało się uzyskać skromnymi środkami jakie stały do naszej dyspozycji? 1. Wtyczkę o nazwie SpecVer do środowiska Eclipse. 2. Opracowania wykazujące walory logiki algorytmicznej jako narzędzia specyfikacji i weryfikacji oprogramowania. Eclipse jest otwartym, popularnym środowiskiem edycji, kompilacji i uruchamiania programów. Nasza wtyczka umożliwia tworzenie projektów SpecVer. Na taki projekt składają się nie tylko pliki z programami, ale i pliki specyfikacji oraz pliki weryfikacji. W obecnej wersji działa edycja plików specyfikacji. Logika algorytmiczna zaproponowana w naszych opracowaniach okazuje się narzędziem bardziej przydatnym w specyfikowaniu klas (w programowaniu obiektowym) od innych narzędzi np. specyfikacje algebraiczne są znacznie słabsze i mniej przydatne. Logika algorytmiczna nie też sobie równych w weryfikowaniu klas i metod (algorytmów). O metodologii donosimy w opracowaniach 2a i 3c. Przykłady specyfikacji i dowodów zawarto w opracowaniach 2b, 2c, 3a, 3b.

Oprogramowanie Oprogramowanie jest w tej chwili dostępne dla każdego pod adresem URL http://aragorn.pb.bialystok.pl/~swida/svp Jego głównym twórcą jest dr Oskar Świda z Politechniki Białostockiej.. Ja pełniłem rolę konsultanta i pomysłodawcy. Uważam, że warto by było stworzyć stronę projektu SpecVer pomiędzy stronami Instytutu Łączności, m. In. Po to by z niej dystrybuować to oprogramowanie. Jestem gotów tę stronę opracować i nią zarządzać. Nie mam jak dotąd na to zgody.