# Prioritising schema updates

Table of contents

  1. Purpose of this SOP
  2. Flow summary chart
  3. Process
    1. Ticket acknowledgement
    2. Wrangler catch-up
    3. Creating a priority ticket
    4. Outcomes
    5. PR process
  4. Template messages
    1. DCP-2 slack channel message

Purpose of this SOP

This document describes the process of prioritising schema updates. It focuses on the early stages of schema updates:

  • Discovery and prioritisation of next updates
  • Responsibilities

This document will not cover the steps required to make an actual schema change. Those steps are covered in the following documents:

Flow summary chart

Process

Ticket acknowledgement

Every 2 weeks, the designated wrangler will review and update the rolling ticket with the new issues that are not already collected.

Wrangler catch-up

On the bi-weekly wrangler catch-ups, one of the points will be to discuss and prioritise the next set of schema updates. In order for new priorities to be set, the next requirements must be fulfilled:

  1. Both schema updates had an outcome (Accepted/rejected) and made it to production (In the accepted scenario)
  2. The desired schema updates must be gathered in a ticket that will hold information about what changes are needed and why.
  3. The tickets need to be listed in the rolling ticket

If condition 1 is met, the former designated wrangler will proceed to close the priority ticket from the previous iteration. The wranglers will then discuss what are the next priorities, based on what is needed to ingest new datasets, get a more accurate representation of the metadata, or based on community/system requirements.

Once a decision is reached based on majority, the wranglers will then assign a new designated wrangler for that 2 week period, who will overlook the process from here on and assign responsibilities on PR creation.

Condition 1 is necessary and refers to workflow, whereas conditions 2 and 3 are needed for tracking but not essential to continue with the process. If condition 1 fails, the designated wrangler for that priority ticket will report on the reasons why and, if more time is deemed necessary, this item in the agenda will be skipped until the next meeting.

Creating a priority ticket

The designated wrangler, based on the conversation during the catch-up meeting, will create a ticket in the following 3 working days, using the template provided. This ticket will be used to track the next set of priorities, and will contain the following information:

  • List of changes that will be prioritised next (max 2)
  • Each ticket assigned to the wrangler that will create the PR. The wrangler may be the same for both tickets, and in some cases it may be the same as the designated wrangler.

The EBI team uses internally this ticket to track the status of the schema updates. Once the PR is ready the link should be added in the tracking ticket.

Outcomes

After both PRs are accepted or rejected, the designated wrangler will be in charge of commenting on the outcome in the ticket, effectively closing it on the catch-up meeting or extending the deadline for another 2 weeks if there are discussions or unplanned inconveniences.

PR process

The PR process is covered on the other documents listed in the “purpose” section of the document. Please take a look at the message template to announce the PR on the #dcp2 slack channel provided in this SOP

Template messages

DCP-2 slack channel message

Hi team! I’ve opened a PR in the schema repo to <brief description of the PR's aim> (more context here ). @Enrique Sapena Ventura @Amnon @rmunshi @ncalvanese @Hannes @Dave Rogers Could you please review it?