Skip to content
🇺🇦 Auta ukrainalaisia tekemällä lahjoitus UNICEFin tai Suomen Punaisen Ristin kautta. 🇺🇦

Motivaatiokirje ohjelmistojen energiatehokkuuden edistämiselle

Mittarit vihreän digitalisaation julkisiin ICT-hankintoihin (MitViDi)- hankkeessa on kehitetty ensimmäinen versio arviointikehikosta, jolla voidaan arvioida julkisen ohjelmistohankinnan kestävyyttä. 

Arviointikehikolle haluttiin ulkopuolisten asiantuntijoiden arvio sen toimivuudesta ja kyvykkyydestä toimia konkreettisena mittaristona ICT-hankintojen tukena. 

AtoZ osallistui kilpailutukseen, jonka avulla valikoitiin kaksi eniten asiantuntemusta osoittanutta yritystä arvioimaan mittariston toimivuutta. Kilpailutuksen kautta AtoZin tiimi pääsi toteuttamaan arviointia MitViDi -hankkeen kehittämälle mittaristolle.  

Kilpailutuksen ja hankinnan kohteena oli palveluntuottajan tekemä raportti kehitysvaiheessa olevan MitViDi-hankkeessa kehitetyn arviointikehikon mahdollisuuksista toimia osana kestävää julkista ohjelmistohankintaa. Tarkoituksena oli saada yrityksiltä palautetta hankkeen arviointikehikosta. Toimittajan tehtävänä oli reflektoida ohjelmistotuotteitaan MitViDi-hankkeessa kehitettyyn arviointikehikkoon ja tuottaa sen pohjalta tilaajalle raportti. Lisäksi tuotettu raportti ja arviointi esitettiin MitViDi -hankkeen seminaarissa 15.6.2023. 

MitViDi – Mittarit vihreän digitalisaation julkisiin ICT-hankintoihin -hanketta toteuttavat yhteisvoimin Turun ammattikorkeakoulu, Turun yliopisto, koordinaattori, LUT-yliopisto, TIEKE ja Turku Science Park.

Arvioinnin taustaa ja yritysten tekemät loppuarvioinnit voi käydä lukemassa Tieken sivustolta.

Kilpailutuksessa palveluntarjoajien tuli tehdä motivaatiokirje, joka sisälsi ratkaisuja seuraavien teemojen parissa. 

Kestävän ohjelmistokehityksen merkitys yritykselle. Motivaatio ja tahtotila muokata ja luoda ohjelmistoja kestävien toimintaperiaatteiden mukaisesti. Tämän hetkiset ratkaisut kestävämmän tulevaisuuden edistämiselle. Tulevaisuuden suunnitelmat ohjelmistojen ja palveluiden kestävyyden lisäämiseksi.

Julkaisemme nyt blogina AtoZin toteuttaman motivaatiokirjeen kaikkien luettavaksi ja sen voi lukea kokonaisuudessaan videon jälkeen.

AtoZin tekemän arvioinnin voit katsoa alla olevasta videosta

 

 

Motivaatiokirjeen taustavaikuttajat

Koemme suurta huolta ohjelmistojen vaikutuksesta energiankulutuksessa. Ilmaston lämpenemisen rinnalla jatkuvasti kasvava energiankulutus on globaali ongelma ratkaistavaksi. Myös ICT-alalla energiankulutus on kasvusuunnassa ja kasvaa 6-9% vuodessa, koska digitalisaatio on lisääntynyt merkittävästi viimeisen 10 vuoden aikana ja ihmiset käyttävät entistä enemmän digitaalisia palveluita. Energiaa kuluu muun muassa palvelinsalien ylläpitämiseen ja luonnonvaroja kulutetaan turhaan epätehokkaan koodaamisen ja huonojen prosessien vuoksi. Koska laitteistoja ei ole ilman ohjelmistoja (ja toisinpäin), ohjelmistokehityksessä pitää tehdä suunnanmuutos helposta koodista takaisin optimoituun koodiin.

AtoZ on energiatehokkaiden ohjelmistojen edelläkävijä. Etenkin kahden viimeisen vuoden aikana energiatehokkuudesta on tullut entistä tärkeämpi huolenaihe niin yrityksille kuin yksittäisille käyttäjillekin. Tämän seurauksena haluamme antaa osamme ja keksiä keinoja, joilla ohjelmistoista saadaan energiatehokkaampia. Olemme kehittäneet energiatehokkaiden ohjelmistojen konseptin, joka koostuu energiatehokkaiden ohjelmistojen sekä ohjelmistokehityksen auditoinnista, optimoinnista, edunvalvonnasta ja kaiken tämän kouluttamisesta. Huomioimme kaikki energiatehokkaan ohjelmistokehityksen toimintamallit, teknologiat ja prinsiipit myös omissa ohjelmistokehitysprojekteissamme alkusuunnittelusta lähtien aina tuotantoon ja ylläpitoon saakka koko ohjelmiston elinkaaren ajan.

