SlideShare a Scribd company logo
1 of 27
Download to read offline
A Multi-perspective Framework for Web
API Search in Enterprise Mashup Design
Devis Bianchini, Valeria De Antonellis, Michele Melchiori
University of Brescia
Department of Information Engineering
Valencia – June 20th, 2013
CAiSE 2013
A motivating example
Josephine is a web designer who aims at building a
web application for her enterprise to advertise
products through e-commerce facilities and to
display customers' info
The ProgrammableWeb API public repository has been made available, where Web API providers
share their own components and web designers can look for Web APIs they need
➢ the design of the web application is a time-consuming task and requires advanced
skill
➢ already available Web APIs, such as Amazon and Google Maps APIs, have been
implemented for this purpose
On ProgrammableWeb you can...
Find Web APIs
by keywords or
by tags (matched
against the
descriptions
associated with
APIs in the
repository)
Filter available
Web APIs
according to their
category, the
company, the
protocol, the data
format
Find mashups
composed of
the available
Web APIs
Sort found Web
APIs according to
different criteria
On ProgrammableWeb you cannot...
➢ Perform advanced search by specifying both the features of the
Web API to search for and of the Web mashups which the Web
API will be used in
➢ Avoid limitations of traditional tag-based search (polisemy,
omonyms)
➢ Be assisted in more complex search scenarios, where Josephine
needs a proactive support for her search, by relying on past
experiences of other developers in using available Web APIs
Our proposal
➢ A multi-perspective Web API model, based on the Web APIs
themselves (component perspective), enterprise mashups built
with Web APIs (application perspective), Web designers who
used Web APIs to build their own mashups (experience
perspective)
➢ A framework leveraging the model, to perform advanced Web
API search and ranking
➢ Full backward compliance with existing Web API repositories
(specifically, the ProgrammableWeb repository)
Talk outline
• Multi­perspective Web API model
• Web API search model
• The framework architecture
• Search and ranking measures
• Final remarks
The model
The component perspective
W = 〈cW,{tW},PW,FW,SSLW,AW,τW,HW〉
ProgrammableWeb
category
set of semantic
tags
ProgrammableWeb
technical features
WordNet-based sense disambiguation
The component perspective
W = 〈cW,{tW},PW,FW,SSLW,AW,τW,HW〉
ProgrammableWeb
category
set of semantic
tags
ProgrammableWeb
technical features
WordNet-based sense disambiguation
a semantic tag belongs to a synset and is described by a sense
The application perspective
M = 〈{tM},{WM}〉
set of semantic
tags
set of Web APIs the
mashup is composed of
The experience perspective
di
∈DW
= 〈internal/external, σi
, {〈Wj,Mk,µjk〉}〉
internal/external to
the enterprise
The experience perspective
di
∈DW
= 〈internal/external, σi
, {〈Wj,Mk,µjk〉}〉
internal/external to
the enterprise
designer's skill in
developing web mashups
0.0 unexperienced
0.3 low confidence
0.5 medium confidence
0.8 high confidence
1.0 expert
The experience perspective
di
∈DW
= 〈internal/external, σi
, {〈Wj,Mk,µjk〉}〉
internal/external to
the enterprise
designer's skill in
developing web mashups
ratings µjk
assigned
to the Web API Wj
as used within Mk
The experience perspective
di
∈DW
= 〈internal/external, σi
, {〈Wj,Mk,µjk〉}〉
internal/external to
the enterprise
designer's skill in
developing web mashups
ratings µjk
assigned
to the Web API Wj
as used within Mk
Web API search model
The search typology identifies the way Web API search is performed
The search target identifies the goal of the Web API search
The framework architecture
Web API similarity
Similarity between the request and each available Web API is performed according
to:
➢ the component perspective (APISim) - linear combination of similarity
with respect to categories and semantic tags
➢ the application perspective (MashupSim) – proportional to the similarity
between the Web API will be inserted ({tr
M},{Wr
M}) and the mashups
where it has been used in the past
➢ a Web API can be used by several mashups by designers with different
skills (take care of the experience perspective)
Web API similarity
Similarity between the request and each available Web API is performed according
to:
➢ the component perspective (APISim) - linear combination of similarity
with respect to categories and semantic tag
➢ the application perspective (MashupSim) – proportional to the similarity
between the Web API will be inserted ({tr
M},{Wr
M}) and the mashups
where it has been used in the past
➢ a Web API can be used by several mashups by designers with different
skills (take care of the experience perspective)
Web API similarity
Similarity between the request and each available Web API is performed according
to:
➢ the component perspective (APISim) - linear combination of similarity
with respect to categories and semantic tag
➢ the application perspective (MashupSim) – proportional to the similarity
between the Web API will be inserted ({tr
M},{Wr
M}) and the mashups
where it has been used in the past
➢ a Web API can be used by several mashups by designers with different
skills (take care of the experience perspective)
Web API similarity
Similarity between the request and each available Web API is performed according
to:
➢ the component perspective (APISim) - linear combination of similarity
with respect to categories and semantic tag
➢ the application perspective (MashupSim) – proportional to the similarity
between the Web API will be inserted ({tr
M},{Wr
M}) and the mashups
where it has been used in the past
➢ a Web API can be used by several mashups by designers with different
skills (take care of the experience perspective)
Web API ranking
Web APIs {W'} included among the search results ({W'}⊆{W}) are
ranked according to:
based on ratings µjk
assigned to the
Web API Wj
based on technical
features
(several metrics
available from the
literature)
The framework architecture
The framework Web Interface
The framework Web Interface (cont.)
Evaluation issues
We performed a preliminary evaluation on the precision of the collaborative system in
retrieving Web APIs and on ranking procedure
➢ we considered a subset of 922 Web APIs from ProgrammableWeb
➢ we collected a subset of mashups from the same repository, built with the selected
Web APIs and the corresponding developers
➢ we performed semantic tagging of Web APIs starting from the keywords extracted
from Web APIs and mashup descriptions and from tags on ProgrammableWeb
➢ we classified developers' skill on the basis of the number of mashups and APIs they
own
Conclusions and future work
We proposed a multi-perspective Web API model and framework based on it, built
on top of the a Web API repository, to better support Web APIselection and
ranking
Future efforts will be devoted to:
➢ enrichment of Web API characterization with additional features (e.g.,
Web API quality, but also social organization of web designers)
➢ use of additional sources for sense disambiguation (e.g., DBPedia)
➢ integration of Web API information coming from different repositories
(e.g., Mashape)
Thanks!
Devis Bianchini: bianchin@ing.unibs.it

