Altran improves software quality with Machine Learning
Altran has announced the release of a new tool, available on GitHub, that predicts the likelihood of bugs in source code created by developers early in the software development process. By applying Machine Learning (ML) to historical data, the tool - called 'Code Defect AI' - identifies areas of the code that are potentially buggy and then suggests a set of tests to diagnose and fix the flaws, resulting in higher quality software and faster development times.
Bugs are a fact of life in software development. The later a defect is found in the development life cycle, the higher the cost of fixing a bug. This bug-deployment-analysis-fix process is time consuming and costly. Code Defect AI allows earlier discovery of defects, minimising the cost of fixing them and speeding the development cycle.
“It’s well known that software developers are under constant pressure to release code fast without compromising on quality,” said Walid Negm, Group Chief Innovation Officer at Altran.
“The reality however is that the software release cycle needs more than automation of assembly and delivery activities. It needs algorithms that can help make strategic judgments - especially as code gets more complex. Code Defect AI does exactly that.”
Code Defect AI relies on various ML techniques including random decision forests, support vector machines, MultiLayer Perceptron (MLP) and logistic regression. Historical data is extracted, pre-processed and labelled to train the algorithm and curate a reliable decision model. Developers are given a confidence score that predicts whether the code is compliant or presents the risk of containing bugs.
Code Defect AI supports integration with third-party analysis tools and can itself help identify bugs in a given program code. Additionally, the Code Defect AI tool allows developers to assess which features in the code have higher weightage in terms of bug prediction, i.e., if there are two features in the software that play a role in the assessment of a probable bug, which feature will take precedence.
“Microsoft and Altran have been working together to improve the software development cycle, and Code Defect AI, powered by Microsoft Azure, is an innovative tool that can help software developers through the use of machine learning,” said David Carmona, General Manager of AI Marketing at Microsoft.
Code Defect AI is a scalable solution that can be hosted on premise as well as on cloud computing platforms such as Microsoft Azure. While the solution currently supports GitHub, which is owned by Microsoft, it can be integrated with other source-code management tools as needed.
The tool is also available on the Microsoft AI Lab portal so that Microsoft developers can download the solution and use it internally.