Yesterday I attended a workshop on software preservation. I consider this an important area since a huge amount of research data is virtually impossible to access or understand without the help of some sort of software – indeed, many of the scientific processing pipelines nowadays are completely digital in nature.
The workshop began with presentations from Kevin Ashley (Digital Curation Centre), Neil Chue Hong (Software Sustainability Institute) and Brian Matthews (Science & Technology Facilities Council). Presentations and a workshop report will be made available via the project blog.
Unfortunately, I missed much of Kevin’s presentation due to my train being held up at Swindon, but I did note that he mentioned the OAIS Model and Representation Information Networks.
Neil’s presentation centred around “key decision points” including the difficulty in defining what exactly it is that we need to preserve given all the complex dependencies involved in even the smallest software application and how exact we need the preservation to be (functionality; interface; experience etc.) Identifying the significant properties becomes critical here.
Brian began his presentation with the challenge “how do I know that I have preserved the software?”, identifying several steps in the process from preservation to retrieval to reconstruction to replay as a means of checking that the preserved system behaves in the same manner as the original.
Following the presentations we undertook a group exercise looking at: who has responsibility to preserve software? who needs to be involved? and what practical steps can be taken? This brought up a host of complex issues including: identifiers, standards, licences, IPR, user testing, cost-benefit analysis, funding issues etc.
After lunch we went through another group exercise trying to identify preservation requirements and approachs for a specific piece of software.
The complexities involved in trying to preserve software were particularly highlighted through this exercise.
One specific take-home message for me was that the best way to curate and preserve software is to make sure that it has a good user community ensuring that it is maintained and kept “fit for purpose”.