The analysis using model metrics from MXAM/MXRAY* indicates error-prone hotspots within a software module with high accuracy. According to Humphrey Achiri, Senior Developer at MBRDNA, "This considerably improved the overall readability, testability, and maintainability of our software modules." Beyond this, the calibration engineers at Mercedes-Benz pointed out that it “has become much easier to navigate through the finalized software during vehicle testing, where time on the test tracks is a constraint." It has also become more convenient for the Mercedes-Benz test engineers to set up MIL and SIL test cases (i.e. easier to perform requirements-based testing) since individual requirements were better aligned with the actual implementation in particular subsystems. Additionally, it has become easier to document the software, thanks to the less complex individual subsystems.
MBRDNA has been able to achieve its main objective of improving the readability, testability, and maintainability of its software modules for the new generation of hybrid and fully electrical cars. Documentation of the software has also been simplified due to the reduction in complex individual subsystems. The numeric results achieved during refactoring include:
- Global complexity, a metric for the understandability and readability of the entire software model, has been reduced by around 10%. This signifies a substantial reduction in the effort required to understand, maintain, test, and implement the refactored software model.
- A substantial reduction in local complexity values was achieved, and for some software modules, the number of complex subsystems was reduced to zero.
Results achieved in soft facts:
- Comments from the requirements engineering team: “Wow – these software models are much easier to understand and to work with now." With the model’s additional relevance to MBRDNA’s 48V systems, pure E-Drive systems, and fuel cell programs, managing its complexity has also proven beneficial for variant management.
Additionally, the automatically generated code has not changed, a result of the fact that the functionality described in the model was not modified.
In light of the positive tangible results, the process improvements, and the favorable internal feedback, the effort MBRDNA dedicated to setting up MES tools and to improving the entire software model has been very well invested. The feedback and the actual concrete outcomes of the refactoring project are very good.