Abstract |
Mūsdienās plaši tiek izmantota modeļu transformācija, lai atvieglotu sistēmas darbību. Modeļu transformācija tiek uzskatīta par modelēšanas galveno un pašu svarīgāko procesu. Transformācija sevī iekļauj vairākas darbības, kas ir jāveic, tieši tāpēc tā sastāv no vairākām komponentēm, kur katrai no tām ir sava funkcionalitāte. Transformācija pārveido modeļus pavisam jaunā līmenī, vai tie būtu modeļi, vai pirmkods, tai ir jābūt elastīgai un formāli balstītai uz eksistējošu profilu standartu. Tas ir priekšnoteikums, lai vēlamo automatizācijas transformāciju izmantotu ģeneratori.
Transformācijas rīks izvēlas PIM modeli un transformē to PSM modelī. Pēc tam, tas pats rīks vai cits, transformē PSM modeli koda veidā. Transformācijas rīki, kuri darbojas pēc melnās kastes principa, izvēlas ievades modeli un izveido otru modeli kā izeju. Transformācijas svarīgākā pazīme ir tāda, ka transformācijai obligāti ir jāsaglabā avota un mērķa modeļa nozīme, tas var tikt izdarīts, ja modeļa nozīme ir izklāstīta abos modeļos.
Modeļvadāmā programmatūras izstrāde nav perfekta, ir iespējamas dažādas problēmas izstrādājot programmatūru. Svarīgākais artefakts ir modelis, kurš tiek izmantots transformācijās, tieši tāpēc lielākās problēmas ir saistītas ar modeļu transformāciju. Modeļu transformācijā ir iespējamas dažādas problēmas. Bakalaura darba mērķis ir izpētīt modeļu transformācijas būtību, rīkus un to komponentes, aprakstīt vienu modeļu transformācijas problēmu un piedāvāt savu risinājumu dotajai problēmai.
Darba gaitā tika izpētīta modeļvadāmās sistēmas un arhitektūras būtība, kā arī transformācijas rīku komponentes un to uzbūve. Lai izpildītu darba mērķi, tika izpētīta un aprakstīta modeļu repozitorija uzbūve, kā arī aprakstīta biežāk sastopamākā problēma. Sasniegts galvenais rezultāts – aprakstīta esošā problēma modeļu repozitorijā, aprakstīti esošie risinājumi divās programmēšanas valodās, kā arī piedāvāts autora izveidots risinājums.
Bakalaura darbā ir 52 lappuses, 22 attēli, 2 tabulas un 10 nosaukumu informācijas avoti. |