More Related Content

Viewers also liked

Slide Media pembelajaran
Slide Media pembelajaran Slide Media pembelajaran
Slide Media pembelajaran Marfuatun Utii
 
Arsitektur tradisional1
Arsitektur tradisional1Arsitektur tradisional1
Arsitektur tradisional1Marfuatun Utii
 
Topic 1 strategic management
Topic 1 strategic managementTopic 1 strategic management
Topic 1 strategic managementrhezz09
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slidescaise2013vlc
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013caise2013vlc
 
Bloomberg Tutorial Logon
Bloomberg Tutorial LogonBloomberg Tutorial Logon
Bloomberg Tutorial Logoncfredd
 
Selenium ett enkelt verktyg för att testa din webbapplikation - Thomas Sundberg
Selenium ett enkelt verktyg för att testa din webbapplikation - Thomas SundbergSelenium ett enkelt verktyg för att testa din webbapplikation - Thomas Sundberg
Selenium ett enkelt verktyg för att testa din webbapplikation - Thomas Sundbergmanssandstrom
 
Förbattra dina retrospektiv - Anders Ivarsson
Förbattra dina retrospektiv - Anders IvarssonFörbattra dina retrospektiv - Anders Ivarsson
Förbattra dina retrospektiv - Anders Ivarssonmanssandstrom
 
Model Driven Web Development Solutions
Model Driven Web Development SolutionsModel Driven Web Development Solutions
Model Driven Web Development SolutionsFederico Tomassetti
 
Timeboxed releases - Peter Antman
Timeboxed releases - Peter AntmanTimeboxed releases - Peter Antman
Timeboxed releases - Peter Antmanmanssandstrom
 
