Sunday, September 4, 2011

My takeaway from Cloudcamp

I had a chance to attend a cloud conference recently and have some updates to share. Not that cloud computing is any new term though I wanted to attend from the cloud testing point-of-view and renewing my knowledge.

- The best definition of cloud computing can be found on the NIST website here.
- Attended the conference as an - Unconference sessions - its really an informal way and gives you the idea about what’s missing and what has to be learned as a developer.
- I attended the conference to understand about what skills I should have to be able to successfully test the cloud app, soon realized I am better at the development side due to my technical nature and understanding of tools.
- Cloud apps are highly connected type of apps or “connectedness" is primary characteristics.
- No versioning required for cloud apps since can be updated anytime.
- IT department is gone though system admin has now new set of tasks to perform.
- Amazon cloud service is most widely used though there are other available service.
- Everything is Service-Oriented. There is a service for each task and your application should start using/implementing these services to be able to deploy on cloud. Integration service will be an important service. A typical salesforce.com type of app consists of Marketing, Sales and Service integration is thus critical.
- All conference speakers were very confident of future quoting that its a $70b market by 2015.
- Application characteristics for which cloud apps are suitable are primarily defined by traffic. There are many other parameters to consider.
- Load and performance testing tools are required to gauge the performance and whether website application meets performance expectation. Mobile application on popular platforms is also usually developed simultaneously.
- Cloud apps are more suitable for social apps but there is no such rule as to what application can be developed. There is evaluation criteria.
- To consider if an app can be considered for deployment as a cloud app here are the following needs:
o Company infrastructure
o Application requirements
o Storage requirements
o Application options
o Vender slection
o Third party integration
o Usage requirements
o Security requirements
- Once you have a web app design ready answer the question whether:
o A SAAS solution
o Public or private cloud
o Cloud storage
o No cloud
on the checklist based on nature of application to decide for cloud application.
- Apps can be tested using Winrunner and jmeter scripts are supported.
- Cloud apps are required to be scalable, measurable, on – demand and self-service based.
- The type of tools available are for development community, Cloud management, Dataprocessing pre-packaged apps, plug-ins to fascilitate development as per the requirements.
- Popular tools are: StreamBase for event processing, Cloud Management:Cloudkick, Rightscale, Kaavo, enStratus. Data processing and BI: Cloudera, Greenplum, Good data, Zoho Reports, Hadoop, ScaleDB etc.. Reason for this discussion is once a tool is selected there is a lock-in, unless a abstraction layer in the code takes care of these issues.
Definitively wikipedia page is exhaustive source for Cloud Computing and lot more to learn in particular hands-on lab.