patogiau.lt - duomenimis paremta architektura žiniatinklyje.ppt

17
10/01/09 1 Data driven design in web Kęstutis Valinčius Sigitas Povilaitis Rytis Ūsalis Paulius Paškevičius KAUNO TECHNOLOGIJOS UNIVERSITETAS

Upload: paulius-paskevicius

Post on 02-Jul-2015

687 views

Category:

Technology


3 download

DESCRIPTION

PATOGIAU.LT - Data Driven Design in Web. PATOGIAU.LT - Duomenimis paremta architektūra žiniatinklyje.

TRANSCRIPT

Page 1: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 1

Data driven design in webKęstutis Valinčius

Sigitas PovilaitisRytis Ūsalis

Paulius Paškevičius

KAUNO TECHNOLOGIJOS UNIVERSITETAS

Page 2: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 2

Sudėtingas žiniatinklio programų plečiamumas

Brangus naujo funkcionalumo įgyvendinimas

Lėtas tinklalapio interaktyvumo valdymas

Aukštos kvalifikacijos specialistų poreikis

Page 3: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 3

Tinklalapiui pritaikyti duomenimis paremtą

architektūrą (Data Driven Design).

Sukurti įrankį, grafiškai leisiantį kurti

scenarijus.

Page 4: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 4

Page 5: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 5

Grafinio redagavimo posistemėPaskirtis: Grafiškai kurti ir redaguoti veiklos scenarijus

Pagrindinės funkcijos: Objektų bei ryšių tarp jų atvaizdavimas

Page 6: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 6

Grafinio redagavimo posistemėBendradarbiavimas su kitomis

posistemėmis

Pradiniai duomenys atkeliaus iš UML

apdorojimo posistemės XML formatu

Rezultatai bus siunčiami į kodo generavimo

posistemę

Page 7: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 7

Grafinio redagavimo posistemė

Page 8: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 8

Kodo generavimo posistemėPaskirtis:

Iš skripto generuoti sistemos kodą.

Pagrindinės funkcijos:

Iš skripto realizuoti funkcijų pakvietimus, ciklus,

sąlygos sakinius.

Įskiepiais paremta architektūra

Page 9: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 9

Kodo generavimo posistemėBendradarbiavimas su kitomis

posistemėmis

Duomenys gaunami iš grafinės redagavimo

posistemės skripto pavidalu.

Sugeneruotas kodas išsiunčiamas sistemos

varikliui.

Page 10: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 10

Paskirtis:

Architektūroje specifikuotų objektų realizacija

Pagrindinės funkcijos:

Teikti programines sąsajas (API) architektūroje

specifikuotų objektų valdymui

Apdoroti duomenų srautus pateiktus objektams.

Page 11: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 11

Bendradarbiavimas su kitomis posistemėmis

Programinių sąsajų (API) teikimas kodo

generavimo posistemei

Page 12: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 12

Pavyzdys: Pavyzdinė sistema realizuota su „Google maps“

įskiepiu. Trumpas scenarijaus aprašymas:

Vartotojui reikia sudaryti krovinio vežimo scenarijaus iš Kauno į Vilnių demonstraciją. Įmonės būstinė yra Garliavoje. Vairuotojas važiuoja į Kauną, kur tikrinama ar yra pervežimo užsakymų. Jeigu užsakymų yra, krovinys vežamas į Vilnių ir grįžtama atgal. Ši procedūra kartojama tol, kol kroviniai baigiasi. Tada vairuotojas grįžta į būstinę.

Page 13: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 13

Sistemos UML specifikacijos pavyzdys:

Pervežimų sistemos UML klasių diagrama

+važiuotiĮ(in Miestas : string)+yraKrovinių() : bool+nustatytiPradžiosKoordinatę(in Miestas : string)

-Greitis : int-Automobilio Tipas : string

Krovinių vežimas

Google Maps API

Page 14: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 14

Grafinio redaktoriaus sumodeliuotas vaizdas:

Krovinio vežimo grafinis modelis

Jei(yraKrovinių ())nustatytiPradžiosKoordinatę(„Garliava“ )

važiuotiĮ („Kaunas“) važiuotiĮ(„Garliava“ )

važiuotiĮ(„Vilnius“ )

Taip

Ne

Page 15: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 15

Grafinio redaktoriaus XML išvestis: <Busena id=“start“>

<next id=“B1“ /> </Busena> <Busena id=“B1“> <function name=“nustatytiPradziosKoordinate“> <param value=“Garliava“ /> </function> <next id=“B2“ /> </Busena> <Busena id=“B2“> <function name=“vaziuotiI“> <param value=“Kaunas“ /> </function> <next id=“B3“ /> </Busena> <Busena id=“B3“> <function name=“if“> <param name=“yraKroviniu“ /> <true id=“B4“ /> <falše id=“B2“ /> </function> </Busena> <Busena id=“B4“> <function name=“vaziuotiI“> <param value=“Vilnius“ /> </function> <next id=“B2“ /> </Busena> <Busena id=“B5“> <function name=“vaziuotiI“> <param value=“Garliava“ /> </function> <next id=“end“ /> </Busena>

Page 16: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 16

Sugeneruotas programinis kodas: function B1(){nustatytiPradziosKoordinate(“Garliava”); B2();} function B2(){vaziuotiI(“Kaunas”); B3();} function B3(){ if(yraKroviniu()) B4(); else B5(); } function B4(){vaziuotiI(“Vilnius”); B2();} function B5(){vaziuotiI(“Garliava”);} B1();

Page 17: PATOGIAU.LT - Duomenimis paremta architektura žiniatinklyje.ppt

10/01/09 17

Ačiū už dėmesį