First published: 2017/02/17 (7 years ago) Abstract: Software developers are faced with the issue of either adapting their
programming model to the execution model (e.g. cloud platforms) or finding
appropriate tools to adapt the model and code automatically. A recent execution
model which would benefit from automated enablement is Function-as-a-Service.
Automating this process requires a pipeline which includes steps for code
analysis, transformation and deployment. In this paper, we outline the design
and runtime characteristics of Podilizer, a tool which implements the pipeline
specifically for Java source code as input and AWS Lambda as output. We
contribute technical and economic metrics about this concrete 'FaaSification'
process by observing the behaviour of Podilizer with two representative Java
software projects.
#### Summary:
The main point of the paper is to show the automatic tranformation process of a java project to run on AWS lambda. For the transformation process a self developed tool named Podilzer is used to perform the tests. Further a comparison of the execution times and cost factors is made, to show if it's valuable to run Java functions on AWS lambda.
#### Good points:
The pipeline process is well described and good understandable. The developed tool called Podilizer implements this pipeline process and is also as open source project available. The experiments are also available on the openscience platform including scripts and code, this grantees repeatability of the conducted tests.
#### Major comments:
One of the main problems with FaaS in general is preserving the state of an application. This challenge is described well. I wished to get a bit more insight what other problematic functions exist and what the approach of transforming those would be.
The java projects which were used to conduct the results are available but not described in the paper. Therefore the transformation times are difficult to assess, before a study of the projects itself. Further the execution performance of the same applications were compared locally and on different cloud offerings. On AWS Lambda the execution performance is significantly higher then on all the other platforms. Probably the times also include network latency, therefore it would be also interesting to see the actual execution times on Lambda itself.
#### Minor comments:
Generally good grammar, some minor typos.
#### Recommendations:
Describe the problems of transforming existing functions in more extend. Include also the “real” execution times of the AWS Lambda functions, to have a better comparison between the run times.
Finally proofread and publish after corrections have been made