A mixed-method empirical study of Function-as-a-Service software development in industrial practice
Journal article, 2019

Function-as-a-Service (FaaS) describes cloud computing services that make infrastructure components transparent to application developers, thus falling in the larger group of “serverless” computing mod- els. When using FaaS offerings, such as AWS Lambda, developers provide atomic and short-running code for their functions, and FaaS providers execute and horizontally scale them on-demand. Currently, there is nosystematic research on how developers use serverless, what types of applications lend themselves to this model, or what architectural styles and practices FaaS-based applications are based on. We present results from a mixed-method study, combining interviews with practitioners who develop applications and systems that use FaaS, a systematic analysis of grey literature, and a Web-based survey. We find that successfully adopting FaaS requires a different mental model, where systems are primarily constructed by composing pre-existing services, with FaaS often acting as the “glue” that brings these services to- gether. Tooling availability and maturity, especially related to testing and deployment, remains a major difficulty. Further, we find that current FaaS systems lack systematic support for function reuse, and ab- stractions and programming models for building non-trivial FaaS applications are limited. We conclude with a discussion of implications for FaaS providers, software developers, and researchers.

Empirical research

Cloud Computing

Serverless

Function-as-a-Service

Author

Philipp Leitner

Chalmers, Computer Science and Engineering (Chalmers), Software Engineering (Chalmers)

J. Erik Wittern

IBM Research

Josef Spillner

Zurich University of Applied Sciences

Waldemar Hummer

IBM Research

Journal of Systems and Software

0164-1212 (ISSN)

Vol. 149 340-359

Areas of Advance

Information and Communication Technology

Subject Categories

Business Administration

Software Engineering

Computer Science

DOI

10.1016/j.jss.2018.12.013

Related datasets

Survey And Interview Data From Mixed-Method Survey Of Serverless Computing And Function-As-A-Service Software Development In Industrial Practice [dataset]

DOI: 10.5281/zenodo.1252819

More information

Latest update

9/22/2023