+ All Categories
Home > Technology > Derivation of Green Metrics for Software

Derivation of Green Metrics for Software

Date post: 03-Nov-2014
Category:
Upload: luigi-buglione
View: 714 times
Download: 6 times
Share this document with a friend
Description:
Sustainability of software depends on several factors including the processes deployed to develop, operate, maintain and dispose software systems. To make such sustainability-related processes actually deployable and controllable, specific green metrics and indicators are necessary. In this paper we propose a sound methodological approach to derive green metrics and we provide also a significant set of metrics, derived according to such an approach, able to address different aspects of software sustainability.
23
Derivation of Green Metrics for Software Fabrizio Fabbrini*, Giuseppe Lami*, Luigi Buglione** *Istituto di Scienze e Tecnologie dell’Informazione – CNR, Pisa (Italy) **Engineering.IT spa Rome (Italy) and Ecole de Technologie Superieure (ETS) Montreal, Canada 13 th International SPICE Conference on Process Improvement and Capability dEtermination in Software, Systems Engineering and Service Management Bremen, 4-6 June 2013
Transcript
Page 1: Derivation of Green Metrics for Software

Derivation of Green Metrics for Software

Fabrizio Fabbrini*, Giuseppe Lami*, Luigi Buglione**

*Istituto di Scienze e Tecnologie dell’Informazione – CNR, Pisa (Italy)**Engineering.IT spa Rome (Italy) and Ecole de Technologie Superieure (ETS) Montreal, Canada

13th International SPICE Conferenceon Process Improvement and Capability dEtermination in Software,

Systems Engineering and Service Management

Bremen, 4-6 June 2013

Page 2: Derivation of Green Metrics for Software

Why metrics for Greener Software

The global ICT industry is claimed to account for approximately two percent of global carbon dioxide (CO2)

Software development has a significant impact on CO2 emissions

Process-centric approach as a possible way to face the question

to deploy and control the sustainability-related processes, the availability of metrics is necessary

Page 3: Derivation of Green Metrics for Software

Background: Green SW from a Process-centric Perspective

Process Name

Sustainability Management

Process Purpose

The purpose of the Sustainability Management Process is to ensure that products, services and life cycle processes meet sustainability objectives.

Process Outcomes

As a result of the successful implementation of the Sustainability Management process:

1)Principles and criteria for sustainability are established.

2)The scope of the sustainability-related activities for the project is defined.

3)Activities for sustainability are planned and implemented.

4)Tasks and resources necessary to complete the activities for sustainability are sized and estimated.

5)An organization structure for sustainability (responsibilities, roles, reporting channels, interfaces with other projects or OUs …) is established.

6)Activities for sustainability are monitored, sustainability non conformities are reported, analysed, and resolved.

7)Agreement on sustainability policy and requirements for supplied products or services is achieved.

8)Supplier’s activities for sustainability are monitored.

Process Name

Sustainability Engineering

Process Purpose

The purpose of the Sustainability Engineering process is to ensure that sustainability is adequately addressed throughout all stages of the engineering processes.

Process Outcomes

As a result of the successful implementation of the Sustainability Engineering process:

1)Factors affecting sustainability (e.g. resource consumption sources) are identified

2)Sustainability analysis is performed in order to determine the sustainability impact of factors affecting sustainability

3)Sustainability objectives are defined for the product development

4)Green principles are applied to development processes to identify techniques and methods suitable to achieve the sustainability objectives.

5)Techniques and methods for sustainability are applied

6)Impact on sustainability of change requests is analysed

Page 4: Derivation of Green Metrics for Software

Systematic Derivation of Green Metrics

Direct Effects

Sustainability Assets

Green Factors

Green Metrics

Page 5: Derivation of Green Metrics for Software

Green Software:Sustainability Assets

Many assets responsible for carbon emissions at software development and operation time can be derived

A recent survey identifies 18 key success factors belonging to 4 classes *

Success Factors Class

Success Factor

People & Action

DevelopersUsersTop managementExternal agentsProject teamSocial interaction

Project Content Project characteristicsProject scope, goals, objectivesResourcesTechnology

Development Process

Requirements determinationProject managementUse of standard methodUser participationUser trainingManagement of change

Institutional Context

Organizational propertiesEnvironmental conditions* Mc Leod, Mac Donnel, ACM Computing Surveys Vol.43, n. 4; 2011

