programming or flexibility
play

Programming or Flexibility? Design of Programmable Applications with - PowerPoint PPT Presentation

Programming or Flexibility? Design of Programmable Applications with Biologists Catherine Letondal letondal@pasteur.fr In Situ, LRI, Institut Pasteur EUD-Net p.1/22 In Situ New interaction paradigms: multi-scale (or zoomable)


  1. Programming or Flexibility? Design of Programmable Applications with Biologists Catherine Letondal letondal@pasteur.fr In Situ, LRI, Institut Pasteur EUD-Net – p.1/22

  2. In Situ New interaction paradigms: multi-scale (or zoomable) interfaces, interactive information visualization, bimanual interaction, video and non-speech audio, augmented or mixed reality. Participatory design development of new participatory design methods, make the role of context explicit in the design process. Engineering of interactive systems component-based architectures (customizable and dynamic addition or substitution of interaction techniques). EUD-Net – p.2/22

  3. Programming situations scripting: search for a sequence pattern, then retrieve all the corresponding secondary structures in a database (example) EUD-Net – p.3/22

  4. Programming situations scripting: search for a sequence pattern, then retrieve all the corresponding secondary structures in a database (example) parsing: search for the best match in a database similarity search report but relative to each subsection EUD-Net – p.3/22

  5. Programming situations scripting: search for a sequence pattern, then retrieve all the corresponding secondary structures in a database (example) parsing: search for the best match in a database similarity search report but relative to each subsection formatting: renumber one’s sequence positions from -3000 to +500 instead of 0 to 3500 EUD-Net – p.3/22

  6. Programming situations scripting: search for a sequence pattern, then retrieve all the corresponding secondary structures in a database (example) parsing: search for the best match in a database similarity search report but relative to each subsection formatting: renumber one’s sequence positions from -3000 to +500 instead of 0 to 3500 variation: search for patterns in a sequence, except repeated ones EUD-Net – p.3/22

  7. Programming situations scripting: search for a sequence pattern, then retrieve all the corresponding secondary structures in a database (example) parsing: search for the best match in a database similarity search report but relative to each subsection formatting: renumber one’s sequence positions from -3000 to +500 instead of 0 to 3500 variation: search for patterns in a sequence, except repeated ones finer control on the computation: control in what order multiple sequences are compared and aligned EUD-Net – p.3/22

  8. Programming situations scripting: search for a sequence pattern, then retrieve all the corresponding secondary structures in a database (example) parsing: search for the best match in a database similarity search report but relative to each subsection formatting: renumber one’s sequence positions from -3000 to +500 instead of 0 to 3500 variation: search for patterns in a sequence, except repeated ones finer control on the computation: control in what order multiple sequences are compared and aligned simple operations: search in a DNA sequence for the characters other than A, C, T and G EUD-Net – p.3/22

  9. Parsing and scripting example This example shows the report of a program searching for registered well-known patterns in a given protein sequence. Access# From->To Name _______ ________ ____ PS00005 39->41 PKC_PHOSPHO_SITE Pattern [ST].[RK] matched Site 39 TTR 41 PS00005 71->73 PKC_PHOSPHO_SITE Pattern [ST].[RK] matched Site 71 TSK 73 PS00008 20->25 MYRISTYL Pattern G[ˆEDRKHPFYW]..[STAGCN][ˆP] matched Site 20 GILAAI 25 EUD-Net – p.4/22

  10. Problem description more and more professional bio-informaticists, still a minority the vast majority does not program EUD-Net – p.5/22

  11. Problem description more and more professional bio-informaticists, still a minority the vast majority does not program many biologists are able to program and have learned programming many of them do not program at all although they would need it EUD-Net – p.5/22

  12. Problem description more and more professional bio-informaticists, still a minority the vast majority does not program many biologists are able to program and have learned programming many of them do not program at all although they would need it Why? EUD-Net – p.5/22

  13. Problem description more and more professional bio-informaticists, still a minority the vast majority does not program many biologists are able to program and have learned programming many of them do not program at all although they would need it It’s too difficult to program a little . EUD-Net – p.5/22

  14. Approaches enable Programming In The User Interface ( programmability ) EUD-Net – p.6/22

  15. Programming In The User Interface What we want: working environment = programming environment EUD-Net – p.7/22

  16. biok: graphical objects EUD-Net – p.8/22

  17. biok: tags EUD-Net – p.9/22

  18. biok: programming tags EUD-Net – p.10/22

  19. biok: tags classes Tag RowTag ColTag CellRowTag CellColTag CellTag SequenceTag PyrPurTag GCTag PIDTag PatternTag ToppredTag RegexpRowTag ZappoTag OccTag EUD-Net – p.11/22

  20. biok: sub-classing tags EUD-Net – p.12/22

  21. biok: sub-classing tags EUD-Net – p.12/22

  22. biok: programming EUD-Net – p.13/22

  23. biok programming: tracing EUD-Net – p.14/22

  24. Programming In The User Interface working environment = programming environment learning by examples incremental programming easier switch between 2 modes (using/programming); programming as just a kind of advanced use (with several levels) (but programming should not be required for a standard use) EUD-Net – p.15/22

  25. Approaches enable Programming In The User Interface ( programmability ) EUD-Net – p.16/22

  26. Approaches enable Programming In The User Interface ( programmability ) from programmability to software flexibity ; for biologists, lack of flexibility in current software could provide a better explanation than technical or cognitive problems in programming EUD-Net – p.16/22

  27. Approaches enable Programming In The User Interface ( programmability ) from programmability to software flexibity ; for biologists, lack of flexibility in current software could provide a better explanation than technical or cognitive problems in programming flexibility is anticipation: EUD-Net – p.16/22

  28. Approaches enable Programming In The User Interface ( programmability ) from programmability to software flexibity ; for biologists, lack of flexibility in current software could provide a better explanation than technical or cognitive problems in programming flexibility is anticipation: programmability EUD-Net – p.16/22

  29. Approaches enable Programming In The User Interface ( programmability ) from programmability to software flexibity ; for biologists, lack of flexibility in current software could provide a better explanation than technical or cognitive problems in programming flexibility is anticipation: programmability MOP EUD-Net – p.16/22

  30. Modifiable systems Cognitive distance issue: user domain objects user interface UI objects program objects source code EUD-Net – p.17/22

  31. Modifiable systems Cognitive distance issue: user user interface A good programming environment source code EUD-Net – p.17/22

  32. Modifiable systems Cognitive distance issue: user user interface A good programming environment source code From MOP ... user modify meta−model (MOP, ...) programs with define language EUD-Net – p.17/22

  33. Modifiable systems Cognitive distance issue: user user interface A good programming environment source code From MOP ... to MAP (Meta-Application Protocol): user user modify modify meta−model (MOP, ...) meta−model (internal representation) programs with uses define define language application EUD-Net – p.17/22

  34. Modifiable systems Cognitive distance issue: user user interface intermediate progr. levels (protocol) A good programming environment source code From MOP ... to MAP (Meta-Application Protocol): user user modify modify meta−model (MOP, ...) meta−model (internal representation) programs with uses define define language application EUD-Net – p.17/22

  35. Approaches enable Programming In The User Interface ( programmability ) from programmability to software flexibity ; for biologists, lack of flexibility in current software could provide a better explanation than technical or cognitive problems in programming flexibility is anticipation: programmability MOP participatory design, EUD-Net – p.18/22

  36. Participatory Design anticipate flexibility spots (EU-not-P versus EUP) direct use programming EUD-Net – p.19/22

  37. Participatory Design rather few programming issues raised in design workshops EUD-Net – p.19/22

  38. Approaches enable Programming In The User Interface ( programmability ) from programmability to software flexibity ; for biologists, lack of flexibility in current software could provide a better explanation than technical or cognitive problems in programming flexibility is anticipation: programmability MOP participatory design, flexibility is provided in informal tools (spreadsheets, ...), flexibility is also more control on computation, ( algorithmic flexibility ) EUD-Net – p.20/22

Recommend


More recommend