phd thesis defense of ajith ranabahu

163
26th July 2012 1 Image credit : http://www.epic-cities.eu

Upload: knoesis-center-wright-state-university

Post on 20-Aug-2015

2.384 views

Category:

Education


2 download

TRANSCRIPT

Page 1: PhD thesis defense of Ajith Ranabahu

26th July 2012 1

Image credit : http://www.epic-cities.eu

Page 2: PhD thesis defense of Ajith Ranabahu

2

The Story of the Biology Professor

26th July 2012

Page 3: PhD thesis defense of Ajith Ranabahu

3

What is the best way for me to crunch my

numbers?

26th July 2012

Page 4: PhD thesis defense of Ajith Ranabahu

26th July 2012 4

In house cluster

All logos are trademarks of the respective organizations

Public cloud

Privatecloud

Page 5: PhD thesis defense of Ajith Ranabahu

5

What is the issue here?

26th July 2012

Page 6: PhD thesis defense of Ajith Ranabahu

6

Programming for the cloud is hard!

26th July 2012

Page 7: PhD thesis defense of Ajith Ranabahu

7

Cloud software stacks are

incompatible!

26th July 2012

Page 8: PhD thesis defense of Ajith Ranabahu

8

Abstraction Driven Application and Data Portability in Cloud

Computing

Ajith H. Ranabahu

PhD Candidate

Ohio Center of Excellence in Knowledge-enabled Computing (kno.e.sis)

Wright State University

Dayton OH

Dissertation Defense: 26th July 201226th July 2012

Page 9: PhD thesis defense of Ajith Ranabahu

Carefully crafted abstractions provide a means to develop, deploy and manage cloud applications in a

platform agnostic manner

26th July 2012 9

Page 10: PhD thesis defense of Ajith Ranabahu

Agenda

• Overview of Using Abstractions

• Abstractions for program generation

• Abstractions for cloud interaction

26th July 2012 10

Page 11: PhD thesis defense of Ajith Ranabahu

Cloud in a nutshell

26th July 2012 11

XaaS

Data

Analytics

Hadoop

Logos and Images are trademarks of the respective companies / projects

Platform as a service (PaaS)

Software as a service (SaaS)

Infrastructure as a service (IaaS)

Page 12: PhD thesis defense of Ajith Ranabahu

What is the problem?

26th July 2012 12

Page 13: PhD thesis defense of Ajith Ranabahu

13

Programming for the cloud and keeping the applications portable is

hard!

26th July 2012

Page 14: PhD thesis defense of Ajith Ranabahu

14

Vendor lock-in is a major concern in cloud adoption

26th July 2012

Page 15: PhD thesis defense of Ajith Ranabahu

26th July 2012 15

Future of Cloud computing survey by North Bridge, showing the top 10 concerns in Cloud computing. Full survey available at http://www.northbridge.com/2012-cloud-computing-survey, released on June 20th 2012

Page 16: PhD thesis defense of Ajith Ranabahu

1626th July 2012

• Overview of Using Abstractions

• Abstractions for program generation

• Abstractions for cloud interaction

Page 17: PhD thesis defense of Ajith Ranabahu

26th July 2012 17

Why Abstract?

Page 18: PhD thesis defense of Ajith Ranabahu

26th July 2012 18

Completely decouple the cloud from applications!

Page 19: PhD thesis defense of Ajith Ranabahu

26th July 2012 19

What to Abstract?

Page 20: PhD thesis defense of Ajith Ranabahu

26th July 2012 20

Development of cloud applications

Page 21: PhD thesis defense of Ajith Ranabahu

26th July 2012 21

Deployment of cloud applications

Page 22: PhD thesis defense of Ajith Ranabahu

26th July 2012 22

Management of cloud applications

Page 23: PhD thesis defense of Ajith Ranabahu

26th July 2012 23

How to Abstract?

Page 24: PhD thesis defense of Ajith Ranabahu

24

What is already out there?

26th July 2012

Page 25: PhD thesis defense of Ajith Ranabahu

26th July 2012 25

Abstraction Based Mobile Application Generators

Page 26: PhD thesis defense of Ajith Ranabahu

26th July 2012 26

Abstraction Based Cloud Web Application Generators

Page 27: PhD thesis defense of Ajith Ranabahu

