How does Machine Learning Change Software Development Practices?

被引:106
|
作者
Wan, Zhiyuan [1 ,2 ]
Xia, Xin [3 ]
Lo, David [4 ]
Murphy, Gail C. [5 ]
机构
[1] Zhejiang Univ, Ningbo Res Inst, Coll Comp Sci & Technol, Hangzhou 310058, Peoples R China
[2] Univ British Columbia, Dept Comp Sci, Vancouver, BC V6T 1Z4, Canada
[3] Monash Univ, Fac Informat Technol, Clayton, Vic 3800, Australia
[4] Singapore Management Univ, Sch Informat Syst, Singapore 188065, Singapore
[5] Univ British Columbia, Dept Comp Sci, Vancouver, BC V6T 1Z4, Canada
关键词
Software; Interviews; Data models; Machine learning; Testing; Task analysis; Software engineering; machine learning; practitioner; empirical study;
D O I
10.1109/TSE.2019.2937083
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Adding an ability for a system to learn inherently adds uncertainty into the system. Given the rising popularity of incorporating machine learning into systems, we wondered how the addition alters software development practices. We performed a mixture of qualitative and quantitative studies with 14 interviewees and 342 survey respondents from 26 countries across four continents to elicit significant differences between the development of machine learning systems and the development of non-machine-learning systems. Our study uncovers significant differences in various aspects of software engineering (e.g., requirements, design, testing, and process) and work characteristics (e.g., skill variety, problem solving and task identity). Based on our findings, we highlight future research directions and provide recommendations for practitioners.
引用
收藏
页码:1857 / 1871
页数:15
相关论文
共 50 条
  • [1] How agile are industrial software development practices?
    Hansson, Christina
    Dittrich, Yvonne
    Gustafsson, Bjorn
    Zarnak, Stefan
    JOURNAL OF SYSTEMS AND SOFTWARE, 2006, 79 (09) : 1295 - 1311
  • [2] Machine Learning-Based Software Development challenges focusing on using best practices of Software Engineering Standards
    Tablada-Dominguez, Antonio
    Munoz, Mirna
    Ocharan-Hernandez, Jorge Octavio
    Sanchez-Garcia, Angel J.
    2023 MEXICAN INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE, ENC, 2024,
  • [3] Explaining Change Paths of Systems and Software Development Practices
    Smolander, Kari
    Larsen, Even Aby
    Paivarinta, Tero
    INFORMATION SYSTEMS DEVELOPMENT: ASIAN EXPERIENCES, 2011, : 399 - 410
  • [4] Does classroom presenter software change learning outcomes?
    Weaver, Alfred C.
    36th Annual Frontiers in Education, Conference Program, Vols 1-4: BORDERS: INTERNATIONAL, SOCIAL AND CULTURAL, 2006, : 595 - 599
  • [5] How does learning facilitate development?
    Rupcic, Natasa
    LEARNING ORGANIZATION, 2024, 31 (03): : 449 - 457
  • [6] How does code readability change during software evolution?
    Valentina Piantadosi
    Fabiana Fierro
    Simone Scalabrino
    Alexander Serebrenik
    Rocco Oliveto
    Empirical Software Engineering, 2020, 25 : 5374 - 5412
  • [7] How does code readability change during software evolution?
    Piantadosi, Valentina
    Fierro, Fabiana
    Scalabrino, Simone
    Serebrenik, Alexander
    Oliveto, Rocco
    EMPIRICAL SOFTWARE ENGINEERING, 2020, 25 (06) : 5374 - 5412
  • [8] How does the architect's role change as the software ages?
    Klein, John
    5TH WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE, PROCEEDINGS, 2006, : 141 - 146
  • [9] Machine Learning Practices Outside Big Tech: How Resource Constraints Challenge Responsible Development
    Hopkins, Aspen
    Booth, Serena
    AIES '21: PROCEEDINGS OF THE 2021 AAAI/ACM CONFERENCE ON AI, ETHICS, AND SOCIETY, 2021, : 134 - 145
  • [10] PREDICTING SOFTWARE CHANGE IN AN OPEN SOURCE SOFTWARE USING MACHINE LEARNING ALGORITHMS
    Malhotra, Ruchika
    Bansal, Ankita Jain
    INTERNATIONAL JOURNAL OF RELIABILITY QUALITY AND SAFETY ENGINEERING, 2013, 20 (06)