Tales of Empirically Understanding and Providing Process Support for Migrating to Clouds



Similar documents
Understanding and Addressing Architectural Challenges of Cloud- Based Systems

Cloud Computing for Global Software Engineering: Designing Infrastructures and Supporting Migration

Cloud Computing as a Source of Innovation for Global Software Engineering

Cloud Computing Technology

CHAPTER 8 CLOUD COMPUTING

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

Web Application Hosting Cloud Solution Architecture.

Cloud Computing: Making the right choices

Public Cloud Workshop Offerings

Cloud Computing: The Next Computing Paradigm

BUSINESS MANAGEMENT SUPPORT

CLOUD COMPUTING An Overview

Security Considerations for Public Mobile Cloud Computing

Architectural Implications of Cloud Computing

Cloud Computing Architecture: A Survey

Performance Management for Cloudbased STC 2012

Perspectives on Cloud Computing and Standards. Peter Mell, Tim Grance NIST, Information Technology Laboratory

Perspectives on Moving to the Cloud Paradigm and the Need for Standards. Peter Mell, Tim Grance NIST, Information Technology Laboratory

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

Cloud Computing. Key Considerations for Adoption. Abstract. Ramkumar Dargha

Strategic approach to cloud computing deployment

Cloud Computing A NIST Perspective & Beyond. Robert Bohn, PhD Advanced Network Technologies Division

Logical Data Models for Cloud Computing Architectures

The Cisco Powered Network Cloud: An Exciting Managed Services Opportunity

SOA and Cloud in practice - An Example Case Study

Cloud 101. Mike Gangl, Caltech/JPL, 2015 California Institute of Technology. Government sponsorship acknowledged

Cloud Computing in the Enterprise An Overview. For INF 5890 IT & Management Ben Eaton 24/04/2013

PTaaS: Platform for Providing Software Developing Applications and Tools as a Service

Evaluation Methodology of Converged Cloud Environments

Cloud Computing: What IT Professionals Need to Know

Service Component Architecture for Building Cloud Services

Oracle Applications and Cloud Computing - Future Direction

Architecting the Cloud

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

Topics. Images courtesy of Majd F. Sakr or from Wikipedia unless otherwise noted.

Permanent Link:

Introduction to Engineering Using Robotics Experiments Lecture 18 Cloud Computing

Software Systems Architecture in a World of Cloud Computing. Christine Miyachi SDM Entering Class 2000

An Introduction to Private Cloud

Cloud computing - Architecting in the cloud

W H I T E PA P E R. Cloud Migration Methodology -Janaki Jayachandran (Director of Technology) a t t e n t i o n. a l w a y s.

Cloud Computing. Bringing the Cloud into Focus

Grid Computing Vs. Cloud Computing

High Performance Computing Cloud Computing. Dr. Rami YARED

REVIEW OF CLOUD TESTING, TYPES, CHALLENGES AND FUTURE SCOPE

White Paper on CLOUD COMPUTING

IJRSET 2015 SPL Volume 2, Issue 11 Pages: 29-33

SaaS, PaaS & TaaS. By: Raza Usmani

Cloud SingularLogic:

Cloud Courses Description

Cloud Computing An Introduction

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

Security & Trust in the Cloud

International Journal of Engineering Research & Management Technology

Realizing the Value Proposition of Cloud Computing

How To Understand Cloud Computing

Cloud Computing Service Models, Types of Clouds and their Architectures, Challenges.

Performance Management for Cloud-based Applications STC 2012

Mobile and Cloud computing and SE

Platform Leadership in Software as a Service: How Platforms Facilitate Innovation

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

Cluster, Grid, Cloud Concepts

Migration of Legacy Applications to the Cloud

Public Cloud Offerings and Private Cloud Options. Week 2 Lecture 4. M. Ali Babar

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

Improving IT Service Management Architecture in Cloud Environment on Top of Current Frameworks

Future of Cloud Computing. Irena Bojanova, Ph.D. UMUC, NIST

Cloud Courses Description

Performance Gathering and Implementing Portability on Cloud Storage Data

It s All About Cloud Key Concepts, Players, Platforms And Technologies

Sistemi Operativi e Reti. Cloud Computing

Planning the Migration of Enterprise Applications to the Cloud

Abstract 1. INTRODUCTION

Security Issues in Cloud Computing

Cloud Based Architectures in Ground Systems of Space Missions

CLOUD COMPUTING IN HIGHER EDUCATION

Using the Cloud to Facilitate Global Software Development Challenges

Accelerate Your Enterprise Private Cloud Initiative

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

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

Software as a Service (SaaS) for Management information system using multiple tenants

Lecture 02a Cloud Computing I

Key Research Challenges in Cloud Computing

Towards a Standard PaaS Implementation API: A Generic Cloud Persistent-Storage API

Transcription:

Tales of Empirically Understanding and Providing Process Support for Migrating to Clouds M. Ali Babar Lancaster University, UK & IT University of Copenhagen Talk @ MESOCA, Eindhoven, the Netherlands September, 23, 2013