26th July 2012 27

Pla

tfor

m I

ndep

ende

nce

Complexity

Direct Programming

General Programming Language based Frameworks

Solution area we are interested in

Page 28: PhD thesis defense of Ajith Ranabahu

26th July 2012 28

Abstractions for cloud interaction - Cloud Brokers and Integrators

Page 29: PhD thesis defense of Ajith Ranabahu

26th July 2012 29

API Libraries

Page 30: PhD thesis defense of Ajith Ranabahu

26th July 2012 30

Pla

tfor

m I

ndep

ende

nce

Complexity

Original Cloud APIs

API Based solutions

Solution Area we are interested in

Cloud brokers

Page 31: PhD thesis defense of Ajith Ranabahu

31

What are our Solutions?

26th July 2012

Page 32: PhD thesis defense of Ajith Ranabahu

26th July 2012 32

Program using Domain Specific

Languages

Page 33: PhD thesis defense of Ajith Ranabahu

26th July 2012 33

Interact (Deploy and Manage)

via Middleware

Page 34: PhD thesis defense of Ajith Ranabahu

3426th July 2012

• Overview of Using Abstractions

• Abstractions for program generation

• Abstractions for cloud interaction

Page 35: PhD thesis defense of Ajith Ranabahu

3526th July 2012

Preliminaries – A background on

Languages

Page 36: PhD thesis defense of Ajith Ranabahu

3626th July 2012

What makes up a Language?

Page 37: PhD thesis defense of Ajith Ranabahu

26th July 2012 37

•Abstract Syntax Model (ASM)o An abstract model of what the language

represents

•Concrete Syntax Model (CSM)o The syntax of the language

•Transformationso A mapping from ASM to CSM or vice versa

Page 38: PhD thesis defense of Ajith Ranabahu

26th July 2012 38

Abstract Syntax Model

Concrete Syntax Model

Transformation

=

X Y

+ ZX + Y = Z

Page 39: PhD thesis defense of Ajith Ranabahu

26th July 2012 39

What is a Domain Specific Language

(DSL)?

Page 40: PhD thesis defense of Ajith Ranabahu

26th July 2012 40

A domain-specific language (DSL) is a programming language or executable specification language that offers, through appropriate notations and abstractions, expressive power focused on, and usually restricted to, a particular problem domain.

A. van Deursen, P. Klint, and J. Visser, “Domain-specific languages: an annotated bibliography,” SIGPLAN Not., vol. 35, no. 6, pp. 26–36, 2000.

Page 41: PhD thesis defense of Ajith Ranabahu

4126th July 2012

A domain is a set of operations / activities of interest

Page 42: PhD thesis defense of Ajith Ranabahu

26th July 2012 42

A model is an abstraction of a system or its environment

or both

K. Czarnecki and S. Helsen, “Feature-based survey of model transformation approaches,” IBM Systems Journal, vol. 45, no. 3, pp. 621–645, 2006.

Page 43: PhD thesis defense of Ajith Ranabahu

43

Domain Models and DSLs

26th July 2012

Page 44: PhD thesis defense of Ajith Ranabahu

44

The Modeling Hierarchy

26th July 2012

Page 45: PhD thesis defense of Ajith Ranabahu

26th July 2012 45

Meta-Metamodels

Domain Models

Metamodels

Computer Based Systems

describe

describe

describe

Page 46: PhD thesis defense of Ajith Ranabahu

46

ASM = Domain Meta Model

26th July 2012

Page 47: PhD thesis defense of Ajith Ranabahu

47

Where do we use DSLs in the context of

cloud applications?

26th July 2012

Page 48: PhD thesis defense of Ajith Ranabahu

48

Breaking down the Cloud Application

26th July 2012

Page 49: PhD thesis defense of Ajith Ranabahu

26th July 2012 49

Cloud Application

Data Aspects

Functional Aspects

Non-Functional Aspects

System Aspects

Amit Sheth and Ajith Ranabahu. Semantic Modeling for Cloud Computing, Part 2, IEEE Internet Computing, vol. 14, no. 4, July/Aug 2010 pages 81-84 Amit Sheth and Ajith Ranabahu. Semantic Modeling for Cloud Computing, Part 1, IEEE Internet Computing, vol. 14, no. 3, May/June 2010 pages 81-83

