Home | Sitemap | Index | Contact | Legals | KIT

Publications of Viktoria Firus

Books/Book Chapters and edited Proceedings

[1] Ralf Reussner and Viktoria Firus. Dependability Metrics, volume 4909 of Lecture Notes in Computer Science, chapter Basic and Dependent Metrics, pages 37-38. Springer-Verlag Berlin Heidelberg, 2008. [ bib | .pdf ]
[2] Ralf Reussner and Viktoria Firus. Dependability Metrics, volume 4909 of Lecture Notes in Computer Science, chapter Introduction to Overlapping Attributes, pages 243-244. Springer-Verlag Berlin Heidelberg, 2008. [ bib | .pdf ]
[3] Heiko Koziolek, Viktoria Firus, Steffen Becker, and Ralf H. Reussner. Handbuch der Software-Architektur, chapter Bewertungstechniken für die Performanz, pages 311-326. dPunkt.verlag Heidelberg, 2006. [ bib ]

Refereed journal articles

Refereed conference/Workshop papers

[1] Heiko Koziolek and Viktoria Firus. Parametric Performance Contracts: Non-Markovian Loop Modelling and an Experimental Evaluation. In Proc. of the 5th Int. Workshop on Formal Foundations of Embedded Software and Component-Based Software Architectures (FESCA'06), Juliana Kuester-Filipe, Iman H. Poernomo, and Ralf H. Reussner, editors, March 2006, volume 176(2) of ENTCS, pages 69-87. Elsevier Science Inc. March 2006. [ bib | .pdf | Abstract ]
Even with todays hardware improvements, performance problems are still common in many software systems. An approach to tackle this problem for component-based software architectures is to predict the performance during early development stages by combining performance specifications of prefabricated components. Many existing methods in the area of component-based performance prediction neglect several influence factors on the performance of a component. In this paper, we present a method to calculate the performance of component services while including influences of external services and different usages. We use stochatic regular expressions with non-Markovian loop iterations to model the abstract control flow of a software component and probability mass functions to specify the time consumption of internal and external services in a fine grain way. An experimental evaluation is reported comparing results of the approach with measurements on a component-based webserver. The evaluation yields that using measured data as inputs, our approach can predict the mean response time of a service with less than 2 percent deviation from measurements taken when executing the service in our scenarios.
[2] Viktoria Firus, Steffen Becker, and Jens Happe. Parametric Performance Contracts for QML-specified Software Components. In Formal Foundations of Embedded Software and Component-based Software Architectures (FESCA), 2005, volume 141 of Electronic Notes in Theoretical Computer Science, pages 73-90. [ bib | .pdf | Abstract ]
The performance of a software component heavily depends on the environment of the component. As a software component only justifies its investment when deployed in several environments, one can not specify the performance of a component as a constant (e.g., as a single value or distribution of values in its interface). Hence, classical component contracts allowing to state the component�s performance as a post-condition, if the environment realises a specific performance stated in the precondition, do not help. This fixed pair of preand postcondition do not model that a component can have very different performance figures depending on its context. Instead of that, parametric contracts are needed for specifying the environmental dependency of the component�s provided performance. In this paper we discuss the specification of dependencies of external calls for the performance metric response time. We present an approach using parametric contracts to compute the statistical distribution of response time as a discrete distribution in dependency of the distribution of response times of environmental services. We use the Quality of Service Modeling Language (QML) as a syntax for specifying distributions.
[3] Viktoria Firus, Heiko Koziolek, Steffen Becker, Ralf H. Reussner, and Wilhelm Hasselbring. Empirische Bewertung von Performanz-Vorhersageverfahren für Software-Architekturen. In Software Engineering 2005 Proceedings - Fachtagung des GI-Fachbereichs Softwaretechnik, Peter Liggesmeyer, Klaus Pohl, and Michael Goedicke, editors, 2005, volume 64 of GI-Edition Lecture Notes in Informatics, pages 55-66. [ bib | .pdf | Abstract ]
Die Architektur eines Software-Systems beeinflusst maßgeblich seine Qualit ätseigenschaften wie Performanz oder Zuverlässigkeit. Daher sind Architekturänderungen oft die einzige Möglichkeit, Mängel bei diesen Qualitätseigenschaften zu beheben. Je spa�ter diese A� nderungen an der Architektur wa�hrend des Software-Entwicklungsprozesses vorgenommen werden, desto teurer und riskanter sind sie. Aus diesem Grund ist eine frühzeitige Analyse verschiedener Architektur-Entwurfsalternativen bez üglich ihrer Auswirkungen auf Qualitätseigenschaften vorteilhaft. Dieser Artikel beschreibt die Evaluation dreier verschiedener Performanz-Vorhersageverfahren für Software-Architekturen hinsichtlich ihrer Eignung, korrekte Empfehlungen für frühzeitige Entwurfsentscheidungen zu geben. Zusätzlich sollen diese Vorhersageverfahren prüfen, ob extern vorgegebene Performanz-Anforderungen realisierbar sind. Die Performanz-Vorhersageverfahren � SPE�, � Capacity Planning� und � umlPSI� wurden empirisch durch 31 Teilnehmer untersucht, die eine Menge vorgegebener Alternativen beim Entwurf der Architektur eines Webservers zu bewerten hatten. Die Ergebnisse zeigen, dass Entwurfsalternativen mit allen Verfahren richtig bewertet wurden, sofern deutliche Auswirkungen auf die Performanz vorhanden waren. Ohne den Einsatz der Performanz-Vorhersageverfahren wurden häufiger weniger performante Entwurfsalternativen vorgeschlagen. Darüber hinaus konnte das Verfahren Capacity Planning die absoluten Werte bei den meisten Entwurfsalternativen relativ genau vorhersagen.
[4] Jens Happe and Viktoria Firus. Using Stochastic Petri Nets to Predict Quality of Service Attributes of Component-Based Software Architectures. In Proceedings of the Tenth Workshop on Component Oriented Programming (WCOP2005), 2005. [ bib | .pdf | Abstract ]
The Quality of Service attributes of a software component heavily depend on its environment. For example, if a component uses a highly unreliable service, its own reliability is likely to decrease as well. This relation can be described with parametric contracts, which model the dependence between provided and required services of a component. Until now, parametric contracts can only model single-threaded systems. We plan to extend parametric contracts with Stochastic Petri nets to model multi-threaded systems. This enables the detection of resource conflicts and the consideration of the influence of concurrency on Quality of Service attributes, like performance.
[5] Heiko Koziolek and Viktoria Firus. Empirical Evaluation of Model-based Performance Predictions Methods in Software Development. In Proceeding of the first International Conference on the Quality of Software Architectures (QoSA'05), Ralf H. Reussner, Johannes Mayer, Judith A. Stafford, Sven Overhage, Steffen Becker, and Patrick J. Schroeder, editors, 2005, volume 3712 of Lecture Notes in Computer Science, pages 188-202. Springer-Verlag Berlin Heidelberg. 2005. [ bib | .pdf | Abstract ]
Predicting the performance of software architectures during early design stages is an active field of research in software engineering. It is expected that accurate predictions minimize the risk of performance problems in software systems by a great extent. This would improve quality and save development time and costs of subsequent code fixings. Although a lot of different methods have been proposed, none of them have gained widespread application in practice. In this paper we describe the evaluation and comparison of three approaches for early performance predictions (Software Performance Engineering (SPE), Capacity Planning (CP) and umlPSI). We conducted an experiment with 31 computer science students. Our results show that SPE and CP are suited for supporting performance design decisions in our scenario. CP is also able to validate performance goals as stated in requirement documents under certain conditions. We found that SPE and CP are matured, yet lack the proper tool support that would ease their application in practice.
[6] Ralf H. Reussner, Steffen Becker, and Viktoria Firus. Component Composition with Parametric Contracts. In Tagungsband der Net.ObjectDays 2004, September 2004, pages 155-169. [ bib | .pdf | Abstract ]
We discuss compositionality in terms of (a) component interoperability and contractual use of components, (b) component adaptation and (c) prediction of properties of composite components. In particular, we present parametric component contracts as a framework treating the above mentioned facets of compositionality in a unified way. Parametric contracts compute component interfaces in dependency of context properties, such as available external services or the profile how the component will be used by its clients. Under well-specified conditions, parametric contracts yield interfaces offering interoperability to the component context (as they are component-specifically generated). Therefore, parametric contracts can be considered as adaptation mechanism, adapting a components provides- or requires-interface depending on connected components. If non-functional properties are specified in a component provides interface, parametric contracts compute these nonfunctional properties in dependency of the environment.
[7] Steffen Becker, Viktoria Firus, Simon Giesecke, Wilhelm Hasselbring, Sven Overhage, and Ralf H. Reussner. Towards a Generic Framework for Evaluating Component-Based Software Architectures. In Architekturen, Komponenten, Anwendungen - Proceedings zur 1. Verbundtagung Architekturen, Komponenten, Anwendungen (AKA 2004), Universität Augsburg, Klaus Turowski, editor, 2004, volume 57 of GI-Edition Lecture Notes in Informatics, pages 163-180. [ bib | .pdf | Abstract ]
Abstract: The evaluation of software architectures is crucial to ensure that the design of software systems meets the requirements. We present a generic methodical framework that enables the evaluation of component-based software architectures. It allows to determine system characteristics on the basis of the characteristics of its constituent components. Basic prerequisites are discussed and an overview of different architectural views is given, which can be utilised for the evaluation process. On this basis, we outline the general process of evaluating software architectures and provide a taxonomy of existing evaluation methods. To illustrate the evaluation of software architectures in practice, we present some of the methods in detail.
[8] Viktoria Firus and Steffen Becker. Towards Performance Evaluation of Component Based Software Architectures. In Proceedings of Formal Foundation of Embedded Software and Component-Based Software Architectures (FESCA), 2004, volume 108 of Electronic Notes in Theoretical Computer Science, pages 118-121. [ bib | .pdf ]
[9] Ralf H. Reussner, Viktoria Firus, and Steffen Becker. Parametric Performance Contracts for Software Components and their Compositionality. In Proceedings of the 9th International Workshop on Component-Oriented Programming (WCOP 04), Wolfgang Weck, Jan Bosch, and Clemens Szyperski, editors, 2004. [ bib | .pdf | Abstract ]
The performance of a software component heavily depends on the environment of the component. As a software component only justifies its investment when deployed in several environments, one can not specify the performance of a component as a constant (e.g., as a single value or distribution of values in its interface). Hence, classical component contracts allowing to state the component�s performance as a post-condition, if the environment realises a specific performance stated in the precondition, do not help. This fixed pair of pre- and postcondition do not model that a component can have very different performance figures depending on its context. Instead of that, parametric contracts are needed for specifying the environmental dependency of the component�s provided performance. In this paper we discuss the specification of such dependencies for the performance metric response time. We model the statistical distribution of response time in dependency of the distribution of response times of environmental services.
[10] Steffen Becker, Ralf H. Reussner, and Viktoria Firus. Specifying Contractual Use, Protocols and Quality Attributes for Software Components. In Proceedings of the First International Workshop on Component Engineering Methodology, Klaus Turowski and Sven Overhage, editors, 2003. [ bib | .pdf | Abstract ]
We discuss the specification of signatures, protocols (behaviour) and quality of service within software component specification frameworks. In particular we focus on (a) contractually used components, (b) the specification of components with variable contracts and interfaces, and (c) of quality of service. Interface descriptions including these aspects allow powerful static interoperability checks. Unfortunately, the specification of constant component interfaces hinders the specification of quality attributes and impedes automated component adaptation. This is because, especially quality attributes heavily depend on the components context. To enable the specification of quality attributes, we demonstrate the inclusion of parameterised contracts within a component specification framework. These parameterised contracts compute adapted, context-dependent component interfaces (including protocols and quality attributes). This allows to take context dependencies into account while allowing powerful static interoperability checks.

Technical Reports

Theses

Other