Contents
Introduction
This is the start of a series of articles on how to improve planning and scheduling in Maximo.

Several years ago, I wrote an article called The 12 Steps to Planning and Scheduling Maturity https://maximosecrets.com/portfolio/the-12-steps-to-planning-and-scheduling-maturity/
The article came about because a client wanted to implement Maximo Scheduler Optimization, but in reality they were doing little planning, no scheduling from how we would think of it in Maximo and while they were assigning work orders to technicians in order for those technicians to receive a work order on a mobile device, it was not using work assignments, that Maximo Scheduler and Maximo Mobile uses. In effect they were at the Ownership step, Step 1 of the Planning and Scheduling Maturity, they needed to make changes progressively over quite a long period before Scheduler Optimization could be used. In MAS, Scheduler Optimization is now called Maximo Optimizer.
The 12 Steps article is an overview, it provides no more than a paragraph or two for each step. This series of articles aims to go much deeper, not only explaining each step but showing you how to implement it. However, before we get to discussing Ownership there are a few points I want to address which will make this article longer than you might have expected.
Preparing for Planning and Scheduling
Define a Glossary of Terms
Unfortunately, the terms planning and scheduling are used interchangeably, ask people around a table to write down what they mean by the two terms, and you may end up with as many answers as there are people around the table. Ask the same audience to explain what they mean by scheduling, and this will also provide several answers, there are several types of scheduling as I described in the last page of the 12 Steps article.
If you are going to attempt to conquer planning and scheduling within your organisation, then I would start with a glossary of terms, you need everyone on the same page talking the same language, and if Maximo is going to be the system you use for Planning and Scheduling, then I would advise using the terms you will encounter in the product, rather than that used by external consultants which is likely to be a mismatch of generic terms or terms from other scheduling products.
Project Scheduling and Maintenance Scheduling are not the same, some techniques are applicable to both, but there are significant differences. The terms used in one may not be applicable in the other, and the same term may not mean the same thing. Most consultants will be more familiar with project scheduling, and you simply can’t apply the same techniques to maintenance scheduling. In project scheduling work durations are in days or weeks and the term used is an activity, in maintenance scheduling work durations are in hours and we use the term work order. Critical Path Method (CPM) scheduling is common in project scheduling, but much rarer in maintenance scheduling. Therefore, I would strongly advise creating a glossary of terms and expand on it over time.
Let’s start with the three main terms. What do we mean by Planning, Scheduling and Assigning?
Planning is the processes which occurs before work approval which defines the tasks, labor, materials, services and tools needed to perform the work and which creates an estimate for the work.
Scheduling is the processes which occur after work approval and before work execution and which creates a set of schedule dates for the work orders and tasks, that is likely to be achievable within the resource constraints and required conditions for work.
Assigning is the processes which assigns labor or crews to a work assignment of a work order on a particular date, the Schedule Start Date of the work assignment.
Notice the term used is work assignment and not work order. Maximo Mobile Technician and Graphical Assignment/Graphical Work Week applications operate against the work assignment and not the work order. To a technician or scheduler, it looks as if you are working on the work order, but in fact you are not, you are working against the work assignment, a child record of the work order, the record you see in the Assignments tab of the Work Order Tracking application.
There are always some grey areas between these terms. A technician has been to the asset, and they determine that a part is needed, is this planning or scheduling? It is planning if the work order needs to be reapproved, it is (re)scheduling if the part can be purchased or the required part can be issued from a storeroom without reapproval.
A technician calls in sick and you need to reschedule/reassign to another technician, is this scheduling or assigning? If the work can be reassigned to another person on the same day or in the same scheduling compliance period, then this should be considered as (re)assigning, on the other hand, if there is no spare capacity in the scheduling period and the work order needs to be rescheduled to the next or later period, then you should consider this as scheduling rather than assigning.
Hopefully, this has made you consider that having a glossary of terms with some examples can be very useful, whether you agree with my definitions, or not.
My quote at the top of the slide might need a little explanation – “You cannot schedule work unless you can plan work. If you do not plan then you are assigning work, and not scheduling work.”
Assigning a technician to a work order on a particular date is the process of work assignment. The fact that you are setting a schedule start date at the same time does not mean that you are scheduling, it would be considered scheduling only if you were not deciding at the same time which technician would be assigned. To schedule effectively you need to know what resources are needed, you should have planned the work and the required work conditions prior to scheduling, otherwise you are only creating a set of schedule dates for your work orders without knowing whether the schedule is achievable within your resource constraints or knowing whether the work conditions will have been met. You may be creating a picture on a Gantt chart, but I wouldn’t call this scheduling, scheduling is so much more than creating a picture.
Using work order statuses to define Planning, Scheduling and Assigning periods
The standard work order statuses are:
- WAPPR – Waiting on approval
- APPR – Approved
- WMATL – Waiting on material
- WPCOND – Waiting on plant condition
- WSCH – Waiting to be scheduled
- INPRG – In progress
- COMP – Completed
- CLOSE – Closed
What is not standard is a set of statuses which defines when you are in a planning, scheduling or assigning period. As there is confusion over these three terms or indeed whether Scheduling and Assigning are two different processes, or just one, then it would be useful to make it definitive when a work order is in or waiting for planning, scheduling or assigning. This can be remedied with a few additional synonym statuses.
Planning
- WPLAN – Waiting on planning
- PLANNED – Planned
These two statuses are synonyms of WAPPR. In addition, you should consider another status NEW – New, which is made the default status for the internal status level of WAPPR. This is to make a distinction between a new work order just received from one that has been planned and waiting to be approved.
I’ve been asked why do you need PLANNED isn’t WAPPR achieving the same thing? You may have work orders which have been planned, whose target start is in the future, and they do not need to be approved yet, they may be delayed until the next budget year, or they may be waiting on a related or unrelated decision. There may also be urgent work orders which do not need planning, these may go straight from NEW to WAPPR or APPR.
When PLANNED is used to indicate the end of planning, WPLAN and PLANNED together provide a planning period which can be used in analysis of the planning process. When used in conjunction with Work Type it can also distinguish work orders which were planned from those which were not, if they passed through PLANNED status, then they were planned.
If implemented, the synonyms of WAPPR would now be NEW, WPLAN, PLANNED and WAPPR.
Scheduling
- WSCH – Waiting to be scheduled
- SCHED – Scheduled
Both WSCH and SCHED would be synonyms of WSCH, which would remain the default at the WSCH level. This is adding one additional synonym SCHED to indicate the end of the scheduling period.
Approved work orders which are waiting on materials, tools to become available, or plant conditions should not be moved to WSCH as WSCH means that the conditions for work will be satisfied and that the work order is likely to be scheduled in the next one or two scheduling compliance periods with known resource constraints. Scheduling work orders takes effort and there is little point in starting the scheduling process if the schedule dates are likely to move again a few weeks later, you may as well use target dates as an indication of when work should be achieved. The introduction of a Scheduled Start and Scheduled Finish dates should be an indication that at some point there was an expectation that the work orders would have been completed in that period. Scheduled dates which are unrealistic are of little value. Constantly moving scheduled dates to future times is just an indication that there is a lot of higher priority work orders.
We need the SCHED status to indicate that work assignment should now take place. If you were using the Graphical Scheduling application it would be an indicator that the work orders had been scheduled based on priority, target dates and resource availability. Depending on your processes it might be an indicator to prepare or approve risk assessments, or work permits. If you have implemented scheduling compliance windows, then moving the status to SCHED would indicate that the work order is part of the next compliance window.
Assigning
- WASSIGN – Waiting on assignment
- ASSIGNED – Assigned
Both WASSIGN and ASSIGNED would be synonyms of WSCH. Work orders which have been assigned that need to be rescheduled or reassigned will stay at the same work order internal status level.
Work orders are moved to WASSIGN when the next schedule compliance period is due to start, the supervisor is making the work assignments to individuals (labor) or crews, which should be based on their known shift availability. If work orders cannot be assigned within the availability during the scheduling compliance period, then they would be moved from WASSIGN back to WSCH on the basis that their priority should be considered along with other work orders that would now be considered for scheduling, they would not return to SCHED status as that is an indication that the scheduled dates were still relevant.
Dispatching
Some Maximo clients will want a work order status to indicate that the fully assigned work order or task should now be sent to the mobile device for the technician to start gathering materials and tools and travelling to the work destination. The work order status DISPATCH can be used for this, this would also be a synonym of WSCH. Having DISPATCH separate from ASSIGNED is an indication that if you now wish to reassign work orders, for example because of emergent work, then you should now communicate with the technician or crew, as they may have already started preparations or started travelling to the work site.
Some work teams also work on self-assignment of work and DISPATCH indicates that another technician or crew is owning this work order. In some service industries where response times are important, DISPATCH indicates that a named person is on their way.
While work orders for a whole week may be assigned during the previous week, these work orders would remain at ASSIGNED status. The DISPATCH status typically wouldn’t be set until after the last shift that the person worked on has completed, so that the technician only has one day of work assignments, and not all the work orders that they have been assigned to. This can help to limit the work orders on a technician’s mobile device, which in turn provides more focus to the technician.
If Scheduling, Assigning and Dispatching statuses are fully implemented the WSCH status would have synonyms of WSCH, SCHED, WASSIGN, ASSIGNED, and DISPATCH.
You might be thinking that this is too complex, that there are too many statuses, and that the planner, scheduler or supervisor would be spending too much time changing status. Remember that the status changes can be applied against multiple selected work orders, from the desktop applications, either Work Order Tracking or the graphical applications of Maximo Scheduler. Using statuses to delineate the planning, scheduling, assigning and dispatching processes makes it clear the state of the work order. You needn’t apply these new statuses all in one go, they can be phased depending on the process where you are making improvements.
Work Order Workflow
Should you use Maximo Workflow on a work order?
In short, the answer should be NO. That answer will be a bit controversial because there will be many Maximo clients who are using workflow on work orders.
Workflow should be used for time dependent processes, especially those involving occasional users of Maximo. Workflow pushes a record from person to person or team, you can achieve the same by using the ownership fields on a work order. If there are strict Service Level Agreements on response times for work orders and every minute counts to avoid financial penalties, this is a time dependent process. In my experience facility managers or other service-based organisations using Maximo use ownership, they do not use workflow for chasing the work order through the process. Ownership and Start Center Result SetsA set is used to share data across the Maximo Database. There are two types an Item Set and a Company Set. More can achieve the same thing as we will see later.
“But the Workflow Inbox pulls all my workflow assignments into one place”, true. The Work View also does this across ticket and work order based applications, and you can create a result set on the Start Center based on the work view records and then navigate to the application for the class of ticket or work order.
If you do have occasional users of work orders who are assigned at critical parts of the process, for example work order approval of high value work order estimates, then those users could be notified using an escalation. If they were occasional users, I think it likely that the work orders do not have a time dependency to warrant workflow.
I am not against workflow, it is more my view that they should be used where time-dependency is critical, Purchase Requisition and Purchase Order approval are perfect for this.
There are several other reasons why I think it is inappropriate for work orders:
- Workflow testing takes a lot of effort, the more workflow nodes there are the more time it takes to test. If there are multiple teams involved, then you will spend a lot of time logging in and out. Years ago, we used to take over the training room so that we could log-in as different users and run from PC to PC checking the workflow process.
- Work orders have different processes depending on work type, this increases the number of processes or nodes to test.
- Work orders go through a lot of statuses, if the workflow is end to end, then this increases the number of nodes to test.
- Work order processes are complex, they can differ depending on many factors, it is the area where there is likely to be the largest number of scripts or Java customisation. Why add the workflow layer to your customisation, it will make it more complex.
- Scheduling and Assignment processes are complex, you can reschedule and reassign the same work order multiple times and your workflow process may need to cater for this.
- Often you will want to change the status of multiple work orders, workflow can only change the status of one work order at a time. The List tab actions Change Status, Take Ownership, Select Owner, Assign to New Parent, Create Work Package, and Reschedule/Unassign Assignments can all act on multiple work orders and have the potential to interfere with your workflow process.
- The Modify Work Details action in Maximo Scheduler applications can modify values of multiple work orders which may also interfere with your workflow process. For example, it can change, on mass, Priority, Supervisor, Lead and Work Group fields.
- Workflow operates at the system level. If your workflow process has differences depending on SiteA structural element of a Maximo database that is used for data separation. More, then you will be creating subprocesses and adding to the complexity.
- The risk of being out of synchronisation with the workflow process can be high, if you change status via Maximo Mobile or Maximo Scheduler, workflow will think you are somewhere else in the process. Neither Maximo Scheduler or Maximo Mobile support workflow. Workflow is a server-side process, it would not be compatible with offline working.
- The work orders status can flow down the hierarchy. Work orders can be added to work packages, or removed from work packages when this happens the status can be changed. Using the timer will change status to INPRG. If workflow starts to restrict how you use Maximo work orders, this is a tell-tale sign that you have extended workflow into areas where it ought not to be used.
Ideally, do not use Maximo Workflow at all on a work order. If you must use Workflow restrict it up to the point where a work order becomes Approved (APPR) and auto-initiate a new workflow process when a work order reaches Complete (COMP) status. If you do use workflow, consider a workflow process for each internal work order status, rather than having a workflow process that crosses work order statuses, it will keep your workflow processes smaller and contained focusing only on the differences between work types.
If you must use Workflow, restrict it to processes that are generic across all sites.
You can use one or more Wait nodes in a Workflow process to watch for a status change and to continue the process when the status change occurs. The Wait node can’t handle anything too complicated, not without creating several other workflow nodes, although it can come out of the wait state if one of multiple statuses occur. Instead of using a Wait node, you could use an Escalation to automatically initiate a new workflow process using the Action with a type of Application Action and a Value of WFINITIATE where the Parameter is an active workflow process, this would be my preference, if Workflow had to be used.
If your Workflow processes has so many nodes or subprocesses, that trying to follow the process logic is difficult, or making changes is prone to creating errors unless the person who developed the workflow process also makes the changes, then it might be time to rethink whether workflow is providing an advantage, or whether it has become a burden.
Ownership
There are three fields on both Service Requests and Work Orders which define ownership.
- Owner is the person who is currently taking responsibility for the record, it may be an individual planner or supervisor. You can use the actions Take Ownership or Select Owner and these actions work against multiple records and are not restricted to one record at a time as workflow is.
- Owner Group, is a Person Group (team) that is responsible for the record. It is mutually exclusive with the Owner field. Think of this as a queue where the team is assigned, but no individual has yet taken responsibility. The Select Owner action allows you to change the Owner Group.
- Assigned Owner Group is a hidden field, but very important. It identifies the team owning the record, whether the owner or owner group is referenced. The Assigned Owner Group will be mostly used on Start Centre Result Set portlets. It is always set whether you use the Take Ownership or Select Owner actions. In the Select Owner action a person may appear multiple times if they belong to multiple person groups. It is the record you choose which sets the Assigned Owner Group field.
The great thing about using the Take Ownership and Select Owner actions is that it builds an ownership history that can be seen at the bottom of the Status History dialog.
Using these Ownership actions is more powerful than workflow and can help to reduce the complexity of a workflow process. Escalations in conjunction with Communication Templates are used to notify occasional users of Maximo when ownership changes, otherwise Start Center Result Sets are used to drive a person’s next action. Ownership and Escalations were introduced in Maximo 6 (MXES) because Workflow performance was poor and took too long to test with an increasing number of workflow nodes.
In addition, the Work View should be used for these Result Set portlets, it was added at the same time to significantly improve performance on highly populated databases. An assessment I made on a client site with 25 million work orders made an 8-10 times performance improvement by converting queries to using the WORKVIEW object instead of WORKORDER. I’ve also written an article on Work View – https://maximosecrets.com/2021/11/25/work-view/

