Tools for managing RSE projects
Managing an RSE team can involve carrying out a broad range of tasks relating to the management of people and projects. The exact nature of these tasks will depend on the size of team, and the how the leadership role is defined within any particular institution, but they typically include scheduling, resource allocation, reporting, communication, task management and record keeping. Our discussion at the RSE Leaders Workshop in January 2018 focused on sharing knowledge about effective tools for managing these processes.
Authors: Mark Woodbridge (Imperial College London), James Meakin (Radboud University Medical Center), Jim Procter (University of Dundee), Jeffrey Salmond (University of Cambridge), Daniel Smith (The Molecular Sciences Software Institute)
Many of these management and co-ordination tasks are common to software development in an industrial setting, but some issues specific to RSE teams were identified:
- RSE groups often adopt or collaborate on projects that have been developed in relatively decentralised organisations. Adopting projects may mean adopting their tools for issue management or communication. This can lead to a fragmented toolset.
- RSE teams typically don’t have the resources to employ full-time staff to deploy and customise services that aren’t core to their operation
- RSE groups are often embedded in larger groups or organisations with existing infrastructure and processes for (e.g.) project management. These may be fully featured and well supported, but focused on business- rather than research-related projects. RSE leaders must decide whether to pragmatically embrace and/or integrate these products/services, even if they aren’t objectively the more appropriate solutions.
We continued to identify some tools that those leading RSE teams have found useful for specific purposes (open source tools are annotated with asterisks):
- Lead tracking. In industry tools for this purpose would typically be related to managing sales pipelines. In an RSE context this relates to keeping track of proposed projects, and following up on opportunities for collaboration. This work is typically carried out by one or two individuals and the tools cited are therefore not typically used by the whole team:
- Project management, resource allocation, effort estimation. Again, these tools are typically used by those leading the team:
- Time tracking
- Progress tracking, task assignment, issue management
- Documentation, knowledge base
Our discussion included the following observations about tooling:
- Some of these overlap in functionality and many can be used in a very flexible manner (viz Trello, GitHub). It is just as important to clearly define how they should be used as deciding which should be used, ideally by consensus.
- Excel can (and is) used to fulfill almost all of these function. It clearly has many disadvantages, particularly around collaboration, but can provide a level of customisation lacking from less flexible tools.
- There are numerous home-grown systems and processes in use but the existence and purpose of these is not widely shared
Several criteria were cited as priorities when it came to selecting tools:
- Cost. Free tools, or those with a suitable free tier, are popular amongst RSE groups. This reflects the fact that even where there is funding available for buying software licences it can still be hard to procure SaaS (i.e. subscription) products, which often require recurring payment, and typically via a credit card.
- Scalability. Most RSE groups start small with ambitions to grow. Leaders recognise the need to use tools that can scale to at least 10 or 20 users, whilst not being unwieldy for smaller teams.
- Usability and familiarity. It shouldn’t be necessary to become an expert to unlock the value of appropriate tools. Small teams normally don’t have the resources to employ full-time admins.
- Functionality. Using a limited number of full-featured tools was deemed preferable to using numerous more specific ones, even if they were individually better designed. There can be a significant cost in managing and integrating tools.
- Existing systems. RSE teams are often embedded within departments or organisations that have systems in place for some of the required functions, even if these systems are deployed for slightly different purposes or targeted at different users. It may be preferable to re-use this infrastructure if it’s already paid for and maintained.
It’s clear that there isn’t a standard toolkit for project management - and this shouldn’t be a surprise considering the diverse environments in which RSE teams have developed, and the huge number and variety of tools available. However, in the course of our discussion we did form some conclusions, and note a couple of opportunities:
- There will never be a one-size-fits-all toolset that suits all groups, but the productivity of RSE teams can be materially influenced by tool selection and little knowledge is currently shared about which are useful, and how they can be used. This could be addressed by the provision of a space for documentation.
- Where mature bespoke solutions have been developed specifically to support RSE activities we should investigate the possibility of sharing them, whether they are software, Excel sheets or system connectors
- The role of Research Software Project Manager will become more important as RSE teams grow - providing scope for specialisation and efficiency. It should be appreciated, and promoted more widely.
If you have experiences or recommendations to share regarding tools for managing people or projects then please join us on Slack!