Sketches / 2009 / 6 grade
Sketches / 2009 / 6 gradeSketches / 2009 / 6 grade
Sketches / 2009 / 6 gradenatalia w
 

Viewers also liked (18)

Slide Media pembelajaran
Slide Media pembelajaran Slide Media pembelajaran
Slide Media pembelajaran
 
Tenses
TensesTenses
Tenses
 
This is Morrison credentials
This is Morrison credentialsThis is Morrison credentials
This is Morrison credentials
 
Dante's Purgatory
Dante's PurgatoryDante's Purgatory
Dante's Purgatory
 
Arsitektur tradisional1
Arsitektur tradisional1Arsitektur tradisional1
Arsitektur tradisional1
 
Topic 1 strategic management
Topic 1 strategic managementTopic 1 strategic management
Topic 1 strategic management
 
Template kkbi
Template kkbiTemplate kkbi
Template kkbi
 
Brunei
BruneiBrunei
Brunei
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slides
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013
 
BLOG
BLOGBLOG
BLOG
 
Bloomberg Tutorial Logon
Bloomberg Tutorial LogonBloomberg Tutorial Logon
Bloomberg Tutorial Logon
 
Selenium ett enkelt verktyg för att testa din webbapplikation - Thomas Sundberg
Selenium ett enkelt verktyg för att testa din webbapplikation - Thomas SundbergSelenium ett enkelt verktyg för att testa din webbapplikation - Thomas Sundberg
Selenium ett enkelt verktyg för att testa din webbapplikation - Thomas Sundberg
 
Almenar
AlmenarAlmenar
Almenar
 
Förbattra dina retrospektiv - Anders Ivarsson
Förbattra dina retrospektiv - Anders IvarssonFörbattra dina retrospektiv - Anders Ivarsson
Förbattra dina retrospektiv - Anders Ivarsson
 
Model Driven Web Development Solutions
Model Driven Web Development SolutionsModel Driven Web Development Solutions
Model Driven Web Development Solutions
 
Timeboxed releases - Peter Antman
Timeboxed releases - Peter AntmanTimeboxed releases - Peter Antman
Timeboxed releases - Peter Antman
 
Sketches / 2009 / 6 grade
Sketches / 2009 / 6 gradeSketches / 2009 / 6 grade
Sketches / 2009 / 6 grade
 

Similar to Bianchini slides c-ai_se2013_

ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET PresentationRasel Khan
 
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!Evan Mullins
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web appsAlexandre Marreiros
 
Angular - Chapter 1 - Introduction
 Angular - Chapter 1 - Introduction Angular - Chapter 1 - Introduction
Angular - Chapter 1 - IntroductionWebStackAcademy
 
From Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) AgainFrom Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) Againjonknapp
 
Aula 2 - Planning for Web Engineering by Roger Pressman
Aula 2 -  Planning for Web Engineering by Roger PressmanAula 2 -  Planning for Web Engineering by Roger Pressman
Aula 2 - Planning for Web Engineering by Roger PressmanRogerio P C do Nascimento
 
Introduction to PredictionIO
Introduction to PredictionIOIntroduction to PredictionIO
Introduction to PredictionIOMuhammet Arslan
 
Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012Dimitri de Putte
 
Harshita_Sinha_2.2_years_exp_.NET_MVC_Developer
Harshita_Sinha_2.2_years_exp_.NET_MVC_DeveloperHarshita_Sinha_2.2_years_exp_.NET_MVC_Developer
Harshita_Sinha_2.2_years_exp_.NET_MVC_Developerharshita sinha
 
Sap Netweaver Portal
Sap Netweaver PortalSap Netweaver Portal
Sap Netweaver PortalSaba Ameer
 
JOB PORTALProject SummaryTitle JOB-PORT.docx
JOB PORTALProject SummaryTitle    JOB-PORT.docxJOB PORTALProject SummaryTitle    JOB-PORT.docx
JOB PORTALProject SummaryTitle JOB-PORT.docxchristiandean12115
 
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018Bhavesh Surani
 

Similar to Bianchini slides c-ai_se2013_ (20)

