This paper presents Genesys, a framework for the high-level construction of property conform code generators. Genesys is an integral part of jABC, a flexible framework designed to enable a systematic model-driven development of systems and applications on the basis of an (extensible) library of well-defined, reusable building blocks. Within jABC, Genesys manages the construction of code generators for jABC's models. So far, Genesys has been used to develop code generators for a variety of different target platforms, like a number of Java-based platforms, mobile devices, BPEL engines, etc. Since the code generators are themselves built within the jABC in a model-driven way, concepts like bootstrapping and reuse of existing components enable a fast evolution of Genesys' code generation library, and a high degree of self-application. Due to its increasing complexity and its high degree of reuse, Genesys profits from model checking-based verification. This way, jABC's models of code generators can be automatically checked wrt. wellformedness properties, to ensure that the models do indeed only consist of building blocks which are suitable for the considered target platforms, and whose versions are mutually compatible. It can be also be verified that the code generation process only starts after a successful initialization phase, and that the generated code is always packaged with all the required libraries. We will illustrate the ease of extension and flexibility of the Genesys framework by describing the
Developing robot control applications is a software engineering domain that still relies on low-level development tools with limited testing capabilities. The Java Application Building Center (jABC), a framework for model-based application development that supports the modelling process of service-oriented software applications, on the contrary offers a number of early error detection mechanisms like animation, analysis, simulation, and formal verification. We investigate the adequacy of jABC to model, verify and implement robot control applications in a model driven paradigm, and aim at addressing the design of software for autonomous robots for space missions later on. Being able to model and verify their reconfiguration behaviour before launching them is of central importance there. We developed a proof-of-concept application that controls a Lego® Mindstorms™ robot which finds its way through a maze. As this maze may change dynamically, the robot must be capable of reacting and adjusting its behaviour. This application was completely modelled, verified, and generated with the jABC.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.