How To Understand Cloud Computing



Similar documents
Cloud Computing and SOA from Enterprise Perspective. Yan Zhao, PhD ArchiTech Consulting LLC Oct.

TECHNOLOGY GUIDE THREE. Emerging Types of Enterprise Computing

Architectural Implications of Cloud Computing

Technical aspects of Cloud computing. Luís Ferreira Pires University of Twente Meeting of the NVvIR, 17 June 2010

CHAPTER 8 CLOUD COMPUTING

Strategy and Architecture - Cloud overview

CLOUD COMPUTING IN HIGHER EDUCATION

Cloud Computing and SOA Convergence / Senior Vice President / September, 2013

CLOUD COMPUTING HANDBOOK

Inside the Cloud The Supporting Architecture of Cloud Computing. Jack Hanison

Oracle Applications and Cloud Computing - Future Direction

Essential Characteristics of Cloud Computing: On-Demand Self-Service Rapid Elasticity Location Independence Resource Pooling Measured Service

Hexaware E-book on Q & A for Cloud BI Hexaware Business Intelligence & Analytics Actionable Intelligence Enabled

High Performance Computing Cloud Computing. Dr. Rami YARED

CLOUD COMPUTING. Keywords: Cloud Computing, Data Centers, Utility Computing, Virtualization, IAAS, PAAS, SAAS.

Cloud Computing. Key Initiative Overview

BUSINESS MANAGEMENT SUPPORT

CLOUD COMPUTING SECURITY ISSUES

Student's Awareness of Cloud Computing: Case Study Faculty of Engineering at Aden University, Yemen

Platform Autonomous Custom Scalable Service using Service Oriented Cloud Computing Architecture

The Cisco Powered Network Cloud: An Exciting Managed Services Opportunity

Outline. What is cloud computing? History Cloud service models Cloud deployment forms Advantages/disadvantages

Peter Zhang, Ph.D. Principal consultant, ZHTECH Corporation Adjunct Professor, Cal State University, Fullerton

Customer Engagement & The Cloud

Cloud, Community and Collaboration Airline benefits of using the Amadeus community cloud

ON THE ROAD TO OPEN HYBRID CLOUD BRYAN CHE GENERAL MANAGER, CLOUD BU, RED HAT

Software Testing in the Cloud. Tauhida Parveen, PhD

Service-Oriented Architecture and its Implications for Software Life Cycle Activities

BUYER S GUIDE CLOUD HOSTING. This ebook will help you:

Optimizing Service Levels in Public Cloud Deployments

FEDERATED CLOUD: A DEVELOPMENT IN CLOUD COMPUTING AND A SOLUTION TO EDUCATIONAL NEEDS

Grid Computing Vs. Cloud Computing

Computing Service Provision in P2P Clouds

Cloud Computing An Elephant In The Dark

Service Component Architecture for Building Cloud Services

Cloud Computing. Cloud computing:

Adopting Service Oriented Architecture increases the flexibility of your enterprise

CLOUD COMPUTING. When It's smarter to rent than to buy

Cloud Middleware Market Map. Shea & Company

Cloud Computing and Big Data What Technical Writers Need to Know

journey to a hybrid cloud

Cloud Computing: Computing as a Service. Prof. Daivashala Deshmukh Maharashtra Institute of Technology, Aurangabad

CHAPTER 1 INTRODUCTION

The Service, The Cloud & The Method: The Connection Points

Katerina Apostolaki, Marketing Manager

WORKFLOW ENGINE FOR CLOUDS

A Study on Analysis and Implementation of a Cloud Computing Framework for Multimedia Convergence Services

CPS221 Lecture: Cloud Computing last revised 10/22/14 Objectives

An Oracle White Paper June Oracle Cloud Computing

Novel Network Computing Paradigms (I)

TECHNOLOGY TRANSFER PRESENTS MAX DOLGICER CLOUD 2.0 MOVING FROM COST SAVINGS TO AGILE IT

An Efficient Cost Calculation Mechanism for Cloud and Non Cloud Computing Environment in Java

International Journal of Innovative Technology & Adaptive Management (IJITAM) ISSN: , Volume-1, Issue-5, February 2014

How service-oriented architecture (SOA) impacts your IT infrastructure

CLOUD COMPUTING OVERVIEW

Contents. Preface Acknowledgements. Chapter 1 Introduction 1.1

