SOFTWARE DEVELOPMENT IN THE CLOUD. INTRODUCTION How do you develop in the cloud? Browser based services (IDE’s, Source Control) Developing in Platform-as-a-Service.

Slides:



Advertisements
Similar presentations
Experts in OS Recovery and Migration
Advertisements

Cloud Computing at GES DISC Presented by: Long Pham Contributors: Aijun Chen, Bruce Vollmer, Ed Esfandiari and Mike Theobald GES DISC UWG May 11, 2011.
Which server is right for you? Get in Contact with us
Cloud OS Microsoft’s Vision of the Unified Platform for Modern Business.
1 Vladimir Knežević Microsoft Software d.o.o.. 80% Održavanje 80% Održavanje 20% New Cost Reduction Keep Business Up & Running End User Productivity End.
Visual Studio Online. What it Provides Visual Studio Online, based on the capabilities of Team Foundation Server with additional cloud services, is the.
Empowering Business in Real Time. © Copyright 2009, OSIsoft Inc. All rights Reserved. Virtualization and HA PI Systems: Three strategies to keep your PI.
VMware Virtualization Last Update Copyright Kenneth M. Chipps Ph.D.
Copyright 2009 FUJITSU TECHNOLOGY SOLUTIONS PRIMERGY Servers and Windows Server® 2008 R2 Benefit from an efficient, high performance and flexible platform.
What is Cloud Computing? o Cloud computing:- is a style of computing in which dynamically scalable and often virtualized resources are provided as a service.
© 2009 IBM Corporation ® IBM Software Group Introduction to Cloud Computing Vivek C Agarwal IBM India Software Labs.
Modeling Public Pensions with Mathematica and Python II
Presented by Sujit Tilak. Evolution of Client/Server Architecture Clients & Server on different computer systems Local Area Network for Server and Client.
SaaS, PaaS & TaaS By: Raza Usmani
Engineering the Cloud Andrew McCombs March 10th, 2011.
Cloud computing Tahani aljehani.
An Introduction to Cloud Computing. The challenge Add new services for your users quickly and cost effectively.
Plan Introduction What is Cloud Computing?
Built on the Powerful Microsoft Azure Platform, Nimble Schedule Streamlines and Automates Scheduling with Cloud-Based Mobile Services MICROSOFT AZURE ISV.
November 2009 Network Disaster Recovery October 2014.
VAP What is a Virtual Application ? A virtual application is an application that has been optimized to run on virtual infrastructure. The application software.
Real Security for Server Virtualization Rajiv Motwani 2 nd October 2010.
Effectively Explaining the Cloud to Your Colleagues.
Osama Shahid ( ) Vishal ( ) BSCS-5B
1 Introduction to Cloud Computing Jian Tang 01/19/2012.
By Mihir Joshi Nikhil Dixit Limaye Pallavi Bhide Payal Godse.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
Cisco Confidential 1 © 2010 Cisco and/or its affiliates. All rights reserved. Data Center Solutions Marketing Data Center Business Advantage Customer Proof.
Cloud Computing Kwangyun Cho v=8AXk25TUSRQ.
Cloud Computing 1. Outline  Introduction  Evolution  Cloud architecture  Map reduce operation  Platform 2.
Computing on the Cloud Jason Detchevery March 4 th 2009.
Introduction to Cloud Computing
Java in the cloud PaaS Platform in Comparison By Srini Kumar VP MSat IT Evangelist & Strategy Advisor.
Cloud Computing Characteristics A service provided by large internet-based specialised data centres that offers storage, processing and computer resources.
Dev and Test Environments in the Cloud
Mehdi Ghayoumi Kent State University Computer Science Department Summer 2015 Exposition on Cyber Infrastructure and Big Data.
Plan  Introduction  What is Cloud Computing?  Why is it called ‘’Cloud Computing’’?  Characteristics of Cloud Computing  Advantages of Cloud Computing.
What is the cloud ? IT as a service Cloud allows access to services without user technical knowledge or control of supporting infrastructure Best described.
Cloud Computing Project By:Jessica, Fadiah, and Bill.
Cloud Strategy made Simple David G. Fletcher. 2 Hybrid Cloud Approach Utah is building a private cloud to provision services from its virtualized infrastructure.
IBM Bluemix Ecosystem Development Hands on Workshop Section 1 - Overview.
Paperless Timesheet Management Project Anant Pednekar.
MidVision Enables Clients to Rent IBM WebSphere for Development, Test, and Peak Production Workloads in the Cloud on Microsoft Azure MICROSOFT AZURE ISV.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
Microsoft Cloud Computing. Topics to be covered 1.Environmental Features of windows azure 2.What is Cloud Computing 3.Roles in Cloud Computing 4.Benefits.
1 TCS Confidential. 2 Objective : In this session we will be able to learn:  What is Cloud Computing?  Characteristics  Cloud Flavors  Cloud Deployment.
Dr. Hussein Al-Bahadili Faculty of Information Technology Petra University Securing E-Transaction 1/24.
RANDY MODOWSKI COSC Cloud Computing. Road Map What is Cloud Computing? History of “The Cloud” Cloud Milestones How Cloud Computing is being used.
PRESENTED BY– IRAM KHAN ISHITA TRIPATHI GAURAV AGRAWAL GAURAV SINGH HIMANSHU AWASTHI JAISWAR VIJAY KUMAR JITENDRA KUMAR VERMA JITENDRA SINGH KAMAL KUMAR.
Office 365 is cloud- based productivity, hosted by Microsoft. Business-class Gain large, 50GB mailboxes that can send messages up to 25MB in size,
CLOUD COMPUTING When it's smarter to rent than to buy.. Presented by D.Datta Sai Babu 4 th Information Technology Tenali Engineering College.
© 2012 Eucalyptus Systems, Inc. Cloud Computing Introduction Eucalyptus Education Services 2.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
What is Cloud Computing 1. Cloud computing is a service that helps you to perform the tasks over the Internet. The users can access resources as they.
Lecture 6: Cloud Computing
Unit 3 Virtualization.
AuraPortal Cloud Helps Empower Organizations to Organize and Control Their Business Processes via Applications on the Microsoft Azure Cloud Platform MICROSOFT.
Chapter 6: Securing the Cloud
Server Virtualization IT Steering Committee, March 11, 2009
By: Raza Usmani SaaS, PaaS & TaaS By: Raza Usmani
Infrastructure Orchestration to Optimize Testing
An Introduction to Cloud Computing
Cloud vs. On-premise 5 Advantages of Cloud Deployment
Logo here Module 3 Microsoft Azure Web App. Logo here Module Overview Introduction to App Service Overview of Web Apps Hosting Web Applications in Azure.
Andrew McCombs March 10th, 2011
Java in the cloud PaaS Platform in Comparison
CloudLabs, Powered by Azure, Enables the Quick, Easy, Cost-Effective Management, Distribution of Online Training Labs for Education and Business MICROSOFT.
Dell Data Protection | Rapid Recovery: Simple, Quick, Configurable, and Affordable Cloud-Based Backup, Retention, and Archiving Powered by Microsoft Azure.
Media365 Portal by Ctrl365 is Powered by Azure and Enables Easy and Seamless Dissemination of Video for Enhanced B2C and B2B Communication MICROSOFT AZURE.
Last.Backend is a Continuous Delivery Platform for Developers and Dev Teams, Allowing Them to Manage and Deploy Applications Easier and Faster MICROSOFT.
Presentation transcript:

