SlideShare a Scribd company logo
Image credit : http://www.epic-cities.eu
26th July 2012                                              1
The Story of the
                 Biology Professor


26th July 2012                       2
What is the best way
                 for me to crunch my
                      numbers?

26th July 2012                          3
Private
                                                                                          cloud


                                                                       In house cluster




                                                                                          Public
                                                                                          cloud




            All logos are trademarks of the respective organizations
26th July 2012                                                                                      4
What is the issue
                     here?


26th July 2012                       5
Programming for the
                    cloud is hard!


26th July 2012                         6
Cloud software
                   stacks are
                 incompatible!

26th July 2012                    7
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



26th July 2012                                                                    8
Carefully crafted abstractions
          provide a means to develop, deploy
          and manage cloud applications in a
               platform agnostic manner



26th July 2012                                 9
Agenda
       • Overview of Using Abstractions
       • Abstractions for program
                 generation
       •         Abstractions for cloud interaction



26th July 2012                                        10
Cloud in a nutshell
                 Data
                                         Software as a service (SaaS)
           Analytics
             Hadoop     XaaS

                                         Platform as a service (PaaS)




                             Infrastructure as a service (IaaS)




26th July 2012          Logos and Images are trademarks of the respective companies / projects   11
What is the problem?


26th July 2012                     12
Programming for the
           cloud and keeping the
           applications portable is
                    hard!

26th July 2012                        13
Vendor lock-in is a
                 major concern in
                  cloud adoption

26th July 2012                         14
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
26th July 2012                                                                            15
• Overview of Using Abstractions
       • Abstractions for program
                 generation
       •         Abstractions for cloud interaction



26th July 2012                                        16
Why Abstract?


26th July 2012                   17
Completely decouple the cloud
                     from applications!




26th July 2012                                   18
What to Abstract?


26th July 2012                       19
Development of cloud
                     applications



26th July 2012                          20
Deployment of cloud
                    applications



26th July 2012                         21
Management of cloud
                    applications



26th July 2012                         22
How to Abstract?


26th July 2012                      23
What is already out
                       there?


26th July 2012                         24
Abstraction Based Mobile
                 Application Generators




26th July 2012                              25
Abstraction Based Cloud Web
                   Application Generators




26th July 2012                                 26
General
                                                     Programming
         Platform Independence




                                 Solution area we    Language
                                 are interested in   based
                                                     Frameworks




                                                              Direct
                                                              Programming



                                                         Complexity

26th July 2012                                                              27
Abstractions for cloud interaction -
              Cloud Brokers and Integrators




26th July 2012                                      28
API Libraries




26th July 2012                   29
Cloud
         Platform Independence




                                 Solution Area we    brokers
                                 are interested in

                                                               API Based
                                                               solutions




                                                                  Original
                                                                  Cloud APIs



                                                                 Complexity

26th July 2012                                                                 30
What are our
                 Solutions?


26th July 2012                  31
Program using
                 Domain Specific
                   Languages

26th July 2012                     32
Interact
          (Deploy and Manage)
             via Middleware

26th July 2012                  33
• Overview of Using Abstractions
       • Abstractions for program
                 generation
       •         Abstractions for cloud interaction



26th July 2012                                        34
Preliminaries – A
                 background on
                   Languages

26th July 2012                       35
What makes up a
                   Language?


26th July 2012                     36
• Abstract Syntax Model (ASM)
                 o An abstract model of what the language
                   represents
          • Concrete Syntax Model (CSM)
            o The syntax of the language
          • Transformations
                 o A mapping from ASM to CSM or vice versa


26th July 2012                                               37
Abstract Syntax                           Concrete
                             Transformation
          Model                               Syntax Model


                     =
                                                X+Y=Z
                 +       Z

           X         Y



26th July 2012                                               38
What is a Domain
                 Specific Language
                      (DSL)?

26th July 2012                       39
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.

26th July 2012                                                                                        40
A domain is a set of operations
              / activities of interest



26th July 2012                              41
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.

26th July 2012                                                                               42
Domain Models and
                      DSLs


26th July 2012                       43
The Modeling
                  Hierarchy


26th July 2012                  44
Meta-Metamodels

                           describe


                      Metamodels

                                      describe


                               Domain Models

                                                  describe


                                           Computer Based Systems

26th July 2012                                                      45
ASM = Domain Meta
                      Model


26th July 2012                       46
Where do we use
       DSLs in the context of
        cloud applications?

26th July 2012                  47
Breaking down the
                 Cloud Application


26th July 2012                       48
System Aspects            Data Aspects

                                              Cloud Application

                                  Non-Functional              Functional
                                     Aspects                   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
26th July 2012                                                                                           49
Introduce DSLs to
                 cover each aspect!


26th July 2012                        50
Problem Formation


26th July 2012                       51
How do we put
         things in a theoretical
             perspective?

26th July 2012                     52
Focus on the
                 transformations


26th July 2012                     53
Transformations
            from domain models
             to cloud supported
                   models
26th July 2012                    54
Focus on the
                   properties of
                 language model
                 transformations
26th July 2012                     55
Assertion :
            Each metamodel is a
                  graph

26th July 2012                    56
Model Transformations – Relationship between models,
                           metamodels and transformations
26th July 2012                                                          57
Model Transformations – Relationship between models,
                 metamodels and transformations expressed symbolically
26th July 2012                                                           58
Condition 1 : Each semantically
              distinct concept must be
           distinctly defined in the domain
                      metamodel



26th July 2012                                59
26th July 2012   60
Example


26th July 2012             61
Typical

  Required




             Metamodel for expressions is a simplified version from Software Language Engineering:
             Creating Domain-Specific Languages Using Metamodels By Anneke Kleppe
26th July 2012                                                                                       62
Condition 2 : The
          transformation must completely
              define the target model



26th July 2012                             63
26th July 2012   64
Lemma 1 : The transformation
                     is not reversible




26th July 2012                                  65
Derived condition for Map-Reduce
                       style computations:

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


26th July 2012                                      66
Practical
                 Implications


26th July 2012                  67
More detailed
                 domain models are
                     needed!