Open Banking & Open Insurance
Open Banking & Open InsuranceOpen Banking & Open Insurance
Open Banking & Open Insurance
 
Intro to framework.pptx
Intro to framework.pptxIntro to framework.pptx
Intro to framework.pptx
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
WordCamp Birmingham 2016 - WP API, What is it good for? Absolutely Everything!
 
Jws masterclass progressive web apps
Jws masterclass progressive web appsJws masterclass progressive web apps
Jws masterclass progressive web apps
 
Angular - Chapter 1 - Introduction
 Angular - Chapter 1 - Introduction Angular - Chapter 1 - Introduction
Angular - Chapter 1 - Introduction
 
WordCamp Bucharest 2017
WordCamp Bucharest 2017WordCamp Bucharest 2017
WordCamp Bucharest 2017
 
From Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) AgainFrom Backbone to Ember and Back(bone) Again
From Backbone to Ember and Back(bone) Again
 
Aula 2 - Planning for Web Engineering by Roger Pressman
Aula 2 -  Planning for Web Engineering by Roger PressmanAula 2 -  Planning for Web Engineering by Roger Pressman
Aula 2 - Planning for Web Engineering by Roger Pressman
 
JavaScript MVC Frameworks: Backbone, Ember and Angular JS
JavaScript MVC Frameworks: Backbone, Ember and Angular JSJavaScript MVC Frameworks: Backbone, Ember and Angular JS
JavaScript MVC Frameworks: Backbone, Ember and Angular JS
 
Introduction to PredictionIO
Introduction to PredictionIOIntroduction to PredictionIO
Introduction to PredictionIO
 
Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012Backbonification for dummies - Arrrrug 10/1/2012
Backbonification for dummies - Arrrrug 10/1/2012
 
Harshita_Sinha_2.2_years_exp_.NET_MVC_Developer
Harshita_Sinha_2.2_years_exp_.NET_MVC_DeveloperHarshita_Sinha_2.2_years_exp_.NET_MVC_Developer
Harshita_Sinha_2.2_years_exp_.NET_MVC_Developer
 
A Complete Guide to Python Web Development
A Complete Guide to Python Web DevelopmentA Complete Guide to Python Web Development
A Complete Guide to Python Web Development
 
ASP.pptx
ASP.pptxASP.pptx
ASP.pptx
 
Sap Netweaver Portal
Sap Netweaver PortalSap Netweaver Portal
Sap Netweaver Portal
 
Ttl
TtlTtl
Ttl
 
JOB PORTALProject SummaryTitle JOB-PORT.docx
JOB PORTALProject SummaryTitle    JOB-PORT.docxJOB PORTALProject SummaryTitle    JOB-PORT.docx
JOB PORTALProject SummaryTitle JOB-PORT.docx
 
Web API with ASP.NET MVC by Software development company in india
Web API with ASP.NET  MVC  by Software development company in indiaWeb API with ASP.NET  MVC  by Software development company in india
Web API with ASP.NET MVC by Software development company in india
 
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
PWA - The Future of eCommerce - Magento Meetup Ahmedabad 2018
 

More from caise2013vlc

Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-modelscaise2013vlc
 
Jelena zdravkovic c ai-se 2013 capability caas
Jelena zdravkovic  c ai-se 2013 capability caasJelena zdravkovic  c ai-se 2013 capability caas
Jelena zdravkovic c ai-se 2013 capability caascaise2013vlc
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013finalcaise2013vlc
 
David aguilera presentation
David aguilera   presentationDavid aguilera   presentation
David aguilera presentationcaise2013vlc
 
Sonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_finalSonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_finalcaise2013vlc
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vfcaise2013vlc
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnetcaise2013vlc
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aisecaise2013vlc
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013caise2013vlc
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2caise2013vlc
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handoutscaise2013vlc
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentationcaise2013vlc
 
Miguel goulao 2013 c-aise
Miguel goulao 2013 c-aiseMiguel goulao 2013 c-aise
Miguel goulao 2013 c-aisecaise2013vlc
 
