diff --git a/Examples/.project b/Examples/.project new file mode 100644 index 0000000000000000000000000000000000000000..291617a90c5852163f152c1c1d5653fccaf08015 --- /dev/null +++ b/Examples/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>Examples</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + </buildSpec> + <natures> + </natures> +</projectDescription> diff --git a/Examples/SEAMS_Case_Study/acamarCluster.resourcelandscape b/Examples/SEAMS_Case_Study/acamarCluster.resourcelandscape new file mode 100644 index 0000000000000000000000000000000000000000..6254ddba3f7696d052a93dd7fb67244bfa43c59b --- /dev/null +++ b/Examples/SEAMS_Case_Study/acamarCluster.resourcelandscape @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="ASCII"?> +<resourcelandscape:DistributedDataCenter xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="1" name="KitDataCenters"> + <consistsOf id="2" name="AtisDataCenter"> + <contains xsi:type="resourcelandscape:CompositeHardwareInfrastructure" id="3" name="AcamarCluster"> + <contains xsi:type="resourcelandscape:ComputingInfrastructure" id="4" name="ClusterNode20"> + <contains id="10" name="XenServer"> + <contains id="12" name="AppServerVM1" ofClass="OS VM"> + <template href="ContainerTemplateRepo.xmi#2"/> + </contains> + <template href="ContainerTemplateRepo.xmi#11"/> + </contains> + <template href="ContainerTemplateRepo.xmi#5"/> + </contains> + <contains xsi:type="resourcelandscape:ComputingInfrastructure" id="5" name="ClusterNode19"> + <contains id="15" name="XenServer"> + <template href="ContainerTemplateRepo.xmi#11"/> + </contains> + <template href="ContainerTemplateRepo.xmi#5"/> + </contains> + <contains xsi:type="resourcelandscape:ComputingInfrastructure" id="6" name="ClusterNode18"> + <contains id="25" name="XenServer"> + <template href="ContainerTemplateRepo.xmi#11"/> + </contains> + <template href="ContainerTemplateRepo.xmi#5"/> + </contains> + <contains xsi:type="resourcelandscape:ComputingInfrastructure" id="7" name="ClusterNode17"> + <contains id="14" name="XenServer"> + <contains id="33" name="DatabaseVM" ofClass="OS VM"> + <template href="ContainerTemplateRepo.xmi#555"/> + </contains> + <template href="ContainerTemplateRepo.xmi#11"/> + </contains> + <template href="ContainerTemplateRepo.xmi#5"/> + </contains> + </contains> + </consistsOf> +</resourcelandscape:DistributedDataCenter> diff --git a/Examples/SEAMS_Case_Study/default.adaptationpoints b/Examples/SEAMS_Case_Study/default.adaptationpoints new file mode 100644 index 0000000000000000000000000000000000000000..b8e4b30b23dc8e142713802f4ba720b4ba76ddc0 --- /dev/null +++ b/Examples/SEAMS_Case_Study/default.adaptationpoints @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="ASCII"?> +<adaptationpoints:AdaptationPointDescriptions xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:adaptationpoints="http://www.descartes-research.net/metamodel/adaptationpoints/0.1" xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" xmlns:resourceconfiguration="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="1" name="SEAMS-AdaptationPoints"> + <adaptationPoints xsi:type="adaptationpoints:ModelVariableConfigurationRange" id="238746123" name="AmountOfCores" minValue="2.0" maxValue="4.0"> + <adaptableEntity xsi:type="resourceconfiguration:NumberOfParallelProcessingUnits" href="ContainerTemplateRepo.xmi#1341341"/> + </adaptationPoints> + <adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="12312412412" name="NumberOfAppServerVmInstancesPerPhysicalServer"> + <variationPossibility xsi:type="adaptationpoints:PropertyRange"> + <minValueConstraint oclString="self.containedIn.contains->size()>=1" name="minValueConstraint"/> + <maxValueConstraint oclString="self.containedIn.contains->size()<=2" name="maxValueConstraint"/> + </variationPossibility> + <adaptableEntity xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/> + </adaptationPoints> + <adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="xyz" name="NumberOfMaxAppServers"> + <variationPossibility xsi:type="adaptationpoints:PropertyRange"> + <minValueConstraint oclString="self.referringContainers->size() >= 1" name="minNumberOfAppServersInDataCenter"/> + <maxValueConstraint oclString="self.referringContainers->size() <= 8" name="maxNumberOfAppServersInDataCenter"/> + </variationPossibility> + <adaptableEntity xsi:type="containerrepository:ContainerTemplate" href="ContainerTemplateRepo.xmi#2"/> + </adaptationPoints> + <adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="123321" name="VmMigration"> + <variationPossibility xsi:type="adaptationpoints:SetOfConfigurations"> + <valueConstraint oclString=""Specify a fancy OCL constraint here"" name="migrationTargetConstraint"/> + <variants xsi:type="resourcelandscape:ComputingInfrastructure" href="AcamarCluster.xmi#4"/> + <variants xsi:type="resourcelandscape:ComputingInfrastructure" href="AcamarCluster.xmi#5"/> + <variants xsi:type="resourcelandscape:ComputingInfrastructure" href="AcamarCluster.xmi#6"/> + </variationPossibility> + <adaptableEntity xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/> + </adaptationPoints> +</adaptationpoints:AdaptationPointDescriptions> diff --git a/Examples/SEAMS_Case_Study/default.containertemplaterepo b/Examples/SEAMS_Case_Study/default.containertemplaterepo new file mode 100644 index 0000000000000000000000000000000000000000..b8771b32c1e0af9cacfe811ef25e851252a989b7 --- /dev/null +++ b/Examples/SEAMS_Case_Study/default.containertemplaterepo @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="ASCII"?> +<containerrepository:ContainerRepository xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" xmlns:resourceconfiguration="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="1" name="AcamarClusterContainerTemplates"> + <templates id="2" name="AppServerVmTemplate"> + <templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="3xyzActiveResourceTemplate32" name="CpusAppServer"> + <processingResourceSpecifications id="235234" name="CPU-Spec" schedulingPolicy="PROCESSOR_SHARING" processingRate="1000.0"> + <nrOfParProcUnits id="1341341" name="NumberOfAppServerVmCpus" number="2"/> + </processingResourceSpecifications> + </templateConfig> + <referringContainers xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/> + </templates> + <templates id="555" name="DatabaseVmTemplate"> + <templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="1231231231" name="CpusDatabase"> + <processingResourceSpecifications id="51241132" name="CPU-Spec" schedulingPolicy="PROCESSOR_SHARING" processingRate="1000.0"> + <nrOfParProcUnits id="33" name="DatabaseVirtualCpus" number="8"/> + </processingResourceSpecifications> + </templateConfig> + </templates> + <templates id="5" name="ClusterNodeTemplate"> + <templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="123123" name="CpusClusterNode"> + <processingResourceSpecifications id="123sf" name="AmdOpteronCpuSpec" schedulingPolicy="PROCESSOR_SHARING" processingRate="1000.0"> + <nrOfParProcUnits id="23423sad" name="AmdOpteron" number="8"/> + </processingResourceSpecifications> + </templateConfig> + </templates> + <templates id="11" name="XenServerTemplate"> + <templateConfig xsi:type="resourceconfiguration:CustomConfigurationSpecification" id="12" name="XenServerConfiguration"/> + </templates> +</containerrepository:ContainerRepository> diff --git a/Examples/SEAMS_Case_Study/pushPullProcess.adaptation b/Examples/SEAMS_Case_Study/pushPullProcess.adaptation new file mode 100644 index 0000000000000000000000000000000000000000..ba189a95f8c55b4fa4c099069934d206afb24422 --- /dev/null +++ b/Examples/SEAMS_Case_Study/pushPullProcess.adaptation @@ -0,0 +1,117 @@ +<?xml version="1.0" encoding="ASCII"?> +<adaptation:AdaptationProcess xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:adaptation="http://www.descartes-research.net/metamodel/adaptation/0.1" xmlns:adaptationpoints="http://www.descartes-research.net/metamodel/adaptationpoints/0.1" xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="_07SqMKaFEeKsaqdh-1smGw" name="PushPullAdaptationProcess"> + <tactics id="2341234" name="addResources"> + <implementedPlan id="qweqweqwe" name="addResourcesAdaptationPlan"> + <steps xsi:type="adaptation:StartAction" id="_PXgN0KaHEeKsaqdh-1smGw" successor="_Qych0qaHEeKsaqdh-1smGw"/> + <steps xsi:type="adaptation:StopAction" id="_QNxHcaaHEeKsaqdh-1smGw" predecessor="_Qych0qaHEeKsaqdh-1smGw"/> + <steps xsi:type="adaptation:LoopAction" id="_Qych0qaHEeKsaqdh-1smGw" predecessor="_PXgN0KaHEeKsaqdh-1smGw" successor="_QNxHcaaHEeKsaqdh-1smGw" counter="1"> + <body id="_UpH4cKaHEeKsaqdh-1smGw" name="addVCPUorAppServer"> + <steps xsi:type="adaptation:StartAction" id="2342623434" successor="33eadsea"/> + <steps xsi:type="adaptation:BranchAction" id="33eadsea" predecessor="2342623434" successor="6423423423" condition="RuntimeEnvironment.allInstances()->select( re | re.template = self.template )->exists(re | re.configSpec.oclAsType(resourceconfiguration::ActiveResourceSpecification).processingResourceSpecifications->forAll(nrOfParProcUnits.number < 4)) and RuntimeEnvironment.allInstances()->select( re | re.template = self.template )->forAll(re | re.template.templateConfig.oclAsType(resourceconfiguration::ActiveResourceSpecification).processingResourceSpecifications->forAll(nrOfParProcUnits.number < 4))"> + <context xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/> + <conditionTrueBranch id="efasfasd" name="addVCPU"> + <steps xsi:type="adaptation:ActionReference" id="35634534" predecessor="321321" successor="345fdas" refersTo="2"/> + <steps xsi:type="adaptation:StartAction" id="321321" successor="35634534"/> + <steps xsi:type="adaptation:StopAction" id="345fdas" predecessor="35634534"/> + </conditionTrueBranch> + <conditionFalseBranch id="adsgsadas" name="addAppServer"> + <steps xsi:type="adaptation:ActionReference" id="453412341241" predecessor="e123134" successor="e63412" refersTo="41123123"/> + <steps xsi:type="adaptation:StartAction" id="e123134" successor="453412341241"/> + <steps xsi:type="adaptation:StopAction" id="e63412" predecessor="453412341241"/> + </conditionFalseBranch> + </steps> + <steps xsi:type="adaptation:StopAction" id="6423423423" predecessor="33eadsea"/> + </body> + </steps> + </implementedPlan> + </tactics> + <tactics id="_zFC2EaaMEeKdn_E8M08Q_g" name="undoPreviousAction"> + <implementedPlan id="_1_t3cKaMEeKdn_E8M08Q_g" name="undoPreviousActionPlan"> + <steps xsi:type="adaptation:StartAction" id="_9awssKaMEeKdn_E8M08Q_g" successor="_-Pacw6aMEeKdn_E8M08Q_g"/> + <steps xsi:type="adaptation:BranchAction" id="_-Pacw6aMEeKdn_E8M08Q_g" predecessor="_9awssKaMEeKdn_E8M08Q_g" successor="_9ysEgaaMEeKdn_E8M08Q_g" condition=""> + <context xsi:type="containerrepository:ContainerTemplate" href="ContainerTemplateRepo.xmi#2"/> + <conditionTrueBranch id="_KP82cKaNEeKdn_E8M08Q_g" name="conditionTrue"> + <steps xsi:type="adaptation:StartAction" id="_UUI4MKaNEeKdn_E8M08Q_g" successor="_dl-P9KaNEeKdn_E8M08Q_g"/> + <steps xsi:type="adaptation:StopAction" id="_Uv0uoaaNEeKdn_E8M08Q_g" predecessor="_dl-P9KaNEeKdn_E8M08Q_g"/> + <steps xsi:type="adaptation:ActionReference" id="_dl-P9KaNEeKdn_E8M08Q_g" predecessor="_UUI4MKaNEeKdn_E8M08Q_g" successor="_Uv0uoaaNEeKdn_E8M08Q_g" refersTo="41123123"/> + </conditionTrueBranch> + <conditionFalseBranch id="_K4GbkaaNEeKdn_E8M08Q_g" name="conditionFalse"> + <steps xsi:type="adaptation:StartAction" id="_VFQMEKaNEeKdn_E8M08Q_g" successor="_mMx4RKaOEeKlTfD7QKQIcw"/> + <steps xsi:type="adaptation:StopAction" id="_VYB-IaaNEeKdn_E8M08Q_g" predecessor="_mMx4RKaOEeKlTfD7QKQIcw"/> + <steps xsi:type="adaptation:ActionReference" id="_mMx4RKaOEeKlTfD7QKQIcw" predecessor="_VFQMEKaNEeKdn_E8M08Q_g" successor="_VYB-IaaNEeKdn_E8M08Q_g" refersTo="2"/> + </conditionFalseBranch> + </steps> + <steps xsi:type="adaptation:StopAction" id="_9ysEgaaMEeKdn_E8M08Q_g" predecessor="_-Pacw6aMEeKdn_E8M08Q_g"/> + </implementedPlan> + </tactics> + <tactics id="123123" name="removeResources"> + <implementedPlan id="123123123" name="removeResourcesAdaptationPlan"> + <steps xsi:type="adaptation:StartAction" id="_iqERYKaMEeKdn_E8M08Q_g" successor="_jqTmYqaMEeKdn_E8M08Q_g"/> + <steps xsi:type="adaptation:StopAction" id="_jO2ZcaaMEeKdn_E8M08Q_g" predecessor="_jqTmYqaMEeKdn_E8M08Q_g"/> + <steps xsi:type="adaptation:LoopAction" id="_jqTmYqaMEeKdn_E8M08Q_g" predecessor="_iqERYKaMEeKdn_E8M08Q_g" successor="_jO2ZcaaMEeKdn_E8M08Q_g" counter="1"> + <body id="_oCJwYKaMEeKdn_E8M08Q_g" name="removeVCPUorAppServer"> + <steps xsi:type="adaptation:StartAction" id="321" successor="branchDecrease"/> + <steps xsi:type="adaptation:BranchAction" id="branchDecrease" predecessor="321" successor="432" condition="RuntimeEnvironment.allInstances()->select( re | re.template = self.template and not re.configSpec->isEmpty())->exists(re | re.configSpec.oclAsType(resourceconfiguration::ActiveResourceSpecification).processingResourceSpecifications->forAll(nrOfParProcUnits.number > 2))"> + <context xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/> + <conditionTrueBranch id="_k0FLAICyEeKnieBrE9C24w" name="addVCPU"> + <steps xsi:type="adaptation:ActionReference" id="123487612497162" predecessor="_q13HQICyEeKnieBrE9C24w" successor="_rJvFgYCyEeKnieBrE9C24w" refersTo="345242342"/> + <steps xsi:type="adaptation:StartAction" id="_q13HQICyEeKnieBrE9C24w" successor="123487612497162"/> + <steps xsi:type="adaptation:StopAction" id="_rJvFgYCyEeKnieBrE9C24w" predecessor="123487612497162"/> + </conditionTrueBranch> + <conditionFalseBranch id="_nZJv1oCyEeKnieBrE9C24w" name="removeAppServer"> + <steps xsi:type="adaptation:ActionReference" id="234983249623" predecessor="_xUQHAICyEeKnieBrE9C24w" successor="_xx9WsYCyEeKnieBrE9C24w" refersTo="1287127123"/> + <steps xsi:type="adaptation:StartAction" id="_xUQHAICyEeKnieBrE9C24w" successor="234983249623"/> + <steps xsi:type="adaptation:StopAction" id="_xx9WsYCyEeKnieBrE9C24w" predecessor="234983249623"/> + </conditionFalseBranch> + </steps> + <steps xsi:type="adaptation:StopAction" id="432" predecessor="branchDecrease"/> + </body> + </steps> + </implementedPlan> + </tactics> + <actions id="2" name="AddVCPU"> + <referredAdaptationPoint xsi:type="adaptationpoints:ModelVariableConfigurationRange" href="AdaptationPoints.xmi#238746123"/> + <adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="INCREASE"/> + </actions> + <actions id="345242342" name="RemoveCPU"> + <referredAdaptationPoint xsi:type="adaptationpoints:ModelVariableConfigurationRange" href="AdaptationPoints.xmi#238746123"/> + <adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="DECREASE"/> + </actions> + <actions id="41123123" name="AddAppServer"> + <referredAdaptationPoint xsi:type="adaptationpoints:ModelEntityConfigurationRange" href="AdaptationPoints.xmi#12312412412"/> + <adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="INCREASE"/> + </actions> + <actions id="1287127123" name="RemoveAppServer"> + <referredAdaptationPoint xsi:type="adaptationpoints:ModelEntityConfigurationRange" href="AdaptationPoints.xmi#12312412412"/> + <adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="DECREASE"/> + </actions> + <strategies id="s1" name="PUSH" objective="_GdVkoKaGEeKsaqdh-1smGw"> + <triggeringEvents id="12345" name="SlaViolatedEvent"/> + <tactics id="wt1" name="AddResourcesWeightedTactic" usedTactic="2341234" currentWeight="1.0" defaultWeight="1.0"/> + <weightingFunction id="wf1" name="WeightedSum"> + <weightedMetrics id="_TzHMgGVXEeK4L53_AeGtGA" name="UtilizationWeight" weight="1.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#2"/> + </weightedMetrics> + <weightedMetrics id="_QKf6YGllEeKYrN0mFHpJCQ" name="ResponseTimeWeight" weight="-2.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#3"/> + </weightedMetrics> + </weightingFunction> + </strategies> + <strategies id="_Cg--ZYAnEeKW2vVcg5ekRw" name="PULL" objective="_G-ctoKaGEeKsaqdh-1smGw"> + <triggeringEvents id="_H_MTgIAnEeKW2vVcg5ekRw" name="ScheduledMaintenanceEvent"/> + <tactics id="_Tk5LUYAnEeKW2vVcg5ekRw" name="RemoveResourcesWeightedTactic" usedTactic="123123" currentWeight="1.0" defaultWeight="1.0"/> + <tactics id="_4j5FkaamEeKwhcuIujY6Yw" name="UndoPreviousActionWeightedTactic" usedTactic="_zFC2EaaMEeKdn_E8M08Q_g" currentWeight="0.5" defaultWeight="0.5"/> + <weightingFunction id="wf2" name="WeightedSum"> + <weightedMetrics id="_TzHMgGVXEeK4L53_AeGtGA1" name="UtilizationWeight" weight="1.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#2"/> + </weightedMetrics> + <weightedMetrics id="_Fc5YUKanEeKwhcuIujY6Yw" name="ResponseTimeWeight" weight="-2.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#3"/> + </weightedMetrics> + </weightingFunction> + </strategies> + <goal description="<<Maintain SLAs of all serivces using resources efficiently>>"> + <objectives id="_GdVkoKaGEeKsaqdh-1smGw" name="MaintainSLAs" specification="90% Quantile of ResponseTime"/> + <objectives id="_G-ctoKaGEeKsaqdh-1smGw" name="OptimizeResourceEfficiency" specification="85% > Utilization > 45%"/> + </goal> +</adaptation:AdaptationProcess> diff --git a/Examples/SEAMS_Case_Study/simucom-simulationResults.perfdatarepo b/Examples/SEAMS_Case_Study/simucom-simulationResults.perfdatarepo new file mode 100644 index 0000000000000000000000000000000000000000..90f77264560c9daa38201250188e8895d96548b8 --- /dev/null +++ b/Examples/SEAMS_Case_Study/simucom-simulationResults.perfdatarepo @@ -0,0 +1,29 @@ +<?xml version="1.0" encoding="ASCII"?> +<perfdatarepo:PerformanceDataRepository xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:perfdatarepo="http://www.descartes-research.net/metamodel/perfdata/0.1" id="1" name="MeasuredPerformanceDataRepository"> + <resultHistory id="123" name="ResultTactic1-1" timestamp="2012-12-12T00:00:00.000+0100"> + <metricValues id="224123" name="Util" metricType="2" value="0.4"/> + <metricValues id="213123" name="RespTimeGold" metricType="3" value="150.0"/> + <metricValues id="124124123" name="RespTimeSilver" metricType="4" value="340.0"/> + </resultHistory> + <resultHistory id="assgddfs" name="ResultTactic1-2" timestamp="2012-12-12T01:00:00.000+0100"> + <metricValues id="2241231" name="Util" metricType="2" value="0.6"/> + <metricValues id="2131232" name="RespTimeGold" metricType="3" value="120.0"/> + <metricValues id="1241241233" name="RespTimeSilver" metricType="4" value="300.0"/> + </resultHistory> + <resultHistory id="234ersdf" name="ResultTactic2-1" timestamp="2012-12-12T02:00:00.000+0100"> + <metricValues id="12343as" name="Util" metricType="2" value="0.7"/> + <metricValues id="sdfsdvc" name="RespTimeGold" metricType="3" value="100.0"/> + <metricValues id="63412412" name="RespTimeSilver" metricType="4" value="280.0"/> + </resultHistory> + <resultHistory id="_l-JN8WiWEeKyvugiUTWsDg" name="ResultTactic2-2" timestamp="2012-12-12T03:00:00.000+0100"> + <metricValues id="_uSiGAGiWEeKyvugiUTWsDg" name="Util" metricType="2" value="0.8"/> + <metricValues id="_vzap8GiWEeKyvugiUTWsDg" name="RespTimeGold" metricType="3" value="80.0"/> + <metricValues id="_wmMKsGiWEeKyvugiUTWsDg" name="RespTimeSilver" metricType="4" value="260.0"/> + </resultHistory> + <metricTypes id="2" name="Vm1Utilization"/> + <metricTypes id="3" name="CV_EJB_AvgResponseTime"/> + <metricTypes id="4" name="Purchase_AvgResponseTime"/> + <impactHistory id="_dJhhM2iXEeKyvugiUTWsDg" name="Tactic3-AllImproved" before="234ersdf" after="_l-JN8WiWEeKyvugiUTWsDg"/> + <impactHistory id="3df1q3eq" name="Tactic1-AllImproved" before="123" after="assgddfs"/> + <impactHistory id="232341241" name="Tactic2-AllImproved" before="assgddfs" after="234ersdf"/> +</perfdatarepo:PerformanceDataRepository>