inproceedings_reussner.bib

@inproceedings{becker2004c,
  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.},
  author = {Becker, Steffen and Firus, Viktoria and Giesecke, Simon and Hasselbring, Wilhelm and Overhage, Sven and Reussner, Ralf H.},
  booktitle = {Architekturen, Komponenten, Anwendungen - Proceedings zur 1. Verbundtagung Architekturen, Komponenten, Anwendungen (AKA 2004), Universit{\"a}t Augsburg},
  editor = {Turowski, Klaus},
  isbn = {3-88579-386-5},
  pages = {163--180},
  series = {GI-Edition Lecture Notes in Informatics},
  title = {{T}owards a {G}eneric {F}ramework for {E}valuating {C}omponent-{B}ased {S}oftware {A}rchitectures},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/becker2004c.pdf},
  volume = {57},
  year = {2004}
}
@inproceedings{becker2007b,
  abstract = {One aim of component-based software engineering (CBSE) is to enable the prediction of extra-functional properties, such as performance and reliability, utilising a well-defined composition theory. Nowadays, such theories and their accompanying prediction methods are still in a maturation stage. Several factors influencing extra-functional properties need additional research to be understood. A special problem in CBSE stems from its specific development process: Software components should be specified and implemented independent from their later context to enable reuse. Thus, extra-functional properties of components need to be specified in a parametric way to take different influence factors like the hardware platform or the usage profile into account. In our approach, we use the Palladio Component Model (PCM) to specify component-based software architectures in a parametric way. This model offers direct support of the CBSE development process by dividing the model creation among the developer roles. In this paper, we present our model and a simulation tool based on it, which is capable of making performance predictions. Within a case study, we show that the resulting prediction accuracy can be sufficient to support the evaluation of architectural design decisions.},
  address = {New York, NY, USA},
  author = {Becker, Steffen and Koziolek, Heiko and Reussner, Ralf H.},
  booktitle = {WOSP '07: Proceedings of the 6th International Workshop on Software and performance},
  doi = {10.1145/1216993.1217006},
  isbn = {1-59593-297-6},
  keywords = {Software Architecture,Component-Based Software Engineering,performance prediction},
  location = {Buenes Aires, Argentina},
  month = {February},
  pages = {54--65},
  publisher = {ACM},
  title = {{M}odel-based {P}erformance {P}rediction with the {P}alladio {C}omponent {M}odel},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/becker2007b.pdf},
  year = {2007}
}
@inproceedings{becker2004a,
  abstract = {This paper discusses various classifications of component interoperability errors. These classifications aim at supporting the automation of component adaptation. The use of software components will only demonstrate beneficial, if the costs for component deployment (i.e., acquisition and composition) are considerably lower than those for custom component development. One of the main reasons for the moderate progress in component-based software engineering are the high costs for component deployment. These costs are mainly caused by adapting components to bridge interoperability errors between unfitting components. One way to lower the costs of component deployment is to support component adaptation by tools, i.e., for interoperability checks of (semi-)automated adaptor generation. This automation of component adaptation requires a deep understanding of component interoperability errors. In particular, one has to differentiate between different classes of interoperability errors, as different errors require different adaptors for resolving. Therefore, the presented classification of component interoperability errors supports the automation of component adaptation by aiding automated interoperability problem detection and semi-automated adaptor generation. The experience gained from already implemented solutions for a specific class of interoperability errors provides hints for the solution of similar problems of the same class.},
  author = {Becker, Steffen and Overhage, Sven and Reussner, Ralf H.},
  booktitle = {Proceedings of the 7th International Symposium on Component-Based Software Engineering (CBSE 2004), Edinburgh, UK},
  editor = {Crnkovic, Ivica and Stafford, Judith A. and Schmidt, Heinz W. and Wallnau, Kurt C.},
  month = {May},
  pages = {68--83},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{C}lassifying {S}oftware {C}omponent {I}nteroperability {E}rrors to {S}upport {C}omponent {A}daption},
  url = {http://springerlink.metapress.com/content/yk87fnn309wf2fgh/},
  volume = {3054},
  year = {2004}
}
@inproceedings{becker2004b,
  abstract = {Component adaptors often are used to bridge gaps between the functional requirements of a component and the functional specification of another one supposed to provide the needed services. As bridging functional mismatches is necessary, the use of adaptors is often unavoidable. This emphasises the relevance of a drawback of adaptor usage: The alteration of Quality of Service properties of the adapted component. That is especially nasty, if the original QoS properties of the component have been a major criteria for the choice of the respective component. Therefore, we give an overview of examples of the problem and highlight some approaches how to cope with it.},
  author = {Becker, Steffen and Reussner, Ralf H.},
  booktitle = {Proceedings of the First International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT 04)},
  editor = {Canal, Carlos and Murillo, Juan Manuel and Poizat, Pascal},
  title = {{T}he {I}mpact of {S}oftware {C}omponent {A}daptors on {Q}uality of {S}ervice {P}roperties},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/becker2004b.pdf},
  year = {2004}
}
@inproceedings{becker2003d,
  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.},
  author = {Becker, Steffen and Reussner, Ralf H. and Firus, Viktoria},
  booktitle = {Proceedings of the First International Workshop on Component Engineering Methodology},
  editor = {Turowski, Klaus and Overhage, Sven},
  title = {{S}pecifying {C}ontractual {U}se, {P}rotocols and {Q}uality {A}ttributes for {S}oftware {C}omponents},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/becker2003d.pdf},
  year = {2003}
}
@inproceedings{becker2008i,
  author = {Steffen Becker and Mircea Trifu and Ralf Reussner},
  booktitle = {1st International Workshop on Automated engineeRing of Autonomous and run-time evolving Systems (ARAMIS 2008)},
  keywords = {Q-ImPrESS},
  location = {L'Aquila, Italy},
  month = {September},
  title = {{Towards Supporting Evolution of Service Oriented Architectures through Quality Impact Prediction}},
  year = {2008}
}
@incollection{betz2012aafilmfbpabs,
  author = {Stefanie Betz and Erik Burger and Alexander Eckert and Andreas Oberweis and Ralf Reussner and Ralf Trunko},
  booktitle = {Aligning Enterprise, System, and Software Architectures},
  editor = {Ivan Mistr\'{i}k and Antony Tang and Rami Bahsoon and Judith A. Stafford},
  publisher = {IGI Global},
  tags = {chapter},
  title = {An approach for integrated lifecycle management for business processes and business software},
  year = {2012}
}
@inproceedings{brosch2011a,
  abstract = {Software fault tolerance mechanisms aim at improving the reliability of software systems. Their effectiveness (i.e., reliability impact) is highly application-specific and depends on the overall system architecture and usage profile. When examining multiple architecture configurations, such as in software product lines, it is a complex and error-prone task to include fault tolerance mechanisms effectively. Existing approaches for reliability analysis of software architectures either do not support modelling fault tolerance mechanisms or are not designed for an efficient evaluation of multiple architecture variants. We present a novel approach to analyse the effect of software fault tolerance mechanisms in varying architecture configurations. We have validated the approach in multiple case studies, including a large-scale industrial system, demonstrating its ability to support architecture design, and its robustness against imprecise input data.},
  address = {New York, NY, USA},
  author = {Franz Brosch and Barbora Buhnova and Heiko Koziolek and Ralf Reussner},
  booktitle = {International ACM Sigsoft Conference on the Quality of Software Architectures (QoSA)},
  pages = {75--84},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/brosch2011a.pdf},
  publisher = {ACM},
  title = {{Reliability Prediction for Fault-Tolerant Software Architectures}},
  year = {2011}
}
@inproceedings{brosch2010b,
  abstract = {Critical properties of software systems, such as reliability, should be considered early in the development, when they can govern crucial architectural design decisions. A number of design-time reliability-analysis methods has been developed to support this task. However, the methods are often based on very low-level formalisms, and the connection to different architectural aspects (e.g., the system usage profile) is either hidden in the constructs of a formal model (e.g., transition probabilities of a Markov chain), or even neglected (e.g., resource availability). This strongly limits the applicability of the methods to effectively support architectural design. Our approach, based on the Palladio Component Model (PCM), integrates the reliability-relevant architectural aspects in a highly parameterized UML-like model, which allows for transparent evaluation of architectural design options. It covers the propagation of the system usage profile throughout the architecture, and the impact of the execution environment, which are neglected in most of the existing approaches. Before analysis, the model is automatically transformed into a formal Markov model in order to support effective analytical techniques to be employed. The approach has been validated against a reliability simulation of a distributed Business Reporting System.},
  author = {Franz Brosch and Heiko Koziolek and Barbora Buhnova and Ralf Reussner},
  booktitle = {International Conference on the Quality of Software Architectures (QoSA)},
  doi = {10.1007/978-3-642-13821-8_5},
  pages = {36-51},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/brosch2010b.pdf},
  publisher = {Springer},
  series = {LNCS},
  title = {{Parameterized Reliability Prediction for Component-based Software Architectures}},
  volume = {6093},
  year = {2010}
}
@inproceedings{burger2011a,
  abstract = {Non-functional properties of software should be specified early in the development process. In a distributed process of software development, this means that quality requirements must be made explicit in the specification, and the developing party of a commissioned component needs to deliver not only the implemented component, but also a description of its non-functional properties. Based on these artefacts, a conformance check guarantees that the implemented component fulfills the performance requirements. We extend the notion of model refinement to non-functional properties of software and propose a refinement calculus for conformance checking between abstract performance descriptions of components. The calculus is based on a refinement notion that covers the performance-relevant aspects of components. The approach is applied to the Palladio Component Model as a description language for performance properties of components.},
  acmid = {2077629},
  author = {Erik Burger and Ralf Reussner},
  booktitle = {Proceedings of the 8th International Workshop on Formal Engineering approaches to Software Components and Architectures (FESCA)},
  editors = {Barbora Zimmerova and Jens Happe},
  issn = {1571-0661},
  issue = {2},
  month = {December},
  numpages = {9},
  pages = {33--41},
  publisher = {Elsevier Science Publishers B. V.},
  series = {Electronic Notes in Theoretical Computer Science},
  slides = {http://sdqweb.ipd.kit.edu/publications/pdfs/burger2011a_slides.pdf},
  title = {{Performance Certification of Software Components}},
  url = {http://sdqweb.ipd.kit.edu/publications/pdfs/burger2011a.pdf},
  volume = {279},
  year = {2011}
}
@inproceedings{caspart2018a,
  author = {Ren\'{e} Caspart and Patrick Firnkes and Manuel Giffels and Anne Koziolek and G{\"u}nter Quast and Ralf Reussner and Maximilian Stemmer-Grabow},
  title = {Modeling and Simulation of Load Balancing Strategies for Computing in High Energy Physics},
  booktitle = {CHEP 2018 - 23rd International Conference on Computing in High Energy and Nuclear Physics},
  year = {2019},
  publisher = {EDP Sciences},
  editor = {Peter Hristov and Latchezar Betev and Maarten Litmaath},
  pdf = {https://sdqweb.ipd.kit.edu/publications/pdfs/caspart2018a.pdf},
  --url = {https://indico.cern.ch/event/587955/contributions/2936249/},
  doi = {10.1051/epjconf/201921403027},
  volume = {214},
  number = {03027},
  journal = {EPJ Web Conf.},
  numpages = {8}
}
@incollection{happe2014a,
  author = {Lucia Happe and Erik Burger and Max Kramer and Andreas Rentschler and Ralf Reussner},
  booktitle = {Future Business Software -- Current Trends in Business Software Development},
  doi = {10.1007/978-3-319-04144-5},
  editor = {Gino Brunetti and Thomas Feld and Joachim Schnitter and Lutz Heuser and Christian Webel},
  isbn = {978-3-319-04143-8},
  issn = {2196-8705},
  location = {New York, Heidelberg},
  pages = {117-131},
  publisher = {Springer International Publishing},
  series = {Progress in IS},
  tags = {invited},
  title = {{Completion and Extension Techniques for Enterprise Software Performance Engineering}},
  year = {2014}
}
@incollection{clauss2002a,
  abstract = {In a model based software system, a set of business rules is scanned, and patterns are identified. The patterns are then compared, and similarities identified which indicate that software can be reused in the system. In one embodiment, identifiers of the rules are scanned. In another embodiment, usage patterns are used for designing a middle layer and generating code. In another embodiment of the invention, a data model is generated by capturing data from a user interface for a business document. Read more: http://www.faqs.org/patents/app/20090024980#ixzz0Wdx5gzQS},
  author = {Clauss, Matthias and Pulverm{\"u}ller, Elke and Reussner, Ralf H. and Speck, Andreas and van der Straeten, Ragnhild},
  booktitle = {{ECOOP} '02 {R}eader},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{M}odel-based {S}oftware {R}euse},
  year = {2002}
}
@inproceedings{cortellessa2010a,
  abstract = {The problem of interpreting the results of software performance analysis is very critical. Software developers expect feedbacks in terms of architectural design alternatives (e.g., split a software component in two components and re-deploy one of them), whereas the results of performance analysis are either pure numbers (e.g. mean values) or functions (e.g. probability distributions). Support to the interpretation of such results that helps to fill the gap between numbers/functions and software alternatives is still lacking. Performance antipatterns can play a key role in the search of performance problems and in the formulation of their solutions. In this paper we tackle the problem of identifying, among a set of detected performance antipatterns, the ones that are the real causes of problems (i.e. the guilty ones). To this goal we introduce a process to elaborate the performance analysis results and to score performance requirements, model entities and performance antipatterns. The cross observation of such scores allows to classify the level of guiltiness of each antipattern. An example modeled in Palladio is provided to demonstrate the validity of our approach by comparing the performance improvements obtained after removal of differently scored antipatterns.},
  author = {Vittorio Cortellessa and Anne Martens and Ralf Reussner and Catia Trubiani},
  bookseries = {LNCS},
  booktitle = {Fundamental Approaches to Software Engineering, 13th International Conference, FASE 2010},
  doi = {10.1007/978-3-642-12029-9_26},
  editor = {Rosenblum, David and Taentzer, Gabriele},
  location = {Paphos, Cyprus},
  pages = {368--382},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/cortellessa2010a.pdf},
  publisher = {Springer-Verlag Berlin Heidelberg},
  title = {A Process to Effectively Identify Guilty Performance Antipatterns},
  url = {http://www.springerlink.com/content/wl11718486334174},
  year = {2010}
}
@inproceedings{durdik2013a,
  author = {Zoya Durdik and Anne Koziolek and Ralf Reussner},
  booktitle = {Proceedings of the 2nd International Workshop on the Twin Peaks of Requirements and Architecture (TwinPeaks)},
  doi = {10.1109/TwinPeaks.2013.6614718},
  keywords = {formal specification;software architecture;systems analysis;architectural design;design decisions;requirement elicitation;requirement prioritisation;requirements engineering;software architecture;Computer architecture;Performance evaluation;Servers;Software;Space exploration;Time factors;Software architecture;design decisions;requirements engineering},
  month = {May},
  pages = {14-18},
  title = {{How the Understanding of the Effects of Design Decisions Informs Requirements Engineering}},
  year = {2013},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/durdik2013a.pdf}
}
@inproceedings{Durdik2013b,
  author = {Zoya Durdik and Ralf Reussner},
  booktitle = {Proceedings of the 9th ACM SIGSOFT International Conference on the Quality of Software Architectures (QoSA 2013)},
  month = {June},
  title = {{On the Appropriate Rationale for Using Design Patterns and Pattern Documentation}},
  year = {2013}
}
@inproceedings{Durdik2012b,
  author = {Zoya Durdik and Ralf Reussner},
  booktitle = {Proceedings of the 8th ACM SIGSOFT International Conference on the Quality of Software Architectures (QoSA 2012), Bertinoro, Italy},
  title = {{Position Paper: Approach for Architectural Design and Modelling with Documented Design Decisions (ADMD3)}},
  year = {2012}
}
@inproceedings{heinrich2014a,
  abstract = {iObserve is an approach to integrate model-driven monitoring with design time models of software systems and reuse those models at run time to realize analyses based on the design time model. It is assumed that this reduces the effort to be made to interpret analysis results of a software system.},
  author = {Robert Heinrich and Reiner Jung and Eric Schmieders and Andreas Metzger and Wilhelm Hasselbring and Klaus Pohl and Ralf Reussner},
  booktitle = {DFG Priority Program SPP1593, 4th Workshop},
  month = {November},
  title = {Integrated Observation and Modeling Techniques to Support Adaptation and Evolution of Software Systems},
  url = {http://eprints.uni-kiel.de/27380/},
  year = {2014}
}
@inproceedings{firus2005a,
  abstract = {Die Architektur eines Software-Systems beeinflusst ma{\ss}geblich seine Qualit \"{a}tseigenschaften wie Performanz oder Zuverl\"{a}ssigkeit. Daher sind Architektur\"{a}nderungen oft die einzige M\"{o}glichkeit, M\"{a}ngel bei diesen Qualit\"{a}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\"{u}hzeitige Analyse verschiedener Architektur-Entwurfsalternativen bez \"{u}glich ihrer Auswirkungen auf Qualit\"{a}tseigenschaften vorteilhaft. Dieser Artikel beschreibt die Evaluation dreier verschiedener Performanz-Vorhersageverfahren f\"{u}r Software-Architekturen hinsichtlich ihrer Eignung, korrekte Empfehlungen f\"{u}r fr\"{u}hzeitige Entwurfsentscheidungen zu geben. Zus\"{a}tzlich sollen diese Vorhersageverfahren pr\"{u}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\"{a}ufiger weniger performante Entwurfsalternativen vorgeschlagen. Dar\"{u}ber hinaus konnte das Verfahren Capacity Planning die absoluten Werte bei den meisten Entwurfsalternativen relativ genau vorhersagen.},
  author = {Firus, Viktoria and Koziolek, Heiko and Becker, Steffen and Reussner, Ralf H. and Hasselbring, Wilhelm},
  booktitle = {Software Engineering 2005 Proceedings - Fachtagung des GI-Fachbereichs Softwaretechnik},
  editor = {Liggesmeyer, Peter and Pohl, Klaus and Goedicke, Michael},
  isbn = {3-88579-393-8},
  pages = {55--66},
  series = {GI-Edition Lecture Notes in Informatics},
  title = {{E}mpirische {B}ewertung von {P}erformanz-{V}orhersageverfahren f{\"u}r {S}oftware-{A}rchitekturen},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/firus2005a.pdf},
  volume = {64},
  year = {2005}
}
@inproceedings{goldschmidt2008c,
  abstract = {Efforts for software evolution supersede any other part of the software life cycle. Technological decisions have a major impact on the maintainability, but are not well reflected by existing code or architecture based metrics. The way the persistency of object structures with relational databases is solved affects the maintainability of the overall system. Besides maintainability other quality attributes of the software are of interest, in particular performance metrics. However, a systematic evaluation of the benefits and drawback of different persistency frameworks is lacking. In this paper we systematically evaluate the maintainability and performance of different technological approaches for this mapping. The paper presents a testbed and an evaluation process with specifically designed metrics to evaluate persistency techniques regarding their maintainability and performance. In the second part we present and discuss the results of the case study.},
  address = {New York, NY, USA},
  author = {Goldschmidt, Thomas and Reussner, Ralf and Winzen, Jochen},
  booktitle = {ICSE '08: Proceedings of the 30th international conference on Software engineering},
  isbn = {978-1-60558-079-1},
  location = {Leipzig, Germany},
  pages = {401--410},
  publisher = {ACM},
  title = {{A} {C}ase {S}tudy {E}valuation of {M}aintainability and {P}erformance of {P}ersistency {T}echniques},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/goldschmidt2008c.pdf},
  year = {2008}
}
@inproceedings{goldschmidt2007a,
  abstract = {Although the original OMG Model-Driven Architecture Approach is not concerned with software evolution, modeldriven techniques may be good candidates to ease software evolution. However, a systematic evaluation of the benefits and drawback of model-driven approaches compared to other approaches are lacking. Besides maintainability other quality attributes of the software are of interest, in particular performance metrics. One specific area where model driven approaches are established in the area of software evolution are the generation of adapters to persist modern object oriented business models with legacy software and databases. This paper presents a testbed and an evaluation process with specifically designed metrics to evaluate model-driven techniques regarding their maintainability and performancerouven against established persistency frameworks.},
  author = {Goldschmidt, T. and Winzen, J. and Reussner, R.},
  booktitle = {IEEE CSMR 07 - Workshop on Model-Driven Software Evolution (MoDSE2007)},
  pages = {17--24},
  title = {{E}valuation of {M}aintainability of {M}odel-driven {P}ersistency {T}echniques},
  url = {http://www.sciences.univ-nantes.fr/MoDSE2007/p14.pdf},
  year = {2007}
}
@inproceedings{happe2008a,
  abstract = {Details about the underlying Message-oriented Middleware (MOM) are essential for accurate performance predictions of software systems using message-based communication. The MOM's configuration and usage strongly influence its throughput, resource utilisation and timing behaviour. Prediction models need to reflect these effects and allow software architects to evaluate the performance influence of MOM configured for their needs. Performance completions [31, 32] provide the general concept to include low-level details of execution environments in abstract performance models. In this paper, we extend the Palladio Component Model (PCM) [4] by a performance completion for Message-oriented Middleware. With our extension to the model, software architects can specify and configure message-based communication using a language based on messaging patterns. For performance evaluation, a model-to-model transformation integrates the low-level details of a MOM into the high-level software architecture model. A case study based on the SPECjms2007 Benchmark [1] predicts the performance of message-based communication with an error less than 20 percent.},
  address = {New York, NY, USA},
  author = {Jens Happe and Holger Friedrich and Steffen Becker and Ralf H. Reussner},
  booktitle = {Proceedings of the 7th International Workshop on Software and Performance (WOSP '08)},
  isbn = {978-1-59593-873-2},
  location = {Princeton, NJ, USA},
  pages = {165--176},
  publisher = {ACM},
  title = {{A} {P}attern-{B}ased {P}erformance {C}ompletion for {M}essage-{O}riented {M}iddleware},
  year = {2008}
}
@inproceedings{happe2010b,
  abstract = {The broad introduction of multi-core processors made symmetric multiprocessing (SMP) environments mainstream. The additional cores can significantly increase software performance. However, their actual benefit depends on the operating system scheduler's capabilities, the system's workload, and the software's degree of concurrency. The load distribution on the available processors (or cores) strongly influences response times and throughput of software applications. Hence, understanding the operating system scheduler's influence on performance and scalability is essential for the accurate prediction of software performance (response time, throughput, and resource utilisation). Existing prediction approaches tend to approximate the influence of operating system schedulers by abstract policies such as processor sharing and its more sophisticated extensions. However, these abstractions often fail to accurately capture software performance in SMP environments. In this paper, we present a performance Model for general-purpose Operating System Schedulers (MOSS). It allows analyses of software performance taking the influences of schedulers in SMP environments into account. The model is defined in terms of timed Coloured Petri Nets and predicts the effect of different operating system schedulers (e.g., Windows 7, Vista, Server 2003, and Linux 2.6) on software performance. We validated the prediction accuracy of MOSS in a case study using a business information system. In our experiments, the deviation of predictions and measurements was below 10% in most cases and did not exceed 30%.},
  acmid = {1906836},
  address = {Washington, DC, USA},
  author = {Jens Happe and Henning Groenda and Michael Hauck and Ralf H. Reussner},
  booktitle = {Proceedings of the 2010 7th International Conference on the Quantitative Evaluation of Systems},
  doi = {http://dx.doi.org/10.1109/QEST.2010.15},
  isbn = {978-0-7695-4188-4},
  numpages = {10},
  pages = {59--68},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/happe2010b.pdf},
  publisher = {IEEE Computer Society},
  series = {QEST '10},
  title = {{A Prediction Model for Software Performance in Symmetric Multiprocessing Environments}},
  url = {http://dx.doi.org/10.1109/QEST.2010.15},
  year = {2010}
}
@inproceedings{happe2009b,
  abstract = {The shift of hardware architecture towards parallel execution led to a broad usage of multi-core processors in desktop systems and in server systems. The benefit of additional processor cores for software performance depends on the software's parallelism as well as the operating system scheduler's capabilities. Especially, the load on the available processors (or cores) strongly influences response times and throughput of software applications. Hence, a sophisticated understanding of the mutual influence of software behaviour and operating system schedulers is essential for accurate performance evaluations. Multi-core systems pose new challenges for performance analysis and developers of operating systems. For example, an optimal scheduling policy for multi-server systems, such as shortest remaining processing time (SRPT) for single-server systems, is not yet known in queueing theory. In this paper, we present a detailed experimental evaluation of general purpose operating system (GPOS) schedulers in symmetric multiprocessing (SMP) environments. In particular, we are interested in the influence of multiprocessor load balancing on software performance. Additionally, the evaluation includes effects of GPOS schedulers that can also occur in single-processor environments, such as I/Oboundedness of tasks and different prioritisation strategies. The results presented in this paper provide the basis for the future development of more accurate performance models of today's software systems.},
  author = {Jens Happe and Henning Groenda and Ralf H. Reussner},
  booktitle = {Proceedings of the 17th IEEE International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS'09)},
  title = {{P}erformance {E}valuation of {S}cheduling {P}olicies in {S}ymmetric {M}ultiprocessing {E}nvironments},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/happe2009b.pdf},
  year = {2009}
}
@inproceedings{happe2006a,
  abstract = {Performance prediction methods for component-based software systems aim at supporting design decisions of software architects during early development stages. With the increased availability of multicore processors, possible performance gains by distributing threads and processes across multiple cores should be predictable by these methods. Many existing prediction approaches model concurrent behaviour insufficiently and yield inaccurate results due to hard underlying assumptions. In this paper, we present a formal performance prediction approach for component-based systems, which is parameterisable for the number of CPUs or CPU cores. It is able to predict the response time of component services for generally distributed execution times. An initial, simple case study shows that this approach can accurately predict response times of multithreaded software components in specific cases. However, it is limited if threads change the CPU during their execution, if the effect of processor cache thrashing is present, and if the memory bus is heavily used.},
  author = {Happe, Jens and Koziolek, Heiko and Reussner, Ralf H.},
  booktitle = {Proceedings of the 3rd International Workshop on Formal Aspects of Component Software (FACS)},
  editor = {de Boer, Frank S. and Mencl, Vladimir},
  issn = {1571-0661},
  pages = {91--106},
  series = {Electronic Notes in Theoretical Computer Science},
  title = {{P}arametric {P}erformance {C}ontracts for {S}oftware {C}omponents with {C}oncurrent {B}ehaviour},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/happe2006a.pdf},
  volume = {182},
  year = {2006}
}
@inproceedings{hasselbring2004a,
  abstract = {While the importance of multi-tier architectures for enterpriseinformation systems is widely accepted and theirbenefits are well published, the systematic migration frommonolithic legacy systems toward multi-tier architectures isknown to a much lesser extent. In this paper we present apattern on how to re-use elements of legacy systems withinmulti-tier architectures, which also allows for a smooth migrationpath. We report on experience we made with migratingexisting municipal information systems towards a multitierarchitecture. The experience is generalized by describingthe underlying pattern such that it can be re-used forsimilar architectural migration tasks. The emerged Dublopattern is based on the partial duplication of businesslogic among legacy system and newly deployed applicationserver. While this somehow contradicts the separation-of-concernsprinciple, it offers a high degree of flexibility inthe migration process and allows for a smooth transition.Experience with the combination of outdated databasetechnology with modern server-side component and webservices technologies is discussed. In this context, we alsoreport on technology and architecture selection processes.},
  address = {Washington, DC, USA},
  author = {Hasselbring, W. and Reussner, Ralf H. and Jaekel, H. and Schlegelmilch, J. and Teschke, T. and Krieghoff, S.},
  booktitle = {ICSE '04: Proceedings of the 26th International Conference on Software Engineering},
  isbn = {0-7695-2163-0},
  pages = {117--126},
  publisher = {IEEE Computer Society},
  title = {{T}he {D}ublo {A}rchitecture {P}attern for {S}mooth {M}igration of {B}usiness {I}nformation {S}ystems: {A}n {E}xperience {R}eport},
  url = {http://delivery.acm.org/10.1145/1000000/999418/21630117.pdf?key1=999418&key2=2588073121&coll=&dl=&CFID=32752511&CFTOKEN=62318030},
  year = {2004}
}
@inproceedings{hauck2011a,
  author = {Michael Hauck and Jens Happe and Ralf Reussner},
  booktitle = {Proceedings of the 1st International Conference on Cloud Computing and Services Science (CLOSER 2011)},
  http = {http://closer.scitevents.org/},
  isbn = {978-989-8425-52-2},
  pages = {616--622},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/hauck2011a.pdf},
  publisher = {SciTePress},
  title = {{T}owards {P}erformance {P}rediction for {C}loud {C}omputing {E}nvironments {B}ased on {G}oal-oriented {M}easurements},
  year = {2011}
}
@inproceedings{hauck2010a,
  abstract = {In symmetric multiprocessing environments, the performance of a software system heavily depends on the application's parallelism, the scheduling and load-balancing policies of the operating system, and the infrastructure it is running on. The scheduling of tasks can influence the response time of an application by several orders of magnitude. Thus, detailed models of the operating system scheduler are essential for accurate performance predictions. However, building such models for schedulers and including them into performance prediction models involves a lot of effort. For this reason, simplified scheduler models are used for the performance evaluation of business information systems in general. In this work, we present an approach to derive load-balancing properties of general-purpose operating system (GPOS) schedulers automatically. Our approach uses goal-oriented measurements to derive performance models based on observations. Furthermore, the derived performance model is plugged into the Palladio Component Model (PCM), a model-based performance prediction approach. We validated the applicability of the approach and its prediction accuracy in a case study on different operating systems.},
  author = {Michael Hauck and Jens Happe and Ralf H. Reussner},
  booktitle = {Proceedings of the 18th IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS'10)},
  doi = {10.1109/MASCOTS.2010.44},
  isbn = {978-0-7695-4197-6},
  issn = {1526-7539},
  numpages = {9},
  pages = {361--369},
  publisher = {IEEE Computer Society},
  title = {{Automatic Derivation of Performance Prediction Models for Load-balancing Properties Based on Goal-oriented Measurements}},
  url = {http://dx.doi.org/10.1109/MASCOTS.2010.44},
  year = {2010}
}
@inproceedings{hauck2011b,
  address = {New York, NY, USA},
  author = {Michael Hauck and Michael Kuperberg and Nikolaus Huber and Ralf Reussner},
  booktitle = {Proceedings of the 7th ACM SIGSOFT International Conference on the Quality of Software Architectures (QoSA 2011)},
  day = {20--24},
  doi = {http://doi.acm.org/10.1145/2000259.2000269},
  isbn = {978-1-4503-0724-6},
  month = {June},
  numpages = {10},
  pages = {53--62},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/hauck2011b.pdf},
  publisher = {ACM},
  title = {{Ginpex: Deriving Performance-relevant Infrastructure Properties Through Goal-oriented Experiments}},
  url = {10.1145/2000259.2000269},
  year = {2011}
}
@inproceedings{hauck2009b,
  abstract = {Software architects often use model-based techniques to analyse performance (e.g. response times), reliability and other extra-functional properties of software systems. These techniques operate on models of software architecture and execution environment, and are applied at design time for early evaluation of design alternatives, especially to avoid implementing systems with insufficient quality. Virtualisation (such as operating system hypervisors or virtual machines) and multiple layers in execution environments (e.g. RAID disk array controllers on top of hard disks) are becoming increasingly popular in reality and need to be reflected in the models of execution environments. However, current component meta-models do not support virtualisation and cannot model individual layers of execution environments. This means that the entire monolithic model must be recreated when different implementations of a layer must be compared to make a design decision, e.g. when comparing different Java Virtual Machines. In this paper, we present an extension of an established model-based performance prediction approach and associated tools which allow to model and predict state-of-the-art layered execution environments, such as disk arrays, virtual machines, and application servers. The evaluation of the presented approach shows its applicability and the resulting accuracy of the performance prediction while respecting the structure of the modelled resource environment.},
  author = {Michael Hauck and Michael Kuperberg and Klaus Krogmann and Ralf Reussner},
  booktitle = {{Proceedings of the 12th International Symposium on Component Based Software Engineering (CBSE 2009)}},
  doi = {10.1007/978-3-642-02414-6_12},
  ee = {http://dx.doi.org/10.1007/978-3-642-02414-6_12},
  isbn = {978-3-642-02413-9},
  number = {5582},
  pages = {191--208},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/hauck2009b.pdf},
  publisher = {Springer},
  series = {LNCS},
  title = {{Modelling Layered Component Execution Environments for Performance Prediction}},
  url = {http://www.comparch-events.org/pages/present.html},
  year = {2009}
}
@inproceedings{henss2013a,
  author = {J{\"o}rg Henss and Philipp Merkle and Ralf H. Reussner},
  booktitle = {Proceedings of the 6th International ICST Conference on Simulation Tools and Techniques},
  location = {Cannes, France},
  title = {Poster Abstract: The {OMPCM} Simulator for Model-Based Software Performance Prediction},
  year = {2013}
}
@inproceedings{HeKoRe2013-ICAC-Elasticity,
  abstract = {{Originating from the field of physics and economics, the term elasticity is nowadays heavily used in the context of cloud computing. In this context, elasticity is commonly understood as the ability of a system to automatically provision and de-provision computing resources on demand as workloads change. However, elasticity still lacks a precise definition as well as representative metrics coupled with a benchmarking methodology to enable comparability of systems. Existing definitions of elasticity are largely inconsistent and unspecific leading to confusion in the use of the term and its differentiation from related terms such as scalability and efficiency; the proposed measurement methodologies do not provide means to quantify elasticity without mixing it with efficiency or scalability aspects. In this short paper, we propose a precise definition of elasticity and analyze its core properties and requirements explicitly distinguishing from related terms such as scalability, efficiency, and agility. Furthermore, we present a set of appropriate elasticity metrics and sketch a new elasticity tailored benchmarking methodology addressing the special requirements on workload design and calibration.}},
  author = {Nikolas Roman Herbst and Samuel Kounev and Ralf Reussner},
  booktitle = {Proceedings of the 10th International Conference on Autonomic Computing (ICAC 2013)},
  day = {24--28},
  location = {San Jose, CA},
  month = {June},
  note = {Acceptance Rate (Short Paper): 36.9\%},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/HeKoRe2013-ICAC-Elasticity.pdf},
  publisher = {USENIX},
  slides = {http://sdqweb.ipd.kit.edu/publications/pdfs/HeKoRe2013-ICAC-Elasticity_Slides.pdf},
  title = {{Elasticity in Cloud Computing: What it is, and What it is Not}},
  titleaddon = {{(Short Paper)}},
  url = {https://www.usenix.org/conference/icac13/elasticity-cloud-computing-what-it-and-what-it-not},
  year = {2013}
}
@inproceedings{heuzeroth1999a,
  abstract = {The aim of todays software development is to build applications by the reuse of binary components. This requires the composition of components and as special cases component enhancement as well as adaption. We demonstrate how to deal with these cases by furnishing components with a type consisting of two protocols � a call and a use protocol. We model these protocols by finite automata and show how those reflect component enhancement and adaption. This mechanism allows for automatic adaption of components in changing environments. In order to obtain binary components we have to compile corresponding sources. In view of the required features of the binary components and with the problems of compiling generic classes in mind, we describe an approach to generate such pre-compiled components by appropriate compiler extensions.},
  author = {Heuzeroth, Dirk and Reussner, Ralf H.},
  booktitle = {First Workshop on Generative and Component based Software Engineering (GCSE) -- Young Researchers Workshop},
  title = {{D}ynamic {C}oupling of {B}inary {C}omponents and its {T}echnical {S}upport},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/heuzeroth1999a.pdf},
  year = {1999}
}
@inproceedings{HuBeRaScRe2010-ICSE-PerfMod,
  abstract = {In software engineering, performance and the integration of performance analysis methodologies gain increasing importance, especially for complex systems. Well-developed methods and tools can predict non-functional performance properties like response time or resource utilization in early design stages, thus promising time and cost savings. However, as performance modeling and performance prediction is still a young research area, the methods are not yet well-established and in wide-spread industrial use. This work is a case study of the applicability of the Palladio Component Model as a performance prediction method in an industrial environment. We model and analyze different design alternatives for storage virtualization on an IBM (Trademark of IBM in USA and/or other countries) system. The model calibration, validation and evaluation is based on data measured on a System z9 (Trademark of IBM in USA and/or other countries) as a proof of concept. The results show that performance predictions can identify performance bottlenecks and evaluate design alternatives in early stages of system development. The experiences gained were that performance modeling helps to understand and analyze a system. Hence, this case study substantiates that performance modeling is applicable in industry and a valuable method for evaluating design decisions.},
  address = {New York, NY, USA},
  author = {Nikolaus Huber and Steffen Becker and Christoph Rathfelder and Jochen Schweflinghaus and Ralf Reussner},
  booktitle = {ACM/IEEE 32nd International Conference on Software Engineering (ICSE 2010), Software Engineering in Practice Track},
  day = {2--8},
  doi = {10.1145/1810295.1810297},
  isbn = {978-1-60558-719-6},
  location = {Cape Town, South Africa},
  month = {May},
  note = {Acceptance Rate (Full Paper): 23\% (16/71)},
  pages = {1--10},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/hubern2010.pdf},
  publisher = {ACM},
  slides = {http://sdqweb.ipd.uka.de/publications/pdfs/hubern2010_slides.pdf},
  title = {{Performance Modeling in Industry: A Case Study on Storage Virtualization}},
  year = {2010}
}
@inproceedings{jayaputera2002a,
  author = {Jayaputera, Jane Christy and Poernomo, Iman H. and Reussner, Ralf H. and Schmidt, Heinz W.},
  booktitle = {Proceedings of the Third australian workshop on computational logic (AWCL 2002), Canberra, Australia, December 2002 Australian National University},
  editor = {Sondergaad, Harald},
  title = {{T}imed {P}robabilistic {R}easoning on {C}omponent {B}ased {A}rchitectures},
  year = {2002}
}
@inproceedings{kamsties2002a,
  abstract = {In this paper, we report on a controlled experiment, in which we compared two different requirements specification styles. Following the traditional black-box style, a system is described by its externally visible behavior, any design detail is omitted from the requirements. Following the white-box style, which was popularized by object-oriented analysis, a system is described by the behavior of its constituent entities, e.g., objects. In the experiment, we compared the understandability of two requirements specifications of the same system each written in a different style. The appropriate choice of a specification style depends on several factors including the project characteristics, the nature of the requirements at hand, and the intended readers. In this paper, we focus on the last factor, and investigate understandability from the viewpoint of a customer. The results of the experiment indicate that it is easier to understand black-box requirements specifications from a customer point of view. Questions about particular functions and particular behavior of the specified system were answered by the participants faster and more correct. This result suggests using the black-box specification style when communication with customers is important.},
  author = {Kamsties, Erik and von Knethen, Antje and Reussner, Ralf H.},
  booktitle = {Proceedings of the Eighth International Workshop on Requirements Engineering: Foundation for Software Quality},
  title = {{A} {C}ontrolled {E}xperiment on the {U}nderstandability of {D}ifferent {R}equirements {S}pecifications {S}tyles},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kamsties2002a.pdf},
  year = {2002}
}
@inproceedings{kapova2010d,
  address = {New York, NY, USA},
  author = {Kapova, Lucia and Goldschmidt, Thomas and Happe, Jens and Reussner, Ralf H.},
  booktitle = {MDI '10: Proceedings of the First International Workshop on Model-Drive Interoperability},
  doi = {http://doi.acm.org/10.1145/1866272.1866282},
  isbn = {978-1-4503-0292-0},
  location = {Oslo, Norway},
  pages = {69--78},
  publisher = {ACM},
  title = {Domain-specific templates for refinement transformations},
  year = {2010}
}
@inproceedings{kapova2010c,
  affiliation = {Software Design and Quality Group, Karlsruhe Institute of Technology (KIT), Germany},
  author = {Kapova, Lucia and Reussner, Ralf},
  booktitle = {Computer Performance Engineering},
  editor = {Aldini, Alessandro and Bernardo, Marco and Bononi, Luciano and Cortellessa, Vittorio},
  note = {10.1007/978-3-642-15784-4\_2},
  pages = {17-36},
  publisher = {Springer Berlin / Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {Application of Advanced Model-Driven Techniques in Performance Engineering},
  url = {http://dx.doi.org/10.1007/978-3-642-15784-4\_2},
  volume = {6342},
  year = {2010}
}
@inproceedings{kapova2009b,
  abstract = {Performance prediction and measurement approaches for component-based software systems help software architects to evaluate their systems based on component performance specifications created by component developers. Integrating classical performance models such as queueing networks, stochastic Petri nets, or stochastic process algebras, these approaches additionally exploit the benefits of component-based software engineering, such as reuse and division of work. Although researchers have proposed many approaches in this direction during the last decade, none of them has attained widespread industrial use. On this basis, we have conducted a comprehensive state-of-the-art survey of more than 20 of these approaches assessing their applicability. We classified the approaches according to the expressiveness of their component performance modelling languages. Our survey helps practitioners to select an appropriate approach and scientists to identify interesting topics for future research.},
  address = {New York, NY, USA},
  author = {Lucia Kapova and Barbora Zimmerova and Anne Martens and Jens Happe and Ralf H. Reussner},
  booktitle = {Proceedings of the 1st Joint WOSP/SIPEW International Conference on Performance Engineering (WOSP/SIPEW '10)},
  doi = {10.1145/1712605.1712613},
  location = {San Jose, California, USA},
  pages = {37--48},
  publisher = {ACM},
  title = {State Dependence in Performance Evaluation of Component-Based Software Systems},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kapova2009b.pdf},
  year = {2010}
}
@inproceedings{kappler2008a,
  abstract = {Performance predictions for software architectures can reveal performance bottlenecks and quantitatively support design decisions for different architectural alternatives. As software architects aim at reusing existing software components, their performance properties should be included into performance predictions without the need for manual modelling. However, most prediction approaches do not include automated support for modelling implemented components. Therefore, we propose a new reverse engineering approach, which generates Palladio performance models from Java code. In this paper, we focus on the static analysis of Java code, which we have implemented as an Eclipse plugin called Java2PCM. We evaluated our approach on a larger component-based software architecture, and show that a similar prediction accuracy can be achieved with generated models compared to completely manually specified ones.},
  address = {Munich, Germany},
  author = {Kappler, Thomas and Koziolek, Heiko and Krogmann, Klaus and Reussner, Ralf H.},
  booktitle = {Software Engineering 2008},
  keywords = {Java2PCM},
  month = {February},
  day = {18--22},
  pages = {140--154},
  publisher = {Bonner K{\"o}llen Verlag},
  series = {Lecture Notes in Informatics},
  title = {{T}owards {A}utomatic {C}onstruction of {R}eusable {P}rediction {M}odels for {C}omponent-{B}ased {P}erformance {E}ngineering},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kappler2008a.pdf},
  volume = {121},
  year = {2008}
}
@inproceedings{knethen1998a,
  abstract = {Numerous requirements engineering methods have been proposed to improve the quality of requirements documents as well as the developed software and to increase customer satisfaction with the final product. In this paper, we report on an explorative case study in the area of reactive systems with eight requirements engineering methods from a wide spectrum, namely, BSM, OCTOPUS, ROOM, SA/RT, SCR, SDL, UML (with OMT process), and Z. Our major finding is that the structuring mechanisms provided by a requirements engineering method, like hierarchies (e.g., ROOM) or views (e.g., UML), are directly related (1) to the number of problems found in the informal requirements during the creation of a requirements specification as well as (2) to the understandability of the final requirements specification.},
  author = {von Knethen, Antje and Kamsties, Erik and Reussner, Ralf H. and Bunse, Christian and Shen, Bin},
  booktitle = {Proceedings of the 11th International Conference on Software Engineering and its Applications},
  title = {{A} {C}omparative {C}ase {S}tudy with {I}ndustrial {R}equirements {E}ngineering {M}ethods},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/knethen1998a.pdf},
  year = {1998}
}
@inproceedings{Konersmann2013a,
  author = {Marco Konersmann and Zoya Durdik and Michael Goedicke and Ralf Reussner},
  booktitle = {Proceedings of the 9th ACM SIGSOFT International Conference on the Quality of Software Architectures (QoSA 2013)},
  month = {June},
  title = {{Towards Architecture-Centric Evolution of Long-Living Systems (The ADVERT Approach)}},
  year = {2013}
}
@inproceedings{KoBrHuRe2010-SCC-Towards,
  abstract = {Modern service-oriented systems have increasingly complex loosely-coupled architectures that often exhibit poor performance and resource efficiency and have high operating costs. This is due to the inability to predict at run-time the effect of dynamic changes in the system environment (e.g., varying service workloads) and adapt the system configuration accordingly. In this paper, we describe a long-term vision and approach for designing systems with built-in self-aware performance and resource management capabilities. We advocate the use of architecture-level performance models extracted dynamically from the evolving system configuration and maintained automatically during operation. The models will be exploited at run-time to adapt the system to changes in the environment ensuring that resources are utilized efficiently and performance requirements are continuously satisfied.},
  author = {Samuel Kounev and Fabian Brosig and Nikolaus Huber and Ralf Reussner},
  booktitle = {Proceedings of the 7th IEEE International Conference on Services Computing (SCC 2010), July 5-10, Miami, Florida, USA},
  day = {5--10},
  location = {Miami, Florida, USA},
  month = {July},
  pdf = {http://sdqweb.ipd.kit.edu/publications/descartes-pdfs/KoBrHuRe2010-SCC-Towards.pdf},
  publisher = {IEEE Computer Society},
  title = {{Towards self-aware performance and resource management in modern service-oriented systems}},
  year = {2010}
}
@inproceedings{koziolek2011f,
  abstract = {Designing software architectures that exhibit a good trade-off between multiple quality attributes is hard. Even with a given functional design, many degrees of freedom in the software architecture (e.g. component deployment or server configuration) span a large design space. In current practice, software architects try to find good solutions manually, which is time-consuming, can be error-prone and can lead to suboptimal designs. We propose an automated approach guided by architectural tactics to search the design space for good solutions. Our approach applies multi-objective evolutionary optimization to software architectures modelled with the Palladio Component Model. Software architects can then make well-informed trade-off decisions and choose the best architecture for their situation. To validate our approach, we applied it to the architecture models of two systems, a business reporting system and an industrial control system from ABB. The approach was able to find meaningful trade-offs leading to significant performance improvements or costs savings. The novel use of tactics decreased the time needed to find good solutions by up to 80\%.},
  acmid = {2000267},
  author = {Koziolek, Anne and Koziolek, Heiko and Reussner, Ralf},
  booktitle = {Joint proceedings of the Seventh International ACM SIGSOFT Conference on the Quality of Software Architectures and the 2nd ACM SIGSOFT International Symposium on Architecting Critical Systems (QoSA-ISARCS 2011)},
  doi = {10.1145/2000259.2000267},
  editor = {Ivica Crnkovic and Judith A. Stafford and Dorina C. Petriu and Jens Happe and Paola Inverardi},
  isbn = {978-1-4503-0724-6},
  keywords = {architectural tactics, costs, multi-objective optimization, optimization, performance, reliability, software architecture},
  location = {Boulder, Colorado, USA},
  numpages = {10},
  pages = {33--42},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/koziolek2011f.pdf},
  publisher = {ACM, New York, NY, USA},
  title = {{PerOpteryx}: automated application of tactics in multi-objective software architecture optimization},
  url = {http://qosa.ipd.kit.edu/qosa_2011/},
  year = {2011}
}
@inproceedings{koziolek2011b,
  abstract = {Quantitative prediction of non-functional properties, such as performance, reliability, and costs, of software architectures supports systematic software engineering. Even though there usually is a rough idea on bounds for quality of service, the exact required values may be unclear and subject to trade-offs. Designing architectures that exhibit such good trade-off between multiple quality attributes is hard. Even with a given functional design, many degrees of freedom in the software architecture (e.g. component deployment or server configuration) span a large design space. Automated approaches search the design space with multi-objective metaheuristics such as evolutionary algorithms. However, as quality prediction for a single architecture is computationally expensive, these approaches are time consuming. In this work, we enhance an automated improvement approach to take into account bounds for quality of service in order to focus the search on interesting regions of the objective space, while still allowing trade-offs after the search. We compare two different constraint handling techniques to consider the bounds. To validate our approach, we applied both techniques to an architecture model of a component-based business information system. We compared both techniques to an unbounded search in 4 scenarios. Every scenario was examined with 10 optimization runs, each investigating around 1600 architectural candidates. The results indicate that the integration of quality of service bounds during the optimization process can improve the quality of the solutions found, however, the effect depends on the scenario, i.e. the problem and the quality requirements. The best results were achieved for costs requirements: The approach was able to decrease the time needed to find good solutions in the interesting regions of the objective space by 25\% on average.},
  author = {Anne Koziolek and Qais Noorshams and Ralf Reussner},
  booktitle = {{Models in Software Engineering, Workshops and Symposia at MODELS 2010, Oslo, Norway, October 3-8, 2010, Reports and Revised Selected Papers}},
  doi = {10.1007/978-3-642-21210-9_37},
  editor = {J. Dingel and A. Solberg},
  pages = {384--399},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/koziolek2011b.pdf},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {Focussing Multi-objective Software Architecture Optimization Using Quality of Service Bounds},
  url = {http://dx.doi.org/10.1007/978-3-642-21210-9},
  volume = {6627},
  year = {2011}
}
@inproceedings{koziolek2011d,
  abstract = {Designing component-based systems (CBS) that exhibit a good trade-off between multiple quality criteria is hard. Even after functional design, many remaining degrees of freedom of different types (e.g.\ component allocation, component selection, server configuration) in the CBS span a large, discontinuous design space. Automated approaches have been proposed to optimise CBS models, but they only consider a limited set of degrees of freedom, e.g.\ they only optimise the selection of components without considering the allocation, or vice versa. We propose a flexible and extensible formulation of the design space for optimising any CBS model for a number of quality properties and an arbitrary number of degrees of freedom. With this design space formulation, a generic quality optimisation framework that is independent of the used CBS metamodel can apply multi-objective metaheuristic optimisation such as evolutionary algorithms.},
  acmid = {2000244},
  address = {New York, NY, USA},
  author = {Koziolek, Anne and Reussner, Ralf},
  booktitle = {Proceedings of the 14th international ACM Sigsoft symposium on Component based software engineering},
  doi = {10.1145/2000229.2000244},
  editor = {Ivica Crnkovic and Judith A. Stafford and Antonia Bertolino and Kendra M. L. Cooper},
  isbn = {978-1-4503-0723-9},
  keywords = {component-based, optimisation, quality},
  location = {Boulder, Colorado, USA},
  month = {June},
  numpages = {6},
  pages = {103--108},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/koziolek2011d.pdf},
  publisher = {ACM, New York, NY, USA},
  series = {CBSE '11},
  title = {Towards a generic quality optimisation framework for component-based system models},
  url = {http://cbse-conferences.org/2011},
  year = {2011}
}
@inproceedings{koziolek2007a,
  author = {Heiko Koziolek and Steffen Becker and Jens Happe and Ralf Reussner},
  booktitle = {{M}odel-{D}riven {S}oftware {D}evelopment: {I}ntegrating {Q}uality {A}ssurance},
  editor = {J{\"o}rg Rech and Christian Bunse},
  month = {December},
  pages = {95-118},
  publisher = {IDEA Group Inc.},
  title = {Evaluating Performance of Software Architecture Models with the Palladio Component Model},
  year = {2008}
}
@inproceedings{koziolek2008d,
  abstract = {Current software component models insufficiently reflect the different stages of component life-cycle, which involves design, implementation, deployment, and runtime. Therefore, reasoning techniques for component-based models (e.g., protocol checking, QoS predictions, etc.) are often limited to a particular life-cycle stage. We propose modelling software components in different design stages, after implemenatation, and during deployment. Abstract models for newly designed components can be combined with refined models for already implemented components. As a proof-of-concept, we have implemented the new modelling techniques as part of our Palladio Component Model (PCM).},
  address = {Universit{\"a}t Karlsruhe (TH), Karlsruhe, Germany},
  author = {Heiko Koziolek and Steffen Becker and Jens Happe and Ralf Reussner},
  booktitle = {Proceedings of the 11th International Symposium on Component-Based Software Engineering (CBSE)},
  month = {October},
  pages = {278-285},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{L}ife-{C}ycle {A}ware {M}odelling of {S}oftware {C}omponents},
  year = {2008}
}
@inproceedings{koziolek2008a,
  abstract = {For component-based performance engineering, software component developers individually create performance specifications of their components. Software architects compose these specifications to architectural models. This enables assessing the possible fulfilment of performance requirements without the need to purchase and deploy the component implementations. Many existing performance models do not support component-based performance engineering but offer efficient solvers. On the other hand, component-based performance engineering approaches often lack tool support. We present a model transformation combining the advanced component concepts of the Palladio Component Model (PCM) with the efficient performance solvers of Layered Queueing Networks (LQN). Joining the tool-set for PCM specifications with the tool-set for LQN solution is an important step to carry component-based performance engineering into industrial practice.We validate the correctness of the transformation by mapping the PCM model of a componentbased architecture to an LQN and conduct performance predictions.},
  author = {Heiko Koziolek and Ralf Reussner},
  booktitle = {Performance Evaluation: Metrics, Models and Benchmarks, SIPEW 2008},
  isbn = {978-3-540-69813-5},
  pages = {58--78},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{A} {M}odel {T}ransformation from the {P}alladio {C}omponent {M}odel to {L}ayered {Q}ueueing {N}etworks},
  url = {http://www.springerlink.com/content/w14m0g520u675x10/fulltext.pdf},
  volume = {5119},
  year = {2008}
}
@inproceedings{kramer2002b,
  author = {Kr{\"a}mer, Bernd J. and Reussner, Ralf H. and Schmidt, Heinz W.},
  booktitle = {Monterey Workshop 2002 -- Radical Innovations of Software and Systems Engineering, Venice, Italy, October 7--11},
  editor = {Wirsing, Martin},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{P}redicting {P}roperties of {C}omponent {B}ased {S}oftware {A}rchitectures through {P}arameterised {C}ontracts},
  year = {2002}
}
@inproceedings{kraemer2002a,
  author = {Kr{\"a}mer, Bernd J. and Schmidt, Heinz W. and Poernomo, Iman H. and Reussner, Ralf H.},
  booktitle = {Radical Innovations of Software and Systems Engineering in the Future, 9th International Workshop, RISSEF 2002, Venice, Italy, October 7-11, 2002, Revised Papers},
  editor = {Wirsing, Martin and Knapp, Alexander and Balsamo, Simonetta},
  isbn = {3-540-21179-9},
  pages = {310--324},
  publisher = {Springer-Verlag Berlin Heidelberg},
  title = {{P}redictable {CO}mponent {A}rchitectures {U}sing {D}ependent {F}inite {S}tate {M}achines},
  year = {2002}
}
@inproceedings{kranzlmueller1999a,
  author = {Kranzlm{\"u}ller, Dieter and Reussner, Ralf H. and Schaubschl{\"a}ger, Christian},
  booktitle = {Recent advances in parallel virtual machine and message passing interface: 6th European {PVM}/{MPI} Users' Group Meeting, Barcelona, Spain, September 26--29, 1999: proceedings},
  editor = {Dongarra, J. J. and Luque, E. and Margalef, Tomas},
  isbn = {3-540-66549-8 (softcover)},
  pages = {43--50},
  series = {Lecture Notes in Computer Science},
  title = {{M}onitor overhead measurement with {SK}a{MPI}},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kranzlmueller1999a.pdf},
  volume = {1697},
  year = {1999}
}
@inproceedings{krogmann2008b,
  abstract = {Integrating heterogeneous software systems becomes increasingly important. It requires combining existing components to form new applications. Such new applications are required to satisfy non-functional properties, such as performance. Design-time performance prediction of new applications built from existing components helps to compare design decisions before actually implementing them to the full, avoiding costly prototype and glue code creation. But design-time performance prediction requires understanding and modeling of data flow and control flow accross component boundaries, which is not given for most black-box components. If, for example one component processes and forwards files to other components, this effect should be an explicit model parameter to correctly capture its performance impact. This impact should also be parameterised over data, but no reverse engineering approach exists to recover such dependencies. In this paper, we present an approach that allows reverse engineering of such behavioural models, which is applicable for blackbox components. By runtime monitoring and application of genetic programming, we recover functional dependencies in code, which then are expressed as parameterisation in the output model. We successfully validated our approach in a case study on a file sharing application, showing that all dependencies could correctly be reverse engineered from black-box components.},
  address = {Oldenburg},
  author = {Klaus Krogmann and Michael Kuperberg and Ralf Reussner},
  booktitle = {MDD, SOA und IT-Management (MSI 2008)},
  editor = {Steffens, Ulrike and Addicks, Jan Stefan and Streekmann, Niels},
  month = {September},
  pages = {57--71},
  publisher = {GITO Verlag},
  title = {{Reverse Engineering of Parametric Behavioural Service Performance Models from Black-Box Components}},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/krogmann2008b.pdf},
  year = {2008}
}
@inproceedings{kuperberg2008c,
  abstract = {In component-based software engineering, the response time of an entire application is often predicted from the execution durations of individual component services. However, these execution durations are specific for an execution platform (i.e. its resources such as CPU) and for a usage profile. Reusing an existing component on different execution platforms up to now required repeated measurements of the concerned components for each relevant combination of execution platform and usage profile, leading to high effort. This paper presents a novel integrated approach that overcomes these limitations by reconstructing behaviour models with platform-independent resource demands of bytecode components. The reconstructed models are parameterised over input parameter values. Using platform-specific results of bytecode benchmarking, our approach is able to translate the platform-independent resource demands into predictions for execution durations on a certain platform. We validate our approach by predicting the performance of a file sharing application.},
  author = {Michael Kuperberg and Klaus Krogmann and Ralf Reussner},
  booktitle = {Proceedings of the 11th International Symposium on Component Based Software Engineering (CBSE 2008), Karlsruhe, Germany, 14th-17th October 2008},
  month = {October},
  pages = {48-63},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{P}erformance {P}rediction for {B}lack-{B}ox {C}omponents using {R}eengineered {P}arametric {B}ehaviour {M}odels},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kuperberg2008c.pdf},
  volume = {5282},
  year = {2008}
}
@inproceedings{kuperberg2011a,
  abstract = {Performance measurements are often concerned with accurate recording of timing values, which requires timer methods of high quality. Evaluating the quality of a given timer method or performance counter involves analysing several properties, such as accuracy, invocation cost and timer stability. These properties are metrics with platform-dependent values, and ranking and selecting timer methods requires comparisons using multidimensional metric sets, which make the comparisons ambiguous and unnecessary complex. To solve this problem, this paper proposes a new unified metric that allows for a simpler comparison. The one-dimensional metric is designed to capture fine-granular differences between timer methods, and normalises accuracy and other quality attributes by using CPU cycles instead of time units. The proposed metric is evaluated on all timer methods provided by Java and .NET platform APIs.},
  author = {Michael Kuperberg and Martin Krogmann and Ralf Reussner},
  booktitle = {Proceedings of the 2nd ACM/SPEC International Conference on Performance Engineering},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/kuperberg2011a.pdf},
  title = {{Metric-based Selection of Timer Methods for Accurate Measurements}},
  year = {2011},
  series = {ICPE '11},
  isbn = {978-1-4503-0519-8},
  location = {Karlsruhe, Germany},
  pages = {151--156},
  numpages = {6},
  url = {http://doi.acm.org/10.1145/1958746.1958770},
  doi = {10.1145/1958746.1958770},
  publisher = {ACM},
  address = {New York, NY, USA}
}
@inproceedings{kuperberg2009c,
  author = {Michael Kuperberg and Martin Krogmann and Ralf Reussner},
  booktitle = {{Proceedings of the 6th International Conference on Quantitative Evaluation of SysTems (QEST) 2009}},
  locatio = {September 13-16, 2009, Budapest, Hungary},
  title = {{TimerMeter: Quantifying Accuracy of Software Times for System Analysis}},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kuperberg2009c.pdf},
  year = {2009}
}
@inproceedings{kuperberg2008a,
  abstract = {For bytecode-based applications, runtime instruction counts can be used as a platform- independent application execution metric, and also can serve as the basis for bytecode-based performance prediction. However, different instruction types have different execution durations, so they must be counted separately, and method invocations should be identified and counted because of their substantial contribution to the total application performance. For Java bytecode, most JVMs and profilers do not provide such functionality at all, and existing bytecode analysis frameworks require expensive JVM instrumentation for instruction-level counting. In this paper, we present ByCounter, a lightweight approach for exact runtime counting of executed bytecode instructions and method invocations. ByCounter significantly reduces total counting costs by instrumenting only the application bytecode and not the JVM, and it can be used without modifications on any JVM. We evaluate the presented approach by successfully applying it to multiple Java applications on different JVMs, and discuss the runtime costs of applying ByCounter to these cases.},
  author = {Michael Kuperberg and Martin Krogmann and Ralf Reussner},
  booktitle = {{Proceedings of the 3rd International Workshop on Bytecode Semantics, Verification, Analysis and Transformation, Budapest, Hungary, 5th April 2008 (ETAPS 2008, 11th European Joint Conferences on Theory and Practice of Software)}},
  keywords = {Java, bytecode, counting, portable, runtime, instrumentation, fine-grained},
  title = {{ByCounter: Portable Runtime Counting of Bytecode Instructions and Method Invocations}},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kuperberg2008a.pdf},
  year = {2008}
}
@inproceedings{kuperberg2009a,
  abstract = {Automated generation of method parameters is needed in benchmarking scenarios where manual or random generation of parameters are not suitable, do not scale or are too costly. However, for a method to execute correctly, the generated input parameters must not violate implicit semantical constraints, such as ranges of numeric parameters or the maximum length of a collection. For most methods, such constraints have no formal documentation, and human-readable documentation of them is usually incomplete and ambiguous. Random search of appropriate parameter values is possible but extremely ineffective and does not pay respect to such implicit constraints. Also, the role of polymorphism and of the method invocation targets is often not taken into account. Most existing approaches that claim automation focus on a single method and ignore the structure of the surrounding APIs where those exist. In this paper, we present HEURIGENJ, a novel heuristics-based approach for automatically finding legal and appropriate method input parameters and invocation targets, by approximating the implicit constraints imposed on them. Our approach is designed to support systematic benchmarking of API methods written in the Java language. We evaluate the presented approach by applying it to two frequently-used packages of the Java platform API, and demonstrating its coverage and effectiveness.},
  author = {Michael Kuperberg and Fouad Omri and Ralf Reussner},
  booktitle = {Proceedings of the 6th International Workshop on Formal Engineering approaches to Software Components and Architectures, York, UK, 28th March 2009 (ETAPS 2009, 12th European Joint Conferences on Theory and Practice of Software)},
  keywords = {Heuristics, parameter generation, exception handling, Java, benchmarking},
  title = {{Using Heuristics to Automate Parameter Generation for Benchmarking of Java Methods}},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/kuperberg2009a.pdf},
  year = {2009}
}
@inproceedings{kuperberg2011b,
  abstract = {Performance evaluation requires accurate and dependable measurements of timing values. Such measurements are usually made using timer methods, but these methods are often too coarse-grained and too inaccurate. Thus, direct usage of hardware performance counters is frequently used for fine-granular measurements due to higher accuracy. However, direct access to these counters may be misleading on multicore computers because cores can be paused or core affinity changed by the operating system, resulting in misleading counter values. The contribution of this paper is the demonstration of an additional, significant flaw arising from the direct use of hardware performance counters. We demonstrate that using JNI and assembler instructions to access the Timestamp Counter from Java applications can result in grossly wrong values, even in single-threaded scenarios.},
  author = {Michael Kuperberg and Ralf Reussner},
  booktitle = {Proceedings of the International Conference on Software Engineering 2011 (ICPE'11), March 14--16, 2011, Karlsruhe, Germany},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/kuperberg2011b.pdf},
  title = {{Analysing the Fidelity of Measurements Performed With Hardware Performance Counters}},
  year = {2011}
}
@inproceedings{martens2010b,
  abstract = {Multiple, often conflicting quality of service (QoS) requirements arise when evaluating design decisions and selecting design alternatives of complex component-based software systems. In this scenario, selecting a good solution with respect to a single quality attribute can lead to unacceptable results with respect to the other quality attributes. A promising way to deal with this problem is to exploit multi-objective optimization where the objectives represent different quality attributes. The aim of these techniques is to devise a set of solutions, each of which assures a trade-off between the conflicting qualities. To automate this task, this paper proposes a combined use of analytical optimization techniques and evolutionary algorithms to efficiently identify a significant set of design alternatives, from which an architecture that best fits the different quality objectives can be selected. The proposed approach can lead both to a reduction of development costs and to an improvement of the quality of the final system. We demonstrate the use of this approach on a simple case study.},
  author = {Anne Martens and Danilo Ardagna and Heiko Koziolek and Raffaela Mirandola and Ralf Reussner},
  booktitle = {{Research into Practice - Reality and Gaps (Proceedings of the 6th International Conference on the Quality of Software Architectures, QoSA 2010)}},
  doi = {10.1007/978-3-642-13821-8_8},
  editor = {George Heineman and Jan Kofron and Frantisek Plasil},
  pages = {84-101},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/martens2010b.pdf},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {A Hybrid Approach for Multi-Attribute {QoS} Optimisation in Component Based Software Systems},
  url = {http://sdqweb.ipd.kit.edu/publications/pdfs/martens2010b.pdf},
  volume = {6093},
  year = {2010}
}
@inproceedings{martens2008b,
  abstract = {Component-based software performance engineering (CBSPE) methods shall enable software architects to assess the expected response times, throughputs, and resource utilization of their systems already during design. This avoids the violation of performance requirements. Existing approaches for CBSPE either lack tool support or rely on prototypical tools, who have only been applied by their authors. Therefore, industrial applicability of these methods is unknown. On this behalf, we have conducted a controlled experiment involving 19 computer science students, who analysed the performance of two component-based designs using our Palladio performance prediction approach, as an example for a CBSPE method. Our study is the first of its type in this area and shall help to mature CBSPE to industrial applicability. In this paper, we report on results concerning the prediction accuracy achieved by the students and list several lessons learned, which are also relevant for other methods than Palladio.},
  author = {Anne Martens and Steffen Becker and Heiko Koziolek and Ralf Reussner},
  booktitle = {Proceedings of the 5th European Performance Engineering Workshop (EPEW'08), Palma de Mallorca, Spain},
  doi = {10.1007/978-3-540-87891-9_2},
  editor = {N. Thomas and C. Juiz},
  pages = {17--31},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2008b.pdf},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {An Empirical Investigation of the Applicability of a Component-Based Performance Prediction Method},
  volume = {5261},
  year = {2008}
}
@inproceedings{martens2008a,
  abstract = {Model-based performance prediction methods aim at evaluating the expected response time, throughput, and resource utilisation of a software system at design time, before implementation. Existing performance prediction methods use monolithic, throw-away prediction models or component-based, reusable prediction models. While it is intuitively clear that the development of reusable models requires more effort, the actual higher amount of effort has not been quantified or analysed systematically yet. To study the effort, we conducted a controlled experiment with 19 computer science students who predicted the performance of two example systems applying an established, monolithic method (Software Performance Engineering) as well as our own component-based method (Palladio). The results show that the effort of model creation with Palladio is approximately 1.25 times higher than with SPE in our experimental setting, with the resulting models having comparable prediction accuracy. Therefore, in some cases, the creation of reusable prediction models can already be justified, if they are reused at least once.},
  author = {Anne Martens and Steffen Becker and Heiko Koziolek and Ralf Reussner},
  booktitle = {Proceedings of the 11th International Symposium on Component-Based Software Engineering (CBSE'08), Karlsruhe, Germany},
  doi = {10.1007/978-3-540-87412-6_3},
  editors = {M.R.V. Chaudron and C. Szyperski},
  pages = {16--31},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2008a.pdf},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {An Empirical Investigation of the Effort of Creating Reusable Models for Performance Prediction},
  volume = {5282},
  year = {2008}
}
@inproceedings{martens2009b,
  abstract = {Quantitative prediction of quality criteria (i.e. extra-functional properties such as performance, reliability, and cost) of service-oriented architectures supports a systematic software engineering approach. However, various degrees of freedom in building a software architecture span a large, discontinuous design space. Currently, solutions with a good trade-off between multiple quality criteria have to be found manually. We propose an automated approach to search the design space by modifying the architectural models, to improve the architecture with respect to multiple quality criteria, and to find optimal architectural models. The found optimal architectural models can be used as an input for trade-off analyses and thus allow systematic engineering of high-quality software architectures. Using this approach, the design of a high-quality component-based software system is eased for the software architect and thus saves cost and effort. Our approach applies a multi-criteria genetic algorithm to software architectures modelled with the Palladio Component Model (PCM). Currently, the method supports quantitative performance and reliability prediction, but it can be extended to other quality properties such as cost as well.},
  author = {Anne Martens and Franz Brosch and Ralf Reussner},
  booktitle = {Proceedings of the 1st international workshop on Quality of service-oriented software systems (QUASOSS)},
  doi = {10.1145/1596473.1596481},
  editors = {Paul Petterson and Heiko Koziolek and Petr Hnetynka},
  pages = {25--32},
  pdf = {http://sdqweb.ipd.uka.de/publications/pdfs/martens2009b.pdf},
  publisher = {ACM, New York, NY, USA},
  title = {Optimising multiple quality criteria of service-oriented software architectures},
  year = {2009}
}
@inproceedings{martens2010a,
  abstract = {Quantitative prediction of quality properties (i.e. extra-functional properties such as performance, reliability, and cost) of software architectures during design supports a systematic software engineering approach. Designing architectures that exhibit a good trade-off between multiple quality criteria is hard, because even after a functional design has been created, many remaining degrees of freedom in the software architecture span a large, discontinuous design space. In current practice, software architects try to find solutions manually, which is time-consuming, can be error-prone and can lead to suboptimal designs. We propose an automated approach to search the design space for good solutions. Starting with a given initial architectural model, the approach iteratively modifies and evaluates architectural models. Our approach applies a multi-criteria genetic algorithm to software architectures modelled with the Palladio Component Model. It supports quantitative performance, reliability, and cost prediction and can be extended to other quantitative quality criteria of software architectures. We validate the applicability of our approach by applying it to an architecture model of a component-based business information system and analyse its quality criteria trade-offs by automatically investigating more than 1200 alternative design candidates.},
  author = {Anne Martens and Heiko Koziolek and Steffen Becker and Ralf H. Reussner},
  booktitle = {Proceedings of the first joint WOSP/SIPEW international conference on Performance engineering},
  doi = {10.1145/1712605.1712624},
  editor = {Alan Adamson and Andre B. Bondi and Carlos Juiz and Mark S. Squillante},
  isbn = {978-1-60558-563-5},
  location = {San Jose, California, USA},
  pages = {105--116},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/martens2010a.pdf},
  publisher = {ACM, New York, NY, USA},
  series = {WOSP/SIPEW '10},
  slides = {http://sdqweb.ipd.kit.edu/publications/pdfs/martens2010a_slides.ppsx},
  title = {Automatically Improve Software Models for Performance, Reliability and Cost Using Genetic Algorithms},
  url = {http://www.inf.pucrs.br/wosp},
  year = {2010}
}
@inproceedings{martin2015a,
  author = {Lukas M{\"{a}}rtin and Anne Koziolek and Ralf H. Reussner},
  bibsource = {dblp computer science bibliography, http://dblp.org},
  biburl = {http://dblp.dagstuhl.de/rec/bib/conf/ecsa/MartinKR15},
  booktitle = {Proceedings of the 2015 European Conference on Software Architecture Workshops, Dubrovnik/Cavtat, Croatia, September 7-11, 2015},
  doi = {10.1145/2797433.2797484},
  editor = {Ivica Crnkovic},
  pages = {49:1--49:5},
  publisher = {{ACM}},
  timestamp = {Tue, 08 Sep 2015 16:21:53 +0200},
  title = {Quality-oriented Decision Support for maintaining Architectures of fault-tolerant Space Systems},
  url = {http://doi.acm.org/10.1145/2797433.2797484},
  year = {2015},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/martin2015a.pdf}
}
@inproceedings{martin2018a,
  author = {Lukas M{\"{a}}rtin and Nils-Andr\'e Forjahn and Anne Koziolek and Ralf Reussner},
  booktitle = {Software Architecture: 12th European Conference on Software Architecture, ECSA 2018},
  location = {Madrid, Spain},
  publisher = {Springer Nature},
  address = {Cham},
  keywords = {Software, Architecture, Model, Design Decision, Qualitative Reasoning},
  tags = {refereed},
  title = {{Guidance of Architectural Changes in Technical Systems with Varying Operational Modes}},
  doi = {10.1007/978-3-030-00761-4\_3},
  pages = {37--45},
  numpages = {4},
  isbn = {978-3-030-00760-7},
  year = {2018},
  abstract = {Technical systems often rely on redundant platforms. One way to increase dependability is to define various QoS modes, applied to different hardware resources. Switching between modes is limited by resource availability and causes costs for structural changes. Hence, selecting appropriate system architectures for specific resource sets and defining cost-efficient mode sequences is challenging. This short paper proposes an approach to support reconfiguration decisions for varying modes. We extend our decision graphs for traversing architectures towards multi-purpose applicability. We optimise reconfigurations within individual modes while reducing costs of mode changes simultaneously. Graph-based differentiations lead to most efficient mode sequences, transition configurations and visualisations. To respect high reconfigurability, we particularly inspect impacts of resource faults. For evaluation, we apply a subsystem of a micro satellite with multiple operational modes.}
}
@inproceedings{martinec2014a,
  acmid = {2568096},
  address = {New York, NY, USA},
  author = {Martinec, Tom\'{a}\c{s} and Marek, Luk\'{a}\c{s} and Steinhauser, Anton\'{\i}n and T\r{u}ma, Petr and Noorshams, Qais and Rentschler, Andreas and Reussner, Ralf},
  booktitle = {Proceedings of the 5th ACM/SPEC International Conference on Performance Engineering},
  doi = {10.1145/2568088.2568096},
  isbn = {978-1-4503-2733-6},
  keywords = {JMS, measurement, modeling, performance analysis, software performance},
  location = {Dublin, Ireland},
  numpages = {12},
  pages = {123--134},
  publisher = {ACM},
  series = {ICPE '14},
  title = {Constructing Performance Model of JMS Middleware Platform},
  url = {http://doi.acm.org/10.1145/2568088.2568096},
  year = {2014}
}
@inproceedings{matevskameyer2003a,
  abstract = {To reduce the down-time of software systems and maximise the set of available services during reconfiguration, we propose exploiting component protocol information. This is achieved by knowing the state of a running system and determining the component dependencies for the time interval from receiving a reconfiguration request until reconfiguration completion. For this forecast we use the architectural descriptions that specify static dependencies, as well as component protocol information. By considering only component interactions for the time interval of reconfiguration we can exclude past and future dependencies from our runtime dependency graphs. We show that such change-request-specific runtime dependency graphs may be considerably smaller than the corresponding static architecture based dependency graphs; this way, we are speeding up runtime reconfiguration of component-based systems while maximising the set of available services.},
  author = {Matevska-Meyer, Jasminka and Hasselbring, Wilhelm and Reussner, Ralf H.},
  booktitle = {Proceedings of the Eigth International Workshop on Component-Oriented Programming (WCOP'03)},
  editor = {Weck, Wolfgang and Bosch, Jan and Szyperski, Clemens},
  month = {June},
  title = {{E}xploiting {P}rotocol {I}nformation for {S}peeding up {R}untime {R}econfiguration of {C}omponent-{B}ased {S}ystems},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/matevskameyer2003a.pdf},
  year = {2003}
}
@inproceedings{meister2004a,
  author = {Meister, J{\"u}rgen and Reussner, Ralf H. and Rhode, Martin},
  booktitle = {Proceedings of the Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA 4)},
  publisher = {IEEE/IFIP},
  title = {{A}pplying {P}atterns to {D}evelop a {P}roduct {L}ine {A}rchitecture for {S}tatistical {A}nalysis {S}oftware},
  year = {2004}
}
@inproceedings{meister2004b,
  author = {Meister, J{\"u}rgen and Reussner, Ralf H. and Rhode, Martin},
  booktitle = {Proceedings of the 5th Annual International Conference on Object-Oriented and Internet-based Technologies, Concepts, and Applications for a Networked World (Net.Objectdays 2004)},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{M}anaging {P}roduct {L}ine {V}ariability by {P}atterns},
  year = {2004}
}
@inproceedings{noorshams2015a,
  author = {Qais Noorshams and Axel Busch and Samuel Kounev and Ralf Reussner},
  booktitle = {Proceedings of the 6th ACM/SPEC International Conference on Performance Engineering},
  doi = {10.1145/2668930.2693845},
  location = {Austin, Texas, USA},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2015a.pdf},
  series = {ICPE '15},
  title = {{The Storage Performance Analyzer: Measuring, Monitoring, and Modeling of I/O Performance in Virtualized Environments}},
  url = {http://dx.doi.org/10.1145/2668930.2693845},
  year = {2015}
}
@inproceedings{noorshams2014c,
  author = {Qais Noorshams and Kiana Rostami and Samuel Kounev and Ralf Reussner},
  booktitle = {Proceedings of the IEEE 22nd International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems},
  date = {September 09--11},
  location = {France, Paris},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2014c.pdf},
  series = {MASCOTS '14},
  title = {{Modeling of I/O Performance Interference in Virtualized Environments with Queueing Petri Nets}},
  tags = {refereed},
  year = {2014}
}
@inproceedings{noorshams2014b,
  acmid = {2602475},
  address = {New York, NY, USA},
  author = {Noorshams, Qais and Reeb, Roland and Rentschler, Andreas and Kounev, Samuel and Reussner, Ralf},
  booktitle = {Proceedings of the 17th International ACM Sigsoft Symposium on Component-based Software Engineering},
  doi = {10.1145/2602458.2602475},
  isbn = {978-1-4503-2577-6},
  keywords = {i/o, performance, prediction, software architecture, statistical model, storage},
  location = {Marcq-en-Bareul, France},
  note = {Acceptance Rate (Full Paper): 14/62 = 23\%.},
  numpages = {10},
  pages = {45--54},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2014b.pdf},
  publisher = {ACM},
  series = {CBSE '14},
  title = {Enriching Software Architecture Models with Statistical Models for Performance Prediction in Modern Storage Environments},
  url = {http://doi.acm.org/10.1145/2602458.2602475},
  year = {2014}
}
@inproceedings{noorshams2014a,
  author = {Qais Noorshams and Axel Busch and Andreas Rentschler and Dominik Bruhn and Samuel Kounev and Petr T\r{u}ma and Ralf Reussner},
  booktitle = {34th IEEE International Conference on Distributed Computing Systems Workshops (ICDCS 2014 Workshops). 4th International Workshop on Data Center Performance, DCPerf '14},
  doi = {10.1109/ICDCSW.2014.26},
  location = {Madrid, Spain},
  pages = {88-93},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2014a.pdf},
  title = {{Automated Modeling of I/O Performance and Interference Effects in Virtualized Storage Systems}},
  url = {http://dx.doi.org/10.1109/ICDCSW.2014.26},
  year = {2014}
}
@inproceedings{noorshams2013c,
  author = {Qais Noorshams and Kiana Rostami and Samuel Kounev and Petr T\r{u}ma and Ralf Reussner},
  booktitle = {Proceedings of the IEEE 21st International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems},
  date = {August 14--16},
  doi = {10.1109/MASCOTS.2013.20},
  location = {San Francisco, USA},
  note = {Acceptance Rate (Full Paper): 44/163 = 27\%},
  pages = {121-130},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2013c.pdf},
  series = {MASCOTS '13},
  title = {{I/O Performance Modeling of Virtualized Storage Systems}},
  url = {http://dx.doi.org/10.1109/MASCOTS.2013.20},
  year = {2013},
  tags = {refereed}
}
@inproceedings{noorshams2013a,
  acmid = {2479910},
  address = {New York, NY, USA},
  author = {Noorshams, Qais and Bruhn, Dominik and Kounev, Samuel and Reussner, Ralf},
  booktitle = {Proceedings of the ACM/SPEC International Conference on Performance Engineering},
  doi = {10.1145/2479871.2479910},
  isbn = {978-1-4503-1636-1},
  keywords = {i/o, performance, prediction, storage, virtualization},
  location = {Prague, Czech Republic},
  numpages = {12},
  pages = {283--294},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2013a.pdf},
  publisher = {ACM},
  series = {ICPE '13},
  title = {{Predictive Performance Modeling of Virtualized Storage Systems using Optimized Statistical Regression Techniques}},
  url = {http://doi.acm.org/10.1145/2479871.2479910},
  year = {2013}
}
@inproceedings{noorshams2013b,
  acmid = {2479921},
  address = {New York, NY, USA},
  author = {Noorshams, Qais and Rentschler, Andreas and Kounev, Samuel and Reussner, Ralf},
  booktitle = {Proceedings of the ACM/SPEC International Conference on Performance Engineering},
  doi = {10.1145/2479871.2479921},
  isbn = {978-1-4503-1636-1},
  keywords = {i/o, performance, storage, virtualization},
  location = {Prague, Czech Republic},
  numpages = {4},
  pages = {339--342},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2013b.pdf},
  publisher = {ACM},
  series = {ICPE '13},
  title = {{A Generic Approach for Architecture-level Performance Modeling and Prediction of Virtualized Storage Systems}},
  url = {http://doi.acm.org/10.1145/2479871.2479921},
  year = {2013}
}
@incollection{noorshams2012a,
  author = {Noorshams, Qais and Kounev, Samuel and Reussner, Ralf},
  booktitle = {Computer Performance Engineering. 9th European Workshop, EPEW 2012, Munich, Germany, July 30, 2012, and 28th UK Workshop, UKPEW 2012, Edinburgh, UK, July 2, 2012, Revised Selected Papers},
  doi = {10.1007/978-3-642-36781-6_5},
  editor = {Tribastone, Mirco and Gilmore, Stephen},
  isbn = {978-3-642-36780-9},
  keywords = {I/O; Storage; Performance; Virtualization},
  pages = {63-79},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2012a.pdf},
  publisher = {Springer Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{Experimental Evaluation of the Performance-Influencing Factors of Virtualized Storage Systems}},
  url = {http://dx.doi.org/10.1007/978-3-642-36781-6_5},
  volume = {7587},
  year = {2013}
}
@inproceedings{noorshams2010a,
  author = {Qais Noorshams and Anne Martens and Ralf Reussner},
  booktitle = {Proceedings of the 2nd International Workshop on the Quality of Service-Oriented Software Systems (QUASOSS '10), Oslo, Norway, October 4, 2010},
  doi = {10.1145/1858263.1858265},
  isbn = {978-1-4503-0239-5},
  pages = {1:1--1:6},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/noorshams2010a.pdf},
  publisher = {ACM, New York, NY, USA},
  title = {Using Quality of Service Bounds for Effective Multi-objective Software Architecture Optimization},
  url = {http://sdq.ipd.kit.edu/conferences_and_events/quasoss2010/},
  year = {2010}
}
@inproceedings{paech2009a,
  author = {Barbara Paech and Andreas Oberweis and Ralf Reussner},
  bibsource = {DBLP, http://dblp.uni-trier.de},
  booktitle = {Software Engineering (Workshops)},
  editor = {J{\"u}rgen M{\"u}nch and Peter Liggesmeyer},
  ee = {http://subs.emis.de/LNI/Proceedings/Proceedings150/article5319.html},
  isbn = {978-3-88579-244-4},
  pages = {223-228},
  publisher = {GI},
  series = {LNI},
  title = {{Qualit{\"a}t von Gesch{\"a}ftsprozessen und Unternehmenssoftware - Eine Thesensammlung}},
  volume = {150},
  year = {2009}
}
@inproceedings{poernomo2003a,
  author = {Poernomo, I. and Reussner, Ralf H. and Schmidt., H. -W.},
  booktitle = {Euromicro 2003, IEEE, Antalya - Turkey, September 3rd-5th, 2003},
  editor = {Chroust, Gerhard},
  title = {{A}rchitectural {C}onfiguration with {EDOC} and .{NET} {C}omponent {S}ervices},
  year = {2003}
}
@inproceedings{poernomo2002a,
  author = {Poernomo, Iman H. and Reussner, Ralf H. and Schmidt, Heinz W.},
  booktitle = {Proceedings of the First IFIP/ACM Working Conference on Component Deployment (CD 2002)},
  month = {June},
  pages = {233--243},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{A}rchitectures of {E}nterprise {S}ystems: {M}odelling {T}ransactional {C}ontexts},
  volume = {2370},
  year = {2002}
}
@inproceedings{rathfelder2012a,
  author = {Christoph Rathfelder and Stefan Becker and Klaus Krogmann and Ralf Reussner},
  booktitle = {Proceedings of the Joint 10th Working IEEE/IFIP Conference on Software Architecture (WICSA) \& 6th European Conference on Software Architecture (ECSA)},
  doi = {10.1109/WICSA-ECSA.212.11},
  location = {Helsinki, Finland},
  month = {August},
  note = {Acceptance Rate (Full Paper): 19.8\%},
  pages = {31--40},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rathfelder2012a.pdf},
  title = {Workload-aware System Monitoring Using Performance Predictions Applied to a Large-scale E-Mail System},
  url = {http://dx.doi.org/10.1109/WICSA-ECSA.212.11},
  year = {2012},
  publisher = {IEEE Computer Society},
  address = {Washington, DC, USA}
}
@incollection{rathfelder2008b,
  author = {Christoph Rathfelder and Henning Groenda and Ralf Reussner},
  booktitle = {Industrialisierung des Software-Managements: Fachtagung des GI-Fachausschusses Management der Anwendungsentwicklung und -Wartung im Fachbereich Wirtschaftsinformatik (WI-MAW)},
  day = {12--14},
  editor = {Georg Herzwurm and Martin Mikusz},
  isbn = {978-3-88579-233-8, 3-88579-383-0},
  location = {Stuttgart, Germany},
  month = {November},
  pages = {169--180},
  series = {Lecture Notes in Informatics (LNI)},
  title = {{S}oftware {I}ndustrialization and {A}rchitecture {C}ertification},
  volume = {139},
  year = {2008}
}
@inproceedings{rentschler2013a,
  _address = {Berlin--Heidelberg--New York},
  _booktitle = {Theory and Practice of Model Transformations - 6th International Conference, ICMT 2013, Budapest, Hungary, June 18-19, 2013. Proceedings},
  author = {Andreas Rentschler and Qais Noorshams and Lucia Happe and Ralf Reussner},
  booktitle = {Proceedings of the 6th International Conference on Model Transformation (ICMT '13), Budapest, Hungary},
  doi = {10.1007/978-3-642-38883-5_14},
  editor = {Keith Duddy and Gerti Kappel},
  month = {June},
  note = {Acceptance Rate: 20.7\%},
  pages = {141--157},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rentschler2013a.pdf},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{Interactive Visual Analytics for Efficient Maintenance of Model Transformations}},
  url = {http://dx.doi.org/10.1007/978-3-642-38883-5_14},
  volume = {7909},
  year = {2013}
}
@inproceedings{rentschler2014a,
  acmid = {2577094},
  address = {New York, NY, USA},
  author = {Andreas Rentschler and Dominik Werle and Qais Noorshams and Lucia Happe and Ralf Reussner},
  booktitle = {Proceedings of the 13th International Conference on Modularity (AOSD '14), Lugano, Switzerland, April 22 - 26, 2014},
  doi = {10.1145/2577080.2577094},
  isbn = {978-1-450-32772-5},
  month = {April},
  note = {Acceptance Rate: 35.0\%},
  numpages = {12},
  pages = {217--228},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rentschler2014a.pdf},
  publisher = {ACM},
  title = {{Designing Information Hiding Modularity for Model Transformation Languages}},
  url = {http://doi.acm.org/10.1145/2577080.2577094},
  year = {2014}
}
@inproceedings{rentschler2014b,
  _booktitle = {Proceedings of the 3rd Workshop on the Analysis of Model Transformations (AMT@MODELS 2014), Valencia, Spain, September 29, 2014},
  _pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rentschler2014b.pdf},
  author = {Andreas Rentschler and Dominik Werle and Qais Noorshams and Lucia Happe and Ralf Reussner},
  bibsource = {DBLP, http://dblp.uni-trier.de},
  booktitle = {Proceedings of the 3rd Workshop on the Analysis of Model Transformations co-located with the 17th International Conference on Model Driven Engineering Languages and Systems (AMT{}@{}MOD\-ELS '14), Valencia, Spain, September 29, 2014},
  editor = {Benoit Baudry and J{\"u}rgen Dingel and Levi Lucio and Hans Vangheluwe},
  issn = {1613-0073},
  month = {October},
  pages = {4--13},
  pdf = {http://ceur-ws.org/Vol-1277/1.pdf},
  publisher = {CEUR-WS.org},
  series = {CEUR Workshop Proceedings},
  title = {{Remodularizing Legacy Model Transformations with Automatic Clustering Techniques}},
  url = {http://nbn-resolving.de/urn:nbn:de:0074-1277-5},
  volume = {1277},
  year = {2014}
}
@inproceedings{reussner2005a,
  abstract = {Modeling the dependencies between provided and required services within a software component is necessary for several reasons, such as automated component adaptation and architectural dependency analysis. Parametric contracts for software components specify such dependencies and were successfully used for automated protocol adaptation and quality of service prediction. In this paper, a novel model for parametric contracts based on graph grammars is presented and a first definition of the compositionality of parametric contracts is given. Compared to the previously used finite state machine based formalism, the graph grammar formalism allows a more elegant formulation of parametric contract applications and considerably simpler implementations.},
  author = {Ralf Reussner and Jens Happe and Annegreth Habel},
  booktitle = {Fundamental Approaches to Software Engineering (FASE)},
  pages = {80--95},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{M}odelling {P}arametric {C}ontracts and the {S}tate {S}pace of {C}omposite {C}omponents by {G}raph {G}rammars},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2005a.pdf},
  volume = {3442},
  year = {2005}
}
@inproceedings{reussner2001b,
  author = {Reussner, Ralf H.},
  booktitle = {Tagungsband des Arbeitstreffens der GI Fachgruppen 2.1.4 und 2.1.9, Bad Honnef},
  editor = {Goerigk, Wolfgang},
  pages = {33--43},
  title = {{A}dapting {C}omponents and {P}redicting {A}rchitectural {P}roperties with {P}arameterised {C}ontracts},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2001b.pdf},
  year = {2001}
}
@inproceedings{reussner2002a,
  author = {Reussner, Ralf H.},
  booktitle = {Proceedings of the 29th Annual Conference in Current Trends in Theory and Practice of Informatics (SOFSEM 2002), Milovy, Tschechische Republik},
  editor = {Grosky, Bill and Plasil, Frantisek and Krenek, Ales},
  month = {November},
  pages = {20--40},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{C}ounter-{C}onstraint {F}inite {S}tate {M}achines: {A} new {M}odel for {R}esource-bounded {C}omponent {P}rotocols},
  volume = {2540},
  year = {2002}
}
@inproceedings{reussner2000d,
  abstract = {This paper presents a new model of software component interfaces, using an extension of finite states machines to describe (a) the protocol to use a component�s offered services, and (b) the sequences of calls to the external services the component requires to fulfill its offered services. With this model we integrate information into the interface of a software component to: (a) Check whether a component will be used correctly in its environment during system integration (i.e., before the component is actually used). (b) Adapt the interface of a component which describes the component�s offered services, in case the environment does not offer all resources the component requires to offer all its services. In this case the adapted component still offers a subset of its services, to the contrary of todays component systems, which do not allow any integration in this case at all.},
  author = {Reussner, Ralf H.},
  booktitle = {New Issues in Object Interoperability -- Proceedings of the ECOOP'~2000 Workshop on Object Interoperability},
  editor = {Hern{\'a}ndez, J. and Vallecillo, A. and Troya, J. M.},
  month = {June},
  day = {12--6},
  note = {Published by Universidad de Extremadura Dpto. Inform{\'a}tica},
  pages = {33--42},
  title = {{A}n {E}nhanced {M}odel for {C}omponent {I}nterfaces to {S}upport {A}utomatic and {D}ynamic {A}daption},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2000d.pdf},
  year = {2000}
}
@incollection{reussner2001e,
  author = {Reussner, Ralf H.},
  booktitle = {High Performance Computing in Science and Engineering 2000},
  editor = {Krause, E. and J{\"a}ger, W.},
  pages = {520--530},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Transactions of the High Performance Computing Center Stuttgart (HLRS)},
  title = {{R}ecent {A}dvances in {SK}a{MPI}},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2001e.pdf},
  year = {2001}
}
@inproceedings{reussner2003f,
  author = {Reussner, Ralf H.},
  booktitle = {Proceedings of the Eighth International Workshop on Component-Oriented Programming (WCOP'03)},
  editor = {Weck, Wolfgang and Bosch, Jan and Szyperski, Clemens},
  month = {June},
  title = {{C}ontracts and {Q}uality {A}ttributes of {S}oftware {C}omponents},
  year = {2003}
}
@inproceedings{reussner2001c,
  author = {Reussner, Ralf H.},
  booktitle = {Proceedings of the Sixth International Workshop on Component-Oriented Programming (WCOP'01)},
  editor = {Weck, Wolfgang and Bosch, Jan and Szyperski, Clemens},
  month = {June},
  title = {{T}he {U}se of {P}arameterised {C}ontracts for {A}rchitecting {S}ystems with {S}oftware {C}omponents},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2001c.pdf},
  year = {2001}
}
@inproceedings{reussner2001i,
  author = {Reussner, Ralf H.},
  booktitle = {34th Hawaiin International Conference on System Sciences},
  publisher = {IEEE},
  title = {{E}nhanced {C}omponent {I}nterfaces to {S}upport {D}ynamic {A}daption and {E}xtension},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2001i.pdf},
  year = {2001}
}
@inproceedings{reussner1999e,
  author = {Reussner, Ralf H.},
  booktitle = {Companion of the Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA '99)},
  note = {Extended abstract},
  title = {{D}ynamic {T}ypes for {S}oftware {C}omponents},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner1999e.pdf},
  year = {1999}
}
@inproceedings{reussner2004f,
  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.},
  author = {Reussner, Ralf H. and Becker, Steffen and Firus, Viktoria},
  booktitle = {Tagungsband der Net.ObjectDays 2004},
  month = {September},
  pages = {155--169},
  title = {{C}omponent {C}omposition with {P}arametric {C}ontracts},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2004f.pdf},
  year = {2004}
}
@inproceedings{reussner2004a,
  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.},
  author = {Reussner, Ralf H. and Firus, Viktoria and Becker, Steffen},
  booktitle = {Proceedings of the 9th International Workshop on Component-Oriented Programming (WCOP 04)},
  editor = {Weck, Wolfgang and Bosch, Jan and Szyperski, Clemens},
  title = {{P}arametric {P}erformance {C}ontracts for {S}oftware {C}omponents and their {C}ompositionality},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2004a.pdf},
  year = {2004}
}
@inproceedings{reussner1999a,
  abstract = {1We introduce a new type system, where the type of a component consists of two protocols � a call and a use protocol. We model these protocols by finite automata and show how those reflect component enhancement and adaption. Coupling is controlled by a meta-protocol, which calls the adaption and enhancement algorithms. These algorithms require type information of the components involved. This type information is provided by the meta-protocol using reflection. This mechanism allows automatic adaption of components in changing environments.},
  author = {Reussner, Ralf H. and Heuzeroth, Dirk},
  booktitle = {Proceedings of the OOPSLA'99 Workshop on Object Oriented Reflection and Software Engineering},
  title = {{A} {M}eta-{P}rotocol and {T}ype system for the {D}ynamic {C}oupling of {B}inary {C}omponents},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner1999a.pdf},
  year = {1999}
}
@inproceedings{reussner2001a,
  abstract = {Current development processes for parallel software often fail to deliver portable software. This is because these processes usually require a tedious tuning phase to deliver software of good performance. This tuning phase often is costly and results in machine specific tuned (i.e., less portable) software. Designing software for performance and portability in early stages of software design requires performance data for all targeted parallel hardware platforms. In this paper we present a publicly available database, which contains data necessary for software developers to design and implement portable and high performing MPI software.},
  author = {Reussner, Ralf H. and Hunzelmann, Gunnar T.},
  booktitle = {Computational Science--ICCS 2001, Proc. of ICCS 2001, International Conference on Computational Science, Part II, Special Session on Tools and Environments for Parallel and Distributed Programming, San Francisco, CA, 2001},
  editor = {Alexandrov, V. N. and Dongarra, J. J. and Juliano, B. A. and Renner, R. S. and Tan, C. J. K.},
  isbn = {3-540-42233-1},
  pages = {841--850},
  series = {Lecture Notes in Computer Science},
  title = {{A}chieving {P}erformance {P}ortability with {SK}a{MPI} for {H}igh-{P}erformance {MPI} {P}rograms},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2001a.pdf},
  volume = {2074},
  year = {2001}
}
@incollection{reussner2003a,
  abstract = {One of the motivations for specifying software architectures explicitly is the better prediction of system quality attributes. In this chapter we present an approach for determining the reliability of component-based software architectures. Our method is based on RADL (Rich Architecture Definition Language), an extension of DARWIN [16]. RADL places special emphasis on component interoperation and, in particular, on accounting for the effects of interoperation on system reliability. To achieve this, our methods use a notion of design-by-contract [19] for components, called parameterized contracts [26]. Our contracts involve finite state machines that allow software architects to define how a componentrsquos reliability will react to a deployment environment. We show how a system, built from contractually specified components, can be understood in terms of Markov models, facilitating system reliability analysis. We illustrate our approach with an e-commerce example and report about empirical measurements which confirm our analytical reliability prediction by means of monitoring in our reliability testbed.},
  author = {Reussner, Ralf H. and Poernomo, Iman H. and Schmidt, Heinz W.},
  booktitle = {Component-Based Software Quality: Methods and Techniques},
  editor = {Cechich, A. and Piattini, M. and Vallecillo, A.},
  pages = {287--325},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{R}easoning on {S}oftware {A}rchitectures with {C}ontractually {S}pecified {C}omponents},
  volume = {2693},
  year = {2003}
}
@inproceedings{reussner2002d,
  abstract = {The deployment of component oriented software approaches gains increasing importance in the computational sciences. Not only the promised increase of reuse makes components attractive, but also the possibilities of integrating different stand-alone programs into a distributed application. Middleware platforms facilitate the development of distributed applications by providing services and infrastructure. Component developers can thus benefit from a common standard to shape components towards and application designers from using pre-fabricated software components and shared platform services. Although such platforms claim to achieve fast and flexible development of distributed systems, they fall short in key requirements to reliability and interoperability in loosely coupled distributed systems. For example, many interoperability errors remain undetected during development and the adaptation and integration of of third-party components still requires major effort and cost. Partly this problem can be alleviated by the use of formal approaches to automatic interoperability checks and component adaptation. Our Reliable Architecture Description Language (RADL) is aimed at precisely this problem. In this paper we present key aspects of RADL used to specify component-based, compositional views of distributed applications. RADL involves a rich component model, enabling protocol information to be contained in interfaces. We focus on protocol-based notions of interoperability and adaptation, important for the construction of distributed systems with loosely coupled components.},
  author = {Reussner, Ralf H. and Poernomo, Iman H. and Schmidt, Heinz W.},
  booktitle = {Computational Science--ICCS 2002, Proc. of ICCS 2002, International Conference on Computational Science, Amsterdam, The Netherlands, 2002},
  editor = {Sloot, P. and Dongarra, J. J. and Tan, C. J. K.},
  pages = {854--862},
  series = {Lecture Notes in Computer Science},
  title = {{U}sing the {T}rust{ME} {T}ool {S}uite for {A}utomatic {C}omponent {P}rotocol {A}daptation},
  volume = {2330},
  year = {2002}
}
@inproceedings{reussner2003c,
  abstact = {We argue that quality attributes of a component are most often not a constant property. Muchmore, the quality of a component heavily depends on the specific usage context. Therefore, we present a specification method for contractually specified components which does not specify quality attributes as constants but as functions to be evaluated at deployment. The contribution of this paper is threefold: (a) We clarify the term �contractual use of components�, a term which is often misstated or used inconsistently in current literature. We therefore translate the �design-by-contract�-principle to components. (b) We generalise component contracts to parameterised contracts, taking the mentioned context-dependencies of components into account. (c) We finally demonstrate how parameterised contracts are used to compute the reliability of software components. Results from an empirical evaluation confirm the strong context-dependency of a component�s reliability but also show that parameterised contracts for reliability prediction are easy to specify by automated control-flow analysis.},
  author = {Reussner, Ralf H. and Poernomo, Iman H. and Schmidt, Heinz W.},
  booktitle = {Proceedings of the Eigth International Workshop on Component-Oriented Programming (WCOP'03)},
  editor = {Weck, Wolfgang and Bosch, Jan and Szyperski, Clemens},
  month = {June},
  title = {{C}ontracts and {Q}uality {A}ttributes for {S}oftware {C}omponents},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2003c.pdf},
  year = {2003}
}
@inproceedings{reussner1998a,
  author = {Reussner, Ralf H. and Sanders, Peter and Prechelt, Lutz and M{\"u}ller, Matthias},
  booktitle = {Recent advances in parallel virtual machine and message passing interface: 5th European {PVM}/{MPI} Users' Group Meeting, Liverpool, UK, September 7--9, 1998},
  editor = {Alexandrov, V. and Dongarra, J. J.},
  isbn = {978-3-540-65041-6},
  pages = {52--59},
  publisher = {Springer-Verlag Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{SKaMPI}: {A} {D}etailed, {A}ccurate {MPI} {B}enchmark},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner1998a.pdf},
  volume = {1497},
  year = {1998}
}
@inproceedings{reussner2001h,
  author = {Reussner, Ralf H. and Sanders, Peter and Tr{\"a}ff, Jesper Larsson},
  booktitle = {International Workshop on Performance-oriented Application Development for Distributed Architectures},
  title = {{M}ulti-{P}latform {B}enchmarking of the {MPI} {C}ommunications {I}nterface},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2001h.pdf},
  year = {2001}
}
@inproceedings{reussner2002c,
  absract = {This position paper presents an approach for predicting functional and extra-functional properties of layered software component architectures. Our approach is based on parameterised contracts a generalisation of design-bycontract. The main contributions of the paper are twofold. Firstly, it attempts to clarify the meaning of �contractual use of components� a term sometimes used loosely � or even inconsistently � in current literature. Secondly, we demonstrate how to deploy parameterised contracts to predict properties of component architectures with non-cyclic dependencies.},
  author = {Reussner, Ralf H. and Schmidt, Heinz W.},
  booktitle = {Workshop On Component-Based Software Engineering (in association with 9th IEEE Conference and Workshops on Engineering of Computer-Based Systems), Lund, Sweden, 2002},
  editor = {Crnkovic, Ivica and Larsson, Stig and Stafford, Judith},
  title = {{U}sing {P}arameterised {C}ontracts to {P}redict {P}roperties of {C}omponent {B}ased {S}oftware {A}rchitectures},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/reussner2002c.pdf},
  year = {2002}
}
@inproceedings{reussner2000c,
  author = {Reussner, Ralf H. and Tr{\"a}ff, Jesper L. and Hunzelmann, Gunnar},
  booktitle = {Recent advances in parallel virtual machine and message passing interface: 7th European {PVM}/{MPI} Users' Group Meeting, Balatonf{\"u}red, Hungary, September 10--13, 2000},
  editor = {Dongarra, J. J. and Kacsuk, P. and Podhorszki, N.},
  pages = {10--18},
  series = {Lecture Notes in Computer Science},
  title = {{A} {B}enchmark for {MPI} {D}erived {D}atatypes},
  url = {http://portal.acm.org/citation.cfm?id=648137.746641&coll=GUIDE&dl=GUIDE},
  volume = {1908},
  year = {2000}
}
@inproceedings{schmidt2002a,
  abstract = {In general few components are reused as they are. Often, available components are incompatible with what is required. This necessitates component adaptations or the use of adapters between components. In this paper we develop algorithms for the synthesis of adapters, coercing incompatible components into meeting requirements. We concentrate on adapters for concurrent systems, where adapters are able to resolve synchronisation problems of concurrent components. A new interface model for components, which includes protocol information, allows us to generate these adapters semi-automatically.},
  author = {Schmidt, Heinz W. and Reussner, Ralf H.},
  booktitle = {Proceedings of the Fifth IFIP International Conference on Formal Methods for Open Object-Based Distributed Systems},
  title = {{G}enerating {A}dapters for {C}oncurrent {C}omponent {P}rotocol {S}ynchronisation},
  url = {http://sdqweb.ipd.uka.de/publications/pdfs/schmidt2002a.pdf},
  year = {2002}
}
@inproceedings{schmidt2002b,
  author = {Schmidt, Heinz W. and Reussner, Ralf H.},
  booktitle = {Proceedings of the ICSE Workshop of Component Oriented Software Engineering (CBSE5)},
  publisher = {IEEE},
  title = {{P}arameterised {C}ontracts and {A}daptor {S}ynthesis},
  year = {2002}
}
@inproceedings{stammel09a,
  abstract = {In their lifetime software systems usually need to be adapted in order to fit in a changing environment or to cover new required functionality. The effort necessary for implementing changes is related to the maintainability of the software system. Therefore, maintainability is an important quality aspect of software systems. Today Software Architecture plays an important role in achieving software quality goals. Therefore, it is useful to evaluate software architectures regarding their impact on the quality of the program. However, unlike other quality attributes, such as performance or reliability, there is relatively less work on the impact of the software architecture on maintainability in a quantitative manner. In particular, the cost of software evolution not only stems from software-development activities, such as reimplementation, but also from software management activities, such as re-deployment, upgrade installation, etc. Most metrics for software maintainability base on code of object-oriented designs, but not on architectures, and do not consider costs from software management activities. Likewise, existing current architectural maintainability evaluation techniques manually yield just qualitative (and often subjective) results and also do concentrate on software (re-)development costs. In this paper, we present KAMP, the Karlsruhe Architectural Maintainability Prediction Method, a quantitative approach to evaluate the maintainability of software architectures. Our approach estimates the costs of change requests for a given architecture and takes into account re-implementation costs as well as re-deployment and upgrade activities. We combine several strengths of existing approaches. First, our method evaluates maintainability for concrete change requests and makes use of explicit architecture models. Second, it estimates change efforts using semi-automatic derivation of work plans, bottom-up effort estimation, and guidance in investigation of estimation supports (e.g. design and code properties, team organization, development environment, and other influence factors).},
  author = {Stammel, Johannes and Reussner, Ralf},
  booktitle = {Proceedings of the 1. Workshop des GI-Arbeitskreises Langlebige Softwaresysteme (L2S2): "Design for Future - Langlebige Softwaresysteme"},
  editor = {Engels, Gregor and Reussner, Ralf and Momm, Christof and Sauer, Stefan},
  pages = {87-98},
  title = {KAMP: Karlsruhe Architectural Maintainability Prediction},
  url = {http://ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-537/},
  year = {2009}
}
@incollection{vaupel2013b,
  author = {Vaupel, Robert and Noorshams, Qais and Kounev, Samuel and Reussner, Ralf},
  booktitle = {Computer Performance Engineering. 10th European Workshop, EPEW 2013, Venice, Italy, September 16-17, 2013. Proceedings},
  doi = {10.1007/978-3-642-40725-3_20},
  editor = {Balsamo, Maria Simonetta and Knottenbelt, William J. and Marin, Andrea},
  isbn = {978-3-642-40724-6},
  keywords = {Business Transactions; Performance; Prediction},
  pages = {263-275},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/vaupel2013b.pdf},
  publisher = {Springer Berlin Heidelberg},
  series = {Lecture Notes in Computer Science},
  title = {{Using Queuing Models for Large System Migration Scenarios -- An Industrial Case Study with IBM System z}},
  url = {http://dx.doi.org/10.1007/978-3-642-40725-3_20},
  volume = {8168},
  year = {2013}
}
@incollection{worsch2002a,
  address = {London, UK},
  author = {Thomas Worsch and Ralf Reussner and Werner Augustin},
  booktitle = {Proceedings of the 9th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface},
  isbn = {3-540-44296-0},
  pages = {271--279},
  publisher = {Springer-Verlag Berlin Heidelberg},
  title = {{O}n {B}enchmarking {C}ollective {MPI} {O}perations},
  year = {2002}
}
@inproceedings{busch2015a,
  address = {New York, NY, USA},
  author = {Busch, Axel and Noorshams, Qais and Kounev, Samuel and Koziolek, Anne and Reussner, Ralf and Amrehn, Erich},
  booktitle = {Proceedings of the ACM/SPEC International Conference on Performance Engineering},
  doi = {10.1145/2668930.2688050},
  location = {Austin, Texas, USA},
  note = {Acceptance Rate (Full Paper): 15/56 = 27\%.},
  pages = {265--276},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/busch2015a.pdf},
  publisher = {ACM},
  series = {ICPE '15},
  title = {{Automated Workload Characterization for I/O Performance Analysis in Virtualized Environments}},
  url = {http://dx.doi.org/10.1145/2668930.2688050},
  year = {2015},
  abstract = {Next generation IT infrastructures are highly driven by virtualization technology. The latter enables flexible and efficient resource sharing allowing to improve system agility and reduce costs for IT services. Due to the sharing of resources and the increasing requirements of modern applications on I/O processing, the performance of storage systems is becoming a crucial factor. In particular, when migrating or consolidating different applications the impact on their performance behavior is often an open question. Performance modeling approaches help to answer such questions, a prerequisite, however, is to find an appropriate workload characterization that is both easy to obtain from applications as well as sufficient to capture the important characteristics of the application. In this paper, we present an automated workload characterization approach that extracts a workload model to represent the main aspects of I/O-intensive applications using relevant workload parameters, e.g., request size, read-write ratio, in virtualized environments. Once extracted, workload models can be used to emulate the workload performance behavior in real-world scenarios like migration and consolidation scenarios. We demonstrate our approach in the context of two case studies of representative system environments. We present an in-depth evaluation of our workload characterization approach showing its effectiveness in workload migration and consolidation scenarios. We use an IBM System z equipped with an IBM DS8700 and a Sun Fire system as state-of-the-art virtualized environments. Overall, the evaluation of our workload characterization approach shows promising results to capture the relevant factors of I/O-intensive applications.}
}
@inproceedings{Durdik2014a,
  author = {Zoya Durdik and Ralf Reussner},
  booktitle = {{Proceedings of Software Engineering (SE2014)}},
  title = {{On the Appropriate Rationale for Using Design Patterns and Pattern Documentation}},
  year = {2014}
}
@inproceedings{rostami2015a,
  acmid = {2737198},
  address = {New York, NY, USA},
  author = {Rostami, Kiana and Stammel, Johannes and Heinrich, Robert and Reussner, Ralf},
  booktitle = {Proceedings of the 11th International ACM SIGSOFT Conference on Quality of Software Architectures},
  isbn = {978-1-4503-3470-9},
  location = {Montreal, QC, Canada},
  numpages = {10},
  pages = {21--30},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rostami2015a.pdf},
  publisher = {ACM},
  series = {QoSA '15},
  title = {Architecture-based Assessment and Planning of Change Requests},
  url = {http://dl.acm.org/citation.cfm?id=2737198},
  year = {2015},
  tags = {refereed}
}
@inproceedings{rostami2017a,
  author = {Kiana Rostami and Johannes Stammel and Robert Heinrich and Ralf Reussner},
  title = {Change Impact Analysis by Architecture-based Assessment and Planning},
  booktitle = {Software Engineering 2017, Fachtagung des GI-Fachbereichs Softwaretechnik, 21.-24. Februar 2017, Hannover, Deutschland},
  url = {https://www.gi.de/fileadmin/redaktion/2017_LNI/lni-p-267-komplett.pdf},
  pages = {69--70},
  tags = {refereed},
  year = {2017}
}
@inproceedings{rostami2017b,
  author = {Kiana Rostami and Robert Heinrich and Axel Busch and Ralf Reussner},
  booktitle = {2017 IEEE International Conference on Software Architecture (ICSA2017)},
  title = {{Architecture-based Change Impact Analysis in Information Systems and Business Processes}},
  pages = {179--188},
  publisher = {IEEE},
  tags = {refereed},
  year = {2017},
  url = {https://doi.org/10.1109/ICSA.2017.17},
  doi = {10.1109/ICSA.2017.17},
  isbn = {978-1-5090-5729-0},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rostami2017b.pdf},
  abstract = {Business processes as well as software systems face various changes during their lifetime. As they mutually influence each other, business processes and software systems have to be modified in co-evolution. Thus, to adequately predict the change impact, it is important to consider the complex mutual dependencies of both domains. However, existing approaches are limited to analyzing the change propagation in software systems or business processes in isolation. In this paper, we present a tool-supported approach to estimate the change propagation caused by a change request in business processes or software systems based on the software architecture and the process design. We focus on the mutual dependencies regarding the change propagation between both domains. In the evaluation, we apply our approach to a community case study to demonstrate the quality of results in terms of precision, recall, and coverage.}
}
@inproceedings{rostami2017c,
  author = {Kiana Rostami and Michael Langhammer and Axel Busch and Joshua Gleitze and Robert Heinrich and Ralf Reussner},
  booktitle = {19. Workshop Software-Reengineering und-Evolution},
  title = {Reconstructing Development Artifacts for Change Impact Analysis},
  issn = {0720-8928},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rostami2017c.pdf},
  tags = {refereed},
  year = {2017},
  abstract = {Software architectural models are widely used to represent the structure of software systems. Software systems need to evolve continuously during their life time, for instance, to adapt to new requirements. During the evolution various change requests have to be implemented. However, analysing the architecture of a system alone does not provide sufficient information for an adequate estimation of the impact resulting by such change requests. In addition, many other development artifacts, such as test cases, have to be considered. Creating models of these artifacts by hand is time-consuming and error-prone. In this paper, we present an approach that automatically extracts development artifacts and annotates them to a software architectural model.}
}
@inproceedings{rostami2018a,
  author = {Kiana Busch and Robert Heinrich and Axel Busch and Ralf Reussner},
  title = {{Automated Analysis of the Co-evolution of Software Systems and Business Processes}},
  booktitle = {Software Engineering 2018, Fachtagung des GI-Fachbereichs Softwaretechnik, 06.-09. March 2018, Ulm, Deutschland},
  tags = {refereed},
  year = {2018},
  abstract = {Software systems are an essential part of business processes. As business processes andthe corresponding software systems mutually affect each other, they co-evolve during their life cycle.Thus, to adequately predict the impact of a change, their mutual dependencies have to be considered.However, existing approaches to change propagation analysis consider one domain in isolation andneglect the mutual dependencies between the domains. In this paper, we propose the KarlsruheArchitectural Maintainability Prediction for Business Processes (KAMP4BP) to analyze the changepropagation in business processes and the corresponding software systems.},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/rostami2018a.pdf}
}
@inproceedings{rostami2018b,
  author = {Kiana Busch and Dominik Werle and Martin L\"{o}per and Robert Heinrich and Ralf Reussner and Birgit Vogel-Heuser},
  booktitle = {14th IEEE International Conference on Automation Science and Engineering (CASE)},
  publisher = {IEEE},
  title = {A Cross-Disciplinary Language for Change Propagation Rules},
  year = {2018},
  abstract = {Automated production systems are in operation for a long time and are continuously being changed. Therefore, for these systems it is important to have the ability to react efficiently to changes. Change propagation analysis approaches allow predicting the effects of changes before they are actually implemented. Such approaches often use predefined change propagation rules that indicate how the change propagates in a system. However, the change propagation rules used by these approaches are limited to a discipline such as information systems, to the structure of system elements in a discipline, or to a programming language such as Java. In this paper, we present a cross-disciplinary language to specify change propagation rules. The proposed language is independent of a particular discipline, structure of system elements, or programming languages. To show the improvement of the readability and the coverage of the change propagation rules with our language, we apply it to two existing approaches to change propagation analysis for the electronic and mechanical components, as well as control software of automated production systems.},
  tags = {refereed},
  pages = {1099-1104}
}
@inproceedings{rostami2018c,
  author = {Kiana Busch and Jannis R{\"a}tz and Sandro Koch and Robert Heinrich and Ralf Reussner and Suhyun Cha and Matthias Seitz and Birgit Vogel-Heuser},
  booktitle = {IECON 2018 - 44th Annual Conference of the IEEE Industrial Electronics Society},
  publisher = {IEEE},
  title = {A Model-Based Approach to Calculate Maintainability Task Lists of PLC Programs for Factory Automation},
  year = {2018},
  tags = {refereed},
  pages = {2949-2954},
  abstract = {As long-living systems, automated Production Systems (aPS) have to be adapted due to optimization and inclusion of new features in their life cycle over decades. aPS consist of electrical, mechanical, and software components, which have a complex interaction and mutual dependencies. Consequently, these heterogeneous components have to be maintained together. Thus, the change propagation analysis in aPS is a challenging task. Existing approaches to change impact analysis lack tool-support and require expert knowledge in the aPS, as well as in the machine under study and its environment. This paper presents a tool-supported approach to change propagation analysis in aPS based on initial change requests. Our approach calculates a list of maintainability tasks to implement change requests in control programs deployed on Programmable Logic Controllers (PLC). To evaluate the quality and coverage of the generated task lists, we applied our approach to a community case study.},
  keywords = {control engineering computing;factory automation;production engineering computing;programmable controllers;public domain software;software maintenance;software tools;programmable logic controllers;features inclusion;change requests;features optimization;automated production systems;control programs;maintainability tasks;tool-supported approach;expert knowledge;change propagation analysis;heterogeneous components;mutual dependencies;complex interaction;life cycle;factory automation;PLC programs;maintainability task lists;model-based approach;Task analysis;IEC;Software;IEC Standards;Analytical models;Object oriented modeling;Adaptation models;Change Impact Analysis;PLC Program;IEC},
  doi = {10.1109/IECON.2018.8591302},
  issn = {2577-1647},
  month = {Oct}
}
@incollection{Bougouffa2019a,
  author = {Bougouffa, Safa and Busch, Kiana and Heinrich, Robert and Haubeck, Christopher and Cha, Suhyun and Reussner, Ralf and Vogel-Heuser, Birgit},
  editor = {Reussner, Ralf and Goedicke, Michael and Hasselbring, Wilhelm and Vogel-Heuser, Birgit and Keim, Jan and M{\"a}rtin, Lukas},
  title = {Introduction to Case Studies},
  booktitle = {Managed Software Evolution},
  year = {2019},
  publisher = {Springer International Publishing},
  address = {Cham},
  pages = {37--73},
  abstract = {In this chapter we provide an overview on the demonstrators of the SPP1593's case studies. To study evolution, it is important to collaborate by a joint research that supports sharing of knowledge and resources. In order to support joint research, collaboration and replication in empirical studies based on common evolution scenarios and artefacts are required. These studies are rarely reusable as important artefacts (e.g. requirements, design decisions, architectural knowledge, or context knowledge) are often not provided to the community. To overcome these shortcomings in the SPP1593, two case studies are used: CoCoME, which represents a knowledge base for collaborative empirical research on information system evolution, and the xPPU, which represents a lab-size demonstrator for investigating research on evolution in machine and plant automation. Finally, to blur the boundaries between pure information systems and automated production systems, both case studies were integrated as Industry 4.0 demonstrator.},
  isbn = {978-3-030-13499-0},
  doi = {10.1007/978-3-030-13499-0_4},
  url = {https://doi.org/10.1007/978-3-030-13499-0_4},
  tags = {chapter}
}
@incollection{Bougouffa2019b,
  author = {Bougouffa, Safa and Busch, Kiana and Heinrich, Robert and Hoorn, Andr{\'e} van and Konersmann, Marco and Seifermann, Stephan and Ta{\c{s}}polato{\u{g}}lu, Emre and Ocker, Felix and Vargas, Cyntia and Fahimipirehgalin, Mina and Reussner, Ralf and Vogel-Heuser, Birgit},
  editor = {Reussner, Ralf and Goedicke, Michael and Hasselbring, Wilhelm and Vogel-Heuser, Birgit and Keim, Jan and M{\"a}rtin, Lukas},
  title = {Case Studies for the Community},
  booktitle = {Managed Software Evolution},
  year = {2019},
  publisher = {Springer International Publishing},
  address = {Cham},
  pages = {335--374},
  abstract = {This chapter provides an overview on the design aim of the SPP1593's case studies. The provided case studies in production automation from shop floor to enterprise resource planning up to commercial systems of a supermarket provide more than 50 different well-documented evolution scenarios. For these scenarios, different documents on the life cycle and the software disciplines are provided to the community and further developed by the SPP1593 participants. These scenarios are available in various forms such as architecture and behaviour models in SysML/UML, control software of the plant, as well as frontend user GUI considering non-functional aspects like maintainability and security. The community case studies aim at providing the following benefits: (1) by building upon existing specifications and settings, less effort in scenario definition, study setup, and execution is required, (2) a common case study increases the comparability of evaluation results to those of other researchers and leads to increased evaluation confidence, and (3) a common case study also increases community acceptance by interaction with other researchers.},
  isbn = {978-3-030-13499-0},
  doi = {10.1007/978-3-030-13499-0_12},
  url = {https://doi.org/10.1007/978-3-030-13499-0_12},
  tags = {chapter}
}
@inproceedings{heinrich2014,
  author = {Robert Heinrich and Eric Schmieders and Reiner Jung and Kiana Rostami and Andreas Metzger and Wilhelm Hasselbring and Ralf H. Reussner and Klaus Pohl},
  booktitle = {Proceedings of the 9th Workshop on Models@run.time co-located with 17th International Conference on Model Driven Engineering Languages and Systems (MODELS 2014), Valencia, Spain, September 30, 2014.},
  pages = {41--46},
  title = {Integrating Run-time Observations and Design Component Models for Cloud System Analysis},
  url = {http://ceur-ws.org/Vol-1270/mrt14_submission_8.pdf},
  year = {2014},
  tags = {refereed}
}
@inproceedings{heinrich2015architecture,
  author = {Robert Heinrich and Kiana Rostami and Johannes Stammel and Thomas Knapp and Ralf Reussner},
  booktitle = {Softwaretechnik-Trends},
  pdf = {http://pi.informatik.uni-siegen.de/stt/35_2/01_Fachgruppenberichte/22_R_Heinrich.pdf},
  title = {Architecture-based Analysis of Changes in Information System Evolution},
  volume = {35(2)},
  tags = {refereed},
  year = {2015}
}
@inproceedings{stier2015a,
  author = {Stier, Christian and Koziolek, Anne and Groenda, Henning and Reussner, Ralf},
  booktitle = {Proceedings of the 9th European Conference on Software Architecture (ECSA '15)},
  location = {Dubrovnik/Cavtat, Croatia},
  note = {Acceptance Rate (Full Paper): 15/80 = 18.8\%},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/stier2015a.pdf},
  publisher = {Springer},
  series = {Lecture Notes in Computer Science},
  title = {{Model-Based Energy Efficiency Analysis of Software Architectures}},
  year = {2015},
  doi = {10.1007/978-3-319-23727-5_18},
  url = {http://dx.doi.org/10.1007/978-3-319-23727-5_18},
  abstract = {Design-time quality analysis of software architectures evaluates the impact of design decisions in quality dimensions such as performance. Architectural design decisions decisively impact the energy efficiency (EE) of software systems. Low EE not only results in higher operational cost due to power consumption. It indirectly necessitates additional capacity in the power distribution infrastructure of the target deployment environment. Methodologies that analyze EE of software systems are yet to reach an abstraction suited for architecture-level reasoning. This paper outlines a model-based approach for evaluating the EE of software architectures. First, we present a model that describes the central power consumption characteristics of a software system. We couple the model with an existing model-based performance prediction approach to evaluate the consumption characteristics of a software architecture in varying usage contexts. Several experiments show the accuracy of our architecture-level consumption predictions. Energy consumption predictions reach an error of less than 5.5% for stable and 3.7% for varying workloads. Finally, we present a round-trip design scenario that illustrates how the explicit consideration of EE supports software architects in making informed trade-off decisions between performance and EE.}
}
@inproceedings{heinrich2015platform,
  author = {Heinrich, Robert and G{\"a}rtner, Stefan and Hesse, Tom-Michael and Ruhroth, Thomas and Reussner, Ralf and Schneider, Kurt and Paech, Barbara and J{\"u}rjens, Jan},
  booktitle = {27th International Conference on Software Engineering and Knowledge Engineering},
  pages = {415--420},
  pdf = {http://ksiresearchorg.ipage.com/seke/seke15paper/seke15paper_66.pdf},
  title = {A Platform for Empirical Research on Information System Evolution},
  note = {Acceptance Rate (Full Paper) = 29\%.},
  year = {2015}
}
@inproceedings{vogel-heuser2015a,
  author = {Birgit Vogel-Heuser and Stefan Feldmann and Jens Folmer and Susanne R\"osch and Robert Heinrich and Kiana Rostami and Ralf H. Reussner},
  booktitle = {IEEE International Conference on Systems, Man, and Cybernetics},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/vogel-heuser2015a.pdf},
  title = {Architecture-based Assessment and Planning of Software Changes in Information and Automated Production Systems},
  url = {http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=7379262},
  doi = {10.1109/SMC.2015.130},
  tags = {refereed},
  year = {2015}
}
@inproceedings{heinrich2015e,
  author = {Robert Heinrich and Reiner Jung and Eric Schmieders and Andreas Metzger and Wilhelm Hasselbring and Ralf Reussner and Klaus Pohl},
  booktitle = {IEEE 9th Symposium on the Maintenance and Evolution of Service-Oriented Systems and Cloud-Based Environments},
  publisher = {IEEE},
  title = {Architectural Run-Time Models for Operator-in-the-Loop Adaptation of Cloud Applications},
  url = {http://eprints.uni-kiel.de/29742/1/MESOCA2015.pdf},
  year = {2015}
}
@inproceedings{strittmatter2015a,
  author = {Strittmatter, Misha and Rostami, Kiana and Heinrich, Robert and Reussner, Ralf},
  booktitle = {2nd International Workshop on Model-Driven Engineering for Component-Based Systems (ModComp)},
  publisher = {CEUR},
  tags = {refereed},
  title = {A Modular Reference Structure for Component-based Architecture Description Languages},
  url = {http://ceur-ws.org/Vol-1463/paper6.pdf},
  slides = {http://sdqweb.ipd.kit.edu/publications/pdfs/strittmatter2015a_slides.pdf},
  year = {2015},
  pages = {36--41}
}
@inproceedings{seifermann2016b,
  author = {Seifermann, Stephan and Taspolatoglu, Emre and Heinrich, Robert and Reussner, Ralf},
  series = {Softwaretechnik-Trends Band 36 Heft 1},
  booktitle = {3rd Collaborative Workshop on Evolution and Maintenance of Long-Living Software Systems},
  title = {Challenges in Secure Software Evolution - The Role of Software Architecture},
  year = {2016},
  pages = {8--11},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/seifermann2016b.pdf}
}
@inproceedings{ananieva2018a,
  author = {Sofia Ananieva and Heiko Klare and Erik Burger and Ralf Reussner},
  title = {Variants and Versions Management for Models with Integrated Consistency Preservation},
  booktitle = {Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems (VAMOS 2018)},
  year = {2018},
  month = {March},
  isbn = {978-1-4503-5398-4},
  location = {Madrid, Spain},
  pages = {3--10},
  numpages = {8},
  url = {http://doi.acm.org/10.1145/3168365.3168377},
  doi = {10.1145/3168365.3168377},
  publisher = {ACM},
  address = {New York, NY, USA},
  keywords = {Delta-Based Consistency Preservation, Software Product Lines, Variability Management},
  tags = {Vitruv},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/ananieva2018a.pdf}
}
@inproceedings{langhammer2016a,
  author = {Michael Langhammer and Arman Shahbazian and Nenad Medvidovic and Ralf H. Reussner},
  booktitle = {2016 13th Working IEEE/IFIP Conference on Software Architecture (WICSA)},
  title = {Automated Extraction of Rich Software Models from Limited System Information},
  year = {2016},
  pages = {99-108},
  keywords = {Analytical models;Calculators;Computer architecture;Phase change materials;Predictive models;Software;Unified modeling language},
  doi = {10.1109/WICSA.2016.35},
  month = {April}
}
@inproceedings{vogel-heuser2016a,
  author = {Birgit Vogel-Heuser and Thomas Simon and Jens Folmer and Robert Heinrich and Kiana Rostami and Ralf H. Reussner},
  booktitle = {2016 IEEE 14th International Conference on Industrial Informatics (INDIN)},
  title = {Towards a common classification of changes for information and automated production systems as precondition for maintenance effort estimation},
  year = {2016},
  pages = {166-172},
  tags = {refereed},
  doi = {10.1109/INDIN.2016.7819152}
}
@inproceedings{busch2016b,
  author = {Axel Busch and Qais Noorshams and Samuel Kounev and Anne Koziolek and Ralf Reussner and Erich Amrehn},
  title = {Automated Workload Characterization for I/O Performance Analysis in Virtualized Environments},
  booktitle = {Software Engineering 2016, Fachtagung des GI-Fachbereichs Softwaretechnik},
  pages = {27--28},
  year = {2016},
  url = {http://subs.emis.de/LNI/Proceedings/Proceedings252/article48.html},
  pdf = {http://subs.emis.de/LNI/Proceedings/Proceedings252/27.pdf}
}
@inproceedings{MBKR16,
  author = {Lukas M{\"{a}}rtin and Hauke Baller and Anne Koziolek and Ralf H. Reussner},
  title = {Fault-aware Pareto Frontier Exploration for Dependable System Architectures},
  booktitle = {Proceedings of the 3rd International Workshop on Interplay of Model-Driven and Component-Based Software Engineering (ModComp) @ MoDELS 2016},
  year = {2016},
  url = {http://ceur-ws.org/Vol-1723/},
  pdf = {http://ceur-ws.org/Vol-1723/4.pdf}
}
@inproceedings{kienzle2016a,
  author = {J\"{o}rg Kienzle and Anne Koziolek and Axel Busch and Ralf Reussner},
  title = {Towards Concern-Oriented Design of Component-Based Systems},
  booktitle = {3rd International Workshop on Interplay of Model-Driven and Component-Based Software Engineering},
  location = {Saint Malo, France},
  publisher = {CEUR},
  year = {2016},
  month = {October},
  tags = {refereed},
  url = {http://ceur-ws.org/Vol-1723/},
  pdf = {http://ceur-ws.org/Vol-1723/5.pdf},
  abstract = {Component-based software engineering (CBSE) is a modern way of developing software that is based on defining, implementing and composing loosely coupled, independent components, thus increasing modularity, analysability, separation of concerns and reuse. However, separation of concerns is sometimes difficult to achieve in CBSE, as some concerns might crosscut several components. Furthermore, reuse of components is sometimes limited, in particular because component developers make certain implementation choices that are incompatible with the non-functional requirements of the application that is being built. In this paper we outline how to integrate CBSE and concern-oriented reuse (CORE), a novel reuse paradigm that extends Model-Driven Engineering (MDE) with best practices from aspect-oriented software composition and Software Product Lines (SPL). Concretely, we outline how to combine the Palladio Component Model (PCM) capable of expressing complex software architectures with CORE class and sequence diagrams for low-level design. As a result, multiple solutions for addressing concerns that might even crosscut component boundaries can be modularized in a reusable way, and integrated with applications that reuse them using aspect-oriented techniques. Additionally, thanks to CORE, component developers can avoid premature decision making when reusing existing libraries during implementation.}
}
@inproceedings{klare2017models,
  author = {Heiko Klare and Erik Burger and Max E. Kramer and Michael Langhammer and Timur Sa{\u{g}}lam and Ralf Reussner},
  title = {Ecoreification: Making Arbitrary Java Code Accessible to Metamodel-Based Tools},
  booktitle = {Proceedings of the ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS 2017)},
  year = {2017},
  month = {September},
  day = {17--22},
  location = {Austin, Texas},
  publisher = {IEEE Computer Society},
  address = {Washington, DC, USA},
  doi = {10.1109/MODELS.2017.30},
  url = {https://doi.org/10.1109/MODELS.2017.30},
  pdf = {https://sdqweb.ipd.kit.edu/publications/pdfs/klare2017models.pdf},
  tags = {Vitruv,Saglam}
}
@inproceedings{mazkatli2017ase,
  title = {{Automotive Systems Modelling with Vitruvius}},
  author = {Mazkatli, Manar and Burger, Erik and Koziolek, Anne and Reussner, Ralf H.},
  booktitle = {INFORMATIK 2017},
  venue = {Chemnitz},
  year = {2017},
  isbn = {978-3-88579-669-5},
  issn = {1617-5468},
  pages = {1487--1498},
  volume = {P-275},
  doi = {10.18420/in2017_148},
  publisher = {Gesellschaft für Informatik, Bonn},
  series = {Lecture Notes in Informatics (LNI)},
  editors = {Maximilian Eibl and Martin Gaedke},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/mazkatli2017ase.pdf},
  url = {https://dx.doi.org/10.18420/in2017_148},
  tags = {Vitruv}
}
@inproceedings{yurchenko2017architecture,
  title = {{Architecture-Driven Reduction of Specification Overhead for Verifying Confidentiality in Component-Based Software Systems}},
  author = {Yurchenko, Kateryna and Behr, Moritz and Klare, Heiko and Kramer, Max and Reussner, Ralf},
  booktitle = {Proceedings of {MODELS} 2017 Satellite Event (MoDeVVa Workshop), co-located with {ACM/IEEE} 20th International Conference on Model Driven Engineering Languages and Systems ({MODELS}) 2017)},
  year = {2017},
  month = {September},
  pages = {321--323},
  publisher = {CEUR-WS},
  volume = {2019},
  issn = {1613-0073},
  pdf = {http://ceur-ws.org/Vol-2019/modevva_4.pdf},
  tags = {Vitruv}
}
@inproceedings{stier2018a,
  title = {{Rapid Testing of IaaS Resource Management Algorithms via Cloud Middleware Simulation}},
  titleaddon = {(Short Paper)},
  author = {Christian Stier and J\"{o}rg Domaschka and Anne Koziolek and Sebastian Krach and Jakub Krzywda and Ralf Reussner},
  booktitle = {Proceedings of the 9th ACM/SPEC International Conference on Performance Engineering},
  series = {ICPE '18},
  isbn = {978-1-4503-5095-2},
  location = {Berlin, Germany},
  publisher = {ACM},
  address = {New York, NY, USA},
  year = {2018},
  numpages = {8},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/stier2018a.pdf},
  pages = {184--191},
  url = {http://doi.acm.org/10.1145/3184407.3184428},
  doi = {10.1145/3184407.3184428},
  keywords = {IaaS middleware simulation, cloud simulation, performance model extraction, performance simulation, power consumption prediction, simulation-based testing of resource management algorithms}
}
@inproceedings{alpers2018a,
  author = {Alpers, Sascha and Pilipchuk, Roman and Oberweis, Andreas and Reussner, Ralf},
  booktitle = {Proceedings of the 4th International Conference on Information Systems Security and Privacy - Volume 1: ICISSP},
  title = {Identifying Needs for a Holistic Modelling Approach to Privacy Aspects in Enterprise Software Systems},
  year = {2018},
  pages = {74--82},
  volume = {1},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/alpers2018a.pdf}
}
@inproceedings{gotin2018a,
  author = {Gotin, Manuel and L\"{o}sch, Felix and Heinrich, Robert and Reussner, Ralf},
  title = {Investigating Performance Metrics for Scaling Microservices in CloudIoT-Environments},
  booktitle = {Proceedings of the 2018 ACM/SPEC International Conference on Performance Engineering},
  series = {ICPE '18},
  year = {2018},
  isbn = {978-1-4503-5095-2},
  location = {Berlin, Germany},
  pages = {157--167},
  numpages = {11},
  url = {http://doi.acm.org/10.1145/3184407.3184430},
  doi = {10.1145/3184407.3184430},
  acmid = {3184430},
  publisher = {ACM},
  address = {New York, NY, USA},
  keywords = {auto-scaler, cloud computing, internet of things (IoT), message queues, microservices, performance, performance metrics, threshold-based rules}
}
@inproceedings{maier2018a,
  title = {An Approach to Requirement Analysis in Automated Production Systems},
  author = {Maier, Timo and Busch, Kiana and Reussner, Ralf},
  booktitle = {Workshop Software-Reengineering \& Evolution and Workshop Design For Future},
  publisher = {Softwaretechnik-Trends},
  year = {2018},
  abstract = {Automated production systems (aPS) involve different disciplines, like mechanical and software engineering. Evolution has to be seen as a repetitive activity in these systems. Complexity of hardware and especially software is constantly rising and demands for automated solutions, as change propagation analysis by hand is slow and error-prone. In this paper, we present an approach to automatically calculate change propagation based on requirement changes in aPS.},
  tags = {refereed},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/maier2018a.pdf}
}
@inproceedings{heinrich2018icse,
  author = {Heinrich, Robert and Werle, Dominik and Klare, Heiko and Reussner, Ralf and Kramer, Max and Becker, Steffen and Happe, Jens and Koziolek, Heiko and Krogmann, Klaus},
  title = {The Palladio-Bench for Modeling and Simulating Software Architectures},
  booktitle = {Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings (ICSE 2018)},
  year = {2018},
  isbn = {978-1-4503-5663-3},
  location = {Gothenburg, Sweden},
  pages = {37--40},
  numpages = {4},
  url = {http://doi.acm.org/10.1145/3183440.3183474},
  doi = {10.1145/3183440.3183474},
  acmid = {3183474},
  publisher = {ACM},
  address = {New York, NY, USA},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/heinrich2018icse.pdf}
}
@inproceedings{zimmermann2018automated,
  title = {Automated Consistency Preservation in Electronics Development of Cyber-Physical Systems},
  author = {Zimmermann, Daniel and Reussner, Ralf H.},
  booktitle = {Federation of International Conferences on Software Technologies: Applications and Foundations},
  pages = {506--511},
  year = {2018},
  organization = {Springer}
}
@inproceedings{meier2019modelsward,
  author = {Meier, Johannes and Klare, Heiko and Tunjic, Christian and Atkinson, Colin and Burger, Erik and Reussner, Ralf and Winter, Andreas},
  booktitle = {Proceedings of the 7th International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2019)},
  title = {Single Underlying Models for Projectional, Multi-View Environments},
  year = {2019},
  pages = {119-130},
  publisher = {SCiTePress},
  organization = {INSTICC},
  doi = {10.5220/0007396401190130},
  isbn = {978-989-758-358-2},
  pdf = {https://sdqweb.ipd.kit.edu/publications/pdfs/meier2019a.pdf},
  tags = {Vitruv}
}
@inproceedings{klare2019modelsward,
  author = {Klare, Heiko and Sa{\u{g}}lam, Timur and Burger, Erik and Reussner, Ralf},
  booktitle = {Proceedings of the 7th International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2019)},
  title = {Applying Metamodel-based Tooling to Object-oriented Code},
  year = {2019},
  publisher = {SCiTePress},
  organization = {INSTICC},
  doi = {10.5220/0007246202190230},
  isbn = {978-989-758-358-2},
  pdf = {https://sdqweb.ipd.kit.edu/publications/pdfs/klare2019modelsward.pdf},
  tags = {Saglam}
}
@inproceedings{seifermann2019b,
  author = {Stephan Seifermann and Robert Heinrich and Ralf H. Reussner},
  booktitle = {{IEEE} International Conference on Software Architecture, {ICSA} 2019, Hamburg, Germany, March 25-29, 2019},
  title = {Data-Driven Software Architecture for Analyzing Confidentiality},
  publisher = {IEEE},
  year = {2019},
  pages = {1--10},
  url = {https://doi.org/10.1109/ICSA.2019.00009},
  doi = {10.1109/ICSA.2019.00009},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/seifermann2019b.pdf}
}
@inproceedings{heinrich2019ecase,
  author = {Heinrich, Robert and Koziolek, Anne and Reussner, Ralf and Becker, Steffen},
  title = {Infrastructure for Modeling and Analyzing the Quality of Software Architectures},
  booktitle = {Proceedings of the 2Nd International Workshop on Establishing a Community-Wide Infrastructure for Architecture-Based Software Engineering},
  series = {ECASE '19},
  year = {2019},
  location = {Montreal, Quebec, Canada},
  pages = {2--5},
  numpages = {4},
  url = {https://ieeexplore.ieee.org/document/8815608},
  doi = {10.1109/ECASE.2019.00009},
  acmid = {3338785},
  publisher = {IEEE Press},
  address = {Piscataway, NJ, USA}
}
@inproceedings{gotin2019icpe,
  author = {Manuel Gotin and Dominik Werle and Felix L{\"{o}}sch and Anne Koziolek and Ralf H. Reussner},
  title = {Overload Protection of Cloud-IoT Applications by Feedback Control of Smart Devices},
  booktitle = {Proceedings of the 2019 {ACM/SPEC} International Conference on Performance Engineering, {ICPE} 2019, Mumbai, India, April 7-11, 2019.},
  series = {ICPE '19},
  year = {2019},
  isbn = {978-1-4503-6239-9},
  location = {Mumbai, India},
  pages = {51--58},
  url = {http://doi.acm.org/10.1145/3297663.3309673},
  doi = {10.1145/3297663.3309673},
  publisher = {ACM},
  address = {New York, NY, USA},
  keywords = {cloud computing, cloud-iot applications, feedback control, internet-of-things (iot), smart devices}
}
@inproceedings{ananieva2021b,
  title = {Unified Operations for Variability in Space and Time},
  author = {Ananieva, Sofia and Greiner, Sandra and Kr\"uger, Jacob and Linsbauer, Lukas and Gr\"uner, Sten and K\"uhn, Thomas and Kehrer, Timo and Seidl, Christoph and Reussner, Ralf},
  booktitle = {Proceedings of the 16th International Working Conference on Variability-Modelling of Software-Intensive Systems},
  publisher = {ACM},
  address = {New York, NY, USA},
  note = {accepted for publication},
  year = {2021}
}
@inproceedings{ananieva2020c,
  title = {A Conceptual Model for Unifying Variability in Space and Time},
  author = {Ananieva, Sofia and Greiner, Sandra and K\"uhn, Thomas and Kr\"uger, Jacob and Linsbauer, Lukas and Gr\"uner, Sten and Kehrer, Timo and Klare, Heiko and Koziolek, Anne and L\"onn, Henrik and Krieter, Sebastian and Seidl, Christoph and Ramesh, Sethu and Reussner, Ralf and Westfechtel, Bernhard},
  booktitle = {Proceedings of the 24th International Systems and Software Product Line Conference (SPLC)},
  publisher = {ACM},
  address = {New York, NY, USA},
  year = {2020},
  isbn = {9781450375696},
  doi = {10.1145/3382025.3414955},
  url = {https://doi.org/10.1145/3382025.3414955}
}
@inproceedings{meier2020ccis,
  author = {Meier, Johannes and Werner, Christopher and Klare, Heiko and Tunjic, Christian and A{\ss}mann, Uwe and Atkinson, Colin and Burger, Erik and Reussner, Ralf and Winter, Andreas},
  editor = {Hammoudi, Slimane and Pires, Lu{\'i}s Ferreira and Seli{\'{c}}, Bran},
  title = {Classifying Approaches for Constructing Single Underlying Models},
  booktitle = {7th International Conference on Model-Driven Engineering and Software Development (MODELSWARD 2019), Revised Selected papers},
  year = {2020},
  publisher = {Springer International Publishing},
  address = {Cham},
  pages = {350--375},
  abstract = {Multi-view environments for software development allow different views of a software system to be defined to cover the requirements of different stakeholders. One way of ensuring consistency of overlapping information often contained in such views is to project them ``on demand'' from a Single Underlying Model (SUM). However, there are several ways to construct and adapt such SUMs. This paper presents four archetypal approaches and analyses their advantages and disadvantages based on several new criteria. In addition, guidelines are presented for selecting a suitable SUM construction approach for a specific project.},
  isbn = {978-3-030-37873-8},
  doi = {10.1007/978-3-030-37873-8_15},
  url = {http://dx.doi.org/10.1007/978-3-030-37873-8_15},
  tags = {Vitruv}
}
@inproceedings{kaplan2020a,
  author = {Kaplan, Angelika and Keim, Jan and Schneider, Yves R. and Walter, Maximilian and Werle, Dominik and Koziolek, Anne and Reussner, Ralf},
  title = {Teaching Programming at Scale},
  booktitle = {Software Engineering 2020, Fachtagung des GI-Fachbereichs Softwaretechnik, 24. - 28. February 2020, Innsbruck, Austria},
  year = {2020},
  abstract = {Teaching programming is a difficult task and there are many different challenges one needs to face. Besides questions like how to teach programming best, there are even more challenges that come up when you need to teach programming for around 1,000 students. We believe programming is a craftsmanship that needs to be trained practically, which creates even more challenges, especially at this scale. In this paper, we outline our learning goals for our programming course at university and the structure for the course we derived from these goals. We report about the challenges that we see when teaching programming at scale and how we try to overcome them. For example, one central challenges is how to grade a high amount of students in a good, transparent, and efficient way. We report on our approaches that include automated tests as well as tool support for manual review of code. Over the years we experienced different issues and learned valuable lessons. We present corresponding key takeaways that we derive from our experiences.},
  pdf = {http://ceur-ws.org/Vol-2531/paper01.pdf}
}
@inproceedings{seifermann2020a,
  author = {Seifermann, Stephan and Heinrich, Robert and Reussner, Ralf H.},
  editor = {Michael Felderer and Wilhelm Hasselbring and Rick Rabiser and Reiner Jung},
  title = {{Datenzentrische Softwarearchitekturen}},
  booktitle = {Software Engineering 2020, Fachtagung des GI-Fachbereichs Softwaretechnik, 24.-28. Februar 2020, Innsbruck, Austria},
  series = {{LNI}},
  volume = {{P-300}},
  pages = {47--48},
  publisher = {Gesellschaft f{\"{u}}r Informatik e.V.},
  year = {2020},
  url = {https://doi.org/10.18420/SE2020_11},
  doi = {10.18420/SE2020_11}
}
@inproceedings{heinrich2020b,
  author = {Robert Heinrich and Sandro Koch and Suhyun Cha and Kiana Busch and Ralf H. Reussner and Birgit Vogel{-}Heuser},
  editor = {Michael Felderer and Wilhelm Hasselbring and Rick Rabiser and Reiner Jung},
  title = {Architektur-basierte Analyse von {\"{A}}nderungsausbreitung in Software-intensiven Systemen},
  booktitle = {Software Engineering 2020, Fachtagung des GI-Fachbereichs Softwaretechnik, 24.-28. Februar 2020, Innsbruck, Austria},
  series = {{LNI}},
  volume = {{P-300}},
  pages = {45--46},
  publisher = {Gesellschaft f{\"{u}}r Informatik e.V.},
  year = {2020},
  url = {https://doi.org/10.18420/SE2020\_10},
  doi = {10.18420/SE2020\_10},
  timestamp = {Thu, 06 Feb 2020 13:42:01 +0100},
  biburl = {https://dblp.org/rec/conf/se/HeinrichKCBRV20.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}
@inproceedings{pilipchuk2021,
  author = {Pilipchuk, Roman and Heinrich, Robert and Reussner, Ralf},
  title = {Automatically Extracting Business Level Access Control Requirements from BPMN Models to Align RBAC Policies},
  booktitle = {Proceedings of the 7th International Conference on Information Systems Security and Privacy (ICISSP)},
  year = {2021},
  pages = {300--307},
  doi = {10.5220/0010184403000307},
  pdf = {http://sdqweb.ipd.kit.edu/publications/pdfs/pilipchuk2021.pdf}
}
@inproceedings{scheerer2020a,
  author = {Scheerer, Max and Klamroth, Jonas and Reussner, Ralf and Beckert, Bernhard},
  title = {Towards Classes of Architectural Dependability Assurance for Machine-Learning-Based Systems},
  year = {2020},
  isbn = {9781450379625},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3387939.3388613},
  doi = {10.1145/3387939.3388613},
  abstract = {Advances in Machine Learning (ML) have brought previously hard to handle problems within arm's reach. However, this power comes at the cost of unassured reliability and lacking transparency. Overcoming this drawback is very hard due to the probabilistic nature of ML. Current approaches mainly tackle this problem by developing more robust learning procedures. Such algorithmic approaches, however, are limited to certain types of uncertainties and cannot deal with all of them, e.g., hardware failure. This paper discusses how this problem can be addressed at architectural rather than algorithmic level to assess systems dependability properties in early development stages. Moreover, we argue that Self-Adaptive Systems (SAS) are more suited to safeguard ML w.r.t. various uncertainties. As a step towards this we propose classes of dependability in which ML-based systems may be categorized and discuss which and how assurances can be made for each class.},
  booktitle = {Proceedings of the IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems},
  pages = {31–-37},
  numpages = {7},
  keywords = {dependability, architectural-driven self-adaptation, artificial intelligence, machine learning, software quality},
  location = {Seoul, Republic of Korea},
  series = {SEAMS '20}
}
@inproceedings{scheerer2020b,
  title = {Design-Time Validation of Runtime Reconfiguration Strategies: An Environmental-Driven Approach},
  author = {Scheerer, Max and Rapp, Martina and Reussner, Ralf},
  booktitle = {Proceedings of the 1st IEEE International Conference on Autonomic Computing and Self-Organizing Systems (ACSOS)},
  pages = {75--81},
  year = {2020},
  doi = {10.1109/ACSOS49614.2020.00028},
  isbn = {9781728172781}
}
@inproceedings{scheerer2021,
  author = {Scheerer, Max and Reussner, Ralf},
  title = {Reliability Prediction of Self-Adaptive Systems Managing Uncertain AI Black-Box Components},
  year = {2021},
  booktitle = {Proceedings of the IEEE/ACM 16th International Symposium on Software Engineering for Adaptive and Self-Managing Systems},
  location = {Madrid, Spain},
  series = {SEAMS '21},
  note = {accepted, to appear}
}
@inproceedings{seifermann2021a,
  author = {Seifermann, Stephan and Werle, Dominik and Heinrich, Robert and Reussner, Ralf},
  title = {A Unified Model to Detect Information Flow and Access Control Violations in Software Architectures},
  booktitle = {Proceedings of the 18th International Conference on Security and Cryptography (SECRYPT 2021)},
  year = {2021},
  pages = {26-37},
  publisher = {ScitePress},
  doi = {10.5220/0010515300260037}
}
@inproceedings{pilipchuk2021b,
  author = {Pilipchuk, Roman and Seifermann, Stephan and Heinrich, Robert and Reussner, Ralf},
  title = {Challenges in Aligning Enterprise Application Architectures to Business Process Access Control Requirements in Evolutional Changes},
  booktitle = {Proceedings of the 18th International Conference on e-Business (ICE-B 2021)},
  year = {2021},
  pages = {13-24},
  publisher = {ScitePress},
  doi = {10.5220/0010511800130024}
}
@inproceedings{walter2022,
  title = {Architectural Attack Propagation Analysis for Identifying Confidentiality Issues},
  note = {accepted, to appear},
  author = {Walter, Maximilian and Heinrich, Robert and Reussner, Ralf},
  year = {2022},
  booktitle = {{IEEE} International Conference on Software Architecture},
  eventtitleaddon = {{ICSA} 2022},
  publisher = {{IEEE}}
}