# Project Management

## Overview

The **Project Management** feature in **Servoy Cloud** is a tool for managing and tracking project development through tasks, represented as tickets.

It offers real-time notifications and configurable settings, allowing teams to adapt the system to their specific needs. Users can create and manage tickets, set priorities, and monitor progress in a structured, efficient way.

{% hint style="info" %}
It can be accessed by logging into Cloud Control Center and using the "Project Management" items from the main menu.
{% endhint %}

## Tickets

### Ticket Attributes

Throughout the Project Management views, tickets display essential details and quick-action tools, though some options vary depending on the view. Main key features:

* **Move Icon**: Visible only in list view, this icon allows users to drag and reorder tickets for sorting and grouping within the backlog or sprint.
* **Ticket Key**: Unique identifier for each ticket, usually prefixed by the project key.
* **Title**: Brief, descriptive title summarizing the ticket's content.
* **Ticket Type**: Classifies the ticket as a **Bug**, **Feature**, or **Task.** Can be shown as either text or a corresponding badge, making it easy to identify the type at a glance.

  * **Bug**: A ticket for an error or malfunction in the application, that needs to be fixed.
  * **Feature**: A request for new functionality or an improvement to existing features.
  * **Task**: A general work item or activity that supports project development but isn’t a bug or feature.

  <figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-0673a70976de58e58c09f3637327d99a692760a1%2Fccc_proj_mg_issue_type.png?alt=media" alt=""><figcaption><p>Ticket types</p></figcaption></figure>
* **Status**: Current stage of the ticket, with color-coded indicators based on status. Available statuses:
  * **Open**
  * **In Progress**
  * **Technical Review**
  * **Done**
  * **Blocked** *(optional, disabled by default and configurable in project management settings)*
  * **Functional Review** *(optional, disabled by default and configurable in project management settings)*
* **Story Points**: Effort estimation shown as a numerical value, with values like **0, 1, 2, 3, 5, 8, 13, 20, 40,** and **100**.
* **Priority**: Indicates the urgency level of the ticket, with levels from **Lowest** to **Highest**.

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-1e49a971b43e12cb950534f65b1d302e33b7a426%2Fccc_proj_mg_issue_prio.png?alt=media" alt=""><figcaption><p>Ticket priority</p></figcaption></figure>

* **Assignee**: Shows the user currently responsible for the ticket.
* **Tags**: Displays any assigned tags, useful for filtering and categorizing tickets.
* **Context Menu**: Accessible only in list views, the context menu offers quick actions, such as:
  * **Assign to Me**: Instantly assigns the ticket to the current user.
  * **Move Ticket**: Enables moving the ticket to another sprint or section as needed.

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-1e4964f437d52ce3cf6cca90b4c873dcd80925aa%2Fccc_proj_mg_ticket_overview.png?alt=media" alt=""><figcaption><p>Example of ticket attributes</p></figcaption></figure>

### **Create Ticket**

To create a new ticket, follow these steps:

1. **Click on the "Create Ticket" button**: This will navigate you to the **Create Ticket** screen, where you can input all necessary details
2. **Fill in the Ticket Details**:
   * **Title**: Enter a brief, descriptive title for the ticket.
   * **Assignee**: *Optional.* Select a user from the list of users within the namespace to assign the ticket to.
   * **Reporter**: Select a user from the namespace who is reporting the ticket (usually yourself or another team member).
   * **Status:** Choose the appropriate status from the ones available.
     * Note: The initial status value upon creation is **"Open"**
   * **Issue Type**: Choose the appropriate issue type from Bug, Feature, or Task.
     * Note: For convenience, the ticket creation form will default to the last issue type used, streamlining the process for future tickets.
   * **Priority**: Select the priority of the ticket (Lowest, Low, Medium, High, or Highest).
   * **Story Points**: Choose the story points value (0, 1, 2, 3, 5, 8, 13, 20, 40, or 100) to indicate the effort estimation for the ticket.
   * **Tags**: Add any relevant tags to help categorize the ticket. You can enter custom tags or select from existing ones.
   * **Sprint**: Choose a sprint for the ticket to be assigned to. If no sprint is selected, the ticket will remain in the backlog.
   * **Description**: Provide a detailed description of the ticket’s requirements, problem, or feature to be implemented.