** Lami, G. and Buglione, L. IWSM/MENSURA 2012.

In a recent paper ** we identified the following sustainability asset classes

SWSustaianbility

Infrastructure People / HR Processes Product

DirectEffects

SustainabilityAssets

GreenFactors

GreenMetrics

Page 6: Derivation of Green Metrics for Software

Green Software:Sustainability Assets

DirectEffects

SustainabilityAssets

GreenFactors

GreenMetrics

Page 7: Derivation of Green Metrics for Software

Green Software:Direct Effects

ICT may contribute to CO2 emissions in different ways

Three level of Effects of ICT in terms of environmental impact: Direct, Indirect and Systemic Effects *

Direct Effects refer to those caused by ICT infrastructures and equipment at production, usage and disposal time. The most relevant are: Greenhouse Emissions

Power waste Effort/Time waste Fuel waste

Material waste production Paper waste

* Saving the Climate @ the Speed of Light”; ETNO – WWF Report; 2008

DirectEffects

SustainabilityAssets

GreenFactors

GreenMetrics

Page 8: Derivation of Green Metrics for Software

Green SoftwareGreen Factors

Green Factors (definition): significant characteristics of a software project able to influence one or more Direct Effect

Green Factors can be derived taking into account DE and SA according to a bi-dimensional scheme

Software direct Effects

Sustainability Assets

People Project infrastructure ProcessesInstitutional context

Product

Power waste ---Tool efficiencyTool suitability

Process EfficiencyProcess Predictability

Process CapabilityTeam location Algorithmic – code efficiency

Effort/time waste

Team composition

Tool efficiencyTool suitability

Process EfficiencyProcess Predictability

Process CapabilityTeam location Maintainability

Material waste production

---Avoidance of environmentally

hazardous materials--- ---

Avoidance of environmentally hazardous materials

Paper waste --- --- Dematerialization --- ---

Fuel waste --- Teleconferences ---Flexi-work

Team location---

DirectEffects

SustainabilityAssets

GreenFactors

GreenMetrics

Page 9: Derivation of Green Metrics for Software

Entity – Attribute – Measure (E.A.M.) taxonomy mapped on the bi-dimensional scheme to derive Green Factors

Each metric contains the explicit reference to the Entity and Attribute it is based on

Derivation of Green Metrics

DirectEffects

SustainabilityAssets

GreenFactors

GreenMetrics

E. A. M. Entity name

Attribute name

Measure id.

Measure Formula

Measure Rational

Page 10: Derivation of Green Metrics for Software

Green Metrics

ENTITY: People

ATTRIBUTE:Team Composition

MEASURE ID: Fitness for Role (FfR)

MEASUREFORMULA:

RP= number of competences and skills required by the project role; AP=number of actual competencies and skills of the persons allocated to the project role. FfR=AP/RP

RATIONALE: The higher FfR the better.Note: The fitness-for-role of the people involved in a project allows a saving in terms of effort spent

Page 11: Derivation of Green Metrics for Software

Green Metrics

ENTITY: Project Infrastructure

ATTRIBUTE:Teleconferences

MEASURE ID: % teleconference meetings (PTM)

MEASUREFORMULA:

NT=Number of teleconferences; NF=Number of face-to-face meetings. PTM= NF /(NT+ NF)

RATIONALE: The higher PTM, the more fuel saved.Note: PTM allows for monitoring and control of the number of travels due to meetings related to project’s activities

Page 12: Derivation of Green Metrics for Software

Green Metrics

ENTITY: Project Infrastructure

ATTRIBUTE:Tool Efficiency

MEASURE ID: Earned Value (EV)

MEASUREFORMULA:

ET=Actual effort spent using the tool; PE= planned effort using the tool; EV=PE/ET

RATIONALE: The smaller EV, the higher the effort saved.

Page 13: Derivation of Green Metrics for Software

Green Metrics

ENTITY: Project Infrastructure

ATTRIBUTE:Tool Suitability

MEASURE ID: Tool functionalities usage rate (TUR)

MEASUREFORMULA:

NF= number of functionality allowed by the tool; UF: used functionalities of the tool; TUR=UF/NF

RATIONALE: The higher TUR, the more resource savings.Note: TUR can be used to evaluate if the tool is over-dimensioned for the actual needs.

