Resource allocation conflicts when assigning CAD designers to multiple projects

Our project management module is failing to detect and prevent resource over-allocation when assigning CAD designers to concurrent projects. We have designers allocated 120-150% capacity across multiple active projects, but Windchill isn’t flagging these conflicts during project planning.

The resource capacity planning functionality seems to only check availability at the time of assignment, not ongoing allocation across the project timeline. We need conflict detection algorithms that analyze resource loading across all active projects and warn when assignments exceed 100% capacity.

We’ve also noticed issues with resource leveling automation - it doesn’t automatically redistribute work when conflicts are detected. The allocation policy enforcement appears to be advisory only, not preventative.

Here’s what we see in the logs when over-allocating:


ResourceManager.assignToProject() - Success
allocationPercent=150.0, warningThreshold=100.0
WARN: Capacity exceeded but assignment allowed

How can we implement stricter resource allocation controls with automatic conflict prevention?

You need a balanced approach between strict enforcement and operational flexibility. Here’s a comprehensive solution covering all four focus areas:

1. Resource Capacity Planning (Foundation): Implement time-phased capacity planning rather than simple percentage tracking. Configure resource profiles with:

  • Standard capacity: 40 hours/week baseline
  • Project-specific availability: Account for ongoing support commitments (typically 10-15% of capacity)
  • Skill-based capacity: Different allocation rules for senior vs junior designers
  • Buffer capacity: Allow 10% threshold above 100% for short-term flexibility

Update resource calendars monthly with planned time-off, training, and other commitments. This gives the conflict detection algorithm accurate capacity data.

2. Conflict Detection Algorithms (Core Logic): Implement custom validation in ResourceAssignmentValidator class:

// Pseudocode - Enhanced conflict detection:
1. Calculate time-phased allocation for resource across all active projects
2. Identify overlapping work periods in assignment date range
3. Sum allocation percentages for overlapping periods
4. Compare against capacity threshold (100% + allowed buffer)
5. If exceeded, return validation error with conflict details
// See Windchill Customization Guide Section 12.4

Key enhancement: Check allocation at weekly granularity rather than project-level. This catches conflicts in specific time periods even if overall project allocation seems reasonable.

3. Resource Leveling Automation (Optimization): Windchill’s native leveling is limited, but you can enhance it:

  • Configure priority-based leveling: High-priority projects get first claim on resources
  • Implement skill-based substitution: When primary resource is over-allocated, suggest qualified alternatives
  • Enable automated schedule shifting: If conflict detected, propose task date adjustments to balance load

For cross-project optimization, create a scheduled job that runs weekly:

ResourceLevelingJob.analyzeAllProjects()
  .identifyOverallocations()
  .generateOptimizationRecommendations()
  .notifyProjectManagers()

This provides project managers with rebalancing suggestions rather than forcing automatic changes.

4. Allocation Policy Enforcement (Governance): Implement tiered enforcement policies:

Tier 1 - Preventative (0-110% allocation):

  • Assignments proceed automatically
  • Log allocation percentage for reporting

Tier 2 - Warning (110-125% allocation):

  • System displays conflict warning with details
  • Requires project manager acknowledgment to proceed
  • Sends notification to resource manager for review
  • Assignment proceeds but flagged for monitoring

Tier 3 - Blocking (>125% allocation):

  • Assignment rejected with detailed conflict report
  • Requires resource manager override approval
  • Triggers resource leveling workflow to resolve conflict
  • Logs override justification for audit trail

Implement this in site.xconf:

<Property name="wt.projmgmt.resource.softLimit" value="110"/>
<Property name="wt.projmgmt.resource.hardLimit" value="125"/>
<Property name="wt.projmgmt.resource.requireApproval" value="true"/>

Implementation Steps:

  1. Enable basic capacity enforcement and configure thresholds
  2. Update resource calendars with accurate availability data
  3. Deploy custom conflict detection algorithm with weekly granularity checking
  4. Implement tiered enforcement policies with approval workflows
  5. Configure weekly resource leveling job with notification to managers
  6. Create resource utilization dashboard showing allocation across all projects

Monitoring and Refinement: Track these metrics to tune the system:

  • Percentage of assignments hitting warning threshold (target: <15%)
  • Percentage requiring manager override (target: <5%)
  • Average resource utilization (target: 85-95%)
  • Project schedule variance due to resource conflicts (target: <10%)

The tiered enforcement approach prevents egregious over-allocation while allowing operational flexibility for short-term needs. The enhanced conflict detection provides visibility into allocation across time periods, not just aggregate percentages. Combined with automated leveling suggestions, this gives project managers the tools to proactively manage resource capacity.


This draft is based on general Windchill knowledge. It has not been verified against your specific version and environment. Practitioners: verify the steps and share your experience below.

The default resource management in Windchill 11.1 has limited capacity planning capabilities. It tracks allocations but doesn’t enforce hard constraints. You’re seeing advisory warnings but not preventative blocks because the standard configuration treats capacity as soft limits.

You’ll need to customize the resource assignment validation logic to implement hard stops for over-allocation. This typically requires workflow modifications or custom business logic.

Check your resource allocation policies in Site > Project Management > Resource Configuration. There’s a setting for ‘Enforce Capacity Limits’ that might be disabled. When enabled, it should prevent assignments that exceed defined capacity.

Also verify that your resource calendars are properly configured with availability percentages. If calendars show 100% availability year-round, the system can’t detect conflicts based on time-off or other commitments.

We had similar issues with resource leveling. The automated leveling feature in Windchill is pretty basic - it can redistribute work within a single project but doesn’t optimize across multiple projects. For cross-project resource optimization, you might need to integrate with dedicated resource management tools or implement custom algorithms.

Tested this on Windchill 12.1 — configuring time-phased resource profiles with skill-based capacity thresholds eliminated our double-booking conflicts across five concurrent CAD programs.

The conflict detection algorithm needs enhancement. Out-of-box Windchill checks instantaneous availability but doesn’t aggregate time-phased allocations. You need logic that:

  1. Calculates cumulative allocation percentage across all active projects for each resource
  2. Checks this against defined capacity thresholds before allowing new assignments
  3. Considers project timelines and overlapping work periods

This requires custom development in the resource assignment validation layer.

We confirmed that ‘Enforce Capacity Limits’ was disabled. After enabling it, we’re getting validation errors, but they’re too restrictive - blocking even reasonable temporary over-allocations that we manage through schedule adjustments.