3. **Save the Ticket**:
   * **Save**: Click the **Save** button to save the ticket and return to the Tickets view.
   * **Save and New**: If you want to create another ticket, click **Save and New** to save the current ticket and open a fresh ticket form.

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-2d4bf3f3b878499c351588d8c8c6ebe09e6be7b6%2Fccc_proj_mg_new_ticket.png?alt=media" alt=""><figcaption></figcaption></figure>

You can create a new ticket from the following screens in the Project Management System by using the **Create Ticket** button:

1. **Tickets Screen**

   * **How to Access**: Navigate to the [**Tickets**](https://docs.servoy.com/reference/servoy-cloud/cloud-control-center/project-management/tickets) section from the main menu.
   * **Where to Find the Button**: On the **Tickets** screen, the **Create Ticket** button is located at the top-right corner of the page

   <figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-29f5224bab8f8dba93c709812905f8ff1dde65e8%2Fccc_proj_mg_create_btn_tickets.png?alt=media" alt=""><figcaption><p>Create Ticket from Tickets View</p></figcaption></figure>
2. **Backlog Screen**

   * **How to Access**: Go to the [**Backlog**](https://docs.servoy.com/reference/servoy-cloud/cloud-control-center/project-management/backlog) section from the main menu.
   * **Where to Find the Button**: On the **Backlog** screen, the **Create Ticket** button is located in the top-right corner of the **Backlog Tab**

   <figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-eac1666c2eea7ec2c71cde44577b5010ebc9a995%2Fccc_proj_mg_create_btn_backlog.png?alt=media" alt=""><figcaption><p>Create Ticket from Backlog Tab</p></figcaption></figure>

### View Ticket

To view detailed information about a ticket, click on any ticket from the Project Management screens. This will take you to the **Ticket Details** page where you can see all the ticket’s information.

In the **Ticket Details** screen you can do the following:

* **Edit Ticket:** You can navigate to the **Edit Ticket** screen to modify ticket details
* **Assign to me**: You can assign the ticket to yourself
* **Manage Attachments**: You can add or remove attachments from a ticket
* **Manage Comments**: Add or view comments related to the ticket, providing additional information or feedback
* **View Commits**: View commits that included the ticket key to track code changes related to the ticket
* **View Update History**: Displays a chronological log of changes made to the ticket, including status changes and other updates.

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-fe3287637ce58a87dfe4d45c4f86f361e39d5252%2Fccc_proj_mg_ticket_details_view.png?alt=media" alt=""><figcaption><p>Ticket Details View Example</p></figcaption></figure>

### Edit Ticket

To edit a ticket:

1. Navigate to the **Ticket Details** screen
2. Click the **"Edit task"** button to navigate to the **Edit Ticket Details** screen.
3. Modify desired information
4. Save changes

{% hint style="info" %}
Ticket changes are logged and can be tracked in the **History** tab of the **Ticket Details** screen
{% endhint %}

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-964f949e605a072fcd70541c7c56533d3b5a604e%2Fccc_proj_mg_edit_ticket.png?alt=media" alt=""><figcaption><p>Edit Ticket button from Ticket Details Screen</p></figcaption></figure>

### Add attachment

{% hint style="info" %}
Inline images are also supported in description and comments. For larger files, it is recommended to add them as attachments.
{% endhint %}

To add attachments to a ticket:

1. Navigate to the **Ticket Details** screen, by clicking on any ticket in the Project Management screens
2. Click the **Upload Attachment** button from the menu on the right.
   * Alternatively, click the **+** button in the **Attachments** side panel on the right side of the same view.
3. Choose and upload selected file(s)
4. Done

{% hint style="info" %}
**Note**: If duplicate attachments are detected, they will be renamed with "\_copy" appended to the end of the file name.
{% endhint %}

<div><figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-4ffb98d5e115cd34ada9984c301b098147c40f49%2Fccc_proj_mg_add_attach_2.png?alt=media" alt=""><figcaption><p>Upload attachment from "Attachments" side panel in Ticket Details screen</p></figcaption></figure> <figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-9868a8f9d2ebd0613bbecacb63d4ff2466d2065f%2Fccc_proj_mg_add_attach_1.png?alt=media" alt=""><figcaption><p>Upload attachment from top of main side panel in Ticket Details screen</p></figcaption></figure></div>

### Remove attachment

To remove an attachment from a ticket:

* Navigate to **Ticket Details** view
* Locate the **Attachments** side panel
* Click the **Delete** icon next to the attachment you want to remove
* Confirm and proceed with deleting

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-f2795601510e44e2ac633e5f3b0059a85c70073d%2Fccc_proj_mg_remove_attach.png?alt=media" alt=""><figcaption><p>Remove attachment from Ticket in Ticket Details screen</p></figcaption></figure>

### Manage Tags

Tags are labels used to categorize and group related tickets, making it easier to organize and search for specific tasks.

<figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-6ffaf2de11805977b52d0d6cad953b5bb2f94ca5%2Fccc_proj_mg_tag_1.png?alt=media" alt=""><figcaption><p>Tag field in Create or Edit Ticket screens</p></figcaption></figure>

**Where Tags Are Visible**

Tags are displayed across various views where tickets appear, including:

* **Tickets** view: Tags are shown on the ticket list item
* **Active Sprints** view: Tags are visible on the ticket tile
* **Backlog**: Tags can be seen on tickets in any of the list items
* **Ticket Details**: Tags are displayed in both the **View Ticket** and **Edit Ticket** screens, where they can be added or removed

**Add or create a tag**

You can add or create tags in the following ways:

1. **During Ticket Creation**: While creating a new ticket, you can add tags by typing the desired tag and pressing **ENTER** or selecting from existing tags.
2. **When Editing a Ticket**: In the **Edit Ticket** view, you can add new tags by typing them and pressing **ENTER**, or select from existing tags.

**Remove a tag**

To remove a tag from a ticket, navigate to the **Edit Ticket** view:

1. **Find the tag** you wish to remove.
2. **Click the delete (x)** icon next to the tag to remove it.

Alternatively, you can select the tag from the dropdown list and it will be removed from the ticket.

### Move Ticket

To move a ticket between Sprints or back into the Backlog, you have two options:

* **Using the Context Menu**:

  * Open the context menu on any ticket in the Tickets or Backlog screens.
  * Select the *Move To* option.
  * Choose either *Backlog* or the sprint where you want to place the ticket.

  <figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-fbda1df2cb9c7aa4e06190ba822294b85cc5b7c0%2Fccc_proj_mg_tickets_action_more.png?alt=media" alt=""><figcaption><p>Context Menu on Ticket</p></figcaption></figure>
* **Drag and Drop**:

  * Ensure *Group by Sprint* is enabled by selecting it from the three-dot menu in the Sprint column header.
  * Click the *move icon* on the ticket, then drag it to a different group or sprint.
  * *Note*: Use the *SHIFT* key to select and move multiple tickets at once.

  <figure><img src="https://3933488479-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FjpWd52BKwABWxF2lScUK%2Fuploads%2Fgit-blob-bb3417f9aa8fa9ba6e35f7437f0e85519a90f6b5%2Fccc_proj_mg_drag_icon.png?alt=media" alt=""><figcaption><p>Move icon to drag and drop Ticket</p></figcaption></figure>

### Assign Ticket

To assign a ticket to yourself or another user:

* **Assign Ticket to Self**:
  * From the **context menu** on any ticket in the **Tickets** or **Backlog** screens, select *Assign to me*.
  * Alternatively, navigate to the **Ticket Details** view and select ***Assign to me*** in the side panel.
  * Or, go to the **Edit Ticket** screen and set yourself as the assignee in the *Assigned To* field, then save your changes.
* **Assign Ticket to Another User**:
  * Navigate to the **Edit Ticket** screen.
  * Update the *Assigned To* field to the desired user.
  * Save changes to confirm the assignment.

## Project Management Settings

### Project settings details

{% hint style="warning" %}
Note: Only users with the "Namespace Administrator" role can configure Project Management Settings.
{% endhint %}

The following project settings can be configured to customize your project management experience:

* **Project Name**: A short, descriptive name that helps identify the project.
* **Project Key**: A prefix for ticket IDs, up to 5 characters (e.g., SAN-1, SAN-2). If not specified, the system uses the first three characters of the namespace name.
* **Enable Functional Review Column**: Adds the “Functional Review” status and corresponding column in the "Active Sprints" view. Note: Once tickets use this status, it cannot be disabled.
* **Enable Blocked Column**: Adds the “Blocked” status and column in the "Active Sprints" view. Like the Functional Review column, this setting cannot be disabled if tickets have used this status.
* **Hide Closed Tickets**: Option to hide completed tickets from the "Tickets" list overview, keeping the view focused on active tasks.

### **How to configure settings**

To configure project management settings:

1. In Cloud Control Center, navigate to **Namespace Settings** using the main menu
2. Click on **Settings**.
3. Select the **Project Management** tab.
4. Adjust the settings as needed.
5. Click **Save** to apply the changes.