Jorge cardoso caise-usdl-tosca-2013-06-18c
Jorge cardoso   caise-usdl-tosca-2013-06-18cJorge cardoso   caise-usdl-tosca-2013-06-18c
Jorge cardoso caise-usdl-tosca-2013-06-18ccaise2013vlc
 
Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_caise2013vlc
 
Ignacio panach ormeño et-al_caise2013
Ignacio panach   ormeño et-al_caise2013Ignacio panach   ormeño et-al_caise2013
Ignacio panach ormeño et-al_caise2013caise2013vlc
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caisecaise2013vlc
 
Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3caise2013vlc
 

More from caise2013vlc (20)

Caise panel
Caise panelCaise panel
Caise panel
 
Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-models
 
Jelena zdravkovic c ai-se 2013 capability caas
Jelena zdravkovic  c ai-se 2013 capability caasJelena zdravkovic  c ai-se 2013 capability caas
Jelena zdravkovic c ai-se 2013 capability caas
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013final
 
David aguilera presentation
David aguilera   presentationDavid aguilera   presentation
David aguilera presentation
 
Sonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_finalSonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_final
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vf
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnet
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aise
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handouts
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentation
 
Miguel goulao 2013 c-aise
Miguel goulao 2013 c-aiseMiguel goulao 2013 c-aise
Miguel goulao 2013 c-aise
 
Jorge cardoso caise-usdl-tosca-2013-06-18c
Jorge cardoso   caise-usdl-tosca-2013-06-18cJorge cardoso   caise-usdl-tosca-2013-06-18c
Jorge cardoso caise-usdl-tosca-2013-06-18c
 
Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_
 
Ignacio panach ormeño et-al_caise2013
Ignacio panach   ormeño et-al_caise2013Ignacio panach   ormeño et-al_caise2013
Ignacio panach ormeño et-al_caise2013
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caise
 
Scekic caise13-
Scekic caise13-Scekic caise13-
Scekic caise13-
 
Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3
 

Recently uploaded

OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024SkyPlanner
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 

Recently uploaded (20)

OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 

