SlideShare a Scribd company logo
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
 
Tenses
TensesTenses
This is Morrison credentials
This is Morrison credentialsThis is Morrison credentials
This is Morrison credentials
Morrison Barcelona
 
Dante's Purgatory
Dante's PurgatoryDante's Purgatory
Dante's Purgatory
Chester James Peñarubia
 
Arsitektur tradisional1
Arsitektur tradisional1Arsitektur tradisional1
Arsitektur tradisional1
Marfuatun Utii
 
Topic 1 strategic management
Topic 1 strategic managementTopic 1 strategic management
Topic 1 strategic management
rhezz09
 
Template kkbi
Template kkbiTemplate kkbi
Template kkbi
biscute art
 
Brunei
BruneiBrunei
Brunei
johnjem27
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slides
caise2013vlc
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013
caise2013vlc
 
Bloomberg Tutorial Logon
Bloomberg Tutorial LogonBloomberg Tutorial Logon
Bloomberg Tutorial Logon
cfredd
 
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
manssandstrom
 
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 Solutions
Federico Tomassetti
 
Timeboxed releases - Peter Antman
Timeboxed releases - Peter AntmanTimeboxed releases - Peter Antman
Timeboxed releases - Peter Antman
manssandstrom
 
Sketches / 2009 / 6 grade
Sketches / 2009 / 6 gradeSketches / 2009 / 6 grade
Sketches / 2009 / 6 grade
natalia 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_

Open Banking & Open Insurance
Open Banking & Open InsuranceOpen Banking & Open Insurance
Open Banking & Open Insurance
Amazon Web Services
 
Intro to framework.pptx
Intro to framework.pptxIntro to framework.pptx
Intro to framework.pptx
SanjeevBansal47
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
Rasel 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 apps
Alexandre Marreiros
 
Angular - Chapter 1 - Introduction
 Angular - Chapter 1 - Introduction Angular - Chapter 1 - Introduction
Angular - Chapter 1 - Introduction
WebStackAcademy
 
WordCamp Bucharest 2017
WordCamp Bucharest 2017WordCamp Bucharest 2017
WordCamp Bucharest 2017
Alexandra Anghel
 
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
jonknapp
 
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
Rogerio P C do Nascimento
 
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
Harbinger Systems - HRTech Builder of Choice
 
Serverless Architecture.pdf
Serverless Architecture.pdfServerless Architecture.pdf
Serverless Architecture.pdf
SatawareTechnologies4
 
Introduction to PredictionIO
Introduction to PredictionIOIntroduction to PredictionIO
Introduction to PredictionIO
Muhammet 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/2012
Dimitri 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_Developer
harshita sinha
 
why-choose-asp.net-for-web-application-development.pdf
why-choose-asp.net-for-web-application-development.pdfwhy-choose-asp.net-for-web-application-development.pdf
why-choose-asp.net-for-web-application-development.pdf
RobertThorson2
 
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
Sparx IT Solutions Pvt Ltd
 
ASP.pptx
ASP.pptxASP.pptx
Sap Netweaver Portal
Sap Netweaver PortalSap Netweaver Portal
Sap Netweaver Portal
Saba Ameer
 
Ttl
TtlTtl
JOB PORTALProject SummaryTitle JOB-PORT.docx
JOB PORTALProject SummaryTitle    JOB-PORT.docxJOB PORTALProject SummaryTitle    JOB-PORT.docx
JOB PORTALProject SummaryTitle JOB-PORT.docx
christiandean12115
 

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
 
Serverless Architecture.pdf
Serverless Architecture.pdfServerless Architecture.pdf
Serverless Architecture.pdf
 
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
 
why-choose-asp.net-for-web-application-development.pdf
why-choose-asp.net-for-web-application-development.pdfwhy-choose-asp.net-for-web-application-development.pdf
why-choose-asp.net-for-web-application-development.pdf
 
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
 

More from caise2013vlc

Caise panel
Caise panelCaise panel
Caise panel
caise2013vlc
 
Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-models
caise2013vlc
 
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
caise2013vlc
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013final
caise2013vlc
 
David aguilera presentation
David aguilera   presentationDavid aguilera   presentation
David aguilera presentation
caise2013vlc
 
Sonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_finalSonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_final
caise2013vlc
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vf
caise2013vlc
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnet
caise2013vlc
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aise
caise2013vlc
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013
caise2013vlc
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2
caise2013vlc
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handouts
caise2013vlc
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentation
caise2013vlc
 
Miguel goulao 2013 c-aise
Miguel goulao 2013 c-aiseMiguel goulao 2013 c-aise
Miguel goulao 2013 c-aise
caise2013vlc
 
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
caise2013vlc
 
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_caise2013
caise2013vlc
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caise
caise2013vlc
 
Scekic caise13-
Scekic caise13-Scekic caise13-
Scekic caise13-
caise2013vlc
 
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
caise2013vlc
 

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

Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 

Recently uploaded (20)

Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 

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)