From DevOps to MLOps: Overview and Application to Electricity Market Forecasting
Abstract
:1. Introduction
- The literature on the motivations and the state of the art of MLOps is reviewed.
- An overview of MLOps theory and DevOps theory relevant to the implementation of MLOps is presented, and an MLOps framework is proposed.
- The proposed framework is applied to a time-series forecasting application as a case study. The case study is implemented with MLOps pipelines.
2. Related Work
2.1. Software Development Life Cycle
2.2. Agile and DevOps
- The new codebase might break old features.
- It is difficult to track what has changed.
- The software might not serve its core purpose at all.
2.3. MLOps from DevOps
2.4. Summary of MLOps from DevOps
3. An Overview of DevOps and MLOps
3.1. DevOps
3.1.1. DevOps Workflow and Components
Plan
Code
Build
Test
Release
Deploy
Operate
Monitor
3.1.2. DevOps Pipeline
- Continuous Integration (CI);
- Continuous Delivery (CD);
- Continuous Deployment;
- Continuous Monitoring.
Continuous Integration
- Code or merge conflicts: This is the state when SCM is unable to resolve the difference in code between two commits automatically. Until the merge conflict is resolved, the SCM will usually not allow the code to be merged. Usually, merge conflicts happen if the changes are inconsistent when merging changes from two branches [115].
- Dead code: Dead code is a block of code never reached by the execution flow [116]. Dead code can be introduced at any step in the programming as part of a code merge. For instance, consider two feature branches: Feature A and Feature B. Feature A’s developers might have considered some exceptions from Feature B and created code blocks to handle that. However, if this exception never happens or some logic in the Feature B branch changes, this exception block will never be executed [117,118].
- Code overwrites: As the software evolves, there is a high possibility that the old code needs to be updated to meet the ever-changing requirements. Nevertheless, this might also affect the old features, resulting in code breaks after merging.
- Unit tests are fast and cost less in terms of code execution time as they check a smaller block of code [121].
- UI tests are slower and more complex to run, more complex to set up, and might also have high costs in terms of execution time and resource usage. Furthermore, a mobile development environment with multiple emulators and environments might add more complexity. Hence, UI tests should be selected more carefully and run less frequently than the unit tests [103,122].
- Running these tests automatically for every code commit is preferred, but doing this on a development or feature branch might be costlier than manual testing [123].
- Pushing of local changes to the SCM should be performed early and often.
- Changes should be pulled from the SCM before pushing. This frequent code pulling will reveal any merge conflicts early.
Continuous Delivery and Continuous Deployment
Continuous Monitoring
3.2. MLOps
3.2.1. MLOps Workflow and Components
Data
- Data extraction;
- Data validation;
- Data analysis;
- Data preparation.
- Incomplete data; for instance, the presence of null values.
- Inconsistent data, such as issues with the data type.
- Inaccurate data; for example, data collection with the wrong measurements.
Model
Testing
Deployment
Monitoring
3.2.2. MLOps Pipeline
- Continuous Integration (CI);
- Continuous Deployment (CD);
- Continuous Training (CT).
Continuous Integration
Continuous Deployment
Continuous Training
3.2.3. Feature Store
- Store commonly used features;
- Build feature sets from the available raw data;
- Reuse custom feature sets;
- Model monitoring and data drift detection;
- Transform and store the data for training or inference purposes.
3.2.4. Metadata Management
- Experiments and training metadata—Metadata such as environment configuration, hardware metrics, code versions, and hyperparameters.
- Artifact metadata—Metadata such as dataset paths, model hashes, dataset previews, and artifact descriptions.
- Model metadata—Model-related metadata such as model versions, data and performance drifts, and hardware usage.
- Pipeline metadata—Pipeline metadata such as node information and completion reports of each pipeline.
- MLOps level 0: Manual process;
- MLOps level 1: ML pipeline automation;
- MLOps level 2: CI/CD pipeline automation.
3.3. Research Gap
- Even though the core ML is a tiny part of the whole software ecosystem, the ML application needs various new tools for the MLOps implementation.
- MLOps tools might not be compatible with the DevOps tools, burdening the complete system.
- Creating an MLOps pipeline with traditional software—such as a web application where DevOps is already implemented—is an issue.
- Additionally, to explain the generalization of the created MLOps pipeline and the tools, Case Study 1 is extended to two more case studies. In the last two case studies, the price forecast solution (Case Study 1) is adapted with minimal work.
4. Case Study 1: Forecasting an Hourly Day-Ahead Electricity Market Using an MLOps Pipeline
- Does the price change weekly, daily, hourly, or at some other interval?
- When does the market participation occur and, thus, how far into the future should forecasts be available?
- The market interval is one hour; in other words, there is a separate price for each hour.
- The market participants need to place their bids on the previous day; for example, before the market deadline today, separate bids should be placed for each hour of the next day.
4.1. The Frequency Containment Reserves Market
4.2. Prediction Model
- Gating mechanisms skip any unused components of the model.
- Variable selection networks choose relevant input variables at each time step.
- Static features can have a meaningful impact on forecasts, and static covariate encoders integrate such features based on which temporal dynamics are modeled.
- A sequence-to-sequence temporal processing layer to learn long-term and short-term temporal relationships.
4.3. MLOps Pipeline for FCR-N Market Price Forecasting
4.4. MLOps Runtime Environment
- Data ingestion;
- Data preparation;
- EDA;
- Model building;
- Deployment and monitoring pipelines with a few sub-pipelines.
4.5. FCR-N Forecasting Results
5. Case Study 2: National Electricity Consumption Forecast Adapted from the Price Forecast MLOps Pipeline
- In the TFT, the FCR_N price variable was replaced with electricity_consumption as the prediction variable.
- In the GIT, a new feature branch was created.
- A new experiment name was created for tracking the ML model parameters using MLflow.
- A new Jenkins project as created, and MLOps pipelines were incorporated using the same Jenkinsfile.
- Unit test cases are updated.
- To explore the predicted values via web UI, as shown in Figure 14, the corresponding legend and variable names were changed.
6. Case Study 3: National Electricity Generation Forecast Adapted from the Price Forecast MLOps Pipeline
- In the TFT, the electricity_consumption variable was replaced with electricity_production as the prediction variable.
- In the GIT, a new feature branch was created.
- A new experiment name was created for tracking the ML model parameters using MLflow. Creating a new experiment name is helpful in grouping the new experiments within a project or use case.
- A new Jenkins project was created, and MLOps pipelines were incorporated using the Jenkinsfile used for the above use case.
- Unit test cases were updated.
- To explore the predicted values via web UI, as shown in Figure 14, corresponding legend and variable names were changed.
7. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Pang, C.; Hindle, A.; Barbosa, D. Understanding DevOps education with Grounded theory. In Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Companion Proceedings, Seul, Korea, 5–11 October 2020; ACM: New York, NY, USA, 2020; pp. 260–261. [Google Scholar]
- Macarthy, R.W.; Bass, J.M. An Empirical Taxonomy of DevOps in Practice. In Proceedings of the 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Portorož, Slovenia, 26–28 August 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 221–228. [Google Scholar]
- Wahaballa, A.; Wahballa, O.; Abdellatief, M.; Xiong, H.; Qin, Z. Toward unified DevOps model. In Proceedings of the 2015 6th IEEE International Conference on Software Engineering and Service Science (ICSESS), Beijing, China, 23–25 September 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 211–214. [Google Scholar]
- Sculley, D.; Holt, G.; Golovin, D.; Davydov, E.; Phillips, T.; Ebner, D.; Chaudhary, V.; Young, M.; Crespo, J.F.; Dennison, D. Hidden technical debt in machine learning systems. In Proceedings of the Advances in Neural Information Processing Systems, Montreal, QC, Canada, 7–12 December 2015. [Google Scholar]
- Fitzgerald, B.; Stol, K.-J. Continuous software engineering: A roadmap and agenda. J. Syst. Softw. 2017, 123, 176–189. [Google Scholar] [CrossRef]
- Haindl, P.; Plosch, R. Towards Continuous Quality: Measuring and Evaluating Feature-Dependent Non-Functional Requirements in DevOps. In Proceedings of the 2019 IEEE International Conference on Software Architecture Companion (ICSA-C), Hamburg, Germany, 25–29 March 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 91–94. [Google Scholar]
- Steffens, A.; Lichter, H.; Döring, J.S. Designing a next-generation continuous software delivery system. In Proceedings of the 4th International Workshop on Rapid Continuous Software Engineering, Gothenburg, Sweden, 29 May 2018; ACM: New York, NY, USA, 2018; pp. 1–7. [Google Scholar]
- Liu, Y.; Ling, Z.; Huo, B.; Wang, B.; Chen, T.; Mouine, E. Building A Platform for Machine Learning Operations from Open Source Frameworks. IFAC-PapersOnLine 2020, 53, 704–709. [Google Scholar] [CrossRef]
- Makinen, S.; Skogstrom, H.; Laaksonen, E.; Mikkonen, T. Who needs MLOps: What data scientists seek to accomplish and how can MLOps help? In Proceedings of the 2021 IEEE/ACM 1st Workshop on AI Engineering—Software Engineering for AI, WAIN, Madrid, Spain, 30–31 May 2021. [Google Scholar]
- Khan, M.A.; Parveen, A.; Sadiq, M. A method for the selection of software development life cycle models using analytic hierarchy process. In Proceedings of the 2014 International Conference on Issues and Challenges in Intelligent Computing Techniques (ICICT), Ghaziabad, India, 7–8 February 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 534–540. [Google Scholar]
- Ben-Zahia, M.A.; Jaluta, I. Criteria for selecting software development models. In Proceedings of the 2014 Global Summit on Computer & Information Technology (GSCIT), Sousse, Tunisia, 14-16 June 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 1–6. [Google Scholar]
- Öztürk, V. Selection of appropriate software development life cycle using fuzzy logic. J. Intell. Fuzzy Syst. 2013, 25, 797–810. [Google Scholar] [CrossRef]
- Lekh, R. Pooja Exhaustive study of SDLC phases and their best praxctices to create CDP model for process improvement. In Proceedings of the 2015 International Conference on Advances in Computer Engineering and Applications, Ghaziabad, India, 19–20 March 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 997–1003. [Google Scholar]
- Dayal Chauhan, B.; Rana, A.; Sharma, N.K. Impact of development methodology on cost & risk for development projects. In Proceedings of the 2017 6th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO), Noida, India, 20–22 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 267–272. [Google Scholar]
- Akbar, M.A.; Sang, J.; Khan, A.A.; Shafiq, M.; Hussain, S.; Hu, H.; Elahi, M.; Xiang, H. Improving the Quality of Software Development Process by Introducing a New Methodology–AZ-Model. IEEE Access 2018, 6, 4811–4823. [Google Scholar] [CrossRef]
- Akbar, M.A.; Sang, J.; Khan, A.A.; Amin, F.-E.; Hussain, S.; Sohail, M.K.; Xiang, H.; Cai, B. Statistical Analysis of the Effects of Heavyweight and Lightweight Methodologies on the Six-Pointed Star Model. IEEE Access 2018, 6, 8066–8079. [Google Scholar] [CrossRef]
- Cho, J. A Hybrid Software Development Method For Large-Scale Projects: Rational Unified Process With Scrum. Issues Inf. Syst. 2009, 10, 340–348. [Google Scholar] [CrossRef]
- Velmourougan, S.; Dhavachelvan, P.; Baskaran, R.; Ravikumar, B. Software development Life cycle model to build software applications with usability. In Proceedings of the 2014 International Conference on Advances in Computing, Communications and Informatics (ICACCI), Delhi, India, 24–27 September 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 271–276. [Google Scholar]
- Fisher, K.G.; Bankston, A. From Cradle to Sprint: Creating a Full-Lifecycle Request Pipeline at Nationwide Insurance. In Proceedings of the 2009 Agile Conference, Chicago, IL, USA, 24–28 August 2009; IEEE: Piscataway, NJ, USA, 2009; pp. 223–228. [Google Scholar]
- Poort, E.R. Driving Agile Architecting with Cost and Risk. IEEE Softw. 2014, 31, 20–23. [Google Scholar] [CrossRef]
- Owais, M.; Ramakishore, R. Effort, duration and cost estimation in agile software development. In Proceedings of the 2016 Ninth International Conference on Contemporary Computing (IC3), Noida, India, 11–13 August 2016; IEEE: Piscataway, NJ, USA, 2016; pp. 1–5. [Google Scholar]
- Webster, C.; Shi, N.; Smith, I.S. Delivering software into NASA’s Mission Control Center using agile development techniques. In Proceedings of the 2012 IEEE Aerospace Conference, Big Sky, MT, USA, 3–10 March 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 1–7. [Google Scholar]
- Cleland-Huang, J. Safety Stories in Agile Development. IEEE Softw. 2017, 34, 16–19. [Google Scholar] [CrossRef]
- Alyahya, S.; Bin-Hezam, R.; Maddeh, M. Supporting Remote Customer Involvement in Distributed Agile Development: A Coordination Approach. IEEE Trans. Eng. Manag. 2022, 1–14. [Google Scholar] [CrossRef]
- Kumar, G.; Bhatia, P.K. Comparative Analysis of Software Engineering Models from Traditional to Modern Methodologies. In Proceedings of the 2014 Fourth International Conference on Advanced Computing & Communication Technologies, Rohtak, India, 8–9 February 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 189–196. [Google Scholar]
- Sinha, A.; Das, P. Agile Methodology Vs. Traditional Waterfall SDLC: A case study on Quality Assurance process in Software Industry. In Proceedings of the 2021 5th International Conference on Electronics, Materials Engineering & Nano-Technology (IEMENTech), Kolkata, India, 4–5 May 2018; IEEE: Piscataway, NJ, USA, 2021; pp. 1–4. [Google Scholar]
- Ahmed, A.; Ahmad, S.; Ehsan, N.; Mirza, E.; Sarwar, S.Z. Agile software development: Impact on productivity and quality. In Proceedings of the 2010 IEEE International Conference on Management of Innovation & Technology, Singapore, 2–5 June 2010; IEEE: Piscataway, NJ, USA, 2010; pp. 287–291. [Google Scholar]
- Tommy, R.; Mhaisekar, M.; Kallepally, S.; Varghese, L.; Ahmed, S.; Somaraju, M.D. Dynamic quality control in agile methodology for improving the quality. In Proceedings of the 2015 IEEE International Conference on Computer Graphics, Vision and Information Security (CGVIS), Bhubaneshwar, India, 2–3 November 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 233–236. [Google Scholar]
- Darrin, M.A.G.; Devereux, W.S. The Agile Manifesto, design thinking and systems engineering. In Proceedings of the 2017 Annual IEEE International Systems Conference (SysCon), Montreal, QC, Canada, 24–27 April 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–5. [Google Scholar]
- Boehm, B. Get ready for agile methods, with care. Computer 2002, 35, 64–69. [Google Scholar] [CrossRef] [Green Version]
- Dybå, T.; Dingsøyr, T. Empirical studies of agile software development: A systematic review. Inf. Softw. Technol. 2008, 50, 833–859. [Google Scholar] [CrossRef]
- Samarawickrama, S.S.; Perera, I. Continuous scrum: A framework to enhance scrum with DevOps. In Proceedings of the 2017 Seventeenth International Conference on Advances in ICT for Emerging Regions (ICTer), Colombo, Sri Lanka, 6–9 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–7. [Google Scholar]
- Miller, A. A hundred days of continuous integration. In Proceedings of the Agile 2008 Conference, Toronto, ON, Canada, 4–8 August 2008; Microsoft Corporation: Albuquerque, NM, USA, 2008; pp. 289–293. [Google Scholar]
- Arachchi, S.A.I.B.S.; Perera, I. Continuous Integration and Continuous Delivery Pipeline Automation for Agile Software Project Management. In Proceedings of the 2018 Moratuwa Engineering Research Conference (MERCon), Moratuwa, Sri Lanka, 28–30 July 2020; IEEE: Piscataway, NJ, USA, 2018; pp. 156–161. [Google Scholar]
- Süß, J.G.; Swift, S.; Escott, E. Using DevOps toolchains in Agile model-driven engineering. Softw. Syst. Model. 2022, 1–16. [Google Scholar] [CrossRef]
- Nagarajan, A.D.; Overbeek, S.J. A DevOps Implementation Framework for Large Agile-Based Financial Organizations. In OTM Confederated International Conferences On the Move to Meaningful Internet Systems; Springer International Publishing: Cham, Switzerland, 2018; pp. 172–188. [Google Scholar]
- Hemon, A.; Lyonnet, B.; Rowe, F.; Fitzgerald, B. From Agile to DevOps: Smart Skills and Collaborations. Inf. Syst. Front. 2020, 22, 927–945. [Google Scholar] [CrossRef]
- Marrero, L.; Astudillo, H. DevOps-RAF: An assessment framework to measure DevOps readiness in software organizations. In Proceedings of the 2021 40th International Conference of the Chilean Computer Science Society (SCCC), La Serena, Chile, 15–19 November 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 1–8. [Google Scholar]
- Pan, W.; Wei, H. Research on Key Performance Indicator (KPI) of Business Process. In Proceedings of the 2012 Second International Conference on Business Computing and Global Informatization, Shanghai, China, 12–14 October 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 151–154. [Google Scholar]
- Durga Prasad, N.V.P.R.; Radhakrishna, C. New Key Performance Indicators (KPI) For Substation Maintenance Performance. In Proceedings of the 2019 International Conference on Computing, Power and Communication Technologies (GUCON), New Delhi, India, 27–28 September 2019; IEEE: Piscataway, NJ, USA, 2019. ISBN 9789353510985. [Google Scholar]
- Zhu, H.; Bayley, I. If Docker is the Answer, What is the Question? In Proceedings of the 2018 IEEE Symposium on Service-Oriented System Engineering (SOSE), Bamberg, Germany, 26–29 March 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 152–163. [Google Scholar]
- Weyuker, E.J.; Avritzer, A. A metric to predict software scalability. In Proceedings of the Eighth IEEE Symposium on Software Metrics, Ottawa, ON, Canada, 4–7 June 2002; IEEE Computer Society: Washington, DC, USA; pp. 152–158. [Google Scholar]
- Dearle, A. Software Deployment, Past, Present and Future. In Proceedings of the Future of Software Engineering (FOSE ’07), Minneapolis, MN, USA, 23–25 May 2007; IEEE: Piscataway, NJ, USA, 2007; pp. 269–284. [Google Scholar]
- Shahin, M.; Babar, M.A.; Zahedi, M.; Zhu, L. Beyond Continuous Delivery: An Empirical Investigation of Continuous Deployment Challenges. In Proceedings of the 2017 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), Oulu, Finland, 11–12 October 2018; IEEE: Piscataway, NJ, USA, 2017; pp. 111–120. [Google Scholar]
- Unger-Windeler, C.; Klunder, J.; Schneider, K. A Mapping Study on Product Owners in Industry: Identifying Future Research Directions. In Proceedings of the 2019 IEEE/ACM International Conference on Software and System Processes (ICSSP), Montreal, QC, Canada, 25 May 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 135–144. [Google Scholar]
- Tsunoda, M.; Matsumura, T.; Matsumoto, K. Modeling Software Project Monitoring with Stakeholders. In Proceedings of the 2010 IEEE/ACIS 9th International Conference on Computer and Information Science, Kaminoyama, Japan, 18–20 August 2010; IEEE: Piscataway, NJ, USA, 2010; pp. 723–728. [Google Scholar]
- Riungu-Kalliosaari, L.; Mäkinen, S.; Lwakatare, L.E.; Tiihonen, J.; Männistö, T. DevOps adoption benefits and challenges in practice: A case study. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Cham, Switzerland, 2016; Volume 10027 LNCS. [Google Scholar]
- Iden, J.; Tessem, B.; Päivärinta, T. Problems in the interplay of development and IT operations in system development projects: A Delphi study of Norwegian IT experts. Inf. Softw. Technol. 2011, 53, 394–406. [Google Scholar] [CrossRef]
- Tessem, B.; Iden, J. Cooperation between developers and operations in software engineering projects. In Proceedings of the 2008 International Workshop on Cooperative and Human Aspects of Software Engineering, Leipzig, Germany, 13 May 2008; ACM: New York, NY, USA, 2008; pp. 105–108. [Google Scholar]
- Woods, E. Aligning Architecture Work with Agile Teams. IEEE Softw. 2015, 32, 24–26. [Google Scholar] [CrossRef]
- Govil, N.; Saurakhia, M.; Agnihotri, P.; Shukla, S.; Agarwal, S. Analyzing the Behaviour of Applying Agile Methodologies & DevOps Culture in e-Commerce Web Application. In Proceedings of the 2020 4th International Conference on Trends in Electronics and Informatics (ICOEI) (48184), Tirunelveli, India, 15–17 June 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 899–902. [Google Scholar]
- Khmelevsky, Y.; Li, X.; Madnick, S. Software development using agile and scrum in distributed teams. In Proceedings of the 2017 Annual IEEE International Systems Conference (SysCon), Montreal, QC, Canada, 24–27 April 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–4. [Google Scholar]
- Ebert, C.; Gallardo, G.; Hernantes, J.; Serrano, N. DevOps. IEEE Softw. 2016, 33, 94–100. [Google Scholar] [CrossRef]
- Agrawal, P.; Rawat, N. Devops, A New Approach To Cloud Development & Testing. In Proceedings of the 2019 International Conference on Issues and Challenges in Intelligent Computing Techniques (ICICT), Ghaziabad, India, 27–28 September 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–4. [Google Scholar]
- Choudhary, B.; Rakesh, S.K. An approach using agile method for software development. In Proceedings of the 2016 International Conference on Innovation and Challenges in Cyber Security (ICICCS-INBUSH), Greater Noida, India, 3–5 February 2016; IEEE: Piscataway, NJ, USA, 2016; pp. 155–158. [Google Scholar]
- Dyba, T.; Dingsoyr, T. What Do We Know about Agile Software Development? IEEE Softw. 2009, 26, 6–9. [Google Scholar] [CrossRef]
- Jabbari, R.; Bin Ali, N.; Petersen, K.; Tanveer, B. What is DevOps? In Proceedings of the Scientific Workshop Proceedings of XP2016, Edinburgh, UK, 24 May 2016; ACM: New York, NY, USA, 2016; pp. 1–11. [Google Scholar]
- Gokarna, M.; Singh, R. DevOps: A Historical Review and Future Works. In Proceedings of the 2021 International Conference on Computing, Communication, and Intelligent Systems (ICCCIS), Greater Noida, India, 19–20 February 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 366–371. [Google Scholar]
- Sharma, S.; Kumar, D.; Fayad, M.E. An Impact Assessment of Agile Ceremonies on Sprint Velocity Under Agile Software Development. In Proceedings of the 2021 9th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO), Noida, India, 4–5 June 2020; IEEE: Piscataway, NJ, USA, 2021; pp. 1–5. [Google Scholar]
- Srivastava, A.; Bhardwaj, S.; Saraswat, S. SCRUM model for agile methodology. In Proceedings of the 2017 International Conference on Computing, Communication and Automation (ICCCA), Greater Noida, India, 5–6 May 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 864–869. [Google Scholar]
- Paasivaara, M.; Durasiewicz, S.; Lassenius, C. Distributed Agile Development: Using Scrum in a Large Project. In Proceedings of the 2008 IEEE International Conference on Global Software Engineering, Bangalore, India, 17–20 August 2008; IEEE: Piscataway, NJ, USA, 2008; pp. 87–95. [Google Scholar]
- John, M.M.; Olsson, H.H.; Bosch, J. Towards MLOps: A Framework and Maturity Model. In Proceedings of the 2021 47th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Palermo, Italy, 1–3 September 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 334–341. [Google Scholar] [CrossRef]
- Kang, H.; Le, M.; Tao, S. Container and microservice driven design for cloud infrastructure DevOps. In Proceedings of the 2016 IEEE International Conference on Cloud Engineering, IC2E 2016: Co-located with the 1st IEEE International Conference on Internet-of-Things Design and Implementation, Berlin, Germany, 4–8 April 2016. [Google Scholar]
- Kubeflow–ML Toolkit. Available online: https://www.kubeflow.org/ (accessed on 26 August 2022).
- Zhou, Y.; Yu, Y.; Ding, B. Towards MLOps: A Case Study of ML Pipeline Platform. In Proceedings of the 2020 International Conference on Artificial Intelligence and Computer Engineering (ICAICE), Beijing, China, 23–25 October 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 494–500. [Google Scholar]
- Karamitsos, I.; Albarhami, S.; Apostolopoulos, C. Applying DevOps Practices of Continuous Automation for Machine Learning. Information 2020, 11, 363. [Google Scholar] [CrossRef]
- Banerjee, A.; Chen, C.C.; Hung, C.C.; Huang, X.; Wang, Y.; Chevesaran, R. Challenges and experiences with MLOps for performance diagnostics in hybrid-cloud enterprise software deployments. In Proceedings of the OpML 2020—2020 USENIX Conference on Operational Machine Learning, Online, 28 July–7 August 2020. [Google Scholar]
- Tamburri, D.A. Sustainable MLOps: Trends and Challenges. In Proceedings of the 22nd International Symposium on Symbolic and Numeric Algorithms for Scientific Computing, SYNASC, Timisoara, Romania, 1–4 September 2020. [Google Scholar]
- Raj, E.; Buffoni, D.; Westerlund, M.; Ahola, K. Edge MLOps: An Automation Framework for AIoT Applications. In Proceedings of the 2021 IEEE International Conference on Cloud Engineering (IC2E), San Francisco, CA, USA, 4–8 October 2021; pp. 191–200. [Google Scholar] [CrossRef]
- Granlund, T.; Kopponen, A.; Stirbu, V.; Myllyaho, L.; Mikkonen, T. MLOps challenges in multi-organization setup: Experiences from two real-world cases. In Proceedings of the 2021 IEEE/ACM 1st Workshop on AI Engineering—Software Engineering for AI, WAIN 2021, Madrid, Spain, 22–30 May 2021. [Google Scholar]
- Azure MLOps. Available online: https://azure.microsoft.com/en-us/services/machine-learning/mlops/ (accessed on 26 August 2022).
- AWS MLOps—Sagemaker. Available online: https://aws.amazon.com/sagemaker/mlops/ (accessed on 26 August 2022).
- Practitioners Guide to MLOps—Google Cloud. Available online: https://services.google.com/fh/files/misc/practitioners_guide_to_mlops_whitepaper.pdf (accessed on 26 August 2022).
- Dyck, A.; Penners, R.; Lichter, H. Towards Definitions for Release Engineering and DevOps. In Proceedings of the 2015 IEEE/ACM 3rd International Workshop on Release Engineering, Florence, Italy, 19 May 2015; IEEE: Piscataway, NJ, USA, 2015; p. 3. [Google Scholar]
- What is Devops. Available online: https://www.atlassian.com/devops (accessed on 26 August 2022).
- Cois, C.A.; Yankel, J.; Connell, A. Modern DevOps: Optimizing software development through effective system interactions. In Proceedings of the 2014 IEEE International Professional Communication Conference (IPCC), Pittsburgh, PA, USA, 13–15 October 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 1–7. [Google Scholar]
- Virmani, M. Understanding DevOps & bridging the gap from continuous integration to continuous delivery. In Proceedings of the Fifth International Conference on the Innovative Computing Technology (INTECH 2015), Galicia, Spain, 20–22 May 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 78–82. [Google Scholar]
- Kerzazi, N.; Adams MCIS, B.; Montreal, P. Who Needs Release and DevOps Engineers, and Why? In Proceedings of the International Workshop on Continuous Software Evolution and Delivery, Austin, TX, USA, 14–15 May 2016. [Google Scholar] [CrossRef]
- Bankar, S.; Shah, D. Blockchain based framework for Software Development using DevOps. In Proceedings of the 2021 4th Biennial International Conference on Nascent Technologies in Engineering (ICNTE), Navi Mumbai, India, 15–16 January 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 1–6. [Google Scholar]
- Soni, M. End to End Automation on Cloud with Build Pipeline: The Case for DevOps in Insurance Industry, Continuous Integration, Continuous Testing, and Continuous Delivery. In Proceedings of the 2015 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM), Bangalore, India, 25–27 November 2015; IEEE: Piscataway, NJ, USA, 2015; pp. 85–89. [Google Scholar]
- Alnafessah, A.; Gias, A.U.; Wang, R.; Zhu, L.; Casale, G.; Filieri, A. Quality-Aware DevOps Research: Where Do We Stand? IEEE Access 2021, 9, 44476–44489. [Google Scholar] [CrossRef]
- Dalpiaz, F.; Brinkkemper, S. Agile Requirements Engineering with User Stories. In Proceedings of the 2018 IEEE 26th International Requirements Engineering Conference (RE), Banff, AL, Canada, 20–24 August 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 506–507. [Google Scholar]
- Sarkan, H.M.; Ahmad, T.P.S.; Bakar, A.A. Using JIRA and Redmine in requirement development for agile methodology. In Proceedings of the 2011 Malaysian Conference in Software Engineering, Kuantan, Malaysia, 27–29 June 2011; IEEE: Piscataway, NJ, USA, 2011; pp. 408–413. [Google Scholar]
- Perera, P.; Silva, R.; Perera, I. Improve software quality through practicing DevOps. In Proceedings of the 2017 Seventeenth International Conference on Advances in ICT for Emerging Regions (ICTer), Colombo, Sri Lanka, 6–9 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–6. [Google Scholar]
- Majumdar, R.; Jain, R.; Barthwal, S.; Choudhary, C. Source code management using version control system. In Proceedings of the 2017 6th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO), Noida, India, 20–22 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 278–281. [Google Scholar]
- Ren, Y.; Xing, T.; Quan, Q.; Zhao, Y. Software Configuration Management of Version Control Study Based on Baseline. In Proceedings of the 2010 3rd International Conference on Information Management, Innovation Management and Industrial Engineering, Kunming, China, 26–28 November 2010; IEEE: Piscataway, NJ, USA, 2010; pp. 118–121. [Google Scholar]
- Shah, J.; Dubaria, D.; Widhalm, J. A Survey of DevOps tools for Networking. In Proceedings of the 2018 9th IEEE Annual Ubiquitous Computing, Electronics & Mobile Communication Conference (UEMCON), New York, NY, USA, 8–10 November 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 185–188. [Google Scholar]
- Spinellis, D. Git. IEEE Softw. 2012, 29, 100–101. [Google Scholar] [CrossRef]
- Hinsen, K.; Läufer, K.; Thiruvathukal, G.K. Essential Tools: Version Control Systems. Comput. Sci. Eng. 2009, 11, 84–91. [Google Scholar] [CrossRef]
- Paez, N. Versioning Strategy for DevOps Implementations. In Proceedings of the 2018 Congreso Argentino de Ciencias de la Informática y Desarrollos de Investigación (CACIDI), Buenos Aires, Argentina, 28–30 November 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 1–6. [Google Scholar]
- Palihawadana, S.; Wijeweera, C.H.; Sanjitha, M.G.T.N.; Liyanage, V.K.; Perera, I.; Meedeniya, D.A. Tool support for traceability management of software artefacts with DevOps practices. In Proceedings of the 2017 Moratuwa Engineering Research Conference (MERCon), Moratuwa, Sri Lanka, 29–31 May 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 129–134. [Google Scholar]
- Git branching Model. Available online: https://nvie.com/posts/a-successful-git-branching-model/ (accessed on 26 August 2022).
- Chang, C.-Y.; Ou, P.-P.; Deng, D.-J. Cross-Site Large-Scale Software Delivery with Enhanced Git Branch Model. In Proceedings of the 2019 IEEE 10th International Conference on Software Engineering and Service Science (ICSESS), Beijing, China, 18–20 October 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 153–156. [Google Scholar]
- Louridas, P. Version control. IEEE Softw. 2006, 23, 104–107. [Google Scholar] [CrossRef]
- Branching vs Trunk Based Development. Available online: https://launchdarkly.com/blog/git-branching-strategies-vs-trunk-based-development/ (accessed on 26 August 2022).
- Spinellis, D. Package Management Systems. IEEE Softw. 2012, 29, 84–86. [Google Scholar] [CrossRef]
- Sadowski, C.; Aftandilian, E.; Eagle, A.; Miller-Cushon, L.; Jaspan, C. Lessons from building static analysis tools at Google. Commun. ACM 2018, 61, 58–66. [Google Scholar] [CrossRef]
- Jebbar, O.; Saied, M.A.; Khendek, F.; Toeroe, M. Poster: Re-Testing Configured Instances in the Production Environment—A Method for Reducing the Test Suite. In Proceedings of the 2019 12th IEEE Conference on Software Testing, Validation and Verification (ICST), Xi’an, China, 22–27 April 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 367–370. [Google Scholar]
- Chen, W.; Ye, K.; Wang, Y.; Xu, G.; Xu, C.-Z. How Does the Workload Look Like in Production Cloud? Analysis and Clustering of Workloads on Alibaba Cluster Trace. In Proceedings of the 2018 IEEE 24th International Conference on Parallel and Distributed Systems (ICPADS), Singapore, 11–13 December 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 102–109. [Google Scholar]
- Neitsch, A.; Wong, K.; Godfrey, M.W. Build system issues in multilanguage software. In Proceedings of the 2012 28th IEEE International Conference on Software Maintenance (ICSM), Trento, Italy, 23–28 September 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 140–149. [Google Scholar]
- Leite, L.; Rocha, C.; Kon, F.; Milojicic, D.; Meirelles, P. A Survey of DevOps Concepts and Challenges. ACM Comput. Surv. 2020, 52, 1–35. [Google Scholar] [CrossRef]
- Pietrantuono, R.; Bertolino, A.; De Angelis, G.; Miranda, B.; Russo, S. Towards Continuous Software Reliability Testing in DevOps. In Proceedings of the 2019 IEEE/ACM 14th International Workshop on Automation of Software Test (AST), Montreal, QC, Canada, 27 May 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 21–27. [Google Scholar]
- Hellmann, T.D.; Hosseini-Khayat, A.; Maurer, F. Supporting Test-Driven Development of Graphical User Interfaces Using Agile Interaction Design. In Proceedings of the 2010 Third International Conference on Software Testing, Verification, and Validation Workshops, Paris, France, 7–9 April 2010; IEEE: Piscataway, NJ, USA, 2010; pp. 444–447. [Google Scholar]
- Gohil, K.; Alapati, N.; Joglekar, S. Towards behavior driven operations (BDOps). In Proceedings of the 3rd International Conference on Advances in Recent Technologies in Communication and Computing (ARTCom 2011), Bangalore, India, 14–15 September 2011; IET: London, UK, 2011; pp. 262–264. [Google Scholar]
- Chen, B.; Song, J.; Xu, P.; Hu, X.; Jiang, Z.M. An automated approach to estimating code coverage measures via execution logs. In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, Montpellier, France, 3–7 September 2018; ACM: New York, NY, USA, 2018; pp. 305–316. [Google Scholar]
- Azure DevOps Code Coverage. Available online: https://docs.microsoft.com/fi-fi/azure/devops/pipelines/test/review-code-coverage-results?view=azure-devops (accessed on 26 August 2022).
- Callanan, M.; Spillane, A. DevOps: Making It Easy to Do the Right Thing. IEEE Softw. 2016, 33, 53–59. [Google Scholar] [CrossRef]
- Humble, J.; Read, C.; North, D. The Deployment Production Line. In Proceedings of the AGILE 2006 (AGILE’06), Minneapolis, MN, USA, 23–28 July 2006; IEEE: Piscataway, NJ, USA; pp. 113–118. [Google Scholar]
- Lin, C.-C.; Wu, J.-J.; Lin, J.-A.; Song, L.-C.; Liu, P. Automatic Resource Scaling Based on Application Service Requirements. In Proceedings of the 2012 IEEE Fifth International Conference on Cloud Computing, Honolulu, HI, USA, 24–29 June 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 941–942. [Google Scholar]
- Netto, M.A.S.; Cardonha, C.; Cunha, R.L.F.; Assuncao, M.D. Evaluating Auto-scaling Strategies for Cloud Computing Environments. In Proceedings of the 2014 IEEE 22nd International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems, Paris, France, 9–12 September 2014; IEEE: Piscataway, NJ, USA, 2014; pp. 187–196. [Google Scholar]
- Anand, M. Cloud Monitor: Monitoring Applications in Cloud. In Proceedings of the 2012 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM), Bangalore, India, 11–12 October 2012; IEEE: Piscataway, NJ, USA, 2012; pp. 1–4. [Google Scholar]
- Düllmann, T.F.; Paule, C.; van Hoorn, A. Exploiting DevOps Practices for Dependable and Secure Continuous Delivery Pipelines. In Proceedings of the 2018 IEEE/ACM 4th International Workshop on Rapid Continuous Software Engineering (RCoSE), Gothenburg, Sweden, 29 May 2018. [Google Scholar] [CrossRef]
- Meyer, M. Continuous Integration and Its Tools. IEEE Softw. 2014, 31, 14–16. [Google Scholar] [CrossRef]
- Vassallo, C.; Palomba, F.; Bacchelli, A.; Gall, H.C. Continuous code quality: Are we (really) doing that? In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, Montpellier, France, 3–7 September 2018; ACM: New York, NY, USA, 2018; pp. 790–795. [Google Scholar]
- Owhadi-Kareshk, M.; Nadi, S.; Rubin, J. Predicting Merge Conflicts in Collaborative Software Development. In Proceedings of the 2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), Recife, Brazil, 19–20 September 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–11. [Google Scholar]
- AlAbwaini, N.; Aldaaje, A.; Jaber, T.; Abdallah, M.; Tamimi, A. Using Program Slicing to Detect the Dead Code. In Proceedings of the 2018 8th International Conference on Computer Science and Information Technology (CSIT), Amman, Jordan, 11–12 July 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 230–233. [Google Scholar]
- Wang, X.; Zhang, Y.; Zhao, L.; Chen, X. Dead Code Detection Method Based on Program Slicing. In Proceedings of the 2017 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC), Nanjing, China, 12–14 October 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 155–158. [Google Scholar]
- Romano, S. Dead Code. In Proceedings of the 2018 IEEE International Conference on Software Maintenance and Evolution (ICSME), Madrid, Spain, 23–29 September 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 737–742. [Google Scholar]
- Abbass, M.K.A.; Osman, R.I.E.; Mohammed, A.M.H.; Alshaikh, M.W.A. Adopting Continuous Integeration and Continuous Delivery for Small Teams. In Proceedings of the 2019 International Conference on Computer, Control, Electrical, and Electronics Engineering (ICCCEEE), Khartoum, Sudan, 21–23 September 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–4. [Google Scholar]
- Agarwal, A.; Gupta, S.; Choudhury, T. Continuous and Integrated Software Development using DevOps. In Proceedings of the 2018 International Conference on Advances in Computing and Communication Engineering (ICACCE), Paris, France, 22–23 June 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 290–293. [Google Scholar]
- Runeson, P. A survey of unit testing practices. IEEE Softw. 2006, 23, 22–29. [Google Scholar] [CrossRef]
- Grechanik, M.; Xie, Q.; Fu, C. Maintaining and evolving GUI-directed test scripts. In Proceedings of the 2009 IEEE 31st International Conference on Software Engineering, Vancouver, BC, Canada, 16–24 May 2009; IEEE: Piscataway, NJ, USA, 2009; pp. 408–418. [Google Scholar]
- Misra, R.B. On determining the software testing cost to assure desired field reliability. In Proceedings of the IEEE INDICON 2004, First India Annual Conference, Kharagpur, India, 20–22 December 2004; IEEE: Piscataway, NJ, USA, 2004; pp. 517–520. [Google Scholar]
- Komargodski, I.; Naor, M.; Yogev, E. White-Box vs. Black-Box Complexity of Search Problems: Ramsey and Graph Property Testing. In Proceedings of the 2017 IEEE 58th Annual Symposium on Foundations of Computer Science (FOCS), Berkeley, CA, USA, 15–17 October 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 622–632. [Google Scholar]
- Horváth, F.; Bognár, S.; Gergely, T.; Rácz, R.; Beszédes, Á.; Marinković, V. Code Coverage Measurement Framework for Android Devices. Acta Cybern. 2014, 21, 439–458. [Google Scholar] [CrossRef]
- Adams, B.; McIntosh, S. Modern Release Engineering in a Nutshell—Why Researchers Should Care. In Proceedings of the 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER), Osaka, Japan, 14–18 March 2016; IEEE: Piscataway, NJ, USA, 2016; pp. 78–90. [Google Scholar]
- Shahin, M.; Ali Babar, M.; Zhu, L. Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices. IEEE Access 2017, 5, 3909–3943. [Google Scholar] [CrossRef]
- Build Artifact. Available online: https://www.jetbrains.com/help/teamcity/build-artifact.html (accessed on 26 August 2022).
- Storing Build Artifact. Available online: https://circleci.com/docs/2.0/artifacts/ (accessed on 26 August 2022).
- Rufino, J.; Alam, M.; Ferreira, J. Monitoring V2X applications using DevOps and docker. In Proceedings of the 2017 International Smart Cities Conference (ISC2), Wuxi, China, 14–17 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–5. [Google Scholar]
- Symeonidis, G.; Nerantzis, E.; Kazakis, A.; Papakostas, G.A. MLOps-Definitions, Tools and Challenges. In Proceedings of the 2022 IEEE 12th Annual Computing and Communication Workshop and Conference (CCWC), Las Vegas, NV, USA, 26–29 January 2022. [Google Scholar]
- Iterative Incremental Process. Available online: https://ml-ops.org/content/mlops-principles (accessed on 26 August 2022).
- CD4ML—Continuous Delivery for Machine Learning. Available online: https://martinfowler.com/articles/cd4ml.html (accessed on 14 December 2021).
- Studer, S.; Bui, T.B.; Drescher, C.; Hanuschkin, A.; Winkler, L.; Peters, S.; Mueller, K.-R. Towards CRISP-ML(Q): A Machine Learning Process Model with Quality Assurance Methodology. Mach. Learn. Knowl. Extr. 2021, 3, 392–413. [Google Scholar] [CrossRef]
- Santa, R.; Bretherton, P.; Ferrer, M.; Soosa, C.; Hyland, P. The role of cross-functional teams on the alignment between technology innovation effectiveness and operational effectiveness. Int. J. Technol. Manag. 2011, 55, 122–137. [Google Scholar] [CrossRef]
- Alahmari, S.S.; Goldgof, D.B.; Mouton, P.R.; Hall, L.O. Challenges for the Repeatability of Deep Learning Models. IEEE Access 2020, 8, 211860–211868. [Google Scholar] [CrossRef]
- Victor, K.F.; Michael, I.Z. Intelligent data analysis and machine learning: Are they really equivalent Concepts? In Proceedings of the 2017 Second Russia and Pacific Conference on Computer Technology and Applications (RPC), Vladivostok, Russia, 25–29 September 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 59–63. [Google Scholar]
- Hafen, R.; Critchlow, T. EDA and ML—A Perfect Pair for Large-Scale Data Analysis. In Proceedings of the 2013 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum, Cambridge, MA, USA, 20 May 2013; IEEE: Piscataway, NJ, USA, 2013; pp. 1894–1898. [Google Scholar]
- Guruvayur, S.R.; Suchithra, R. A detailed study on machine learning techniques for data mining. In Proceedings of the 2017 International Conference on Trends in Electronics and Informatics (ICEI), Tirunelveli, India, 11–12 May 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1187–1192. [Google Scholar]
- Schelter, S.; Lange, D.; Schmidt, P.; Celikel, M.; Biessmann, F.; Grafberger, A. Automating large-scale data quality verification. Proc. VLDB Endow. 2018, 11, 1781–1794. [Google Scholar] [CrossRef]
- Wang, L.; Han, M.; Li, X.; Zhang, N.; Cheng, H. Review of Classification Methods on Unbalanced Data Sets. IEEE Access 2021, 9, 64606–64628. [Google Scholar] [CrossRef]
- Lwakatare, L.E.; Range, E.; Crnkovic, I.; Bosch, J. On the Experiences of Adopting Automated Data Validation in an Industrial Machine Learning Project. In Proceedings of the 2021 IEEE/ACM 43rd International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP), Madrid, Spain, 25–28 May 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 248–257. [Google Scholar]
- Subramanya, R.; Yli-Ojanperä, M.; Sierla, S.; Hölttä, T.; Valtakari, J.; Vyatkin, V. A Virtual Power Plant Solution for Aggregating Photovoltaic Systems and Other Distributed Energy Resources for Northern European Primary Frequency Reserves. Energies 2021, 14, 1242. [Google Scholar] [CrossRef]
- Galhotra, S.; Khurana, U.; Hassanzadeh, O.; Srinivas, K.; Samulowitz, H.; Qi, M. Automated Feature Enhancement for Predictive Modeling using External Knowledge. In Proceedings of the 2019 International Conference on Data Mining Workshops (ICDMW), Beijing, China, 8–11 November 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1094–1097. [Google Scholar]
- Pham, M.; Knoblock, C.A.; Pujara, J. Learning Data Transformations with Minimal User Effort. In Proceedings of the 2019 International Conference on Big Data (Big Data), Los Angeles, CA, USA, 9–12 December 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 657–664. [Google Scholar]
- Marculescu, D.; Stamoulis, D.; Cai, E. Hardware-aware machine learning. In Proceedings of the International Conference on Computer-Aided Design, San Diego, CA, USA, 5–8 November 2018; ACM: New York, NY, USA, 2018; pp. 1–8. [Google Scholar]
- Gada, M.; Haria, Z.; Mankad, A.; Damania, K.; Sankhe, S. Automated Feature Engineering and Hyperparameter optimization for Machine Learning. In Proceedings of the 2021 7th International Conference on Advanced Computing and Communication Systems (ICACCS), Coimbatore, India, 19–20 March 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 981–986. [Google Scholar]
- Kahloot, K.M.; Ekler, P. Algorithmic Splitting: A Method for Dataset Preparation. IEEE Access 2021, 9, 125229–125237. [Google Scholar] [CrossRef]
- Medar, R.; Rajpurohit, V.S.; Rashmi, B. Impact of Training and Testing Data Splits on Accuracy of Time Series Forecasting in Machine Learning. In Proceedings of the 2017 International Conference on Computing, Communication, Control and Automation (ICCUBEA), Pune, India, 17–18 August 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–6. [Google Scholar]
- Li, S.; Hu, W.; Cao, D.; Dragičević, T.; Huang, Q.; Chen, Z.; Blaabjerg, F. Electric Vehicle Charging Management Based on Deep Reinforcement Learning. J. Mod. Power Syst. Clean Energy 2021, 10, 719–730. [Google Scholar] [CrossRef]
- Posoldova, A. Machine Learning Pipelines: From Research to Production. IEEE Potentials 2020, 39, 38–42. [Google Scholar] [CrossRef]
- Marijan, D.; Gotlieb, A.; Kumar Ahuja, M. Challenges of Testing Machine Learning Based Systems. In Proceedings of the 2019 International Conference On Artificial Intelligence Testing (AITest), Newark, CA, USA, 4–9 April 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 101–102. [Google Scholar]
- Gisselaire, L.; Cario, F.; Guerre-berthelot, Q.; Zigmann, B.; du Bousquet, L.; Nakamura, M. Toward Evaluation of Deployment Architecture of ML-Based Cyber-Physical Systems. In Proceedings of the 2019 34th IEEE/ACM International Conference on Automated Software Engineering Workshop (ASEW), San Diego, CA, USA, 11–15 November 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 90–93. [Google Scholar]
- Barque, M.; Martin, S.; Vianin, J.E.N.; Genoud, D.; Wannier, D. Improving wind power prediction with retraining machine learning algorithms. In Proceedings of the 2018 International Workshop on Big Data and Information Security (IWBIS), Jakarta, Indonesia, 12–13 May 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 43–48. [Google Scholar]
- Fields, T.; Hsieh, G.; Chenou, J. Mitigating Drift in Time Series Data with Noise Augmentation. In Proceedings of the 2019 International Conference on Computational Science and Computational Intelligence (CSCI), Las Vegas, NV, USA, 5–7 December 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 227–230. [Google Scholar]
- Bock, S.; Weis, M. A Proof of Local Convergence for the Adam Optimizer. In Proceedings of the 2019 International Joint Conference on Neural Networks (IJCNN), Budapest, Hungary, 14–19 July 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–8. [Google Scholar]
- Wang, K.; Gopaluni, R.B.; Chen, J.; Song, Z. Deep Learning of Complex Batch Process Data and Its Application on Quality Prediction. IEEE Trans. Ind. Inform. 2020, 16, 7233–7242. [Google Scholar] [CrossRef]
- Qian, C.; Yu, W.; Liu, X.; Griffith, D.; Golmie, N. Towards Online Continuous Reinforcement Learning on Industrial Internet of Things. In Proceedings of the 2021 SmartWorld, Ubiquitous Intelligence & Computing, Advanced & Trusted Computing, Scalable Computing & Communications, Internet of People and Smart City Innovation (SmartWorld/SCALCOM/UIC/ATC/IOP/SCI), Atlanta, GA, USA, 18–21 October 2021; IEEE: Piscataway, NJ, USA, 2021; pp. 280–287. [Google Scholar]
- Feature Store Comparision. Available online: https://mlops.community/learn/feature-store/ (accessed on 26 August 2022).
- Metadata Management MLOps. Available online: https://mlops.community/learn/metadata-storage-and-management/ (accessed on 26 August 2022).
- MLOps Pipelines in ML. Available online: https://cloud.google.com/architecture/mlops-continuous-delivery-and-automation-pipelines-in-machine-learning (accessed on 26 August 2022).
- de la Nieta, A.A.S.; Gibescu, M. Day-ahead Scheduling in a Local Electricity Market. In Proceedings of the 2019 International Conference on Smart Energy Systems and Technologies (SEST), Porto, Portugal, 9–11 September 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–6. [Google Scholar]
- Zhao, Q.; Shen, Y.; Li, M. Control and Bidding Strategy for Virtual Power Plants With Renewable Generation and Inelastic Demand in Electricity Markets. IEEE USA Trans. Sustain. Energy 2016, 7, 562–575. [Google Scholar] [CrossRef]
- Giovanelli, C.; Sierla, S.; Ichise, R.; Vyatkin, V. Exploiting artificial neural networks for the prediction of ancillary energy market prices. Energies 2018, 11, 1906. [Google Scholar] [CrossRef]
- Sierla, S.; Pourakbari-Kasmaei, M.; Vyatkin, V. A taxonomy of machine learning applications for virtual power plants and home/building energy management systems. Autom. Constr. 2022, 136, 104174. [Google Scholar] [CrossRef]
- Alanne, K.; Sierla, S. An overview of machine learning applications for smart buildings. Sustain. Cities Soc. 2022, 76, 103445. [Google Scholar] [CrossRef]
- Sierla, S.; Ihasalo, H.; Vyatkin, V. A Review of Reinforcement Learning Applications to Control of Heating, Ventilation and Air Conditioning Systems. Energies 2022, 15, 3526. [Google Scholar] [CrossRef]
- Subramanya, R.; Sierla, S.A.; Vyatkin, V. Exploiting Battery Storages With Reinforcement Learning: A Review for Energy Professionals. IEEE Access 2022, 10, 54484–54506. [Google Scholar] [CrossRef]
- Chouhan, B.S.; Rao, K.V.S.; Kumar Saxena, B. Reduction in carbon dioxide emissions due to wind power generation in India. In Proceedings of the 2017 International Conference On Smart Technologies For Smart Nation (SmartTechCon), Bengaluru, India, 17–19 August 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 257–264. [Google Scholar]
- Takano, H.; Zhang, P.; Murata, J.; Hashiguchi, T.; Goda, T.; Iizaka, T.; Nakanishi, Y. A Determination Method for the Optimal Operation of Controllable Generators in Micro Grids That Copes with Unstable Outputs of Renewable Energy Generation. Electr. Eng. Jpn. 2015, 190, 56–65. [Google Scholar] [CrossRef]
- Karhula, N.; Sierla, S.; Vyatkin, V. Validating the Real-Time Performance of Distributed Energy Resources Participating on Primary Frequency Reserves. Energies 2021, 14, 6914. [Google Scholar] [CrossRef]
- Aaltonen, H.; Sierla, S.; Subramanya, R.; Vyatkin, V. A Simulation Environment for Training a Reinforcement Learning Agent Trading a Battery Storage. Energies 2021, 14, 5587. [Google Scholar] [CrossRef]
- Weron, R. Electricity price forecasting: A review of the state-of-the-art with a look into the future. Int. J. Forecast. 2014, 30, 1030–1081. [Google Scholar] [CrossRef]
- Saâdaoui, F. A seasonal feedforward neural network to forecast electricity prices. Neural Comput. Appl. 2017, 28, 835–847. [Google Scholar] [CrossRef]
- Lim, B.; Arik, S.O.; Loeff, N.; Pfister, T. Temporal Fusion Transformers for Interpretable Multi-horizon Time Series Forecasting. Int. J. Forecast. 2019, 37, 1748–1764. [Google Scholar] [CrossRef]
Paper | Methodology | Novelty | Result |
---|---|---|---|
[62] | Systematic literature review along with a grey literature review to derive a framework | MLOps framework that describes the activities involved in the continuous development of the ML model | Framework validation in three embedded systems case companies |
[65] | Verified the feasibility of creating an ML pipeline with CI/CD capabilities on various appliances with specific hardware configuration | Performance evaluation of ML pipeline platforms characterized by Kubeflow on different models according to various metrics. | Consumption of time and resources concerning the ML platform and computational models. |
[66] | Review of the two DevOps components CI and CD, in the ML context | ML manual and automated pipeline design with CI/CD components | Scaling ML models |
[67] | Five issues in ML-based solutions for performance diagnostics | MLOps pipeline to resolve the five challenges in the performance diagnostics | Fully automated pipeline for continuously training the new models upon the arrival of new data |
[9] | Surveyed and compiled responses from ML professionals to investigate the role of MLOps in their daily activities | Survey with questions and goals | Based on survey, presented data on challenges based on survey data, ML problem types, and future plans with ML |
[68] | A brief overview of the state-of-the-art MLOps and an overview of the organizational and educational structures around AI software operations | Challenges and trends in AI software operations | Challenges in educating AI operations and properties to be supported by software for the domain it was designed for |
[69] | Multiple IoT experimental setups. Each setup is equipped with an IoT device and an edge device | An automated framework for MLOps at the edge, i.e., edge MLOps | Deployed and monitored IoT data and edge node operations in real time |
[70] | Study integration between two organizations in detail for a multi-organization setup | Addressed scaling of ML to a multi-organization context | Integrated challenges of the ML pipeline, datasets, models, and monitoring. |
Temporal Fusion Transformer | |
---|---|
hidden_size | 32 |
attention_head_size | 1 |
dropout | 0.1 |
hidden_continuous_size | 16 |
learning_rate | 0.03 |
loss | QuantileLoss() |
log_interval | 2 |
reduce_on_plateau_patience | 4 |
Trainer | |
gpus | 1 |
max_epochs | 10 |
gradient_clip_val | 0.1 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Subramanya, R.; Sierla, S.; Vyatkin, V. From DevOps to MLOps: Overview and Application to Electricity Market Forecasting. Appl. Sci. 2022, 12, 9851. https://doi.org/10.3390/app12199851
Subramanya R, Sierla S, Vyatkin V. From DevOps to MLOps: Overview and Application to Electricity Market Forecasting. Applied Sciences. 2022; 12(19):9851. https://doi.org/10.3390/app12199851
Chicago/Turabian StyleSubramanya, Rakshith, Seppo Sierla, and Valeriy Vyatkin. 2022. "From DevOps to MLOps: Overview and Application to Electricity Market Forecasting" Applied Sciences 12, no. 19: 9851. https://doi.org/10.3390/app12199851