A DSL for modeling application-specific functionalities of business applications. (October 2015) - Popovic, Aleksandar; Lukovic, Ivan; Dimitrieski, Vladimir; Djukic, Verislav
Abstract: Models have been widely used in the information system development process. Models are not just means for system analysis and documentation. They may be also transformed into system implementation, primarily program code. Generated program code of screen forms and transaction programs mainly implements generic functionalities that can be expressed by simple retrieval, insertion, update, or deletion operations over database records. Besides the program code of generic functionalities, each application usually includes program code for specific business logic that represents application-specific functionalities, which may include complex calculations, as well as a series of database operations. There is a lack of domain-specific and tool-supported techniques for specification of such application-specific functionalities at the level of platform-independent models (PIMs). In this paper, we propose an approach and a domain-specific language (DSL), named IIS ⁎ CFuncLang, aimed at enabling a complete specification of application-specific functionalities at the PIM level. We have developed algorithms for transformation of IIS ⁎ CFuncLang specifications into executable program code, such as PL/SQL program code. In order to support specification of application-specific functionalities using IIS ⁎ CFuncLang, we have also developed appropriate tree-based and textual editors. The language, editors, and the transformations are embedded into a Model-Driven Software Development tool, named Integrated Information Systems CASE (IIS ⁎ Case). IIS ⁎ Case supports platform-independent design and automated prototyping of information systems, which allows us to verify and test our approach in practice. Abstract : Highlights: A DSL for specifying application-specific functionalities of business applications. Application-specific functionalities are specified at the PIM level. Complete program code is generated. We present the language editor.