Workspaces, task groups, and tasks

A workspace is divided into task groups and tasks. Task groups serve as containers for tasks, where each task group can be committed independently of the other task groups. Tasks provide a separation of responsibility, where each task is an individual unit of work that contributes to the completion of an activity.

The following diagram illustrates how a workspace is broken down into task groups and tasks:


Workspaces

Workspaces provide data isolation. Each workspace has its own database schema to keep data separate from other workspaces and the production-ready data.

When an authoring environment instance is created, a finite number of database schemas are allocated for the workspaces. If a Workspace Manager creates more workspaces than the number of workspace database schemas available, task groups in workspaces without an available database schema cannot be activated until another workspace is completed or canceled to release a database schema. To prevent this situation, use as few workspaces as possible while still maintaining the level of data separation you need.

If you manage multiple stores under one organization, we can use one workspace to manage content for the organization across all stores. You might still need multiple workspaces to provide data isolation between other tasks such as seasonal updates and emergency fixes.

Workspaces can be either single-use or persistent:

The Workspace Manager is responsible for creating and managing a workspace, its properties, and the task groups and tasks within the workspace.

Workspaces have two identifiers: a workspace name and a workspace code. The Workspace Manager assigns the workspace name to a workspace while the workspace code is a system generated identifier for the workspace. Two different workspaces can have the same workspace name because their workspace codes are different. However, having the same name for workspaces makes it difficult to distinguish between them in the Workspace Management tool.

Before data changes are committed, any changes that are made within the workspace cannot be seen by users outside the workspace. That is, the changes within a workspace are not saved as part of the production-ready data, but saved only within the workspace. The Workspace Manager commits an entire task group at one time, or a task group commits after it is approved by a Task Group Approver.


Task groups

A workspace contains one or more task groups. The Workspace Manager is responsible for creating and managing a workspace, and its properties, and the task groups and tasks within the workspace. Task groups provide the following features:

Task groups have two identifiers: a task group name and a task group code. The Workspace Manager assigns the task group name to a task group while the task group code is a system generated identifier for the task group. While two task groups might have the same task group name, they have different task group codes.

Use task groups to keep sets of related changes together to avoid possible conflicts, concurrency, or dependency problems. For example, if we are adding a catalog item and creating an e-Marketing Spot to market the item, ensure that both of these tasks are done in the same task group. If the tasks are completed in different task groups within the same workspace, the e-Marketing Spot might be committed before the new catalog item. This commit sequence can cause the commit of the task group to fail.

The strictest way to avoid conflicts or concurrency problems is to have only one task group per workspace. However, we can decide on the number of task groups in a workspace according to your business needs. An example of when you need multiple tasks groups is if different approvers are needed or if content needs to be committed at different time intervals. Tasks groups can be either single-use or recurring:

A task group is committed if the following conditions are met:


Tasks

Tasks provide a separation of responsibility. Each task is an individual unit of work that contributes to the completion of an activity that the Workspace Manager assigns to Workspace Content Contributors. Tasks are what Workspace Content Contributors see in the Management Center or Workspace Management tool. Workspace Content Contributors can see only the tasks that they are assigned. The list of tasks in either the Management Center or Workspace Management tool displays the following information about assigned tasks:

Tasks have two identifiers: a task name and a task code. The Workspace Manager assigns the task name to a task while the task code is a system generated unique identifier for the task. While two tasks might have the same task name, they have different task codes. However, having the same name for tasks makes it difficult to distinguish between them in the Workspace Management tool. This can make it difficult for Workspace Content Contributors to distinguish between them in the Management Center.

After logging on to the Management Center Workspace Management tool, a Workspace Content Contributor chooses from a list of assigned tasks. When a task is complete, the Workspace Content Contributor changes the state of the task to complete.

When we are planning the work flow for tasks, avoid making tasks too granular. For example, if you have a four-step process we want completed in a workspace, with the first three being done by one Workspace Content Contributor and the last one being done by another Workspace Content Contributor, you need to only create two tasks - one for the first Workspace Content Contributor and one for the second.

A task group cannot be approved or committed until all tasks in the task group are complete.


Related concepts
Workspaces overview
Workspaces roles
Workspace Management tool