Overview Cloud computing and its key facets Some scenarios that make migration difficult Empiricism as a research approach Insights from three tales of cloud migration Concluding remarks

Background Brief M. Ali Babar Reader @ Lancaster University PhD in CSE, University of New South Wales Work History: ITU, CPH: Dec. 2009 Lero, Ireland: 2007 2009 Tales of Empirically Understanding and Providing Process Support for Migrating NICTA, Australia: 2003-2007 JRCASE, Macquarie University: 2001 2003 Various industrial roles in IT: Prior to 2001 Research in software architecture, Service Orientation, Cloud Computing, and Software Development Paradigm http://malibabar.wordpress.com

Cloud Computing Research Threads Decision Support Systems Processes for Engineering Clouds Architecting Cloud Systems & Services

Defining Cloud Computing! Cloud computing is a model for enabling 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 interaction. (A definition by the US National institute of standards and technology (NIST))

Key Facets of Cloud Computing Reproduced from Figure 1 of The Future of Cloud Computing: Opportunities for European Cloud Computing beyond 2010.

Actors and Reference Architectures Source: European Cloud Partnership Info Day 12/04/2012, inspired by the NIST roadmap

Location Specific Challenges for Migration legal experts Scenario 3 data only in region B processing only in region A Region B specification tools Scenario 2 data only in region B domain experts Scenario 1 processing and data only in region A Region C Region A

Empirism as a Research Approach Empiricism Generally being regarded at the heart of the modern scientific methods, that our theories should be based on our observations of the world rather than on intuition or faith Empirical Software Engineering (ESE) Empirical research in SE is the scientific use of quantitative and qualitative data to understand and improve software product and software development process (Vic Basili) Data is central element to address a research issues related to processes or tools ESE provides techniques for understanding and developing processes and tools

Being the First Mover in Public Sector!!!

Cloud Migration in Danish Public Sector Project purpose Reduce the overhead of running mail system. And focus on delivering core values Objectives All mailboxes on O365 and validated Close down of temporary Exchange 2010 Use of Microsoft s email center for all emails Project scope email and calendar Migration of all TAP and VIP mailboxes Migration of all student mailboxes Changing our email routing to use Microsoft s email center as primary MX servers Features & resources

Potential Risks and Mitigation Action 1/2 Risk% Loss%of%data%during%migration% Loss%of%accessibility%to%the%mailbox%during%migration.% Security%breach% Security%risk%lies%in%data%being%migrated%to%the%wrong% mailboxes,%meaning%that%another%user%than%the% owner%would%gain%access%to%data.% Change%in%administration%paradigm.%% Mail%routing%H%Due%to%the%complex%mail%routing% structure%that%can%be%problematic.%! Preventive%actions% Use%of%dedicated%migration%tool.%Extra%backup%before% migration%and%smaller%number%of%user%in%each%migration.%% Use%of%dedicated%migration%tool%for%ensuring%accessibility% during%the%migration.%% Using%a%dedicated%migration%tools%for%preventing%security% lapses.% Training%and%workshops%around%the%admin%part%of%O365.% Closing%down%the%mails%for%2H3%hours% %have%a%backup%plan% and%inform%the%users.%%

Potential Risks and Mitigation Action 2/2 Risk% Delayed%migration%will%create%extra%expenses%in% keeping%the%current%exchange%2010%platform%running% Lack%of%internal%resources%for%the%project%can%result% in%increased%project%cost%due%to%use%of%more%external% resources.% If%Consultants%may%not%be%able%to%fulfill%the%agreed% obligations.%%! Preventive%actions% Plan%for%delays%and%arrange%extra%internal%staff%on%call.%% Get%commitment%from%all%involved%departments%of%the% organizations.% Arrange%a%backup%plan%with%the%vendor s%support%team%to% complete%the%project%with%them%directly.% There%will%be%a%financial%impact%in%this%case.%

Key Challenges and Strategies No specific precedent Get powerful stakeholders behind the move Get the vendors excited for widespread publicity Legal impediments Work with regulators Data Protection Agency Inform vendors about the required customization Have legal and technical tracks within the project Fear of unknown Take the internal stakeholders into full confidence IT staff briefings and training Strategy for moving back

Key Outcomes Setting the path for Danish public sector Ministerial support and appreciation From 18 months to 2 months migration time O365 contract tailored for Danish legal system Stable platform for critical services No more regular outrages of email and calendar Security and privacy better managed Staff allocated to more value added services Cost reduction and reinvestment No big licensing fee for educational institutes; saved money is going towards improving services

Cloud Migration of Software Engineering Tools

Tools as a Service (TaaS)!

Experimental Cloud Migration of Tools Migrating software metrics collection and analysis tool called Hakystat Supporting a large number of organizations for process and product metrics for monitoring and improvement Features & resources GSE organizations require elastic computing and storage resources SaaS on IaaS (Amazon) or SaaS on PaaS (Goolge)

