On This Page

Resources and Capacity Planning

What Are Resources?

In process simulation, resources represent anything with limited capacity that activities must compete for. Resources are what create realistic bottlenecks, queues, and waiting times in your simulation.

Common Resource Types

CategoryExamples
PeopleCustomer service agents, loan officers, managers, specialists
EquipmentMachines, workstations, testing equipment
SystemsSoftware licenses, server capacity, API rate limits
FacilitiesMeeting rooms, production lines, inspection stations

Why Model Resources?

Without resource constraints, simulation assumes unlimited capacity—every case processes immediately with no waiting. This is unrealistic for most processes.

Modeling resources enables:

  • Realistic bottleneck identification
  • Accurate waiting time predictions
  • Capacity planning and what-if analysis
  • Understanding resource utilization patterns

Resource Pools

Resources in ProcessMind are organized into pools of interchangeable units.

Pool Properties

PropertyDescription
NameIdentifier for the resource (e.g., “Approval Staff”, “Loan Processor”)
CapacityNumber of available units in the pool

Understanding Capacity

Capacity defines how many activities can use this resource simultaneously:

  • Capacity = 1: Only one case can use this resource at a time
  • Capacity = 5: Up to 5 cases can use this resource simultaneously

Example: If your approval department has 3 staff members who can each handle one approval at a time, set capacity to 3.


Assigning Resources to Activities

Each activity in your process can declare what resources it requires:

Assignment Properties

SettingDescription
Resource PoolWhich resource pool to draw from
QuantityHow many units of that resource are needed

Simple Assignment

Most activities need one unit of one resource:

  • Activity: “Review Application”
  • Resource: “Loan Officers” (quantity: 1)

Multi-Unit Assignment

Some activities need multiple units:

  • Activity: “Major Decision Committee”
  • Resource: “Senior Managers” (quantity: 3)

Resource Allocation: How Cases Get Resources

When a case reaches an activity that requires resources, the simulation follows this process:

The Allocation Flow

  1. Check Availability: Are the required resources available?
  2. Queue if Needed: If not available, the case enters the waiting queue
  3. Wait: The case waits until resources become available
  4. Allocate: Once available, resources are reserved for this case
  5. Execute: The activity runs for its sampled duration
  6. Release: When complete, resources return to the pool

Queue Behavior and Strategy

ProcessMind supports multiple queue strategies that determine how waiting cases are prioritized when resources become available:

StrategyDescription
FIFOFirst In, First Out—cases are processed in arrival order (default)
LIFOLast In, First Out—most recently arrived cases are processed first
RandomCases are selected randomly from the waiting queue

You can configure the queue strategy per activity in the element settings.

Choosing a Queue Strategy

FIFO is the most common and fairest strategy. Use LIFO when recent cases have higher priority (e.g., urgent escalations). Random can be useful for simulating unpredictable service patterns.

What Happens When Resources Aren’t Available?

If required resources are busy:

  1. The case enters the waiting queue for that resource
  2. The case waits (simulation time passes)
  3. When resources become free, a waiting case is selected based on the configured queue strategy
  4. The activity then starts

This queuing behavior is where realistic waiting times come from in your simulation.


Resource Availability with Periodicity

Resources aren’t always available at the same capacity. Use periodicity  to model varying availability.

Example: Business Hours

PeriodicityCapacity
Each Weekday 09:00-17:005 agents
Each Weekday 17:00-21:002 agents
Each Weekend Day 10:00-16:001 agent
Default0 agents

Example: Shift Schedule

PeriodicityCapacity
Each Day 06:00-14:00 (Morning)5 operators
Each Day 14:00-22:00 (Evening)3 operators
Each Day 22:00-06:00 (Night)1 operator

Example: Seasonal Variation

PeriodicityCapacity
Each Year Nov 15 - Dec 31 (Peak)20 staff
Default12 staff

Understanding Resource Utilization

Utilization measures how busy your resources are:

Utilization = (Time Busy ÷ Total Available Time) × 100%