White paper Reaping Business Value from a Hybrid Cloud Strategy

Demystifying Cloud Computing

Proactively Secure Your Cloud Computing Platform

Service Oriented Cloud Computing Architectures. Asher Vitek 12/3/2011 UMM CSci Senior Seminar Conference Morris, MN.

White Paper on CLOUD COMPUTING

Guiding SOA Evolution through Governance From SOA 101 to Virtualization to Cloud Computing

Research Paper Available online at: A COMPARATIVE STUDY OF CLOUD COMPUTING SERVICE PROVIDERS

Cloud Computing: Issues Related with Cloud Service Providers

Contents. What is Cloud Computing? Why Cloud computing? Cloud Anatomy Cloud computing technology Cloud computing products and market

SOA CERTIFIED CONSULTANT

Cloudsourcing: Cloud Computing Meets Outsourcing

Capturing the New Frontier:

Cloud Computing Submitted By : Fahim Ilyas ( ) Submitted To : Martin Johnson Submitted On: 31 st May, 2009

TaaS: An Evolution of Testing Services using Cloud Computing

Five best practices for deploying a successful service-oriented architecture

4/6/2009 CLOUD COMPUTING : PART I WHY IS CLOUD COMPUTING DISTINCT? INTRODUCTION: CONTINUE A PERSPECTIVE STUDY

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...

Cloud Courses Description

Datamation. Find the Right Cloud Computing Solution. Executive Brief. In This Paper

Ensuring a Thriving Cloud market: Why interoperability matters for business and government

Fundamentals of Web Programming a

Where in the Cloud are You? Session Thursday, March 5, 2015: 1:45 PM-2:45 PM Virginia (Sheraton Seattle)

Transcription:

1 Cloud computing: Impact on software engineering research and practice Thomas Østerlie Østerlie, Cloud computing

2 Overview Presentation's main message Sobriety: Cloud computing is a continuation of distributed models of software development and delivery Opportunities: Cloud computing offers new possibilities for software engineering researchers to study multilateral software development Outline Part I: Interpretation of the lecture topic Part II: Getting to grips with cloud computing Part III: Implications of cloud computing on software engineering research and practice

3 Part I: Interpretation of the lecture topic

4 Outline Part I: Interpretation of the lecture topic Defining cloud computing Cloud computing in the software engineering literature The impact debate Interpretation of the topic Part II: Getting to grips with cloud computing Part III: Implications of cloud computing on software engineering research and practice

5 Defining cloud computing "A new paradigm" "An overall confusing technological picture" "Simply a hype and a buzzword"

6 Cloud computing in software engineering *Results from queries with the string "cloud computing" in full paper text

7 Debating impact

8 Interpretation of the topic What is cloud computing? What could the impact of cloud computing be on software engineering research and practice?

9 Part II: Getting to grips with cloud computing

10 Outline Part I: Interpretation of the lecture topic Part II: Getting to grips with cloud computing Historical development of cloud computing Promises of cloud computing Cloud computing models Cloud computing compared Part III: Implications of cloud computing on software engineering research and practice

11 From mainframes to clouds Enduring processes in the development of computing * Emergent challenges Technological opportunities Core driver of computing development: Realizing cost savings Expanding commodification Increased abstraction * Interpretive framework draws on Friedman and Cornford (1989)

Expanding commodification 12 Personal computers, shrink-wrap software (late 1970s) Mass computerization (1980s and 1990s) Internetworking, hosting (late 1990s) Time-sharing (1960s)

Increasing abstraction 13 Personal computers, shrink-wrap software (late 1970s) Mass computerization (1980s and 1990s) Internetworking, hosting (late 1990s) Time-sharing (1960s) 3G languages (1970s) General purpose libraries (1970s and 1980s) Software components (late 1980s) Software services (early 2000s)

Convergence into clouds 14 Cloud computing (late 2000s) Personal computers, shrink-wrap software (late 1970s) Mass computerization (1980s and 1990s) Internetworking, hosting (late 1990s) Time-sharing (1960s) 3G languages (1970s) General purpose libraries (1970s and 1980s) Software components (late 1980s) Software services (early 2000s)

15 Promises of cloud computing Three promises for cost savings Reduced costs of operations and delivery Effective utilization of computing resources Reduced development costs Realizing the promised cost savings Models for software delivery Distributed hardware resources

