Automatic design pattern recovery
暂无分享,去创建一个
An approach for recovering design patterns from source code is presented. The approach addresses software comprehension issue in reverse engineering domain, by providing a design pattern based representation of the system to facilitate software understanding. Design patterns are formalized by a simplified version of the LePUS language, which eliminates some higher-order concepts to reduce the complexity and at the same time, incorporates some extensions on entity and relation. Source code is semantically parsed and is further interpreted by a language analysis framework. Entities and relations are extracted and are used to generate a algorithm is adopted to match the design pattern specifications with the program model to identify design patterns implemented in the source code. The approach has been implemented and can be used to identify several design patterns listed in GoF book. Three initial experiments are conducted on some open source software to demonstrate its suitability for recovering the specified design patterns. The results are discussed in terms of the performance and the precision of pattern recovery