Conoscere il problema aziendale
Si supponga di lavorare presso Proseware, una startup dedicata a migliorare il lavoro dei medici. Per supportare i medici è in corso lo sviluppo di una nuova applicazione Web che consenta di effettuare diagnosi più rapidamente in base ai dati medici dei pazienti.
Viene eseguito il training di un modello di classificazione del diabete, che è pronto per essere integrato nell'app Web. Un importante obiettivo a lungo termine di Proseware è quello di migliorare continuamente l'app e l'accuratezza del modello in futuro.
Dopo essere diventati membri del team come tecnico di Machine Learning, si riceve l'incarico di standardizzare l'integrazione continua del modello con l'app. Un aspetto importante della standardizzazione consiste nel garantire che il codice usato per eseguire il training del modello venga verificato.
Per verificare il codice usato per eseguire il training del modello di classificazione del diabete, sarà necessario eseguire:
- Linting: verifica della presenza di eventuali errori programmatici o stilistici negli script Python o R.
- Testing unità: verifica delle prestazioni del contenuto del codice.
Per aiutare il team di data science a comprendere gli standard di qualità del codice, i membri avranno la possibilità di verificare il codice durante lo sviluppo in locale in Visual Studio Code.
Tuttavia, si vuole automatizzare la verifica del codice per controllare che tutto il codice sottoposto a push in produzione non abbia problemi e funzioni come previsto. Insieme al team di data science si decide di eseguire linting e testing unità ogni volta che viene creata una richiesta pull usando GitHub Actions.