Haluamme Asiakkaidemme ymmärtävän jokaisen ohjelmisto- tai rautahankinnan kokonaisvaikutuksen merkityksen. Tätäkin tärkeämpi rooli on jokaisella meidän Asiantuntijoillamme, jotka ovat asiakkaan ohjelmistokehityshankkeessa mukana. Asiantuntijoiden tulee toimia asiakkaidensa auttajina ja ymmärtää sekä kertoa jokaisen muutoksen vaikutuksista ja merkityksestä.

 

Haasteita ohjelmistojen energiatehokkuuden saavuttamisessa 

Vaikka kehittäjät voivat käyttää useita tekniikoita parantaakseen ohjelmistojensa energiatehokkuutta, on myös useita voitettavia haasteita. Yksi haaste on energiatehokkuuden jääminen usein toissijaiseksi asiaksi ohjelmistokehityksessä. Tyypillisesti resurssipaineen takia kehittäjät keskittyvät toimivien ominaisuuksien ja monipuolisten ohjelmistojen luomiseen energiatehokkuuden sijaan.

Toinen haaste on, että energiatehokkuuden saavuttaminen vaatii usein kompromisseja. Esimerkiksi ohjelmiston suorittamiseen tarvittavan prosessointitehon vähentäminen voi heikentää suorituskykyä. Samoin virtaa säästävien laitteistokomponenttien käyttö voi heikentää toimintoja tai lisätä kustannuksia. 

Lisäksi ohjelmistojen energiatehokkuutta voi olla vaikea mitata tarkasti. On monia tekijöitä, jotka voivat vaikuttaa ohjelmiston kuluttaman energian määrään, mukaan lukien laitteisto, jossa se toimii, käyttöjärjestelmä, ja sen suorittamat erityistehtävät. Tämän seurauksena voi olla vaikeaa määrittää, mitkä tekniikat ovat tehokkaimpia energiatehokkuuden parantamiseksi. Lisäksi käyttäjämäärien ja palvelujen vaihtelut vaikuttavat mittaamista.

 

Energiatehokkaan ohjelmiston rakennusaineet

  • Tehokkaampien algoritmien kehittäminen, jotka vaativat vähemmän prosessointitehoa ja vähentävät energiankulutusta.
  • Ohjelmistojen muistin käytön rajoittaminen, mikä vähentää energiankulutusta.
  • Virtaa säästävien laitteistokomponenttien käyttö ohjelmistojen, kuten vähän virtaa kuluttavien prosessorien ja näyttöjen, kehittämisessä.
  • Energiatehokkaiden ohjelmointikielten ja -kehysten käyttö, jotka kuluttavat vähemmän energiaa.
  • Ohjelmisto on resilienssi lepotilaan tai lepotilasta aktiiviseksi siirtyessä.
  • Kehitetään ohjelmistoja, jotka voivat pienentää tai rajoittaa toimintojaan käytettäessä vähän virtaa kuluttavia laitteita, kuten mobiililaitteita, joka vähentää energiankulutusta.
  • Kehitetään ohjelmistoja, jotka tarjoavat käyttäjille energiankäyttötietoja ja kannustavat heitä optimoimaan energiankulutuksensa.
  • Virtualisointiteknologian käyttö ohjelmistokehityksessä, mikä voi vähentää energiankulutusta.
  • Kehitetään ja optimoidaan ohjelmistoja laitekohtaisesti.

Energiatehokkaat ohjelmistot ovat sovelluksia ja digitaalisia palveluja, jotka tukevat käyttäjän toimintaa pienellä työllä ja kohtuullisessa ajassa. Pienellä työllä tarkoitetaan palvelinresurssien oikeaa mitoitusta suhteessa kuormaan. Liian pienet resurssit kasvattavat työstöaikaa ja vastaavasti liialliset resurssit varataan huippukuormitukseen varautuen.

Ohjelmiston tulee suorittaa toivottu tehtävä mahdollisimman nopeasti, mutta järkevillä resursseilla. Kohtuullisella ajalla tarkoitetaan subjektiivista, käyttäjän kokemaa aikaa. Yleensä käyttäjät kertovat ohjelmistojen toimivan hitaasti, harvemmin liian nopeasta toiminnasta kuulee sanomista. Vaikka energiatehokkuutta voi parantaa äärimmilleen, on kuitenkin varmistettava, että muutokset eivät vaikuta käyttökokemukseen negatiivisesti. 

Alla olevaan kuvaan on olemme hahmottaneet ohjelmiston neljä näkökulmaan, jotka vaikuttavat suoraan energiatehokkuuteen.

Energiatehokkuuden tekijät - Illustration (1)-png