The Owner and Owner Group fields will be found in the Responsibility section of the Work Order Tracking application. For those clients who use Ownership instead of Workflow they tend to move these fields to the top of the Work Order, Plans, Assignments and Actuals tab to make them easier to find.
Notice the Owner and Owner Group fields are read-only, they are changed by using the action Take Ownership and Select Owner. Those actions are also available from the List tab and can be applied to multiple selected work orders, an advantage over workflow.
The Owner and Owner Group fields are mutually exclusive, only one of these fields will ever have a value.
Take Ownership

The Take Ownership action makes you, the logged in user, the owner of the record, work order in this case. There is no dialog. I am logged in as WILSON and on a new work order I used the action Take Ownership; I am now responsible for the work order.

The action View – Work Order History shows the status history and ownership history. I have added the Assigned Owner Group column to the Ownership History table. It shows the first ownership record with WILSON as the Owner, WILSON also made the change.
Select Owner – Persons

The Select Owner action opens a dialog with two tabs for selecting an owner (Person tab) or owner group (Person Groups tab). The Open Work column indicates the number of open work orders or tickets that the person has responsibility for. There is also functionality to display only the people who are available at a particular date/time. This article provides more details – https://maximosecrets.com/2021/10/11/take-ownership-and-select-owner/
I have selected MILLER the top record and Person Group 1001. In the Responsibility section, the Owner field is now MILLER, and the Owner Group field is blank, they are mutually exclusive, only one field can have a value.

