SWD3: Software development practices for Research

Booking for this course is through the IT Training Unit. Click here to book

Workshop content

The purpose of this workshop is to introduce a number of the techniques and concepts that professional software developers use to manage their code, projects and teams. Although the development of research codes and software has different needs and challenges to the development of commercial software, there are nonetheless some tools and techniques that we can adopt or adopt to improve our Research Software Engineering. This isn’t a programming workshop, so it will be relevant to you whichever programming language (on Windows, Linux or Mac) or infrastructure (HPC, Cloud, Desktop) you use. This will be a hands-on session with lots of discussion and small group activities. We’ll be joined by a number of people who develop codes and software who will share their experiences.

At the end of the workshop, attendees will be able to:

  • Defining and managing projects and teams

  • Software and data management plans

  • Effective communication tools and techniques

  • Planning and software design

  • Git and version control workflows

  • Testing and code review

  • Continuous Integration (CI) and Continuous Development (CD): Tools and techniques

  • End of project reviews

Prerequisites

None

Duration

1 day

Frequency

This course usually runs once each academic year.

If you would like a bespoke version of this course run in your department then please contact us.

Suitability

Research postgraduate students and above; teaching and lecturing staff.