The CodeScene tool has its roots in my books, Your Code As A Crime Scene and Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis.


Both of these books have the implied goal to take mainstream software development one step closer to the point where decisions-—both technical and organizational—-are influenced by data and research. Hence, it’s a natural next step to bring CodeScene into academia and evaluate the tool in a research setting.




Joining a Research Project


Last year Empear, the company behind CodeScene, joined the TESTOMAT project. TESTOMAT is an international research project with the overall goal of helping software teams strike a balance between increased development speed without sacrificing quality.


Our first contributions include two academic papers that we’ll present at the following conferences:


  • TechDebt 2018 – International Conference on Technical Debt: We’re part of the tools track to present our paper “Prioritize Technical Debt in Large-Scale Systems”. The paper examines how CodeScene can be used to prioritize technical debt in a large-scale codebase like the Linux Kernel based on the most likely return on code improvements.
  • NEXTA 2018 – NEXt level of Test Automation: We present a paper on “Assessing Technical Debt in Automated Tests”, which discusses why test automation won’t deliver on its promises of shorter lead times and higher quality unless the quality of the automated test code itself is maintained, and how CodeScene can identify problematic test code and suggest refactorings.


CodeScene prioritizes technical debt in large codebases, here with an example from the Linux Kernel and its 16 million lines of code.

CodeScene prioritizes technical debt in large codebases, here with an example from the Linux Kernel and its 16 million lines of code.


But this is only the beginning. The exciting thing about a large research project like TESTOMAT is that it includes problem owners from the industry. This gives us an excellent opportunity to collaborate and evaluate how CodeScene’s analyses help solve real problems in different industry settings. Sure, we have several success stories with our existing customers where CodeScene is used on codebases with million lines of code and thousands of developers on a daily basis. But in a research setting we get access to the data and focus on measuring the impact of our findings. We’re also putting CodeScene in the hands of independent researches that will use the tool and its techniques to answer research questions.


Joining a research project is in line with our mission to constantly make CodeScene as valuable as possible to you–our users. And these research collaborations are one important step in that direction.