16 Conceptual level model for cloud computing Layers Stakeholders Service use Service use Service use Cloud service user Internet Service Service Service Service Cloud service provider Virtualization Infrastructure provider Computers Computers Computers *Adapted from Vacquero et al. (2009), Leavitt (2009), and Erdogmus (2009)

17 Three models for separating ownership from use Model Software-as-a-service Cloud service user Cloud service provider Example End-user Turnkey application Google Docs Software developer Web service Amazon S3 Platform-as-a-service Software developer Application development and deployment platform Infrastructure-as-aservice End-user organization Computing infrastructure Force.com ElasticHost

18 End-user Software-as-a- Service Cloud service user: End user (organization) Cloud service provider: Turnkey software application Promises Subscription fee replaces cost of operations and delivery Utilization of computing resources through pay-per-use model

19 Software-as-a-Service Cloud service user: Software developer (organization) Cloud service provider: Reusable software services Promises Reduced development time through use of high-level service Maximum utilization of resources: pay for what you use Reduced operations costs

20 Platform-as-a-Service Cloud service user: Software development organizations Cloud service provider: Virtual platform for application development and deployment Promises Reducing cost of operations and delivery Increased development productivity

21 Infrastructure-as-a-Service Cloud service user: Computing organization Cloud service provider: Offers scalable virtual machines Promises Utilization of computing resources Reduced costs of operations (of hardware)

22 Cloud computing compared Grid computing Service-oriented architecture Cloud computing Web 2.0

23 Grid computing

24 Grid vs. cloud computing Similarities Deliver computing power through distributed networks of computers Differences Grids typically batch-oriented Cloud computing business flows and functionality Proposed convergence of the two

25 Service-oriented architecture

26 Services in clouds vs. SOA Similarities Most similar to software-as-a-service model Emphasizes services over products Web services seem the best current technology for realizing both Differences Cloud computing specifically over the Internet SOA also intranet within single or among several organizations Cloud computing mainly for developing new applications Legacy applications important for SOA

27 Web 2.0

28 Web 2.0 in the clouds Focus on interactive web applications Overlaps with end-user oriented software-as-aservice Software-as-service enabling for rapid development of Web 2.0 applications

29 Summary Cloud computing: Commodification of computing resources Conceptual-level model for cost reduction Reduced costs of operations and delivery Effective utilization of computing resources Reduced development costs Three cloud computing models Software-as-a-Service Platform-as-a-Service Infrastructure-as-a-Service

30 Part III: Impact of cloud computing on software engineering research and practice

31 Outline Part I: Interpretation of the lecture topic Part II: Getting to grips with cloud computing Part III: Implications of cloud computing on software engineering research and practice Assessing possible impact Multilateral software development Impact on software engineering practice Impact on software engineering research

32 Cloud computing mainly an industry phenomenon *Results from queries with the string "cloud computing" in full paper text

33 Assessing possible impact Software engineering: Research-informed software development Application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software Research: The study of these applications Practice: The application of these approaches Focus Lifecycle issues over technology issues Research perspective

34 Multilateral software development Aspect Software composition Application software development Coherent set of software modules Multilateral software development Interoperable thirdparty components Source code Full source available No source code for third-party components Execution model Single computer Often distributed between multiple computers Ownership and control Single team or organization Distributed between multiple organizations *Adapted from T. Østerlie (2009). "Problems and solutions: Maintaining an integrated system in a community of volunteers", Unpublished Ph.D. Thesis.

35 Challenges to practice Aspect Cloud computing Challenges Software composition Source code Execution model Ownership and control Interoperable third-party services No source code for thirdparty components Often distributed between multiple computers Distributed between multiple organizations Service selection System comprehension State inspection and debugging Separation of ownership and possession from use Interaction effects among services from different providers Coping with evolution of third-party services

36 Implications for research Theory generation Existing theory aimed at application software development Generate theory for multilateral software development Cloud computing one of many venues for this Research approaches Experimental studies reiterates old theoretical assumptions Theory generation requires practice studies Importance of bringing the socio-technical into account Research challenges Provider perspective remains underdeveloped Depart with the modernistic images of 'control' Embrace contingent forms of control and opportunism Manage increased complexity leniently

37 Summary Cloud computing is a continuation of distributed models of software development and delivery Cloud computing offers new possibilities for software engineering researchers to study multilateral software development