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?

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.

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.

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.