Page 50: PhD thesis defense of Ajith Ranabahu

Introduce DSLs to cover each aspect!

26th July 2012 50

Page 51: PhD thesis defense of Ajith Ranabahu

Problem Formation

26th July 2012 51

Page 52: PhD thesis defense of Ajith Ranabahu

How do we put things in a theoretical

perspective?

26th July 2012 52

Page 53: PhD thesis defense of Ajith Ranabahu

Focus on the transformations

26th July 2012 53

Page 54: PhD thesis defense of Ajith Ranabahu

54

Transformations from domain models to cloud supported

models

26th July 2012

Page 55: PhD thesis defense of Ajith Ranabahu

Focus on the properties of

language model transformations

26th July 2012 55

Page 56: PhD thesis defense of Ajith Ranabahu

Assertion :Each metamodel is a

graph

26th July 2012 56

Page 57: PhD thesis defense of Ajith Ranabahu

26th July 2012 57

Model Transformations – Relationship between models, metamodels and transformations

Page 58: PhD thesis defense of Ajith Ranabahu

58

Model Transformations – Relationship between models, metamodels and transformations expressed symbolically

26th July 2012

Page 59: PhD thesis defense of Ajith Ranabahu

Condition 1 : Each semantically distinct concept must be

distinctly defined in the domain metamodel

26th July 2012 59

Page 60: PhD thesis defense of Ajith Ranabahu

26th July 2012 60

Page 61: PhD thesis defense of Ajith Ranabahu

61

Example

26th July 2012

Page 62: PhD thesis defense of Ajith Ranabahu

6226th July 2012

Typical

Required

Metamodel for expressions is a simplified version from Software Language Engineering: Creating Domain-Specific Languages Using Metamodels By Anneke Kleppe

Page 63: PhD thesis defense of Ajith Ranabahu

26th July 2012 63

Condition 2 : The transformation must completely

define the target model

Page 64: PhD thesis defense of Ajith Ranabahu

26th July 2012 64

Page 65: PhD thesis defense of Ajith Ranabahu

26th July 2012 65

Lemma 1 : The transformation is not reversible

Page 66: PhD thesis defense of Ajith Ranabahu

26th July 2012 66

Derived condition for Map-Reduce style computations:

Domain meta model must be mappable to a map-reduce task

model

Page 67: PhD thesis defense of Ajith Ranabahu

Practical Implications

26th July 2012 67

Page 68: PhD thesis defense of Ajith Ranabahu

More detailed domain models are

needed!

26th July 2012 68

Page 69: PhD thesis defense of Ajith Ranabahu

Not all models can be transformed to

parallel architectures

26th July 2012 70

Page 70: PhD thesis defense of Ajith Ranabahu

Don’t keep hopes on Reverse Engineering!

26th July 2012 71

Page 71: PhD thesis defense of Ajith Ranabahu

72

What about Data?

26th July 2012

Page 72: PhD thesis defense of Ajith Ranabahu

73

Data schema Incorporated using

DSLs

26th July 2012

Page 73: PhD thesis defense of Ajith Ranabahu

74

Ontologies as data schemas

26th July 2012

Page 74: PhD thesis defense of Ajith Ranabahu

26th July 2012 75

Practical Applications : MobiCloud

My Contribution : Conceptualization and primary portion of implementation

1. A Domain Specific Language for Enterprise Grade Cloud-Mobile Hybrid Applications, 11th Workshop on Domain-Specific Modeling (DSM), 20112. Power of Clouds In Your Pocket: An Efficient Approach for Cloud Mobile Hybrid Application Development , Cloudcom 20103. Towards Cloud Mobile Hybrid Application Generation using Semantically Enriched Domain Specific Languages , International Workshop on Mobile Computing and Clouds (MobiCloud 2010)

Page 75: PhD thesis defense of Ajith Ranabahu

76

MobiCloud is a Cloud-Mobile hybrid application generator

26th July 2012

Page 76: PhD thesis defense of Ajith Ranabahu

7726th July 2012

•Front-end is a native Mobile application

•Back-end sits in a cloud, exposed by a service interface

•Both pieces considered the 'app'

Page 77: PhD thesis defense of Ajith Ranabahu

Persistent Storage

Service provider

