HomeResource hub

Improving the development of popular bone analysis software

Bookmark this page Bookmarked

Improving the development of popular bone analysis software

Estimated read time: 5 min
Sections in this article
Share on blog/article:
Twitter LinkedIn

Improving the development of popular bone analysis software

The impact

When Michael Doube began developing BoneJ, he had no experience writing Java code and had only basic programming skills to assist in his own research. So he put together code that did what he needed it to do and bundled it to be easily shared among researchers with similar questions.

Several years later, the veterinary scientist finds himself faced with demands greater than he anticipated – and the Software Sustainability Institute has been helping him to manage and develop his code so that other people can benefit even more from what has turned out to be a highly useful and popular product.

BoneJ is a plugin for bone image analysis in ImageJ. It can manage very large, essentially unlimited image sizes, and allows researchers to measure the properties of bones and bone tissue to understand how bone structures vary among species at the cellular, tissue and organ scales. Over 85 papers have cited the use of the plugin in research into human and animal musculoskeletal systems, as well as in anthropology and paleontology, and many other diverse fields.

The problem

Doube is a lecturer at the Royal Veterinary College, University of London. His work focuses on imaging the musculoskeletal system, and it keeps him far too busy to be working on the code, no matter how pleased he is that others are finding it useful. With that in mind, he got in touch with the Institute, to see how it could help.

“I want to get BoneJ to a state where it’s not really ‘mine’ any more, and has a much greater input from the user community. I don’t have time to write code all day, though that would be fun, so BoneJ was just going to get stale, and over time it would end up broken without any support,” Doube says.

The Institute performed an audit on the current situation, which proved enormously useful, as Doube notes. “It was really helpful to sit down and go through everything, look at where things stand and what was currently ‘broken’. I was impressed with the really fine detail that they went into,” he says.

The Institute's review looked at how the project was engaging with users and developer communities, and at support for new developers, including the website and source code available. A survey of users was also useful in finding out who was using BoneJ and what they were doing with it.

The solution

Over 40 recommendations were made after this initial study, including coding style guidelines, a contributions policy and process, possible improvements to the code, and a refresh of the website – which Doube admits had become very difficult to work on and share access to.

“I knew that I needed to move to a CMS, but I only had a vague idea of what was out there, and just didn’t have time to spend a week trying them all,” he says. The Institute assessed a range of tools - and reported back on the various merits of Wordpress, Joomla!, Drupal and MediaWiki to help Doube make an informed choice.

Many of the Institute’s recommendations have already been put in place, and Doube is keen to do more. First, however, he needs funding for a full time, specialist developer.

“With support from RVC colleagues, I am a co-applicant on a Biotechnology and Biological Sciences Research Council grant, and am hoping for an answer early next year. We’ve listed the Institute as a member of the strategic management board of the grant, to give advice on software engineering – and I know that their reputation has really helped in the initial stages of the application. Mike Jackson explained to me how and when things would progress, which let us put together a timeline, while Neil Chue Hong wrote us a letter of support that was very well received.”

The grant would build a new team to turn BoneJ into a product of much greater benefit to the user community. As Michael says, “we need long term work on it, not just six months and fixing a few things. It’s a big job, and needs a professional to do it properly - a computer scientist or engineer, not a vet with some coding skills.”

He also confirms that the Institute will continue to be involved too. “We’re keeping the lines of communication open while we wait to hear. It’s helpful to have real engineers to hand who know what to expect over five year projects. Scientists tend to just vanish into the lab and get on with work.”



Share on blog/article:
Twitter LinkedIn