Abstract |
Pirmais modelis bija izgudrots vēl senajā Grieķijā. Kopš tā laika cilvēki turpina izmantot modelēšanu daudzās jomās, jo tā palīdz formalizēt un apkopot sarežģītas un haotiskas problēmas. No šādas tendences neatpaliek arī programmatūras inženierija, kur modelēšana ir izmantota, lai grafiski reprezentētu datorsistēmu komponentes. Ir izveidotas vairākas programmatūras izstrādes ideoloģijas, kuras izvirza modeļus par centrālo izstrādes procesa artefaktu. Viena no šādam ideoloģijām ir modeļvadāmā arhitektūra, kura ir objektu pārvaldības grupas standartu kopums. Tā nosaka, ka modeļus var automātiski pārvērst pirmkodā, taču šādu transformāciju standarti nav pagaidām precīzi definēti. Neskatoties uz šo, eksistē milzīgs skaits dažādu rīku, kuri apgalvo, ka var noģenerēt no modeļiem uzreiz strādājošo sistēmu. Šajā kontekstā ir populāra programmatūras karkasa ģenerēšana no UML klašu diagrammām. Diemžēl, pat ar lielajiem uzņēmumiem izstrādāti rīki bieži vien ģenerē kļūdaino kodu, it īpaši ja modelis pats par sevi ir izveidots nekorekti. Citiem vārdiem sakot, populārākie koda ģeneratori neizmanto nekādu gudro pieeju koda ģenerācijai un nespēj pat pārbaudīt modeļu pareizību attiecīgi objektorientētās paradigmas principiem.
Šī darba mērķis ir izveidot arhitektūru koda ģeneratoram un implementēt rīka prototipu, kurš bāzēts uz mākslīgā intelekta pamatprincipiem un spēj ģenerēt kodu, kā arī verificēt UML klašu diagrammas. Darbā ir aprakstīta koda ģeneratoru būtība un problēmas. Attiecīgi noteiktām problēmām ir aprakstīta koda ģeneratoru arhitektūra, balstoties uz mākslīgā pamatprincipiem. Uz šādas arhitektūras uzbūvēts koda ģenerators sastāv no trim blokiem, katram no kuriem ir vajadzīgi ieejas dati, lai veiktu koda ģenerāciju un modeļa verifikāciju. Taču pastāv vairākas ieejas datu alternatīvas, kuras ir aprakstītas, analizētas, un ir izvēlēta viena no tiem. Aprakstītā arhitektūra ir realizēta rīka prototipā, kuram ir veikta funkcionalitātes pārbaude. Pārsvarā, rīks strādā, taču tam ir nepieciešami uzlabojumi, lai tas kvalitatīvi varētu paveikt savus uzdevumus.
Dokumentā ir 83 lappuses, 16 attēli, 1 tabula, 9 pielikumi un 51 nosaukumu informācijas avoti. |