IEEE TSE Paper Accepted

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.”TSE 2015

“Architekturen 2014” at ABB Ladenburg

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.

Architekturen 2013

Scalability of Time-Series Databases on Amazon Web Services

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.”
Cloud Scalability

Measuring Architecture Sustainability

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.”

Towards Software Performance Engineering for Multicore and Manycore Systems

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 speci cally for multicore and manycore systems, which will have a profound impact on software engineering practices.”

Research Directions for Multicore Software Performance Engineering

Towards the Automation Cloud: Architectural Challenges

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.”

ABB’s history of MDE research

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 2012ICPE 2013)
  • model-based design space exploration for distributed systems (ICPE, 2012)

Current research in this area concerns for example architecture decision modeling (collaboration project with University of Groningen) or using IEC 61499 for modeling control logic.

 

Research on Cloud Computing and Big Data for Industrial Automation

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, SCADAvantagecan 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!
Cloud&Big Data for Industrial Automation.

Slides from ICPE 2013

Here are the slides from my recent talk at ICPE 2013 in Prague on “Rapid Performance Modeling by transforming Use Case Maps to Palladio Component Models”. Please also see the full paper PDF. Photos from the conference are now online. Many thanks to Chris Vogel for his work on this tool!