Analysis of Software Engineering Practices in General Software and Machine Learning Startups

04/04/2023
by   Bishal Lakha, et al.
0

Context: On top of the inherent challenges startup software companies face applying proper software engineering practices, the non-deterministic nature of machine learning techniques makes it even more difficult for machine learning (ML) startups. Objective: Therefore, the objective of our study is to understand the whole picture of software engineering practices followed by ML startups and identify additional needs. Method: To achieve our goal, we conducted a systematic literature review study on 37 papers published in the last 21 years. We selected papers on both general software startups and ML startups. We collected data to understand software engineering (SE) practices in five phases of the software development life-cycle: requirement engineering, design, development, quality assurance, and deployment. Results: We find some interesting differences in software engineering practices in ML startups and general software startups. The data management and model learning phases are the most prominent among them. Conclusion: While ML startups face many similar challenges to general software startups, the additional difficulties of using stochastic ML models require different strategies in using software engineering practices to produce high-quality products.

READ FULL TEXT
research
11/07/2020

Software engineering for artificial intelligence and machine learning software: A systematic literature review

Artificial Intelligence (AI) or Machine Learning (ML) systems have been ...
research
02/15/2021

Machine Learning Model Development from a Software Engineering Perspective: A Systematic Literature Review

Data scientists often develop machine learning models to solve a variety...
research
10/10/2019

Studying Software Engineering Patterns for Designing Machine Learning Systems

Machine-learning (ML) techniques have become popular in the recent years...
research
05/03/2021

Quality Assurance Challenges for Machine Learning Software Applications During Software Development Life Cycle Phases

In the past decades, the revolutionary advances of Machine Learning (ML)...
research
11/23/2022

Quality Assurance in MLOps Setting: An Industrial Perspective

Today, machine learning (ML) is widely used in industry to provide the c...
research
03/11/2023

NICHE: A Curated Dataset of Engineered Machine Learning Projects in Python

Machine learning (ML) has gained much attention and been incorporated in...
research
08/01/2021

A Survey on Software Engineering Practices in Brazilian Startups

Today's significant technological advancement allows early-stage softwar...

Please sign up or login with your details

Forgot password? Click here to reset