Process Shape
Learn how to use the Process shape for standard operations and actions in flowchart
Process Shape
The Process shape is the workhorse of flowcharts. Represented as a simple rectangle, it indicates any processing step, action, or operation in your workflow.
What is a Process Shape?
The Process shape (also called a Process Box or Action Box) represents:
- A single step in a procedure
- An action or operation to be performed
- A calculation or transformation
- Any general processing activity
According to this is the most commonly used flowchart symbol for representing standard processing steps.
When to Use
Use the Process shape for:
- Standard operations: "Calculate total", "Validate input", "Send email"
- Transformations: "Convert to uppercase", "Format date", "Parse JSON"
- Actions: "Save to file", "Update record", "Close connection"
- Calculations: "Sum = A + B", "Calculate discount", "Count items"
- Method calls: "ProcessPayment()", "ValidateUser()", "GenerateReport()"
Visual Appearance
In DiagramKit, the Process shape appears as:
- Dimensions: 160×80 pixels
- Color: Light blue (#f0f9ff)
- Border: Medium blue (#0369a1)
- Shape: Perfect rectangle with squared corners
Best Practices
✅ Good Usage
[Start]
↓
[Read input file]
↓
[Parse JSON data]
↓
[Calculate totals]
↓
[Format output]
↓
[End]
- Use clear, action-oriented labels (verb + object)
- Keep labels concise (1-5 words)
- Use consistent verb tense (imperative or present)
- Make each step atomic (one clear action)
❌ Avoid
- ❌ Vague labels: "Do stuff", "Handle it"
- ❌ Questions: "Is valid?" (use Decision instead)
- ❌ Multiple actions in one box: "Read file, parse data, and validate"
- ❌ Input/output operations (use Data I/O instead)
Common Examples
Example 1: Data Processing
[Read customer data]
↓
[Filter active customers]
↓
[Calculate total purchases]
↓
[Sort by amount]
↓
[Generate report]
Example 2: User Registration
[Hash password]
↓
[Create user record]
↓
[Assign user ID]
↓
[Set default preferences]
↓
[Log registration event]
Example 3: Mathematical Operation
[Initialize sum = 0]
↓
[Add current value to sum]
↓
[Increment counter]
↓
[Calculate average]
Label Writing Guidelines
Strong Labels (Recommended)
- "Calculate total price"
- "Validate email format"
- "Update database record"
- "Send notification email"
- "Transform data to JSON"
Weak Labels (Avoid)
- "Process" (too vague)
- "Do calculation" (what calculation?)
- "Handle data" (handle how?)
- "Next step" (not descriptive)
Programming Equivalents
Process shapes typically represent:
JavaScript/TypeScript:
// Each of these could be a Process shape
const result = calculateTotal(items);
user.validate();
await sendEmail(recipient);
data = transformToJSON(rawData);
Python:
# Process shape examples
result = calculate_total(items)
validate_email(email_address)
save_to_database(record)
formatted_data = format_output(data)
Pseudocode:
Process: Calculate Total
total = 0
for each item in cart
total = total + item.price
end for
Connections
Process shapes typically connect:
Input from:
- Start/End symbols
- Other Process shapes
- Decision shapes (yes/no branches)
- Data I/O shapes
- Predefined Process shapes
Output to:
- Other Process shapes
- Decision shapes
- Data I/O shapes
- End symbols
Process vs. Other Shapes
| Use Process When | Use Different Shape |
|---|---|
| Standard operation | Predefined Process if calling a subroutine |
| Automated action | Manual Operation if done by hand |
| General processing | Preparation if setup/initialization |
| Data transformation | Data I/O if input/output operation |
| Calculation | Decision if yes/no question |
Common Mistakes
Mistake 1: Using for Decisions
❌ Wrong: [Is valid?] (Process shape)
✅ Correct: <Is valid?> (Decision shape)
Mistake 2: Too Many Actions
❌ Wrong: [Read file, validate data, transform to JSON, save to database]
✅ Correct: Split into 4 separate Process shapes
Mistake 3: Input/Output Operations
❌ Wrong: [Read user input] (Process shape)
✅ Correct: [Read user input] (Data I/O shape)
Mistake 4: Vague Labels
❌ Wrong: [Process data]
✅ Correct: [Validate email format]
Advanced Usage
Parallel Processing
[Start]
↓
[Split into tasks]
↓
┌────┴────┐
[Task A] [Task B]
└────┬────┘
↓
[Merge results]
↓
[End]
Error Handling
[Process payment]
↓
<Success?>
↙ ↘
Yes No
↓ ↓
[Log] [Rollback]
Related Shapes
- Predefined Process - For subroutines and function calls
- Manual Operation - For human-performed tasks
- Preparation - For setup and initialization
- Decision - For conditional branching
- Data I/O - For input/output operations
Keyboard Shortcuts
- Add from palette: Drag and drop the Process shape
- Double-click: Edit the label text
- Delete: Select and press
DeleteorBackspace - Duplicate: Select and
Ctrl+D(orCmd+Don Mac)
Pro Tip: Use active verbs at the start of your Process labels: "Calculate", "Validate", "Transform", "Send", "Update". This makes your flowchart clear and action-oriented!
Next Steps
- Learn about Decision shapes for branching logic
- Explore Predefined Process for modular workflows
- Understand Data I/O for input/output operations
- Review the complete shape reference for all 19 shapes