P.Habela, K.Subieta. SSR, Wykład 9, Folia 1 kwiecień 2009 Standardy w zakresie systemów rozproszonych i baz danych Piotr Habela Kazimierz Subieta Polsko-Japońska.

Slides:



Advertisements
Podobne prezentacje
Migrating Desktop Podsumowanie projektu
Advertisements

CLIMGEN (generator danych pogodowych w modelu CropSyst.
Związki w UML.
Standardy w zakresie systemów rozproszonych i baz danych
Modelowanie procesów biznesowych
SCR 2008/2009 – informatyka rok 5. Edytor Wizualny - Agenda Przeznaczenie komponentu Funkcjonalność Opis działania.
Projektowanie Aplikacji Komputerowych
Projektowanie systemów informacyjnych
Platforma .Net i Vs.Net.
PySBQL Język zapytań dla obiektowych baz danych. Aplikacje bazodanowe Główny nurt budowania aplikacji opiera się na połączeniu: SQL JDBC Java Jak wyświetlić
Dokumentowanie wymagań w języku XML
Koordynatorzy: Krzysztof BIKONIS Marek MOSZYŃSKI
Języki programowania obiektowego
Wstęp do programowania obiektowego
Projektowanie i programowanie obiektowe II - Wykład IV
Praca Inżynierska „Analiza i projekt aplikacji informatycznej do wspomagania wybranych zadań ośrodków sportowych” Dyplomant: Marcin Iwanicki Promotor:
Projekt i implementacja aplikacji do zasilania bazy danych testowymi danymi Jacek Lis Promotor: prof. dr hab. inż. Włodzimierz KASPRZAK.
Projektowanie - wprowadzenie
Wykład 4 Analiza i projektowanie obiektowe
Wykład 5 UML - Unified Modeling Language
Wykład 2 Cykl życia systemu informacyjnego
SZPIF – Harmonogram, Opis narzędzi, Schemat bazy danych
WebSphere Everyplace Micro Environment IBM Workplace Client Technology, Micro Edition Monika Nawrot, Tomasz Jadczyk, Tomasz Sadura KI, EAIiE, AGH.
Wprowadzenie do JSP Copyright © Politecnico di Milano September 2003 Translation: Kamil Żyła, Politechnika Lubelska.
Podstawy programowania
Pakiety w Javie Łukasz Smyczyński (132834). Czym są pakiety? Klasy w Javie są grupowane w pewne zbiory zwane pakietami. Pakiety są więc pewnym podzbiorem.
Rozwój aplikacji przy wykorzystaniu ASP.NET
System webowy do tworzenia kolektywnych prototypów aplikacji sieciowych i mobilnych Łukasz Przywarty
Stanisław Jerzy Niepostyn, Ilona Bluemke Instytut Informatyki,
Instytut Tele- i Radiotechniczny WARSZAWA
UML 2.x Robert Pająk.
Kontrola spójności modeli UML za pomocą modelu przestrzennego DOD
Model przestrzenny Diagramu Obiegu Dokumentów
MDA – Model Driven Architecture
Licencjonowanie narzędzi dla programistów
Konkurs Ofert 2007 Instalacja oprogramowania Kopiowanie danych.
Witold Bołt. Agenda W czym tkwi problem..? Po co jest oprogramowanie? Kim jest użytkownik? Zbieranie danych Co to jest design Współpraca programista-projektant.
ŻYWE JĘZYKI PROGRAMOWANIA LIVING IT UP WITH A LIVE PROGRAMMING LANGUAGE Sean McDirmid Ecole Polytechnique Fédérale de Lausanne (EPFL)
Programowanie obiektowe – zastosowanie języka Java SE
XML – eXtensible Markup Language
Wybrane zagadnienia relacyjnych baz danych
ZWIĄZKI MIĘDZY KLASAMI KLASY ABSTRAKCYJNE OGRANICZENIA INTERFEJSY SZABLONY safa Michał Telus.
Modelowanie obiektowe Diagramy klas
Projektowanie relacyjnych baz danych – postacie normalne
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Service Oriented Architecture
XML Publisher Przedmiot i zakres szkolenia Przedmiot i zakres szkolenia Przeznaczenie XML Publisher Przeznaczenie XML Publisher Definiowanie Definiowanie.
Model obiektowy bazy danych
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Projektowanie relacyjnych baz danych – diagramy związków encji
Podstawy języka skryptów
Piotr Czapiewski Wydział Informatyki ZUT. Web Services Description Language.
Waldemar Bartyna 1 Programowanie zaawansowane LINQ to XML.
Platforma .Net.
Podstawy programowania
Informatyka – szkoła gimnazjalna – Scholaris - © DC Edukacja Tworzenie stron WWW w programie Microsoft FrontPage Informatyka.
Dokumentacja programu komputerowego i etapy tworzenia programów.
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
ASP.NET Dostęp do bazy danych z poziomu kodu Elżbieta Mrówka-Matejewska.
Modelowanie Danych (ERD) – część 1 (Wspomaganie Modelowania danych)
Prototypowanie w ORACLE DESIGNER Oracle Forms Design.
Metodyki i narzędzia CASE
Wyższa Szkoła Bankowa, Poznań, dr inż. mirosław Loręcki
Inżynieria systemów informacyjnych
Projektowanie wspomagane komputerem
Managed Service Identity dla zasobów w Microsoft Azure
Windows Workflow Foundation
JavaBeans by Paweł Wąsala
Zapis prezentacji:

P.Habela, K.Subieta. SSR, Wykład 9, Folia 1 kwiecień 2009 Standardy w zakresie systemów rozproszonych i baz danych Piotr Habela Kazimierz Subieta Polsko-Japońska Wyższa Szkoła Technik Komputerowych, Warszawa Wykład 9: Wprowadzenie do systemu VIDE

P.Habela, K.Subieta. SSR, Wykład 9, Folia 2 kwiecień 2009 Narzędzie do analizy dziedziny biznesu Prototyp umożliwia początkową interakcję użytkownika z systemem VIDE na poziomie CIM Użytkownik biznesowy lub analityk biznesowy będzie mógł opisać swój problem w zrozumiałych dla niego terminach. W kolejnych krokach narzędzie wspomaga użytkownika w precyzowaniu jego koncepcji w kierunku modelu procesu biznesowego. Nie należy oczekiwać, że użytkownik biznesowy lub analityk biznesowy stanie się w ten sposób programistą, gdyż powstały w ten sposób model nie jest dostatecznie formalny aby można było mówić o wykonywalnym kodzie. Jednakże istotne jest to, że już na tym etapie zostają określone podstawowe własności aplikacji, które wymagają stosunkowo niewielkiej pracy, aby stały się w pełni formalnym kodem.

P.Habela, K.Subieta. SSR, Wykład 9, Folia 3 kwiecień 2009 Przykład aplikacji biznesowej - Sales Scenario (1) 1.A field representative of a manufacturer of computer hardware receives a message on his PDA, telling him that company X is planning to replace its complete system in the next quarter. The company has budgeted substantial financial resources for the replacement. 2.He immediately enters this information in the system, i.e., master data of the potential customer, including budget estimation, description of sales opportunity, sales volume, and timeframe of the opportunity. 3.The Opportunity object is created in the system and evolved by the assigned employee until it reaches a go/no go decision by sales management. 4.Another employee of the sales office creates an offer using the Quotation module, which automatically generates a quotation template based on the sales opportunity. 5.Based on the categorisation of the prospect in a Customer Group, estimated sales volume, and sales probability, the Individual Prices module is used to calculate a discount for the customer, which is included in the quotation. 6.After the sales office has contacted the customer and received an order, the system automatically converts the quotation into an order upon mouse click using the module Sales Processing.

P.Habela, K.Subieta. SSR, Wykład 9, Folia 4 kwiecień 2009 Przykład aplikacji biznesowej - Sales Scenario (2) 7.To check the creditworthiness of the customer, a Credit Check is performed during sales processing by interacting with the Payment module. 8.An (optional) Availability Check is performed to check warehouse stock for required capacities. 9.The availability-to-promise check requires interaction with warehouse management (Stock). In case of Multiple Stocks only those warehouses sufficiently close to the shipping address are included. 10.In cooperation with the Delivery module, the order is split into separate orders for each involved warehouse, which have to be scheduled appropriately. 11.If Payment is to be integrated into the process, it would be activated automatically upon creating a binding sales order. Depending on the method of payment offered by the system and selected by the customer, an automatic debit transfer from the customers account can be triggered (Payment Card), an invoicing document can be attached to the delivery (Cash On Delivery), or Invoicing is activated for later settlement. 12.The order status is set to completed by an employee as soon as it is delivered to the customer.

P.Habela, K.Subieta. SSR, Wykład 9, Folia 5 kwiecień 2009 Pierwsze wyobrażenie o aplikacji

P.Habela, K.Subieta. SSR, Wykład 9, Folia 6 kwiecień 2009 VIDE - Przypadek użycia dla użytkownika biznesowego Zapisanie informacji o dziedzinie problemowej w postaci luźnych słabo powiązanych kawałków (scraps) Precyzowanie tej informacji i rozpoczęcie budowy pewnych uproszczonych asocjacji pomiędzy tymi kawałkami Model albumu kawałków (scrapbook) składa się z reprezentacji wizyjnej (zwykle zaokrąglonych prostokątów) wybranych kawałków. Model scrapbook przechowuje się na specjalnym pliku (scrap file)

P.Habela, K.Subieta. SSR, Wykład 9, Folia 7 kwiecień 2009 Selekcja kawałków (scraps) z tekstu

P.Habela, K.Subieta. SSR, Wykład 9, Folia 8 kwiecień 2009 Wizualizacja kawałków

P.Habela, K.Subieta. SSR, Wykład 9, Folia 9 kwiecień 2009 CIM - Nieformalny model analityczny

P.Habela, K.Subieta. SSR, Wykład 9, Folia 10 kwiecień 2009 VIDE – przypadek dla analityka biznesowego Edytor CIM pozwala użytkownikowi na tworzenie i precyzowanie pół-formalnego modelu procesów biznesowych, struktury organizacyjnej oraz struktur danych bazując na narzędziu do analizy dziedzinowej. –Wynik jest pamiętany w postaci pliku XML Po stworzeniu model może być wyeksportowany do systemu zarządzania procesami pracy –Model może być użyty do łączenia (orchestration) różnych aplikacji bazujących na systemie workflow – wynik w postaci standardowego XPDL 2.0. (XML-owa wersja BPMN) –Wynik ten może być skonsumowany w szczególności przez Office Objects Workflow firmy Rodan –Możliwa integracja wiele systemów WF pochodzących od różnych dostawców Z drugiej strony model z poziomu CIM może być punktem startowym dla wizarda zapewniającego przejście do poziomu PIM (PIM Prototyping Tool). –W tym przypadku nie zakłada się generowania formaty XPDL 2.0, lecz własny format VIDE określony jako VCLL –Jest to również format XML, ale rozszerzony w stosunku do XPDL 2.0

P.Habela, K.Subieta. SSR, Wykład 9, Folia 11 kwiecień 2009 Model procesów w VIDE (VCLL)

P.Habela, K.Subieta. SSR, Wykład 9, Folia 12 kwiecień 2009 Model procesów w BPMN (XPDL) Notacja graficzna pochodzi z OfficeObjects WorkFlow, zbliżona do VCLL z poprzedniego slajdu

P.Habela, K.Subieta. SSR, Wykład 9, Folia 13 kwiecień 2009 CIM - perspektywa danych

P.Habela, K.Subieta. SSR, Wykład 9, Folia 14 kwiecień 2009 CIM - perspektywa organizacyjna

P.Habela, K.Subieta. SSR, Wykład 9, Folia 15 kwiecień 2009 CIM - perspektywa reguł biznesowych

P.Habela, K.Subieta. SSR, Wykład 9, Folia 16 kwiecień 2009 CIM – przypadek dla Analityka/Projektanta Początkową fazą projektowania jest wyprodukowanie diagramu klas z modelu procesu biznesowego wytworzonego w fazie CIM Model zachowania (behaviour), zwykle diagram aktywności, jest tworzony równocześnie z modelem klas Prototypowanie na poziomie PIM bierze jako wejście plik zawierający model procesu biznesowego, komponent VCLL i następnie stosuje zestaw heurystyk pozwalających przekonwertować elementy modelu CIM na diagram klas oraz diagram aktywności. Następujące kroki są wykonywane w celu rozwinięcia początkowego modelu klas i aktywności z modelu procesu biznesowego zapisanego w VCLL: –Wybranie pliku VCLL –Utworzenie plików zawierających diagram klas i diagram aktywności –Wyświetlenie diagramów

P.Habela, K.Subieta. SSR, Wykład 9, Folia 17 kwiecień 2009 Diagram klas uwzględniający Opportunity

P.Habela, K.Subieta. SSR, Wykład 9, Folia 18 kwiecień 2009 Przypadek programisty VIDE Zakłada się, że programista VIDE ma za zadanie uzupełnienie wytworzonych modeli poprzez wypełnienie kodem wyspecyfikowanych metod. Działanie to zakłada, że model klas dostarczony przez analityka/projektanta może potrzebować korekt lub doprecyzowania, np. poprzez specyfikację lub poprawienia sygnatur metod. Schemat aktywności włącza następujące kroki: –Selekcja i poprawienie definicji operacji, które są zgodne z kontekstem implementowanych ciał metod dla tych operacji (z użyciem tekstowego lub wizualnego języka VIDE dla poziomu PIM) –Zapamiętanie tych definicji w modelu –Wykonanie modelu celem przetestowania wyspecyfikowanego zachowania, poprzez wywołanie programów, instrukcji lub zapytań ad hoc (z użyciem Model Execution Engine dla poziomu PIM) –Wygenerowanie kodu dla wyselekcjonowanej docelowej platformy Ten schemat może mieć rozliczne odmiany, w zależności od roli specyfikowanego kodu i od celu dla którego model jest wykonywany –Np. możliwe jest testowanie i walidacja aplikacji włączające użytkownika końcowego.

P.Habela, K.Subieta. SSR, Wykład 9, Folia 19 kwiecień 2009 Konstrukcje diagramu klas UML wspierane przez VIDE Pakiety ( jedno-poziome struktury pakietów poniżej pakietu korzeniowego są przetestowane) Import pakietów pomiędzy pakietami Klasy z pojedynczymi generalizacjami Atrybuty: –Typy atomowe –Typy określane klasą (podobne do kompozycji) Asocjacje (tylko binarne) –Jednokierunkowe –Dwukierunkowe (w tym przypadku obydwa końce są zaznaczone jako navigable) Operacje (przeciążanie nie jest wspierane)

P.Habela, K.Subieta. SSR, Wykład 9, Folia 20 kwiecień 2009 Stereotypy specyficzne dla VIDE «module» zaznacza klasę służącą jako punkt startowy aplikacji. Instancje obiektów tej klasy nie mogą być tworzone. «PublishedService» zaznacza klasę, której wybrane operacje są dostępne jako operacje serwisu Webowego. –Przestrzeń nazw oraz URL jako atrybuty tego stereotypu. «PublishedOperation» zaznacza operację wewnątrz klasy zaznaczonej stereotypem «PublishedService». –Oznacza opublikowanie tej operacji. «ConsumedService» zaznacza pieniek klasy dla zewnętrznego serwisu konsumowanego przez kod VIDE. «Id» zaznacza atrybut (obecnie tylko typu String), który identyfikuje instancję danej klasy w sposób unikalny. –Taki atrybut może być generowany automatycznie. «Persistent» zaznacza klasę, której instancje mają być trwałe «Transient» zaznacza atrybut wewnątrz klasy, który jest nietrwały mimo, że znajduje się wewnątrz klasy oznaczonej stereotypem «Persistent».

P.Habela, K.Subieta. SSR, Wykład 9, Folia 21 kwiecień 2009 Diagram klas UML jako schemat bazy danych Generalne założenie MDA – diagram klas UML jak schemat danych lub bazy danych aplikacji Pewne konstrukcje UML są nie objęte formalizacją, gdyż są zbyt trudne w sensie języka programowania –Np. n-arne asocjacje, n>2, lub dekorowanie asocjacji klasą Niektóre z nich są mało precyzyjne, np. –agregacje/kompozycje –wieloaspektowe generalizacje

P.Habela, K.Subieta. SSR, Wykład 9, Folia 22 kwiecień 2009 Specyfikacja modułów 1 +global

P.Habela, K.Subieta. SSR, Wykład 9, Folia 23 kwiecień 2009 Edytor tekstowy VIDE

P.Habela, K.Subieta. SSR, Wykład 9, Folia 24 kwiecień 2009 Kod tekstowy Oblicza ExpectedRevenueAmount

P.Habela, K.Subieta. SSR, Wykład 9, Folia 25 kwiecień 2009 Edytor wizualny dla ciał metod Oblicza ExpectedRevenueAmount

P.Habela, K.Subieta. SSR, Wykład 9, Folia 26 kwiecień 2009 Edytor wizualny VEB – Visual Expression Builder Oparty na Obiektowym Query By Example (OQBE) Zapytanie zwróci rezultat: bag(struct(desc, salesperson)) dla wszystkich tych Lead (czyli zaczątków Opportunity), dla których: - istnieje Oportunity i ma priorytet >=4 - posiada również prognozę i jest ona większa niż 50% - wszystkie pozycje oferty opiewają na co najmniej 10 sztuk każda

P.Habela, K.Subieta. SSR, Wykład 9, Folia 27 kwiecień 2009 Prototypowanie graficznego interfejsu użytkownika (GUI) VIDE GUI-builder pozwala zdefiniować interakcyjnie GUI dla programów w VIDE Ponieważ to GUI bazuje na Java Runtime Environment, może być wykonywane na wszystkich platformach wspieranych przez Java (np. Windows, Linux, Apple OS X, Sun Solaris). –GUI może być wywołane jako aplikacja desktop lub może być zanurzona jako Java aplet na stronie webowej. –Ponieważ komunikuje się z VIDE poprzez Web service, możliwe jest tworzenie rozwiązań rozproszonych –can be started as a desktop-application or can be VIDE GUI-builder jest zintegrowany z VIDE-Eclipse-framework. –Dlatego GUI może być projektowane bez opuszczania środowiska deweloperskiego VIDE.

P.Habela, K.Subieta. SSR, Wykład 9, Folia 28 kwiecień 2009 Generacja interfejsu użytkownika - WebFace

P.Habela, K.Subieta. SSR, Wykład 9, Folia 29 kwiecień 2009 Wrapper do systemów relacyjnych Integracja relacyjnych baz danych (RDB) działa dla PIM i PSM. –Programista może zaimportować schemat RDB bezpośrednio z działającego RDBMS, zamieniając go w model UML edytowalny przez edytory VIDE –W rezultacie nowe pakiety z klasami reprezentującymi schemat relacyjny. Zasoby relacyjne są reprezentowane na poziomie PSM jako tzw. wirtualne obiekty, które posiadają strukturę podobną do rzeczywistych obiektów, ale które nie istnieją fizycznie (tylko definicja) Wirtualne obiekty mogą być odpytywane i aktualizowane dokładnie tak samo jak obiekty rzeczywiste. –W ten sposób wszystkie operacje na poziomie PIM są zunifikowane. W przypadku systemu ODRA ta funkcjonalność jest zapewniona przez RDB Wrapper, który może nawet tworzyć nowe krotki w tabelach relacyjnych w odpowiedzi na utworzenie nowych obiektów wirtualnych. Poziom PSM wspiera automatyczną integrację silnika ODRA z RDBMS, jeżeli odpowiednia informacja jest zapisana w modelu. –Nie wymaga to od programisty żadnych dodatkowych akcji.

P.Habela, K.Subieta. SSR, Wykład 9, Folia 30 kwiecień 2009 XSD Importer dla VIDE Pozwala użytkownikom VIDE na interakcję z danymi w plikach XML Import plików XSD może mieć dwa cele: –Załadowanie zewnętrznego schemat do modelu VIDE i następnie użycie go przy pomocy dowolnych opcji dostępnych w VIDE –Załadowanie schematu zewnętrznej bazy danych i użycie go podczas runtime Drugi przypadek wymaga, aby wykonująca go platforma oferowała obiekty zgodne z zaimportowanym schematem. –Platforma ODRA została specjalnie zaprojektowana do obsługi obiektów zgodnych z zaimportowanym plikiem XSD. –Dlatego VIDE umożliwia użycie danych istniejących wcześniej niż program w VIDE –Obiekty te mogą być wytworzone w systemie ODRA lub zaimportowane automatycznie z plików XML