IFML-Based Graphical User Interfaces Generated From BPMN up to PSM Level

IFML-Based Graphical User Interfaces Generated From BPMN up to PSM Level

DOI: 10.4018/979-8-3693-0497-6.ch012
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

The model-driven architecture (MDA) approach revolves around the development of multiple models, including the computation independent model (CIM), the platform independent model (PIM), and the platform specific model (PSM). Web applications have gained popularity for their capabilities. To address the need for robust user interfaces independent of technical details, the interaction flow modeling language (IFML) was introduced. This study focuses on model transformations within MDA, specifically from CIM to PSM via PIM. Metamodels for BPMN and IFML were created using Eclipse, and shift rules were applied with ATL. Webratio, an IFML implementation tool, was used to generate GUIs. A case study on after-sales service with CRUD features demonstrated the practical application of MDA. This research enhances understanding of MDA in web application development, enabling developers to create user-friendly interfaces. It serves as a valuable resource for software engineering professionals, providing insights into MDA's practical implementation and impact on web application development.
Chapter Preview
Top

Introduction

The core principle of MDA methodology as defined in the glossary (Table 1) is the use of models at various stages of application development. MDA streamlines the development of requirements at the CIM level (Table 1), the design and analysis at the PIM level (Table 1), and facilitates code generation at the PSM level (Table 1). MDA aims to create technology-independent models that enable the automatic generation of application code, thus significantly boosting productivity (OMG-MDA, 2014).

The rise of model-driven architecture proves its value in software engineering by improving application quality and reducing development time (Brambilla et al., 2014). A relatively new web engineering technology called IFML has emerged as a recommended approach for developing web and mobile applications by Brambilla and Fraternali (2014). IFML, OMG standard, simplifies graphical user interface descriptions across different platforms such as desktop computers, laptops, mobile phones, and tablets. Various environments have been proposed for developing IFML models and generating code, such as the Webratio tool (Acerbis et al., 2014) (Table 1). The latter is a model-driven project with code generators that enable the creation of applications from IFML models.

In this chapter, we delve into the intricate process of automatic graphical user interface generation within MDA. Our principal objective is to explore how model transformations (Table 1) can seamlessly translate designs from the PIM level to the PSM level, using the Webratio tool as our primary technology stack. We shall employ the Interaction Flow Modeling Language (IFML) to elucidate how user-friendly interfaces can be architected and implemented effectively. The chapter is structured to first introduce these key terminologies and concepts, setting the stage for a deeper discussion on the nuances of model shifts across different MDA levels—namely, from the CIM to the PIM and eventually to the PSM.

This chapter's primary contribution is a methodical approach for automatically generating graphical user interfaces (GUIs) from PIM to PSM, which streamlines the software development process, minimizes manual coding errors, and boosts productivity. This chapter provides an in-depth analysis of model transformations within Model-Driven Architecture, from the CIM level to the PSM level, elucidating the transformation hierarchy for enhanced software development processes. This work is aimed at practitioners seeking to automate GUI creation, providing insight into the mechanics of model transformations within MDA, with practical examples using the Webratio tool to demonstrate these concepts in action.

We begin by creating BPMN and IFML (table 1) metamodels in the Eclipse environment. An example is developed using the BPMN notation (OMG-BPMN, 2011). Transformation rules in the ATL language (Table 1) (Sajji et al., 2022) are applied to get the IFML model in .xmi format (OMG-XML, 2015) at the PIM level within the Eclipse environment. Lastly, we generate the user interfaces in the Webratio tool. The principal target of this work lies in the utilization of two standards, BPMN and IFML, along with a robust business solution Webratio. This enables us to highlight all steps of the model transformation strategy.

Key Terms in this Chapter

PIM (Platform Independent Model): It's a representation of a software or business system that isn't tied to any particular technological platform for its implementation.

MDA (Model Driven Architecture): A methodological approach to software design, offering guidelines for organizing specifications that are articulated in the form of models.

Model Transformations: Model transformation provides an automated method to generate platform-specific models from platform-independent ones. The primary objective of leveraging model transformation is to enhance efficiency and minimize errors by automating the creation and alteration of models whenever feasible.

WebRatio: It's a low-code application development platform designed for crafting web, and mobile applications 7 times quicker than conventional coding methods.

BPMN (Business Process Model and Notation): Is a visual depiction used to define business processes within a business process model.

IFML (Interaction Flow Modeling Language): IFML is a recognized modeling language within software engineering. It offers a collection of graphical notations for visually representing user interactions and the front-end dynamics of software applications.

PSM (Platform Specific Model): It's a representation of a software or business system that is tailored to a particular technological platform.

ATL (Atlas Transformation Language): It offers methods to generate target models from a collection of source models.

CIM (Computation Independent Model): It's a model identified within the Model-Driven Architecture, serving as a cornerstone model. It encapsulates system and software insights from a business-oriented viewpoint.

Complete Chapter List

Search this Book:
Reset