circle_engineering/docs/grid_release_procedures.md

93 lines
3.0 KiB
Markdown
Raw Permalink Normal View History

2024-12-31 17:15:25 +00:00
<h1>Grid Release Procedures</h1>
<h2>Table of Contents</h2>
- [Introduction](#introduction)
- [Grid Release Goals](#grid-release-goals)
- [Grid Release Timeline](#grid-release-timeline)
- [Story Metadata](#story-metadata)
- [Grid Release and Stories ETA](#grid-release-and-stories-eta)
- [Owner and Executor](#owner-and-executor)
- [Project](#project)
- [Labels](#labels)
- [Stories Status](#stories-status)
- [Moved or Updated](#moved-or-updated)
- [Story Template](#story-template)
---
## Introduction
We provide the overall procedures for optimal grid release.
## Grid Release Goals
- A grid release is well accomplished if:
- It has clear specs defined at the beginning of the project
- The specs are turned into clear stories filled with proper information
- Stories are completed within the given ETA and stakeholders confirm the work done
- Each story has an owner and an executor (can be the same person)
## Grid Release Timeline
Each grid release has a timeline, [see this document](grid_release_timeline.md).
## Story Metadata
Metadatas should be completed for each story to facilitate tracking and realization. The important metadata are: due date, project, label and assignees.
### Grid Release and Stories ETA
- Each story has a clear ETA set as Due Date in gitea metadata
- Each grid release has a clear ETA set as Due Date in gitea metada
- This is done in the Grid Release Timeline story
### Owner and Executor
- Each story has an owner, someone who makes sure the story is completed, and an executor, someone who executes the story
- Owner and executor can be the same person
- The people assigned as Assignees are the Owners of the story
- The owners need to make sure people do the work and that there are executable issues on GitHub or on Gitea
### Project
- Each story should be within a given project (e.g. 3.16)
### Labels
- Each story should be labelled as Story
### Stories Status
Stories have status defined by their position on the project kanban. There are 5 columns:
- To Define
- Stakeholders need to discuss the story and complete the info (e.g. ETA, Owners, Assignees, etc.)
- To Do
- A story has been defined and has not yet been started
- In Progress
- A story being worked on
- Blocked
- If it is blocked, stakeholders must make sure it gets fixed
- If stakeholders can't fix it, it must be escalated to Kristof
- Done
- Once a story is completed, it's closed
### Moved or Updated
Also, a story can be moved or updated.
- Moved
- We can define that the story is better for a future release, so we move it
- Moved story should maintain info related to original issues (e.g. google docs link)
- Updated
- If a story is updated, it must be done with the approval of all stakeholders
## Story Template
- Each story should follow a basic template to make sure they all satisfy the project goals.
- [Engineering Circle Story Template](https://git.ourworld.tf/tfgrid/circle_engineering/issues/new?template=.gitea%2fissue_template%2fstory_template.md)