Abstract
Green is gaining importance in the software realm at the present time. Many efforts to obtain sustainable software are being undertaken; as a result, new techniques for producing “Green software” are now appearing. Nonetheless, there is a huge amount of existing software which is not following greenability principles (reduced impact on economy, society and environment). This fact leads to the question “Is there any way to improve the greenability attributes of an existing software?” The key point in offering a solution to this problem lies in one of the most important stages in the software life cycle: Software Maintenance. Software Maintenance not only allows us to solve software problems and improve quality but also enables us to refactor transformations in order to improve certain software characteristics. This chapter offers an overview of what kind of techniques, tools and practices could be useful in software maintenance in the quest to improve software greenability in existing software systems.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Arnold RS (1992) Software reengineering. IEEE Press, Los Alamitos, CA, p 675. ISBN 0-8186-3272-0
Brown WH, Malveau RC, Mowbray TJ (1998) Antipatterns: refactoring software, architectures, and projects in crisis. Wiley, New York
Chikofsky EJ, Cross JH (1990) Reverse engineering and design recovery: a taxonomy. IEEE Software 7(1):13–17
Cunningham W (1192) The WyCash portfolio management system. In: Proceeding OOPSLA ’92 addendum to the proceedings on object-oriented programming systems, languages, and applications (addendum). ACM
Eclipse (2013) Test & performance tools platform project [cited 12/07/2013]; available from: http://www.eclipse.org/tptp/
Fowler M (1999) Refactoring: improving the design of existing code. Addison-Wesley, Boston, MA
HTML, N. Neko HTML Parser v 1.9.18 (2009) [cited 12/07/2013]; available from: http://nekohtml.sourceforge.net/
IEEE (2014) Guide to the software engineering body of knowledge (SWEBOK®). IEEE Computer Society, p 346
Informa Project. Informa RSS Java Library (2007) [cited 02/04/2013]; available from: http://informa.sourceforge.net/
ISO/IEC, ISO/IEC 14764 (2006) Software engineering – software life cycle processes – maintenance. http://www.iso.org/iso/catalogue_detail.htm?csnumber=39064. ISO/IEC
ISO/IEC (2006) Software engineering – software life cycle processes – maintenance. ISO/IEC, p 56
ISO/IEC, ISO 25000 (2005) Software product quality requirements and evaluation (SQuaRE) 2013
JDeodorant. JDeodorant tool (2012) [cited 02/04/2013]; available from: http://jdeodorant.com/
Kruchten P et al (2013) Technical debt: towards a crisper definition report on the 4th international workshop on managing technical debt. Software Eng Notes 38(5):51–54
Lehman M (1980) Programs, life cycles, and laws of software evolution. In: Proceedings of the IEEE
Lim E, Taksande N, Seaman C, Balancing A (2012) What software practitioners have to say about technical debt. IEEE Software 29(6):22–27
Mens T, Tourw T (2004) A survey of software refactoring. IEEE Trans Software Eng 30(2):126–139
Mowbray T (1998) Antipatterns: refactoring software, architectures, and projects in crisis. Wiley, New York
Murugesan S (2008) Harnessing green IT: principles and practices. IT Prof 10(1):24–33
Murugesan S et al (2013) Fostering green IT – guest editors’ introduction. IT Prof 15(1):16–18
Naumann S et al (2011) The GREENSOFT model: a reference model for green and sustainable software and its engineering. Sustain Comput Informat Syst 1(4):294–304
Pérez-Castillo R, García-Rodríguez de Guzmán I, Piattini M (2011) Business process archeology using MARBLE. Inform Software Tech 53(10):1023–1044
Perez-Castillo R, Piattini M (2014) Analyzing the harmful effect of god class refactoring on power consumption. IEEE Software 31(3):48–54
Shenoy SS, Eeratta R (2011) Green software development model: an approach towards sustainable software development. In: Proceedings of the annual IEEE India conference (INDICON 2011). IEEE Computer Society, Hyderabad
Smith CU, Williams LG (2000) Software performance antipatterns. In: Proceedings of the 2nd international workshop on software and performance. ACM, Ottawa, Ontario, Canada, pp 127–136
Visaggio G (2001) Ageing of a data-intensive legacy system: symptoms and remedies. J Software Mainten Evol Res Pract 13:281–308
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this chapter
Cite this chapter
de Guzmán, I.GR., Piattini, M., Pérez-Castillo, R. (2015). Green Software Maintenance. In: Calero, C., Piattini, M. (eds) Green in Software Engineering. Springer, Cham. https://doi.org/10.1007/978-3-319-08581-4_9
Download citation
DOI: https://doi.org/10.1007/978-3-319-08581-4_9
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-08580-7
Online ISBN: 978-3-319-08581-4
eBook Packages: Computer ScienceComputer Science (R0)