5 research outputs found
Refactoring an existing code base to improve modularity and quality
Code written in modern programming languages (such as Java) can be almost impossible to understand and maintain due to poor design and coding practices used during its development. Instead of redeveloping the entire code from scratch (which is an expensive and time-consuming proposition), typically a series of refactoring steps are applied to make the software better in terms of both design and coding quality, which translates to better user experience because the maintainability and scalability of the application is increased. In this project we consider an existing code base that was written hastily in Java and was really poor in terms of design and code quality. We share our experiences in refactoring this code base in order to make it modular and with improved design and code quality. We first analyzed the existing code base to identify areas for improvement and then used certain benchmark metrics to guide the refactoring. We present a comparison of the final state of the code with the original code base to demonstrate the use of good software development practices
Genetic Improvement of Software (Dagstuhl Seminar 18052)
We document the program and the immediate outcomes of Dagstuhl Seminar 18052 “Genetic
Improvement of Software”. The seminar brought together researchers in Genetic Improvement
(GI) and related areas of software engineering to investigate what is achievable with current technology and the current impediments to progress and how GI can affect the software development
process. Several talks covered the state-of-the-art and work in progress. Seven emergent topics
have been identified ranging from the nature of the GI search space through benchmarking and
practical applications. The seminar has already resulted in multiple research paper publications.
Four by participants of the seminar will be presented at the GI workshop co-located with the
top conference in software engineering - ICSE. Several researchers started new collaborations,
results of which we hope to see in the near future