Skip to main content

Phases

Phases page

Phases are the smallest controllable elements in the ISA-88 procedure hierarchy. Each phase represents a single action or control instruction, such as heating to a target temperature, agitating for a set duration, or dosing an ingredient.

Phases are the foundation of all procedures. They are composed into Operations, which in turn build up to Unit Procedures and Batch Procedures.

Page layout​

The Phases page (Admin > Procedures > Phases) displays:

  • Dashboard cards: total, active, and inactive phase counts
  • Filter bar: search by name/code/description, toggle inactive visibility, column visibility controls
  • Data grid: sortable, filterable table of all phases with inline actions

Phase fields​

FieldRequiredDescription
NameYesDisplay name (max 255 characters). Shown in the grid and when selecting phases in operations.
CodeYesUnique short identifier (max 50 characters), e.g., HEAT, MIX, DOSE. Used for programmatic references and recipe mappings.
DescriptionNoLonger explanation of what the phase does (max 1000 characters).
Estimated DurationNoExpected duration in seconds. Used for scheduling and planning estimates.
Required CapabilityNoAn equipment capability that the equipment must have to execute this phase (e.g., "Heating", "Agitation").
ActiveYesWhether the phase is available for use. Inactive phases are hidden by default but preserved for traceability.

Creating a Phase​

  1. Click the Add Phase button above the data grid
  2. Fill in the required fields (Name and Code)
  3. Optionally set the duration, required capability, and description
  4. Click Create

Create phase dialog

:::tip Naming convention Use short, descriptive codes that are easy to identify across the system. Common patterns: HEAT, MIX, HOLD, DOSE, DRAIN, RINSE, FILL. The code must be unique across all phases. :::

Editing a Phase​

Click the edit button (blue pencil icon) on any phase row. The same form opens pre-filled with the current values. Modify the fields you need and click Update.

Deleting a Phase​

Click the delete button (red trash icon) on a phase row. A confirmation dialog appears. Deleting a phase will fail if it is still linked to any operations.

:::info Soft delete vs. hard delete If you want to retire a phase without removing it from the system, uncheck the Active checkbox instead of deleting it. Inactive phases remain in the database and preserve historical references, but they cannot be added to new operations. :::

Phase parameters​

Parameters make phases configurable. Instead of hardcoding "heat to 85 degrees", you define a "Target Temperature" parameter with a default value, min/max constraints, and a unit of measure. Recipes then override these defaults for each specific product.

Managing parameters​

  1. Click the settings icon (gear) on a phase row to open the Parameters dialog
  2. The dialog shows all existing parameters for that phase in a data grid
  3. Click Add Parameter to create a new one, or use the edit/delete icons on existing parameters

Phase parameters dialog

Parameter Fields​

FieldRequiredDescription
NameYesDisplay name (max 255 characters), e.g., "Target Temperature"
CodeYesUnique code within this phase (max 50 characters), e.g., target_temp
Data TypeYesOne of: numeric, text, boolean, enum
UnitNoUnit of measure from the UOM configuration, e.g., degC, RPM, seconds
Default ValueNoThe value used when no recipe override is provided
Min ValueNoMinimum allowed value (applies to numeric types)
Max ValueNoMaximum allowed value (applies to numeric types)
RequiredYesWhether a value must always be provided (default: true)

Data Types​

TypeUse caseExample
numericTemperatures, speeds, durations, quantitiesTarget Temperature = 85
textFree-form instructions or labelsOperator Note = "Check seal before starting"
booleanOn/off togglesPre-rinse Required = true
enumFixed set of choicesAgitation Mode = "Low" / "Medium" / "High"

:::tip Constraints prevent errors Always set min and max values for numeric parameters. This prevents operators or recipe authors from accidentally entering out-of-range values that could damage equipment or produce defective products. :::

  • Search: type in the search field to filter by name, code, or description
  • Show Inactive: toggle the switch to include inactive phases in the grid
  • Column Visibility: click the column icon to toggle between compact view (fewer columns) and full view (all columns including created/updated dates and active status)
  • Clear Filters: click the filter-off icon to reset all filters and column settings

Grid Columns​

ColumnDescription
NamePhase display name (bold text)
CodeUnique code shown as a chip
DescriptionOptional description text
CapabilityRequired equipment capability name
DurationEstimated duration in seconds
ParametersCount of defined parameters (chip with count)
StatusActive/Inactive status chip
ActionsSettings (parameters), Edit, Delete buttons

The Created At and Updated At columns are available in full-column mode.

Best Practices​

  1. Keep phases atomic: each phase should represent a single controllable action. If a phase does two things (e.g., "heat and mix"), consider splitting it into two separate phases.
  2. Use parameters generously: any value that might change between products or batches should be a parameter rather than part of the phase definition.
  3. Set capabilities: linking phases to equipment capabilities ensures that when a recipe is executed, the system can validate that the selected equipment supports all required phases.
  4. Estimate durations: even rough duration estimates help with production scheduling and planning.
  • Operations — compose phases into ordered operation sequences
  • Batch Model (ISA-88) — understand the full ISA-88 hierarchy
  • Recipes — override phase parameters with product-specific values
  • Equipment — configure equipment capabilities that phases reference

Prerequisites​

Next steps​