Projekt i implementacja zintegrowanego środowiska programistycznego dla języka ROsWeL



Podobne dokumenty
Modelowanie i Programowanie Obiektowe

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

SOA Web Services in Java

Programowanie współbieżne i rozproszone

Programowanie Komponentowe WebAPI

To sposób w jaki użytkownik wchodzi w interakcje z systemem. Środowisko graficzne używa kombinacji graficznych elementów(przyciski, okna, menu) i

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Egzamin / zaliczenie na ocenę*

DSL w środowisku Eclipse. Grzegorz Białek Architekt techniczny, Sygnity S.A.

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Szkolenie: Budowa aplikacji SOA/BPM na platformie Oracle SOA Suite 11g

PRZEWODNIK PO PRZEDMIOCIE

Prezentacja specjalności studiów II stopnia. Inteligentne Technologie Internetowe

REFERAT PRACY DYPLOMOWEJ

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

PRZEWODNIK PO PRZEDMIOCIE

KOŁO NAUKOWE INFORMATYKÓW SYSTEMY KONTROLI WERSJI CZ.1 16 XII 2009 OPRACOWAŁ: PRZEMYSŁAW PARDEL

System zarządzający grami programistycznymi Meridius

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

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

Programowanie MorphX Ax

Paradygmaty programowania

ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO W RAMACH PROJEKTU

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

Usługa: Testowanie wydajności oprogramowania

Zacznij Tu! Poznaj Microsoft Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska

REKOMENDACJE DOTYCZĄCE PLATFORMY ZARZĄDZANIA KOMPETENCJAMI

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Podstawy programowania. Wprowadzenie

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

Przegląd i ewaluacja narzędzi do szybkiego tworzenia interfejsu użytkownika (RAD).

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Scala - programowanie obiektowo-funkcyjne

WPROWADZENIE DO UML-a

Środowisko NetBeans. Paweł Boguszewski

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

Programowanie obiektowe

Programowanie Zespołowe

OFERTA SZKOLENIOWA PROGRESS SOFTWARE

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

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

KARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW

OSGi Agata Hejmej

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Nowocześnie zaprojektowana e-usługa - studium przypadku

WMS Thematic Standard do publikacji opracowań kartograficznych. Serena Coetzee, Adam Iwaniak, Paweł Netzel

Dokument Detaliczny Projektu

Systemy Rozproszone Technologia ICE

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

REFERAT PRACY DYPLOMOWEJ

Monitoring procesów z wykorzystaniem systemu ADONIS

Wykład 1 Inżynieria Oprogramowania

Automatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus

Modele bezpieczeństwa logicznego i ich implementacje w systemach informatycznych / Aneta Poniszewska-Marańda. Warszawa, 2013.

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

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Program szkolenia: Jenkins - Continuous Integration

Programowanie obiektowe - 1.

Procesowa specyfikacja systemów IT

Wykład Ćwiczenia Laboratorium Projekt Seminarium

IBM Rational Software Architect uproszczona instrukcja użytkowania

JBPM [JUG] Tomasz Gratkowski [GRATKOWSKI SOFTWARE]

Zasady organizacji projektów informatycznych

Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15.

Automatyczne decyzje kredytowe, siła szybkiego reagowania i optymalizacji kosztów. Roman Tyszkowski ING Bank Śląski S.A. roman.tyszkowski@ingbank.

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

Web frameworks do budowy aplikacji zgodnych z J2EE

INŻYNIERIA OPROGRAMOWANIA

INFORMATYKA Pytania ogólne na egzamin dyplomowy

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Programowanie obiektowe. Wprowadzenie

ZAŁĄCZNIK NR 3 OPIS PRZEDMIOTU ZAMÓWIENIA DOTYCZĄCY WDROŻENIA PLATFORMY ZAKUPOWEJ

I. Opis przedmiotu zamówienia

Android tworzenie aplikacji mobilnych

Wprowadzenie do programowania aplikacji mobilnych

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

Spotkanie robocze PIONIER-CERT Poznań, Tomasz Nowak Zespół Bezpieczeństwa PCSS

Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów dziennych studiów II stopnia)

Web Tools Platform. Adam Kruszewski

