SaaS (sistema como serviço ou, em inglês, software as a Service) é um novo modelo de uso de softwares através de aplicações web disponível online para o usuário. Simples, barato e flexível, o software como serviço já virou realidade dentro de muitas empresas.
O SaaS é referente ao uso do mesmo software, disponível via website, por vários clientes e empresas ao mesmo tempo. O objetivo é, portanto, disponibilizar os mesmos recursos de software para um número maior de clientes.
Pensando nesse contexto, temos que desenvolver 2 conceitos: (1) “Cauda Longa” ou “Long Tail” e (2) “Multi-inquilino” ou “Multi-tenants”.
(1) Cauda Longa:
Basicamente, esse conceito implica na procura elevada para um conjunto pequeno de produtos e procura muito reduzida para um conjunto elevado de produtos.
Na economia tradicional, os custos fixos de manutenção de estoques, permitem calcular um valor para a procura que define a fronteira entre lucro e prejuízo.
No caso da Nova economia, este raciocínio é colocado em causa, muito particularmente no caso dos produtos digitais. Por exemplo, o custo de manutenção de um produto muito procurado é igual ao custo de manutenção de um produto procurado apenas por um número mínimo de consumidores.
Apostar na Cauda Longa, torna-se economicamente interessante, pois conforme baixamos o custo de adoção, um número maior de clientes pode adotar nossa solução. E esse número tende ao infinito, uma vez que a curva não toca o eixo “x”. Assim, no modelo SaaS de fornecimento de software, precisamos pensar em soluções e infra-estruturas de baixo custo, com alto aproveitamento de recursos por um número muito grande de clientes, para atingirmos um público não suportado hoje em dia, devido os custos proibitivos de entrada.
(2) “Multi-inquilino”:
Utilizando o conceito da cauda longa mostrado a cima, o termo multi-inquilino se encaixa pois refere-se ao uso do mesmo software por vários clientes e empresas de forma simultânea:
Visão multi-inquilino. Fonte: "Architecture Strategies for Catching the Long Tail" de Frederick Chong and Gianpaolo Carraro
No primeiro quadrante, existe uma solução direcionada para cada inquilino. Isso garante completo atendimento das demandas do cliente, mas custo elevado devido a grande customização e disponibilidade de recursos individuais.
No segundo quadrante, é possível observar uma única solução direcionada para todos os inquilinos separadamente. Não há nenhuma customização presente garantindo menor custo de manutenção.
No terceiro quadrante, existe uma única solução para todos os inquilinos e, diferente do quadrante dois, esse solução é única e disponivel para todos. Assim, podemos identificar nesse quadrante, uma solução já multi-inquilino (multi-tenant), apresentando total compartilhamento de recursos.
No quarto quadrante, o atendimento é diferenciado para inquilinos que exigem elevada demanda de recursos, havendo uma carga balanceada na infra-estrutura do provedor da solução SaaS (tenant load balancer).
A partir dos elementos descritos acima, uma arquitetura de alto nível para um modelo SaaS é proposta abaixo:
Essa visão exige uma arquitetura diferenciada, assim como uma discussão seguinte sobre os modelos de multi-inquilino para o banco de dados. Algumas opções possíveis são:
- bases de dados separadas por inquilino;
- mesma base de dados, com inquilinos separados por schemas;
- mesma base de dados, com inquilinos com schemas compartilhados, etc.;
Alguns dos principais benefícios são:
- Implementação imediato
- Baixos custos
- Não é necessário treinar pessoas
- Acesso móvel
- Suporte on-line
- Sistema completo
- Não requer servidor
- Backup automatizado
- ROI (Retorno Sobre o Investimento) mais rápido
- Blindagem de acesso
- Soluções personalizadas
- Não há licenciamento
- Não há necessidade de manutenção pelo usuário
Referências:
- Chris Anderson – The Long Tail: Why the Future of Business is Selling Less of More
- Frederick Chong and Gianpaolo Carraro – “Architecture Strategies for Catching the Long Tail”
- Blog MSDN - http://blogs.msdn.com/


Gostei muito do seu site e da forma como vc referenciou as informações.
Estou precisando me aprofundar na arquitetura de Saas, se puder me ajudar ficarei grato.