From 21ddffb4539c7976c12560c1a8b59cab1ce492c6 Mon Sep 17 00:00:00 2001 From: Nikolaus Huber <nikolaus.huber@uni-wuerzburg.de> Date: Tue, 16 Apr 2013 12:36:01 +0000 Subject: [PATCH] git-svn-id: https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@11234 9e42b895-fcda-4063-8a3b-11be15eb1bbd --- .../PushPullAdaptationProcess.xmi | 324 ++++++------------ 1 file changed, 96 insertions(+), 228 deletions(-) diff --git a/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi index df19e13a..ffb700f2 100644 --- a/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi +++ b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi @@ -1,254 +1,122 @@ <?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:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" - id="_07SqMKaFEeKsaqdh-1smGw" - name="PushPullAdaptationProcess"> - <tactics id="2341234" - name="increaseResources"> - <implementedPlan - id="qweqweqwe" - name="IncreaseResourcesAdaptationPlan"> - <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="increaseCores"> - <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="increaseServers"> - <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> +<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> - <steps - xsi:type="adaptation:StopAction" - id="6423423423" - predecessor="33eadsea"/> </implementedPlan> </tactics> - <tactics id="123123" - name="gracefullyDecreaseResources"> - <implementedPlan - id="123123123" - name="DecreaseResourcesAdaptationPlan"> - <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="decreaseCores"> - <steps - xsi:type="adaptation:ActionReference" - id="decreaseVirtualCpu" - predecessor="_q13HQICyEeKnieBrE9C24w" - successor="_rJvFgYCyEeKnieBrE9C24w" - refersTo="345242342"/> - <steps - xsi:type="adaptation:StartAction" - id="_q13HQICyEeKnieBrE9C24w" - successor="decreaseVirtualCpu"/> - <steps - xsi:type="adaptation:StopAction" - id="_rJvFgYCyEeKnieBrE9C24w" - predecessor="decreaseVirtualCpu"/> + <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="_nZJv1oCyEeKnieBrE9C24w" - name="decreaseServers"> - <steps - xsi:type="adaptation:ActionReference" - id="decreaseServers" - predecessor="_xUQHAICyEeKnieBrE9C24w" - successor="_xx9WsYCyEeKnieBrE9C24w" - refersTo="1287127123"/> - <steps - xsi:type="adaptation:StartAction" - id="_xUQHAICyEeKnieBrE9C24w" - successor="decreaseServers"/> - <steps - xsi:type="adaptation:StopAction" - id="_xx9WsYCyEeKnieBrE9C24w" - predecessor="decreaseServers"/> + <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="432" - predecessor="branchDecrease"/> + <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="decreaseVirtualCpu" predecessor="_q13HQICyEeKnieBrE9C24w" successor="_rJvFgYCyEeKnieBrE9C24w" refersTo="345242342"/> + <steps xsi:type="adaptation:StartAction" id="_q13HQICyEeKnieBrE9C24w" successor="decreaseVirtualCpu"/> + <steps xsi:type="adaptation:StopAction" id="_rJvFgYCyEeKnieBrE9C24w" predecessor="decreaseVirtualCpu"/> + </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 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 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 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 id="1287127123" name="removeAppServer"> + <referredAdaptationPoint xsi:type="adaptationpoints:ModelEntityConfigurationRange" href="AdaptationPoints.xmi#12312412412"/> + <adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="DECREASE"/> </actions> - <strategies - id="s1" - name="PUSH"> - <triggeringEvents - id="12345" - name="SlaViolatedEvent"/> - <tactics - id="wt1" - name="weightedTacticIncreaseResources" - usedTactic="2341234" - currentWeight="100.0" - defaultWeight="100.0"/> - <weightingFunction - id="wf1" - name="weightedSum"> - <weightedMetrics - id="_TzHMgGVXEeK4L53_AeGtGA" - name="utilizationMetricWeight" - weight="1.0"> - <metricType - href="PerformanceDataRepositoryDummy.xmi#2"/> + <strategies id="s1" name="PUSH"> + <triggeringEvents id="12345" name="SlaViolatedEvent"/> + <tactics id="wt1" name="weightedTacticIncreaseResources" usedTactic="2341234" currentWeight="100.0" defaultWeight="100.0"/> + <weightingFunction id="wf1" name="weightedSum"> + <weightedMetrics id="_TzHMgGVXEeK4L53_AeGtGA" name="utilizationMetricWeight" weight="1.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#2"/> </weightedMetrics> - <weightedMetrics - id="_QKf6YGllEeKYrN0mFHpJCQ" - name="goldCustomerResponseTimeWeight" - weight="-2.0"> - <metricType - href="PerformanceDataRepositoryDummy.xmi#3"/> + <weightedMetrics id="_QKf6YGllEeKYrN0mFHpJCQ" name="goldCustomerResponseTimeWeight" weight="-2.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#3"/> </weightedMetrics> - <weightedMetrics - id="_UBs1cGllEeKYrN0mFHpJCQ" - name="silverCustomerResponseTimeWeight" - weight="-1.0"> - <metricType - href="PerformanceDataRepositoryDummy.xmi#4"/> + <weightedMetrics id="_UBs1cGllEeKYrN0mFHpJCQ" name="silverCustomerResponseTimeWeight" weight="-1.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#4"/> </weightedMetrics> </weightingFunction> </strategies> - <strategies - id="_Cg--ZYAnEeKW2vVcg5ekRw" - name="PULL"> - <triggeringEvents - id="_H_MTgIAnEeKW2vVcg5ekRw" - name="ScheduledMaintenanceEvent"/> - <tactics - id="_Tk5LUYAnEeKW2vVcg5ekRw" - name="weightedTacticDecreaseResources" - usedTactic="123123" - currentWeight="100.0" - defaultWeight="100.0"/> - <weightingFunction - id="wf1" - name="weightedSum"> - <weightedMetrics - id="_TzHMgGVXEeK4L53_AeGtGA1" - name="utilizationMetricWeight" - weight="1.0"> - <metricType - href="PerformanceDataRepositoryDummy.xmi#2"/> + <strategies id="_Cg--ZYAnEeKW2vVcg5ekRw" name="PULL"> + <triggeringEvents id="_H_MTgIAnEeKW2vVcg5ekRw" name="ScheduledMaintenanceEvent"/> + <tactics id="_Tk5LUYAnEeKW2vVcg5ekRw" name="weightedTacticDecreaseResources" usedTactic="123123" currentWeight="100.0" defaultWeight="100.0"/> + <weightingFunction id="wf1" name="weightedSum"> + <weightedMetrics id="_TzHMgGVXEeK4L53_AeGtGA1" name="utilizationMetricWeight" weight="1.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#2"/> </weightedMetrics> - <weightedMetrics - id="_QKf6YGllEeKYrN0mFHpJCQ1" - name="goldCustomerResponseTimeWeight" - weight="-2.0"> - <metricType - href="PerformanceDataRepositoryDummy.xmi#3"/> + <weightedMetrics id="_QKf6YGllEeKYrN0mFHpJCQ1" name="goldCustomerResponseTimeWeight" weight="-2.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#3"/> </weightedMetrics> - <weightedMetrics - id="_UBs1cGllEeKYrN0mFHpJCQ1" - name="silverCustomerResponseTimeWeight" - weight="-1.0"> - <metricType - href="PerformanceDataRepositoryDummy.xmi#4"/> + <weightedMetrics id="_UBs1cGllEeKYrN0mFHpJCQ1" name="silverCustomerResponseTimeWeight" weight="-1.0"> + <metricType href="PerformanceDataRepositoryDummy.xmi#4"/> </weightedMetrics> </weightingFunction> </strategies> <goal description="<<Maintain SLAs of all serivces while using resources efficiently>>"> - <objectives - id="_GdVkoKaGEeKsaqdh-1smGw" - name="ServiceLevelAgreements" - specification=""/> - <objectives - id="_G-ctoKaGEeKsaqdh-1smGw" - name="resourceEfficiency"/> + <objectives id="_GdVkoKaGEeKsaqdh-1smGw" name="ServiceLevelAgreements" specification=""/> + <objectives id="_G-ctoKaGEeKsaqdh-1smGw" name="resourceEfficiency"/> </goal> </adaptation:AdaptationProcess> -- GitLab