2017Dennis Priefer, Peter Kneisel, Daniel Strüber
Iterative Model-Driven Development of Software Extensions for Web Content Management Systems
In European Conference on Modelling Foundations and Applications (ECMFA). 2017, accepted.
Dynamic web applications powered by Web Content Management Systems (WCMSs) such as Joomla, WordPress, or Drupal dominate today’s web. A main advantage of WCMSs is their functional extensibility by standardized WCMS extensions. However, the development and evolution of these extensions are challenging tasks. Due to dependencies to the core platform and other WCMS extensions, the code structure of an extension includes a large defect potential. Mistakes usually lead to website crashes and are hard to find, especially for inexperienced developers. In this work, we define a model-driven development (MDD) process and apply it during the development of software extensions for the WCMS Joomla. To address two separate scenarios, involving the development of independent and dependent WCMS extensions, we use an MDD infrastructure, comprising a domain-specific language, a code editor, and reverse engineering facilities. In addition, we provide evidence indicating that our model-driven approach is useful to generate extensions with consistent interdependencies, demonstrating that the main issues of extension development in the WCMS domain can be addressed using a model-driven approach. By applying the MDD infrastructure on actual projects, we additionally present the lessons learned.
Augmentation of existing Extensions using a Low-Code Platform
Presentation at the international Joomla! Conference J and Beyond, Kraków, Poland.
The creation of new Joomla extensions can be a time-consuming process for extension developers. This includes both scenarios, the development of new independent extensions (e.g. components) as well as new dependant extensions using existing ones (e.g modules). In our presentation, We will illustrate a model-driven process for both development scenarios using a low-code platform named JooMDD. JooMDD can be used within common IDEs and as platform-independent web application. The latter will be demonstrated within the talk, by means of the development scenario of augmenting an existing component by a new module.
2016Dennis Priefer, Peter Kneisel, Gabriele Taentzer
A Model-Driven Process to Migrate Web Content Management System Extensions
In Web Engineering - Volume 9671 of the series Lecture Notes in Computer Science, pages 603-606. Springer International Publishing Switzerland, 2016. Poster at the 16th International Conference on Web Engineering, Lugano, Switzerland.
Developing and maintaining software extensions for Web Content Management Systems (WCMSs) like Joomla, WordPress, or Drupal can be a difficult and time consuming process. This poster presents a model-driven process which addresses typical challenges during the migration of software extensions for WCMSs. We introduce JooMDD as a prototypical environment for the development and maintenance of Joomla extensions. JooMDD consists of a domain-specific modelling language for WCMS extensions, a reverse engineering tool to create models based on existing WCMS extensions, and a code generator for software extensions, which can be used to enrich Joomla-based applications. The use of JooMDD within our research demonstrates the application of a model-driven migration process for WCMS extensions.
JooMDD - Joomla Extension Creation for Everybody
Presentation at the Joomla!Dagen Nederlande, Zeist, Netherlands. Presentation Description
It is no secret, that the creation and maintenance of Joomla extensions can be a time-consuming process, especially for developers with less knowledge of the platform itself. In my presentation, I will talk about an environment which allows developers to create Joomla extensions on a higher abstraction level. The environment can be used within PHPStorm, IntelliJ, and Eclipse. This in turn allows the integration into the usual development process of the most developers. Through the use of JooMDD, Joomla extension developers can achieve both, saving of time during development and increasing the quality of their extensions. In this context we created a modelling language and a code generator for Joomla extensions. The presentation will consist of an explanation of the approach, including advantages and possibilities for Joomla developers, as well as a live demo of the current state of the existing tools within the PHPStorm IDE.
Planung an der Technischen Hochschule Mittelhessen.
"Untis" Salzburg Seminar, Salzburg, Österreich, invited presentation (in german)
Ressource planning in a distributed, complex, dynamic, sometimes even chaotic system - such as an university - is an challenging task. This task is mainly about structuring and integrating and deals with various technical systems. This presentation provides an overview over the systems and processes to deal with ressource planning and shows the concrete challenges. It additionally shows the process and infrastructure, that has been developped and the requirement on planning systems to deal with these tasks in future.
It provides a good motivation for the modelling and software engineering activities in our working group.
Dennis Priefer, Peter Kneisel, Gabriele Taentzer
JooMDD: A Model-Driven Development Environment for Web Content Management System Extensions
In Proceedings of the 38th ACM/IEEE International Conference on Software Engineering, Austin, TX, USA, pages 633-636. ACM, New York, 2016
Developing software extensions for Web Content Management Systems (WCMSs) like Joomla, WordPress, or Drupal can be a difficult and time consuming process. In this demo we present JooMDD, an environment for model-driven development of software extensions for the WCMS Joomla. JooMDD allows the rapid development of standardised software extensions requiring reduced technological knowledge of Joomla. This implies that even inexperienced developers are able to create their own functional WCMS extensions. This demonstrates that a model-driven approach is suitable for the domain of WCMSs. A supporting video illustrating the main features and a demonstration of JooMDD can be found at: https://youtu. be/Uy_WBIjPldI.
JooMDD - Model-driven Development Environment for Joomla Extensions
Presentation at the international Joomla! Conference J and Beyond, Prague, Czech Republic. Video: https://youtu.be/J-Qukj6Kyg8
The creation and maintenance of Joomla extensions can be a time-consuming process, which is often done by fluctuating developer teams. In my presentation, I will talk about a plug-in infrastructure for the Eclipse IDE, which allows developers to create Joomla extensions on an higher abstraction level. Through the use of this infrastructure, Joomla developers can achieve both, saving of time during development and increasing the quality of their extensions. In this context we created a modelling language and a code generator for Joomla extensions. Due to the fact that our infrastructure is a part of an IDE, Joomla developers can easily integrate it into their common development process. The presentation will consist of an explanation of the approach, including advantages and possibilities for Joomla developers, as well as a live demo of the current state of the existing tools.
Model-Driven Development of Content Management Systems based on Joomla
In Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering, Vasteras, Sweden, pages 911-914. ACM, New York, 2014.
Today’s web consists of dynamic web sites with a wide range of functionality, whereby most of the sites are based on Content Management Systems (CMS). CMSs became a de facto standard as basic frameworks for web applications, because they provide lots of existing features and a high usability. Even though typical CMSs come along with lots of core functions, the most of them are extensible through different extension types. Through these extensions CMS-based applications become fully adequate web applications. One of the most popular CMSs is Joomla, which is extensible through external functionality. During the development and maintenance of both external functionality and concrete Joomla-based sites, some obstacles occur. One of the most substantial obstacle occurs when a new version of the core CMS platform is released. A further migration process is always an extremely time-consuming process. Through the use of model-driven development (MDD) a lot of the invested development and maintenance effort can be reduced, especially when new platform versions appear frequently. This paper proposes an MDD approach to the Joomla CMS, and contains several use cases for both forward engineering and reverse engineering of Joomla extensions and Joomla-based web sites with concrete data which shall be used for a faster and simpler migration process.