Core concepts and relations
The page explains what “building blocks” Assist consists of and how they are connected. After it, the descriptions of screens and processes will be clear without extra explanation.
Relation diagram
Client and product
└── Project project key: RGM, project number: 20
├── Project team people, each with a role label
├── Release 2.4 release number: 4
│ ├── Task RGM-27 task key: project prefix and number
│ │ ├── Subtask RGM-28
│ │ └── Subtask RGM-29
│ └── Task RGM-31
├── Tasks without a release “project backlog”
├── Tags and task groups project directories
└── Project boards
Task ── Track (a time entry) ── Work type
Task ── Comments ── Notifications
Person ── Role ── Permissions for pages, tabs, records, and fields
Core entities
Project
A project is the main unit of work. A project has:
- a client and a product — text names for which the work is done;
- a name — how the project is called in lists;
- a prefix — a short code of uppercase Latin letters, digits, and a hyphen (up to 10 characters), for example
RGM. Task keys are made from it; - a project type — a directory value set by the administrator;
- release types — which release processes are allowed (for example, KANBAN or SCRUM);
- a team — the people who take part in the project. The project owner is always on the team;
- a stage — a stage of the project's life (for example, “Idea”, “Development”, “Project completed”);
- a number — the project's sequence number in the cabinet, for example
#20. It is used in page addresses.
Release
A release is a stretch of work inside a project with its own dates, assignee, and stages. A release answers the question “what do we deliver by such-and-such date”. A release has a name, a type, start and end dates, an assignee, an estimate, a target date, readiness, delivery, and client acceptance dates, a closing amount, and a link to an act or invoice.
A release belongs to exactly one project. A task may be in a release or in none: such tasks form the project backlog (the list of tasks without a release).
Task
A task is a unit of work performed by one assignee. A task has:
- a key — the project prefix and a number, for example
RGM-30. The key is unique in the project; - a title and a description;
- a type — the card kind (for example, Default, Story, Bug). The type defines the process (workflow) the task follows;
- a stage — the current step (for example, New, In Progress, Done);
- an assignee — a person from the project team;
- dates — a start date and an end date;
- an estimate — the planned working time. It is stored in minutes and shown in hours;
- spent — the sum of hours logged on the task;
- tags and a group — labels for selection;
- a release — which release it belongs to;
- a parent — the parent task if this is a subtask;
- links to other tasks.
Subtask
A subtask is a task nested in another (parent) task. A subtask always belongs to the same release as its parent. A parent task's estimate is by default the sum of its subtasks' estimates, and the time spent adds up the tree.
A tree of tasks and subtasks is called a scope. A project has a scope (all the project's tasks) and a release has a scope (the release's tasks).
Track
A track is a record of time spent: who, on which task, what kind of work, when, and how long. Tracks add up to the “Spent” values in tasks, releases, and projects, reports by people, and the actual hours in the plan-versus-fact comparison.
Do not confuse a time track with a field track: a field track is a record of a change of a field value (for example, an estimate), stored in the value history.
Work type
A work type is the kind of activity in a track: “General”, “Development”, “Design”, “Review”, “Meetings”, “Support”. The set of types is defined by the administrator.
Stage and workflow
A stage (also called a status) is the step at which a task, release, project, or user is. A workflow is the process: a set of stages, transitions between them, and transition conditions. More: “Stages and transitions”.
A gate is a condition on a transition. Until the condition is met (for example, a task has no assignee, estimate, or dates), you cannot move to the next stage. The cabinet reports what is missing.
A final stage is a stage at which the work is considered finished (for example, Done for a task, “Closed” for a release). Lists hide records at final stages by default.
Role and permissions
A role is a set of permissions. Permissions determine which pages and tabs a person sees, which records are available to them, and which actions they can perform. Each person has one role. More: “Roles and access”.
Notifications
A notification is a message about an event: task assignment, mention, comment, deadline change, overdue. Notifications arrive in the cabinet and, if configured, in other channels: email, Telegram, Element, browser push, webhook.
How elements are named: keys, numbers, and addresses
| Entity | Example | Where it is used |
|---|---|---|
| Project prefix | RGM | The project creation form, the project overview |
| Project number | 20 (shown as #20) | The address /projects/20/... |
| Task key | RGM-30 | Tables, cards, search, colleagues' comments |
| Release number | 4 (shown as #4) | The address /projects/20/releases/4/... |
| Service stage key | in_progress | The audit log, workflow setup |
A task key can be used as a search query in task tables.
How entities affect one another
- Changing a subtask's estimate changes the parent's estimate until the parent receives a manual value.
- Logging a track increases “Spent” of the task, its parents, the release, and the project.
- Changing the task type may change the workflow, and therefore the set of stages.
- Assigning a role changes a person's menu on the next page load.
- Deleting a release or project deletes nested tasks, subtasks, and hours. Deletion must be confirmed.
- Disabling a user removes them from assignee selection lists, but past records remain.
What next
- Quick start: the first 15 minutes in the cabinet.
- Screen layout: the cabinet interface.
- Glossary: terms.