Software development begins with the requirements. Misunderstandings with customers in this early phase of development result in wasted development time. This work investigates the possibility of using executable UI mockups in the initial phases of functional requirements elicitation during the development of business applications. Although there has been a lot of research in the field in recent years, we find that there is still a need to improve model-driven tool design in order to enable customer participation from the initial phases of requirement specifications based on working prototypes. These prototypes can directly be reused in the rest of the development process. To meet the goal, we have been developing an open-source solution called Kroki that enables rapid collaborative development. We conducted a series of 10 joint user sessions with domain experts from different domains and backgrounds, resulting in the prototype specifications ranging from 7 to 20 screen mockups accompanied with domain models, developed in two-hour time frames. In this paper, we present our tool design that contributes to rapid joint development, and the results from the user sessions.
The paper presents application of Kroki tool to creation of executable specification of CERIF standard. Kroki (fr. croquis sketch) is an open-source tool that is being developed in order to foster development agility and better communication among team members with different specialties. It can be used for creating of specification of data-driven applications using two different notations (UML based and mockup based) and for generating application over the specification. This paper presents usage of Kroki tool for visualization and further development of CERIF data model, as well as using of Kroki for generating a prototype of CRIS system over CERIF data model. CERIF 1.5 specification was taken from euroCRIS web site and entered into Kroki tool. More than 280 CERIF classes are divided into 31 packages, in order to make CERIF model easier to read and comprehend. Thanks to its mockup and lightweight UML editor, Kroki enables each user, with or without background in information technologies, to understand and change CERIF specification.
12 July 2016 in Information Systems and e-Business Management
Model-driven development (MDD) significantly improves web development by generating source code from models at higher abstraction levels, which enhances productivity and enables shorter, less expensive development cycles. However, not all aspects of a web application can be captured in a model, necessitating manual changes to the generated code. To prevent the loss of manual changes due to subsequent code generation, various strategies are recommended in the literature: keeping handwritten and generated code in separate files, utilizing protected regions, or employing a version control system (VCS) to merge handwritten and generated code. Unfortunately, these approaches can introduce complexity into web application architecture and impose an additional burden on developers. This paper presents SeamlessMDD, our novel open-source framework for seamless integration that allows us to maintain handwritten and generated code intertwined without the need to adjust the web application architecture or established workflows. The framework provides the following features: (1) incremental and iterative transformations derived from model versions comparison ensuring that only code for affected model elements is generated or modified; (2) integration of generated and handwritten code using API-based code generators (ABG) that operate on the syntax trees of target programming languages; (3) case-specific support for change propagation and conflict resolution, as opposed to VCS-based systems that operate on a single line. The proposed features were tested in practice within a complex industrial MDD tool.