Green Software Engineering Environments

Abstract

The term ‘software engineering environment’ (SEE) can be used to describe the network of people, software, hardware and infrastructure involved in the construction of software. In the past, research has focused primarily on the energy consumption of SEEs, including, for example, developer’s computers, networking equipment, mobile devices, and servers. In this chapter, we discuss work that has been conducted in investigating energy sinks in the SEE. This work includes existing methods, metrics and tools geared toward optimising and monitoring SEE energy consumption. However, the environmental impacts of creating software systems include more that just plug load energy consumption. The future of making SEEs ‘green’—that is, reducing their environmental and energetic footprints—relies on investigating impacts that are both indirect and direct, extend beyond just the physical development environment and are part of the entire software engineering life cycle.

Keywords

Energy Efficiency Data Centre Software Engineering Software Engineer Energy Data 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Notes

Acknowledgement

We would like to thank Birgit Penzenstadler and Sunny Karnani for their feedback on the chapter. We would also like to thank Taylor Kisor-Smith for his contributions to the Joulery prototype.

References

  1. 1.
    AEO2012 early release overview, Technical report. U.S. Energy Information Administration. http://www.eia.gov/forecasts/aeo/er/pdf/0383er%282012%29.pdf
  2. 2.
    Agency USEP (2003) Energy star the power to protect the environment through energy efficiency. Tech. rep.Google Scholar
  3. 3.
    Alcott B (2005) Jevons’ paradox. Ecol Econ 54(1):9–21CrossRefGoogle Scholar
  4. 4.
    Amsel N, Ibrahim Z, Malik A, Tomlinson B (2011) Toward sustainable software engineering: NIER track. In: 2011 33rd international conference on software engineering (ICSE). IEEE, pp 976–979Google Scholar
  5. 5.
    Amsel N, Tomlinson B (2010) Green tracker: a tool for estimating the energy consumption of software. In: CHI’10 extended abstracts on human factors in computing systems. ACM, pp 3337–3342Google Scholar
  6. 6.
    Baer WS, Hassell S, Vollaard BA (2002) Electricity requirements for a digital society. RAND, Santa Monica, CAGoogle Scholar
  7. 7.
    Barroso LA, Hölzle U (2009) The datacenter as a computer: an introduction to the design of warehouse-scale machines. Synth Lect Comput Architect 4(1):1–108CrossRefGoogle Scholar
  8. 8.
    Benini L, Bogliolo A, De Micheli G (2000) A survey of design techniques for system-level dynamic power management. IEEE Trans Very Large Scale Integrat (VLSI) Syst 8(3):299–316CrossRefGoogle Scholar
  9. 9.
    Berl A, Gelenbe E, Di Girolamo M, Giuliani G, De Meer H, Dang MQ, Pentikousis K (2010) Energy-efficient cloud computing. Comput J 53(7):1045–1051CrossRefGoogle Scholar
  10. 10.
    Birol F (2010) World energy outlook. International Energy AgencyGoogle Scholar
  11. 11.
    Blackburn M, Grid G (2008) Five ways to reduce data center server power consumption. Green gridGoogle Scholar
  12. 12.
    Boulding KE (1996) The economics of the coming spaceship earth. Environ Qual Growing Econ 2:3–14Google Scholar
  13. 13.
    Brooks FP Jr (2003) Three great challenges for half-century-old computer science. J ACM 50(1):25–26. doi: 10.1145/602382.602397, URL http://doi.acm.org/10.1145/602382.602397 CrossRefGoogle Scholar
  14. 14.
    Capra E, Formenti G, Francalanci C, Gallazzi S (2010) The impact of MIS software on it energy consumption. In: European conference of information science 2010Google Scholar
  15. 15.
    Capra E, Francalanci C, Slaughter SA (2012) Is software “green”? Application development environments and energy efficiency in open source applications. Inform Software Tech 54(1):60–71. doi: 10.1016/j.infsof.2011.07.005, URL http://dx.doi.org/10.1016/j.infsof.2011.07.005 CrossRefGoogle Scholar
  16. 16.
    Christensen K, Nordman B, Brown R (2004) Power management in networked devices. Computer 37(8):91–93CrossRefGoogle Scholar
  17. 17.
    Commission CE (2000) Energy accounting: a key tool in managing energy costs many costs. Tech. rep., California Energy CommissionGoogle Scholar
  18. 18.
    Corporation I. Powertop. URL https://01.org/powertop
  19. 19.
    Corporation O. The Java monitoring and management console (jconsole). URL http://openjdk.java.net/tools/svc/jconsole/
  20. 20.
    Doyle MW (2005) Three pillars of the liberal peace. Am Polit Sci Rev 99(3):463–466CrossRefGoogle Scholar
  21. 21.
    Easton VJ, McColl JM. Statistics glossary. URL http://www.stats.gla.ac.uk/steps/glossary/timeseries.html
  22. 22.
    Elliot S, Binney D (2008) Environmentally sustainable ICT: developing corporate capabilities and an industry-relevant is research agenda. In: Pacific Asia conference on information systems, Suzhou, China, 4–7 July 2008Google Scholar
  23. 23.
    Enterprises N. Nagios xi screenshots. URL http://www.nagios.com/products/nagiosxi/screenshots
  24. 24.
    Fan X, Weber WD, Barroso LA (2007) Power provisioning for a warehouse-sized computer. ACM SIGARCH Comput Architect News 35(2):13–23CrossRefGoogle Scholar
  25. 25.
    Few S (2006) Information dashboard design. O’Reilly, Sebastopol, CAGoogle Scholar
  26. 26.
    Few S (2008) Time on the horizon. Vis Bus Intell Newslett 1–7Google Scholar
  27. 27.
    Flinn J, Satyanarayanan M (2009) Powerscope: a tool for profiling the energy usage of mobile applications. In: Proceedings. WMCSA’99. Second IEEE workshop on mobile computing systems and applications, 1999. IEEE, pp 2–10Google Scholar
  28. 28.
    Garrett M (2007) Powering down. Queue 5(7):16–21CrossRefMathSciNetGoogle Scholar
  29. 29.
    Google: going green at Google – clean energy initiatives. URL http://www.google.com/about/datacenters/index.html
  30. 30.
    Heer J, Kong N, Agrawala M (2009) Sizing the horizon: the effects of chart size and layering on the graphical perception of time series visualizations. In: Proceedings of the SIGCHI conference on human factors in computing systems. ACM, pp 1303–1312Google Scholar
  31. 31.
    Hewlett-Packard, Intel, Microsoft, Phoenix, Toshiba. Advanced configuration and power interface specification. URL http://www.acpi.info
  32. 32.
    Hofmann M. System load indicator. URL https://launchpad.net/indicator-multiload
  33. 33.
    Humble J. javasysmon. URL https://github.com/jezhumble/javasysmon
  34. 34.
    IEEE Std 610.12 (1990) IEEE standard glossary of software engineering terminologyGoogle Scholar
  35. 35.
    Josephsen D (2007) Building a monitoring infrastructure with Nagios. Prentice Hall PTR, Upper Saddle River, NJGoogle Scholar
  36. 36.
    Jovanovic B, Rousseau PL (2005) General purpose technologies. Handbook Econ Growth 1:1181–1224CrossRefGoogle Scholar
  37. 37.
    Kansal A, Zhao F, Liu J, Kothari N, Bhattacharya AA (2010) Virtual machine power metering and provisioning. In: Proceedings of the 1st ACM symposium on cloud computing. ACM, pp 39–50Google Scholar
  38. 38.
    Kohlbrecher J, Hakobyan S, Pickert J, Grossmann U (2011) Visualizing energy information on mobile devices. In: 2011 IEEE 6th international conference on intelligent data acquisition and advanced computing systems (ID-AACS), vol 2. IEEE, pp 817–822Google Scholar
  39. 39.
    Laitner JAS, Nadel S, Elliott RN, Sachs H, Khan AS (2012) The long-term energy efficiency potential: what the evidence suggests. Tech. rep., American Council for Energy EfficiencyGoogle Scholar
  40. 40.
  41. 41.
  42. 42.
    Liu C, Qin X, Kulkarni S, Wang C, Li S, Manzanares A, Baskiyar S (2008) Distributed energy-efficient scheduling for data-intensive applications with deadline constraints on data grids. In: IEEE international performance, computing and communications conference, IPCCC 2008. IEEE, pp 26–33Google Scholar
  43. 43.
    Lockton D, Harrison D, Stanton NA (2012) Models of the user: designers’ perspectives on influencing sustainable behaviour. J Des Res 10(1):7–27Google Scholar
  44. 44.
    Lovins AB (2011) Re: The efficiency dilemma. The Mail, The New YorkerGoogle Scholar
  45. 45.
    Mahesri A, Vardhan V (2005) Power consumption breakdown on a modern laptop. In: Power-aware computer systems. Springer, pp 165–180Google Scholar
  46. 46.
    Mersenne Research I. The great Internet Mersenne prime search. URL http://www.mersenne.org/freesoft/
  47. 47.
    Mingay S (2007) Green IT: the new industry shock wave. Gartner RAS Research Note G 153703Google Scholar
  48. 48.
    Mitchell-Jackson JD (2001) Energy needs in an internet economy: a closer look at data centers. Ph.D. thesis, University of CaliforniaGoogle Scholar
  49. 49.
    Mittal R, Kansal A, Chandra R (2012) Empowering developers to estimate app energy consumption. In: Proceedings of the 18th annual international conference on mobile computing and networking. ACM, pp 317–328Google Scholar
  50. 50.
    Murugesan S (2008) Harnessing Green IT: principles and practices. IT Prof 10(1):24–33CrossRefGoogle Scholar
  51. 51.
    Naumann S, Dick M, Kern E, Johann T (2011) The GREENSOFT model: a reference model for green and sustainable software and its engineering. Sustain Comput Informat Syst 1(4):294–304, http://dx.doi.org/10.1016/j.suscom.2011.06.004. URL http://www.sciencedirect.com/science/article/pii/S2210537911000473 CrossRefGoogle Scholar
  52. 52.
    Odessa: sample computer network diagrams. URL http://www.conceptdraw.com/samples/network-diagram
  53. 53.
    Owen D (2010) The efficiency dilemma. Annals of environmentalism, The New YorkerGoogle Scholar
  54. 54.
    Penzenstadler B, Raturi A, Richardson D, Tomlinson B (2014) Safety, security, now sustainability: the non-functional requirement for the 21st century. In: Software (IEEE) Vol. 31 (3)Google Scholar
  55. 55.
    Rawson A, Pfleuger J, Cader T (2008) Green grid data center power efficiency metrics: PUE and DCIE. The green grid white paper 6Google Scholar
  56. 56.
    Research M. Joulemeter: Computational energy measurement and optimization. URL http://research.microsoft.com/en-us/projects/joulemeter/default.aspx
  57. 57.
    Rosseto EP (2011) Study of the correlation between software developer profile and code efficiency. Ph.D. thesis, Politecnico di Milano, MilanGoogle Scholar
  58. 58.
    Sanchez MC, Brown RE, Webber C, Homan GK (2008) Savings estimates for the United States Environmental Protection Agency’s energy star voluntary product labeling program. Energy Policy 36(6):2098–2108CrossRefGoogle Scholar
  59. 59.
    Shah A, Christian T, Patel CD, Bash C, Sharma RK (2009) Assessing ICT’s environmental impact. IEEE Comput 42(7):91–93CrossRefGoogle Scholar
  60. 60.
    Smith JW (2010) Green cloud a literature review of energy-aware computing. Ph.D. thesis, University of St. Andrews, FifeGoogle Scholar
  61. 61.
    Thomas I, Nejmeh BA (1992) Definitions of tool integration for environments. IEEE Software 9(2):29–35, http://doi.ieeecomputersociety.org/10.1109/52.120599 CrossRefGoogle Scholar
  62. 62.
    Tomlinson B (2010) Greening through IT. MIT Press, Cambridge, MAGoogle Scholar
  63. 63.
    Tomlinson B, Silberman MS, White J (2011) Can more efficient it be worse for the environment? Computer 44(1):87–89CrossRefGoogle Scholar
  64. 64.
    Tufte ER (2006) Beautiful evidence, vol 23. Graphics Press, Cheshire, CTGoogle Scholar
  65. 65.
    Webb M et al (2008) Smart 2020. Enabling the low carbon economy in the information age. The Climate Group. London 1(1), 1–1Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Ankita Raturi
    • 1
  • Bill Tomlinson
    • 1
  • Debra Richardson
    • 1
  1. 1.University of California, IrvineIrvineUSA

Personalised recommendations