Giter VIP home page Giter VIP logo

greengauge's Introduction

GreenGauge - Green software maturity assessment

Focusing on rapid self-assessment, we wanted to create a tool allowing people to quickly self-evaluate their teams or organisations practices to better identify things they might change to reduce the carbon impact of their software.

CMMI Approach

The Capability Maturity Model Integration (CMMI) is framework often used to assess the maturity of things on a scale of 1 to 5. The first stage typically is to benchmark where you are, then using the framework to guide systematic improvements across areas. Each of the 5 levels of the CMMI then represents a stage in an organisation's maturity as identified below.

  1. Level 1: An initial state, where processes are often ad hoc and chaotic.
  2. Level 2: Managed processes indicate that some basic practices are in place.
  3. Level 3: Defined and standardised set of processes.
  4. Level 4: Quantitatively managed processes.
  5. Level 5: Continuously optimised processes.

Our interpretation of CMMI is to define the states for Levels 1, 3 and 5 across a number of pillars which we believe are integral to building greener software. We've left Levels 2 and 4 undefined as transition states e.g. where you think you might not quite be a 3, but certainly better than 1.

Using this assessment

Work through each of the pillars and honestly assess your level of maturity relative to the descriptions in this handy scoring guide; fuzzyness is intended to keep things simple and you should apply the 'mostly' principle when considering your scores.

  • If you mostly do something, you probably do it
  • If you don't, then you probably don't

Utilise the transition levels of 2 and 4 where you believe you don't quite hit the brief.

Having done this average up your scores per pillar using this assessment template to plot them on a spider chart to understand relative maturity across the pillars and which areas you might wish to focus on for improvement going forward.

Repeat this benchmark every 3 months to track progress and review your improvement plans.

Assessment Pillars

You will find the CMMI framework for each of the pillars in the links below

Pillar Description
Architecture How the architecture you use can help reduce your carbon footprint.
Measurement The ways you can measure your progress.
Continuous Delivery How the way in which you build and run your software can help reduce your carbon footprint.
Service Design How you can optimise the way you design your software and receive user feedback.
User Experience How you can optimise the user experience and also educate your users to make sustainable choices.
Planning How you can help carbon reduction at the planning stage.
Culture How you can encourage a positive culture both internally and externally.

Useful Links

Kainos' Green Software Commitment Linux Foundation Green Software For Practitioners Course The Green Software Foundation Software Carbon Intensity (SCI) on GitHub Greenhouse Gas (GHG) Protocol

greengauge's People

Contributors

jonathanp-kainos avatar moomzni avatar joemcgrath avatar

Stargazers

Dominik Suszek avatar  avatar Mathijs Hendriks avatar jliang avatar David avatar Ali Salaman avatar  avatar

Watchers

 avatar G Pimblott avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.