New survey accepted today at Elsevier JSS: Software development for the automation of industrial facilities (e.g., oil platforms, chemical plants, power plants, etc.) involves implementing control logic, often in IEC 61131-3 programming languages. Developing safe and efficient program code is expensive and today still requires substantial manual effort. Researchers have thus proposed numerous approaches for automatic control logic generation in the last two decades, but a systematic, in-depth analysis of their capabilities and assumptions is missing. This paper introduces a novel classification framework for control logic generation approaches, which is applied to analyze 13 different control logic generation approaches. Prominent findings include different categories of control logic generation approaches, the challenge of dealing with iterative engineering processes, and the need for more experimental validations in larger case studies. [Download preprint]
A new paper (download preprint) was accepted for the 42nd International Conference on Software Engineering (ICSE) – at the “Software Engineering in Practice” track (SEIP) to be held in May 2020 in Seoul, South Korea. Summary: “Software development for industrial automation applications is a growing market with high economic impact. Control engineers design and implement software for such systems using standardized programming languages (IEC 61131-3) and still require substantial manual work. We have executed four case studies on large industrial plants with thousands of sensors and actuators for a rule-based control logic generation approach called CAYENNE to determine its practicability. We found that we can generate more than 70 percent of the required interlocking control logic with code generation rules that are applicable across different plants.”
We published a new journal article in Wiley’s “Software Practice and Experience“. A preprint PDF is available. Here’s the summary: “The vision of plug-and-produce control systems has been pursued for more than 15 years, but existing approaches fell short regarding configuration tasks and vendor-neutrality. This paper introduces the standards-based IoT reference architecture “OpenPnP”, which allows largely automating the configuration and integration tasks of industrial commissioning processes. This paper demonstrates how OpenPnP can reduce configuration and integration efforts up to 90 percent in typical settings, while potentially scaling well up to tens of thousands of communicated signals.”
The Plattform Industrie 4.0 has released a new paper on a standards-based Plug&Produce approach for industrial devices, which was mostly written by me. The paper is a contribution to the current working groups on Industrie 4.0 and focuses on a specific application scenario, where devices connect to each other with limited human interaction. Its purpose is to point to existing standards and reveal standardization gaps. Although a good fundament of standards exists, there is still the need to create more semantically standardized information models to realized this application scenario in a vendor-neutral way.
After many years in the making, the Palladio book was finally published by MIT Press. I wrote two chapters in the book. The text details the key concepts of Palladio’s domain-specific modeling language for software architecture quality and presents the corresponding development stage. It describes how quality information can be used to calibrate architecture models from which detailed simulation models are automatically derived for quality predictions. It will also be an essential resource for software architects and software engineers and for practitioners who want to apply Palladio in industrial settings. You can also order from Amazon.
We got a paper accepted at the Springer Journal on Empirical Software Engineering: “Corporate organizations sometimes offer similar software products in certain domains due to former company mergers or due to the complexity of the organization. The functional overlap of such products is an opportunity for future systematic reuse to reduce software development and maintenance costs. We report on our experiences and lessons learned from conducting the domain analysis in four application cases with large-scale software products. We learned that the outcome of a domain analysis was often a smaller integration scenario instead of an SPL and that business case calculations were less relevant for the stakeholders and managers from the business units.”
Happy to report that our paper entitled “Customizing Domain Analysis for assessing the Reuse Potential of Industrial Software Systems” received the Best Paper Award of the Industry Track of SPLC 2014, the 18th International Software Product Line Conference in Florence, Italy. We have applied domain analysis on a number of device engineering tools and enterprise information systems from ABB and have reported several lessons learned.
We got a paper accepted at IEEE Transactions on Software Engineering: “During the last decade, researchers have proposed a number of model transformations enabling performance predictions. This paper provides an in-depth comparison and quantitative evaluation of representative model transformations to, e.g., Queueing Petri Nets and Layered Queueing Networks. The semantic gaps between typical source model abstractions and the different analysis techniques are revealed. The accuracy and efficiency of each transformation are evaluated by considering four case studies representing systems of different size and complexity. The presented results and insights gained from the evaluation help software architects and performance engineers to select the appropriate transformation for a given context.”
A paper on our documentation framework for architecture decisions has been recognized as one of WICSA 2014‘s best papers in Sydney. The implementation of the framework as an add-in to Sparx Systems Enterprise Architect was done in a collaboration of the University of Groningen and ABB.
We got a paper accepted at IEEE CLOUD 2014: “We benchmarked three open source timeseries databases (OpenTSDB, KairosDB and Databus) on cloud infrastructures with up to 36 nodes with workloads from realistic industrial applications. We found that at least KairosDB fulfills our initial hypotheses concerning scalability and reliability.”