Rok akademicki: 2014/2015 Kod: EAR IS-s Punkty ECTS: 4. Kierunek: Automatyka i Robotyka Specjalność: Informatyka w sterowaniu i zarządzaniu

Spis treści. O autorze 13 Przedmowa 15 Wprowadzenie 17

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Lokalizacja Oprogramowania

STUDIA I MONOGRAFIE NR

Komunikacja i wymiana danych

PROGRAM PRAKTYKI ZAWODOWEJ. Technikum Zawód: technik informatyk

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: Aukcjomat

Zapytanie ofertowe

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Tworzenie oprogramowania

Transkrypt:

Projekt i implementacja zintegrowanego środowiska programistycznego dla języka ROsWeL promotor: dr inż. Anna Kobusińska opiekun: mgr inż. Andrzej Stroiński Przemysław Piechowiak

Agenda Zakres pracy Język ROsWeL Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 2

Agenda Zakres pracy Język ROsWeL Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 3

Formalny zakres pracy Projekt wykonywany w ramach IT-SOA OB2-4 Rozbudowanie możliwości języka oraz silnika ROsWeL w zakresie integracji z językiem Java Rozbudowanie preprocesora języka ROsWeL w zakresie analizy poprawności składniowej Opracowanie projektu i implementacja IDE dla języka i silnika ROsWeL Przemysław Piechowiak 4

Agenda Zakres pracy Język ROsWeL Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 5

Co to jest ROsWeL? ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi Przemysław Piechowiak 6

Co to jest ROsWeL? ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi ROsWeL RESTful Oriented Workflow Language Przemysław Piechowiak 7

Co to jest ROsWeL? ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi ROsWeL RESTful Oriented Workflow Language Język programowania o składni podobnej do Prologa zaproponowany w 2010 przez A. Stroińskiego i J. Flotyńskiego w ramach pracy mgr Przemysław Piechowiak 8

Co to jest ROsWeL? ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi ROsWeL RESTful Oriented Workflow Language Język programowania o składni podobnej do Prologa zaproponowany w 2010 przez A. Stroińskiego i J. Flotyńskiego w ramach pracy mgr Język deklaratywny rozszerzony o instrukcje wspierające wywołania usług zgodnych z architekturą zorientowaną na zasoby Przemysław Piechowiak 9

Co to jest ROsWeL? ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi ROsWeL RESTful Oriented Workflow Language Język programowania o składni podobnej do Prologa zaproponowany w 2010 przez A. Stroińskiego i J. Flotyńskiego w ramach pracy mgr Język deklaratywny rozszerzony o instrukcje wspierające wywołania usług zgodnych z architekturą zorientowaną na zasoby Przemysław Piechowiak 10

System zorientowany na usługi ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi System zorientowany na usługi (SOA) Dekompozycja logiki biznesowej na mniejsze, niezależne jednostki tzw. usługi usługa jest udostępniania za pomocą określonego, ogólnie dostępnego interfejsu przez dostawcę wywoływana jest w sieci Internet przez konsumenta usług w środowisku SOA może istnieć wiele niezależnych usług implementujących tę samą funkcjonalność system taki charakteryzuje się niezawodnością i skalowalnością Przemysław Piechowiak 11

Paradygmat REST ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi Paradygmat REST jest to styl architektoniczny służący do tworzenia systemów informatycznych zaproponowany przez R. Fieldinga w 2000: Założenia, które powinien spełniać taki system: Klient-serwer (client-server) Bezstanowość serwera (stateless) Pamięć podręczna (cache) Jednolity interfejs (uniform interface) Wielowarstwowość systemu (layered system) Kod na żądanie (code-on-demand) Przemysław Piechowiak 12

Proces biznesowy ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi Termin wywodzi się z ekonomii Jest to zbiór działań prowadzących do wytworzenia produktu lub usługi Proces podstawowy wynik jest przeznaczony dla klienta Proces pomocniczy usprawnia zarządzanie procesem i modularność Przemysław Piechowiak 13

Opis procesu biznesowego ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi Ustandaryzowana i zrozumiała dla uczestników reprezentacja procesu biznesowego Reprezentacja ciągu powiązanych ze sobą czynności wykonywanych w wyznaczonym czasie przez uczestników przetwarzania Może być graficzna lub tekstowa => ROsWeL Przemysław Piechowiak 14