Implementation

Server side

handler

Data Structures

UIService Client

Data Structures

Mobile Device Cloud

Cloud-mobile hybrid application26th July 2012 78

Page 78: PhD thesis defense of Ajith Ranabahu

79

MobiCloud Architecture

26th July 2012

Page 79: PhD thesis defense of Ajith Ranabahu

26th July 2012 80

MobiCloud DSL

Code Generation Templating Engine

GAE Templates

EC2 Templates

Android Templates

Blackberry Templates

Graphical Composer

Text based Composer

Other Composers

Page 80: PhD thesis defense of Ajith Ranabahu

81

MobiCloud DSL

26th July 2012

Page 81: PhD thesis defense of Ajith Ranabahu

26th July 2012 82

recipe(:todolist) do metadata({:id => 'task-manager'})

# models model(:task, {:name=>:string,:description => :string, :time => :date,:location => :string}) #controllers controller(:taskhandler) do action :create, :task action :retrieve, :task end

# views view :add_task, {:models =>[:task],:controller => :taskhandler, :action => :create} view :show_tasks, {:models =>[:task],:controller => :taskhandler, :action => :retrieve}end

Page 82: PhD thesis defense of Ajith Ranabahu

26th July 2012 83

MobiCloud Tools

Page 83: PhD thesis defense of Ajith Ranabahu

26th July 2012 84

MobiCloud Graphical Composer

Page 84: PhD thesis defense of Ajith Ranabahu

85

Available publicly at http://mobicloud.knoesis.org

26th July 2012

Page 85: PhD thesis defense of Ajith Ranabahu

86

MobiCloud Code Catalog

26th July 2012

Page 86: PhD thesis defense of Ajith Ranabahu

87

Available publicly at http://mobicloud-catalog.knoesis.org

26th July 2012

Page 87: PhD thesis defense of Ajith Ranabahu

8826th July 2012

MobiCloud has extensions that enable the use of known ontologies

Page 88: PhD thesis defense of Ajith Ranabahu

89

A Scenarios in a nutshell

26th July 2012

Page 89: PhD thesis defense of Ajith Ranabahu

90

Blood pressure recorder : Personal

Web Application

26th July 2012

Page 90: PhD thesis defense of Ajith Ranabahu

91

Objective : Record daily BP values

26th July 2012

Page 91: PhD thesis defense of Ajith Ranabahu

Data Driven 4 data items to be recorded and

retrieved (BP figures and date)Simple user interfacePersonal

Private (own) data source

26th July 2012 92

Page 92: PhD thesis defense of Ajith Ranabahu

93Visual composition of the blood pressure date recorder

26th July 2012

Page 93: PhD thesis defense of Ajith Ranabahu

94

Different Android views, showing the index and the addbp screens

26th July 2012

Page 94: PhD thesis defense of Ajith Ranabahu

95

showbp view of Android application

26th July 2012

Page 95: PhD thesis defense of Ajith Ranabahu

96

With MobiCloud, this application was built and

deployed under 5 minutes !

26th July 2012

Page 96: PhD thesis defense of Ajith Ranabahu

9726th July 2012

MobiCloud is the recipient of the Technology award at the Fukuoka

Ruby Innovators Competition

One of two winners of the technology award from 82 competitors over 9 countries

Page 97: PhD thesis defense of Ajith Ranabahu

26th July 2012 98

Practical Applications : SCALE

My Contribution : Concept and Implementation

A helping hand to our biology professor !

1. Identifying and Implementing the Underlying Operators for Nuclear Magnetic Resonance Based Metabolomics Data Analysis, Third International Conference on Bioinformatics and Computational Biology (BICoB-2011)2. The Cloud Agnostic e-Science Analysis Platform, IEEE Internet Computing 2011

Page 98: PhD thesis defense of Ajith Ranabahu

26th July 2012 99

SCALE is a DSL based Statistical Application

Generator

Page 99: PhD thesis defense of Ajith Ranabahu

SCALE DSL

26th July 2012 100

Page 100: PhD thesis defense of Ajith Ranabahu

26th July 2012 101

# load dataoriginal_data = load_data(:raw_data_file,{:format => "csv"})# sum normalizenormalized = sum_normalize(original_data)# Auto scalescaled = auto_scale(normalized)# write the filestore_data(:scaled, scaled)