Interpreting Utilization

Utilization LevelWhat It Means
Below 50%Underutilized—may have excess capacity
50-70%Healthy balance—good capacity for variation
70-85%Busy—limited slack for peaks
85-95%High utilization—likely causing delays
Above 95%Bottleneck—queues building

The Utilization Trap

Don't Target 100% Utilization

High utilization seems efficient but creates problems. Even small demand variations cause queues to grow exponentially near 100% utilization. Target 70-80% for stable, responsive processes.

Why High Utilization Causes Long Queues

Consider a simple example:

  • Resource capacity: 1
  • Average processing time: 10 minutes
  • If arrivals average 5.5 per hour (55% utilization): manageable queues
  • If arrivals average 5.9 per hour (98% utilization): explosive queue growth

Near 100% utilization, any random variation (a few extra arrivals, a slightly longer task) causes queues to build faster than they can drain.


Shared Resources

One resource pool can serve multiple activities. This is common and realistic:

Setting Up Shared Resources

  1. Create a resource pool (e.g., “Customer Service Team”)
  2. Assign the same pool to multiple activities
  3. Activities compete for the shared capacity

Example: Shared Staff

The “Customer Service Team” (capacity: 5) handles:

  • “Answer Phone Inquiry”
  • “Process Email Request”
  • “Handle Chat Support”

All three activities draw from the same pool. If 4 phone calls are being handled, only 1 agent is available for email or chat.

Benefits of Shared Resources

  • Models cross-trained, flexible teams
  • Shows competition between different work types
  • Reveals which activity types dominate resource usage

Multi-Resource Activities

Some activities require multiple different resources simultaneously:

Example: Design Review Meeting

Resource PoolQuantity Needed
Senior Designer2
Meeting Room1
Design Lead1

Important: The activity can only start when all required resources are available simultaneously. If designers are free but no meeting room is available, the case waits.

Multi-Resource Considerations

  • Can create complex waiting patterns
  • Watch for activities that block multiple resource types
  • Consider whether all resources are truly required simultaneously

Capacity Planning with Simulation

One of the most valuable uses of resource simulation is capacity planning.

Key Questions Simulation Answers

How many resources do I need?

Run simulations with different capacity levels:

CapacityAvg Wait TimeUtilizationThroughput
2 staff45 min95%150/week
3 staff12 min78%150/week
4 staff3 min58%150/week

Insight: Adding a 3rd staff member dramatically reduces wait times. The 4th provides marginal improvement.

Where are my bottlenecks?

Compare utilization across all resources:

ResourceUtilization
Front Desk65%
Underwriters92%
Legal Review48%
Closing Team71%

Insight: Underwriters are the bottleneck. Adding front desk staff won’t help—work will just pile up at underwriting faster.

What if demand increases?

Run scenarios with higher arrival rates:

DemandCurrent StaffQueue Growth
Current5Stable
+20%5Growing slowly
+50%5Unsustainable

Insight: Current capacity can handle ~20% growth. Beyond that, you need to add resources.


Best Practices for Resource Modeling

Start Simple

Begin with a few key resources that represent real constraints:

  • Don’t model every person as a separate resource
  • Group interchangeable workers into pools
  • Add detail only where it matters

Use Real Data

Base your capacity on actual staffing:

  • Current headcount
  • Working hours and schedules
  • Historical availability (accounting for vacation, sick time)

Build in Slack

Real resources aren’t 100% available:

  • People take breaks
  • Equipment requires maintenance
  • Unexpected absences occur

Model realistic available time, not theoretical maximum.

Validate Against Reality

Compare simulated utilization with actual observations:

  • Do your simulated queue lengths match real wait times?
  • Is simulated throughput close to actual throughput?
  • Does resource utilization feel realistic?

If not, refine your resource model.

Consider the Human Element

Remember that people aren’t machines:

  • Productivity varies throughout the day
  • Sustained high utilization leads to burnout and errors
  • Cross-training has limits

Next Steps