A method for performing maintenance on a vehicle, wherein the method comprises: receiving maintenance message data and fault message data associated with operation of the vehicle, wherein the maintenance message data comprise a plurality of maintenance messages and the fault message data comprise a plurality of fault messages; determining a predictive relationship between the maintenance message data and the fault message data such that the occurrence of at least one of the plurality of maintenance messages indicates a corresponding one of the plurality of fault messages will occur in the future, wherein the predictive relationship is determined by determining which types of the plurality of maintenance messages occur within a predefined number of vehicle operations from a respective one of the plurality of fault messages; counting occurrences of at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message; counting total occurrences of the at least one type of maintenance message; counting total occurrences of the respective fault message; and determining if the at least one type of maintenance message is predictive of the respective fault message based on the count of the occurrences of the at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message and based on the count of the total occurrences of the at least one type of maintenance message and the count of the total occurrences of the respective fault message; and performing maintenance on the vehicle based upon the occurrence of one of the plurality of maintenance messages that is predictive of a fault message to prevent the occurrence of the corresponding one of the plurality of fault messages, wherein determining if the at least one type of maintenance message is predictive of the respective fault message comprises: calculating a first ratio of the occurrences of the at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message to the total occurrences of the at least one type of maintenance message; eliminating any types of maintenance messages with the first ratio being less than a first cutoff threshold; calculating a second ratio of the occurrences of the at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message to the total occurrences of the respective fault message; and eliminating any types of maintenance messages with the second ratio being less than a second cutoff threshold. receiving maintenance message data and fault message data associated with operation of the vehicle, wherein the maintenance message data comprise a plurality of maintenance messages and the fault message data comprise a plurality of fault messages; determining a predictive relationship between the maintenance message data and the fault message data such that the occurrence of at least one of the plurality of maintenance messages indicates a corresponding one of the plurality of fault messages will occur in the future, wherein the predictive relationship is determined by determining which types of the plurality of maintenance messages occur within a predefined number of vehicle operations from a respective one of the plurality of fault messages; counting occurrences of at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message; counting total occurrences of the at least one type of maintenance message; counting total occurrences of the respective fault message; and determining if the at least one type of maintenance message is predictive of the respective fault message based on the count of the occurrences of the at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message and based on the count of the total occurrences of the at least one type of maintenance message and the count of the total occurrences of the respective fault message; and performing maintenance on the vehicle based upon the occurrence of one of the plurality of maintenance messages that is predictive of a fault message to prevent the occurrence of the corresponding one of the plurality of fault messages, calculating a first ratio of the occurrences of the at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message to the total occurrences of the at least one type of maintenance message; eliminating any types of maintenance messages with the first ratio being less than a first cutoff threshold; calculating a second ratio of the occurrences of the at least one type of maintenance message occurring within the predefined number of vehicle operations from the respective fault message to the total occurrences of the respective fault message; and eliminating any types of maintenance messages with the second ratio being less than a second cutoff threshold.