Extracting Behavior Specification of Components in Legacy Applications
- Speaker: Prof Frantisek Plasil (Charles University, Prague)
- Host: Kung-Kiu Lau
- 16th September 2009 at 14:15 in Lecture Theatre 1.4, Kilburn Building
A challenge of componentizing legacy applications is to extract behavior specification of suggested components given in the form of source code in an object oriented language. It is desirable to preserve a relation between the original structure of the source code of a component is well preserved in the extracted specification; in particular, this is important for both user comprehension and for interpretation of results of any further formal verification. Even though the reverse engineering techniques providing behavior specification were already applied on object oriented software and components, none of them targets the interplay of both the externally and internally triggered activities on the component?s provided and required interfaces from a single perspective. This paper targets the problem in the scope of Behavior Protocols and components given as a set of Java classes accompanied with information on component boundaries. It presents a technique for extracting the behavior protocol of a component which describes the interplay of methods calls on both provided and required interfaces triggered either externally or by an internal thread. To demonstrate viability of the proposed approach, this technique has been partially applied in the JAbstractor tool for the SOFA component model.