---
url: /service-management.md
---
# Service

A *Service* is an independent, **Dockerized** program capable of processing data. It can be of two types:

* **Batch:** It is started, processes data, and terminates its execution.
* **Streaming:** It is started and processes data for an indefinite period until the Workflow containing it is interrupted.

A *Service* is characterized by:

* I/O Ports
* User-configurable execution parameters

**I/O Ports** represent the input and output interfaces of the *Service*, and allow it to interact
with other ALIDA *Assets* (*Datasets*, other *Services*, *Models*) within a *Workflow*.

## Management of *Services*

The ALIDA catalog natively includes a series of ready-to-use *Services* for the creation of *Workflows*.

*For information on how to create custom ones, visit [Creation of a *Service*](./service-development.md)*

To access the *Service* management page, access it from the sidebar menu as shown in the following figure:

![sidebar-menu-with-services-menu-item-highlighted](/images/sidebar-menu-with-services-menu-item-highlighted.png)
*View services from the sidebar menu*

![service-management-page-with-base-services-on-display](/images/service-management-page-with-base-services-on-display.png)
*View the list of services*

Once you have reached the page, you will find the list of *Services*.

From the top bar, it will be possible to:
![services-management-page-top-toolbar](/images/services-management-page-top-toolbar.png)
*Service search filters*

* Access the *Service* registration form
* Search for *Services*
* Filter by *framework*
* Filter by *tag*
* Filter by *categories*
* Show only "My Services"
* Sort the *Services*
* Change page

From each *Service* card, the following functions are also available:

#### Cloning a *Service*

Clicking on ![service-clone-button](/images/service-clone-button.png) will create an independent catalog copy of the
*Service* in question.

#### Editing a *Service*

Clicking on ![service-edit-button](/images/service-edit-button.png) will allow you to modify some of the metadata
of the *Service*, such as:

* **Name**
* **Description**
* **Category**
* **Service Tags**
* Documentation in **Markdown**

![service-edit-page](/images/service-edit-page.png)
*Service registration/editing form*

#### Deleting a *Service*

Clicking on ![service-delete-button](/images/service-delete-button.png) will allow you to delete the *Service*
from the catalog.

#### Assigning the *Service* to a *Project*

Clicking on the card of a *Service* will open its detail page, from which you can access the
*Manage Projects* function ![service-details-manage-projects](/images/service-details-manage-projects.png).

A dropdown menu will open and you will be able to choose a *Project* to add the *Service* to.

*Select project to add the service to*

## Annotating *Services*

Within the *Workflow Designer*, it is possible to associate a set of structured annotations with each *Service* component of the *Workflow*.

These annotations must previously be defined by an administrator
from the *Control Panel* (see [Definition of Annotations](./redis-variables-management.md#definizione-delle-annotations))

To annotate a *Service*:

1. Open the *Workflow Designer* for the desired *Workflow*

2. Click on the *Service* to be annotated and then on *Notes* on the right
   ![accessing-service-annotations-edit-from-designer](/images/accessing-service-annotations-edit-from-designer.png)
   *Choose service annotations from the Designer*

3. In the dialog that opens, click on ![add-note-button](/images/add-note-button.png) and
   select the desired annotations from the dropdown menus:
   ![service-annotations-selection-dropdowns](/images/service-annotations-selection-dropdowns.png)
   *Assigning annotations*

4. Finish by clicking on **Save**

Once finished, it will be possible to:

* View the inserted annotations
* Delete them
* Add other annotations

![service-annotations-dialog-after-insert](/images/service-annotations-dialog-after-insert.png)
*List of annotations for the service*
