englishmash: usability design for a natural mashup composition environment

34
EnglishMash Usability design for a natural mashup composi8on environment Saeed Aghaee and Cesare Pautasso Faculty of Informa8cs University of Lugano Switzerland ComposableWeb 2012, Berlin, Germany

Upload: saeed-aghaee

Post on 18-Jul-2015

335 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: EnglishMash: usability design for a natural mashup composition environment

EnglishMash  Usability  design  for  a  natural  mashup  

composi8on  environment  

Saeed  Aghaee  and  Cesare  Pautasso  

Faculty  of  Informa8cs  University  of  Lugano  

Switzerland  

ComposableWeb  2012,  Berlin,  Germany  

Page 2: EnglishMash: usability design for a natural mashup composition environment

2  

Page 3: EnglishMash: usability design for a natural mashup composition environment

Expressive  Power   Usability  

3  

Page 4: EnglishMash: usability design for a natural mashup composition environment

UI   Mashup  Engine  

Expressive  Power  

Usability  

[A.  Morch,  1997]  4  

Page 5: EnglishMash: usability design for a natural mashup composition environment

Mashup  Tools  Interac8on  Techniques  

•  Programming  by  Demonstra8on  •  Form-­‐based  Customiza8on  •  Visual  Programming  Languages  •  What-­‐you-­‐see-­‐is-­‐what-­‐you-­‐get  •  Spreadsheets-­‐based  •  Example  Modifica8on  •  Textual  Domain  Specific  Languages  

5  

Page 6: EnglishMash: usability design for a natural mashup composition environment

6  

Page 7: EnglishMash: usability design for a natural mashup composition environment

7  

Page 8: EnglishMash: usability design for a natural mashup composition environment

8  

Page 9: EnglishMash: usability design for a natural mashup composition environment

EnglishMash  

9  

Page 10: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  End-­‐users  

10  

Programmers  

Non-­‐programmers  

•  Create  feature-­‐rich  components  (requested  by  non  programmers)  

•  Create  complex  mashups  (requested  by  non-­‐programmers)  

•  Reuse  exis8ng  mashups  

•  Modify  exis8ng  mashups  

•  Create  simple  mashups  

Pro.  non-­‐programmers  

•  Create  mashups  that  can  be  reused  by  non  programmers  

•  Help  non-­‐programmers  

Page 11: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Interac8on  Technique  

11  

Component  development  &  discovery  

Back-­‐end  development    &  modifica8on  

UI  Design  or  redesign  

(1)   (2)   (3)  

Page 12: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Interac8on  Technique  

WYSIWYG    +    Form-­‐based    +    ?                    +                                VL          

12  

Component  development  &  discovery  

Back-­‐end  development    &  modifica8on  

UI  Design  or  redesign  

(1)   (2)   (3)  

Page 13: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Interac8on  Technique  

WYSIWYG    +    Form-­‐based    +    Natural                    +              Language                  VL        Programming  

13  

Component  development  &  discovery  

Back-­‐end  development    &  modifica8on  

UI  Design  or  redesign  

(1)   (2)   (3)  

Page 14: EnglishMash: usability design for a natural mashup composition environment

Natural  Language  is  ...  

•  The  main  Communica8on  means  between  people  •  Good  for  storytelling  •  Understandable    

But…  

•  Vague  and  ambiguous  •  Long  and  wordy  vs.  concise  formal  nota8ons  

14  

Page 15: EnglishMash: usability design for a natural mashup composition environment

Natural  Language  Programming  

Structured   Informal  

15  

Page 16: EnglishMash: usability design for a natural mashup composition environment

Natural  Language  Programming  

Structured   Informal  

16  

Page 17: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Architecture  

Scanner  

Formal  parser  +  NL  Parser  

Seman8c  Extrac8on  (Control  Flow)  

Seman8c  Extrac8on  (Data  Flow)  

Code  Emifer  (JOpera)  17  

Page 18: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Natural  Language  Mashup  Descrip8on  (NLMD)  

