# Key components

## Overview of Flow, Step, Control and Pipes

### Flow

On a high level, Forms delivers well defined "apps" with the soul purpose simplifying a process related to an "IAM-problem". Each app is called a **Flow**.\
A **Flow** have a set of basic properties. For example who may access, is it public, how do it consume authentication.

### Step

Flow consists of a number of **Steps**. Each **Step** aims to guide the end user through the process. \
A simple **Step** could just consists of read only data about a user or a group.

### Control

Every **Step** includes a number of **Controls.** A  **Control** is some kind graphical entity used to let users read or write data. Just like a **Flow** or a **Step** a **Control** has a number of properties that will define it's behaviour.&#x20;

By combining **Flow**, **Step** & **Control** small well-defined IAM apps can be built fast with instant added value.

### Pipes

When a user wants to do something in the UI, such as retrieve or write data to a data source or process data, a pipe can be used. A pipe consists of a number of valves that can retrieve, write or process data. Pipes and valves are something that is found in all Fortified ID products and are shared between the products, so if you have knowledge of this from one of our other products, it works the same in Forms.

<figure><img src="https://3909477319-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfrhXWWOHe4pXVqfJvJjc%2Fuploads%2FtDf817kYQxZKDdxs66Fk%2FFlow_step_control.png?alt=media&#x26;token=cd9640ac-442b-4f89-ac37-dcbdd60a460b" alt=""><figcaption></figcaption></figure>

&#x20;&#x20;