SOFTWARE DEVELOPMENT IN THE CLOUD

INTRODUCTION How do you develop in the cloud? Browser based services (IDE’s, Source Control) Developing in Platform-as-a-Service Using pay-as-you-go style companies Building your own cloud based developing environment

INTRODUCTION CONT. Why use the cloud? Software development is a very intensive task Managing, designing, implementing, building, testing, deployment Collaboration Code Sharing What can it do? Global software development Talent from anywhere Simplifies and consolidates company infrastructure

AS-A-SERVICE USING THIRD PARTY SERVICES Development Building, using IDE’s and Code Repositories Runtime Testing and Production Environments Constant switching of phases Many tools for each phase Developers spend time setting up tools

CLOUD DEVELOPMENT STACK How can cloud development help? Using only browser based systems cuts down on installation time Allows for increased developer collaboration Reduces need for infrastructure resources

CLOUD DEVELOPMENT STACK CONT. What is necessary to do this? The cloud development stack: Editor Debug/ Test DeploymentData Store IDE The Cloud Software Development Stack Source and Project Management Controls

BROWSER BASED IDE Runs in browser, processing in cloud Start projects without tool setup Share code and collaborate Support agile development Repository integration(GitHub)

BROWSER BASED IDE COMPARISON Software CodeRun, Cloud9, eXo Cloud, Bespin, Kodingen, Bungee Connect, Codeanywhere, ECCO, WonderFL Comparison Terms Language support, source control support, collaboration, deployment Results Immature Integration with source control/code repositories Poor language support Needs time to mature Develop anywhere, anytime Share code instantly

DEPLOYMENT Using Platform-as-a-Service Can select development and deployment applications and save as a single file RDBMS, Frameworks etc. Deployment is done with a browser and a click of an upload button Supports versioning Benefits: Scalable, Fast deployment, Reliability, Manage multiple applications through a single console

