We can define “Serverless” as a kind of software architecture in which application logic is executed in an environment without visible servers, virtual machines or even operating systems. These environments are of course running on top of an infrastructure, but the provisioning and management of such infrastructure is completely transparent to us and it belongs to whoever provides the service (for example: AWS). On this model, a developer focuses on writing code and not on managing servers, operating systems or even containers.
Sometimes we see a confusion between serverless and PaaS; The difference is that traditional PaaS providers such as Heroku or OpenShift usually lack the automatic scaling feature. On those platforms you must specify the amount of resources for the application. It is still possible to manually scale the application up or down by changing the number of assigned resources, but mostly this is the responsibility of a developer or system administrator.
Download this white-paper to get a general idea of what Serverless is and how it can help your organization