Palladio

Palladio is a software architecture simulation approach which analyses software at the model level for performance bottlenecks, scalability issues, reliability threats, and allows for subsequent optimisation.

What Palladio can do for you

Palladio - Modeling and Simulating Software Architectures

Palladio is a software architecture simulation approach which analyses your software at the model level for performance bottlenecks, scalability issues, reliability threats, and allows for a subsequent optimisation. Palladio requires neither buying expensive executions environments nor fully implementing a software product.

Palladio comprises:

  • The Palladio Component Model (PCM), a detailed meta-model of component-based software architectures.
  • A component-based software development process. Palladio is aligned with this process and enables distributed modeling for component-based software development scenarios.
  • A software architecture simulator: Multiple performance, reliability, maintainability, and cost prediction approaches are combined. The approaches, by means of analysis or simulation, calculate metrics (e.g. response time) from Palladio models (instance of the PCM).
  • Tool support, the Palladio-Bench implements all aspects of Palladio. The Palladio-Bench is extendable such that it can serve as implementation base for new scientific directions.

Palladio-Bench OverviewPalladio-Bench Overview (system view, behaviour view, simulation run, performance results).

Analysis

Palladio supports a broad range of analysis scenarios. Each scenario can be analysed with respect to performance, reliability, maintainability, and costs. Palladio reduces the risks and implied costs of picking the wrong design decisions by a model-based engineering approach.

Typical software architecture analysis scenarios are:

  • Sizing
  • Scalability
  • Load Balancing
  • Configuration Optimization
  • Design Alternatives
  • Extension of Legacy Software

Tools

We have implemented an integrated modelling environment (called Palladio-Bench) based on the Eclipse IDE. It enables developers to create Palladio Component Model (PCM) instances with graphical editors and derive performance, reliability, maintainabilty, and cost metrics from the models using analytical techniques and simulation. The Palladio Component Model (PCM) is implemented using the Eclipse Modeling Framework (EMF). Using the Palladio-Bench, you model PCM instances, simulate models, view simulation results, and derive software design optimisations.

The best way for getting started with the Palladio-Bench is looking through the screencasts and tutorials provided on our official website.

Research

Palladio is a well-validated approach for the prediction of Quality of Service (QoS) properties of component-based software architectures. It enables the creation of high quality software architectures with dependable quality properties.

Numerous publications demonstrate the applicability of Palladio for scientific and real-world industrial scenarios of different domains. The book "Modeling and Simulating Software Architectures -- The Palladio Approach" presents the underlying methodology and background. Ongoing development effort and the continuous integration of latest scientific trends provides cutting-edge features to researchers and practictioners. More information on the scientific background of Palladio and developer information can be found in the Palladio Developer Wiki.

Participating organisations

Karlsruhe Institute of Technology (KIT)