Interface CostForecastProvider

All Superinterfaces:
PluginProvider
All Known Implementing Classes:
LeastSquaresCostForecastProvider

public interface CostForecastProvider extends PluginProvider
Provides computational logic for performing cost forecasting operations. This is used to generate future cost estimates based on historical cost data.
See Also:
  • Method Details

    • getDescription

      String getDescription()
      Provide a description of this method of cost trend forecasting
      Returns:
      the description of the forecasting method
    • getRequiresHistoricalData

      Boolean getRequiresHistoricalData()
      Determine if this forecasting method requires historical data to generate forecasts
      Returns:
      the boolean value indicating if historical data is required
    • getMinimumHistoricalData

      Integer getMinimumHistoricalData(Interval interval)
      Determine the minimum number of historical data points required to generate a forecast
      Parameters:
      interval - the interval of the historical data i.e. monthly based, quarterly, or yearly
      Returns:
      the minimum number of historical data points required
    • generateForecast

      List<Forecast> generateForecast(Interval interval, List<CostHistory> costHistory, Integer numberOfForecastIntervals)
      Generate a forecast based on historical cost data. This is where the magic happens.
      Parameters:
      interval - the interval of the historical data i.e. monthly based, quarterly, or yearly
      costHistory - the historical cost data to use for forecasting
      numberOfForecastIntervals - the number of intervals to forecast into the future
      Returns:
      the list of forecasted cost data