SlideShare a Scribd company logo
Introduction to
Platform as a Service (PaaS)
Chris Haddad
Vice President Technology Evangelism
Follow me @cobiacomm
Read more about PaaS at http://blog.cobia.net/cobiacomm
Try StratosLive https://stratoslive.wso2.com/
Platform as a Service Criteria
• Goals and outcomes
• Cloud Characteristics
• What is Platform as a Service?
– Capabilities, Abstractions, and Scale
• Platform as a Service Reference Architecture
• Platform as a Service Evaluation Framework
• Key Metrics
• Quick Start Use Cases
PaaS Objectives for CIOs
Reduce time to
market
Avoid operating
expenses,
preserve capital
Rapidly deliver
new capabilities
Cost effectively
scale environment
to meet business
demand
Increase
operational
efficiency
Reduce data
center footprint
Re-use existing
investments
Provide access to
all devices,
customers, and
partners
Integrate with other
Web and Cloud
Applications
PaaS Objectives for Developers and
Infrastructure Specialists
• Ensure application satisfies consumer demand
while maximizing resource utilization
• Scale workload processing and increase
performance while minimizing infrastructure
spend
• Allocate, provision, monitor, manage, and
administer resources across multiple tenants,
nodes, and locations
• Deploy on preferred topology that meets
deterministic performance requirements (e.g.,
replication, utilization, latency, bandwidth, and
coherency)
4
What is Platform as a Service?
Cloud Characteristics and Architecture
Resource pooling
• Multi-tenancy
• Resource utilization
• Shared, virtual infrastructure
• Interoperability
On-
demand
self-service
• Flexible workload assignment
• Standard service offerings
• Quick startup and automation
Rapid
Elasticity
• Stateless services
• Rapid provisioning
• Flexible topology
• High Quality of Service
Measured service
or pay per use
• Fine-grained
metering
• Billing
• Reporting
• Resource monitoring
• Resource management
• Performance management
• Traffic orchestration
• Metering
• Reporting
• Billing
• Service catalogue
• Service tiers
• Demand and capacity
management
• Lifecycle management
• Infrastructure Authority
integration
• Self service configuration
• Automated provisioning
• Policy configuration
• Process automation
Dev Ops
Tooling
Automated
Governance
Service Level
Management
Consumption
based Funding
Platform as a Service Capabilities
PaaS Abstraction Levels
• Users, workspaces, transactions
• Services, channels, API
Component
Services
• Application session, frameworks
• Application instance, .war files
• Installing application
Application
Platform
• Command line interface, bash shell
• Machine size, JVM configuration
• Installing infrastructure
Hardware
Infrastructure
Resource
Tier
Cloud Scale
Functional
Role
Client Tier
Integration Services
Integration Services
Resource
Services
Functional
Role
Presentation and
Mashups
Functional
Role
Functional
code
Presentation
Role
Presentation and
Mashups
Presentation and
Mashups
Resource
Services
Private
Applications
Public Cloud Services
Business
Proces
Business
Process
Business
ProcessBusiness
Process and
Business Rules
Bridging Clouds
Mobile
Application
Application Portfolio
Hybrid
Platform
Services
Presentation Services
Resources Services
Functional
Services
Business
Process and
Rules Services
Integration Services
Composite
Application
Business Service Portfolio
Integration Services
Cloud
API
Endpoint
Infrastructure as a
Service (IaaS)
SaaS Application
Web
application
Endpoint
Vertical Climb
Vertical Application 3
Managed
byPaaS
Vertical
Summit
OS/Hypervisor
Containers
Hardware
Programming Languages
Frameworks
App Source Code
App Data
Vertical
API
Domain Services
Domain Artifacts
App
Configuration
Domain Services
Domain Artifacts
App Source Code
App Data
App
Configuration
App Source Code
App Data
App
Configuration
Vertical Application 1 Vertical Application 2
Shared Middleware Services
Core Services in WSO2 Stratos
• All the services from Carbon
Servers in Multi-tenant mode:
– Enterprise Service Bus
– Application Server
– Data Services
– Business Process Management
– Governance
– Identity and Entitlement
– Rules and Complex Event
Processing
– Business Activity Monitoring
– Mashup and Portal
– Message Broker
Plus core cloud services
– Stratos Controller
– Elastic Load Balancer
– Ghost Deployer
– Column Storage Services
(CSS) and Relational Storage
Services (RSS)
• Based on Cassandra and
MySQL
– Distributed Cloud Logging
– Billing and Metering
– Google Apps Integration
– Deployment Synchronizer
(now with SVN support)
PaaS Evaluation Framework
• Cloud Characteristics
• Cloud Dimensions
• Production Ready
• DevOps Activities and Phases
• Cloud Architecture
• Platform Services
• Programming Model
PaaS Evaluation Framework
Cloud Characteristics
• On-demand self-service
• Rapid Elasticity
• Resource Pooling
• Measured service / pay-as-you go consumption
PaaS Evaluation Framework
Cloud Dimensions
• Sharing
– Private / Public / Community
• Responsibility
– Internal / External
• Location
– On-premise / outsourced
PaaS Evaluation Framework
Production Ready
• PaaS Maturity
• Suitability for enterprise and mission critical use
– Service level agreement (SLA) quality
– Quality of Service warranted by the service provider
• Service level management capabilities
– Resource monitoring and management
– Resource quota and performance management
– Traffic orchestration
PaaS Evaluation Framework
DevOps Activities and Phases
• Automated provisioning, self-service
configuration, continuous integration, continuous
delivery, automated release management,
incremental testing
• PaaS integration with on-premise software
development life-cycle tooling
• Automated governance including:
– Service catalogue and service tiers
– Demand and capacity management
– Life-cycle management
– Infrastructure authority integration
PaaS Evaluation Framework
Cloud Architecture
• Tenancy, dynamic discovery, and distributed cache
• Fine-grained metering, billing, and reporting of
business entities, activities, and interactions
• Scale discrete application service instances instead of
scaling monolithic application instances
• Shared nothing architecture, Thirteen Dwarf
Patterns, parallel processing, resource coordination
• Cloud service provisioning and load balancer
PaaS Evaluation Framework
Platform Services
• Presentation services
• Application and service container services
• Business process and business rule services
• Integration services and message brokers
• Composite application services (i.e. mashups and orchestration)
• Complex event processing services
• Data access and persistence services
• Development governance
• Application life-cycle management
• Automated run-time governance services
• Policy registry and repository services
• Identity management
• Security
• Service level management
• Compute, network, and storage infrastructure services
PaaS Evaluation Framework
Programming Model
• Actor model (i.e. message passing instead of function
invocation
• RESTful interactions
• Dynamic recoverability
• Consensus protocols
• Asynchronous rather than synchronous interactions
• Shared nothing architecture
• Data partitioning and sharding
• Federated data queries
• Service orchestration
• Functional programming
• MapReduce
Platform Comparison
Stratos
Google App
Engine
Amazon
Beanstalk
Heroku
CloudBees
RUN@Cloud
Red Hat
OpenShift
VMWare
CloudFoundry
Cloud Characteristics 5 7 3 3 3 3 3
Cloud Dimensions 7 3 3 3 3 3 7
Production Ready 5 5 5 0 3 0 0
DevOps activities and
phases 5 2 2 2 7 5 5
Cloud Architecture 5 7 3 3 3 3 3
Platform Services 10 4 4 2 2 2 2
Programming Model 2 5 1 1 1 1 1
http://blog.cobia.net/cobiacomm/2011/11/02/paas-evaluation-
framework-for-cios-and-architects/
Key Metrics
• Foundation
• Time to create new application environment
• Time to redeploy application
• Optimize
• Minimum and maximum scale
• Scale frequency (i.e. time to scale up/down)
• Transformation
• Time and effort required integrating business process, event
processor – creating a complex app.
• Time and effort required to apply policy across tenant(s)
• Cost to operate application per user or transaction
Quick Start Use Cases
• DevOps Tooling and On-demand self-service
• Automated Governance
• Service level management and elastic scale
• Consumption based pricing and billing
Quick Start Use Cases
DevOps Tooling and On-demand self-service
• Use Cases
– Rapidly provision application environment
– Rapidly provision application tenant
– Allocate, provision, monitor, manage, and administer
resources across multiple tenants, nodes, and
locations
– Develop complex, composite integrated applications
• Key metrics
– Time to create new application environment
– Time to redeploy application
Quick Start Use Cases
Automated Governance
• Use Cases
– Create users and configure rights
– Deploy on preferred topology that meets deterministic
performance requirements (e.g., replication, utilization,
latency, bandwidth, and coherency)
– Create service throttling and security governance (XACML)
policies
• Key Metrics
– Time and effort required integrating business process,
event processor – creating a complex app.
– Time and effort required to apply policy across tenant(s)
Quick Start Use Cases
Service level management and elastic scale
• Use cases
– Ensure application satisfies consumer demand while
maximizing resource utilization
• Scale workload processing and increase performance while
minimizing infrastructure spend
– Load test application service
– Demonstrate multi-tenant web application
• Key Metrics
– Minimum and maximum scale
– Scale frequency (i.e. time to scale up/down)
Quick Start Use Cases
Consumption based pricing and billing
• Use cases
– View service logs
– View bill by business value
• Key Metric
– Cost to operate application per user or transaction
Resources
• Try StratosLive right now:
– https://stratoslive.wso2.com/
• Read about Stratos:
– http://wso2.com/cloud/stratos/
– Source Download available
• White Paper
– Selecting Platform as a Service
• Blog Articles
– What is Platform as a Service?
– PaaS Evaluation Framework for CIOs and Architects
– How to simplify Platform as a Service Complexity
– Searching for Cloud Reference Architecture
• Contact us:
– bizdev@wso2.com
Introduction to PaaS
One Enterprise Platform wherever you need it:
WSO2 Carbon 
On Premise:
• In Production at Fortune
1000 companies
• Handling 1bn
transactions/day
• The only modular open
source middleware stack
• Everything you need to
build Enterprise
Applications
• From Core Logic to Mobile
Apps
WSO2 Stratos 
In Private Cloud:
• A single managed platform
• Elastic, Self-Service, Multi-
tenant
• Accelerates your private
cloud beyond virtual
machines to provide real
Enterprise Cloud Services
• Use only what you need
WSO2 StratosLive
As a Service in the Public
Cloud:
• We manage, run and
maintain your application
platform
• Complete Pay as you Use
• ESB-as-a-Service
• Governance-as-a-Service
• Identity-as-a-Service
• With appropriate SLAs and
simple monthly billing
• A single code continuum
• Completely modular based on OSGi
• Complete Enterprise SOA Architecture:
• AppServer, ESB, Governance, Portal, BPMS, BAM, Identity and more
• Supported 24x7 with phone, web and full SLAs

More Related Content

PPTX
Paas ppt
PPTX
Platform as a Service (PaaS)
PPTX
PPTX
Cloud computing security issues and challenges
PDF
Cloud Security And Privacy
PPTX
Top 10 cloud service providers
PPTX
Introduction of AWS KMS
Paas ppt
Platform as a Service (PaaS)
Cloud computing security issues and challenges
Cloud Security And Privacy
Top 10 cloud service providers
Introduction of AWS KMS

What's hot (20)

PPTX
Understanding Cloud Computing
PDF
Cloud computing saas
PPSX
Zero-Trust SASE DevSecOps
PPTX
Full cloud computing ppt
PDF
Cloudwatch: Monitoring your AWS services with Metrics and Alarms
PPTX
Cloud Security
PPTX
Iaas.paas.saas
PPTX
Cloud computing and its application in the world of net
PPTX
Cloud Computing
PPTX
CLOUD ARCHITECTURE AND SERVICES.pptx
PPT
Unit-I: Introduction to Cloud Computing
PPTX
Introduction to Amazon Web Services (AWS)
PPTX
SaaS Challenges & Security Concerns
PDF
NF102: Nutanix AHV Basics
ODP
Private Cloud Architecture
PPTX
Cloud computing(ppt)
PPTX
Cloud Computing Presentation
PDF
AWS RDS
PPTX
Hybrid Cloud and Its Implementation
Understanding Cloud Computing
Cloud computing saas
Zero-Trust SASE DevSecOps
Full cloud computing ppt
Cloudwatch: Monitoring your AWS services with Metrics and Alarms
Cloud Security
Iaas.paas.saas
Cloud computing and its application in the world of net
Cloud Computing
CLOUD ARCHITECTURE AND SERVICES.pptx
Unit-I: Introduction to Cloud Computing
Introduction to Amazon Web Services (AWS)
SaaS Challenges & Security Concerns
NF102: Nutanix AHV Basics
Private Cloud Architecture
Cloud computing(ppt)
Cloud Computing Presentation
AWS RDS
Hybrid Cloud and Its Implementation
Ad

Viewers also liked (20)

PDF
Platform as a Service (PaaS) - A cloud service for Developers
PDF
Cloud Computing - PaaS
ODP
Platform as a Service overview
PDF
Practical PaaS presentation
PPTX
Chap 4 platform as a service (paa s)
PDF
Transforming your business with PaaS
PDF
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
PDF
Tracxn Research: PaaS Landscape Report, August 2016
PDF
A Multi-Company Perspective: Enterprise Cloud and PaaS
PPTX
Chap 3 infrastructure as a service(iaas)
PPT
Platform as a Service (PaaS) Providers
PDF
PaaS is dead, Long live PaaS - Defrag 2016
PDF
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
PDF
Tracxn research - PaaS Landscape, December 2016
PPTX
Basic BGP Configuration
PPTX
Java PaaS comparison
PPT
Software Association of Oregon Cloud Computing Presentation
PDF
What is your PaaS
KEY
Django deployment with PaaS
PPTX
Chap 8 graph
Platform as a Service (PaaS) - A cloud service for Developers
Cloud Computing - PaaS
Platform as a Service overview
Practical PaaS presentation
Chap 4 platform as a service (paa s)
Transforming your business with PaaS
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Tracxn Research: PaaS Landscape Report, August 2016
A Multi-Company Perspective: Enterprise Cloud and PaaS
Chap 3 infrastructure as a service(iaas)
Platform as a Service (PaaS) Providers
PaaS is dead, Long live PaaS - Defrag 2016
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
Tracxn research - PaaS Landscape, December 2016
Basic BGP Configuration
Java PaaS comparison
Software Association of Oregon Cloud Computing Presentation
What is your PaaS
Django deployment with PaaS
Chap 8 graph
Ad

Similar to Introduction to PaaS (20)

PPTX
Achieve business agility with Cloud APIs, Cloud-aware Apps, and Cloud DevOps ...
PDF
Architecting SaaS
PDF
Application Portfolio Migration v1
PDF
Paa sing a java ee 6 application kshitiz saxena
PDF
Building A Cloud Platform
PPTX
Coud discovery chap 3
PPT
Radu crahmaliuc 23feb2012
PPTX
Stratos AppFactory in the Cloud tampa meetup-2013-09
PDF
Cloud Services Integration Automation-External
PPTX
Redefining business delivery with cloudxchange.io
PPTX
Cloud Workload Suitability
PPTX
Services Saas,Pass,Iaas
PDF
Hot Cloud Companies: Tap In Systems - The Problem: Managing Cloud Complexities
PPTX
cloud consumer perspective from IAAS security
PDF
Achieve business agility with Cloud APIs, Cloud-aware Apps, and Cloud DevOps ...
PPTX
Build and use a DevOps driven Migration Pipeline
PDF
Cloud for share point
PDF
Building a SaaS using WSO2 Stratos
PPTX
Cloud presentation NELA
PPTX
Cloud computing power point presentation
Achieve business agility with Cloud APIs, Cloud-aware Apps, and Cloud DevOps ...
Architecting SaaS
Application Portfolio Migration v1
Paa sing a java ee 6 application kshitiz saxena
Building A Cloud Platform
Coud discovery chap 3
Radu crahmaliuc 23feb2012
Stratos AppFactory in the Cloud tampa meetup-2013-09
Cloud Services Integration Automation-External
Redefining business delivery with cloudxchange.io
Cloud Workload Suitability
Services Saas,Pass,Iaas
Hot Cloud Companies: Tap In Systems - The Problem: Managing Cloud Complexities
cloud consumer perspective from IAAS security
Achieve business agility with Cloud APIs, Cloud-aware Apps, and Cloud DevOps ...
Build and use a DevOps driven Migration Pipeline
Cloud for share point
Building a SaaS using WSO2 Stratos
Cloud presentation NELA
Cloud computing power point presentation

More from Chris Haddad (20)

PPTX
High Productivity Platform
PPTX
Lightweight ESB Alternatives
PPTX
Eight Miles High: Build Cloud-native and Cloud-aware Systems
PPT
Cloaking Devices, CyberPersonas, and Neutral Zones
PPTX
Steampunk App Servers in
PPTX
Bring N-Tier Apps to containers 2015 ContainerCon
PDF
Overcome DevOps Adoption Barriers to Accelerate Software Delivery
PDF
Who is Accessing My API?
PPTX
Deploy at scale with CoreOS Kubernetes and Apache Stratos
PPT
Merging microservices architecture with SOA practices
PPT
Connected Architecture Fabric Creating a Connected World
PPTX
Establishing SOA Focused Enterprise Architecture
PPTX
Java PaaS Apache Stratos
PPTX
Spreadsheets To API
PPT
Six Steps To Build A Successful API
PPTX
Shadow IT Risk and Reward
PPTX
Gaining Startup Speed with DevOps PaaS
PDF
Enabling cloud-native, complex enterprise development and deployment in the C...
PPT
Business driven IT design
PPT
SOA and API Convergence Strategy and Tactics
High Productivity Platform
Lightweight ESB Alternatives
Eight Miles High: Build Cloud-native and Cloud-aware Systems
Cloaking Devices, CyberPersonas, and Neutral Zones
Steampunk App Servers in
Bring N-Tier Apps to containers 2015 ContainerCon
Overcome DevOps Adoption Barriers to Accelerate Software Delivery
Who is Accessing My API?
Deploy at scale with CoreOS Kubernetes and Apache Stratos
Merging microservices architecture with SOA practices
Connected Architecture Fabric Creating a Connected World
Establishing SOA Focused Enterprise Architecture
Java PaaS Apache Stratos
Spreadsheets To API
Six Steps To Build A Successful API
Shadow IT Risk and Reward
Gaining Startup Speed with DevOps PaaS
Enabling cloud-native, complex enterprise development and deployment in the C...
Business driven IT design
SOA and API Convergence Strategy and Tactics

Recently uploaded (20)

PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Empathic Computing: Creating Shared Understanding
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Approach and Philosophy of On baking technology
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Electronic commerce courselecture one. Pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Cloud computing and distributed systems.
DOCX
The AUB Centre for AI in Media Proposal.docx
PPT
Teaching material agriculture food technology
PDF
Machine learning based COVID-19 study performance prediction
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
MYSQL Presentation for SQL database connectivity
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Empathic Computing: Creating Shared Understanding
Per capita expenditure prediction using model stacking based on satellite ima...
solutions_manual_-_materials___processing_in_manufacturing__demargo_.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Approach and Philosophy of On baking technology
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Electronic commerce courselecture one. Pdf
Big Data Technologies - Introduction.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
breach-and-attack-simulation-cybersecurity-india-chennai-defenderrabbit-2025....
Review of recent advances in non-invasive hemoglobin estimation
Advanced methodologies resolving dimensionality complications for autism neur...
Cloud computing and distributed systems.
The AUB Centre for AI in Media Proposal.docx
Teaching material agriculture food technology
Machine learning based COVID-19 study performance prediction
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
MYSQL Presentation for SQL database connectivity

Introduction to PaaS

  • 1. Introduction to Platform as a Service (PaaS) Chris Haddad Vice President Technology Evangelism Follow me @cobiacomm Read more about PaaS at http://blog.cobia.net/cobiacomm Try StratosLive https://stratoslive.wso2.com/
  • 2. Platform as a Service Criteria • Goals and outcomes • Cloud Characteristics • What is Platform as a Service? – Capabilities, Abstractions, and Scale • Platform as a Service Reference Architecture • Platform as a Service Evaluation Framework • Key Metrics • Quick Start Use Cases
  • 3. PaaS Objectives for CIOs Reduce time to market Avoid operating expenses, preserve capital Rapidly deliver new capabilities Cost effectively scale environment to meet business demand Increase operational efficiency Reduce data center footprint Re-use existing investments Provide access to all devices, customers, and partners Integrate with other Web and Cloud Applications
  • 4. PaaS Objectives for Developers and Infrastructure Specialists • Ensure application satisfies consumer demand while maximizing resource utilization • Scale workload processing and increase performance while minimizing infrastructure spend • Allocate, provision, monitor, manage, and administer resources across multiple tenants, nodes, and locations • Deploy on preferred topology that meets deterministic performance requirements (e.g., replication, utilization, latency, bandwidth, and coherency) 4
  • 5. What is Platform as a Service?
  • 6. Cloud Characteristics and Architecture Resource pooling • Multi-tenancy • Resource utilization • Shared, virtual infrastructure • Interoperability On- demand self-service • Flexible workload assignment • Standard service offerings • Quick startup and automation Rapid Elasticity • Stateless services • Rapid provisioning • Flexible topology • High Quality of Service Measured service or pay per use • Fine-grained metering • Billing • Reporting
  • 7. • Resource monitoring • Resource management • Performance management • Traffic orchestration • Metering • Reporting • Billing • Service catalogue • Service tiers • Demand and capacity management • Lifecycle management • Infrastructure Authority integration • Self service configuration • Automated provisioning • Policy configuration • Process automation Dev Ops Tooling Automated Governance Service Level Management Consumption based Funding Platform as a Service Capabilities
  • 8. PaaS Abstraction Levels • Users, workspaces, transactions • Services, channels, API Component Services • Application session, frameworks • Application instance, .war files • Installing application Application Platform • Command line interface, bash shell • Machine size, JVM configuration • Installing infrastructure Hardware Infrastructure
  • 9. Resource Tier Cloud Scale Functional Role Client Tier Integration Services Integration Services Resource Services Functional Role Presentation and Mashups Functional Role Functional code Presentation Role Presentation and Mashups Presentation and Mashups Resource Services Private Applications Public Cloud Services Business Proces Business Process Business ProcessBusiness Process and Business Rules
  • 10. Bridging Clouds Mobile Application Application Portfolio Hybrid Platform Services Presentation Services Resources Services Functional Services Business Process and Rules Services Integration Services Composite Application Business Service Portfolio Integration Services Cloud API Endpoint Infrastructure as a Service (IaaS) SaaS Application Web application Endpoint
  • 11. Vertical Climb Vertical Application 3 Managed byPaaS Vertical Summit OS/Hypervisor Containers Hardware Programming Languages Frameworks App Source Code App Data Vertical API Domain Services Domain Artifacts App Configuration Domain Services Domain Artifacts App Source Code App Data App Configuration App Source Code App Data App Configuration Vertical Application 1 Vertical Application 2
  • 13. Core Services in WSO2 Stratos • All the services from Carbon Servers in Multi-tenant mode: – Enterprise Service Bus – Application Server – Data Services – Business Process Management – Governance – Identity and Entitlement – Rules and Complex Event Processing – Business Activity Monitoring – Mashup and Portal – Message Broker Plus core cloud services – Stratos Controller – Elastic Load Balancer – Ghost Deployer – Column Storage Services (CSS) and Relational Storage Services (RSS) • Based on Cassandra and MySQL – Distributed Cloud Logging – Billing and Metering – Google Apps Integration – Deployment Synchronizer (now with SVN support)
  • 14. PaaS Evaluation Framework • Cloud Characteristics • Cloud Dimensions • Production Ready • DevOps Activities and Phases • Cloud Architecture • Platform Services • Programming Model
  • 15. PaaS Evaluation Framework Cloud Characteristics • On-demand self-service • Rapid Elasticity • Resource Pooling • Measured service / pay-as-you go consumption
  • 16. PaaS Evaluation Framework Cloud Dimensions • Sharing – Private / Public / Community • Responsibility – Internal / External • Location – On-premise / outsourced
  • 17. PaaS Evaluation Framework Production Ready • PaaS Maturity • Suitability for enterprise and mission critical use – Service level agreement (SLA) quality – Quality of Service warranted by the service provider • Service level management capabilities – Resource monitoring and management – Resource quota and performance management – Traffic orchestration
  • 18. PaaS Evaluation Framework DevOps Activities and Phases • Automated provisioning, self-service configuration, continuous integration, continuous delivery, automated release management, incremental testing • PaaS integration with on-premise software development life-cycle tooling • Automated governance including: – Service catalogue and service tiers – Demand and capacity management – Life-cycle management – Infrastructure authority integration
  • 19. PaaS Evaluation Framework Cloud Architecture • Tenancy, dynamic discovery, and distributed cache • Fine-grained metering, billing, and reporting of business entities, activities, and interactions • Scale discrete application service instances instead of scaling monolithic application instances • Shared nothing architecture, Thirteen Dwarf Patterns, parallel processing, resource coordination • Cloud service provisioning and load balancer
  • 20. PaaS Evaluation Framework Platform Services • Presentation services • Application and service container services • Business process and business rule services • Integration services and message brokers • Composite application services (i.e. mashups and orchestration) • Complex event processing services • Data access and persistence services • Development governance • Application life-cycle management • Automated run-time governance services • Policy registry and repository services • Identity management • Security • Service level management • Compute, network, and storage infrastructure services
  • 21. PaaS Evaluation Framework Programming Model • Actor model (i.e. message passing instead of function invocation • RESTful interactions • Dynamic recoverability • Consensus protocols • Asynchronous rather than synchronous interactions • Shared nothing architecture • Data partitioning and sharding • Federated data queries • Service orchestration • Functional programming • MapReduce
  • 22. Platform Comparison Stratos Google App Engine Amazon Beanstalk Heroku CloudBees RUN@Cloud Red Hat OpenShift VMWare CloudFoundry Cloud Characteristics 5 7 3 3 3 3 3 Cloud Dimensions 7 3 3 3 3 3 7 Production Ready 5 5 5 0 3 0 0 DevOps activities and phases 5 2 2 2 7 5 5 Cloud Architecture 5 7 3 3 3 3 3 Platform Services 10 4 4 2 2 2 2 Programming Model 2 5 1 1 1 1 1 http://blog.cobia.net/cobiacomm/2011/11/02/paas-evaluation- framework-for-cios-and-architects/
  • 23. Key Metrics • Foundation • Time to create new application environment • Time to redeploy application • Optimize • Minimum and maximum scale • Scale frequency (i.e. time to scale up/down) • Transformation • Time and effort required integrating business process, event processor – creating a complex app. • Time and effort required to apply policy across tenant(s) • Cost to operate application per user or transaction
  • 24. Quick Start Use Cases • DevOps Tooling and On-demand self-service • Automated Governance • Service level management and elastic scale • Consumption based pricing and billing
  • 25. Quick Start Use Cases DevOps Tooling and On-demand self-service • Use Cases – Rapidly provision application environment – Rapidly provision application tenant – Allocate, provision, monitor, manage, and administer resources across multiple tenants, nodes, and locations – Develop complex, composite integrated applications • Key metrics – Time to create new application environment – Time to redeploy application
  • 26. Quick Start Use Cases Automated Governance • Use Cases – Create users and configure rights – Deploy on preferred topology that meets deterministic performance requirements (e.g., replication, utilization, latency, bandwidth, and coherency) – Create service throttling and security governance (XACML) policies • Key Metrics – Time and effort required integrating business process, event processor – creating a complex app. – Time and effort required to apply policy across tenant(s)
  • 27. Quick Start Use Cases Service level management and elastic scale • Use cases – Ensure application satisfies consumer demand while maximizing resource utilization • Scale workload processing and increase performance while minimizing infrastructure spend – Load test application service – Demonstrate multi-tenant web application • Key Metrics – Minimum and maximum scale – Scale frequency (i.e. time to scale up/down)
  • 28. Quick Start Use Cases Consumption based pricing and billing • Use cases – View service logs – View bill by business value • Key Metric – Cost to operate application per user or transaction
  • 29. Resources • Try StratosLive right now: – https://stratoslive.wso2.com/ • Read about Stratos: – http://wso2.com/cloud/stratos/ – Source Download available • White Paper – Selecting Platform as a Service • Blog Articles – What is Platform as a Service? – PaaS Evaluation Framework for CIOs and Architects – How to simplify Platform as a Service Complexity – Searching for Cloud Reference Architecture • Contact us: – bizdev@wso2.com
  • 31. One Enterprise Platform wherever you need it: WSO2 Carbon  On Premise: • In Production at Fortune 1000 companies • Handling 1bn transactions/day • The only modular open source middleware stack • Everything you need to build Enterprise Applications • From Core Logic to Mobile Apps WSO2 Stratos  In Private Cloud: • A single managed platform • Elastic, Self-Service, Multi- tenant • Accelerates your private cloud beyond virtual machines to provide real Enterprise Cloud Services • Use only what you need WSO2 StratosLive As a Service in the Public Cloud: • We manage, run and maintain your application platform • Complete Pay as you Use • ESB-as-a-Service • Governance-as-a-Service • Identity-as-a-Service • With appropriate SLAs and simple monthly billing • A single code continuum • Completely modular based on OSGi • Complete Enterprise SOA Architecture: • AppServer, ESB, Governance, Portal, BPMS, BAM, Identity and more • Supported 24x7 with phone, web and full SLAs

Editor's Notes

  • #2: Platform as a Service (PaaS) can transform your development, governance, and service level management activities. PaaS can serve as a solid foundation for running IT as a business, increasing agility, optimizing budgets, and reducing time to market. IT professionals require a clear adoption roadmap and evaluation framework, which maximizes Cloud characteristics, adds architecture components, enhances infrastructure capabilities, and improves IT practices.   Chris Haddad will explain cloud characteristics, cloud architecture, and Platform as a Service (PaaS) capabilities. He will describe: How to evaluate Platform as a Service offerings How to establish a roadmap guiding PaaS projects How to quickly deliver a proof of concept demonstrating Platform as a Service benefits
  • #4: The company's cloud adoption and legacy modernization strategies will dictate relative priorities of their application migration goals. Rapidly deliver new capabilities Provide access to all devices, customers, and partners Integrate with other Web and Cloud applications Reduce time to market Re-use existing investments Cost effectively scale environment to meet business demand Avoid operating expenses and preserve capital Increase operational efficiency Reduce data center footprint
  • #5: What do I need to learn? Determine how to allocate, provision, monitor, manage, and administer resources across multiple tenants Manage resource capacity to ensure consumer demand is satisfied while maximizing resource utilization Scale workload processing while minimizing infrastructure spend
  • #6: Platform as a Service resides within the space between Software as a Service (SaaS) and Infrastructure as a Service (IaaS). IaaS delivers basic network, storage, and compute- processing capabilities as standardized, scalable service offerings. Example IaaS offerings include Amazon EC2/S3, Windows Azure VM Role, and RackSpace Cloud Servers). Software as a Service delivers business software capabilities (e.g. expense reporting, logistics, benefits enrollment) and information feeds as online web applications and web services. Pioneered in the early 2000’s, SaaS was used to by independent software vendors to efficiently deliver an application without requiring on-premise installation, remote updates, and cost prohibitive instance management. Platform as a Service is application middleware offered as a service to developers, integrators, and architects. Infrastructure as a Service offers development team a bare-bones infrastructure environment, which requires adding middleware, application frameworks, and infrastructure services (i.e. identity, entitlement, application logging). IaaS encapsulates hardware complexity and applies operational best practices. Operation teams create IaaS Clouds by applying virtualization, automation, and standardization to hardware provisioning and allocation tasks. As teams look to apply provisioning and automation to the application platform, interest in DevOps has grown. The DevOps movement creates a collaborative environment bridging development and operation team members. DevOps enables team members to jointly design, build, and deploy business application and service solutions. The environment closes the gap between business requirements, policies, available run- time resources, and solution development. Development and operation teams use Platform as a Service to design, build, and deliver customized applications or information services. Instead of relying on standardized SaaS, teams using PaaS have more control over solution architecture, quality of service, user experience, data models, identity, integration, and business logic. PaaS offerings often support DevOp practices, which include self-service, automated provisioning, continuous integration, and continuous delivery. Figure 1 illustrates the Platform as a Service space, which incorporates IaaS DevOps practices and increases solution customization options. IaaS could be considered an unfinished house requiring appliances, cabinetry, and fixtures. At the other spectrum extreme, SaaS offers a fully furnished dwelling with little customization. Even if purple dotted lime décor is not your personal style, a SaaS may require you to sit on the purple dotted lime green couch. Alternatively, a PaaS offers a finished house with an array of personalized furniture choices. Because the industry broadly defines PaaS as the level above hardware infrastructure and below business applications, development teams do not commonly have clear comparison criteria to intelligently evaluate frameworks or determine adoption benefits. At a minimum, PaaS offerings differ from traditional application platforms by shielding teams from direct infrastructure ownership, management, and complexity. Figure 1. Relationship between Platform as a Service and other Cloud service layers
  • #7: To maximize business benefit, PaaS offerings should significantly exhibit essential Cloud characteristics. The NIST Draft – Cloud Computing Synopsis and Recommendations defines Cloud characteristics as: • On-demand self-service • Broad network access • Resource pooling • Rapid elasticity • Measured service Measured service or pay per use The first Cloud characteristic, measured service, enables pay-as-you-go consumption models and user subscription to metered services. Usage is monitored, and the system generates bills based on charging model. To close the perception gap between business end-users and IT teams, the Cloud solution should bill for business value or business metrics instead of billing for IT resources. Business end-users do not easily correlate business value with an invoice for CPU time, network I/O, or data storage bytes. In contrast, business focused IT teams communicate value and charges based on number of users, processed forms, received marketing pieces, or sales transactions. A cloud native PaaS supports monitoring, metering, and billing based on business oriented entities. Rapid Elasticity A stateful monolithic application server cluster connected to a relational database does not efficiently scale with rapid elastically. Dynamic discoverability and rapid provisioning can instantiate processing and message nodes across a flexible and distributed topology. Applications exposing stateless services (or where state is transparently cached and available to instances) will seamlessly expand and contract to execute on available resources. A cloud native PaaS will interoperate with cloud management components to coordinate spinning up and tearing down instances based on user, message, and business transaction load in addition to raw infrastructure load (i.e. CPU and memory utilization). Resource Pooling Development and operation teams are familiar with resource pooling. Platform environments commonly pool memory, code libraries, database connections, and resource bundles for use across multiple requests or application instances. But because hardware isolation has traditionally been required to enforce quality of service and security, hardware resource utilization has traditionally been extremely low (~5-15%). While virtualization is often used to increase application-machine density and raise machine utilization, virtualization efforts often result in only (~50-60%) utilization. With PaaS level multi-tenancy, deterministic performance, and application container level isolation, an organization could possible shrink it’s hardware footprint by half. Sophisticated PaaS environments allocate resources and limit usage based on policy and context. The environment may limit usage by throttling messages, time slicing resource execution, or queuing demand.   Integration and SOA run-time infrastructure supports the resource sharing and interoperability required to deliver effective resource pools. As teams start to pool resources beyond a single Cloud environment, integration is required to merge disparate identities, entitlements, policies, and resource models. As teams start to deliver application capabilities as Cloud services, a policy aware SOA run-time infrastructure pools service instances, manages service instance lifecycle, and mediates access. On-demand self-service On-demand self-service requires infrastructure automation to flexibly assign workloads and decrease provisioning periods. If teams excessively customize an environment, they will increase time to market, lower resource pooling, and create a complex environment, which is difficult to manage and maintain. Users should predominantly subscribe to standard platform service offerings, and your team should minimize exceptions.
  • #8: Some solution architects find Cloud characteristics and supporting PaaS attributes too abstract and infrastructure focused. Architects may be more interested in delivering measurable business value, shielding IT personnel from complex dependencies, and deliver a productive development and operations (i.e. DevOps) environment. The following PaaS capabilities (See Figure 4) are used to achieve these objectives: DevOps Tooling Automated Governance Service Level Management Consumption based pricing   Figure 4: Platform as a Service (PaaS) Capabilities and supporting practices   DevOps Tooling DevOps tooling creates an environment fostering collaboration between development and operations team members. Practice and tooling enable teams to implement self-service configuration, automated provisioning, policy configuration, and process automation practices which bridge the design, build, deploy, and manage phases within the software development life-cycle. By integrating DevOps tooling with on-demand resource instances, teams can reduce time to market and increase agility. Automated Governance Governance is a practice, which defines policies, people, and processes. Effective governance mitigates risks, improves performance, and facilitates correct actions. Automated governance enables application and infrastructure services to efficiently scale across numerous consumers and providers while effectively monetizing, maintaining, and securing assets and consumer-provider interactions. By publishing a service catalogue offering tiered levels of service, teams can promote standard offerings that meet customer requirements. By streamlining access and approval, automated governance encourages customers to choose standard offerings and reduce cost. Scaling a Cloud environment while right-sizing available capacity is non-trivial, and the infrastructure must support demand management and capacity management activities. When organizations move beyond their first Cloud service release, automated lifecycle management becomes a predominant concern. To effectively manage the service lifecycle, the infrastructure must report on service versions, subscribed consumers, and usage trends. In the run-time environment, an infrastructure authority component makes resource allocation decisions, which are enforced by service level management components. Service Level Management Service level management enforces governance policies. PaaS infrastructure should integrate service level management activities throughout the solution stack (i.e. network, processing, storage, managed code container, application platform engines, and application logic). Resource monitoring, resource management, performance management, and traffic orchestration must monitor, manage, and optimize machine node instances, message routing, application service location, tenant security, and session state. Intelligent service level management on Cloud native PaaS infrastructure has the ability to raise infrastructure utilization while maintaining quality of service. Consumption Based Pricing Today, cloud consumption based pricing reflects IT asset monetization (e.g. machine instance per hour, network I/O, storage bytes). However, business users don’t really care how many instances are running in the Cloud. Business users care about business entities, business activity performance, and associated cost. Table 1 below illustrates various pricing units. For example, the number of market leads generated by a marketing piece, or cost to process an insurance policy. Decoupling metering and billing from IT assets and shifting the reporting model to focus on business activity and holistic IT cost will positively change the IT investment conversation. Coupling multi-tenant metering and billing with business activity monitoring and reporting will facilitate the shift.   “Cloud consumers of PaaS can employ the tools and execution resources provided by cloud providers to develop, test, deploy and manage the applications hosted in a cloud environment. PaaS consumers can be application developers who design and implement application software, application testers who run and test applications in cloud-based environments, application deployers who publish applications into the cloud, and application administrators who configure and monitor application performance on a platform. PaaS consumers can be billed according to, processing, database storage and network resources consumed by the PaaS application, and the duration of the platform usage.” Source: http://collaborate.nist.gov/twiki-cloud-computing/pub/CloudComputing/ReferenceArchitectureTaxonomy/NIST_SP_500-292_-_090611.pdf “For PaaS, the Cloud Provider manages the computing infrastructure for the platform and runs the cloud software that provides the components of the platform, such as runtime software execution stack, databases, and other middleware components. The PaaS Cloud Provider typically also supports the development, deployment and management process of the PaaS Cloud Consumer by providing tools such as integrated development environments (IDEs), development version of cloud software, software development kits (SDKs), deployment and management tools. The PaaS Cloud Consumer has control over the applications and possibly some the hosting environment settings, but has no or limited access to the infrastructure underlying the platform such as network, servers, operating systems (OS), or storage.” Source: http://collaborate.nist.gov/twiki-cloud-computing/pub/CloudComputing/ReferenceArchitectureTaxonomy/NIST_SP_500-292_-_090611.pdf
  • #9: Cloud computing, PaaS, and DevOps tooling is an opportunity to raise infrastructure abstraction. Figure 5 demonstrates the continuum from hardware infrastructure to business entities. DevOps tooling integrated with PaaS should shield developers from hardware infrastructure concerns and expose business entities. While Cloud washed PaaS does often facilitates hardware infrastructure configuration, enables rapid infrastructure installation, and delivers machine level access to Cloud machines, the Cloud washed PaaS environment does not shield development team members from hardware infrastructure complexity. Development team members must still be experts in machine sizing, Java Virtual Machine (JVM) configuration, and network topologies.   Some PaaS environments do hide hardware infrastructure concerns and instead expose application platform entities. Application developers can work with familiar application platform entities (i.e. .war files, application frameworks, application sessions), easily install applications on the Cloud, and configure application instances. Cloud environment exposing application platform entities will deliver a familiar application development model and provide the team with a high level of control.   With both the hardware infrastructure and application platform abstraction levels, teams can often forklift existing applications into the Cloud with few modifications. The migrated applications will run in the Cloud, but will not be purpose-built for the Cloud. If Cloud benefits are derived by delivering capabilities ‘as a service’, business entities should be exposed, composed, connected, consumed, and orchestrated as services. A business entity perspective is required to decompose applications and flexibly distribute the entities across Cloud nodes. PaaS environments exposing APIs, services, and communication channels deliver application building blocks at an appropriate abstraction level. Multi-tenancy is extended inside the application, and tenancy can be applied to users, workspaces, and transactions.
  • #10: A Platform as a Service offering should promote deploying applications onto a flexible, distributed topology. To maximize Cloud characteristics, a PaaS should facilitate scaling way out (e.g. across cloud zones, data centers) and automatically distribute fine-grained service component resources. Figure 6 presents a logical view of a cloud application executing across a distributed topology. The Integration Services PaaS service component is used to connect application service components and external cloud services by message passing, not function invocation. Integration services commonly include a Enterprise Service Bus (ESB), service governance registry, service gateways, and message brokers.   Figure 6: Cloudy Topology
  • #11: The diagram shows a target architecture for an application deployed on aPaaS. This architecture emphasizes the "services," not the technology stack. Not just infrastructure services like security, but application services (messaging, data stores, integration) have been factored out. Separate tiers into distinct executing units. Developers can only do topology tricks if they have service design principles baked into software design: clean separation of concerns, loose coupling and functionality refactored into services. Shared nothing is preferable. Importance of service contract and service interface is paramount. When you start to pull things apart like this you need well described interfaces. You want to normalize those interfaces — to avoid n (to power of m) relationships. Cloud target architecture blends patterns such as distributed caching, asynchronous messaging and parallel processing. When everything is a service, middleware itself is virtualized. A mind-set switch is required — IT becomes a service provider, not a technology provider. Public aPaaS providers like Google, Microsoft amd Amazon understand this. Using networked managed services instead of including them in an app/package on a VM, e.g., App Engine: BigTable, TaskQueues, Memcache; Azure: SQL Azure, AppFabric; Amazon: RDS and SQS. Burton has talked about this for 10 years as the Infrastructure Services Model. The "service" in aPaaS is not just services for operating the platform, but also a collection of application services for building systems.
  • #12: Definition: "Rebuild" your solution on a provider's application platform, while discarding code for an existing application. Rebuild requires rearchitecting the application for a new container (e.g., from Java to .NET). "Forward-compatible" or incompatible PaaS tends to result. Not all existing programming models, frameworks, and languages will be retained. What services am I consuming? An externally managed application platform to build and run applications. Audience: Professional and "citizen" developers. Examples: Building a force.com application for order management; Modernizing a C and FORTRAN financial risk calculation application by redesigning it in C#, then using Windows Azure platform libraries and tools to deploy it to Microsoft's cloud. Advantages: Developer productivity is improved with tools that allow application templates and data models to be customized, metadata-driven engines, and communities that supply prebuilt components. Transparent automatic scalability. Allows non-professional developers the opportunity to develop and deploy simple applications into production. Multitenancy means the provider manages upgrades and patches. Disadvantages: Lock-in and PaaS immaturity are the primary disadvantages. Abandoning familiar programming languages and frameworks means that second sourcing strategies to mitigate lock-in risk may not work.
  • #15: As an application platform in the Cloud, PaaS should facilitate Cloud characteristics (i.e. elastic scale, on-demand self service, resource pooling, and consumption based pricing). While all middleware vendors purport to deliver a platform product or service powering the Cloud, all PaaS offerings do not deliver appropriate granularity, abstraction, capabilities, simplicity, and solution breadth. When attempting to achieve Cloud characteristics, development teams often specify the following goals   Ensure an application satisfies consumer demand while maximizing resource utilization Scale workload processing and increase performance while minimizing infrastructure spend Allocate, provision, monitor, manage, and administer resources and policies across multiple tenants, nodes, and locations Rapidly deploy application and service components on a preferred topology that meets deterministic performance requirements (e.g., replication, utilization, latency, bandwidth, and coherency) To achieve these goals, PaaS offerings can be evaluated and compared across the following criteria categories: Cloud Characteristics Measures characteristics (i.e. on-demand self-service, resource pooling, rapid elasticity, and measured service) used to distinguish Cloud solutions from traditional application solutions. Cloud Dimensions Measures how widely the solution can be shared (i.e. private, public, community), who is responsible for PaaS environment management (i.e. internal, external), and where the PaaS is located (i.e. on-premise, outsourced) options Production Ready Measures PaaS maturity and suitability for enterprise, mission critical level use DevOps Activities and Lifecycle Phases Measures how to design, construct, deploy, and manage applications and services using DevOps practices (i.e. continuous integration, continuous delivery, automated release management, and incremental testing) Cloud Architecture Measures architecture principles, concepts, and patterns enabling applications to dynamically execute parallel workloads across a highly distributed environment Platform Services Measures how completely the PaaS satisfies development of complex applications by providing comprehensive application middleware components and services Programming Model Measures programming languages and frameworks, which facilitates building applications and services exhibiting Cloud characteristics
  • #16: Cloud characteristics define how the Cloud solution differs from traditional, terrestrial infrastructure. As defined by NIST, Cloudy solutions exhibit the following characteristics: On-demand self-service Resource pooling Rapid elasticity Measured service or pay per use   On-demand self-service breadth and depth are key evaluation sub-criteria. Can solution architects and end-users subscribe to applications, services, data repositories, and communication channels? Alternatively, is the on-demand self-service capability a lower level mechanism that can reserve and allocate hardware infrastructure (e.g. machine instances, storage)   Resource pools can be reserved on a fixed or dynamic basis. While fixed reservations deliver higher assurance of faster application response, dynamic resource reservation optimizes expense. Just in time resource allocation in conjunction with true measured service where charges are applied only when an application is processing a service request will lower expense. Many organizations pay for warm application instances, which are infrequently used. Sophisticated PaaS environments allocate resources and limit usage based on policy and context. The environment may limit usage by throttling messages, time slicing resource execution, or queuing demand.   PaaS offerings score high (10) when they exhibit cloud characteristics at the appropriate abstraction level (i.e. application component, application service, data set, business process), and score low (1) when they only enable self-service, pooling, elasticity, and pay per use for IT infrastructure assets (i.e. machine, network I/O, storage bytes).   For more information on Cloud characteristics, read the NIST Draft - Cloud Computing Synopsis and Recommendations.
  • #17: This evaluation criteria measures how widely the solution can be shared (i.e. private, public, community), who is responsible for PaaS environment management (i.e. internal, external), and where the PaaS is located (i.e. on-premise, outsourced) options. Before selecting PaaS infrastructure, understand how sharing, location, and responsibility impact your decision. Public, private, or community attributes specify how widely the cloud service is shared; a sharing dimension. Internal or external denote the consumer's view of the Cloud's service interface. The view is associated with a consumer's responsibility for service development, operations, and management; a responsibility dimension. A third dimension, on-premise or outsourced, describes where the service assets are located; a location dimension. A hybrid cloud strategy delivers, spans, and connects clouds across all dimension attributes.   Your organization and team will often be confronted with delivering, connecting, and spanning solutions across diverse private and public Cloud environments. Your Platform as a Service architecture and platform service offering should provide a holistic hybrid environment consistently applying governance and policies across internal and external Clouds. Hybrid cloud use cases require interoperability, federation, SOA principles, and infrastructure services to bridge Cloud environments into a unified platform.   PaaS offerings score high (10) when they can run within all dimension coordinates, and score low (1) when they only run within a subset of the dimensions.   For more information on Cloud dimensions, view Chris’ blog post.
  • #18: This category measures PaaS maturity and suitability for enterprise, mission critical level use. The production ready criteria category measures whether: The service provider offers production support warranties The PaaS offering services a significant number of paying customers The PaaS service maturity The Service Level Agreement (SLA) quality The Quality of Service (QoS) warranted by the service provider A production ready PaaS offering will be supported by sophisticated service level management capabilities. The PaaS offering should include the following service level management capabilities: Resource monitoring Resource management Resource quota management Performance management Traffic orchestration (i.e. message throttling, message routing, message correlation)   PaaS offerings score high (10) when they are fully supported, mature, and fulfill comprehensive service level and quality of service requirements. PaaS offerings score low (1) when they are pre-production releases and do not warrant service levels.
  • #19: This criteria category measures support for DevOps activities across software development life-cycle phases (i.e. design, develop, test, build, deploy, manage). The category describes the tools and processes used manage application construction and maintenance tasks. Relevant sub-categories include: PaaS integration with on-premise software development life-cycle tooling PaaS integration with on-premise automated service governance tooling and policy repositories Supported DevOps activities (e.g. automated provisioning, self-service configuration, process automation, continuous integration, continuous deployment) Automated governance including: Service catalogue and service tiers Demand and capacity management Life-cycle management Infrastructure Authority integration   PaaS offerings score high (10) when they are well integrated with preferred software development life-cycle tooling across all application life-cycle phases. PaaS offerings score low (1) when they deliver a disconnected and siloed design, development, deployment, and management experience.
  • #20: This category measures architecture principles, concepts, and patterns enabling applications to dynamically execute parallel workloads across a highly distributed environment. The PaaS architecture model should shield application developers, integrators, and architects from infrastructure, natively support cloud characteristics, and exhibit Cloudy architectural attributes (i.e. tenancy, dynamic discovery). Cloud architectural attributes should span the entire solution stack, and not be constrained to components below the application server. The Cloud Architecture criteria category measures conformance with architecture principles enabling: Measured service or pay per use Evaluate the PaaS solution for fine-grained metering, billing, and reporting of business entities, activities, and interactions. For example, can the PaaS meter the number of workspaces created, users added, or business transactions executed?   Rapid elasticity Mature PaaS offerings scale discrete application service instances rather than scaling monolithic application instances. An ability to rapidly provision small footprint services based on user demand will increase application density and infrastructure utilization. PaaS offerings should exhibit rapid service provisioning, flexible resource allocation, and distributed topologies. Implicit support for shared nothing architecture and the Thirteen Dwarf patterns (e.g. MapReduce) enables application decomposition, parallel processing, and resource coordination.   On-demand self-service Mature PaaS offerings do more than push application bits to a Cloud node. Mature PaaS offerings perform flexible, run-time workload assignment and automated startup of standard service offerings. Cloud architecture components include a Cloud controller, Cloud service provisioning, and Cloud load balancer.   Resource Pooling Mature PaaS offerings supply shared everything containers to hosted applications. Multi-tenancy is incorporated throughout the solution stack (i.e. network, processing, storage, managed code container, application platform engines, frameworks, and application logic). Resource utilization is tracked by business transaction or business entity access, and resource allocation conforms to well-defined policies. Distributed caches are used to share resources across entitled tenants while enforcing security.   PaaS offerings score high (10) when they deliver enhanced capabilities at high abstraction and fine granularity. PaaS offerings score low (1) when they do not extend capabilities beyond levels offered by traditional application platform infrastructure.
  • #21: This category measures how completely the PaaS satisfies development of complex applications by providing comprehensive application middleware components and services. Teams compose platform services to rapidly design, develop, deliver, deploy, and manage applications. Platform services span the following broad categories: Presentation services Application and service container services Business process and business rule services Integration services and message brokers Composite application services (i.e. mashups and orchestration) Complex event processing services Data access and persistence services Development governance Application life-cycle management Automated run-time governance services Policy registry and repository services Identity management Security Service level management Compute, network, and storage infrastructure services A complete, unified platform decreases integration cost, reduces solution complexity, and enables uniformly applying policy and process. PaaS offerings score high (10) when they deliver a comprehensive platform service list and score low (1) when they offer a small subset of the platform required to effectively deliver complex applications and services.
  • #22: The programming model category measures programming languages and frameworks, which facilitates building applications and services exhibiting Cloud characteristics. The Cloud programming model is fundamentally different from the web programming model which fueled Java EE’s popularity. To maximize cloud benefits, development teams must adopt new programming models, architecture patterns, and frameworks. The actor model, service composition, RESTful interactions, policy injection, and tenant aware frameworks extend Java into the Cloud.   A Cloud programming model facilitates building applications and services, which exhibit Cloud characteristics. The programming model should be congruent with Cloud architecture principles and patterns. Example detailed criteria include: Actor model (i.e. message passing instead of function invocation RESTful interactions Dynamic recoverability Consensus protocols Asynchronous rather than synchronous interactions Shared nothing architecture Data partitioning and sharding Federated data queries Service orchestration Functional programming MapReduce   PaaS offerings score high (10) when the programming model explicitly supports parallel processing, distributed interactions, shared nothing architecture, workload decomposition, and hide infrastructure complexity. PaaS offerings score low (1) when they expose data center infrastructure concepts (i.e. machines, storage parameters, network addresses) and do not elastically scale beyond traditional application server clusters.
  • #23: See blog post: http://blog.cobia.net/cobiacomm/2011/11/02/paas-evaluation-framework-for-cios-and-architects/
  • #24: Agreeing on a strategic goal and gaining stakeholder buy-in is only the first step. Teams should define key metrics, baseline current performance, and create a quick start project plan to prove PaaS benefits. Metrics can be divided into foundational, optimal, and transformational categories. A few example metrics to consider are:   Foundation Time to create new application environment Time to redeploy application Optimize Minimum and maximum scale Scale frequency (i.e. time to scale up/down) Transformation Time and effort required integrating business process, event processor – creating a complex app. Time and effort required to apply policy across tenant(s) Cost to operate application per user or transaction
  • #25: In today’s IT environment, demonstrating tangible improvement is often illusive. Rather than simply stating a goal, randomly selecting a PaaS provider, installing an application on the PaaS, and declaring success, your team has an opportunity to demonstrate and prove how PaaS capabilities can improve agility, efficiency, or platform economics. Your team should correlate quick start demonstration use cases with PaaS capabilities and key metrics. The following listing details a sample plan:
  • #26: DevOps Tooling and On-demand self-service Use Cases Rapidly provision application environment Rapidly provision application tenant Allocate, provision, monitor, manage, and administer resources across multiple tenants, nodes, and locations Develop complex, composite integrated applications Key metrics Time to create new application environment Time to redeploy application
  • #27: Automated Governance Use Cases Create users and configure rights Deploy on preferred topology that meets deterministic performance requirements (e.g., replication, utilization, latency, bandwidth, and coherency) Create service throttling and security governance (XACML) policies Key Metrics Time and effort required integrating business process, event processor – creating a complex app. Time and effort required to apply policy across tenant(s)
  • #28: Service level management and elastic scale Use cases Ensure application satisfies consumer demand while maximizing resource utilization Scale workload processing and increase performance while minimizing infrastructure spend Load test application service Demonstrate multi-tenant web application Key Metrics Minimum and maximum scale Scale frequency (i.e. time to scale up/down)