The Maintenance Manager features an enhanced workflow for tracking the life cycle of a simple transportation asset from installation date to0 retirement date. In addition to modeling how the asset condition will deteriorate over time, decision trees can now be used to set the ideal thresholds, in terms of age or condition, at which the agency can intervene, with key maintenance activities/treatments, to improve or maintain the asset's condition and extend its life. Optimization Analysis can also now be used for multi-year planning of the asset maintenance program, including the planning for replacement campaigns at the expected end of life for a group of assets.

Optimization Analysis

The Standard Pavement Express module support for Lifecycle Analysis on various network types or asset classes (namely Pavement Segments and Parking Lots) most closely resembles the functionality. Still, MMS has a simplified version of this. It supports only Signs asset types for now, but adding support for other simple asset types should be straightforward.

To open the Optimization Analysis window, follow the steps below:

  1. Open the module menu and select Maintenance Manager
  2. Select Planning 
  3. Select Optimization Analysis

In this window, scenarios can be configured and executed, but a general configuration must be done first in order for it to operate. This is described in the next sections.

Module-Level Configuration Table

MS_OPT_TABLE_NAMES table lists important names of tables and columns used during network optimization and performance analysis.

Agile Standard has a record for module 3 (MMS), which contains the main tables and column names used in the optimization analysis. It should not require any changes for adding new asset types.

Network Master Table

MMS_NETWORK_MASTER is a network master table in the MMS module. It contains the main asset attributes (id, name, installation year, expected life, condition (5-0), etc.) used in the optimization analysis.

To populate the MMS_NETWORK_MASTER table - run a System Job called "Update MMS Network Master" which accepts one required argument - Effective Year, and one optional argument, Asset Type. If Asset Type is not set - System Job will populate data for all assets that support optimization analysis in MMS. The Job uses Asset Lifecycle Parameters and Asset Inventory data to populate the Network Master table.

Asset Lifecycle Parameters

Asset LifeCycle parameters and data are stored in 3 tables.

SETUP_DEFAULT_ASSET_ATTRIBUTE

This defines default Replacement Cost and Expected Life on the asset class code level

Column Name

Data Type

COMMENT

default_asset_attribute_id
bigint
PK
asset_type_id
bigint
FK to the setup_asset_type table.
class_code_id
bigint
FK to the ident_class_code table.
replacement_cost
integer

expected_life
integer

comment_str
varchar(4000)

user_update
varchar(400)

date_update
date

Record for Signs in the DB

default_class_code_attribute_id

asset_type_id

class_code_id

replacement_cost

expected_life

comment_str

user_update

date_update

120382531281507
SYSTEM2022-08-09

ASSET_ATTRIBUTE

This allows overriding default Replacement Cost and Expected Life values for any asset

Column Name

Data Type

COMMENT

asset_attribute_id
bigint
PK
inv_elem_id
bigint
FK to the ident_inv_element table.
replacement_cost
integer

expected_life
integer

comment_str
varchar(4000)

user_update
varchar(400)

date_update
date

For Signs - these values can be defined in the Combined Asset Inventory window using right-click menu.

SETUP_ASSET_COLUMN

This defines Installation Date and Primary Key column names in the asset inventory table since it usually varies

Column Name

Data Type

COMMENT

asset_column_id
bigint
PK
asset_type_id
bigint
FK to the setup_asset_type table.
installation_date_column_name
varchar(100)
FK to the setup_column_id table.
primary_key_column_name
varchar(100)
FK to the setup_column_id table.
comment_str
varchar(4000)

user_update
varchar(400)

date_update
date

Record for Signs in the DB

asset_column_id

asset_type_id

installation_date_column_name

primary_key_column_name

comment_str

user_update

date_update

12038ORIGINSIGN_ID
SYSTEM2022-08-09

Decision Trees

Upper Level Decision Trees

Contains only Signs asset type note but can contain others.

Decision Trees

Defines treatments based on asset attributes. Signs use Asset Condition and Asset Age as decision tree arguments.

Performance Models

There is currently only one performance model, which uses a 7-year deterioration model.

There will be additional nodes for other asset types and expected life years (Linear Condition from 100 to 0 in N Years) when N is a possible expected asset life value. Note the Performance Model list can be viewed in the Performance Model List.

Analysis Columns

A configuration where we can specify which columns are used as a Decision Tree/Performance Model variable, as a constraint in the analysis setup, as an analysis scope variable, etc. Most likely won't need to be updated for other assets.

Asset Lifecycle

Asset Condition and Maintenance Activities

Asset condition can be updated by creating and completing Regular inspection in Inspection window.
When inspection is completed, groovy script which is used to calculate overall condition of Sign analyzes Asset Inspection Answers, and populates asset condition using following schema:

Overall RatingCriteria for using this rating
1 - Replace
  • The inspection question "Is the sign missing?" is answered "Yes" OR
  • The inspection question "Is a work order required to repair damage?" is answered "Yes" OR
  • Three or more of the condition index questions are answered "Poor" or "No"
2 - Poor
  • Two of the condition index questions are answered "Poor" or "No" AND
  • All other condition index questions are answered "Fair", "Good", or "Yes"
3 - Fair
  • At most one of the condition index questions are answered "Poor" or "No" AND
  • All other condition index questions are answered "Fair", "Good", or "Yes"
4 - Good
  • At most two of the condition index questions are answered "Fair" AND
  • All other condition index questions are answered "Good" or "Yes"
5 - Excellent
  • All condition index questions are answered "Good" or "Yes"
0 - N/A
  • None of the criteria above is applicable


Asset condition could be also updated by system by generating Maintenance inspections, for that new work order should be created.
In creation wizard it should have Asset Type field populated with asset type that currently supports LCCA, in Activity field should be selected activity that has corresponding
treatment mapping in ACTIVITY_TREATMENT table otherwise work order would not be processed by system and inspection records would not be created.

When there are work orders that have activity with corresponding treatment, they will be processed by system job called 'MMS: Update Asset Condition After Maintenance'
this job will be executed automatically once a day and will process all completed work orders since last time job was executed, in case that job was never executed all work orders would be processed.
New Maintenance inspections would be created for inventory elements of processed work orders and 'Update Target Table' will be executed for these inventory elements.

When work order was processed by system job and after that uncompleted then next time system job will be executed it will delete all Maintenance inspections that were created from this work order.
If inspection will be completed again it will be processed by job next time it will be executed.

Asset Lifecycle JasperServer Report

An Asset Life Cycle JasperServer report is embedded in the Combined Asset Inventory window and can be opened by selecting Show Asset Life Cycle Report in the right-click menu.