Seminar: Towards Greener Software — Measuring Performance and Energy Efficiency of Enterprise Applications
Abstract: Performance is an important aspect of software quality in most software applications. In recent years, the topic of energy efficiency has become increasingly important. Enterprise applications running in the cloud receive particular attention. Poor performance and low energy efficiency lead to high operating costs and a negative impact on the environment.
An ongoing master student research project aims to investigate how the performance and efficiency are measured according to the state of the art and the practice today; differences are identified and analysed. Following an empirical approach, an existing application test setup and its measurement results (publicly available in the “Growing Green Software” blog) are first reproduced and then compared with the behaviour of a second sample application. The two respective sample applications are open source-projects leveraging Java, Spring Boot and JPA; one of them comes as a set of microservices. Documenting the software architectures with contemporary software engineering practices such as domain-driven design and UML is part of the assignment. The project also aims at generalizing its findings into a set of recommendations for other application genres and architectural styles. This talk will report project context and goals, preliminary results and lessons learned so far.
Biography: Jan graduated with a BSc in Computer Science at the Eastern Switzerland University of Applied Sciences, where he currently completes his Master of Science in Engineering (MSE) in the Computer Science profile. Jan specialises on software engineering, software architecture and cloud technologies. He has more than twelve years of experience in the software industry as a software developer and fullstack engineer. His MSE research focuses on metrics to compare enterprise application architectures and measuring how well distributed enterprise applications satisfy their non-functional requirements. The energy consumption of cloud applications receives particular attention in this work.