Software Helping Software

By Matthew Dublin

Researchers at the Karlsruhe Institute of Technology have developed a way to cut down on the trial-and-error process of developing scientific software.

Developers at KIT are now using the PALLADIO simulation software to analyze their code and discover problems early on, instead of wasting time, money, and energy testing flawed code on a local cluster or in the cloud.

Named after the Renaissance era architect Andrea Palladio, the PALLADIO simulation software analyzes software architecture to find non-functional properties such as performance, reliability, maintainability, and costs. This analysis also includes an evaluation of workflows in the components and subcomponents, scalability, use of resources, and distribution aspects of the software are disclosed and the complete layout of the software is checked before "building" is started.

"In the beginning was our observation that software developers apply a trial-and-error process. This is a rather inefficient method to produce error-free software," says Ralf Reussner, chair of Software Design and Quality at the Karlsruhe Institute of Technology (KIT), Germany. "If you want to build a bridge, you do not simply place a stone on top of a stone, let a truck drive across, and hope that the bridge will survive the load."

At the moment, Reussner and his collaborators are preparing PALLADIO for simulating the integration of existing software into the cloud.

PALLDIO is available through a tech-transfer effort that began in 2003 that began in 2003 as a research project of the University of Oldenburg and nowadays is a tool-supported software architecture simulation approach which has been successfully applied in industry scenarios and science. It is actively developed by Karlsruhe Institute of Technology (KIT), FZI Research Center for Information Technology, and University of Paderborn.