Computer Science and Software Engineering · 2014 · 12 citations · 17 references
ComputingComputer ScienceProgramming LanguagesSoftware EngineeringSystems ModelingModel-driven DevelopmentModel-driven Software EngineeringObject-oriented DesignObject-oriented ProgrammingReverse EngineeringSoftware ModelingModel-to-code GenerationObject-oriented ArchitectureSoftware Reverse EngineeringState MachinesUml Modeling
In this paper we present a novel approach to reverse engineering, in which modeling information such as UML associations, state machines and attributes is incrementally added to code written in Java or C++, while maintaining the system in a textual format. Umple is a textual representation that blends modeling in UML with programming language code. The approach, called umplification, produces a program with behavior identical to the original one, but written in Umple and enhanced with model-level abstractions. As the resulting program is Umple code, our approach eliminates the distinction between code and model. In this paper we discuss the principles of Umple, the umplification approach and a rule-driven tool called the Umplificator, which implements and validates the depicted approach.
17
Mark Hall, Eibe Frank, Geoffrey Holmes et al. · ACM SIGKDD Explorations Newsletter · 2009 · 17.8K citations
ATL: A model transformation tool
Frédéric Jouault, Freddy Allilaire, Jean Bézivín et al. · Science of Computer Programming · 2008 · 967 citations
Engineering, Computer Science, Model-based Systems Engineering +10
The TXL source transformation language
James R. Cordy · Science of Computer Programming · 2006 · 358 citations
A metric for software readability
Raymond P.L. Buse, Westley Weimer · 2008 · 175 citations
Computing, Computer Science, Natural Language Processing +14