Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.
-
Upload
spencer-mccormick -
Category
Documents
-
view
219 -
download
0
Transcript of Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.
![Page 1: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/1.jpg)
MashlightA lightweight mashup framework for everyone
M. Albinola, M. Carcano, L. Baresi, S. Guinea
![Page 2: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/2.jpg)
1st SMSCom Meeting 2
Mashups in a nutshell
• Reuse and integration of components– Lower design and development costs– Lower time-to-market
• Software as a Service (SaaS)– Simple and lightweight model– Universally accessible (through a browser)– No need to install
• Do-it-yourself (DIY)– Anyone can be an author– On–the-fly development
17-19/06/09 Como (Italy)
![Page 3: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/3.jpg)
1st SMSCom Meeting 3
Quality dimensions
• Flexibility– Suppport for all three “natures”
(Data, Logic and Presentation)• Usability
– Abstraction level that any kind of user can understand(End Users and Developers)
• Lightweight– Can be deployed onto different kinds of devices
(Android/iPhone)
17-19/06/09 Como (Italy)
![Page 4: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/4.jpg)
1st SMSCom Meeting 4
Mashlight
• Starting Point– Mashups are created through the process-like
disposition of logic activities
• Main characteristics– Single activities are Web 2.0 applications
• Mac OS X Dashboard, Vista sidebar, etc.– Process language is extremely simple
• Blocks define abstraction level– Show one activity at a time
• Provide intrinsic rollback
17-19/06/09 Como (Italy)
![Page 5: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/5.jpg)
1st SMSCom Meeting 5
Mashlight Blocks
• Independent functional unit with clear goal– Es: Weather service, calculator, yellow pages, Remote
Service Invocation
• Parameters
• Links
17-19/06/09 Como (Italy)
Block Blockinput
output
Block
outlink1
Block
outlink2outlink1
entry connection
outlink
![Page 6: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/6.jpg)
1st SMSCom Meeting 6
Real-world blocks…
• Widget-like Web 2.0 applications• Modified versions of Google Widgets
– Support for I/O parameters– Support for interaction with Mashlight Engine
17-19/06/09 Como (Italy)
![Page 7: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/7.jpg)
1st SMSCom Meeting 7
Mashlight Processes
• Graph representation of the process– Activation order (Process Flow)– Data dependencies (Data Flow)
• High level of abstraction– No explicit conditional branching or looping
17-19/06/09 Como (Italy)
A
B D
C E
Process Flow
A
B D
C E
Execution Flows
A
E
A
B D
C E
Data Flow
![Page 8: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/8.jpg)
1st SMSCom Meeting 8
Advanced Aspects
• Complex Data Assignment
• Data with Multiple Cardinality
• Prioritized data assignments
17-19/06/09 Como (Italy)
city
street
AB
address.cityaddress.street
A
Execution flow
B C
C
B
address[*].cityaddress[1].city
A
B
streetaddress[1].street
A
B
address[2].citycity
A
C
address[1].city
address.city
address[2].street
A B
address.streetB
city[*]address[1].city
A
![Page 9: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/9.jpg)
1st SMSCom Meeting 9
Advanced Aspects
• Undo operation– Goes back to the beginning of the previously completed
block
17-19/06/09 Como (Italy)
A
B D
C E
Process Flow
A
Evolution of the execution flow
D
E
1
A
B
C
2
A
D
3
![Page 10: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/10.jpg)
1st SMSCom Meeting 10
Architecture
• Four main modules
17-19/06/09 Como (Italy)
Runtime Engine
Mashup Builder
Block Builder
Blocks Library
Mashup Process
Block
![Page 11: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/11.jpg)
1st SMSCom Meeting 11
Runtime Engine
17-19/06/09 Como (Italy)
Map Mashup area
Control toolbar
![Page 12: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/12.jpg)
1st SMSCom Meeting 12
Example- NightPlan
• User wants to organize a night out: – restaurant + cinema
• Mashlight blocks:– PagineGialle
• Italian Yellow Pages– Google Maps
• Visualization of interest point– MovieTickets
• Buy tickets online– Google Maps Navigator
• Map driving instructions
17-19/06/09 Como (Italy)
DEMO
![Page 13: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/13.jpg)
1st SMSCom Meeting 13
A - PagineGialle
out
B - Google Maps
out
C - PagineGialle
out
D - Google Maps
out
E - MovieTickets
out
F - Google Maps Navigator
out
what: ristorantewhere: MilanostreetName: piazza leonardo
A - Pagine gialle
C - Pagine gialle
E - MovieTickets
F - Google Maps Navigator
searchQuery autoQuery
resultItem.coordinates
coordinates
cinema
searchQuery autoQuery
false
resultItem.cityresultItem.address
resultItem.coordinates
CinemaName accountUsername
resultItem.name
Matteo
city: Milanoaddress: via Golgi, 40
from tosteps[0]
resultItem.coordinates
resultItem.coordinates
false
B - Google Maps
address
coordinates
B - Google Maps
address
travelMode
Process Flow Data Flow
17-19/06/09 Como (Italy)
![Page 14: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/14.jpg)
1st SMSCom Meeting 14
Future Work
• Enrich library of Mashlight blocks– Specific blocks for specific domains
• Block Builder– Eclipse plugin for semi-automatic block creation– WADL-generated Mashlight blocks
• Mashup Builder– General purpose process design environment
• Support for mobile devices– Process starts on PC and continues on Android/iPhone
• Domain-specific abstractions that use Mashlight as backend
17-19/06/09 Como (Italy)
![Page 15: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/15.jpg)
Active services(http://nycgo.com)
17-19/06/09 Como (Italy) 1st SMSCom Meeting 15
Buy ticket
![Page 16: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/16.jpg)
What do we want to combine?
• Special-purpose services• Created by the previous
ones
• They are supposed to– Assist users– Manage fruition– Sense the environment
17-19/06/09 Como (Italy) 1st SMSCom Meeting 16
![Page 17: Mashlight A lightweight mashup framework for everyone M. Albinola, M. Carcano, L. Baresi, S. Guinea.](https://reader036.fdocuments.us/reader036/viewer/2022062314/56649ed85503460f94be6b97/html5/thumbnails/17.jpg)
1st SMSCom Meeting 17
QUESTIONS?
17-19/06/09 Como (Italy)