Function as a Service, an Ad Hoc Approach to Cloud Computing
Undergraduate Thesis, University of Utah School of Computing 2016.
Cloud computing has become an integral piece of many services and has had a major impact on how software is developed, both in the research and commercial fields. However, the traditional types of cloud computing are best used for applications that fit well into a client-server model. While this is an invaluable service, it is important to question this paradigm and to research uses for cloud computing that reach beyond traditional models.
In this paper, we define Function as a Service, a paradigm for cloud computing that more closely resembles a distributed systems model rather than the traditional client-server model. Under this paradigm, the cloud has a more intimate relationship with interpreted programming languages, allowing software systems to utilize computation from the cloud directly through an API. We define a model for cloud authentication that allows developers to either maintain control over how their software interacts with the cloud, or empower users to choose their cloud provider and themselves define cloud interactions without risk to the developer.