Reuse Concepts for Jupyter Notebooks

With the rise of sophistication and complexity in the software industry, the tools and techniques for developing software are continuously evolving. In recent years, code reuse and Jupyter Notebooks have become popular additions to software development, making programming more accessible and efficient for everyone. However, despite their potential benefits, the current process of code reuse in Jupyter Notebooks remains manual, requiring users to manually search for reusable code in other notebooks and copy and paste it into their own. This manual process can be time-consuming and discourage programmers from practicing code reuse. To address this issue, this study explores ways to improve the code reuse process in Jupyter Notebooks by proposing best practices that make code cells easier to reuse in the future. Additionally, the study presents several solutions to help developers search for reusable code, including a recommendation system for code cells in Jupyter Notebooks. This recommendation system is implemented as a library for the Python programming language and evaluated to determine its effectiveness in improving code reuse. Through this research, the study aims to provide practical guidance for developers to improve code reuse in Jupyter Notebooks, ultimately enhancing the efficiency and effectiveness of software development.

Project information

Status:

Finished

Thesis for degree:

Master

Student:

Shaomi Rahman

Supervisor:
Part of research project:

SE4ML - Processes, People and Tools

Id:

2023-006