This article covers the problems of improving the energy efficiency of information systems. Two main directions - hardware and software - have been identified. The existing methods to reduce energy consumption at the software level have been analyzed. A new holistic approach to the development of energy efficient software that passes through its entire life cycle has been proposed. This approach consists of the five levels, including requirements, design, building, compile and testing. For each level algorithms, methods and techniques to improve the energy efficiency have been proposed. Key words: energy efficiency, software life cycle, green compiler, C-state, green software.