Software Management Plans

By Mike Jackson, Research Software Engineer. When developing research software, we need to know what we are going to write, who it is for (even if this is just us), how we will get it to them, how it will help them, and how we will evaluate whether it has helped them. A Software Management Plan (SMP) can help us think about these and decide upon the processes we will use when developing our software. To help write SMPs, we have now published version 1.0 of our Checklist for a Software Management Plan.
By Mateusz Kuzak, Maria Cruz, Carsten Thiel, Shoaib Sufi, and Nasir Eisty. We argue that research software should be treated as a first-class research output, in equal footing to research data. Research software and research data are both fundamental to contemporary research. However, the recognition of the importance of research software as a valuable research output in its own right is lagging behind that of research data.   

The UK Open Research Data Task Force has just released a report looking at the Research Data Infrastructure Landscape in the UK and beyond. The report provides a thorough overview of the infrastructure that supports open research data in the UK and abroad.

Why write a Software Management Plan?

Research software can take many guises. It can be a 50 line bash shell script for manipulating and filtering files, a collection of 100 line R scripts for running a bioinformatics analysis, 10,000 lines of Java for medical image analysis or 100,000 lines of Fortran for computational fluid dynamics. It may be written in scripting languages such as Unix shell, Python, R or MATLAB or in "traditional" programming languages such as C, C++, Fortran or Java.

When developing research software, we need to know what we are going to write, who it is for (even if this is just us), how we will get it to them, how it will help them, and how we will assess whether it has helped them or not. A Software Management Plan can help us think about these and decide upon the processes and infrastructure we will use when developing our software.

Since deploying a prototype Software Management Plan service last year, we have been drawing together advice and guidance to help researchers write Software Management Plans. We have now published v0.1…

By Mike Jackson, Software Architect.

Software management plans set down goals and processes that ensure software is accessible and reusable throughout a project and beyond. To complement our guide on Writing and using a software management plan we have now developed a prototype software management plan service, powered by the Digital Curation Centre's data management plan service, DMPonline.

It is easy to concentrate on the short-term issues when developing scientific software. Deadlines for publications, collaboration with others and the demands of a daily routine all conspire to prevent proper planning. A software management plan can help to formalise a set of structures and goals that ensure your software is accessible and reusable in the short, medium and long term.

Subscribe to Software Management Plans