\section{Results} \begin{table} \centering \caption{A subset of the AI lifecycle \href{https://se-ml.github.io/practices/}{best practices identified by Serban et al.} \cite{serban2020adoption,serban2021practices} and the level of support GreatAI provides for them. \textit{Full} requires no action from the user, \textit{Partial} requires at least some involvement, while \textit{Slight} provides some useful features but the client is still expected to make a significant effort.} \label{table:best-practices} \begin{tabular}{p{7cm}@{\hskip 0.5cm}c@{\hskip 0.5cm}c} \hline \textbf{Best practice} & \textbf{Implementation} & \textbf{Level of support} \\\hline Use Sanity Checks for All External Data Sources & \texttt{great\_ai.parameter} & Partial \\\hline Check that Input Data is Complete, Balanced and Well Distributed & Type-checked input & Slight \\\hline Write Reusable Scripts for Data Cleaning and Merging & \texttt{great\_ai.utilities} & Partial \\\hline Make Data Sets Available on Shared Infrastructure (private or public) & \texttt{great\_ai.large\_file} & Full \\\hline Test all Feature Extraction Code & \texttt{great\_ai.utilities} & Partial \\\hline Employ Interpretable Models When Possible & \texttt{great\_ai} & Slight \\\hline Enable Parallel Training Experiments & \texttt{great\_ai.parallel\_map} & Partial \\\hline Continuously Measure Model Quality and Performance & \texttt{great\_ai} & Full \\\hline Use Versioning for Data, Model, Configurations and Training Scripts & \texttt{great\_ai.large\_file} & Full \\\hline Run Automated Regression Tests & \texttt{great\_ai} & Full \\\hline Use Continuous Integration & Docker Images \& scripts & Partial \\\hline Use Static Analysis to Check Code Quality & Typed API & Partial \\\hline Assure Application Security & GreatAI is audited & Partial \\\hline Automate Model Deployment & Docker Images \& scripts & Partial \\\hline TODO: Enable Shadow Deployment & GreatAI & Full \\\hline Continuously Monitor the Behaviour of Deployed Models & \texttt{great\_ai} & Full \\\hline Enable Automatic Roll Backs for Production Models & Docker Images & Partial \\\hline Log Production Predictions with the Model's Version and Input Data & GreatAI & Full \\\hline Explain Results and Decisions to Users & GreatAI & Slight \\\hline \end{tabular} \end{table} Table \ref{table:best-practices} summarises the implemented best practices.