Abstract
This paper proposes an explicit definition of green software requirements and a tool to support their evaluation . The proposed evaluation tool describes the green efficiency by considering the energy consumption as the main aspect to be studied during the development stage. This approach consists of building a multiple regression model, by using a supervised learning algorithm, in order to reproduce the energy consumption pattern of devices at different workload circumstances. The energy consumption model is then deployed to estimate the impact of software applications based on their resource usage. Our work has been validated on desktop and mobile devices. The experiments show the effectiveness of the proposed energy profiling tool that provided relevant information on the energy consumption of software applications.
Similar content being viewed by others
Notes
ISO/IEC JTC 1/SC 7, ISO/IEC 25010:2011, Systems and software engineering—Systems and software quality requirements and evaluation (square)—System and software quality models, 2011.
ISO/IEC JTC1/SC7, Software engineering product quality model, 2001.
References
Amsel N, Ibrahim Z, Malik A, Tomlinson B (2011) Toward sustainable software engineering (nier track). In: ICSE’11 Proceedings of the 33rd International Conference on Software Engineering, pp 976–979
Ardito L, Procaccianti G, Vetro A, Morisio M (2013) Introducing energy efficiency into sqale. In: ENERGY 2013, The Third International Conference on Smart Grids, Green Communications and IT Energy-aware Technologies, pp 28–33
Breiman L (2001) Random forests. Mach Learn 45:5–32
Calero C, Bertoa MF, Moraga MA (2013) A systematic literature review for software sustainability measures. In: Proceedings of 2nd International Workshop on Green and Sustainable Software (GREENS), pp 46–53
Cappiello C, Fugini M, Ferreira AM, Plebani P, Vitali M (2011) Business process co-design for energy-aware adaptation. In: IEEE International Conference on Intelligent Computer Communication and Processing (ICCP), pp 463–470
Capra E, Francalanci C, Slaughter SA (2012) Measuring application software energy efficiency. IT Prof 14(2):54–61. doi:10.1109/MITP.2012.39
Dick M, Naumann S (2010) Enhancing software engineering processes towards sustainable software product design. In: Proceedings of the 24th International Conference EnviroInfo: Integration of Environmental Information in Europe, pp 706–715
Dong M, Zhong L (2011) Self-constructive high-rate system energy modeling for battery-powered mobile systems. In: Proceedings of the 9th international conference on Mobile systems, applications, and services - MobiSys ’11, pp 335–348. doi:10.1145/1999995.2000027
Gong L, Xie J, Li X, Deng B (2013) Study on energy saving strategy and evaluation method of green cloud computing system. In: 2013 8th IEEE Conference on, Industrial Electronics and Applications (ICIEA), pp 483–488
Hindle A (2012) Green mining: a methodology of relating software change to power consumption. In: Proceedings of the 9th IEEE Working Conference on Mining Software Repositories (MSR), pp 78–87
Ho TK (1998) The random subspace method for constructing decision forests. IEEE Trans Pattern Anal Mach Intell 20:832–844
Kern E, Dick M, Naumann S, Guldner A, Johann T (2013) Green software and green software engineering. In: Proceedings of the First International Conference on Information and Communication Technologies for Sustainability
Lami G, Buglion L, Fabbrini F (2013) Derivation of green metrics for software spice 2013. Commun Comput Inf Sci 349:13–24
Lami G, Fabbrini F, Fusani M (2013) A methodology to derive sustainability indicators for software development projects. In: Proceedings of the 2013 International Conference on Software and System Process, pp 70–77
Li D, Halfond WGJ (2014) An investigation into energy-saving programming practices for android smartphone app development. In: Proceedings of the 3rd International Workshop on Green and Sustainable Software—GREENS 2014, pp 46–53. doi:10.1145/2593743.2593750
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 (Mobicom’12), pp 317–328
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 Inf Syst 1:294–304
Noureddine A, Bourdon A, Rouvoy R, Seinturier L (2012) A preliminary study of the impact of software engineering on greenit. In: Proceedings of First International Workshop on Green and Sustainable Software, pp 21–27
Noureddine A, Rouvoy R, Seinturier L (2013) A review of energy measurement approaches. ACM SIGOPS Oper Syst Rev 47:42–43
Penzenstadler B, Raturi A, Richardson D, Tomlinson B (2014) Safety, security, now sustainability: the nonfunctional requirement for the 21st century. IEEE Softw 31:40–47
Povoa LV, Junior PWB, Monteiro CE, Mueller D, Marcondes CAC, Senger H (2013) A model for estimating energy consumption based on resources utilization. In: IEEE Symposium on Computers and Communications (ISCC), pp 1–6
Quinlan JR (1986) Induction of decision trees. Mach Learn 1:81–106
Raturi A, Penzenstadler B, Tomlinson B, Richardson D (2014) Developing a sustainability non-functional requirements framework. In: Proceedings of the 3rd International Workshop on Green and Sustainable Software (GREENS 2014), pp 1–8
Sabharwal M, Agrawal A, Metri G (2013) Enabling green it through energy-aware software. IT Prof 15:19–27
Samak T, Morin C, Bailey D (2013) Energy consumption models and predictions for large-scale systems. In: Proceedings of the 2013 IEEE 27th International Symposium on Parallel and Distributed Processing Workshops and PhD Forum (IPDPSW ’13), pp 899–906
Seo C, Malek S, Medvidovic N (2008) Estimating the energy consumption in pervasive java-based systems. In: 6th Annual IEEE International Conference on Pervasive Computing and Communications, PerCom 2008, pp 243–247. doi:10.1109/PERCOM.2008.85
Shenoy SS, Eeratta R (2011) Green software development model: an approach towards sustainable software development. In: 2011 Annual IEEE, India Conference (INDICON), pp 1–6
Sierszecki K, Mikkonen T, Steffens M, Fogdal T, Savolainen J (2014) Green software: Greening what and how much? IEEE Softw 31:64–68. doi:10.1109/MS.2014.63
Zhang C, Hindle A (2014) The impact of user choice on energy consumption. IEEE Softw 31(3):69–75. doi:10.1109/MS.2014.27
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Beghoura, M.A., Boubetra, A. & Boukerram, A. Green software requirements and measurement: random decision forests-based software energy consumption profiling. Requirements Eng 22, 27–40 (2017). https://doi.org/10.1007/s00766-015-0234-2
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00766-015-0234-2