<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Controlling the Palladio Bench using the Descartes Query Language</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Fabian</forename><surname>Gorsler</surname></persName>
							<email>gorsler@ira.uka.de</email>
							<affiliation key="aff0">
								<orgName type="department">Descartes Research Group</orgName>
								<orgName type="institution">Karlsruhe Institute of Technology (KIT)</orgName>
								<address>
									<addrLine>Am Fasanengarten 5</addrLine>
									<postCode>D-76131</postCode>
									<settlement>Karlsruhe</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Fabian</forename><surname>Brosig</surname></persName>
							<email>brosig@kit.edu</email>
							<affiliation key="aff0">
								<orgName type="department">Descartes Research Group</orgName>
								<orgName type="institution">Karlsruhe Institute of Technology (KIT)</orgName>
								<address>
									<addrLine>Am Fasanengarten 5</addrLine>
									<postCode>D-76131</postCode>
									<settlement>Karlsruhe</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Samuel</forename><surname>Kounev</surname></persName>
							<email>kounev@kit.edu</email>
							<affiliation key="aff0">
								<orgName type="department">Descartes Research Group</orgName>
								<orgName type="institution">Karlsruhe Institute of Technology (KIT)</orgName>
								<address>
									<addrLine>Am Fasanengarten 5</addrLine>
									<postCode>D-76131</postCode>
									<settlement>Karlsruhe</settlement>
									<country key="DE">Germany</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Controlling the Palladio Bench using the Descartes Query Language</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">0B28276AD4D7A2601DA97759877059FF</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T01:49+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>The Palladio Bench is a tool to model, simulate and analyze Palladio Component Model (PCM) instances. However, for the Palladio Bench, no single interface to automate experiments or Application Programming Interface (API) to trigger the simulation of PCM instances and to extract performance prediction results is available. The Descartes Query Language (DQL) is a novel approach of a declarative query language to integrate different performance modeling and prediction techniques behind a unifying interface. Users benefit from the abstraction of specific tools to prepare and trigger performance predictions, less effort to obtain performance metrics of interest, and means to automate performance predictions. In this paper, we describe the realization of a DQL Connector for PCM and demonstrate the applicability of our approach in a case study.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Performance predictions are normally subject to a recurring process. The process in Figure <ref type="figure" target="#fig_0">1</ref> is an example of this process. First, users need to specify which performance metrics they demand to trigger a performance prediction using tools compatible to their performance modeling formalism. Second, the architecture-level performance model needs to be transformed into an analysis model to perform the performance prediction. Analysis models are usually more abstract and capture only the high-level details of an architecturelevel performance model. Examples of architecture-level performance models include the Descartes Meta-Model (DMM) <ref type="bibr" target="#b7">[KBH12]</ref> and the Palladio Component Model (PCM) [RBB + 11, BKR09]. We assume an architecture-level performance model is already available. Third, after the results of a performance prediction are available, the user can extract the relevant performance metrics. Typically, this process is executed in iterations and involves the use of one or more tools for each step to achieve the demanded goals. Thus, the manual effort is high and users need to learn the low-level details of each tool that is part of the performance prediction process.</p><p>The PCM is an architecture-level model performance modeling language to model soft-  The Palladio Bench provides the necessary tools to model PCM instances, to trigger performance predictions and to extract the results. However, the Palladio Bench does not provide the means to automate the steps in the performance prediction process and provides no single Application Programming Interface (API) for automation. Each step involves one or multiple actions necessary to trigger the transition to the next step. In this paper, we present the Descartes Query Language (DQL), contribute a DQL Connector for PCM and show the applicability with PCM in a case study. DQL is our novel approach of a declarative query language to ease performance predictions and to automate recurring tasks <ref type="bibr" target="#b4">[Gor13]</ref>. With DQL, different performance modeling formalisms and prediction techniques can be integrated as DQL Connectors with a single unified interface and API. Users benefit from less manual effort, a flat learning curve to trigger performance predictions, a declarative description to obtain results and an API to embed performance predictions in software components.</p><p>The remainder of this paper is structured as follows: Section 2 introduces DQL and relevant approaches. In Section 3 the implementation of a DQL Connector for PCM will be described and Section 4 demonstrates the applicability of our approach. Section 5 summarizes and discusses our work and the results presented and gives an outlook to future work.</p><p>2 Foundations and Related Work</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">Descartes Query Language</head><p>The Descartes Query Language (DQL) is our novel approach of a query language to trigger performance predictions independent of a specific performance modeling formalism or prediction technique <ref type="bibr" target="#b4">[Gor13]</ref>. DQL aims to integrate existing performance prediction approaches to unify their interfaces by a declarative language. The design DQL focuses on architecture-level performance models, e.g. the Descartes Meta-Model (DMM) or Palladio Component Model (PCM), and captures usage scenarios that can be either offline scenarios during the design time of software systems or online scenarios during the run-time of a Figure <ref type="figure">2</ref> shows the architecture of DQL. The architecture consists of three major parts: (i) DQL Language &amp; Editor provides an Xtext<ref type="foot" target="#foot_0">1</ref> -based editor, query parser and Application Programming Interface (API) to DQL. This part of DQL receives queries from external sources, either through the editor part from users or through the API part from software components, and delegates them to the DQL Query Execution Engine (QEE). In (ii) the DQL QEE encapsulates the core logic of DQL and performs the performance modeling formalism-independent processing of queries. Finally, in (iii) DQL Connectors encapsulate all performance modeling formalism-specific logic and control the execution of performance predictions. The DQL Connector Registry is a utility component to manage available DQL Connectors in a DQL environment.</p><p>In Fig. <ref type="figure" target="#fig_1">3</ref> the DQL Editor embedded in the Eclipse Integrated Development Environment (IDE) is shown. The upper half contains a DQL query that is part of the case study in Sec. 4, while the lower half visualizes the result of the query.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Related Approaches from SPE</head><p>In Software Performance Engineering (SPE) the main objective is the systematic analysis of the performance of software systems <ref type="bibr" target="#b15">[SS91,</ref><ref type="bibr" target="#b9">MDA04]</ref>. Many approaches for the analysis of performance models have emerged that differ in their expressiveness, computing effort and modeling formalism <ref type="bibr" target="#b8">[Koz10,</ref><ref type="bibr" target="#b0">BDIS04]</ref>. Due to the different interfaces and applications of tools, new problems arise. In <ref type="bibr" target="#b16">[WFP07]</ref> the problems are summarized: "As a result no tool does the job the user needs, so the user goes and invents one. Further, various tools all have different forms of output which makes interoperability challenging at best.". We position our approach between approaches for intermediate modeling and metric modeling. SMM is a standard for the modeling of metrics and MAMBA is an implementation of SMM [Obj12, FvHJ + 11, FvHJ + 12]. The modeling of metrics allows the standardized analysis of metrics independent of their source and eases the development tools. However, the Measurement Architecture for Model-Based Analysis (MAMBA) approach is not intended to control a performance prediction process and is limited to the access to performance metrics. We propose the integration of MAMBA and DQL to form a unified interface to performance data repositories and performance prediction techniques through a DQL Connector for MAMBA.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Query Results</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Implementation</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">Mapping from PCM to DQL</head><p>As first step towards the realization of a DQL Connector for PCM, we describe our mapping approach from PCM to the Mapping Meta-Model. The Mapping Meta-Model as shown in Figure <ref type="figure" target="#fig_2">4</ref>  The first type represents active resources of a hardware server, the latter type represents the network link of a hardware server. With this mapping, the following performance metrics can be extracted from PCM simulations: (i) demandedTime and utilization for Resource and (ii) responseTime for Service <ref type="bibr" target="#b10">[Mer11]</ref>.</p><p>For the mapping of Resources we employ a workaround. The workaround is necessary due to a shortcoming of the the SensorFramework and the format of results. To obtain result results for specific resources, we modify the identifiers with the suffixes @CPU and @HDD in case of a ProcessingResourceSpecification and @LAN in case of a Communication-LinkResourceSpecification. By this workaround, the DQL Connector can access the computed results through the SensorFramework and provide a distinct mapping to trigger predictions and to obtain results.</p><p>The DQL Connector for PCM supports DoFs in PCM instances and varies them using the PCM Experiment Automation API <ref type="bibr" target="#b10">[Mer11]</ref>. A DoF in a PCM instance can be, e.g., the workload population in the PCM Usage Model to analyze the behavior of a software system under varying workload intensities. We implement DoFs based on the available variations for PCM types and support the full exploration of the resulting configuration parameter space. The full parameter space spans across Π n i=1 d i different combinations, where n is the amount of available DoFs and d i is the number of different settings of a DoF i. For each combination of DoFs, the DQL Connector triggers one PCM simulation and returns one result set.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">DQL Connector for PCM</head><p>The initial steps to develop the DQL Connector for PCM are the creation of a new OSGi Bundle, to enclose meta-information in the OSGi Bundle, and to provide a OSGi Declarative Service implementing ConnectorProvider to the OSGi run-time <ref type="bibr" target="#b12">[OSG11,</ref><ref type="bibr" target="#b13">OSG12]</ref>.</p><p>ConnectorProvider is an interface to implement a factory class that is used to create instaces of the classes derived from QueryConnector. The implementation of Query-Connectors are the subsequent steps to realize the DQL Connector and to enrich the functionality.</p><p>The DQL Connector for PCM consists of two implementations of QueryConnector. First, the ModelStructureQueryConnector is used to obtain strutural information from a performance model. The implementation is based on Eclipse Modeling Framework (EMF) operations and Object Constraint Language (OCL) to search for instances of the types described in the previous section. The available performance metrics for the eligible entities are mapped in the DQL Connector. Second, the PerformanceMetricsQueryConnector configures and controls the performance prediction process and extracts the performance metrics of interest. To configure and control performance predictions, the DQL Connector for PCM relies on the PCM Experiment Automation API <ref type="bibr" target="#b10">[Mer11]</ref>. The extraction of performance metrics is realized through direct access to the SensorFramework API.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Case Study</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Description of the MediaStore Example</head><p>The MediaStore<ref type="foot" target="#foot_1">2</ref> is a running example for applications of PCM and demonstrates the features of the Palladio Bench <ref type="bibr" target="#b1">[BKR09]</ref>. It is an instance of the PCM with a componentoriented architecture and can be used to trigger simulations that derive performance metrics. The architecture is built up on a three tier approach and made up of (i) a web front-end component for users, (ii) a business tier consisting of the core business logic and a digital watermarking component, and (iii) a database tier. Tiers (i) and (ii) are deployed on an ap-LIST ENTITIES USING pcm@'mediastore.properties';</p><p>Listing 1: List Entities Query LIST METRICS (RESOURCE ' _ 5uTBUBpmEdyxqpPYxT _ m3w@CPU' AS AppServer _ CPU, RESOURCE ' _ tVi40Dq _ EeCCbpF63PfiyA@CPU' AS DBServer _ CPU) RESOURCE ' _ tVi40Dq _ EeCCbpF63PfiyA@HDD' AS DBServer _ HDD) USING pcm@'mediastore.properties';</p><p>Listing 2: List Metrics Query plication server (AppServer), tier (iii) is deployed on a database server (DBServer). Both are interconnected by a network link.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2">Performance Analysis of the MediaStore Example</head><p>This section is presents an outline how to conduct a performance analysis of a PCM model through the DQL Connector for PCM. The performance analysis relies only on DQL queries and omits the Palladio Bench as interface. The case study consists of three main objectives: (i) To explore the model structure of the MediaStore example, (ii) to analyze available performance metrics for specific model entities, and (iii) to trigger a performance prediction and extract performance metrics. Additionally, we present an example how to automate experiment series in the Palladio Bench using a single DQL query.</p><p>The first objective in this case study is to obtain a listing of all available performancerelevant entities in the MediaStore. The result set contains all entities, i.e. all mapped Resources and Services, and their absolute identifiers. Listing 1 shows the corresponding query from the Model Structure Query Class. The second line in the query contains the USING keyword. It provides means to (i) select an adequate DQL Connector to execute the query and (ii) it contains the model location. The interpretation of the model location is subject to the referenced DQL Connector. In case of PCM, a properties file with references to all required PCM sub-models is used. The first line of the query contains the LIST ENTITIES expression to obtain all model entities and to interpret the DQL mapping of the entities found.</p><p>The second objective is to obtain the available performance metrics for the model entities of interest. The query in Listing 2 contains the corresponding example and is again part of the Model Structure Query Class. Here, the LIST METRICS expression is used together with a set of references of relevant model entities. The references to model entities contain the DQL type, the performance model formalism-specific absolute identifier and an optional alias to identify the reference in result sets easily. The DQL Editor provides the necessary means for the auto-completion of absolute identifiers of resources and services. The result set of this query contains for each of the requested resources the available metrics SELECT AppServer _ CPU.utilization, DBServer _ CPU.utilization, DBServer _ HDD.utilization FOR RESOURCE ' _ 5uTBUBpmEdyxqpPYxT _ m3w@CPU' AS AppServer _ CPU, RESOURCE ' _ tVi40Dq _ EeCCbpF63PfiyA@CPU' AS DBServer _ CPU, RESOURCE ' _ tVi40Dq _ EeCCbpF63PfiyA@HDD' AS DBServer _ HDD USING pcm@'mediastore.properties';</p><p>Listing 3: Basic Query in the Palladio Bench demandedTime and utilization as described in the preceding section.</p><p>Finally, the third objective is to trigger a performance prediction and to extract the performance metrics of interest from the performance prediction results. The query in Listing 3 contains the necessary statement for this objective and is from the Performance Metrics Query Class. The FOR expression references the model entities of interest. A DQL Connector may use this information to provide tailored predictions, which is, in case of the PCM Experiment Automation API, not applicable, but still necessary for the SELECT expression. Only referenced model entities can be used in the SELECT expression. The SELECT expression contains all performance metrics of interest for specific model entities. In this case, the utilization rates for the entities AppServer_CPU, DBServer_CPU and DBServer_HDD are of interest. This query triggers a performance prediction through a simulation run in the Palladio Bench and the performance metrics are returned as mean values computed directly from the results available through the SensorFramework. Additionally, as an example for automation of tasks in the Palladio Bench, Listing 4 contains a DoF Query. The query extends Listing 3 through the EVALUATE DOF expression. The EVALUATE DOF expression together with the VARYING expression triggers an full exploration of the specified DoFs. Here, the exploration varies two parameters with two settings each, leading to a total amount of 2 × 2 = 4 independent simulations in the Palladio Bench and the same amount of result sets presented to the user. The exploration varies (i) the workload intensity of the closed workload used in the MediaStore example and (ii) changes the component-internal behavior through the replication of a given internal action. For both variations, the PCM Experiment Automation API provides implementations to vary the PCM model instances.</p><p>As final part of the case study, Figure <ref type="figure" target="#fig_1">3</ref> shows the user interface of DQL. The DQL Editor, shown in the upper half, provides means to edit queries with completion features DQL expressions, context-sensitive identifiers of model entities, and syntax highlighting. The result visualization, shown in the lower half, is a tabular representation of a Mapping Meta-Model instances and displays all types referenced by the EntityMapping, see Figure <ref type="figure" target="#fig_2">4</ref> and a visualization of the Mapping Meta-Model returned as result in the lower half. The screenshot shows the state of the Eclipse-based user interface after the execution of the query from Listing 4. Thus, four results are shown in the lower half that can be analyzed by a user. We presented the Descartes Query Language (DQL), a novel query language to specify performance queries, and a DQL Connector for Palladio Component Model (PCM). DQL unifies the interfaces of available performance modeling formalisms and their prediction techniques to provide a common Application Programming Interface (API). DQL is independent of the employed modeling formalisms, hides low-level details of performance prediction techniques and thus reduces the manual effort and the learning curve when working with performance models.</p><p>Instead, the DQL Connector for PCM encapsulates all PCM-specific details and unifies the APIs of Eclipse Modeling Framework (EMF), Object Constraint Language (OCL), PCM Experiment Automation and the SensorFramework. Our case study with the MediaStore example showed the applicability of our approach to control the Palladio Bench through DQL. The current state of the implementation can be used to conduct a performance analysis and extends the functionality of the Palladio Bench by means to automate performance predictions with Degrees of Freedom (DoFs).</p><p>As part of our future work on DQL, we plan to integrate further DQL Connectors and to provide additional query classes. Additional query classes in DQL are intended to address problems like the automated detection of bottlenecks. These classes are intended as a step towards goal-oriented queries.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: The performance prediction process</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: DQL Query Editor and Result View</figDesc><graphic coords="4,161.31,165.97,250.02,174.51" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: The Mapping Meta-Model</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>SELECT</head><label></label><figDesc>AppServer _ CPU.utilization, DBServer _ CPU.utilization, DBServer _ HDD.utilization EVALUATE DOF VARYING ' _ TyV-MFBwEd6ActLj8Gdl _ A' AS ClosedWorkloadPopulation &lt;100, 200&gt; ' _ Q8jwMEg9Ed2v5eXKEbOQ9g' AS ActionReplication &lt;2, 8&gt; FOR RESOURCE ' _ 5uTBUBpmEdyxqpPYxT _ m3w@CPU' AS AppServer _ CPU, RESOURCE ' _ tVi40Dq _ EeCCbpF63PfiyA@CPU' AS DBServer _ CPU, RESOURCE ' _ tVi40Dq _ EeCCbpF63PfiyA@HDD' AS DBServer _ HDD USING pcm@'mediastore.properties'; Listing 4: Complex DoF Query in the Palladio Bench 5 Conclusion &amp; Future Work</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>DQL Language &amp; Editor DQL Query Execution Engine DQL Connector Registry DQL Connector &lt;&lt;register&gt;&gt; &lt;&lt;submit query&gt;&gt; Model-specific External Toolchain</head><label></label><figDesc>RBB + 11]. In this paper, we focus on Model Structure Queries to obtain structural information of a performance model and Performance Metrics Queries to trigger performance predictions and to extract result. Furthermore, DQL automates performance predictions through the exploration of Degrees of Freedom (DoFs). DoFs express the configuration parameter space of performance model entities to find solutions for optimization problems automatically [KAM13, HvHK + 13].</figDesc><table><row><cell>Figure 2: Architecture of DQL</cell></row><row><cell>software system [KBH12,</cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">http://www.eclipse.org/Xtext/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">https://sdqweb.ipd.kit.edu/wiki/PCM _ MediaStore _ Example _ Workspace</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Model-Based Performance Prediction in Software Development: A Survey</title>
		<author>
			<persName><forename type="first">Simonetta</forename><surname>Balsamo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Antinisca</forename><surname>Di Marco</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Paola</forename><surname>Inverardi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Marta</forename><surname>Simeoni</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Software Engineering</title>
		<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">The Palladio component model for model-driven performance prediction</title>
		<author>
			<persName><forename type="first">Steffen</forename><surname>Becker</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Heiko</forename><surname>Koziolek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Ralf</forename><surname>Reussner ; Sören</surname></persName>
		</author>
		<author>
			<persName><surname>Frey</surname></persName>
		</author>
		<author>
			<persName><surname>Van Hoorn</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Wilhelm</forename><surname>Jung</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Benjamin</forename><surname>Hasselbring</surname></persName>
		</author>
		<author>
			<persName><surname>Kiel</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">MAMBA: A measurement architecture for model-based analysis</title>
				<imprint>
			<date type="published" when="2009">2009. 2011</date>
		</imprint>
		<respStmt>
			<orgName>Department of Computer Science, University of Kiel</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">MAMBA: Model-Based Software Analysis Utilizing OMG&apos;s SMM</title>
		<author>
			<persName><forename type="first">+ ; Sören</forename><surname>Fvhj</surname></persName>
		</author>
		<author>
			<persName><surname>Frey</surname></persName>
		</author>
		<author>
			<persName><surname>Van Hoorn</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Benjamin</forename><surname>Jung</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Wilhelm</forename><surname>Kiel</surname></persName>
		</author>
		<author>
			<persName><surname>Hasselbring</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Workshop Software-Reengineering</title>
				<imprint>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">14</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">KLAPER: An Intermediate Language for Model-Driven Predictive Analysis of Performance and Reliability</title>
		<author>
			<persName><forename type="first">Vincenzo</forename><surname>Grassi</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Raffaela</forename><surname>Mirandola</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Enrico</forename><surname>Randazzo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Antonino</forename><surname>Sabetta</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="s">Lecture Notes in Computer Science</title>
		<imprint>
			<biblScope unit="volume">5153</biblScope>
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">Online Performance Queries for Architecture-Level Performance Models</title>
		<author>
			<persName><forename type="first">Fabian</forename><surname>Gorsler</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2013">2013</date>
		</imprint>
		<respStmt>
			<orgName>Karlsruhe Institute of Technology (KIT)</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Master&apos;s thesis</note>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Modeling Run-Time Adaptation at the System Architecture Level in Dynamic Service-Oriented Environments</title>
		<author>
			<persName><forename type="first">+ ; Nikolaus</forename><surname>Hvhk</surname></persName>
		</author>
		<author>
			<persName><forename type="first">André</forename><surname>Huber</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Anne</forename><surname>Van Hoorn</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Fabian</forename><surname>Koziolek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Samuel</forename><surname>Brosig</surname></persName>
		</author>
		<author>
			<persName><surname>Kounev</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Service Oriented Computing and Applications Journal</title>
		<imprint>
			<date type="published" when="2013">2013</date>
			<publisher>SOCA</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Hybrid Multi-Attribute QoS Optimization in Component Based Software Systems</title>
		<author>
			<persName><forename type="first">Anne</forename><surname>Koziolek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Danilo</forename><surname>Ardagna</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Raffaela</forename><surname>Mirandola</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of Systems and Software</title>
		<imprint>
			<biblScope unit="volume">86</biblScope>
			<biblScope unit="issue">10</biblScope>
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title level="m" type="main">The Descartes Meta-Model (DMM)</title>
		<author>
			<persName><forename type="first">Samuel</forename><surname>Kounev</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Fabian</forename><surname>Brosig</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Nikolaus</forename><surname>Huber</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2012">2012</date>
			<pubPlace>Karlsruhe</pubPlace>
		</imprint>
		<respStmt>
			<orgName>Karlsruhe Institute of Technology (KIT)</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Performance evaluation of component-based software systems: A survey</title>
		<author>
			<persName><forename type="first">Heiko</forename><surname>Koziolek</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Performance Evaluation</title>
				<imprint>
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">Performance by Design: Computer Capacity Planning By Example</title>
		<author>
			<persName><forename type="first">A</forename><surname>Daniel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Lawrence</forename><forename type="middle">W</forename><surname>Menasce</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Virgilio</forename><forename type="middle">A F</forename><surname>Dowdy</surname></persName>
		</author>
		<author>
			<persName><surname>Almeida</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2004">2004</date>
			<publisher>Prentice Hall PTR</publisher>
			<pubPlace>Upper Saddle River, NJ, USA</pubPlace>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<monogr>
		<title level="m" type="main">Comparing Process-and Event-oriented Software Performance Simulation</title>
		<author>
			<persName><forename type="first">Philipp</forename><surname>Merkle</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
		</imprint>
		<respStmt>
			<orgName>Karlsruhe Institute of Technology (KIT)</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Master thesis</note>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Object Management Group</title>
	</analytic>
	<monogr>
		<title level="m">Structured Metrics Metamodel</title>
				<imprint>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">1</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
	</analytic>
	<monogr>
		<title level="m">OSGi Service Platform Core Specification -Release 4</title>
				<imprint>
			<date type="published" when="2011">2011</date>
			<biblScope unit="volume">4</biblScope>
			<biblScope unit="page">3</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
	</analytic>
	<monogr>
		<title level="m">OSGi Service Platform Service Compendium -Release 4</title>
				<imprint>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">4</biblScope>
			<biblScope unit="page">3</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">The Palladio Component Model</title>
		<author>
			<persName><surname>Rbb + ; Ralf</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Steffen</forename><surname>Reussner</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Erik</forename><surname>Becker</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Jens</forename><surname>Burger</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Michael</forename><surname>Happe</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Anne</forename><surname>Hauck</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Heiko</forename><surname>Koziolek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Klaus</forename><surname>Koziolek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Michael</forename><surname>Krogmann</surname></persName>
		</author>
		<author>
			<persName><surname>Kuperberg</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2011">2011</date>
			<pubPlace>Karlsruhe</pubPlace>
		</imprint>
		<respStmt>
			<orgName>Karlsruhe Institute of Technology (KIT)</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Technical report</note>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Performance Engineering of Software Systems</title>
		<author>
			<persName><forename type="first">John</forename><surname>Smith</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Connie</forename><forename type="middle">U</forename><surname>Smith</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">The Journal of the Operational Research Society</title>
		<imprint>
			<date type="published" when="1991">1991</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">The Future of Software Performance Engineering</title>
		<author>
			<persName><forename type="first">Murray</forename><surname>Woodside</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Greg</forename><surname>Franks</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Dorina</forename><forename type="middle">C</forename><surname>Petriu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Dorina</forename><surname>Murray Woodside</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Performance by unified model analysis (PUMA)</title>
				<editor>
			<persName><forename type="first">B</forename><surname>Dorin</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Hui</forename><surname>Petriu</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Toqeer</forename><surname>Shen</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Jose</forename><surname>Israr</surname></persName>
		</editor>
		<editor>
			<persName><surname>Merseguer</surname></persName>
		</editor>
		<imprint>
			<publisher>ACM Press</publisher>
			<date type="published" when="2005">2007. 2005</date>
		</imprint>
	</monogr>
	<note>WOSP &apos;05</note>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
