Nedokumentētas mantotās programmatūras automātiskā reversā inženierija
Author
Orlovs, Iļja
Co-author
Latvijas Universitāte. Fizikas un matemātikas fakultāte
Advisor
Teilāns, Artis
Date
2007Metadata
Show full item recordAbstract
Projekta sākuma mērķis bija izstrādāt universālu translatoru no jebkuras programmēšanas
valodas uz GRADE diagramma,.
Bija nolemts izveidot divposmu reversu inženierijas procesu, kur katru posmu reprezentē
atsevišķais rīks. Pirmais rīks lasīs programmas pirmkodu un ģenerēs konkrēti formatēto XML
datni. Šī datne pēc tam tiek apstrādāta ar otro rīku, kurš prot konvertēt XML failus uz
GRADE diagrammu formātu. Bija arī izteikta vēlēšanās, ka otram rīkam arī jābūt viegli
konfigurējamam un pēc iespējas plastiskam.
Sakarībā ar šiem pieprasījumiem tika izstrādāti divi rīki: „naturalToXml” un „XmlToElf”.
ņ „naturalToXml” ir rīks Natural valodas konvertēšanai XML formātā.
ņ „XmlToElf” ir rīks XML pārveidošanai GRADE diagrammu formātā
Pēc šo rīku izstrādāšanas bija arī izveidots kopīgs GUI interfeiss un nosaukts par
„naturalToElf”. The initial project goal was to create universal program source code translator to the GRADE
diagram format.
It was chosen to make two-step reverse engineering process, where first step will process
original programs’ source code and should output specially formatted XML file, while second
would convert this XML file to GRADE diagram format. So, the first step is languagedependant,
while the second should be universal. Also it was said that it would be nice if
XML to EL translator program would be easily configurable and could adapt to slightly
different input XML formats and easily extensible (so, if one is willing to add new EL
element to the defined element set, it should be as easy and clear as possible).
According to this plan, two programs were developed: “naturalToXml” and “XmlToElf”.
ņ “naturalToXml” is a program that converts exported natural source to XML file.
ņ “XmlToElf” is a program that converts this XML file to EL diagram file set. (That can
be later imported to Grade tools via its standard mechanisms.)
Later the GUI interface named “naturalToXml” was added for improved usability.