Wykonanie procesu biznesowego ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi Silnik przepływu (workflow engine) Wyszczególniona usługa lub aplikacja Realizuje ciąg wywołań elementów systemu zdefiniowany w opisie Jest inicjatorem i koordynatorem przetwarzania Podejście charakterystyczne dla orkiestracji usług Przemysław Piechowiak 15

Język deklaratywny ROsWeL: Deklaratywny język opisu procesów biznesowych pozwalających na tworzenie i integrację usług zgodnych z paradygmatem REST w systemach zorientowanych na usługi Język deklaratywny Język oparty o rachunek predykatów I rzędu (rachunek kwantyfikatoró) ograniczający się jedynie do klauzul Horna Możliwość definiowania predykatów wyższych rzędów Przemysław Piechowiak 16

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 17

Motywacje powstania języka istniejące rozwiązania Istnieje wiele rozwiązań: np. Web Services, JOpera, Apache ODE, Oracle BPEL Dostępne produkty nie oferują wymaganej funkcjonalności np. WS-BPEL Brak pełnej implementacji istniejących standardów Ograniczenia licencyjne np. JOpera niemożliwość wykorzystania komercyjnego Konieczność znacznej modyfikacji/dostosowania istniejących rozwiązań język BPEL Brak dokumentacji i odpowiedniego wsparcia np. Bexee Większość języków opisu procesów biznesowych opiera się o standard XML Przemysław Piechowiak 18

Motywacje powstania języka Wsparcie dla paradygmatu REST Orkiestracja usług Implementacja całego standardu Obsługa architektury z Zarządca Stanu Możliwość odtwarzania stanu po awarii Interakcja z człowiekiem Wprowadzanie danych Ingerencja w przebieg Deklaratywny opis problemu Bardziej naturalny sposób opisu problemu Łatwa i czytelna składnia języka Lekkość i prostota Interfejs zgodny z paradygmatem REST Przemysław Piechowiak 19

Dlaczego jest to język deklaratywny? Języki deklaratywne umożliwiają skupienie się na problemie i jego ograniczeniach W językach imperatywnych skupiamy się na algorytmie i sposobie rozwiązania problemu Dla usług sieciowych najważniejsze jest uzyskanie oczekiwanego rezultatu, a nie sposób w jaki on został osiągnięty. Składnia języka deklaratywnego jest znacznie bardziej podobna do składni języka naturalnego. Zrozumiały nie tylko dla programistów Czytelny i łatwy do nauczenia Przemysław Piechowiak 20

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 21

Specyfikacja języka ROsWeL program lista reguł reguła reguła specyfikuje cel do spełnienia ciało wyrażenie logiczne regułę czyta się: Cel/nagłówek jest spełniony jeśli ciało jest prawdziwe Reguła bez ciała jest faktem Przemysław Piechowiak 22

Specyfikacja języka ROsWeL warunki logiczne alternatywa koniukcja Przemysław Piechowiak 23

Specyfikacja języka ROsWeL struktury danych ograniczenia Przemysław Piechowiak 24

Specyfikacja języka ROsWeL ograniczenia predefiniowane wynik znany dopiero w momencie wykonania natywne wsparcie dla REST Przemysław Piechowiak 25

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 26

Przykład w języku ROsWeL Przemysław Piechowiak 27

Przykład w języku ROsWeL Przemysław Piechowiak 28

Przykład w języku ROsWeL Przemysław Piechowiak 29

Przykład w języku ROsWeL Przemysław Piechowiak 30

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 31

Motywacja budowy IDE Obecnie Cel pisanie kodu w notatniku brak automatycznego kompilowania/instalowania/testowania usługi brak wsparcia dla składni języka dobry edytor kodu integracja narzędzi i silnika procesów maksymalizacja produktywności programistów Przemysław Piechowiak 32

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 33

IDE języka ROsWeL Wtyczka do środowiska Eclipse IDE Możliwość edycji/kompilacji/instalacji usługi i jej testowania Przemysław Piechowiak 34