DEPLOYMENT COMPARISON Software CloudBees, OpenShift, Heroku, Jelastic, Google App Engine, dotCloud, Azure, CloudFoundary Comparison terms Language support, build/continuous integration, data storage Similar to browser based IDE’s, still immature Language support is better Few support Build/Continuous Integration More mature than the IDE’s, but still need more time.

PROJECT MANAGEMENT TOOLS These tools attempt to cover Application Lifecycle Management From designing to delivering Frees developers from worrying about installing local project management tools Integrates with other tools to simplify managing resources

PROJECT MANAGEMENT TOOLS COMPARISON Software TeamForge, OnDemand, JazzHub, AccuRev Comparison terms Version control, build/continuous integration, social collaboration, project planning, tracking The most mature cloud based development set of tools Good lifecycle management and collaboration All include support for version control Most support build/continuous integration Needs project tracking through source control

THE FUTURE More features will make all of these tools more mature and attract developers Better integration/support for the agile life-cycle Automation of tasks Logs, developer tracking and metrics Integration with code repositories Creating a way to develop both online and offline

IN HOUSE BUILDING CLOUD DEVELOPMENT TOOLS Case study on Fujitsu’s Numazu Cloud Center Consolidate development into one center Predecessor was a development center established in 1976 Provides development environments to 4500 developers Located in 10 hubs in Japan and other countries

NUMAZU BACKGROUND Built specifically for middleware developers Many configurations Reasons for building the cloud center Increasing server operation costs Maintenance, backups, inventory, troubleshooting Server under/over utilization Server allocation based on peak demand Increasing labor hours for building developer environments Since 2005 the number of platforms needed for development and testing has multiplied by 8 The labor hours for constructing these environments (Hardware specs, OS, Patches, Source Files) This time increase by 24% from 2005 to 2008 and again by 30% from 2008 to

CONSOLIDATION AND VIRTUALIZATION Remote Operation Equipment Virtual and physical machines Remote turn on/off and BIOS setup Fujitsu provided remote power management and console switches Network Enhancements Dedicated in house WAN for accessing servers in the cloud center Remote Installation Services Numazu provides services so that OS’s can be remotely installed without physical media Also provide services for backing up and restoring systems

STANDARDIZATION Need to reduce infrastructure load 51 standard environments 36 Windows 14 Linux 1 Solaris Together they cover 70% of past cases Cases not covered can be manually created

SYSTEMIZATION To utilize all of these past pieces, software needed to be constructed Service Catalog for all of the standardized systems Automated Deployment for deploying the systems in the catalog Automated Operations for operating the platforms Dynamic Resource Management for properly allocating resources Automated Operations in a Cloud Environment Automated rental of environments Scalable without staff increase

EFFECTS Annual cost reduction of $9 million More efficient use of space Reduction in labor expenses Relocation of staff because of space use Balancing server use Reducing labor hours for development environment creation Environments that used to take hours or days to build now take minutes Reduced environmental load Less servers, less power consumption Estimated reduction of 1340 tons of CO2 emissions

CONCLUSION Pros Could lead to world wide collaboration on projects Better utilization of resources Increased ability to control/track projects and development Decreased time wasted on developing environments Code from anywhere, on almost any machine Companies can hire the best developers wherever they are

CONCLUSION CONT. Cons Still very immature to use third party services Needs more integration Security No standard protocols between different third party services Few features and supported languages Testing still not widely supported In House solutions only plausible for large companies Time and money Enough developers in different locations so that benefits outweigh cost

CONCLUSION CONT. The future looks promising for cloud development May allow companies to have small teams all around the world without needing infrastructure support at each location Currently they are only suitable for very small projects Larger companies are better off building their own infrastructure or simply waiting for better third party tools

CSCI 577 Tools very important Helps developers and management Can help a project stay on track

REFERENCES “In-house Deployment at Numazu Software Development Cloud Center”. Yuji Arimura, Masako Ito. “What is Google App Engine?”. “Platform-as-a-Services as an Enabler for Global Software Development and Delivery” Ivo Stankov, Rastsislau Datsenka. industrie/09_platform-as-a- service_as_an_%20enabler_for_global_software_development_and_delivery.pdfhttp://webdoc.sub.gwdg.de/univerlag/2010/mkwi/01_management_und_methoden/software- industrie/09_platform-as-a- service_as_an_%20enabler_for_global_software_development_and_delivery.pdf Numazu Cloud Center Case Study “Developing in the Cloud”. Aftab Iqbal, Michael Hausenblas, Stefan Decker.