What is Hackystat? A framework for collecting and analyzing process and product data Provides IDE s Plugins called sensors that send information to a service called SensorBase Several services to compute metrics by using the data from SensorBase Metrics are viewed by using a ProjectBrowser, which uses services like SensorBase, Telemetry, DailyProjectData, and TickerTape

Architecture of Hackystat Generates reports for external clients Provides visualization of different metrics through GUIs Receives and stores data and provides daily abstractions Provides daily abstraction of data Provides weekly, monthly and yearly abstractions of metrics

Quality Attributes & Architectural Decisions Quality Attributes Scalability Portability Compatibility Reliability & Autonomous Scalability Efficient & effective deployments Architectural Decisions Amazon EC2 & S3 Google App Engine Replication of system services to meet performance requirments. Separation of database layer into a new service that utilizes platform specific persistency features. A wrapper layer is added to ensure platform independence. A separate database layer to provide seamless transfer of database layer. System features are exposed through origonal REST API. A wrapper layer is added to provide abstraction to services cluster and their deployment configuration. Façade/Waper layer to provide abstraction. Amazon s Elastic Load Balancer ensures autonomous scalability. Amazon Elastic Load Balancer ensures auto scaling as well as efficient and cost effective deployment configuration. No action required. Scalability is handled by platform. Refactoring of persistency components to make it compatible with Google Datastore persistence. Portability to other platforms is not possible. System features are exposed through origonal REST API. Ensured by platform. Deployment of application components on cloud is managed by platform.

Architectural Views of Hackystat in Cloud

Key Challenges 1/2 Heavy reliance on cloud infrastructure SaaS on PaaS or IaaS are tightly coupled with the APIs provided by a service provider Huge efforts required for porting applications Vendor dependent technology enhancements Make it difficult to evolve a complex system using public clouds based on changing business needs Lack of tooling support Existing tools only cover API specific details and do not help understand underlying virtual environment

Key Challenges 2/2 Evaluation of quality attributes Supporting implementation level investigation of static quality attributes e.g., complexity Modeling & testing unknown users and infrastructures for scalability, accountability.. Modeling & reasoning fine-grained control over privacy and security design and implementation of multi-tenancy Testing Change in the infrastructure of PaaS/SaaS platforms necessitate continuous testing

Differences in TaaS and SaaS TaaS contains executable artifacts needs different security mechanisms TaaS needs to be integrated with other tools and middleware components TaaS artefacts can consume unpredictable resources TaaS needs different kinds of SLAs continuous monitoring and adaptation

Educating Engineers in Cloud Migration

Cloud Migration Education Context Cloud computing project cluster - imparting knowledge, understanding, and skills of cloud computing in general and migration in particular Set up Teams of 7-8 students working on migration projects open source projects 6 projects Project phases and process support Pilot project migration of one given system no process support provided Main project independent selection of an open source support through a generic process framework, general guidelines, and GitHub

Process and Tools Support: Research Agenda & Progress

Architecture-Based Migration Process Source: Kazman R., Woods S. G., Carrière S. J.: Requirements for Integrating Software Architecture and Reengineering Models: CORUM II, in proc. of the Working Conference on Reverse Engineering (WCRE'98), pp. 154, IEEE, 1998

A Generic Cloud Migration Process

Cloud Migration Knowledge Ecosystems collaboration Company Private Ecosystem A Private Ecosystem B Employee Private Ecosystem C Implementing create customized AK input form share AK Public Ecosystem View AK Modeling IDE AK Consume AK Extraction KBase AK Consume Modeling Tool Requirement Integration integration CM/Issue Tracking

Architecture Knowledge for Cloud Migration

Tools for Supporting Cloud Migration

Concluding Remarks!!! Cloud computing matters, quickly learn how to exploit the benefits and address the challenges Technological issues are difficult to address but socio-legal challenges can be daunting Migration without suitable processes and tools can be painful support is needed Lack of knowledge and skill migration education is very important but not attractive

Acknowledgements Slides are based on the work that is being carried out in my group in close collaboration with several colleagues, PhD students, and industrial partners. Some research challenges and promising solutions have been developed for joint research proposals. ITU s migration to O365 project documents and interviews with key stakeholders Students teams reports and interviews for the project cluster course 2013 at ITU

For the Details of the Work Chauhan, M. A., Ali Babar, M., Towards Process Support for Migrating Applications to Cloud Computing, Proceedings of the International Conference on Cloud and Service Computing (CSC 2012), Shanghai, China, 2012. Chauhan, M.A., Ali Babar, M., Cloud Infrastructure for Providing Tools as a Service: Quality Attributes and Potential Solutions, Proceedings of the Nordic Symposium on Cloud Computing & Internet Technologies (NordiCloud), Helsinki, Finland, 2012. Ali Babar, M., Chauhan, M. A., A Tale of Migration to Cloud Computing for Sharing Experiences and Observations, SECLOUD workshop, Collocated with ICSE 2011, Hawaii, USA.

Thank You! Questions M. Ali Babar alibabar.m@gmail.com malibabar.wordpress.com