Standardy w zakresie systemw rozproszonych i baz danych

1 / 30
About This Presentation
Title:

Standardy w zakresie systemw rozproszonych i baz danych

Description:

Model 'albumu kawalk w' (scrapbook) sklada sie z reprezentacji wizyjnej (zwykle ... Model scrapbook przechowuje sie na specjalnym pliku (scrap file) P.Habela, K. ... – PowerPoint PPT presentation

Number of Views:32
Avg rating:3.0/5.0
Slides: 31
Provided by: ipipa

less

Transcript and Presenter's Notes

Title: Standardy w zakresie systemw rozproszonych i baz danych


1
Standardy w zakresie systemów rozproszonych i
baz danych
Wyklad 9 Wprowadzenie do systemu VIDE
Piotr Habela Kazimierz Subieta Polsko-Japonska
Wyzsza Szkola Technik Komputerowych, Warszawa
2
Narzedzie do analizy dziedziny biznesu
  • Prototyp umozliwia poczatkowa interakcje
    uzytkownika z systemem VIDE na poziomie CIM
  • Uzytkownik biznesowy lub analityk biznesowy
    bedzie mógl opisac swój problem w zrozumialych
    dla niego terminach.
  • W kolejnych krokach narzedzie wspomaga
    uzytkownika w precyzowaniu jego koncepcji w
    kierunku modelu procesu biznesowego.
  • Nie nalezy oczekiwac, ze uzytkownik biznesowy lub
    analityk biznesowy stanie sie w ten sposób
    programista, gdyz powstaly w ten sposób model nie
    jest dostatecznie formalny aby mozna bylo mówic o
    wykonywalnym kodzie.
  • Jednakze istotne jest to, ze juz na tym etapie
    zostaja okreslone podstawowe wlasnosci aplikacji,
    które wymagaja stosunkowo niewielkiej pracy, aby
    staly sie w pelni formalnym kodem.

3
Przyklad aplikacji biznesowej - Sales Scenario
(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.
  • 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.
  • 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.
  • Another employee of the sales office creates an
    offer using the Quotation module, which
    automatically generates a quotation template
    based on the sales opportunity.
  • 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.
  • 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.

4
Przyklad aplikacji biznesowej - Sales Scenario
(2)
  • To check the creditworthiness of the customer, a
    Credit Check is performed during sales processing
    by interacting with the Payment module.
  • An (optional) Availability Check is performed to
    check warehouse stock for required capacities.
  • 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.
  • In cooperation with the Delivery module, the
    order is split into separate orders for each
    involved warehouse, which have to be scheduled
    appropriately.
  • 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.
  • The order status is set to completed by an
    employee as soon as it is delivered to the
    customer.

5
Pierwsze wyobrazenie o aplikacji
6
VIDE - Przypadek uzycia dla uzytkownika
biznesowego
  • Zapisanie informacji o dziedzinie problemowej w
    postaci luznych slabo powiazanych kawalków
    (scraps)
  • Precyzowanie tej informacji i rozpoczecie budowy
    pewnych uproszczonych asocjacji pomiedzy tymi
    kawalkami
  • Model albumu kawalków (scrapbook) sklada sie z
    reprezentacji wizyjnej (zwykle zaokraglonych
    prostokatów) wybranych kawalków.
  • Model scrapbook przechowuje sie na specjalnym
    pliku (scrap file)

7
Selekcja kawalków (scraps) z tekstu
8
Wizualizacja kawalków
9
CIM - Nieformalny model analityczny
10
VIDE przypadek dla analityka biznesowego
  • Edytor CIM pozwala uzytkownikowi na tworzenie i
    precyzowanie pól-formalnego modelu procesów
    biznesowych, struktury organizacyjnej oraz
    struktur danych bazujac na narzedziu do analizy
    dziedzinowej.
  • Wynik jest pamietany w postaci pliku XML
  • Po stworzeniu model moze byc wyeksportowany do
    systemu zarzadzania procesami pracy
  • Model moze byc uzyty do laczenia (orchestration)
    róznych aplikacji bazujacych na systemie workflow
    wynik w postaci standardowego XPDL 2.0.
    (XML-owa wersja BPMN)
  • Wynik ten moze byc skonsumowany w szczególnosci
    przez Office Objects Workflow firmy Rodan
  • Mozliwa integracja wiele systemów WF pochodzacych
    od róznych dostawców
  • Z drugiej strony model z poziomu CIM moze byc
    punktem startowym dla wizarda zapewniajacego
    przejscie do poziomu PIM (PIM Prototyping Tool).
  • W tym przypadku nie zaklada sie generowania
    formaty XPDL 2.0, lecz wlasny format VIDE
    okreslony jako VCLL
  • Jest to równiez format XML, ale rozszerzony w
    stosunku do XPDL 2.0

11
Model procesów w VIDE (VCLL)
12
Model procesów w BPMN (XPDL)
Notacja graficzna pochodzi z OfficeObjects
WorkFlow, zblizona do VCLL z poprzedniego slajdu
13
CIM - perspektywa danych
14
CIM - perspektywa organizacyjna
15
CIM - perspektywa regul biznesowych
16
CIM przypadek dla Analityka/Projektanta
  • Poczatkowa faza projektowania jest wyprodukowanie
    diagramu klas z modelu procesu biznesowego
    wytworzonego w fazie CIM
  • Model zachowania (behaviour), zwykle diagram
    aktywnosci, jest tworzony równoczesnie z modelem
    klas
  • Prototypowanie na poziomie PIM bierze jako
    wejscie plik zawierajacy model procesu
    biznesowego, komponent VCLL i nastepnie stosuje
    zestaw heurystyk pozwalajacych przekonwertowac
    elementy modelu CIM na diagram klas oraz diagram
    aktywnosci.
  • Nastepujace kroki sa wykonywane w celu
    rozwiniecia poczatkowego modelu klas i aktywnosci
    z modelu procesu biznesowego zapisanego w VCLL
  • Wybranie pliku VCLL
  • Utworzenie plików zawierajacych diagram klas i
    diagram aktywnosci
  • Wyswietlenie diagramów

17
Diagram klas uwzgledniajacy Opportunity
18
Przypadek programisty VIDE
  • Zaklada sie, ze programista VIDE ma za zadanie
    uzupelnienie wytworzonych modeli poprzez
    wypelnienie kodem wyspecyfikowanych metod.
  • Dzialanie to zaklada, ze model klas dostarczony
    przez analityka/projektanta moze potrzebowac
    korekt lub doprecyzowania, np. poprzez
    specyfikacje lub poprawienia sygnatur metod.
  • Schemat aktywnosci wlacza nastepujace kroki
  • Selekcja i poprawienie definicji operacji, które
    sa zgodne z kontekstem implementowanych cial
    metod dla tych operacji (z uzyciem tekstowego lub
    wizualnego jezyka VIDE dla poziomu PIM)
  • Zapamietanie tych definicji w modelu
  • Wykonanie modelu celem przetestowania
    wyspecyfikowanego zachowania, poprzez wywolanie
    programów, instrukcji lub zapytan ad hoc (z
    uzyciem Model Execution Engine dla poziomu PIM)
  • Wygenerowanie kodu dla wyselekcjonowanej
    docelowej platformy
  • Ten schemat moze miec rozliczne odmiany, w
    zaleznosci od roli specyfikowanego kodu i od celu
    dla którego model jest wykonywany
  • Np. mozliwe jest testowanie i walidacja aplikacji
    wlaczajace uzytkownika koncowego.

19
Konstrukcje diagramu klas UML wspierane przez VIDE
  • Pakiety ( jedno-poziome struktury pakietów
    ponizej pakietu korzeniowego sa przetestowane)
  • Import pakietów pomiedzy pakietami
  • Klasy z pojedynczymi generalizacjami
  • Atrybuty
  • Typy atomowe
  • Typy okreslane klasa (podobne do kompozycji)
  • Asocjacje (tylko binarne)
  • Jednokierunkowe
  • Dwukierunkowe (w tym przypadku obydwa konce sa
    zaznaczone jako navigable)
  • Operacje (przeciazanie nie jest wspierane)

20
Stereotypy specyficzne dla VIDE
  • module zaznacza klase sluzaca jako punkt
    startowy aplikacji. Instancje obiektów tej klasy
    nie moga byc tworzone.
  • PublishedService zaznacza klase, której
    wybrane operacje sa dostepne jako operacje
    serwisu Webowego.
  • Przestrzen nazw oraz URL jako atrybuty tego
    stereotypu.
  • PublishedOperation zaznacza operacje wewnatrz
    klasy zaznaczonej stereotypem PublishedService.
  • Oznacza opublikowanie tej operacji.
  • ConsumedService zaznacza pieniek klasy dla
    zewnetrznego serwisu konsumowanego przez kod
    VIDE.
  • Id zaznacza atrybut (obecnie tylko typu
    String), który identyfikuje instancje danej klasy
    w sposób unikalny.
  • Taki atrybut moze byc generowany automatycznie.
  • Persistent zaznacza klase, której instancje
    maja byc trwale
  • Transient zaznacza atrybut wewnatrz klasy,
    który jest nietrwaly mimo, ze znajduje sie
    wewnatrz klasy oznaczonej stereotypem
    Persistent.

21
Diagram klas UML jako schemat bazy danych
  • Generalne zalozenie MDA diagram klas UML jak
    schemat danych lub bazy danych aplikacji
  • Pewne konstrukcje UML sa nie objete formalizacja,
    gdyz sa zbyt trudne w sensie jezyka programowania
  • Np. n-arne asocjacje, ngt2, lub dekorowanie
    asocjacji klasa
  • Niektóre z nich sa malo precyzyjne, np.
  • agregacje/kompozycje
  • wieloaspektowe generalizacje

22
Specyfikacja modulów
1
global
23
Edytor tekstowy VIDE
24
Kod tekstowy
Oblicza ExpectedRevenueAmount
25
Edytor wizualny dla cial metod
Oblicza ExpectedRevenueAmount
26
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 zaczatków Opportunity), dla
których - istnieje Oportunity i ma priorytet
gt4 -
posiada równiez prognoze i jest ona wieksza niz
50 -
wszystkie pozycje oferty opiewaja na co najmniej
10 sztuk kazda
27
Prototypowanie graficznego interfejsu uzytkownika
(GUI)
  • VIDE GUI-builder pozwala zdefiniowac
    interakcyjnie GUI dla programów w VIDE
  • Poniewaz to GUI bazuje na Java Runtime
    Environment, moze byc wykonywane na wszystkich
    platformach wspieranych przez Java (np. Windows,
    Linux, Apple OS X, Sun Solaris).
  • GUI moze byc wywolane jako aplikacja desktop lub
    moze byc zanurzona jako Java aplet na stronie
    webowej.
  • Poniewaz komunikuje sie z VIDE poprzez Web
    service, mozliwe jest tworzenie rozwiazan
    rozproszonych
  • can be started as a desktop-application or can be
  • VIDE GUI-builder jest zintegrowany z
    VIDE-Eclipse-framework.
  • Dlatego GUI moze byc projektowane bez opuszczania
    srodowiska deweloperskiego VIDE.

28
Generacja interfejsu uzytkownika - WebFace
29
Wrapper do systemów relacyjnych
  • Integracja relacyjnych baz danych (RDB) dziala
    dla PIM i PSM.
  • Programista moze zaimportowac schemat RDB
    bezposrednio z dzialajacego RDBMS, zamieniajac go
    w model UML edytowalny przez edytory VIDE
  • W rezultacie nowe pakiety z klasami
    reprezentujacymi schemat relacyjny.
  • Zasoby relacyjne sa reprezentowane na poziomie
    PSM jako tzw. wirtualne obiekty, które posiadaja
    strukture podobna do rzeczywistych obiektów, ale
    które nie istnieja fizycznie (tylko definicja)
  • Wirtualne obiekty moga byc odpytywane i
    aktualizowane dokladnie tak samo jak obiekty
    rzeczywiste.
  • W ten sposób wszystkie operacje na poziomie PIM
    sa zunifikowane.
  • W przypadku systemu ODRA ta funkcjonalnosc jest
    zapewniona przez RDB Wrapper, który moze nawet
    tworzyc nowe krotki w tabelach relacyjnych w
    odpowiedzi na utworzenie nowych obiektów
    wirtualnych.
  • Poziom PSM wspiera automatyczna integracje
    silnika ODRA z RDBMS, jezeli odpowiednia
    informacja jest zapisana w modelu.
  • Nie wymaga to od programisty zadnych dodatkowych
    akcji.

30
XSD Importer dla VIDE
  • Pozwala uzytkownikom VIDE na interakcje z danymi
    w plikach XML
  • Import plików XSD moze miec dwa cele
  • Zaladowanie zewnetrznego schemat do modelu VIDE i
    nastepnie uzycie go przy pomocy dowolnych opcji
    dostepnych w VIDE
  • Zaladowanie schematu zewnetrznej bazy danych i
    uzycie go podczas runtime
  • Drugi przypadek wymaga, aby wykonujaca go
    platforma oferowala obiekty zgodne z
    zaimportowanym schematem.
  • Platforma ODRA zostala specjalnie zaprojektowana
    do obslugi obiektów zgodnych z zaimportowanym
    plikiem XSD.
  • Dlatego VIDE umozliwia uzycie danych istniejacych
    wczesniej niz program w VIDE
  • Obiekty te moga byc wytworzone w systemie ODRA
    lub zaimportowane automatycznie z plików XML
Write a Comment
User Comments (0)