Page 101: PhD thesis defense of Ajith Ranabahu

Supports 3 Target Platforms

26th July 2012 102

Page 102: PhD thesis defense of Ajith Ranabahu

10326th July 2012

•Hadoop (Local cluster or Amazon EC2)

•Windows Azure (using the experimental Daytona framework)

•Any desktop OS using Ruby

Page 103: PhD thesis defense of Ajith Ranabahu

26th July 2012 104

SCALE Architecture

Page 104: PhD thesis defense of Ajith Ranabahu

26th July 2012 105

SCALE DSL

Code Generation Templating Engine

Java (Hadoop) Templates

C# (Azure / Daytona) Templates

Ruby Templates

Graphical Composer

Text based Composer

Other Composers

Page 105: PhD thesis defense of Ajith Ranabahu

106

SCALE Tools

26th July 2012

Page 106: PhD thesis defense of Ajith Ranabahu

26th July 2012 107

SCALE Graphical Composer

Page 107: PhD thesis defense of Ajith Ranabahu

108

Available publicly at http://metabolink.knoesis.org/SCALE

26th July 2012

Page 108: PhD thesis defense of Ajith Ranabahu

109

Our friendly biologist can now quickly compose his

programs and run them with any resource available!

26th July 2012

Page 109: PhD thesis defense of Ajith Ranabahu

26th July 2012 110

What did we learn from these projects?

Page 110: PhD thesis defense of Ajith Ranabahu

26th July 2012 111

Code Metrics comparison

Page 111: PhD thesis defense of Ajith Ranabahu

LOC counts of generated

applications

26th July 2012 112

Page 112: PhD thesis defense of Ajith Ranabahu

26th July 2012 113

Page 113: PhD thesis defense of Ajith Ranabahu

11426th July 2012

Page 114: PhD thesis defense of Ajith Ranabahu

115

Significant savings in effort can be

obtained by using DSLs

26th July 2012

Page 115: PhD thesis defense of Ajith Ranabahu

116

Effort Comparison – LOC counts in

templates

26th July 2012

Page 116: PhD thesis defense of Ajith Ranabahu

11726th July 2012

Page 117: PhD thesis defense of Ajith Ranabahu

11826th July 2012

Page 118: PhD thesis defense of Ajith Ranabahu

119

The effort required to create the templates

is manageable

26th July 2012

Page 119: PhD thesis defense of Ajith Ranabahu

26th July 2012 120

Pla

tfor

m I

ndep

ende

nce

Complexity

Direct Programming

General Programming Language based Frameworks

DSL based Solutions

Page 120: PhD thesis defense of Ajith Ranabahu

12126th July 2012

• Overview of Using Abstractions

• Abstractions for program generation

• Abstractions for cloud interaction

Page 121: PhD thesis defense of Ajith Ranabahu

122

Preliminaries – Basics of Middleware

26th July 2012

Page 122: PhD thesis defense of Ajith Ranabahu

26th July 2012 123

Middleware

APIs

Application 1 Application 2Application

N

Lower level

services

Interface

Lower level

services

Interface

Lower level

services

Interface

Platform 1 Platform 2 Platform M

Page 123: PhD thesis defense of Ajith Ranabahu

Using Middleware In the Cloud Context

26th July 2012 124

Page 124: PhD thesis defense of Ajith Ranabahu

125

What Operations can we abstract?

26th July 2012

Page 125: PhD thesis defense of Ajith Ranabahu

126

Application Deployment

26th July 2012

Page 126: PhD thesis defense of Ajith Ranabahu

127

Application Undeployment

26th July 2012

Page 127: PhD thesis defense of Ajith Ranabahu

128

Data Snapshots

26th July 2012

Page 128: PhD thesis defense of Ajith Ranabahu

129

Additional Benefits

26th July 2012

Page 129: PhD thesis defense of Ajith Ranabahu

130

Enforcing / Reusing Patterns

26th July 2012

Page 130: PhD thesis defense of Ajith Ranabahu

131

How to Apply Middleware in the

cloud context?

26th July 2012

Page 131: PhD thesis defense of Ajith Ranabahu

26th July 2012 132

General Architecture for using Middleware in a cloud context

Page 132: PhD thesis defense of Ajith Ranabahu