Proponowana funkcjonalność IDE Elementy obowiązkowe: analiza składniowa (parsing) Przemysław Piechowiak 35

Proponowana funkcjonalność IDE Elementy obowiązkowe: analiza składniowa (parsing) podświetlanie składni (syntax highlighting) Przemysław Piechowiak 36

Proponowana funkcjonalność IDE Elementy obowiązkowe: analiza składniowa (parsing) podświetlanie składni (syntax highlighting) podkreślanie błędów składniowych Przemysław Piechowiak 37

Proponowana funkcjonalność IDE Elementy obowiązkowe: analiza składniowa (parsing) podświetlanie składni (syntax highlighting) podkreślanie błędów składniowych proponowanie poprawek Przemysław Piechowiak 38

Proponowana funkcjonalność IDE Elementy obowiązkowe: auto-uzupełnianie (auto completion) baza symboli, identyfikatorów (symbol database) Przemysław Piechowiak 39

Proponowana funkcjonalność IDE Elementy obowiązkowe: auto-uzupełnianie (auto completion) baza symboli, identyfikatorów (symbol database) auto-wcięcia (auto indentation) Przemysław Piechowiak 40

Proponowana funkcjonalność IDE Elementy obowiązkowe: auto-uzupełnianie (auto completion) baza symboli, identyfikatorów (symbol database) auto-wcięcia (auto indentation) parowanie nawiasów (brace matching) Przemysław Piechowiak 41

Proponowana funkcjonalność IDE Elementy obowiązkowe: auto-uzupełnianie (auto completion) baza symboli, identyfikatorów (symbol database) auto-wcięcia (auto indentation) parowanie nawiasów (brace matching) ukrywanie części kodu (code folding) Przemysław Piechowiak 42

Proponowana funkcjonalność IDE Elementy obowiązkowe: karty właściwości projektu (properties) Przemysław Piechowiak 43

Proponowana funkcjonalność IDE Elementy opcjonalne: łącza do definicji, referencje (links to definition) Przemysław Piechowiak 44

Proponowana funkcjonalność IDE Elementy opcjonalne: łącza do definicji, referencje (links to definition) sprawdzanie pisowni (spell checking) Przemysław Piechowiak 45

Proponowana funkcjonalność IDE Elementy opcjonalne: łącza do definicji, referencje (links to definition) sprawdzanie pisowni (spell checking) refaktoryzacja i optymalizacji (refactoring) Przemysław Piechowiak 46

Proponowana funkcjonalność IDE Elementy opcjonalne: łącza do definicji, referencje (links to definition) sprawdzanie pisowni (spell checking) refaktoryzacja i optymalizacji (refactoring) debugowanie, statyczne określanie wartości zmiennych Przemysław Piechowiak 47

Proponowana funkcjonalność IDE Elementy opcjonalne: łącza do definicji, referencje (links to definition) sprawdzanie pisowni (spell checking) refaktoryzacja i optymalizacji (refactoring) debugowanie, statyczne określanie wartości zmiennych budowanie programu przy pomocy graficznych bloczków i automatyczne generowanie kodu ROsWeL Przemysław Piechowiak 48

Proponowana funkcjonalność IDE Elementy opcjonalne: łącza do definicji, referencje (links to definition) sprawdzanie pisowni (spell checking) refaktoryzacja i optymalizacji (refactoring) debugowanie, statyczne określanie wartości zmiennych budowanie programu przy pomocy graficznych bloczków i automatyczne generowanie kodu ROsWeL parsowanie kodu w trakcie pisania Przemysław Piechowiak 49

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 50

Modyfikacje języka ROsWeL i silnika procesów biznesowych Analiza składniowa rozszerzenie preprocesora języka ROsWeL w zakresie analizy poprawności składniowej czytelne i zrozumiałe zgłaszanie błędów składniowych i propozycji korekty Integracja z Java ą rozbudowanie możliwości języka oraz silnika w celu integracji z Java ą dodawanie wstawek Java y ładowanie dodatkowych bibliotek zewnętrznych Przemysław Piechowiak 51

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 52

