Project structure discussion – Neos Sprint 2015 – Frankfurt

Define project / kitchen duty / tasks

Kitchen duties:

Things that need to be taken care of periodically (not planable) that aren’t features.

  • Maintenance tasks
  • Bugfixing
  • Server
  • Cleanup
  • Support queues (inboxes)
  • Activity updates (blog posts)
  • Review (pull request triage)
  • Issue queue triage

Task

  • As small as possible (cannot be broken into smaller pieces) – should be less than a day of work
  • Single concern
  • Needs to have a ticket
  • Needs to be brain stormed/reviewed by another team member
  • Tasks that have been selected by the prioritizer should be worked on first
  • No necessarily part of a project (not a sub-task)
  • Responsibility of the team when selected for the team backlog

Examples:

  • Documentation
  • Small feature
  • Writing a blog post
  • Fix a bug
  • Add a test
  • Cleanup
  • Take care of something

Project

  • Epic in Jira
  • must be an accepted Project Proposal (see below) and is created by a prioritizer (e.g. website update)
  • Consist of multiple tasks
  • Multiple people need to work on
  • Limited and defined scope (can be finished, not a topic)
  • Can be solved by a team autonomously
  • Can vary in size
  • Should be broken down further if they are not achievable for the team in less than three months

Note on Accepted Projects and Proposals:

Even if a project has already been decided upon, create a Project Proposal for documentation purposes so it is transparent what it is about and who decided it. Projects coming out of an RFC must also have a Project Proposal (as a linked topic).

Project Proposals are to be posted in Discourse in the Project Proposals category and probably follow some template. Discussion period etc. need to be defined, probably.

Project proposals and new RFCs should be announced in the relevant Slack channels and on any other channel that makes sense to raise awareness and give everyone a chance to know about it.

Example:

  • Releasing a Neos/Flow version is a project
  • Every bigger feature is a separate project
  • A marketing campaign
  • Setting up and adjusting to a new tool

Guidelines for filling project / kitchen duty / task backlog

Backlog

  • A team backlog for each team
  • A general backlog for the whole Neos/Flow project
  • Team backlog filled from the general backlog by the prioritizer
  • Team members can influence team backlog through the prioritizer

Projects

  • Can come from team members, community, CoP, customers (through team members) by creating project proposals

Tasks

  • can only be added to in-progress projects if the prioritizer approved

Kitchen duties

  • Can come from Jira tickets, incoming emails – create a jira ticket or send an email a fitting inbox for all other inquiries