26th July 2012                       68
Not all models can
            be transformed to
           parallel architectures

26th July 2012                      70
Don’t keep hopes on
         Reverse Engineering!


26th July 2012                  71
What about Data?


26th July 2012                      72
Data schema
                 Incorporated using
                       DSLs

26th July 2012                        73
Ontologies as data
                     schemas


26th July 2012                        74
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), 2011
     2. Power of Clouds In Your Pocket: An Efficient Approach for Cloud Mobile Hybrid Application Development ,
     Cloudcom 2010
     3. Towards Cloud Mobile Hybrid Application Generation using Semantically Enriched Domain Specific
     Languages , International Workshop on Mobile Computing and Clouds (MobiCloud 2010)
26th July 2012                                                                                                    75
MobiCloud is a
          Cloud-Mobile hybrid
          application generator

26th July 2012                    76
• Front-end is a native Mobile
                 application
         •       Back-end sits in a cloud,
                 exposed by a service interface
         •       Both pieces considered the 'app'


26th July 2012                                      77
Service         Server
                               Service
                 UI                                       provider         side             Persistent
                                Client                 Implementation     handler            Storage



          Data Structures                                                       Data Structures




                        Mobile Device                                   Cloud

26th July 2012                          Cloud-mobile hybrid application                                  78
MobiCloud
                 Architecture


26th July 2012                  79
Graphical          Text based           Other
                 Composer           Composer           Composers



                                  MobiCloud DSL


                         Code Generation Templating Engine

                   GAE         EC2          Android     Blackberry
                 Templates   Templates     Templates    Templates




26th July 2012                                                       80
MobiCloud DSL


26th July 2012                   81
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




26th July 2012                                                                         82
MobiCloud Tools


26th July 2012                     83
MobiCloud Graphical Composer
26th July 2012                                  84
Available publicly at
           http://mobicloud.knoesis.org



26th July 2012                            85
MobiCloud Code Catalog

26th July 2012                            86
Available publicly at
        http://mobicloud-catalog.knoesis.org




26th July 2012                                 87
MobiCloud has extensions that
          enable the use of known ontologies




26th July 2012                                 88
A Scenarios in a
                    nutshell


26th July 2012                      89
Blood pressure
                 recorder : Personal
                   Web Application

26th July 2012                         90
Objective : Record
                  daily BP values


26th July 2012                        91
     Data Driven
                    4 data items to be recorded and
                     retrieved (BP figures and date)
            Simple user interface
            Personal

                    Private (own) data source


26th July 2012                                         92
Visual composition of the blood pressure date recorder
26th July 2012                                                            93
Different Android views, showing the index and the addbp
26th July 2012
                                          screens                           94
showbp view of Android application
26th July 2012                                        95
With MobiCloud, this
         application was built and
        deployed under 5 minutes !


26th July 2012                       96
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




26th July 2012                                                                    97
A helping hand to our biology professor !




      Practical Applications :
              SCALE
                         My Contribution : Concept and Implementation


      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
26th July 2012                                                                                         98
SCALE is a DSL based
                 Statistical Application
                       Generator



26th July 2012                             99
SCALE DSL


26th July 2012               100
# load data
           original_data = load_data(:raw_data_file,{:format =>
           "csv"})
           # sum normalize
           normalized = sum_normalize(original_data)
           # Auto scale
           scaled = auto_scale(normalized)
           # write the file
           store_data(:scaled, scaled)




26th July 2012                                                    101
Supports 3 Target
                    Platforms


26th July 2012                       102
• Hadoop (Local cluster or
                     Amazon EC2)
                 •   Windows Azure (using the
                     experimental Daytona
                     framework)
                 •   Any desktop OS using Ruby


26th July 2012                                   103
SCALE Architecture


26th July 2012                        104
Graphical         Text based           Other
                 Composer          Composer           Composers



                                  SCALE DSL


                        Code Generation Templating Engine

                 Java (Hadoop)       C# (Azure /          Ruby
                   Templates     Daytona) Templates     Templates




26th July 2012                                                      105
SCALE Tools


26th July 2012                 106
SCALE Graphical Composer
26th July 2012                              107
Available publicly at
                 http://metabolink.knoesis.org/SCALE




26th July 2012                                         108
Our friendly biologist can
             now quickly compose his
            programs and run them with
              any resource available!


26th July 2012                             109
What did we learn
            from these projects?


26th July 2012                     110
Code Metrics
                 comparison


26th July 2012                  111
LOC counts of
                   generated
                  applications

26th July 2012                   112
26th July 2012   113
26th July 2012   114
Significant savings
                   in effort can be
                 obtained by using
                         DSLs
26th July 2012                         115
Effort Comparison –
                    LOC counts in
                      templates

26th July 2012                         116
26th July 2012   117
26th July 2012   118
The effort required to
            create the templates
               is manageable

26th July 2012                       119
General
                                 DSL based   Programming
         Platform Independence




                                 Solutions   Language
                                             based
                                             Frameworks




                                                      Direct
                                                      Programming



                                                 Complexity

26th July 2012                                                  120
• Overview of Using Abstractions
       • Abstractions for program
                 generation
       •         Abstractions for cloud interaction



26th July 2012                                        121
Preliminaries –
          Basics of Middleware


26th July 2012                   122
Application
                 Application 1   Application 2
                                                     N




                                        APIs


                                 Middleware


                  Interface         Interface      Interface
                   Lower             Lower          Lower
                    level             level          level
                  services          services       services
                 Platform 1        Platform 2     Platform M

26th July 2012                                                 123
Using Middleware In
                  the Cloud Context


26th July 2012                         124
What Operations can
               we abstract?


26th July 2012                     125
Application
                 Deployment


26th July 2012                 126
Application
                 Undeployment


26th July 2012                  127
Data Snapshots


26th July 2012                    128
Additional Benefits


26th July 2012                         129
Enforcing / Reusing
                      Patterns


26th July 2012                         130
How to Apply
                 Middleware in the
                  cloud context?

26th July 2012                       131
General Architecture for using Middleware in a cloud context
26th July 2012                                                                  132
Practical Applications :
           Altocumulus
     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, 2009
     2. A Best Practice Model for Cloud Middleware Systems , Best Practices in Cloud Computing: Designing
     for the Cloud workshop OOPSLA, 2009


