Skip to content

workflow_definition

Malte Kyhos edited this page Apr 10, 2021 · 2 revisions

Workflow definitions and ideas

Basic defintitions

  • Issues/tickets The most atomar description of a problem that needs to be solved, or a new feature that needs to be implemented. A ticket has
    • a unique identifier,
    • a concise description of the task and the expected outcome,
    • (optionally) an estimate of the complexity of the task
    • and can be assigned to one or more people.
    • Furthermore, it might be related to other issues (e.g. blocking other issues, or being blocked by another issue)
  • Epics are basically a group of issues that belong to the same greater project goal. In our context, this might be the implementation of data retrieval endpoints, that is, a goal that is to complex for being completed in a single iteration etc. They help to understand how issues are related.
  • Sprint/Milestone in SCRUM, a sprint is a fixed time interval (e.g. 2 weeks). During a sprint, everyone works on a previously defined set of issues that can be completed durint that interval. A sprint is furthermore associated with a set of events, see below. We could use a weak sprint-like definition to protion work packages between regular (e.g. weekly, bi-weekly) meetings.
  • Releases We could use releases to group Epics and Issues together that we want to have finished until a specified date. As we do not have explicit external stakeholders, this is less of an issue. However, it could help to structure work and monitor progress.

Events

  • Refinement This is were we talk about the newly created issues, prioritise them, estimate their complexity, and assign them to people. In a pure SCRUM framework, this would be the task of the Product Owner, who is in contanct with other stakeholders etc.
    • Refined issues go into the general Project backlog (in priority order), or into the specic selection for development in the current sprint.
  • Review (and planning) after the end of a sprint, we talk about the progress being made, determine future adaptions to issues, and plan the next sprint (select issues for development, assign them).
  • Retrospective in a regular interval, discuss as a team how the cooperation and the project is going on for everyone. Do we have communication problems? Are there problems that anyone wants to discuss as team? Here, we can think about how to improve our cooperation.