Abstract:
The practice of reusing code has led the way towards the need for reverse engineering of software systems. The reverse engineering of heterogeneous, complex and large software’s is a tricky process which is time taking and susceptible to errors, some information is lost and the efficacy of reverse engineering is decreased. Foundational subset of executable unified modeling language, was introduced, which is a subset of unified modeling language, in order to do detailed modeling of a software system. Action language for, foundation subset for executable unified modeling language, is the textual surface notation of foundational subset for unified modeling language. In this research we convert the programming language (i.e., Java) to higher level language (i.e., Action language for, foundation subset for executable unified modeling language). Research has been carried out incrementally. Firstly, we represent the language elements mapping for, action language for foundation subset for executable unified modeling language, and Java, through rule definition. Secondly, the presently supported behavior rule mapping is done. Next, the missing behavior is listed through research and previous studies. Lastly, we will add the missing behavioral aspects of the Java into, action language for foundation subset for executable unified modeling language, by defining the rules for the missing behavioral aspects. Resultantly, it will be easier to convert from action language into detailed models and restructure and re-engineer these models. We can do this process for forward engineering as well. The rules are generic enough to work both ways. The work that we have done in our research was not aimed at developing a tool, rather, to propose the set of rules that will lay the basics of developing the tool in the future. Case study is used for the demonstration, evaluation and feasibility check, of the approach used.