26th July 2012                                                                                              133
Cloud Middleware
                 System from IBM
                    Research

26th July 2012                      134
Supported 3 target
                    platforms


26th July 2012                        135
• Amazon EC2
                   o Included EC2 clones such as Eucalyptus
                 • Google App Engine
                 • IBM HiPODS
                   o IBM private cloud system, providing
                     infrastructure cloud services



26th July 2012                                                136
Introduced the
                 Concept of Best
                     Practices

26th July 2012                     137
Altocumulus
                 Architecture


26th July 2012                  138
26th July 2012   139
Altocumulus
                 Dashboard


26th July 2012                 140
Altocumulus Dashboard – Showing the list of deployments and
                                        their status

26th July 2012                                                                 141
Altocumulus /
         Platform Independence



                                 Middleware
                                 Solutions       Cloud
                                                 brokers




                                                       API Based
                                                       solutions


                                                             Original
                                                             Cloud APIs



                                                            Complexity

26th July 2012                                                            142
Altocumulus technology is now
         part of the IBM PureSystems Cloud
        offering, as part of the IBM Workload
                       Deployer



26th July 2012                                  143
Publication Coverage


26th July 2012                     144
Altocumulus         MobiCloud                   SCALE                Others


         2009       1.   OOPSLA [1]
                    2.   OOPSLA cloud
                         workshop [1]
                    * Altocumulus
                    demonstration

         2010                           1.   IEEE Cloudcom [2]                           2 part article on
                                        2.   MobiCase MobiCloud                          cloud application
                                             workshop [1]                                modeling in IEEE
                                        * MobiCloud demonstration                        Internet Computing


         2011                           1.   workshop at SPLASH     1.   BiCob [1]
                                             [1]                    2.   IEEE Internet
                                        2.   IEEE COMSOC                 Computing [1]
                                             MMTC E-Letter [1]
                                             (invited)


         2012                                                                            Paper under review
                                                                                         in IEEE TSC




26th July 2012   Total of 11 publications and 2 demonstrations covering this research                         145
Publications
                 •   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.




26th July 2012                                                                                  146
Publications (Cont.)
                 •   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



26th July 2012                                                                                    147
Publications(Cont.)
                 •   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




26th July 2012                                                                                    148
Conclusion


26th July 2012                149
Using DSLs to provide domain
                 abstractions is a feasible way to
                    develop cloud applications
                  in a platform agnostic manner



26th July 2012                                       150
Middleware based process
                 abstractions are a feasible
                 way to deploy and manage
                  applications in the cloud



26th July 2012                                 151
My Other Research Activities




26th July 2012                                  152
SCALE

                             Cloud                                                               MobiCloud
                             Application
                             Generation
Research and Contributions




                                                                               IBM
                                                                           Altocumulus
                                                                                                              publication
                             Cloud
                             Middleware                                                                       Open source / public tool
                                                                                                              Patent
                                           IBM Sharable
                                              Code
                             Service
                             Composition


                                            SA-WSDL                         SA-REST                Kino Annotation Tools
                             Annotation

                                                                Faceted Search / APIHut
                             SOA
                                            Event
                                                          Mediatability
                                           Detection

                                                                                                                                   Year
                                            2007             2008             2009        2010         2011                 2012
26th July 2012                                                                                                                        153
Questions




26th July 2012               154
26th July 2012   155
26th July 2012   156
Thank You


26th July 2012               157
Extra Slides


26th July 2012                  158
Salesforce Contact
           Manager : Enterprise
             Web application

26th July 2012                    159
Objective: View
                 contacts from your
                 Salesforce account

26th July 2012                        160
• Connected to external data
                     sources
                 •   Likely to be shared
                 •   Rigorous security


26th July 2012                                  161
Uses  2nd
                   Generation
           MobiCloud with the
          Salesforce Extension

26th July 2012                   162
Text Mode, editing the salesforce contact manager Application –
                       Graphical mode is not active in the advanced mode
26th July 2012                                                                     163
Different Android views, showing the index,
26th July 2012
                 salesforce_accounts and salesforce_login screens   164

More Related Content

Viewers also liked

Cartic Ramakrishnan's dissertation defense
Cartic Ramakrishnan's dissertation defenseCartic Ramakrishnan's dissertation defense
Cartic Ramakrishnan's dissertation defenseCartic Ramakrishnan
 
Automatic Emotion Identification from Text
Automatic Emotion Identification from TextAutomatic Emotion Identification from Text
Automatic Emotion Identification from Text
Artificial Intelligence Institute at UofSC
 
Mining and Analyzing Subjective Experiences in User-generated Content
Mining and Analyzing Subjective Experiences in User-generated ContentMining and Analyzing Subjective Experiences in User-generated Content
Mining and Analyzing Subjective Experiences in User-generated Content
Artificial Intelligence Institute at UofSC
 
Contrast Pattern Aided Regression and Classification
Contrast Pattern Aided Regression and ClassificationContrast Pattern Aided Regression and Classification
Contrast Pattern Aided Regression and Classification
Artificial Intelligence Institute at UofSC
 
Ashutosh Jadhav PhD Defense: Knowledge Driven Search Intent Mining
Ashutosh Jadhav PhD Defense: Knowledge Driven Search Intent MiningAshutosh Jadhav PhD Defense: Knowledge Driven Search Intent Mining
Ashutosh Jadhav PhD Defense: Knowledge Driven Search Intent Mining
Artificial Intelligence Institute at UofSC
 
Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...
Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...
Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...
Artificial Intelligence Institute at UofSC
 
Personalized and Adaptive Semantic Information Filtering for Social Media - P...
Personalized and Adaptive Semantic Information Filtering for Social Media - P...Personalized and Adaptive Semantic Information Filtering for Social Media - P...
Personalized and Adaptive Semantic Information Filtering for Social Media - P...
Artificial Intelligence Institute at UofSC
 