The ownership history is now showing a second record. MILLER is the Owner, however, Maximo recorded in the Assigned Owner Group field the Person Group that was selected at the same time as selecting MILLER, Person Group 1001.
Select Owner – Person Groups

You can use the Person Groups tab to select an owner group. This tab provides a list of Person Groups, I will select the ENV – Environmental Group.

The Responsibility section now shows the Owner Group of ENV and the Owner field has been blanked, only one of these fields can have a value.

The View – Work Order History shows ENV in both the Owner Group and Assigned Owner Group fields.
It doesn’t matter whether you are selecting an Owner or Owner Group the Assigned Owner Group field is being set.
Take Ownership after Assigned Owner Group has been set

Logged in as WILSON I took ownership at 1:53pm and you can see from the View – Work Order History that WILSON is the Owner but ENV is still the Assigned Owner Group.
Logged in as WINSTON I took ownership at 1:55pm and you can see from the View – Work Order History that WINSTON is now the Owner but ENV remains the Assigned Owner Group.
The action Take Ownership only changes the Owner field, the Assigned Owner Group remains the same, and it doesn’t matter whether the person of the logged in user is a member of the Person Group, or not.
Therefore, except for when a Take Ownership occurs on a record before the Assigned Owner Group has been set, the Assigned Owner Group field will always indicate the team responsible for the record. This means that this hidden field is the best one for identifying the current team responsible for processing the work order.
The Owner and Owner Group fields will be found on a Job Plan and a Job Task, also on a PM, therefore it would be possible to set the Owner Group on new work orders when the Job Plan is applied.
The Owner and Owner Group fields will also be found on a Service Request and a Ticket Template, and the functionality of ownership works identically on the SR. The two fields OWNER and OWNERGROUP are not copied to a work order, but the TICKET2WO crossover domain could copy a field to the work order’s OWNERGROUP so that when a work order is created from a Service Request it appears in the queue of an appropriate team. If you want to do this, I would add a custom field to the Service Request called WO Owner Group (WOOWNERGROUP).
Work View

