SaaS 2, o que um livro sobre SaaS deveria ter?
“single instance, multi-tenancy is still a black art that only selected few have been able to master”
Esse post é rápido… mas é interessante.
Em SaaS is a journey, walk with us, Fred Chong (Arquiteto da Microsoft) indica o que seria interessante ter em um livro sobre SaaS. O melhor é que ele e seu amigo Gianpolo começaram a jornada produzir este livro. Então aí vai…
Sumário:
1. Introduction
* Definitions
* Differences from traditional ASP model
* SaaS value proposition
* Realizing SaaS = business model + application architecture + operation structure
2. Business Model
* Revenue and licensing model
o Additional services revenue: configuration and customization
* Sales compensation model
* Types of software services
* Designing SaaS SLA and contracts
3. Application Architecture Overview
* Instancing and multi-tenancy
* Comparisons of application architecture: on-premise, ASP, SaaS
* SaaS maturity model
* SaaS application architecture issues: identity, data, workflow, messaging, design for manageability, service-orientation, scaling, tenancy, meta-data, service consumption etc.
* Overview of SaaS capabilities and enablement architecture
4. Scaling 101
* Pools: thread, connections etc.
* Async
* Locks
* States
* UI/Presentation
5. Data Management
* Partitioning for scaling and performance
o Data partitioning schemes: Spatial, temporal, hashing etc., SQL Server 2005 support for data partitioning
o Data distribution patterns and functions
o Dynamic partitioning: re-partitioning growing database
* Data availability
o Replication strategy
6. Tenant Management
* Data model for tenant management
* Subscription Management
* Identity management
o Models
*
Delegated administration
*
Identity federation
*
Hybrid: e.g. federation for tenants and delegated admin for tenants’ customers.
7. Tenant Customization
* Meta data service for customization
* Approaches for extending application data model
* Approaches for UI customization
* Approaches for business process customization
* SaaS and system integrations modes:
o In house systems to SaaS integration (main app is in house)
o SaaS to in house systems integration (SaaS is the main app)
o SaaS with partial SaaS solution hosted on premise
o SaaS to SaaS integration
+ Direct
+ Hub-and-spoke through SaaS integration platform (like Salesforce’s AppForce)
8. Application and Data Security
* Common authentication schemes: username/pwd, certificates
* Application single sign-on
* Securing data transfer
o Application security session
o Session data integrity and privacy
o Transport vs. application level security
* Authorization
o Schemes: ACL, RBAC, business rules
o Policy management: distributed/resource, centralized
* Application security abstractions:
o Tokens, claims, security token services, security policies
* Trusted sub-system model for securing application tiers
* Identity context propagation
* Secret/key management: for application and tenants
* Data isolation schemes
o Database access control: RBAC, views etc.
o Partitioning:
+ Logical: tables, databases
+ Physical: disks
o Database encryption
9. Programmable Software Services
* Software service lifecycle
* Service versioning
* Service certification, registration and publication
* Software service registry
o Requirements
o Architecture
10. Programmable Software Service Consumption
* Function vs. data oriented services (web service vs. RSS vs. REST etc)
* Composite applications
* Tools and community framework
11. Instrumentation and Monitoring
* Types, goals and audience of instrumentation: infrastructure, application stack, business logic
* Instrumentation constructs: counters, events, rules, threshold, alerts
* Health monitoring
* Availability monitoring
* Business performance monitoring
12. Configuration Management
* Change management requirements
* Configuration management architecture
13. Metering
* Usage models
* Data model for each metering
* Usage tracking architecture
14. Infrastructure Security
* Network and firewall design
* Intrusion detection
* Protecting against viruses and worms
* Protecting against denial of service attacks
15. Operation Structure
* Provisioning
o Infrastructure
o Application
o Tenants
* Disaster recovery
* Billing
* Network operation center
* Call center
Appendix
* SaaS enablement roadmap: from on-premise and ASP to SaaS
o Scenarios and SaaS enablement strategy
* Enabling SaaS to on-premise solution migration
o Deploy existing SaaS solution and subscription to on-premise
o Need to de-mingle data to be hosted on-premise
Desafios no Negócio de Componentes de Software
Normalmente as pequisas sobre DBC (CBD?) focalizam em áreas técnicas, deixando de lado um importante desafio (talvez o mais importante…) que é a venda de componentes de software. Negligenciar esta área talvez tenha sido um dos grandes fatores para a lentidão no surgimento e aceitação dos mercados de componentes (ie. ComponentSource) e até hoje uma das grandes dificuldades para a migração de empresas que se baseiam em projetos para o mundo de produtos.
O artigo apresenta uma visão geral sobre o mercado de componentes, enfatizando as dificuldades (Software standardisation, lack of quality components…) e a diferença entre o modelo tradicional de desenvolvimento (Project) para o modelo adequado para componentes (Product). A maior contribuição do trabalho é um estudo empírico sobre as relações B2B entre Customers e Component Suppliers.
OBS.: Interessante a Tabela 1 que apresenta uma comparação entre Software Project Business X Software Product Business.
Visualizar White Paper (Nina Helander & Paulina Ulkuniemi)
Meu review: 7 – Interessante, mas muito confuso.
Talvez seja a dificuldade inicial de entrar em uma nova área.