Knowledge-driven Implicit Information Extraction
Knowledge-driven Implicit Information ExtractionKnowledge-driven Implicit Information Extraction
Knowledge-driven Implicit Information Extraction
Artificial Intelligence Institute at UofSC
 
Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...
Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...
Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...
Artificial Intelligence Institute at UofSC
 
Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...
Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...
Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...
Artificial Intelligence Institute at UofSC
 
Web and Complex Systems Lab @ Kno.e.sis
Web and Complex Systems Lab @ Kno.e.sisWeb and Complex Systems Lab @ Kno.e.sis
Web and Complex Systems Lab @ Kno.e.sis
Artificial Intelligence Institute at UofSC
 
2015 Kno.e.sis Center Annual Review
2015 Kno.e.sis Center Annual Review2015 Kno.e.sis Center Annual Review
2015 Kno.e.sis Center Annual Review
Artificial Intelligence Institute at UofSC
 
Trust Management: A Tutorial
Trust Management: A TutorialTrust Management: A Tutorial
Trust Management: A Tutorial
Artificial Intelligence Institute at UofSC
 
Kno.e.sis Approach to Impactful Research & Training for Exceptional Careers
Kno.e.sis Approach to Impactful Research & Training for Exceptional CareersKno.e.sis Approach to Impactful Research & Training for Exceptional Careers
Kno.e.sis Approach to Impactful Research & Training for Exceptional Careers
Amit Sheth
 
Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...
Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...
Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...
Artificial Intelligence Institute at UofSC
 
Smart Data - How you and I will exploit Big Data for personalized digital hea...
Smart Data - How you and I will exploit Big Data for personalized digital hea...Smart Data - How you and I will exploit Big Data for personalized digital hea...
Smart Data - How you and I will exploit Big Data for personalized digital hea...
Amit Sheth
 
Kno.e.sis Review: late 2012 to mid 2013
Kno.e.sis Review: late 2012 to mid 2013Kno.e.sis Review: late 2012 to mid 2013
Kno.e.sis Review: late 2012 to mid 2013
Artificial Intelligence Institute at UofSC
 
Knoesis Student Achievement
Knoesis Student AchievementKnoesis Student Achievement
Knoesis Student Achievement
Artificial Intelligence Institute at UofSC
 
Context Aware Harassment Detection in Social Media [Overview]
Context Aware Harassment Detection in Social Media [Overview]Context Aware Harassment Detection in Social Media [Overview]
Context Aware Harassment Detection in Social Media [Overview]
Artificial Intelligence Institute at UofSC
 
2017 sa tc_pi_meeting_-_poster final 2
2017 sa tc_pi_meeting_-_poster final 22017 sa tc_pi_meeting_-_poster final 2
2017 sa tc_pi_meeting_-_poster final 2
Monireh Ebrahimi
 

Viewers also liked (20)

Cartic Ramakrishnan's dissertation defense
Cartic Ramakrishnan's dissertation defenseCartic Ramakrishnan's dissertation defense
Cartic Ramakrishnan's dissertation defense
 
Automatic Emotion Identification from Text
Automatic Emotion Identification from TextAutomatic Emotion Identification from Text
Automatic Emotion Identification from Text
 
Mining and Analyzing Subjective Experiences in User-generated Content
Mining and Analyzing Subjective Experiences in User-generated ContentMining and Analyzing Subjective Experiences in User-generated Content
Mining and Analyzing Subjective Experiences in User-generated Content
 
Contrast Pattern Aided Regression and Classification
Contrast Pattern Aided Regression and ClassificationContrast Pattern Aided Regression and Classification
Contrast Pattern Aided Regression and Classification
 
Ashutosh Jadhav PhD Defense: Knowledge Driven Search Intent Mining
Ashutosh Jadhav PhD Defense: Knowledge Driven Search Intent MiningAshutosh Jadhav PhD Defense: Knowledge Driven Search Intent Mining
Ashutosh Jadhav PhD Defense: Knowledge Driven Search Intent Mining
 
Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...
Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...
Hemant Purohit PhD Defense: Mining Citizen Sensor Communities for Cooperation...
 
Personalized and Adaptive Semantic Information Filtering for Social Media - P...
Personalized and Adaptive Semantic Information Filtering for Social Media - P...Personalized and Adaptive Semantic Information Filtering for Social Media - P...
Personalized and Adaptive Semantic Information Filtering for Social Media - P...
 
Knowledge-driven Implicit Information Extraction
Knowledge-driven Implicit Information ExtractionKnowledge-driven Implicit Information Extraction
Knowledge-driven Implicit Information Extraction
 
Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...
Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...
Delroy Cameron's Dissertation Defense: A Contenxt-Driven Subgraph Model for L...
 
Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...
Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...
Knowledge-empowered Probabilistic Graphical Models for Physical-Cyber-Social ...
 
Web and Complex Systems Lab @ Kno.e.sis
Web and Complex Systems Lab @ Kno.e.sisWeb and Complex Systems Lab @ Kno.e.sis
Web and Complex Systems Lab @ Kno.e.sis
 
2015 Kno.e.sis Center Annual Review
2015 Kno.e.sis Center Annual Review2015 Kno.e.sis Center Annual Review
2015 Kno.e.sis Center Annual Review
 
Trust Management: A Tutorial
Trust Management: A TutorialTrust Management: A Tutorial
Trust Management: A Tutorial
 
Kno.e.sis Approach to Impactful Research & Training for Exceptional Careers
Kno.e.sis Approach to Impactful Research & Training for Exceptional CareersKno.e.sis Approach to Impactful Research & Training for Exceptional Careers
Kno.e.sis Approach to Impactful Research & Training for Exceptional Careers
 
Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...
Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...
Data Processing and Semantics for Advanced Internet of Things (IoT) Applicati...
 
Smart Data - How you and I will exploit Big Data for personalized digital hea...
Smart Data - How you and I will exploit Big Data for personalized digital hea...Smart Data - How you and I will exploit Big Data for personalized digital hea...
Smart Data - How you and I will exploit Big Data for personalized digital hea...
 
Kno.e.sis Review: late 2012 to mid 2013
Kno.e.sis Review: late 2012 to mid 2013Kno.e.sis Review: late 2012 to mid 2013
Kno.e.sis Review: late 2012 to mid 2013
 
