Software engineering for artificial intelligence and machine learning software: A systematic literature review
Artificial Intelligence (AI) or Machine Learning (ML) systems have been widely adopted as value propositions by companies in all industries in order to create or extend the services and products they offer. However, developing AI/ML systems has presented several engineering problems that are different from those that arise in, non-AI/ML software development. This study aims to investigate how software engineering (SE) has been applied in the development of AI/ML systems and identify challenges and practices that are applicable and determine whether they meet the needs of professionals. Also, we assessed whether these SE practices apply to different contexts, and in which areas they may be applicable. We conducted a systematic review of literature from 1990 to 2019 to (i) understand and summarize the current state of the art in this field and (ii) analyze its limitations and open challenges that will drive future research. Our results show these systems are developed on a lab context or a large company and followed a research-driven development process. The main challenges faced by professionals are in areas of testing, AI software quality, and data management. The contribution types of most of the proposed SE practices are guidelines, lessons learned, and tools.
Code (0)
등록된 구현이 없습니다.
Tasks
BIG-bench Machine LearningManagementSystematic Literature ReviewSimilar Papers 제목 키워드 기반
Explainable AI for Software Engineering
Artificial Intelligence/Machine Learning techniques have been widely used in software engineering to improve developer productivity, the quality of software systems, and decision-making. However, such AI/ML models for so…
BIG-bench Machine LearningDecision MakingA Systematic Literature Review on the Use of Machine Learning in Software Engineering
Software engineering (SE) is a dynamic field that involves multiple phases all of which are necessary to develop sustainable software systems. Machine learning (ML), a branch of artificial intelligence (AI), has drawn a …
Systematic Literature ReviewArtificial Intelligence Impact On The Labour Force -- Searching For The Analytical Skills Of The Future Software Engineers
This systematic literature review aims to investigate the impact of artificial intelligence (AI) on the labour force in software engineering, with a particular focus on the skills needed for future software engineers, th…
Systematic Literature ReviewTrustworthy and Synergistic Artificial Intelligence for Software Engineering: Vision and Roadmaps
For decades, much software engineering research has been dedicated to devising automated solutions aimed at enhancing developer productivity and elevating software quality. The past two decades have witnessed an unparall…
Software Reuse in the Generative AI Era: From Cargo Cult Towards AI Native Software Engineering
Software development is currently under a paradigm shift in which artificial intelligence and generative software reuse are taking the center stage in software creation. Consequently, earlier software reuse practices and…