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.”
Despite significant scientific research, systematic performance engineering techniques are still hardly used in industry, as many practitioners rely on ad-hoc performance firefighting. While there have been several industrial case studies on performance modeling in the last few years, more experience is needed to better understand the constraints in practice and to optimize existing tool-chains. I gave a talk summarizing six years of performance modeling at the Decartes/Kieker/Palladio Performance Symposium 2014 in Stuttgart. In three projects, different approaches to performance modeling were taken, and experiences on the capabilities and limitations of existing tools were gathered.
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.”
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.”
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.”