W5
Class
10/5/2011 11:30 AM
"Cloud Computing:
Powering the Future of Testing"
Presented by:
Sundar Raghavan
Skytap
Brought to you by:
340 Corporate Way, Suite 300, Orange Park, FL 32073
888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com
Sundar Raghavan
Skytap
As the chief product officer at Skytap, Sundar Raghavan is responsible for the overall
product direction and roadmap. Working with Skytap engineering, Sundar brings to
market innovative cloud solutions that solve DevTest and DevOps challenges. He works
directly with leading companies including Google, HP, EllieMae, and LanDesk that use
Skytap for application development and testing projects. Prior to Skytap, as head of
Postini product marketing at Google Enterprise, Sundar enabled Postini's rapid growth
and scale (15 million users, 40,000 customers, 2 billion messages a day). Pre-Google,
Sundar launched many successful products at Ariba, Hyperion (Oracle), and
Microstrategy.
Cl
d C
ti
P
i
Th
Cloud Computing: Powering The
Future Of Testing
Sundar Raghavan
Skytap
•
Introduction
•
Challenges in software development and testing
Agenda
•
Cloud computing solution architectures
•
How cloud computing solutions meet Dev/Test requirements?
•
Case studies
Dev/Test at Boeing and Google (Chrome)
Dev/Test at Boeing and Google (Chrome)
•
Best practice tips
About Us
•
Cloud Solutions for Dev Test Users
•
Visibility and Control to IT & the CIO
Leading Provider of
Cloud Automation
Solutions
160+ Customers
•
Results: 50 to 70% cost savings, 60 to 75% faster time to market cycles
•
1000s Projects in the Cloud Every Day: App Development, App Migration,
Functional Testing, Load testing, Acceptance testing, Globalization
Design
Typical Development and Test Process
Collaborative Development
Deploy & Support Develop Test ppTest coverage /
cycle time
Iterative
prototyping
Multi‐tier
Infrastructure
Connect to
Corp DBs
Remote team
collaboration
Complex bug
repro
Dev QA IT Ops1
Self-service Provisioning
2
Flexibility and Scalability
Source mgmt Build mgmt Development servers Dev Func. Testing Integ. Testing Test servers QA Stage Prod Deployment servers IT Ops
The Agile Twist
6+ month cycles
Dev/test phases
Software development life cycle
Pressure to
Ship
6+ week cycles
Testing squeeze
Agile development life cycle
Frequent
Pressure to
Ship
•
Typical IT provisioning requests take 2 to 4 weeks per request
•
Difficult to change and recycle dev/test environments on‐demand
Challenges Faced By Development and Test Teams
Self‐service Provisioning1
•
Agile development model requires Agile IT
Provisioning Flexibility & Scalability•
Can not easily replicate production or staging environments
•
Hard to scale to 1000s of users without impacting performance
2
6 Collaboration & Workflow•
Resolving complex bugs require snapshots of full environments
•
Cannot share environments and collaborate w/ remote teams
3
•
Can I Solve These Problems With Cloud Computing?
Wh t i Cl
d C
ti ?
Cloud Computing
•
What is Cloud Computing?
•
What are three different architectures?
•
Where do I get started?
•
What are the solution requirements?
h
?
•
Are there some success stories?
•
How can I deliver success to my team?
7Cloud computing is a model for enabling
i
d
d
k
What Is Cloud Computing?
Cloud computing is a model for enabling
i
d
d
k
convenient, on‐demand network access to a
shared pool of configurable computing
resources (e.g., networks, servers, storage,
applications, and services) that can be rapidly
provisioned and released with minimal
management effort or service provider
convenient, on‐demand network access
to a
shared pool of configurable computing
resources (e.g., networks, servers, storage,
applications, and services)
that can be
rapidly
provisioned and released with minimal
management effort
or service provider
management effort or service provider
interaction
management effort
or service provider
interaction
8
Three Different Cloud Architectures
Private Cloud
Hybrid Cloud
Public Cloud
External
Cloud
9 •In‐house “cloud” resources •IT project, new sw/hw •Ideal for predictable workloads •Requires capital expense •Bridges external to internal •May require IT support •Ideal for mixed workloads •Requires capital expense •On‐demand provisioning, scale •Minimal IT, Ready to go •Ideal for dynamic workloads •Pay as you go flexibilityDev Test Workload Management
Dynamic Dev Test Workloads
Ideal for Hybrid CloudsPredictable Workloads
Ideal for Enterprise Data Centers • Contextual for IT operations • Limited IT resources • User managed changes • 30% of the environment Æ 70% of change requests • Core to IT operations • Dedicated IT resources • IT managed changes • 70% of the environment Æ 30% of change requestsPredictable
Dynamic
DynamicPredictable
Enterprises are moving dynamic dev test workloads to the cloud
•
Cloud model provides for dynamic capacity management
•
Automation solutions decrease IT support burden
Top 10 Dev Test Requirements
Dev Test Requirements
1. Reduce delays and IT support
7. Usage quota and auditing management 6. Remote team collaboration & security 5. Complex bug repro; parallel development 4. Multi-users, Secure access
3. Create scalable, configurable dev test stacks 2. No application rewrites
11
10. Usage controls and pay as you model 8. Hybrid Cloud - In-house to cloud integration 9. Leverage existing tools and build automation
Top 10 Dev Test Requirements
Dev Test Requirements
Cloud Solution Features
• Self-service, instant provisioning with minimal IT 1. Reduce delays and IT support
• Per User Quota mgmt, Auditing and charge back reports
• VNC, RDP, SSH access. Publish URLs with ACLs
• Snapshots and project workflow
• Secure sign-on, Role based access
• Pre-built templates, on-demand scale & configurability
• Run existing applications unchanged
7. Usage quota and auditing management 6. Remote team collaboration & security 5. Complex bug repro; parallel development 4. Multi-users, Secure access
3. Create scalable, configurable dev test stacks 2. No application rewrites
12
• Auto-suspend for unused machines, Monthly billing
• Self-service Hybrid Clouds, Ipsec VPN security
• HP, Microsoft, IBM, Open source tools, Automation APIs 10. Usage controls and pay as you model
8. Hybrid Cloud - In-house to cloud integration 9. Leverage existing tools and build automation
Case Study: Boeing Cloud
13
Source: Dave Nelson presentation at Enterprise Cloud Summit, 2011
Case Study: Boeing Cloud
Situation: Needed ad-hoc cloud capacity to test and deliver data center applicationsp y pp Solution Requirements :
1.Distributed IT users; 10s of users in England and US. 2 different vendors 2.Base dev/test configurations contained 200+ VMs; ability to refresh at will 3.Multi-platform support, Windows / Java applications, BMC, HP applications
Cloud Usage:
• Built and tested complex data center management applications • Expanded usage to multiple data center management applications
• Utilize a ‘hybrid’ on-site / on-demand model; connect back to internal services
Customer Benefits:
• Saved several thousand dollars in up front capital expense • Provisioning time down from 20+ days to less than one hour
• Ability to configure and change new environments increased exponentially • Deferred hiring 2 FTE for IT management and configuration build-up/tear down
Case Study: Boeing Cloud
15Best Practice Tips
1. Clear identification of project requirements from IT and Dev/Test teams
2. Project based usage with specific roles and privileges
3. Pay per use model meant usage was monitored and managed by IT
Graphics Source: Dave Nelson presentation at Enterprise Cloud Summit, 2011Case Study: Google Chrome
16
Case Study: Google Chrome Test Lab
Situation: Needed cloud capacity to test new releases on Windows and Linux versionsp y Solution Requirements:
1.Ability to automate test scripts and launch them from remotely
2.Run multiple parallel dev/test environments using standardized templates
3.Integrate with existing BOT automation tools and processes
Cloud Usage:
• Built and tested multiple Google chrome releases using crowd sourcing • Spiked usage to include scope for large external test loads and • Automate usage based on APIs
Customer Benefits:
• Providing efficient bug repro environments. Reduced costs, gained dev time • External test environments for crowd sourcing test matrices
• Test on Windows environments as per internal security policies • Isolated browser vulnerability testing
Case Study: Google Chrome
18Best Practice Tips
1. Intuitive UI for Dev/Test Self‐service Æ No lost time in training
2. Support for snapshotting complex environments for bug repro
3. Externally hosted machines for security testing
1.
Identify dev test project needs before selecting a cloud solution
2.
Ensure ability to support your existing dev test tools & processes
Cloud Success Tips For Testing Teams
3.
Test drive the self‐service interface to assess learning curve
4.
Assess vendor capability for on‐demand scalability and configurability
5.
Evaluate availability of templates to standardize provisioning
6.
Evaluate snapshots for complex bug reproduction
7.
Create Hybrid cloud using Ipsec VPN and assess security
8.
Use projects and configurable role based access control lists
9.
Use APIs to automate nightly builds and regression testing
10. Create reports to enforce cloud usage policies, quotas and chargebacks
19Time to Results Per Project
Making Release Cycles Go Faster
2 to 3 weeks
Hybrid
In‐house
1 day
2 to 3 weeks
•Quicker Release Cycles •Faster Time to Market •Positive Business ImpactTime liberated to focus for strategic priorities
0
5
10
15
20
25
Purchasing
Set‐up
Changes
Tear down
In-house data based on customer input
Days
Æ
Positive Business Impact
for strategic priorities