Wykorzystywane technologie Implementacja: Java 1.6, Eclipse SDK IDE: Eclipse Java SDK Repozytorium: Subversion i Git Dokumentacja i praca dyplomowa: LaTEX Przemysław Piechowiak 53

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 54

Harmonogram prac 13/04 04/05 10/05 17/05 25/05 08/06 04/07 17/07 25/07 08/08 15/08 30/04 09/05 16/05 23/05 07/06 15/06 11/07 24/07 07/08 14/08 31/08 Zaznajomienie się z literaturą dotyczącą REST oraz dokumentacją języka ROsWeL Zapoznanie się ze sposobem implementacji wtyczek do Eclipse a Zapoznanie się z implementacją wtyczek IDE dla innych języków Zapoznanie się z metodologią budowy preprocesora oraz analizy składniowej języków formalnych Analiza potrzeb programistów + Zdefiniowanie wymagań funkcjonalnych i pozafunkcjonalnych IDE Projekt zmian i uzupełnień preprocesora języka ROsWeL Projekt IDE + Prototyp Implementacja wersji wstępnej IDE Testowanie IDE + Redakcja pierwszej części pracy dyplomowej (teoria) Implementacja zmian i poprawek IDE + Testowanie IDE Testowanie IDE + Redakcja drugiej części pracy Przemysław Piechowiak 55

Agenda Zakres pracy Język ROsWeL? Motywacja powstania języka Specyfikacja języka ROsWeL Przykłady w języku ROsWeL Motywacja budowy IDE Budowa IDE dla języka ROsWeL Rozszerzenia języka ROsWeL Technologie Harmonogram prac Ramowy plan pracy dyplomowej Przemysław Piechowiak 56

Ramowy plan pracy dyplomowej 1. Wstęp 2. Podstawy teoretyczne 1. Systemy rozproszone 2. Usługi sieciowe REST 3. Opis procesu biznesowego 4. Języki formalne i analiza składniowa 3. Język ROsWeL i silnik procesów biznesowych 1. Opis języka 2. Zastosowania 4. Podejścia do realizacji środowiska programistycznego 1. Funkcje edytorów programistycznych 2. Dodatkowe cechy środowisk programistycznych 3. Wizualne środowiska programowania 4. Dyskusja istniejących rozwiązań 5. Rozszerzenia języka ROsWeL 1. Analiza poprawności składniowej 2. Integracja z językiem Java 6. Zintegrowane środowisko programistyczne dla języka ROsWeL 1. Wymagania funkcjonalne i pozafunkcjonalne 2. Architektura środowiska programistycznego 3. Integracja z platformą Eclipse 4. Wykorzystane technologie i narzędzia 5. Realizacja IDE 6. Proponowane rozszerzenia 7. Zakończenie 8. Bibliografia Przemysław Piechowiak 57

Literatura: [1] A. Flotyński, A. Stroiński, Deklaratywny opis procesów biznesowych w systemach zorientowanych na usługi, tworzonych w oparciu o paradygmat REST, Master Thesis PP, 2010 [2] L. Richardson, S. Ruby, RESTful Web Services, O Reilly, 2007 [3] A. Danilecki, M. Szychowiak, J. Jezierski, Porównanie funkcjonalności usługi odtwarzania procesów biznesowych oraz silników bpel, Tech. Rep. TR-ITSOA-OB2-4-PR-09-07 [4] J.Brzeziński, A. Danilecki, J. Flotyński, A. Kobusińska, A. Stroiński; Workflow Engine supporting RESTful Web Services; The Third Asian Conference on Intelligent Information and Database Systems, Lecture Notes in Artificial Intelligence LNCS/LNAI; 2010 [5] A. Danilecki, J. Flotyński, A. Kobusińska, A. Stroiński; Deklaratywny opis procesów biznesowych w systemach zorientowanych na usługi, tworzonych w oparciu o paradygmat REST raport OB2-4 w projekcie IT-SOA; 2010 [6] J. Flotyński, M. Hołenko, A. Kobusińska, A. Stroiński, P. Zierhoffer; Architektura modułu zarządzającego przepływem procesu biznesowego raport OB2-4 w projekcie IT-SOA; 2009 Przemysław Piechowiak 58

Dziękuję za uwagę Pytania? Przemysław Piechowiak 59