Knoesis Student Achievement
Knoesis Student AchievementKnoesis Student Achievement
Knoesis Student Achievement
 
Context Aware Harassment Detection in Social Media [Overview]
Context Aware Harassment Detection in Social Media [Overview]Context Aware Harassment Detection in Social Media [Overview]
Context Aware Harassment Detection in Social Media [Overview]
 
2017 sa tc_pi_meeting_-_poster final 2
2017 sa tc_pi_meeting_-_poster final 22017 sa tc_pi_meeting_-_poster final 2
2017 sa tc_pi_meeting_-_poster final 2
 

Similar to PhD thesis defense of Ajith Ranabahu

APR 26, 2012: Under the Radar: Presenting Cloudscaling
APR 26, 2012: Under the Radar: Presenting CloudscalingAPR 26, 2012: Under the Radar: Presenting Cloudscaling
APR 26, 2012: Under the Radar: Presenting Cloudscaling
troyangrignon
 
Cloudian Review in 2012
Cloudian Review in 2012Cloudian Review in 2012
Cloudian Review in 2012CLOUDIAN KK
 
Cloud software engineering
Cloud software engineeringCloud software engineering
Cloud software engineering
Ian Sommerville
 
Presentation from IBM/RTL in Pune
Presentation from IBM/RTL in PunePresentation from IBM/RTL in Pune
Presentation from IBM/RTL in Pune
Anand Deshpande
 
CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012
CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012
CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012
Gigaom
 
The role of architecture in outsourcing photos only version
The role of architecture in outsourcing photos only versionThe role of architecture in outsourcing photos only version
The role of architecture in outsourcing photos only version
Har Gootzen
 
Final Year Project Guidance
Final Year Project GuidanceFinal Year Project Guidance
Final Year Project Guidance
Varad Meru
 
Aris 9 See the Future Today
Aris 9 See the Future TodayAris 9 See the Future Today
Aris 9 See the Future Today
Software AG
 
Introduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoCIntroduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoC
Funnelll
 
Prototyping your iPhone/iPad app
Prototyping your iPhone/iPad appPrototyping your iPhone/iPad app
Prototyping your iPhone/iPad app
Paul Ardeleanu
 
Why (most) softwareprojects fail silently
Why (most) softwareprojects fail silentlyWhy (most) softwareprojects fail silently
Why (most) softwareprojects fail silently
Hendrik Lösch
 
Oracle Cloud Computing Strategy (EMO)
Oracle Cloud Computing Strategy (EMO)Oracle Cloud Computing Strategy (EMO)
Oracle Cloud Computing Strategy (EMO)rachgregs
 
Architectural Patterns for the Cloud
Architectural Patterns for the CloudArchitectural Patterns for the Cloud
Architectural Patterns for the CloudMaarten Balliauw
 
Responsive Web Design in Oracle Application Express
Responsive Web Design in Oracle Application ExpressResponsive Web Design in Oracle Application Express
Responsive Web Design in Oracle Application Express
Shakeeb Rahman
 
SURFconext: a next generation collaboration infrastructure across institution...
SURFconext: a next generation collaboration infrastructure across institution...SURFconext: a next generation collaboration infrastructure across institution...
SURFconext: a next generation collaboration infrastructure across institution...
University of Amsterdam
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4rajarshir
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4rajarshir
 

Similar to PhD thesis defense of Ajith Ranabahu (20)

APR 26, 2012: Under the Radar: Presenting Cloudscaling
APR 26, 2012: Under the Radar: Presenting CloudscalingAPR 26, 2012: Under the Radar: Presenting Cloudscaling
APR 26, 2012: Under the Radar: Presenting Cloudscaling
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloudian Review in 2012
Cloudian Review in 2012Cloudian Review in 2012
Cloudian Review in 2012
 
Cloud software engineering
Cloud software engineeringCloud software engineering
Cloud software engineering
 
Presentation from IBM/RTL in Pune
Presentation from IBM/RTL in PunePresentation from IBM/RTL in Pune
Presentation from IBM/RTL in Pune
 
CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012
CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012
CLOUD LOCK-IN AND THE MYTH OF OPEN APIS at Structure 2012
 
The role of architecture in outsourcing photos only version
The role of architecture in outsourcing photos only versionThe role of architecture in outsourcing photos only version
The role of architecture in outsourcing photos only version
 
Final Year Project Guidance
Final Year Project GuidanceFinal Year Project Guidance
Final Year Project Guidance
 
Aris 9 See the Future Today
Aris 9 See the Future TodayAris 9 See the Future Today
Aris 9 See the Future Today
 
Introduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoCIntroduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoC
 
Prototyping your iPhone/iPad app
Prototyping your iPhone/iPad appPrototyping your iPhone/iPad app
Prototyping your iPhone/iPad app
 
Why (most) softwareprojects fail silently
Why (most) softwareprojects fail silentlyWhy (most) softwareprojects fail silently
Why (most) softwareprojects fail silently
 
Oracle Cloud Computing Strategy (EMO)
Oracle Cloud Computing Strategy (EMO)Oracle Cloud Computing Strategy (EMO)
Oracle Cloud Computing Strategy (EMO)
 
Native vs html5
Native vs html5Native vs html5
Native vs html5
 
Architectural Patterns for the Cloud
Architectural Patterns for the CloudArchitectural Patterns for the Cloud
Architectural Patterns for the Cloud
 
Spmcasestudy
SpmcasestudySpmcasestudy
Spmcasestudy
 
Responsive Web Design in Oracle Application Express
Responsive Web Design in Oracle Application ExpressResponsive Web Design in Oracle Application Express
Responsive Web Design in Oracle Application Express
 
SURFconext: a next generation collaboration infrastructure across institution...
SURFconext: a next generation collaboration infrastructure across institution...SURFconext: a next generation collaboration infrastructure across institution...
SURFconext: a next generation collaboration infrastructure across institution...
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4
 
Sos besu forum_v4
Sos besu forum_v4Sos besu forum_v4
Sos besu forum_v4
 

