The complete ML development pipeline includes three levels where changes can occur: Data, ML Model, and Code. This means that in machine learning-based systems, the trigger for a build might be the combination of a code change, data change or model change. The following table summarizes the MLOps principles for building ML-based software:

MLOps Principles Data ML Model Code
Versioning 1) Data preparation pipelines 2) Features store 3) Datasets 4) Metadata 1) ML model training pipeline 2) ML model (object) 3) Hyperparameters 4) Experiment tracking 1) Application code 2) Configurations
Testing 1) Data Validation (error detection) 2) Feature creation unit testing 1) Model specification is unit tested 2) ML model training pipeline is integration tested 3) ML model is validated before being operationalized 4) ML model staleness test (in production) 5) Testing ML model relevance and correctness 6) Testing non-functional requirements (security, fairness, interpretability) 1) Unit testing 2) Integration testing for the end-to-end pipeline
Automation 1) Data transformation 2) Feature creation and manipulation 1) Data engineering pipeline 2) ML model training pipeline 3) Hyperparameter/Parameter selection 1) ML model deployment with CI/CD2) Application build
Reproducibility 1) Backup data 2) Data versioning 3) Extract metadata 4) Versioning of feature engineering 1) Hyperparameter tuning is identical between dev and prod 2) The order of features is the same 3) Ensemble learning: the combination of ML models is same 4)The model pseudo-code is documented 1) Versions of all dependencies in dev and prod are identical 2) Same technical stack for dev and production environments 3) Reproducing results by providing container images or virtual machines
Deployment 1) Feature store is used in dev and prod environments 1) Containerization of the ML stack 2) REST API 3) On-premise, cloud, or edge 1) On-premise, cloud, or edge
Monitoring 1) Data distribution changes (training vs. serving data) 2) Training vs serving features 1) ML model decay 2) Numerical stability 3) Computational performance of the ML model 1) Predictive quality of the application on serving data