RPA Bot Maintenance and Updates

A deployed bot is not permanent. Business processes evolve. Applications get updated. Websites redesign their layouts. Regulations change. Any of these events can break a working bot. Regular maintenance keeps bots healthy, reliable, and aligned with current business reality. Organisations that plan for maintenance from the start experience far fewer production crises.

Common Causes of Bot Failure After Deployment

CauseExampleImpact
Application UI changeSAP updated; button ID changedSelector fails — bot stops
Website redesignSupplier portal navigation restructuredWeb scraping breaks
Business rule changeApproval threshold raised from $5,000 to $10,000Wrong transactions sent for approval
Data format changeDate format changed from DD/MM/YYYY to MM-DD-YYYYDate parsing fails — bot errors
New exception typeNew invoice category added that bot was not built forBot handles it incorrectly
Platform version upgradeUiPath upgraded to new version — activity API changedWorkflow compilation fails
Credential expirySAP password expired — bot cannot log inAll runs fail until password updated
Volume spikeMonth-end processing quadruples transaction countBot queue backs up; SLA missed

The Maintenance Lifecycle

 ┌──────────────────────────────────────────────────────┐
 │               BOT MAINTENANCE CYCLE                  │
 │                                                      │
 │  MONITOR          DETECT           ANALYSE           │
 │  (Daily ops) ──▶ (Alert fired) ──▶ (Root cause)      │ 
 │       ▲                                  │           │
 │       │                                  ▼           │
 │  VALIDATE  ◀──  DEPLOY   ◀── FIX / UPDATE            │  
 │  (Test fix)    (Prod release)  (Dev + test)          │
 └──────────────────────────────────────────────────────┘

Types of Bot Maintenance

Corrective Maintenance

Fixing a bot that has broken. This is reactive — the bot fails, an alert fires, and the developer investigates and repairs.

Examples: Updating a broken selector, fixing a data parsing error, resolving a login failure caused by a password change.

Adaptive Maintenance

Updating the bot to accommodate changes in the business environment — new application versions, new business rules, new data formats. This is proactive when you know a change is coming, or reactive when a change happens unexpectedly.

Examples: Updating web scraping logic after a portal redesign, adding a new exception type after a process change.

Perfective Maintenance

Improving the bot without fixing a bug or responding to external change. You make the bot faster, more reliable, or easier to maintain based on operational experience.

Examples: Replacing an image-based selector with a more stable ID-based selector, refactoring a complex workflow into smaller reusable components, improving error messages for faster diagnosis.

Preventive Maintenance

Scheduled maintenance actions that prevent failures before they happen.

Examples: Refreshing API tokens before expiry, verifying selector health after an application patch, testing bots after a platform upgrade in a lower environment before it reaches production.

Selector Maintenance: The Most Common Task

Broken selectors are the leading cause of bot failures after deployment. When an application is updated, element IDs, class names, or page titles may change — invalidating existing selectors.

Selector Health Check Process

 WHEN: After every application update in the target system

 STEP 1: In UiPath Studio, open the bot project
 STEP 2: Run the bot against the dev environment
 STEP 3: Monitor for SelectorNotFoundException errors
 STEP 4: For each broken selector:
         → Open Selector Editor
         → Click "Indicate on Screen" to re-capture the element
         → Compare new selector with old one to understand what changed
         → Update selector to stable properties (prefer ID over position)
 STEP 5: Re-run full regression test
 STEP 6: Deploy updated package to production

Managing Configuration Changes

Business rule changes — like approval thresholds, email addresses, or file paths — should never require a developer to open the workflow. Store all configurable values in Orchestrator Assets. When a rule changes, an administrator updates the Asset value and the bot automatically picks up the new value on its next run.

 WRONG APPROACH (hardcoded):
 IF invoiceAmount > 5000 THEN send for approval
 → Developer must change code, test, redeploy for every threshold change

 RIGHT APPROACH (Orchestrator Asset):
 approvalThreshold = GetAsset("ApprovalThreshold")
 IF invoiceAmount > approvalThreshold THEN send for approval
 → Administrator changes Asset value in Orchestrator → done
 → No developer, no code change, no redeployment needed

Planned Maintenance Windows

For major updates, schedule a maintenance window — a period when the bot is temporarily stopped for updates. Communicate the window in advance to the business team so they can plan manual workarounds if needed.

  • Notify stakeholders at least 48 hours in advance
  • Schedule maintenance during low-volume periods (weekends, overnight)
  • Stop the bot gracefully — allow the current transaction to complete before halting
  • Test thoroughly in the UAT environment before the maintenance window
  • Have a rollback plan ready in case the update introduces new issues

RPA Platform Version Upgrades

When the RPA platform itself (UiPath, AA, Blue Prism) releases a new major version, upgrade carefully:

  • Read the release notes — check for breaking changes in activities or APIs
  • Upgrade dev environment first and test all bots
  • Fix any compatibility issues before upgrading UAT
  • Only upgrade production after successful UAT validation
  • Never upgrade all environments simultaneously

Bot Health Scorecard

Track the health of each deployed bot monthly:

Bot NameSuccess RateLast FailureOpen IssuesLast UpdatedHealth
InvoiceBot97.3%5 days ago02 weeks agoGreen
PayrollBot88.1%Yesterday23 months agoAmber
OnboardingBot72.0%Today58 months agoRed

Red bots require immediate attention. Amber bots need scheduled maintenance. Green bots need only routine monitoring.

Estimating Maintenance Effort

As a rule of thumb, plan for 15–20% of the original development effort per year for ongoing maintenance. A bot that took 20 days to build typically requires 3–4 days of maintenance per year under stable conditions. Bots connected to frequently changing applications require more.

Summary

Bot maintenance is an ongoing responsibility that begins the moment a bot goes live. Corrective maintenance fixes broken bots. Adaptive maintenance keeps bots aligned with changing applications and business rules. Perfective maintenance improves reliability and performance. Preventive maintenance avoids failures before they happen. Store configurable values in Orchestrator Assets to avoid code changes for every business rule update. Maintain a bot health scorecard to prioritise which bots need attention. Budget 15–20% of development effort per year for maintenance — it is an unavoidable cost of keeping a live automation portfolio healthy.

Leave a Comment

Your email address will not be published. Required fields are marked *