“Combine  CNN  News  and  BBC  News.  Show  the  result  on  the  table.”      

18  

Page 19: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Natural  Language  Mashup  Descrip8on  (NLMD)  

“when  the  map  is  clicked,  do  as  follows.  Search  tweets  around  the  loca=on,  and  combine  the  results  with  BBC  Top  News.  Finally,  show  the  result  on  the  table.”      

19  

Page 20: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Natural  Language  Component  Descrip8on  (NLCD)  

“when   ,  do  as  follows.  ,  and  

.  Finally .”      

20  

Page 21: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Programing    techniques  

21  

•  Loops:  •  While…  •  For  each  …  in  …  

•  Condi8ons:  •  If  ….  Otherwise  …  

•  Events:  •  When  …,…  

 

•  Blocks:  •  Do  as  follows  ….  

 

Page 22: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Programing    techniques  

22  

“  the  map  is  clicked,  do  as  follows.  Search  tweets  around  the  loca=on,  and  combine  the  results  with  BBC  Top  News.   ,  show  the  result  on  the  table.”      

Page 23: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Programing    techniques  

23  

“Search  tweets  for  mashup.  ”  

   

Page 24: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Natural  Language  Component  Descrip8on  (NLCD)  

“when   ,  do  as  follows.  ,  and  

.  Finally .”      

24  

Page 25: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Usability  Design  

UI  Design  

UI  Modeling  

Ac8vity  Modeling  

Use  case  Scenario  

25  

Page 26: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Use  case  Scenario  

NLMD author

Component selection

Develop mashup

Publish/deploy

Call for component development

Stack components

Design mashup user interface

Get immediate feedback

Receive writing aids

Develop mashup logic

Search components

26  

Page 27: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  UI  Ac8vi8es  

publish mashups

search components

edit NLMDdesign mashup UI stack components

generate mashup UI

:publish

output : EnglishMash

Widget?Yes

27  

Page 28: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  UI  Model  

resultskeywords

searchcharacteristics drag

stack

remove

feedbackwriting aids NLMD outputpublish

drop

EnglishMash

Search

OutputText field

Stack

28  

Page 29: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Main  Features  

29  

•  Immediate  feedback  •  Live  output  •  Error  

•  Auto-­‐comple8on  •  Data  Flow  sugges8on  •  NLCD  comple8on  •  NLCD  Sugges8ons  

•  Highlight  •  Data  Flow  •  Tex  to  Component  

Page 30: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  User  Interface  

30  

Page 31: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Evalua8on  

31  

•  Auto-­‐comple8on  helps  them:  •  Learn  the  language  •  Effec8vely  use  the  language  to  implement  

mashups  •  Highlights  help  them:  •  not  to  get  lost  

But..  •  It’s  hard  to  choose  among  the  NLCD  sugges8ons  •  It’s  hard  to  debug  a  mashup  

Page 32: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Conclusion  

32  

•  Expressive  power  and  usability  trade-­‐off    •  NLP  is  understandable  by  end  users  •  NLP  problems  can  be  addressed  through:  •  Auto-­‐comple8on  •  Text-­‐based  visualiza8on  

Page 33: EnglishMash: usability design for a natural mashup composition environment

EnglishMash:  Future  work  

33  

•  Smart  in-­‐line  component  search  •  Smart  component  and  composi8on  sugges8on  •  Enable  debugging  •  Collabora8ve  mashup  development  •  Full-­‐featured  UI  Design  toolbox  •  Mul8-­‐UI  mashups  •  Mobile  mashup  development  

Page 34: EnglishMash: usability design for a natural mashup composition environment

EnglishMash  Usability  design  for  a  natural  mashup  

composi8on  environment  

Saeed  Aghaee  and  Cesare  Pautasso  

Faculty  of  Informa8cs  University  of  Lugano  

Switzerland    Email:  [email protected]      Homepage:  hfp://www.saeed-­‐aghaee.info/  

ComposableWeb  2012,  Berlin,  Germany