Recently uploaded

Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
Anna Sz.
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
Nguyen Thanh Tu Collection
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
Atul Kumar Singh
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
Balvir Singh
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
Col Mukteshwar Prasad
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
kaushalkr1407
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
Steve Thomason
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
Special education needs
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
Jheel Barad
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
BhavyaRajput3
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
AzmatAli747758
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
JosvitaDsouza2
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
Jisc
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
TechSoup
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
bennyroshan06
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
Vikramjit Singh
 

Recently uploaded (20)

Polish students' mobility in the Czech Republic
Polish students' mobility in the Czech RepublicPolish students' mobility in the Czech Republic
Polish students' mobility in the Czech Republic
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
Chapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptxChapter 3 - Islamic Banking Products and Services.pptx
Chapter 3 - Islamic Banking Products and Services.pptx
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
 
1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx1.4 modern child centered education - mahatma gandhi-2.pptx
1.4 modern child centered education - mahatma gandhi-2.pptx
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
 
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
 

PhD thesis defense of Ajith Ranabahu

  • 1. Image credit : http://www.epic-cities.eu 26th July 2012 1
  • 2. The Story of the Biology Professor 26th July 2012 2
  • 3. What is the best way for me to crunch my numbers? 26th July 2012 3
  • 4. Private cloud In house cluster Public cloud All logos are trademarks of the respective organizations 26th July 2012 4
  • 5. What is the issue here? 26th July 2012 5
  • 6. Programming for the cloud is hard! 26th July 2012 6
  • 7. Cloud software stacks are incompatible! 26th July 2012 7
  • 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 26th July 2012 8
  • 9. Carefully crafted abstractions provide a means to develop, deploy and manage cloud applications in a platform agnostic manner 26th July 2012 9
  • 10. Agenda • Overview of Using Abstractions • Abstractions for program generation • Abstractions for cloud interaction 26th July 2012 10
  • 11. Cloud in a nutshell Data Software as a service (SaaS) Analytics Hadoop XaaS Platform as a service (PaaS) Infrastructure as a service (IaaS) 26th July 2012 Logos and Images are trademarks of the respective companies / projects 11
  • 12. What is the problem? 26th July 2012 12
  • 13. Programming for the cloud and keeping the applications portable is hard! 26th July 2012 13
  • 14. Vendor lock-in is a major concern in cloud adoption 26th July 2012 14
  • 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 26th July 2012 15
  • 16. • Overview of Using Abstractions • Abstractions for program generation • Abstractions for cloud interaction 26th July 2012 16
  • 18. Completely decouple the cloud from applications! 26th July 2012 18
  • 19. What to Abstract? 26th July 2012 19
  • 20. Development of cloud applications 26th July 2012 20
  • 21. Deployment of cloud applications 26th July 2012 21
  • 22. Management of cloud applications 26th July 2012 22
  • 23. How to Abstract? 26th July 2012 23
  • 24. What is already out there? 26th July 2012 24
  • 25. Abstraction Based Mobile Application Generators 26th July 2012 25
  • 26. Abstraction Based Cloud Web Application Generators 26th July 2012 26
  • 27. General Programming Platform Independence Solution area we Language are interested in based Frameworks Direct Programming Complexity 26th July 2012 27
  • 28. Abstractions for cloud interaction - Cloud Brokers and Integrators 26th July 2012 28
  • 30. Cloud Platform Independence Solution Area we brokers are interested in API Based solutions Original Cloud APIs Complexity 26th July 2012 30
  • 31. What are our Solutions? 26th July 2012 31
  • 32. Program using Domain Specific Languages 26th July 2012 32
  • 33. Interact (Deploy and Manage) via Middleware 26th July 2012 33
  • 34. • Overview of Using Abstractions • Abstractions for program generation • Abstractions for cloud interaction 26th July 2012 34
  • 35. Preliminaries – A background on Languages 26th July 2012 35
  • 36. What makes up a Language? 26th July 2012 36
  • 37. • Abstract Syntax Model (ASM) o An abstract model of what the language represents • Concrete Syntax Model (CSM) o The syntax of the language • Transformations o A mapping from ASM to CSM or vice versa 26th July 2012 37
  • 38. Abstract Syntax Concrete Transformation Model Syntax Model = X+Y=Z + Z X Y 26th July 2012 38
  • 39. What is a Domain Specific Language (DSL)? 26th July 2012 39
  • 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. 26th July 2012 40
  • 41. A domain is a set of operations / activities of interest 26th July 2012 41
  • 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. 26th July 2012 42
  • 43. Domain Models and DSLs 26th July 2012 43
  • 44. The Modeling Hierarchy 26th July 2012 44
  • 45. Meta-Metamodels describe Metamodels describe Domain Models describe Computer Based Systems 26th July 2012 45
  • 46. ASM = Domain Meta Model 26th July 2012 46
  • 47. Where do we use DSLs in the context of cloud applications? 26th July 2012 47
  • 48. Breaking down the Cloud Application 26th July 2012 48
  • 49. System Aspects Data Aspects Cloud Application Non-Functional Functional Aspects 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 26th July 2012 49
  • 50. Introduce DSLs to cover each aspect! 26th July 2012 50
  • 52. How do we put things in a theoretical perspective? 26th July 2012 52
  • 53. Focus on the transformations 26th July 2012 53
  • 54. Transformations from domain models to cloud supported models 26th July 2012 54
  • 55. Focus on the properties of language model transformations 26th July 2012 55
  • 56. Assertion : Each metamodel is a graph 26th July 2012 56
  • 57. Model Transformations – Relationship between models, metamodels and transformations 26th July 2012 57
  • 58. Model Transformations – Relationship between models, metamodels and transformations expressed symbolically 26th July 2012 58
  • 59. Condition 1 : Each semantically distinct concept must be distinctly defined in the domain metamodel 26th July 2012 59
  • 62. Typical Required Metamodel for expressions is a simplified version from Software Language Engineering: Creating Domain-Specific Languages Using Metamodels By Anneke Kleppe 26th July 2012 62
  • 63. Condition 2 : The transformation must completely define the target model 26th July 2012 63
  • 65. Lemma 1 : The transformation is not reversible 26th July 2012 65
  • 66. Derived condition for Map-Reduce style computations: Domain meta model must be mappable to a map-reduce task model 26th July 2012 66
  • 67. Practical Implications 26th July 2012 67
  • 68. More detailed domain models are needed! 26th July 2012 68
  • 69. Not all models can be transformed to parallel architectures 26th July 2012 70
  • 70. Don’t keep hopes on Reverse Engineering! 26th July 2012 71
  • 71. What about Data? 26th July 2012 72
  • 72. Data schema Incorporated using DSLs 26th July 2012 73
  • 73. Ontologies as data schemas 26th July 2012 74
  • 74. 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), 2011 2. Power of Clouds In Your Pocket: An Efficient Approach for Cloud Mobile Hybrid Application Development , Cloudcom 2010 3. Towards Cloud Mobile Hybrid Application Generation using Semantically Enriched Domain Specific Languages , International Workshop on Mobile Computing and Clouds (MobiCloud 2010) 26th July 2012 75
  • 75. MobiCloud is a Cloud-Mobile hybrid application generator 26th July 2012 76
  • 76. • Front-end is a native Mobile application • Back-end sits in a cloud, exposed by a service interface • Both pieces considered the 'app' 26th July 2012 77
  • 77. Service Server Service UI provider side Persistent Client Implementation handler Storage Data Structures Data Structures Mobile Device Cloud 26th July 2012 Cloud-mobile hybrid application 78
  • 78. MobiCloud Architecture 26th July 2012 79
  • 79. Graphical Text based Other Composer Composer Composers MobiCloud DSL Code Generation Templating Engine GAE EC2 Android Blackberry Templates Templates Templates Templates 26th July 2012 80
  • 81. 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 26th July 2012 82
  • 84. Available publicly at http://mobicloud.knoesis.org 26th July 2012 85
  • 86. Available publicly at http://mobicloud-catalog.knoesis.org 26th July 2012 87
  • 87. MobiCloud has extensions that enable the use of known ontologies 26th July 2012 88
  • 88. A Scenarios in a nutshell 26th July 2012 89
  • 89. Blood pressure recorder : Personal Web Application 26th July 2012 90
  • 90. Objective : Record daily BP values 26th July 2012 91
  • 91. Data Driven  4 data items to be recorded and retrieved (BP figures and date)  Simple user interface  Personal  Private (own) data source 26th July 2012 92
  • 92. Visual composition of the blood pressure date recorder 26th July 2012 93
  • 93. Different Android views, showing the index and the addbp 26th July 2012 screens 94
  • 94. showbp view of Android application 26th July 2012 95
  • 95. With MobiCloud, this application was built and deployed under 5 minutes ! 26th July 2012 96
  • 96. 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 26th July 2012 97
  • 97. A helping hand to our biology professor ! Practical Applications : SCALE My Contribution : Concept and Implementation 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 26th July 2012 98
  • 98. SCALE is a DSL based Statistical Application Generator 26th July 2012 99
  • 100. # load data original_data = load_data(:raw_data_file,{:format => "csv"}) # sum normalize normalized = sum_normalize(original_data) # Auto scale scaled = auto_scale(normalized) # write the file store_data(:scaled, scaled) 26th July 2012 101
  • 101. Supports 3 Target Platforms 26th July 2012 102
  • 102. • Hadoop (Local cluster or Amazon EC2) • Windows Azure (using the experimental Daytona framework) • Any desktop OS using Ruby 26th July 2012 103
  • 104. Graphical Text based Other Composer Composer Composers SCALE DSL Code Generation Templating Engine Java (Hadoop) C# (Azure / Ruby Templates Daytona) Templates Templates 26th July 2012 105
  • 107. Available publicly at http://metabolink.knoesis.org/SCALE 26th July 2012 108
  • 108. Our friendly biologist can now quickly compose his programs and run them with any resource available! 26th July 2012 109
  • 109. What did we learn from these projects? 26th July 2012 110
  • 110. Code Metrics comparison 26th July 2012 111
  • 111. LOC counts of generated applications 26th July 2012 112
  • 114. Significant savings in effort can be obtained by using DSLs 26th July 2012 115
  • 115. Effort Comparison – LOC counts in templates 26th July 2012 116
  • 118. The effort required to create the templates is manageable 26th July 2012 119
  • 119. General DSL based Programming Platform Independence Solutions Language based Frameworks Direct Programming Complexity 26th July 2012 120
  • 120. • Overview of Using Abstractions • Abstractions for program generation • Abstractions for cloud interaction 26th July 2012 121
  • 121. Preliminaries – Basics of Middleware 26th July 2012 122
  • 122. Application Application 1 Application 2 N APIs Middleware Interface Interface Interface Lower Lower Lower level level level services services services Platform 1 Platform 2 Platform M 26th July 2012 123
  • 123. Using Middleware In the Cloud Context 26th July 2012 124
  • 124. What Operations can we abstract? 26th July 2012 125
  • 125. Application Deployment 26th July 2012 126
  • 126. Application Undeployment 26th July 2012 127
  • 129. Enforcing / Reusing Patterns 26th July 2012 130
  • 130. How to Apply Middleware in the cloud context? 26th July 2012 131
  • 131. General Architecture for using Middleware in a cloud context 26th July 2012 132
  • 132. Practical Applications : Altocumulus 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, 2009 2. A Best Practice Model for Cloud Middleware Systems , Best Practices in Cloud Computing: Designing for the Cloud workshop OOPSLA, 2009 26th July 2012 133
  • 133. Cloud Middleware System from IBM Research 26th July 2012 134
  • 134. Supported 3 target platforms 26th July 2012 135
  • 135. • Amazon EC2 o Included EC2 clones such as Eucalyptus • Google App Engine • IBM HiPODS o IBM private cloud system, providing infrastructure cloud services 26th July 2012 136
  • 136. Introduced the Concept of Best Practices 26th July 2012 137
  • 137. Altocumulus Architecture 26th July 2012 138
  • 139. Altocumulus Dashboard 26th July 2012 140
  • 140. Altocumulus Dashboard – Showing the list of deployments and their status 26th July 2012 141
  • 141. Altocumulus / Platform Independence Middleware Solutions Cloud brokers API Based solutions Original Cloud APIs Complexity 26th July 2012 142
  • 142. Altocumulus technology is now part of the IBM PureSystems Cloud offering, as part of the IBM Workload Deployer 26th July 2012 143
  • 144. Altocumulus MobiCloud SCALE Others 2009 1. OOPSLA [1] 2. OOPSLA cloud workshop [1] * Altocumulus demonstration 2010 1. IEEE Cloudcom [2] 2 part article on 2. MobiCase MobiCloud cloud application workshop [1] modeling in IEEE * MobiCloud demonstration Internet Computing 2011 1. workshop at SPLASH 1. BiCob [1] [1] 2. IEEE Internet 2. IEEE COMSOC Computing [1] MMTC E-Letter [1] (invited) 2012 Paper under review in IEEE TSC 26th July 2012 Total of 11 publications and 2 demonstrations covering this research 145
  • 145. Publications • 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. 26th July 2012 146
  • 146. Publications (Cont.) • 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 26th July 2012 147
  • 147. Publications(Cont.) • 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 26th July 2012 148
  • 149. Using DSLs to provide domain abstractions is a feasible way to develop cloud applications in a platform agnostic manner 26th July 2012 150
  • 150. Middleware based process abstractions are a feasible way to deploy and manage applications in the cloud 26th July 2012 151
  • 151. My Other Research Activities 26th July 2012 152
  • 152. SCALE Cloud MobiCloud Application Generation Research and Contributions IBM Altocumulus publication Cloud Middleware Open source / public tool Patent IBM Sharable Code Service Composition SA-WSDL SA-REST Kino Annotation Tools Annotation Faceted Search / APIHut SOA Event Mediatability Detection Year 2007 2008 2009 2010 2011 2012 26th July 2012 153
  • 156. Thank You 26th July 2012 157
  • 158. Salesforce Contact Manager : Enterprise Web application 26th July 2012 159
  • 159. Objective: View contacts from your Salesforce account 26th July 2012 160
  • 160. • Connected to external data sources • Likely to be shared • Rigorous security 26th July 2012 161
  • 161. Uses 2nd Generation MobiCloud with the Salesforce Extension 26th July 2012 162
  • 162. Text Mode, editing the salesforce contact manager Application – Graphical mode is not active in the advanced mode 26th July 2012 163
  • 163. Different Android views, showing the index, 26th July 2012 salesforce_accounts and salesforce_login screens 164