133

Practical Applications : Altocumulus

26th July 2012

My Contribution : Evolving the concept and major portion of implementation (Member of the 4 person team. Internship work at IBM Research 2009)

1. Toward Cloud-Agnostic Middlewares, OOPSLA, 20092. A Best Practice Model for Cloud Middleware Systems , Best Practices in Cloud Computing: Designing for the Cloud workshop OOPSLA, 2009

Page 133: PhD thesis defense of Ajith Ranabahu

134

Cloud Middleware System from IBM

Research

26th July 2012

Page 134: PhD thesis defense of Ajith Ranabahu

135

Supported 3 target platforms

26th July 2012

Page 135: PhD thesis defense of Ajith Ranabahu

13626th July 2012

• Amazon EC2o Included EC2 clones such as Eucalyptus

• Google App Engine

• IBM HiPODSo IBM private cloud system, providing

infrastructure cloud services

Page 136: PhD thesis defense of Ajith Ranabahu

137

Introduced the Concept of Best

Practices

26th July 2012

Page 137: PhD thesis defense of Ajith Ranabahu

138

Altocumulus Architecture

26th July 2012

Page 138: PhD thesis defense of Ajith Ranabahu

26th July 2012 139

Page 139: PhD thesis defense of Ajith Ranabahu

140

Altocumulus Dashboard

26th July 2012

Page 140: PhD thesis defense of Ajith Ranabahu

26th July 2012 141

Altocumulus Dashboard – Showing the list of deployments and their status

Page 141: PhD thesis defense of Ajith Ranabahu

26th July 2012 142

Pla

tfor

m I

ndep

ende

nce

Complexity

Original Cloud APIs

API Based solutions

Cloud brokers

Altocumulus / Middleware Solutions

Page 142: PhD thesis defense of Ajith Ranabahu

Altocumulus technology is now part of the IBM PureSystems Cloud

offering, as part of the IBM Workload Deployer

26th July 2012 143

Page 143: PhD thesis defense of Ajith Ranabahu

Publication Coverage

26th July 2012 144

Page 144: PhD thesis defense of Ajith Ranabahu

26th July 2012 145

Altocumulus MobiCloud SCALE Others

2009 1. OOPSLA [1]2. OOPSLA cloud

workshop [1]* Altocumulus demonstration

2010 1. IEEE Cloudcom [2]2. MobiCase MobiCloud

workshop [1]* MobiCloud demonstration

2 part article on cloud application modeling in IEEE Internet Computing

2011 1. workshop at SPLASH [1]

2. IEEE COMSOC MMTC E-Letter [1] (invited)

1. BiCob [1]2. IEEE Internet

Computing [1]

2012 Paper under review in IEEE TSC

Total of 11 publications and 2 demonstrations covering this research

Page 145: PhD thesis defense of Ajith Ranabahu

26th July 2012 146

• Ajith Ranabahu, Michael Maximilien, Amit Sheth and Krishnaprasad Thirunarayan. A Domain Specific Language for Enterprise Grade Cloud-Mobile Hybrid Applications, 11th Workshop on Domain-Specific Modeling (DSM) 2011 , Portland OR, USA.

• Ashwin Manjunatha, Ajith Ranabahu, Amit Sheth and Krishnaprasad Thirunarayan. Power of Clouds In Your Pocket: An Efficient Approach for Cloud Mobile Hybrid Application Development , 2nd IEEE International Conference on Cloud Computing Technology and Science, 2010, Indianapolis IN, USA. Pages 496-503

• Ajith Ranabahu, Ashwin Manjunatha, Amit Sheth and Krishnaprasad Thirunarayan. Towards Cloud Mobile Hybrid Application Generation using Semantically Enriched Domain Specific Languages , International Workshop on Mobile Computing and Clouds (MobiCloud 2010) ,Santa Clara CA 2010.

Publications

Page 146: PhD thesis defense of Ajith Ranabahu

26th July 2012 147

• Ashwin Manjunatha, Paul Anderson, Ajith Ranabahu and Amit Sheth. Identifying and Implementing the Underlying Operators for Nuclear Magnetic Resonance Based Metabolomics Data Analysis, Third International Conference on Bioinformatics and Computational Biology (BICoB-2011), 2011, New Orleans LA, USA. pages 205-209

