skip to main content
10.1145/3468264.3468558acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

An empirical study on challenges of application development in serverless computing

Published:18 August 2021Publication History

ABSTRACT

Serverless computing is an emerging paradigm for cloud computing, gaining traction in a wide range of applications such as video processing and machine learning. This new paradigm allows developers to focus on the development of the logic of serverless computing based applications (abbreviated as serverless-based applications) in the granularity of function, thereby freeing developers from tedious and error-prone infrastructure management. Meanwhile, it also introduces new challenges on the design, implementation, and deployment of serverless-based applications, and current serverless computing platforms are far away from satisfactory. However, to the best of our knowledge, these challenges have not been well studied. To fill this knowledge gap, this paper presents the first comprehensive study on understanding the challenges in developing serverless-based applications from the developers’ perspective. We mine and analyze 22,731 relevant questions from Stack Overflow (a popular Q&A website for developers), and show the increasing popularity trend and the high difficulty level of serverless computing for developers. Through manual inspection of 619 sampled questions, we construct a taxonomy of challenges that developers encounter, and report a series of findings and actionable implications. Stakeholders including application developers, researchers, and cloud providers can leverage these findings and implications to better understand and further explore the serverless computing paradigm.

References

  1. [n.d.]. https://stackoverflow.com/questions/49172437/how-serverless-like-aws-lambda-and-google-cloud-function-work-on-infrastructure Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  2. [n.d.]. https://stackoverflow.com/questions/54760261/what-is-the-best-approach-for-generating-thumbnails-and-uploading-to-s3-bucket-i Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  3. [n.d.]. https://stackoverflow.com/questions/44678952/moonmail-installation-issue-command-project-not-found Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  4. [n.d.]. https://stackoverflow.com/questions/46765894/can-we-use-cloudwatch-events-on-s3-object-with-serverless Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  5. [n.d.]. https://stackoverflow.com/questions/57618689/how-do-i-use-aws-secret-manager-with-nodejs-lambda Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  6. [n.d.]. https://stackoverflow.com/questions/54233577/way-to-include-exlude-directories-controlling-aws-lambda-size-serverless Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  7. [n.d.]. https://stackoverflow.com/questions/55019736/aws-lambda-in-vpc-with-rds-and-internet-connection Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  8. [n.d.]. https://stackoverflow.com/questions/58372902/how-to-use-request-module-in-node-js-lambda Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  9. [n.d.]. https://stackoverflow.com/questions/62005562/aws-lambda-the-function-is-idle Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  10. [n.d.]. https://stackoverflow.com/questions/55017141/aws-lambda-extract-large-data-and-upload-to-s3 Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  11. [n.d.]. https://stackoverflow.com/questions/57125277/bring-machine-learning-to-live-production-with-aws-lambda-function Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  12. [n.d.]. https://stackoverflow.com/questions/41664708/cognito-user-pool-authorizer-with-serverless-framework Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  13. [n.d.]. https://stackoverflow.com/questions/45692168/web-scraping-with-aws-lambda Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  14. [n.d.]. https://stackoverflow.com/questions/51095849/how-can-run-rails-web-app-in-aws-lambda-server Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  15. [n.d.]. https://stackoverflow.com/questions/44842070/aws-serverless-resources-deploy-from-v0-5-to-v1-0 Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  16. [n.d.]. https://stackoverflow.com/questions/61548553/aws-lambda-with-both-python-and-java-language-support Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  17. [n.d.]. https://stackoverflow.com/questions/45308893/sharing-code-across-swift-openwhisk-actions Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  18. [n.d.]. https://stackoverflow.com/questions/43520629/unable-to-install-serverless-framework-on-macosx Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  19. [n.d.]. https://stackoverflow.com/questions/60808256/update-eventsourcearn-through-aws-cli Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  20. [n.d.]. https://stackoverflow.com/questions/51925672/sls-dynamodb-start-throws-spawn-java-enoent Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  21. [n.d.]. https://stackoverflow.com/questions/40569505/proper-request-template-mapping-or-process-in-order-to-upload-a-photo-to-s3-usin Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  22. [n.d.]. https://stackoverflow.com/questions/47249256/accessdenied-error-message-when-calling-aws-s3-buckets-from-serverless-lambda-fu Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  23. [n.d.]. https://stackoverflow.com/questions/40640433/what-is-the-syntax-in-serverless-yml-file-to-deploy-lambda-to-multiple-regions Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  24. [n.d.]. https://stackoverflow.com/questions/58504542/how-to-fix-timed-out-error-using-python-in-aws-lambda-functions-when-i-am-using Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  25. [n.d.]. https://stackoverflow.com/questions/58224566/serverless-framework-ignoring-authorizer-block-in-lambda-proxy-setup Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  26. [n.d.]. https://stackoverflow.com/questions/54581575/conditional-resource-in-serverless Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  27. [n.d.]. https://stackoverflow.com/questions/47327765/creating-two-dynamodb-tables-in-serverless-yml Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  28. [n.d.]. https://stackoverflow.com/questions/44032664/reference-function-from-within-serverless-yml Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  29. [n.d.]. https://stackoverflow.com/questions/39793242/serverless-response-template-with-status-code Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  30. [n.d.]. https://stackoverflow.com/questions/56849240/how-to-read-csv-file-from-s3-bucket-in-aws-lambda Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  31. [n.d.]. https://stackoverflow.com/questions/64998595/signature-error-while-updating-s3-object-metadata-through-boto3 Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  32. [n.d.]. https://stackoverflow.com/questions/37169377/serverless-framework-how-to-add-external-npm-packages Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  33. [n.d.]. https://stackoverflow.com/questions/35969178/serverless-framework-with-node-mysql Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  34. [n.d.]. https://stackoverflow.com/questions/60506343/why-would-this-aws-lambda-cause-error-warning-callback-response-already-delive Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  35. [n.d.]. https://stackoverflow.com/questions/56712973/passing-a-json-file-in-event-event-cannot-read-keys-only-values Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  36. [n.d.]. https://stackoverflow.com/questions/49328315/how-to-send-back-non-stringified-data-in-serverles-aws Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  37. [n.d.]. https://stackoverflow.com/questions/63476921/lambda-function-in-python-returning-configuration-error Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  38. [n.d.]. https://stackoverflow.com/questions/45668631/debugging-aws-serverless-lambda-functions-with-dynamodbevents-in-c-sharp Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  39. [n.d.]. https://stackoverflow.com/questions/53626962/what-is-the-correct-way-to-get-the-origin-header-in-a-serverless-deployed-lambda Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  40. [n.d.]. https://stackoverflow.com/questions/60381331/aws-lambda-function-cloudwatch-how-to-pass-the-right-parameters-to-a-timed-ex Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  41. [n.d.]. https://stackoverflow.com/questions/51850931/openwhisk-and-binary-data-from-google-flatbuffers Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  42. [n.d.]. https://stackoverflow.com/questions/52465530/sequelize-connection-timeout-while-using-serverless-aurora-looking-for-a-way-to Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  43. [n.d.]. https://stackoverflow.com/questions/49045256/serverless-deploying-to-aws-azure-or-gcp Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  44. [n.d.]. https://stackoverflow.com/questions/56575448/why-i-missing-dependencies-in-aws-lambda-when-deploy-packages-in-python Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  45. [n.d.]. https://stackoverflow.com/questions/48315409/serverless-command-resources-not-found Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  46. [n.d.]. https://stackoverflow.com/questions/63002322/how-to-monitor-if-all-aws-lambda-functions-executions-finish-correctly Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  47. [n.d.]. https://stackoverflow.com/questions/51005379/how-do-you-manage-updates-rollbacks-and-multiples-versions-with-appsync-and-serv Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  48. [n.d.]. https://stackoverflow.com/questions/51854491/running-a-graphql-app-on-aws-lambda Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  49. [n.d.]. https://stackoverflow.com/questions/52210036/openwhisk-increase-number-of-concurrent-requests Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  50. [n.d.]. https://stackoverflow.com/questions/52280344/openwhisk-request-has-not-yet-finished Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  51. [n.d.]. https://stackoverflow.com/questions/48309760/how-to-send-gzipped-json-response-from-google-cloud-functions Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  52. [n.d.]. https://stackoverflow.com/questions/47373834/ffmpeg-azure-function-consumption-plan-low-cpu-availability-for-high-volume-requ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  53. [n.d.]. https://stackoverflow.com/questions/54895958/how-can-i-keep-warm-an-aws-lambda-invoked-from-api-gateway-with-proxy-integratio Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  54. [n.d.]. https://stackoverflow.com/questions/51703030/determine-read-capacity-unit-for-dynamodb-table Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  55. [n.d.]. https://stackoverflow.com/questions/33001798/how-to-protect-serverless-framework-endpoints-from-abuse-dos Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  56. [n.d.]. https://stackoverflow.com/questions/48206257/protect-data-in-transit-when-two-lambda-communicate-via-aws-sns-simple-notifica Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  57. [n.d.]. Amazon API Gateway. https://aws.amazon.com/api-gateway/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  58. [n.d.]. Amazon DynamoDB. https://aws.amazon.com/dynamodb/?nc1=h_ls Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  59. [n.d.]. Amazon RDS. https://aws.amazon.com/rds/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  60. [n.d.]. Amazon S3. https://aws.amazon.com/s3/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  61. [n.d.]. AWS Lambda. https://docs.aws.amazon.com/lambda/latest/dg/welcome.html Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  62. [n.d.]. Azure Functions. https://docs.microsoft.com/en-us/azure/azure-functions/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  63. [n.d.]. The CIO’s guide to serverless computing. https://www.gartner.com/smarterwithgartner/the-cios-guide-to-serverless-computing/ Retrieved on February 16, 2020.Google ScholarGoogle Scholar
  64. [n.d.]. Function-as-a-Service market. https://www.marketsandmarkets.com/Market-Reports/function-as-a-service-market-127202409.html Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  65. [n.d.]. Google Cloud Functions. https://cloud.google.com/functions Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  66. [n.d.]. Infrastructure as code. https://en.wikipedia.org/wiki/Infrastructure_as_code Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  67. [n.d.]. LocalStack: a fully functional local AWS cloud stack. https://github.com/localstack/localstack Retrieved on February 16, 2020.Google ScholarGoogle Scholar
  68. [n.d.]. Low-code development. https://en.wikipedia.org/wiki/Low-code_development_platform Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  69. [n.d.]. OpenFaaS. https://www.openfaas.com/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  70. [n.d.]. Openwhisk. https://openwhisk.apache.org/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  71. [n.d.]. R documentation. https://www.rdocumentation.org/packages/stats/versions/3.6.2/topics/prop.test Retrieved on February 16, 2020.Google ScholarGoogle Scholar
  72. [n.d.]. Serverless Framework. https://www.serverless.com/ Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  73. [n.d.]. Stack Exchange Data Dump. https://archive.org/details/stackexchange Retrieved on February 16, 2021.Google ScholarGoogle Scholar
  74. Emad Aghajani, Csaba Nagy, Olga Lucero Vega-Márquez, Mario Linares-Vásquez, Laura Moreno, Gabriele Bavota, and Michele Lanza. 2019. Software documentation issues unveiled. In Proceedings of the 41st International Conference on Software Engineering, ICSE 2019. 1199–1210. https://doi.org/10.1109/icse.2019.00122 Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. Md Ahasanuzzaman, Muhammad Asaduzzaman, Chanchal K Roy, and Kevin A Schneider. 2018. Classifying stack overflow posts on API issues. In Proceedings of 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering, SANER 2018. 244–254. https://doi.org/10.1109/saner.2018.8330213 Google ScholarGoogle ScholarCross RefCross Ref
  76. Syed Ahmed and Mehdi Bagherzadeh. 2018. What do concurrency developers ask about? A large-scale study using Stack Overflow. In Proceedings of the 12th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2018. 30:1–30:10. https://doi.org/10.1145/3239235.3239524 Google ScholarGoogle ScholarDigital LibraryDigital Library
  77. Istemi Ekin Akkus, Ruichuan Chen, Ivica Rimac, Manuel Stein, Klaus Satzke, Andre Beck, Paarijaat Aditya, and Volker Hilt. 2018. SAND: Towards high-performance serverless computing. In Proceedings of the 2018 USENIX Annual Technical Conference, ATC 2018. 923–935.Google ScholarGoogle Scholar
  78. Moayad Alshangiti, Hitesh Sapkota, Pradeep K. Murukannaiah, Xumin Liu, and Qi Yu. 2019. Why is developing machine learning applications challenging? A study on Stack Overflow posts. In Proceedings of the International Symposium on Empirical Software Engineering and Measurement, ESEM 2019. 1–11. https://doi.org/10.1109/esem.2019.8870187 Google ScholarGoogle ScholarCross RefCross Ref
  79. Lixiang Ao, Liz Izhikevich, Geoffrey M Voelker, and George Porter. 2018. Sprocket: A serverless video processing framework. In Proceedings of the 2018 ACM Symposium on Cloud Computing, SoCC 2018. 263–274. https://doi.org/10.1145/3267809.3267815 Google ScholarGoogle ScholarDigital LibraryDigital Library
  80. Mehdi Bagherzadeh and Raffi Khatchadourian. 2019. Going big: A large-scale study on what big data developers ask. In Proceedings of the 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2019. 432–442. https://doi.org/10.1145/3338906.3338939 Google ScholarGoogle ScholarDigital LibraryDigital Library
  81. Anton Barua, Stephen W Thomas, and Ahmed E Hassan. 2014. What are developers talking about? An analysis of topics and trends in Stack Overflow. Empirical Software Engineering, 19, 3 (2014), 619–654. https://doi.org/10.1007/s10664-012-9231-y Google ScholarGoogle ScholarDigital LibraryDigital Library
  82. Stefanie Beyer, Christian Macho, Massimiliano Di Penta, and Martin Pinzger. 2018. Automatically classifying posts into question categories on Stack Overflow. In Proceedings of the 2018 IEEE/ACM 26th International Conference on Program Comprehension, ICPC 2018. 211–21110. https://doi.org/10.1145/3196321.3196333 Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Joao Carreira, Pedro Fonseca, Alexey Tumanov, Andrew Zhang, and Randy Katz. 2019. Cirrus: A serverless framework for end-to-end ML workflows. In Proceedings of the ACM Symposium on Cloud Computing, SoCC 2019. 13–24. https://doi.org/10.1145/3357223.3362711 Google ScholarGoogle ScholarDigital LibraryDigital Library
  84. Zhenpeng Chen, Yanbin Cao, Yuanqiang Liu, Haoyu Wang, Tao Xie, and Xuanzhe Liu. 2020. A comprehensive study on challenges in deploying deep learning based software. In Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2020. 750–762. https://doi.org/10.1145/3368089.3409759 Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Zhenpeng Chen, Huihan Yao, Yiling Lou, Yanbin Cao, Yuanqiang Liu, Haoyu Wang, and Xuanzhe Liu. 2021. An empirical study on deployment faults of deep learning based mobile applications. In Proceedings of the 43rd International Conference on Software Engineering, ICSE 2021. 674–685. https://doi.org/10.1109/icse43902.2021.00068 Google ScholarGoogle ScholarDigital LibraryDigital Library
  86. Jacob Cohen. 1960. A coefficient of agreement for nominal scales. Educational and psychological measurement, 20, 1 (1960), 37–46. https://doi.org/10.1177/001316446002000104 Google ScholarGoogle ScholarCross RefCross Ref
  87. Alex Cummaudo, Rajesh Vasa, Scott Barnett, John Grundy, and Mohamed Abdelrazek. 2020. Interpreting cloud computer vision pain-points: A mining study of Stack Overflow. In Proceedings of the 41st International Conference on Software Engineering, ICSE 2020. 1584–1596. https://doi.org/10.1145/3377811.3380404 Google ScholarGoogle ScholarDigital LibraryDigital Library
  88. Simon Eismann, Joel Scheuner, Erwin van Eyk, Maximilian Schwinger, Johannes Grohmann, Nikolas Herbst, Cristina L Abad, and Alexandru Iosup. 2020. A review of serverless use cases and their characteristics. arXiv preprint arXiv:2008.11110.Google ScholarGoogle Scholar
  89. Lang Feng, Prabhakar Kudva, Dilma Da Silva, and Jiang Hu. 2018. Exploring serverless computing for neural network training. In Proceedings of the IEEE 11th international conference on cloud computing, CLOUD 2018. 334–341. https://doi.org/10.1109/cloud.2018.00049 Google ScholarGoogle ScholarCross RefCross Ref
  90. Sadjad Fouladi, Riad S Wahby, Brennan Shacklett, Karthikeyan Vasuki Balasubramaniam, William Zeng, Rahul Bhalerao, Anirudh Sivaraman, George Porter, and Keith Winstein. 2017. Encoding, fast and slow: Low-latency video processing using thousands of tiny threads. In Proceedings of the 2017 USENIX Symposium on Networked Systems Design and Implementation, NSDI 2017. 363–376.Google ScholarGoogle Scholar
  91. Eric Jonas, Qifan Pu, Shivaram Venkataraman, Ion Stoica, and Benjamin Recht. 2017. Occupy the cloud: Distributed computing for the 99%. In Proceedings of the ACM Symposium on Cloud Computing, SoCC 2017. 445–451. https://doi.org/10.1145/3127479.3128601 Google ScholarGoogle ScholarDigital LibraryDigital Library
  92. Eric Jonas, Johann Schleier-Smith, Vikram Sreekanti, Chia-Che Tsai, Anurag Khandelwal, Qifan Pu, Vaishaal Shankar, Joao Carreira, Karl Krauth, Neeraja Yadwadkar, Joseph E. Gonzalez, Raluca Ada Popa, Ion Stoica, and David A. Patterson. 2019. Cloud programming simplified: A berkeley view on serverless computing. arXiv preprint arXiv:1902.03383.Google ScholarGoogle Scholar
  93. J Richard Landis and Gary G Koch. 1977. The measurement of observer agreement for categorical data. Biometrics, 33, 1 (1977), 159–174. https://doi.org/10.2307/2529310 Google ScholarGoogle ScholarCross RefCross Ref
  94. Philipp Leitner, Erik Wittern, Josef Spillner, and Waldemar Hummer. 2019. A mixed-method empirical study of Function-as-a-Service software development in industrial practice. Journal of Systems and Software, 149 (2019), 340–359. https://doi.org/10.1016/j.jss.2018.12.013 Google ScholarGoogle ScholarCross RefCross Ref
  95. Yiling Lou, Zhenpeng Chen, Yanbin Cao, Dan Hao, and Lu Zhang. 2020. Understanding build issue resolution in practice: Symptoms and fix patterns. In Proceedings of the ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2020. 617–628. https://doi.org/10.1145/3368089.3409760 Google ScholarGoogle ScholarDigital LibraryDigital Library
  96. Sunil Kumar Mohanty, Gopika Premsankar, and Mario Di Francesco. 2018. An evaluation of open source serverless computing frameworks. In Proceedings of the IEEE 10th International Conference on Cloud Computing Technology and Science, CloudCom 2018. 115–120. https://doi.org/10.1109/cloudcom2018.2018.00033 Google ScholarGoogle ScholarCross RefCross Ref
  97. Stefan Nastic and Schahram Dustdar. 2018. Towards deviceless edge computing: Challenges, design aspects, and models for serverless paradigm at the edge. In The Essence of Software Engineering. Springer, Cham, 121–136. https://doi.org/10.1007/978-3-319-73897-0_8 Google ScholarGoogle ScholarCross RefCross Ref
  98. Robert G. Newcombe. 1998. Interval estimation for the difference between independent proportions: Comparison of eleven methods. Statistics in Medicine, 17, 8 (1998), 873–890. https://doi.org/10.1002/(sici)1097-0258(19980430)17:8<873::aid-sim779>3.0.co;2-iGoogle ScholarGoogle ScholarCross RefCross Ref
  99. Edward Oakes, Leon Yang, Dennis Zhou, Kevin Houck, Tyler Harter, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2018. SOCK: Rapid task provisioning with serverless-optimized containers. In Proceedings of the 2018 USENIX Annual Technical Conference, ATC 2018. 57–70.Google ScholarGoogle Scholar
  100. Christoffer Rosen and Emad Shihab. 2016. What are mobile developers asking about? A large scale study using Stack Overflow. Empirical Software Engineering, 21, 3 (2016), 1192–1223. https://doi.org/10.1007/s10664-015-9379-3 Google ScholarGoogle ScholarDigital LibraryDigital Library
  101. Joel Scheuner and Philipp Leitner. 2020. Function-as-a-Service performance evaluation: A multivocal literature review. Journal of Systems and Software, 170 (2020), 110708. https://doi.org/10.1016/j.jss.2020.110708 Google ScholarGoogle ScholarCross RefCross Ref
  102. Carolyn B. Seaman. 1999. Qualitative methods in empirical studies of software engineering. IEEE Transactions on Software Engineering, 25, 4 (1999), 557–572. https://doi.org/10.1109/32.799955 Google ScholarGoogle ScholarDigital LibraryDigital Library
  103. Mohammad Shahrad, Rodrigo Fonseca, Íñigo Goiri, Gohar Chaudhry, Paul Batum, Jason Cooke, Eduardo Laureano, Colby Tresness, Mark Russinovich, and Ricardo Bianchini. 2020. Serverless in the wild: Characterizing and optimizing the serverless workload at a large cloud provider. In Proceedings of the 2020 USENIX Annual Technical Conference, ATC 2020. 205–218.Google ScholarGoogle Scholar
  104. Vaishaal Shankar, Karl Krauth, Kailas Vodrahalli, Qifan Pu, Benjamin Recht, Ion Stoica, Jonathan Ragan-Kelley, Eric Jonas, and Shivaram Venkataraman. 2020. Serverless linear algebra. In Proceedings of the 2020 ACM Symposium on Cloud Computing, SoCC 2020. 281–295. https://doi.org/10.1145/3419111.3421287 Google ScholarGoogle ScholarDigital LibraryDigital Library
  105. Davide Taibi, Nabil El Ioini, Claus Pahl, and Jan Raphael Schmid Niederkofler. 2020. Serverless cloud computing (function-as-a-service) patterns: A multivocal literature review. In Proceedings of the 2020 International Conference on Cloud Computing and Services Science, CLOSER 2020. https://doi.org/10.5220/0009578501810192 Google ScholarGoogle ScholarCross RefCross Ref
  106. Ali Tariq, Austin Pahl, Sharat Nimmagadda, Eric Rozner, and Siddharth Lanka. 2020. Sequoia: Enabling quality-of-service in serverless computing. In Proceedings of the 2020 ACM Symposium on Cloud Computing, SoCC 2020. 311–327. https://doi.org/10.1145/3419111.3421306 Google ScholarGoogle ScholarDigital LibraryDigital Library
  107. Liang Wang, Mengyuan Li, Yinqian Zhang, Thomas Ristenpart, and Michael Swift. 2018. Peeking behind the curtains of serverless platforms. In Proceedings of the 2018 USENIX Annual Technical Conference, ATC 2018. 133–146.Google ScholarGoogle Scholar
  108. Sebastian Werner, Jörn Kuhlenkamp, Markus Klems, Johannes Müller, and Stefan Tai. 2018. Serverless big data processing using matrix multiplication as example. In Proceedings of the IEEE International Conference on Big Data, Big Data 2018. 358–365. https://doi.org/10.1109/bigdata.2018.8622362 Google ScholarGoogle ScholarCross RefCross Ref
  109. Xinli Yang, David Lo, Xin Xia, Zhiyuan Wan, and Jian-Ling Sun. 2016. What security questions do developers ask? A large-scale study of Stack Overflow posts. Journal of Computer Science and Technology, 31, 5 (2016), 910–924. https://doi.org/10.1007/s11390-016-1672-0 Google ScholarGoogle ScholarCross RefCross Ref
  110. Tianyi Yu, Qingyuan Liu, Dong Du, Yubin Xia, Binyu Zang, Ziqian Lu, Pingchao Yang, Chenggang Qin, and Haibo Chen. 2020. Characterizing serverless platforms with serverlessbench. In Proceedings of the 2020 ACM Symposium on Cloud Computing, SoCC 2020. 30–44. https://doi.org/10.1145/3419111.3421280 Google ScholarGoogle ScholarDigital LibraryDigital Library
  111. Tianyi Zhang, Cuiyun Gao, Lei Ma, Michael R. Lyu, and Miryung Kim. 2019. An empirical study of common challenges in developing deep learning applications. In Proceedings of the 30th IEEE International Symposium on Software Reliability Engineering, ISSRE 2019. 104–115. https://doi.org/10.1109/issre.2019.00020 Google ScholarGoogle ScholarCross RefCross Ref
  112. Yuhao Zhang, Yifan Chen, Shing-Chi Cheung, Yingfei Xiong, and Lu Zhang. 2018. An empirical study on TensorFlow program bugs. In Proceedings of the 27th ACM SIGSOFT International Symposium on Software Testing and Analysis, ISSTA 2018. 129–140. https://doi.org/10.1145/3213846.3213866 Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An empirical study on challenges of application development in serverless computing

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          ESEC/FSE 2021: Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering
          August 2021
          1690 pages
          ISBN:9781450385626
          DOI:10.1145/3468264

          Copyright © 2021 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 18 August 2021

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate112of543submissions,21%

          Upcoming Conference

          FSE '24

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader