Reverse engineering technology as a tool of embedded software: A solution from PL/M code to structure charts

Hannu Rytilä

Research output: Book/ReportReport


The number of real-time computer systems in which embedded software has been used has dramatically increased during the eighties. Many such systems have now been used from ten to sixteen years. The oldest embedded software applications now being maintained were developed without the help of any high-level design languages, advanced methods and CASE tools. Reverse engineering has, therefore, become a viable means for improving the maintainability of embedded software. This study introduces reverse engineering as a technology that can be used in the maintenance of embedded software. The technologies were adopted in a reverse engineering tool, which is able to produce structure charts automatically from PL\M programs. Syntax analysis is introduced as a principal solution to extract data required in the derivation of the charts. Since structure charts are language oriented descriptions, the data can be easily transformed to structure charts compatible with a commercial CASE environment. The more advanced technologies, which are needed in the reverse engineering of higher level SA/SD-RT descriptions, are introduced mainly in the base of literature. Such reverse engineering process requires expert knowledge, even though some parts of the process are automated. This study characterizes the knowledge and its usage in reverse engineering. The framework of knowledge-based functional analysis, as well as its implementation that is partially automated, is described. In addition to the description of reverse engineering technology, this study discusses the process of preventive maintenance, where the technology is used.
Original languageEnglish
Place of PublicationEspoo
PublisherVTT Technical Research Centre of Finland
Number of pages101
ISBN (Print)951-38-4708-X
Publication statusPublished - 1994
MoE publication typeNot Eligible

Publication series

SeriesVTT Tiedotteita - Meddelanden - Research Notes


  • embedded software
  • reverse engineering
  • real-time systems
  • software maintenance


Dive into the research topics of 'Reverse engineering technology as a tool of embedded software: A solution from PL/M code to structure charts'. Together they form a unique fingerprint.

Cite this