• Ajith Ranabahu and Amit Sheth. Semantics Centric Solutions for Application and Data Portability in Cloud Computing, 2nd IEEE International Conference on Cloud Computing Technology and Science, 2010, Indianapolis IN, USA. pages 234-241

• Kalpa Gunaratna, Ajith Ranabahu, Paul Anderson and Amit Sheth. A Study in Hadoop Streaming with Matlab for NMR Data Processing , 2nd IEEE International Conference on Cloud Computing Technology and Science, 2010, Indianapolis IN, USA. pages 786-789

• Michael Maximilien, Ajith Ranabahu, Roy Engehausen and Laura Anderson. Toward Cloud-Agnostic Middlewares, 24th ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2009, Orlando FL, USA. pages 619-626

Publications (Cont.)

Page 147: PhD thesis defense of Ajith Ranabahu

14826th July 2012

• Ajith Ranabahu and Michael Maximilien. A Best Practice Model for Cloud Middleware Systems , Proceedings of the Best Practices in Cloud Computing: Designing for the Cloud workshop at the 24th ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA) pages 41-51

• Ajith Ranabahu, Paul Anderson and Amit Sheth. The Cloud Agnostic e-Science Analysis Platform, IEEE Internet Computing, vol. 15, no. 6, Nov/Dec. 2011 pages 85-89

• Amit Sheth and Ajith Ranabahu. Semantic Modeling for Cloud Computing, Part 2, IEEE Internet Computing, vol. 14, no. 4, July/Aug 2010 pages 81-84

• Amit Sheth and Ajith Ranabahu. Semantic Modeling for Cloud Computing, Part 1, IEEE Internet Computing, vol. 14, no. 3, May/June 2010 pages 81-83

Publications(Cont.)

Page 148: PhD thesis defense of Ajith Ranabahu

26th July 2012 149

Conclusion

Page 149: PhD thesis defense of Ajith Ranabahu

26th July 2012 150

Using DSLs to provide domain abstractions is a feasible way to

develop cloud applicationsin a platform agnostic manner

Page 150: PhD thesis defense of Ajith Ranabahu

26th July 2012 151

Middleware based process abstractions are a feasible way to deploy and manage applications in the cloud

Page 151: PhD thesis defense of Ajith Ranabahu

26th July 2012 152

My Other Research Activities

Page 152: PhD thesis defense of Ajith Ranabahu

26th July 2012 153

Year

Res

earc

h an

d C

ontr

ibut

ions

SOA

Annotation

Service Composition

Cloud Middleware

Cloud Application Generation

2007 2008 2009 2010 2011 2012

MediatabilityEvent Detection

SA-WSDL SA-REST Kino Annotation Tools

IBM Sharable Code

IBM Altocumulus

MobiCloud

SCALE

Faceted Search / APIHut

publication

Open source / public tool

Patent

Page 153: PhD thesis defense of Ajith Ranabahu

Questions

26th July 2012 154

Page 154: PhD thesis defense of Ajith Ranabahu

26th July 2012 155

Page 155: PhD thesis defense of Ajith Ranabahu

26th July 2012 156

Page 156: PhD thesis defense of Ajith Ranabahu

Thank You

26th July 2012 157

Page 157: PhD thesis defense of Ajith Ranabahu

158

Extra Slides

26th July 2012

Page 158: PhD thesis defense of Ajith Ranabahu

159

Salesforce Contact Manager : Enterprise

Web application

26th July 2012

Page 159: PhD thesis defense of Ajith Ranabahu

160

Objective: View contacts from your Salesforce account

26th July 2012

Page 160: PhD thesis defense of Ajith Ranabahu

26th July 2012 161

•Connected to external data sources

•Likely to be shared

•Rigorous security

Page 161: PhD thesis defense of Ajith Ranabahu

162

Uses 2nd Generation MobiCloud with the

Salesforce Extension

26th July 2012

Page 162: PhD thesis defense of Ajith Ranabahu

163

Text Mode, editing the salesforce contact manager Application – Graphical mode is not active in the advanced mode

26th July 2012

Page 163: PhD thesis defense of Ajith Ranabahu

164

Different Android views, showing the index, salesforce_accounts and salesforce_login screens

26th July 2012