The Work View is an application in the Administration module, it is not intended as an end-user application, however, Start Center Result Sets or Work Queues can be based on queries defined by an administrator in the Work View application.
There is a standard query called – Owner is login user – which shows the records of the logged in user. I am logged in as WINSTON and it shows the one work order (1624) which has been used to illustrate ownership. From the detail menu on the Record field you can Go To the record in the associated application.

If I logged in as WILSON I would see a different set of records. Notice the Class column shows that these records originate from multiple applications and if you were using Health, Safety and Environment (HSE) add-on you would see Defects, Incidents, Investigations, Improvements, MOC Requests, MOC and a few other ticket or work order record types.
The saved query has the following where clause:
where (historyflag =0 and istask =0) and ( owner=:USER or ownergroup in ( select persongroup from persongroupteam where resppartygroup=:USER OR RESPPARTY=:USER))
It finds tickets or work order class records where the logged in user is either the owner or a member of the owner group.

A Result Set portlet can also be created over the WORKVIEW application using the same query (OWNERLIST) and it produces the same results. The WORKVIEW contains the application to launch for the record type, so clicking on a row may launch a different application.
The WORKVIEW object also contains the ASSIGNEDOWNERGROUP field.
Conclusion
In the 12 Steps to Planning and Scheduling Maturity, step 1 is ‘Ownership’, a part of Assigning Work. Assigning precedes Planning or Scheduling because it is something which all clients who create work orders do, they may not plan or schedule, but the work is performed by someone, whether this is an assignment made by a supervisor, or whether a technician assigns themselves to the work order.
Ownership also means tracking responsibility for a work order throughout its life, and not just during the part when the required work is executed. There can be various teams involved in work planning, scheduling, assignment, execution, and work closure. At all times you should understand which team owns the work order, and which member of the team is taking ownership. This is applying service management techniques to work management.
In this article I suggested that if you are looking to improve your Planning and Scheduling journey you should also consider:
- Creating a glossary of terms, so that when you discuss each subject you have a definition with ideally some examples, so that everyone is using the same language.
- Create additional work order status synonyms to identify when a work order is in Planning, Scheduling or Work Assignment.
- If you are using work order workflow, consider how it can be simplified or preferably eliminated. If you do use workflow, then it should be generic and applicable to all sites. Ideally workflow would not go beyond work order approval, it should not interfere with scheduling, work assignment or work execution. A new workflow process could be used after a technician has indicated that work is complete to ensure the work order is closed promptly.
- Use work order ownership to indicate the team and individual responsible for the work order. Implementing ownership will simplify any workflow that you have on the work order. With ownership consider how to create a queue of work orders using Start Center Result Sets based on the Work View. Each queue are the work orders at various states, waiting to be planned, waiting to be scheduled, waiting to be assigned, etc.
Ownership and Workflow are similar I don’t think you should use both. If you are not using workflow today on work orders, then don’t start now. If you look back at Maximo history Ownership was introduced after Workflow, it was introduced to give an alternative to Workflow.


