Plataforma como serviço, ou PaaS, é um modelo de computação em nuvem que fornece aos usuários um ambiente completo de desenvolvimento a implantação na nuvem. O principal objetivo do PaaS é fornecer uma visão holística das plataformas em nuvem e centralizar o desenvolvimento e a manutenção de aplicações em nuvem.
As ferramentas de PaaS incluem, mas não se limitam a, kits de desenvolvimento, ferramentas de banco de dados e capacidades de gerenciamento de aplicações. Uma oferta de PaaS inclui infraestrutura, como servidores e armazenamento, e middleware, como ferramentas de desenvolvimento e sistemas de gerenciamento de banco de dados. Fornecedores terceirizados oferecem aos usuários recursos virtuais para construir, implantar e lançar aplicações de software, reduzindo a necessidade de desenvolvimento de software de back-end.
As empresas utilizam PaaS para terceirizar hospedagem, construção de banco de dados, capacidades de segurança em nuvem e armazenamento de dados. As empresas frequentemente usam nuvens PaaS como plataformas escaláveis para novas aplicações ou para expandir aplicações para públicos maiores. PaaS oferece um modelo de pagamento conforme o crescimento, o que ajuda as empresas a evitar investimentos de longo prazo em tempo de desenvolvimento e middleware. As equipes de desenvolvimento usam o serviço como uma alternativa à construção e hospedagem no back-end de aplicações com ambientes de desenvolvimento integrados (IDE). Os serviços de banco de dados e armazenamento hospedados do PaaS incluem capacidades semelhantes aos produtos de backend móvel como serviço (mBaaS), que são especificamente para aplicações móveis. Os provedores de PaaS variam de fornecedores de software estabelecidos a projetos de código aberto. Nos últimos anos, a nuvem híbrida surgiu como uma forma popular de implantação de PaaS. A computação em nuvem híbrida utiliza diferentes infraestruturas de nuvem, como nuvens públicas e privadas, e as gerencia como uma só.
Para se qualificar para inclusão na categoria PaaS, um produto deve:
Fornecer ferramentas de criação de banco de dados hospedadas
Fornecer uma plataforma de desenvolvimento
Fornecer ferramentas de gerenciamento de aplicações
Possuir capacidades para implantar aplicações