Editor's Notes

  1. Lets start by looking at the case of the biology professor. This is a real story, based on the experience from our bioinformatics lab. Lets call him Dr A.
  2. Dr A is a computational biologist and requires a significant amount of number crunching from his data to get to interpretable results. Dr A typically uses his lab computer, which takes days to process a large sample set.
  3. Fear not. He already has a few choices. There is the in house computer cluster he can use. The school is part of the Microsoft academic program so he has access to the Windows Azure cloud. He can also afford to use the Amazon elastic compute cloud (EC2). In other words, it seems Dr A. has plenty of computing power to crunch his numbers much faster.
  4. However, this is not as easy as it seems. There are several issues to consider.
  5. The first one is the fact that programming for the cloud is hard. Especially when you want to exploit the parallel nature of these clouds.
  6. The more serious issue is the incompatibility of the clouds. Lets say Dr A and his graduate students painstakingly developed a parallel version of their statistical processing algorithms to run on the local hadoop cluster. This would not work in the Windows Azure cloud since Azure is based on the .net software stack. There is significant programming overhead and learning to do if the program has to run on the Windows Azure cloud. This is true in the other way around as well, i.e., if the programming was done for Azure, it would require a complete reprogramming to make it work in the local cluster.
  7. Welcome to my dissertation defense. My name is AjithRanabahu and in a nutshell, I’m going to find Dr A a solution . I’m going to talk about the use of abstractions to make cloud programs portable using abstractions.
  8. Let me state my thesis in one sentence. Carefully crafted abstractions provide a means to develop, deploy and manage cloud applications in a platform agnostic manner. In the next hour or so I’ll describe to you what are these abstractions and how they are going to be used in the context of cloud applications.
  9. These are the items we are going to focus on. First we are going to look at a birds-eye view of using abstraction. Then we are going to dive deep into the use of abstractions in programming as well as in interactions.
  10. First, the cloud in a nutshell. The very first cloud computing systems are Infrastructure as a Service (IaaS) clouds. These clouds provided the means to get raw computing resources, vms, storage, network etc. Then the next logical evolution was platform as a service – an application oriented service which provides users with application slots. All other mundane tasks are taken care of by the platform. The third type of cloud is where software is provided as a service (SaaS). Salesforce is the company that pioneered this model where they provided their CRM suite as a software service.There are other services that has popped up based on the cloud, such as the data services and analytics services. All these together is what we call the cloud.
  11. The problem we are trying to address is connected to this heterogeneity of the clouds.
  12. Programming for the cloud and keeping the programs portable is hard. As we discussed briefly in Dr A’s case, the cloud software stacks are different and causes programs to be incompatible with other clouds / software stacks. We noticed that this is an important consideration in the simple usecase we had with Dr A but its true for a number of other cases as well.
  13. In short, yes. Many consider the vendor lock-in as a serious concern in adopting the cloud.
  14. This is the results from a survey by northbridge, released last June. Note that this highlights the lock-in and interoperability as two top-10 considerations of cloud adoption.
  15. Lets look at our topics in detail. First the high level overview of using abstractions.
  16. The first question to ask is , why abstract at the first place.
  17. Our goal, to state it simply, is to completely decouple the cloud specifics from the applications. The best way to do this is by using abstractions.
  18. The next high level question is ‘what activities do we abstract’. We looked at the cloud taking an application–oriented perspective and identified the following activities.
  19. The firs activity is cloud application development. Depending on the target cloud, there are a host of differences that one has to consider during development. These include the use of different libraries, programming languages, data storage systems and configuration files.
  20. The second activity is application deployment – meaning, getting the application running in the cloud environment. Depending on the target cloud, this may be a simple command or a host of chained activities.
  21. The last activity we looked at is the management of cloud applications. By management we mean the
  22. TBD