Software Engineering Best Practices for Using Machine Learning in the Oil and Gas Industry
Palavras-chave:
Software Engineering, Best Practices, Machine Learning, Mooring Failure DetectionResumo
The widespread adoption of Machine Learning (ML), due to the increased availability of data and the fast
evolution of computing power and software techniques experienced in the last decade, has fundamentally changed
our world. The implementation of ML models has become fast and cheap, allowing state-of-the-art discoveries to
become widely accessible. That context enabled innovation in several industries and businesses, with problems
hitherto untouched by science being addressed, therefore requiring a reduction in the gap between scientific re-
search and its application in real-world issues. However, ML models have proven to be expensive to maintain and
scale. New challenges emerge as ML models are deployed and monitored, driving a rising concern about best
practices for building reliable ML systems. Despite the increasing popularity of this subject and the consolidation
of specialized literature, applying the best practices is not a simple task. Depending on time or team experience
and size, such practices can represent a technical overhead, making the enforcement of such practices an arduous
task in many situations. This paper proposes a strategy for adopting software engineering best practices by com-
mitting to a set of principles from the beginning of an ML project. To illustrate our strategy, we will use mooring
line failure detection in the floating production storage and offloading unit (FPSO) mooring system, providing an
example of our strategy applied in the Oil and Gas industry.