towards application-specific impact specifications and greenslas colin atkinson, thomas schulze -...

6
Towards Application-Specific Impact Specifications and GreenSLAs Colin Atkinson, Thomas Schulze - University of Mannheim GREENS 2013 San Francisco, USA 20.05.2013

Upload: angelica-goodwin

Post on 03-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Towards Application-Specific Impact Specifications and GreenSLAs

Colin Atkinson, Thomas Schulze - University of Mannheim

GREENS 2013 San Francisco, USA

20.05.2013

•M

OTIV

ATI

ON

GREENS 2013 San Francisco, USA 20.05.2013

•S

how

case

•To

ward

s G

reen

Sp

eci

fica

tion

s•

Con

clu

sion

• The energy needs of the ICT industry are predicted to rise enormously• Current strategies for addressing this mainly focus on enhancing efficiency• But this alone will not have the desired impact if users are not made aware

of the impact of their consumption choices• Therefore, an approach that fosters more responsible usage behaviour is

required• A key prerequisite is to clearly specify what services a customer receives

for what cost (ecologically and financially)

Specification

User Service Provider

SLA

EstimationRequirement

• View-Based Specification of Services•

MO

TIV

ATIO

N

GREENS 2013 San Francisco, USA 20.05.2013

•Sh

ow

case

•To

ward

s G

reen

Sp

eci

fica

tion

s•

Con

clu

sion

<<subject>>ShoppingCart

products: Natural := 0max: Naturalcost: Money := 0.00

addProduct(p)removeProduct(p)checkOut()pay(c): String

Product

price: Integer

CreditCard

number: StringexpiraryDate: StringvalidationCode: StringcreditLimit: Money

0..max

0..*

ValidationService

validate(c, cost) : Boolean

<<enumeration>>State

EmptyCollectionProductsCheckout

1

<<acquires>>

Empty

CollectingProducts

[products > 1] removeProduct()

addProduct()

Checkout

[limit OK but card not OK] pay()

addProduct()

[products = 1] removeProduct()

checkout()

[products > 1] removeProduct()

[products = 1] removeProduct()

[limit not OK] pay()

[limit OK and card OK] pay()

Name addProductDescription Adds a Product to the ShoppingCart

Receives p : Product

Changes product, cost, shoppingCart

Assumes The ShoppingCart is in the CollectingProducts or Empty state

Result shoppingCart is in the CollectingProducts stateif number <= max then number = number + 1 cost = cost + p.price p has been added to the ShoppingCartelse number = max

Structural View

Behavioural View

Functional View

•M

OTIV

ATIO

N

GREENS 2013 San Francisco, USA 20.05.2013

•S

how

case

•G

reen

Sp

eci

fica

tion

s•

Con

clu

sion

• Eco-Enhanced Specification

<<subject>>ShoppingCart

products: Natural := 0max: Naturalcost: Money := 0.00

<<env>>avgCO2 := 0.05CO2Deviation := 0.005

addProduct(p)removeProduct(p)checkOut()pay(c): String

Product

price: Integer

<<env>>avgCO2 := 0.001CO2Deviation := 0.0002

CreditCard

number: StringexpiraryDate: StringvalidationCode: StringcreditLimit: Money

<<env>>avgCO2 := 0.07CO2Deviation := 0.001

0..max

0..*

ValidationService

validate(c, cost) : Boolean

<<enumeration>>State

EmptyCollectionProductsCheckout

1

<<acquires>>

Empty

CollectingProducts

[products > 1] removeProduct()

addProduct()

Checkout

[limit OK but card not OK] pay()

addProduct()

[products = 1] removeProduct()

checkout()

[products > 1] removeProduct()

[products = 1] removeProduct()

[limit not OK] pay()

[limit OK and card OK] pay()

0,9

0,1

0,5

0,35

0,07

0,8

0,03

0,05

0,05

0,05

0,1

σμ

Emission

Probability

Name addProduct

Description Adds a Product to the ShoppingCart

Receives p : Product

Changes product, cost, shoppingCart

Assumes self.OclIsInState(CollectingProducts)or self.OclIsInState(Empty)

Result context shoppingCart::addProduct(p):void …endif

CO2 Emissions (0.5mg; 0.004)

PoFoD

(0.000015; 0.0000005)

Resource Usage rCPU (0.005MI; 0000.6)

Costs

(0.0018€; 0.0004)

Name addProduct

Description Adds a Product to the ShoppingCart

Receives p : Product

Changes product, cost, shoppingCart

Assumes self.OclIsInState(CollectingProducts)or self.OclIsInState(Empty)

Result …

CO2 Emissions e < 5.1mg

PoFoD

If night time or weekend f < 0.0004 else f < 0.0001

Resource Usage rCPU < 0.10MI

Costs

c < 0.0027€

GREENS 2013 San Francisco, USA 20.05.2013

•To

ward

s G

reen

Sp

eci

fica

tion

s•

Concl

usi

on

•M

OTIV

ATIO

N•

Sh

ow

case

• Application specific impact specifications raise the level of awareness of the user for eco-cost and enables them to make more responsible choices

• In addition it enables data centres to further enhance their optimization strategies based on acceptable qualities of services

• Proposed question to the workshop for further discussion: “What metrics are useful for expressing eco-efficiency to the user and to the software developer”

… …

PoFoD

If night time or weekend f < 0.0004 else f < 0.0001

Thomas Schulze

[email protected]

Chair of Software EngineeringUniversity of Mannheimhttp://swt.informatik.uni-mannheim.de

All4Green Projecthttp://www.all4green-project.eu

Questions?Eco-Efficient Software Engineering Bloghttp://www.e2-se.com

Colin Atkinson

[email protected]

CONTACT US

MORE INFORMATION