Advanced reverse engineering tools are required to cope with the complexity of software systems and the specific requirements of numerous different tasks (re-architecturing, migration, evolution). Consequently, reverse engineering tools should adapt to a wide range of situations. Yet, because they require a large infrastructure investment, being able to reuse these tools is key. Moose is a reverse engineering environment answering these requirements. While Moose started as a research project 20 years ago, it is also used in industrial projects, exposing itself to all these difficulties. In this paper we present ModMoose, the new version of Moose. ModMoose revolves around a new meta-model, modular and extensible; a new toolset of generic tools (query module, visualization engine, ...); and an open architecture supporting the synchronization and interaction of tools per task. With ModMoose, tool developers can develop specific meta-models by reusing existing elementary concepts, and dedicated reverse engineering tools that can interact with the existing ones.
翻译:需要先进的反向工程工具来应对软件系统的复杂性和众多不同任务(重组、迁移、进化)的具体要求。因此,反向工程工具应该适应各种情况。然而,由于它们需要大量的基础设施投资,能够再利用这些工具是关键。穆斯是一个能满足这些要求的反向工程环境。穆斯是20年前作为一个研究项目启动的反向工程环境,但也用于工业项目,暴露了所有这些困难。在本论文中,我们介绍了ModMoose的新版本Moose。ModMoose围绕一个新的元模型、模块和可扩展工具;新的通用工具工具(query模块、可视化引擎......);以及支持工具同步和相互作用的开放架构。有了ModMoose,工具开发者可以通过重新使用现有的基本概念开发具体的元模型,以及能够与现有工具互动的专用反向工程工具。