Page 14: Derivation of Green Metrics for Software

Green Metrics

ENTITY: Project Infrastructure

ATTRIBUTE:Dematerialization

MEASURE ID: % of hardcopies of project’s documents (PHP)

MEASUREFORMULA:

Z=amount of project’s documents; NDi=number of released versions of the document i; SDV= ND1+ND2+ … + NDZ NH=number of hardcopies of project documents; PHP= NH/SDV

RATIONALE: The smaller PHP, the more paper saved

Page 15: Derivation of Green Metrics for Software

Green Metrics

ENTITY: Institutional Context

ATTRIBUTE:Flexi-work

MEASURE ID: % of work time spent at home (WAH)

MEASUREFORMULA:

MHO=amount of Man Hours spent at Office by project team; MHH=amount of MAN Hours spent at home by project team; WAH=MHH/(MHH+MHO)

RATIONALE: The most appropriate value depends on the specific local conditions

Page 16: Derivation of Green Metrics for Software

Green Metrics

ENTITY: Institutional Context

ATTRIBUTE:Team Location

MEASURE ID: Team Entropy (TLE)

MEASUREFORMULA:

where: m=number of project teams; n=number of spatial condition; li=spatial conditions where teamk operates.

RATIONALE: TLE describes if team members’ movement results in spatial clusters of workers or not, determining the probability of all members being co-located.

( il kteam ) / (size ( kteam ))i=1

n

∑k= 1

m

Page 17: Derivation of Green Metrics for Software

Green Metrics

ENTITY:Product

ATTRIBUTE: MEASURE ID: Percentage hazardous waste per total waste generated (PHW)

Avoidance of environmentally hazardous materials

MEASUREFORMULA:

NHW=Not-treated hazardous waste; THW=Total hazardous waste; PHW=NHW/THW

RATIONALE: The lower the PHW, the better

Page 18: Derivation of Green Metrics for Software

Green Metrics

ENTITY:Product

ATTRIBUTE: MEASURE ID: Computational cost of software (CCS)

Algorithmic/ code efficiency

MEASUREFORMULA:

NF=number of functionalities implemented by software; NPCi=average CPU cycles required by the functionality ith implemented by software; CCS=NPC1+NPC2+ … + NPCNF

RATIONALE: The lower CCS, the more power saved.

Page 19: Derivation of Green Metrics for Software

Green Metrics

ENTITY:Product

ATTRIBUTE: MEASURE ID: Information Flow Complexity (IFC)

Maintainability MEASUREFORMULA:

LOCA= lines of Code of A; FANINA=number of calling subprograms + global variable read in A; FANOUTA=number of called subprograms + global variable set in A; IFCA=LOCA * ( FANINA * FANOUTA)2

RATIONALE: The lower IFC the better.

Page 20: Derivation of Green Metrics for Software

Green Metrics

ENTITY:Process

ATTRIBUTE: MEASURE ID: Peaks and Lows (PAL)

Process Efficiency MEASUREFORMULA:

UCL= Upper Control Level; LCL = Lower Control Level; PAL = amount of work days the effort spent is out of the range [UCL, LCL]

RATIONALE: The lower PAL the better.

Page 21: Derivation of Green Metrics for Software

Green Metrics

ENTITY:Process

ATTRIBUTE: MEASURE ID: Schedule Variance (SV)

Process Predictability MEASUREFORMULA:

BCWP: Budgeted Cost of Work Performed; BCWS: Budgeted Cost of Work Scheduled SV=BCWP – BCWS

RATIONALE: The closer SV to 0, the better.Note: SV is a typical project-based measure for determining if the activities run are (or not) aligned with plans, for any eventual re-planning.

Page 22: Derivation of Green Metrics for Software

Green Metrics

ENTITY:Process

ATTRIBUTE: MEASURE ID: ISO/IEC 15504 Process Attributes Ratings (PAR)

Process Capability MEASUREFORMULA:

[Refer ISO/IEC 15504 ]

RATIONALE: The higher PAR, the better

Page 23: Derivation of Green Metrics for Software

Conclusions

EAM analysis as a simple and effective way to validate an initial set of metrics

Set of Metrics provided represent a starting point To be enlarged/completed To provide a document with details for actual use To be validated by means of case studies


Recommended