We’ve previously posted about Open Source Collection Management and our work with the Western Australian Museum (WAM) including the Waminals Project. This is a quick post about our experiences with CollectiveAccess, the system chosen by the WAM as their institutional data repository, which we’ve been implementing within the Museum.
CollectiveAccess (CA) is an open source data management platform that has come out of the Museum informatics community. It was known as OpenCollection in its early days but really found its footing when it became known as CollectiveAccess.
Like a number of the other tools that we work with and develop, CollectiveAccess gives the user / system administrator the ability to define their own data schema and data entry forms. Where it is particularly suited to the Western Australian Museum is its support for revision tracking, media management, built in collection management modules including conservation and loan tracking. While the system is extremely configurable it also comes with sensible defaults and supports a number of metadata standards including DublinCore, DarwinCore and ISAD(G) to name a few through installation profiles. In addition to this since starting work on this project CA has added a number of great features including data importers and exporters, Bulk (spreadsheet style) and Batch (set same value on multiple records) editing and a RESTful web services API.
CollectiveAccess itself has a number of loosely joined components. The main basis of it is Providence which is the data management and entry backend. Providence has a number of optional plugins and it is possible to enhance its features towards individual organisations through the development and customisation of plugins. On top of that it is possible to install and theme up a public frontend to CA using Pawtucket. There are also iOS and map based viewers of CA data available along with modules for other software such as Drupal to incorporate the data into institutional websites.
As can be seen by the number and diversity of institutions reported as running CA, it has a very broad user base and is supported by a number of institutions, private development agencies and individuals. This has meant that it has managed to capture a lot of the requirements of institutional collections and archives. Having the backing of a number of commercial agencies has meant that modern software development practices and techniques are now used. As we have noted elsewhere, open source does not mean that companies cannot both contribute and benefit from shared projects. There is a great community forum that is open to both novices and more advanced users and this active community. On top of this there is a well managed Wiki that contains all of the documentation relating to setting up, maintaining and developing CA instances. The lead developer, Seth Kaufman, has an in depth knowledge of the system and is ready and able to support users and developers with their queries, but he is certainly not alone.
On top of the ability to define custom forms and fields, CollectiveAccess also gives the user the ability to define custom relationships between the native and custom object types, and it is possible to add fields to these relationships so we have been able to collection information such as the details of the person / people who identified a particular specimen on a particular date. If these relationships were just plain text fields you wouldn’t be able to do things like then browsing from that specimen to the person who identified it and then from there on to the list of specimens that that person has identified or collected and from there on to the collecting localities that they have visited.
The data browser in CollectiveAccess is paired with a powerful full text search index that allows the user to facet their data in any way that they like. On top of that it is possible to easily export the results of searches and present them in any number of formats including PDF, CSV, thumbnails and labels ready for printing.
One of the most gratifying things about working on Open Source Software is the fact that you are free to modify the software to your needs and more importantly you can (and indeed are sometimes required to) contribute those changes back to the software development community. We have experienced this on numerous occasions whereby we started out finding bugs in the software and reporting them to the CollectiveAccess issue tracker and fixes for those bugs would land within a few hours in the CollectiveAccess GitHub respository. As we became more familiar with the software have been able to contribute features and bug fixes via GitHub pull requests. If you are planning to contribute code to any open source project it is generally a good idea to make sure you record details as to the reasons for the changes and sensible descriptions of those changes on the respective project’s issue tracker and CA is no exception to this: they ask that you file feature and bug request in their Jira instance, which we have been doing on a regular basis.
And in a double twist of the usual status quo with open source software, we have recently received a nice tote bag from the core CA developers for our contributions to the project – Thanks
Links to Collective Access material
Home Page: http://www.collectiveaccess.org
Issue Tracker: http://clangers.collectiveaccess.org/jira
Source Code: https://github.com/collectiveaccess/providence
In summary we have found that CollectiveAccess has given us a lot of the benefits of FOSS (Free and Open Source Software) and enabled us to move forward with our partners with minimum pain and maximum gain. Stay tuned to our blog and we will keep you updated with this project with the Western Australian Museum as the project progresses.