Evaluating Performance of Software Architecture Models with the Palladio Component Model

Author(s):  
Heiko Koziolek ◽  
Steffen Becker ◽  
Ralf Reussner ◽  
Jens Happe

Techniques from model-driven software development are useful to analyse the performance of a software architecture during early development stages. Design models of software models can be transformed into analytical or simulation models, which enable analyzing the response times, throughput, and resource utilization of a system before starting the implementation. This chapter provides an overview of the Palladio Component Model (PCM), a special modeling language targeted at model-driven performance predictions. The PCM is accompanied by several model transformations, which derive stochastic process algebra, queuing network models, or Java source code from a software design model. Software architects can use the results of the analytical models to evaluate the feasibility of performance requirements, identify performance bottlenecks, and support architectural design decisions quantitatively. The chapter provides a case study with a component-based software architecture to illustrate the performance prediction process.

2009 ◽  
pp. 1111-1134
Author(s):  
Heiko Koziolek ◽  
Steffen Becker ◽  
Ralf Reussner ◽  
Jens Happe

Techniques from model-driven software development are useful to analyse the performance of a software architecture during early development stages. Design models of software models can be transformed into analytical or simulation models, which enable analyzing the response times, throughput, and resource utilization of a system before starting the implementation. This chapter provides an overview of the Palladio Component Model (PCM), a special modeling language targeted at model-driven performance predictions. The PCM is accompanied by several model transformations, which derive stochastic process algebra, queuing network models, or Java source code from a software design model. Software architects can use the results of the analytical models to evaluate the feasibility of performance requirements, identify performance bottlenecks, and support architectural design decisions quantitatively. The chapter provides a case study with a component-based software architecture to illustrate the performance prediction process.


Author(s):  
László Gönczy ◽  
Dániel Varró

As the use of SOA became a mainstream in enterprise application development, there is a growing need for designing non-functional aspects of service integration at the architectural level, instead of creating only technology specific assets (configuration descriptors). This architectural design supports flexibility and early validation of requirements. This chapter presents a model-driven method supporting the automated deployment of service configurations. This deployment technique is supported by an extensible tool chain where (i) service models are captured by a service-oriented extension of UML enabling to capture non-functional requirements, and (ii) configuration descriptors for the target deployment platform are derived by automated model transformations within the VIATRA2 framework.


Author(s):  
Sandra Greiner ◽  
Thomas Buchmann

Model transformations constitute the key technology for model-driven software development, a software engineering discipline which became more and more important during the last decade. While tool support for unidirectional batch transformations is rather mature, bidirectional and incremental transformations are only weakly investigated. Nevertheless, several usage scenarios demand for incremental and bidirectional transformations, like round-trip engineering between UML class models and Java source code. This paper presents a bidirectional transformation between UML class models and a Java model which is obtained from Java source code. The transformation is written in QVT Relations, a declarative model transformation language provided by the OMG. While the case study demonstrates that it is possible to specify bidirectional transformations between heterogeneous metamodels in a single relational specification, it also reveals some inherent limitations of the language and the corresponding tool support.


2021 ◽  
Vol 13 (4) ◽  
pp. 87
Author(s):  
Georgios Bouloukakis ◽  
Ioannis Moscholios ◽  
Nikolaos Georgantas ◽  
Valérie Issarny

Numerous middleware application programming interfaces (APIs) and protocols were introduced in the literature in order to facilitate the application development of the Internet of Things (IoT). Such applications are built on reliable or even unreliable protocols that may implement different quality-of-service (QoS) delivery modes. The exploitation of these protocols, APIs and QoS modes, can satisfy QoS requirements in critical IoT applications (e.g., emergency response operations). To study QoS in IoT applications, it is essential to leverage a performance analysis methodology. Queueing-network models offer a modeling and analysis framework that can be adopted for the IoT interactions of QoS representation through either analytical or simulation models. In this paper, various types of queueing models are presented that can be used for the representation of various QoS settings of IoT interactions. In particular, we propose queueing models to represent message-drop probabilities, intermittent mobile connectivity, message availability or validity, the prioritization of important information, and the processing or transmission of messages. Our simulation models demonstrate the significant effect on delivery success rates and response times when QoS settings are varied.


Author(s):  
Sattar J. Aboud

Simulation is employed widely to evaluate complicated systems involving telecommunication networks. This chapter reviews and evaluates different types of discrete event simulation models that are widely used for modeling network models in a practical time-frame. Different methods are presented, but special attention is given to systems that use spatial decomposition. This involves data that may have to be transmitted by mediator tiles to its purpose depending on the decomposition post. For congruent simulation the challenge is to decompose the tool in order to make effective use of the original processor design. This chapter reviews a number of methodologies and architectural design that have been developed for efficient simulation model decomposition.


Author(s):  
Wilman Vega ◽  
Henry Umaña

Resumen Los Servicios Web Semánticos ofrecen beneficios, que coadyuvan a la evolución de la Web, como el descubrimiento, invocación y composición dinámica y automática de recursos, habilitan efectivamente la interoperabilidad entre sistemas, permitiendo una amplia gama de nuevos servicios y oportunidades de negocios en la Internet. La estructura necesaria para proveer estos beneficios, hace que su desarrollo sea un proceso complejo, requiriendo establecer formas más fáciles y dinámicas que garanticen reutilización, calidad y rapidez. El desarrollo dirigido por modelos realiza una contribución eficiente en estos aspectos, dado que trabaja de manera intrínseca conceptos como separación de conceptos, reusabilidad e interoperabilidad entre componentes. En este artículo se presenta un enfoque para desarrollo de software dirigido por modelos, orientado al desarrollo de los servicios web semánticos, donde inicialmente se plantean las fases correspondientes al análisis, diseño y desarrollo dentro de la metodología propuesta, aplicando la metodología sobre un pequeño caso de estudio y obtener como resultado la estructura de un Servicio web semántico. Palabras Clave: Servicios web semánticos, Desarrollo dirigido por modelos, ontologías web.   Abstract Semantic Web Services offers benefits that contribute to Web evolution. Benefits such as automatic discovery and invocation, and dynamic composition, effectively enables systems interoperability, allowing a wide range of services and Internet businesses. The necessary structure to provide those benefits by Semantic Web Services makes its development a complex process. It necessary to establish more easy and dynamic ways to develop this kind of software, in order to assure reuse, quality and speediness in the development process. The model-driven software development makes an efficient contribution in those aspect, because it works intrinsically concepts related such separation of concerns, reusability and components interoperability. In this paper we present an approach to model-driven development software applied to Semantic Web Services. First, we establish the phases corresponding to the analysis, design and development in the proposal methodology, by applying it to a case of study we obtain the structure of a Semantic Web Services. Keywords: Semantic Web Services, Model-Driven Development, Web Ontologies.


Sign in / Sign up

Export Citation Format

Share Document