Bianchini slides c-ai_se2013_

  • 1. A Multi-perspective Framework for Web API Search in Enterprise Mashup Design Devis Bianchini, Valeria De Antonellis, Michele Melchiori University of Brescia Department of Information Engineering Valencia – June 20th, 2013 CAiSE 2013
  • 2. A motivating example Josephine is a web designer who aims at building a web application for her enterprise to advertise products through e-commerce facilities and to display customers' info The ProgrammableWeb API public repository has been made available, where Web API providers share their own components and web designers can look for Web APIs they need ➢ the design of the web application is a time-consuming task and requires advanced skill ➢ already available Web APIs, such as Amazon and Google Maps APIs, have been implemented for this purpose
  • 3. On ProgrammableWeb you can... Find Web APIs by keywords or by tags (matched against the descriptions associated with APIs in the repository) Filter available Web APIs according to their category, the company, the protocol, the data format Find mashups composed of the available Web APIs Sort found Web APIs according to different criteria
  • 4. On ProgrammableWeb you cannot... ➢ Perform advanced search by specifying both the features of the Web API to search for and of the Web mashups which the Web API will be used in ➢ Avoid limitations of traditional tag-based search (polisemy, omonyms) ➢ Be assisted in more complex search scenarios, where Josephine needs a proactive support for her search, by relying on past experiences of other developers in using available Web APIs
  • 5. Our proposal ➢ A multi-perspective Web API model, based on the Web APIs themselves (component perspective), enterprise mashups built with Web APIs (application perspective), Web designers who used Web APIs to build their own mashups (experience perspective) ➢ A framework leveraging the model, to perform advanced Web API search and ranking ➢ Full backward compliance with existing Web API repositories (specifically, the ProgrammableWeb repository)
  • 6. Talk outline • Multi­perspective Web API model • Web API search model • The framework architecture • Search and ranking measures • Final remarks
  • 8. The component perspective W = 〈cW,{tW},PW,FW,SSLW,AW,τW,HW〉 ProgrammableWeb category set of semantic tags ProgrammableWeb technical features WordNet-based sense disambiguation
  • 9. The component perspective W = 〈cW,{tW},PW,FW,SSLW,AW,τW,HW〉 ProgrammableWeb category set of semantic tags ProgrammableWeb technical features WordNet-based sense disambiguation a semantic tag belongs to a synset and is described by a sense
  • 10. The application perspective M = 〈{tM},{WM}〉 set of semantic tags set of Web APIs the mashup is composed of
  • 11. The experience perspective di ∈DW = 〈internal/external, σi , {〈Wj,Mk,µjk〉}〉 internal/external to the enterprise
  • 12. The experience perspective di ∈DW = 〈internal/external, σi , {〈Wj,Mk,µjk〉}〉 internal/external to the enterprise designer's skill in developing web mashups 0.0 unexperienced 0.3 low confidence 0.5 medium confidence 0.8 high confidence 1.0 expert
  • 13. The experience perspective di ∈DW = 〈internal/external, σi , {〈Wj,Mk,µjk〉}〉 internal/external to the enterprise designer's skill in developing web mashups ratings µjk assigned to the Web API Wj as used within Mk
  • 14. The experience perspective di ∈DW = 〈internal/external, σi , {〈Wj,Mk,µjk〉}〉 internal/external to the enterprise designer's skill in developing web mashups ratings µjk assigned to the Web API Wj as used within Mk
  • 15. Web API search model The search typology identifies the way Web API search is performed The search target identifies the goal of the Web API search
  • 17. Web API similarity Similarity between the request and each available Web API is performed according to: ➢ the component perspective (APISim) - linear combination of similarity with respect to categories and semantic tags ➢ the application perspective (MashupSim) – proportional to the similarity between the Web API will be inserted ({tr M},{Wr M}) and the mashups where it has been used in the past ➢ a Web API can be used by several mashups by designers with different skills (take care of the experience perspective)
  • 18. Web API similarity Similarity between the request and each available Web API is performed according to: ➢ the component perspective (APISim) - linear combination of similarity with respect to categories and semantic tag ➢ the application perspective (MashupSim) – proportional to the similarity between the Web API will be inserted ({tr M},{Wr M}) and the mashups where it has been used in the past ➢ a Web API can be used by several mashups by designers with different skills (take care of the experience perspective)
  • 19. Web API similarity Similarity between the request and each available Web API is performed according to: ➢ the component perspective (APISim) - linear combination of similarity with respect to categories and semantic tag ➢ the application perspective (MashupSim) – proportional to the similarity between the Web API will be inserted ({tr M},{Wr M}) and the mashups where it has been used in the past ➢ a Web API can be used by several mashups by designers with different skills (take care of the experience perspective)
  • 20. Web API similarity Similarity between the request and each available Web API is performed according to: ➢ the component perspective (APISim) - linear combination of similarity with respect to categories and semantic tag ➢ the application perspective (MashupSim) – proportional to the similarity between the Web API will be inserted ({tr M},{Wr M}) and the mashups where it has been used in the past ➢ a Web API can be used by several mashups by designers with different skills (take care of the experience perspective)
  • 21. Web API ranking Web APIs {W'} included among the search results ({W'}⊆{W}) are ranked according to: based on ratings µjk assigned to the Web API Wj based on technical features (several metrics available from the literature)
  • 23. The framework Web Interface
  • 24. The framework Web Interface (cont.)
  • 25. Evaluation issues We performed a preliminary evaluation on the precision of the collaborative system in retrieving Web APIs and on ranking procedure ➢ we considered a subset of 922 Web APIs from ProgrammableWeb ➢ we collected a subset of mashups from the same repository, built with the selected Web APIs and the corresponding developers ➢ we performed semantic tagging of Web APIs starting from the keywords extracted from Web APIs and mashup descriptions and from tags on ProgrammableWeb ➢ we classified developers' skill on the basis of the number of mashups and APIs they own
  • 26. Conclusions and future work We proposed a multi-perspective Web API model and framework based on it, built on top of the a Web API repository, to better support Web APIselection and ranking Future efforts will be devoted to: ➢ enrichment of Web API characterization with additional features (e.g., Web API quality, but also social organization of web designers) ➢ use of additional sources for sense disambiguation (e.g., DBPedia) ➢ integration of Web API information coming from different repositories (e.g., Mashape)