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.”
The annual meeting of the special interest group on “software architecture” of the German Computer Science Society called “Architekturen 2014” was held at ABB Ladenburg. The meeting’s main theme was “Architectures for Industry 4.0“. The fourth industrial revolution is expected from a reorganization of industrial production processes to exploit the capabilities of cyber-physical systems. A dozen of invited talks from researchers and practitioners gave various perspectives on the topic and how it will affect software architectures.
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.”
The latest issue of the magazine “IEEE Software” features our article on architecture sustainability: “At ABB, we’re measuring and tracking the architecture sustainability of a large-scale, distributed industrial control system currently under development that’s based on Microsoft technologies and includes a layered architecture. A former version of the system grew to several million LOC and suffered from architecture erosion and high maintenance costs. We adopted a multiperspective approach called Morphosis to avoid such a situation from occurring again. Morphosis focuses on requirements, architecture design, and source code. It includes evolution scenario analysis, scoring of technology choices, architecture compliance checks, and tracking of architecture-level code metrics. This article reports our experiences with tracking selected sustainability measurements over the course of two years.”
Our summary report from the 2012 GI-Dagstuhl Seminar “Multicore SW Performance Engineering” has appeared in ACM SIGMETRICS Performance Evaluation Review: “In the era of multicore and manycore processors, a systematic more and more crucial to the success of modern software systems. This article argues for more software performance engineering research specically for multicore and manycore systems, which will have a profound impact on software engineering practices.”
I gave this talk at the GI-Fachgruppentreffen Architekturen 2013 at Fraunhofer IESE, Kaiserslautern on Monday: “Future industrial automation systems will execute a number of control and monitoring functions in central data centers. The cloud computing paradigm will reduce IT costs and enable small companies to flexibly automate production processes. Centralized control and monitoring across companies and domains will facilitate a novel smart ecosystem for industrial automation connecting both embedded devices and information systems. To realize this vision, a number of technical, economical, and social challenges need to be solved. This talk focuses on software architecture challenges for cloud-connected automation systems. It points out the architectural impact of critical non-functional properties, such as latency, security, and multi-tenancy.”
A couple of recent studies assessed the state of model-driven engineering (MDE) and the UML in practice. Hutchinson et al. (ICSE2011) noticed for example that a lot of MDE success is actually hidden and that MDE adoption is often rather driven by evangelists than hard business considerations. Petre (ICSE2013) focused on the UML and found for 50 software professionals that 70 percent do not use the UML. Unfortunately, most of the studies known to me have some methodical flaws, such as improper selection of the sample population. Maybe it is time for a systematic review and comparison of all the available empirical studies and approaches in industry?
ABB uses model-driven approaches in various areas, e.g., architecture documentation, code generation for PLC software, simulation, and even testing. Also, ABB Corporate Research has quite some history of experimenting with model-driven techniques:
- platform-independent model and code generation with ArcStyler, based on the MDA initiative (Interactive Objects success story, 2002)
- UML models to describe higher-level design for safety critical embedded systems (Empirical Software Engineering Journal, 2006)
- work on the OPC UA information model (Springer Book, 2009)
- model-based testing of embedded systems (EU-Project D-MINT, 2010)
- program transformation with srcML (ICSM, 2011)
- reliability prediction based on Markov Models (ISSRE, 2010)
- performance prediction for an industrial control system, based on the Eclipse modeling framework (ICSE, EU-Project Q-ImPrESS, 2011)
- DSL for constructing OPC UA Queries and Event Filters (ECMFA, 2012)
- model transformations for analytical purposes (MASCOTS 2012, ICPE 2013)
- model-based design space exploration for distributed systems (ICPE, 2012)
ABB is currently investigating cloud computing and big data technologies in the context of power and automation. Cloud computing is already common for customer relationship management systems or human resource management systems, but industrial automation is still in the process of moving to the cloud. As an early example, ABB’s SCADA system for oil&gas applications, SCADAvantage, can now be purchased as hosted version in a GlobaLogix data center.
Big data processing amongst other things involves crossing structured and unstructured data to create new insights for customers. Unstructured data can for example be video streams or social media output. ABB’s Asset Health Center is one of the first solutions for processing big data for smart grids. ABB is executing several research projects on cloud computing and big data, providing great opportunities for scientific and industrial research beyond the buzzwords. We are hiring PhD-level professionals!