For any Project, one of the key aspects to Project’s success is Project cost estimation. After a good exercise of estimation, Project Manager must seek approval from the higher ups by putting the supporting information on the table. Despite, it is often possible that the estimation goes wrong and thus leading to budget overruns. As part of SAP’s Intelligent Enterprise, Project Cost Prediction will help to leverage the information of historical data of the Projects and come up with a reliable cost plan. And the good news is – this model is delivered out of the box from SAP S/4HANA Cloud 1805.
Objective
While defining the predictive model version, you may be sometimes unsure what to feed the Model with and what does a specific input mean. This blog will give you the details about a step by step approach to define and consume the Predictive model. While doing so, various technical fields, possible input values, and technical jargon are explained. Also, this blog serves as consolidation of information available in the public domain like SAP Help, SAP Best Practices, Wikipedia etc.
Basic Information & Jargon
Predictive Scenario
Predictive scenario has a list of Predictive Models and it manages their life cycle. It defines type of Prediction to make: Regression or Classification.
Predictive Model
Predictive Model is the one that can be trained to predict outcomes from a given Dataset.
Predictive Model Version
A Predictive model can have multiple versions of which only one can be active at any given time.
Prediction Type
Regression
Regression is a statistical modelling based on Causal Effect relationship. It is about taking some criteria into consideration (called independent variables) and determines a prediction value (called dependent variable). It is analogous to a mathematical expression like X = 2A + 5B * 9C. Where X is a dependent variable and A, B, C are independent variables. Of course, this is just an arithmetic expression to explain for a beginner. The actual prediction algorithm is much more complex. Project cost prediction comes under this type of prediction.
In other words, Project Cost prediction is variable calculated upon the basis of the independent variables. These independent variables are also called influencers. Some of the influencers are “number of WBS elements”, “Duration of the Project” etc.
Classification
Training data set contains many observations and their categories. When a new observation comes up, it will be classified based on past observations. Like the junk e-mails being classified and put in relevant folder of the Mailbox.
Training a Predictive Model
The App name is “Predictive Models (F1837)”. Link to the app in the reference library is
here.
Open the APP for Predictive Models (F1837)
Choose the Predictive Model “Project Cost Forecast”.
Click on the “Default” Modelling context
Click the radio button to choose the “Default” model and click on “Train”.
In the “Train Model” screen enter a suitable description.
Click on “+” to enter Input dataset (These are the Training Filters that are called as independent variables in the context of regression prediction)
Click “+” multiple times to enter multiple Training filters.
Fields in the Input data set
While the training filters are self-explanatory, I listed some that may be helpful for easy understanding.
WBSELEMENTOBJECT - Object number of the WBS element
PROJECT - 24 Character external Project ID
PLANNEDSTARTBYERLSTPLANNEDCOST - Planned start by earliest planned cost
PLANNEDENDBYLTSTPLANNEDCOST - Planned end by latest planned cost
PLANNEDCOSTERLSTTOLTSTDURN - Planned cost earliest to latest duration
Values/ format of input expected
Project Internal ID - 8-digit internal ID
WBS element internal ID - 8-digit internal ID
WBS element object - Object number of the WBS element
Project - 24-character external Project ID
Amounts - 23 length with 2 decimal places included
Dates - YYYYMMDD format
Duration - In “Integer” number of days
Year Month - 6-character YYYYMM format
Team member count - Number of team members
Team member role staffing count - Number of team member assignments
Project Processing status
Following are the status values allowed and their description. SAP recommends using the ‘Completed’ projects (status 40) to train the Predictive models. Because, the completed projects will have more accurate data which can be used for training. On the other hand, a project that is just created or cancelled may not be suitable to consider for training the model.
Model Version creation
However, it is not mandatory to enter values in the criteria. Click on ‘Train’ without entering input data set. Thus, all the aspects identified by the algorithm are considered for cost prediction without applying any filter..
Also, the fields that are considered as Input for training are specified
here in the SAP Help.
After adding the training filters, click on ‘Train’ to create a version.
Model Version statuses
Training
This status appears immediately when model version is just created. It may take just a couple of minutes to go to the next status.
Ready
After the model is successfully trained, it will be ready for usage.
Active
We can activate a version that is trained and ready. Only one version can be activated at a time. The active version is the one that predicts the cost.
Error
When there is no sufficient data, the training of a model may result in error.
Model Version Report Overview
By clicking on the Model version, the corresponding report will be displayed. Quality is shown in the form of 5 start rating and is a function of “Predictive power” and “Predictive Confidence”. The meaning of Predictive power and Predictive confidence is explained
here.
Cost Prediction
The predicted cost can be seen in the Project Financial Controller Overview app. You need to access the card “Planned Projects”.
Choose one of the Projects listed and click on “Predict Cost”. Then the regression algorithm is run, and the resultant value is displayed. Click on the value will open a pop-up with details. Here you can also see the range of predicted cost value.
Further information can be viewed by clicking on “Prediction details”. It is also possible to see a graph across periods with lines corresponding to planned cost, actual cost, upper limit of prediction, lower limit of prediction, and predicted cost value. The same details can be depicted in tabular form as well.
Business Benefits
- Leverage out-of-the-box predictive model for the project management in EPPM
- Predict project budget overruns with better forecasting based on historical information on similar projects.
- Adjust the allocated budgets to the various projects
- It is helpful to validate the costs planned against the prediction based on historical values. This makes Project cost estimation and planning more reliable and thus leading to Project Success
- Besides a strong cost plan, a legitimate validation will become handy when requesting budget from the superiors for any upcoming or ongoing project.
Additional Information
Like any other Machine Learning algorithm, the predictions will become stronger with the amount of data available for learning. If you are starting with a new implementation and if there is no initial set of R&D projects, training the Model is not possible. The version status in such case will be ‘Error’.
Predicted cost is at the level of the Project and not at the individual objects of the Project.
Project Cost Prediction is shipped out of the box with S/4HANA Cloud 1805. It is yet to come in On-Premise systems.
Currently, the cost prediction works for R&D projects only.
Find out more about this project cost forecasting machine learning use case in
Sven Denecken’s blog and
Corina Kinzel blog.
SAP Help on Predictive models
here.
Link Best Practice Scope item
here.
SAP Help on S/4HANA cloud
here.
With this, I hope the concept of Predictive Models, the ML Jargon, and a couple of algorithms are understood in the context of Project Cost Prediction. Various training filters available, their meanings, possible input values and formats are clear. If some trainings may end in status "Error", you may now know the reason and also figure out the way to retrain the model appropriately. Also, the links to further information are available.