TeamForm Reports is designed to enable anyone, regardless of the level of technical sophistication, to harness the power of your team data big and small. TeamForm Reports uses the SQL language to enable you to explore, query, visualise, and share your team's data.
This page describes the concepts relevant to the TeamForm schema construct and explains the foundation of the various tables that are available in TeamForm Reports to query against.
Teams
A team is a generic construct for grouping a set of people. People are members of a team. Teams can be empty or contain one or more people.
Teams can optionally have a type which is a textual label to differentiate different classes of teams. Type gives a team a business context such as squad, guild or chapter.
Teams can optionally exist in a hierarchal tree structure. In this graph, teams have a single parent team and optionally one or multiple child teams. A person can thus be considered a member of a team in two different ways:
directly by being an explicit member of a team, or
indirectly by being a member of a child team.
Supply and Demand Teams
Specific team types can be designated as supply teams or demand teams.
Supply teams are used to represent direct reporting lines. People can only be a direct member of one supply team. An example of a supply team is an Agile Chapter.
Demand teams are used to represent dotted line reporting lines structures. People can be in multiple demand teams and can have proportional membership using a full-time equivalent (FTE) value. An example of a demand team is an Agile Squad. Membership of demand teams is managed by allocations.
Divisions
Divisions represent the supervisory structure of the organisation. This dataset represents the structure from a customer’s Human Resources Information System such as Success Factors or Workday.
Allocations
An allocation is a membership of a person to a demand team by a particular amount of FTE. People can have multiple allocations and thus can be members of multiple demand teams at the same time.
Planning Requests and Approvals
Planning allows demand teams to request an FTE amount from a supply team, which the supply team can then approve an amount of FTE they agree to supply to the demand team. The requests and approvals are not of named people but simply FTE amounts between a supply team and demand team. This process enabled the supply and demand exchange across an organisation.
Each request or approval has two states; saved and submitted.
A saved request is when a demand team user has entered an FTE amount but the request has not been made visible to the supply team. Requests remain in a saved state so that they can be reviewed at a holistic level by demand teams. Once ready, requests transition to submitted requests by a user submitting them. This will process a batch of saved requests which will then be visible to supply teams.
A saved approval is when a supply team user has entered an FTE amount but the approval has not been made visible to the demand team. Approvals remain in a saved state so that they can be reviewed at a holistic level by supply teams. Once ready, approvals transition to submitted approvals by a user submitting them, This will process a batch of saved approvals which will then be visible to demand teams.
Project
An project is a construct defined by a start and end date in which planning requests & approvals take place. Each project likely represents a single planning interval, such as a quarter.
Forecast
Forecasting enables demand teams to estimate the amount of FTE required from supply teams over a number of horizons (allocation projects). Unlike planning only requests are entered. There is no approval from the supply teams. Because of this, there is no state. Forecasts are not of named people but simply FTE amounts between a supply team and demand team.
Tags
A "tag" is a user-defined label that can be assigned to objects in TeamForm such as people and teams. Tags help categorise and easily search for specific pieces of information by creating associations between related items. Tags are highly flexible and customisable, allowing specific customer use-cases.
Associations
Associations allow for modelling relationships between teams, beyond traditional parent and child relationships. These relationships can have a categorised with a direction and a type.
Objectives
Objectives are organisational OKRs which can be linked to teams, to provide an overlay of how teams are aligned to organisation goals. Objectives is a hierarchical data model that allows for multiple parents and children.