Palvelun ja ohjelmiston hyötykäyttö. Jos palvelu on päällä, mutta sitä ei käytetä aktiivisesti, se on hukkakäyttöä ja tällöin varataan resursseja tarpeettomasti. Energiatehokasta lopputulosta etsiessä, palveluita kannattaa tuottaa käytön mukaan — jos ei ole käyttöä, palvelua ei pidetä turhaan päällä.

Palvelun sijainti suhteessa käyttäjiin. Jos palveluita tuotetaan toisessa maassa tai maanosassa kuin missä käyttäjät ovat, kulutetaan välillisesti energiaa jokaisella tiedonsiirrolla. 

Tiedon käsittely ja säilytys. Jos säilytettävää tietoa on kerätty paljon talteen, käsittelyaikaa kuluu oleellisen tiedon perkaamiseen. Aktiivisesti erottamalla tarpeellinen tieto tarpeettomasta ja arkistoimalla jo käsiteltyä tietoa saa säilytettävän massan merkittävästi pienemmäksi. Tiedon käsittelyä voidaan nopeuttaa optimoimalla koodia, esimerkiksi valitsemalla ongelmaan sopivin algoritmi. Tietoa voidaan käsitellä käyttäjien päätelaitteilla tai palvelimilla, ja käsittelypaikka pitääkin määritellä aina tapauskohtaisesti.

Resurssien ja tiedon koko. Jos varataan liian paljon tai liian suuria resursseja, se on aina muilta infrastruktuurin käyttäjiltä pois — virtuaalisetkin ratkaisut pohjautuvat fyysisien resurssien hyödyntämiseen. Palvelinresurssit pitää mitoittaa aina tarpeen mukaan, ja horisontaalisesti ja/tai vertikaalisesti skaalautuvat palvelut voidaan säätää automaation keinoin käyttötarpeisiin sopiviin mittoihin.

Mitä enemmän on tietomassaa, sitä enemmän tietoa on käsiteltäväksi ja seulottavaksi olennaisen löytämiseksi. Viestien välityksessä kannattaa suosia vain tarvitun tiedon lähettämistä sekä vastaanottamista. Skaalaamalla multimediaa päätelaitteen tai käyttäjän mukaan voidaan vähentää verkkoliikenteessä tapahtuvaa energiankulutusta.

 

Energiatehokkuuteen tähtäävät toimintamallit

Ohjelmiston energiatehokkuus tulee huomioida jo ohjelmistokehityksen alkuvaiheilla. Kokonaisuudessa ohjelmiston arkkitehtuurilla on suuri vaikutus lopulliseen tuotokseen. Lisäksi CI/CD-putket ja asennuksien automatisointi vaikuttavat energiatehokkuuteen ohjelmistokehityksen matkalla. Käytännössä tämä tarkoittaa sitä, että muutosten tekeminen järjestelmään on paljon työläämpää ja hitaampaa ja siksi myös kalliimpaa kuin se voisi olla. Tämäkin on resurssien ja energian tuhlaamista. 

Lisäksi kehittäjät voivat käyttää erilaisia tekniikoita parantaakseen ohjelmistojen energiatehokkuutta. Yksi tehokkaimmista tavoista on vähentää ohjelmiston suorittamiseen tarvittavaa prosessointitehoa. Tämä voidaan saavuttaa optimoimalla algoritmeja, vähentämällä tarpeettomia laskelmia ja rajoittamalla muistin käyttöä.

Toinen lähestymistapa käytettävyyden näkökulmasta. Käyttäjä joutuu klikkailemaan sivustoa läpi pitkän aikaa löytääkseen haluamansa toiminnallisuuden, aiheuttaen turhaa kuormaa palvelimelle sekä käyttäjälle ajanhukkaa. Paremmalla käytettävyydellä haluttu toiminta voisi olla nopeammin ja vähemmällä työllä tarjolla. Tuotteen monimutkaisuus heijastuu myös esimerkiksi automaatiotesteihin, koska jokainen käyttäjältä vaadittu toimenpide joudutaan ohjelmoimaan niihin erikseen.

Kolmas lähestymistapa on käyttää virtaa säästäviä laitteistokomponentteja, kuten vähän virtaa kuluttavia prosessoreita ja näyttöjä. Lisäksi kehittäjät voivat käyttää ohjelmistotyökaluja energiankäytön seurantaan ja tunnistaa alueita, joilla energiatehokkuutta voidaan parantaa.

-------

Autamme mielellämme yrityksiä ja yhteisöjä rakentamaan parempia ja ennenkaikkea energiatehokkuuden kannalta optimoituja tietojärjestelmiä ja ohjelmistoja.

Lisätietoa Energiatehokkaat ohjelmistot palveluistamme löydät linkin takaa.

Halutessasi keskustella lisää aiheesta, olethan meihin yhteydessä.