Download
slide1 n.
Skip this Video
Loading SlideShow in 5 Seconds..
Framework do szybkiego projektowania aplikacji webowych typu "data-intensive" oparty na środowisku systemu ODR PowerPoint Presentation
Download Presentation
Framework do szybkiego projektowania aplikacji webowych typu "data-intensive" oparty na środowisku systemu ODR

Framework do szybkiego projektowania aplikacji webowych typu "data-intensive" oparty na środowisku systemu ODR

175 Views Download Presentation
Download Presentation

Framework do szybkiego projektowania aplikacji webowych typu "data-intensive" oparty na środowisku systemu ODR

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Framework do szybkiego projektowania aplikacji webowych typu "data-intensive" oparty na środowisku systemu ODRA Tomasz Marek Kowalski Kierownik: dr inż. Radosław Adamus dr inż. Jacek Wiślicki mgr inż. Kamil Kuliberda

  2. Plan • Wprowadzenie • Problematyka • Zarys projektu • Podsumowanie

  3. Wprowadzenie

  4. Motywacja • interfejsy webowe są najpopularniejszą metodą dostępu do danych zdalnych • Wyzwania programistów aplikacji biznesowych: • krótkie terminami realizacji projektów wymaganymi przez klientów • dostępem do danych składowanych w systemach absolutnie niedopasowanych do współczesnych języków programowania.

  5. Zadania Frameworków • izolacja programistów od jak największej liczby aspektów związanych z budową i funkcjonowaniem aplikacji, • oferowanie licznych udogodnień i uproszczeń • próba usunięcia niezgodności impedancji (pozornie)

  6. Przykładowe Frameworki • Ruby on Rails • Grails (Java) • Django (Python)

  7. Cel projektu • Usunąć problem niezgodności impedancji • obiektowa baza danych (ODRA), • język zapytań językiem programowania, • jednolita architektura przetwarzania danych trwałych i ulotnych. • Połączyć zalety Frameworków, m.in.: • umożliwienie automatycznej generacji maksymalnie dużych elementów aplikacji, • mechanizmy łatwego rozszerzania funkcjonalności Frameworka, • przezroczyste wykorzystanie niejednorodnych i rozproszonych źródeł danych.

  8. Problematyka

  9. Niezgodność Impedancji problemy (1) • statyczna kontrola programów, • wyrażanie bardziej zaawansowanych semantycznie elementów obiektowości, • stosowanie automatycznej optymalizacji po stronie bazy danych, • wzrost poziomu skomplikowania aplikacji na poziomach: • projektowym, • implementacyjnym, • testowym.

  10. Niezgodność Impedancji problemy (2) • dualność schematów (metadanych), • zarządzanie schematem aplikacji, • unikatowa identyfikacja obiektów i rekordów (szczególnie w kontekście współbieżności • niedopasowanie języków zapytań do języków programowania (zmagają się tym programiści tworzący frameworki)

  11. Systemy biznesowe • często działają w Internecie (warstwa interfejsu - webowego), • logika aplikacji na serwerze lub rozproszona, • systemy zarówno niewielkie jak i ogromne (także wymagania niefunkcjonalne).

  12. Systemy biznesowe a presja rynku • szybkość dostarczenia • uproszczenia systemu • słaba architektura • opieranie się o inżynierię komponentową • uproszczenia w mapowaniu O/R • łatwość pielęgnacji • pozwala na minimalizacje kosztów i czasu konserwacji (długoterminowych systemów) • sprzeczne do szybkości dostarczenia

  13. Zarys projektu

  14. Prototyp ODRA • udostępnia szeroką zintegrowaną funkcjonalność, • silnie powiązane komponenty: • SZOBD, • kompilator i interpreter SBQL (wraz z językiem programowania), • mechanizm komunikacji rozproszonej, • osłony i filtry umożliwiające wydajną integracje oraz import heterogenicznych danych

  15. Zarys Frameworku • RAD typu data-intensive • praca bezpośrednio na obiektach(brak warstw pośredniczących) • narzędzie utylitarne • proste „osobiste” strony internetowe, • złożone portale, sklepy internetowe, • skomplikowane systemy transakcyjne. • zarządzanie prezentacją danych (również trwałych) i interakcją z użytkownikiem

  16. Bezpośrednie cele do opracowania • nowe komponenty systemu generujące aplikacje webowe na podstawie struktury danych • struktura aplikacji przechowywanej w ODRA reprezentującej aplikacje webową (zestaw „standardowych” obiektów) • mechanizmy automatycznej generacji aktualizowalnych obiektowych perspektyw kontrolujących dostęp do danych (były próby z wrapperem)

  17. Cele dodatkowe • Rozwój platformy ODRA: • architektura, • dodatkowe komponenty generujące aplikacje (zwiększenie potencjalnej użyteczności w kontekście RAD na potrzeby biznesu) • Zbadanie możliwości SBA i SBQL jako wydajnego narzędzia programowania warstwy interfejsu webowego (spójny model programistycznych aplikacji)

  18. Plan prac • rozpoznanie stanu wiedzy • dostosowanie implementacji ODRA • refaktoryzacja architektury, • wyodrębnienie elementów systemu wymagających zmian, • usunięcie niespójności, zagrożeń stabilności, • testy i analiza statyczna, • osłabienie kontroli typologicznej, itd. • portal www

  19. Metodyka • agile software development • odpowiednia dla małego zgranego zespołu, • adaptacyjność (krótkie iteracje). • continous integration (AnthillPro) • zautomatyzowane testy • publikowanie bieżących wersji na www

  20. Podsumowanie

  21. Podsumowanie • Usunąć problem niezgodności impedancji • Połączyć zalety Frameworków • Szybkość dostarczania • Łatwość pielęgnacji • Rozwój ODRY • itd..