Six Principles of Software Design to Empower Scientists


Published on

Keynote talk for Workshop on Managing for Usability:
Challenges and Opportunities for E-Science Project Management, 10-11 April 2008,
OeRC, University of Oxford, UK

Published in: Technology, Education
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Six Principles of Software Design to Empower Scientists

    1. 1. David De Roure and Carole Goble Six Principles of Software Design to Empower Scientists
    2. 2. Our e-Science context 6 principles of design for adoption 6 principles of user engagement The myExperiment experience Reflections
    3. 3. <ul><li>The e-Science Pilots, OMII-UK and myExperiment </li></ul>
    4. 4. CombeChem my Grid Taverna CoAKTinG Memetic CREW CombeChem platform OMII-UK myGrid myGrid platform myExperiment
    5. 5. <ul><li>Box of Chemists </li></ul>My Chemistry Experiment
    6. 6. X-Ray e -Lab Analysis Properties Properties e -Lab Simulation Video Diffractometer G rid Middleware Structures Database Iconic CombeChem Picture
    7. 7. scientists Digital Libraries Graduate Students Undergraduate Students experimentation Data, Metadata Provenance Workflows Ontologies The social process of science Local Web Repositories Virtual Learning Environment Technical Reports Reprints Peer-Reviewed Journal & Conference Papers Preprints & Metadata Certified Experimental Results & Analyses
    8. 8. Smart Tea
    9. 9. <ul><li>Workflows are the new rock and roll </li></ul><ul><li>Machinery for coordinating the execution of (scientific) services and linking together (scientific) resources </li></ul><ul><li>The era of Service Oriented Applications </li></ul><ul><li>Repetitive and mundane boring stuff made easier </li></ul>Iconic my Grid/Taverna Slide Carole Goble
    10. 10. <ul><li>Paul writes workflows for identifying biological pathways implicated in resistance to Trypanosomiasis in cattle </li></ul><ul><li>Paul meets Jo. Jo is investigating Whipworm in mouse. </li></ul><ul><li>Jo reuses one of Paul’s workflow without change . </li></ul><ul><li>Jo identifies the biological pathways involved in sex dependence in the mouse model, believed to be involved in the ability of mice to expel the parasite. </li></ul><ul><li>Previously a manual two year study by Jo had failed to do this. </li></ul>Recycling, Reuse, Repurposing
    11. 11. Kepler Triana BPEL Ptolemy II
    12. 12. <ul><li>Run on your laptop – no sysadmin required </li></ul><ul><li>Access independent third party world-wide service providers of applications, tools and datasets </li></ul><ul><ul><li>850 databases, 166 web servers Nucleic Acids Research Jan 2006 </li></ul></ul><ul><li>My local applications, tools and datasets. In the Enterprise. In the laboratory </li></ul><ul><li>Easily incorporate new services without coding </li></ul>The Taverna Superclient
    13. 13. 40 Taverna downloads per day 2007 2006 2005 2004 2003
    14. 14. OMII-UK provides free Open Source software and support to enable a sustained future for the UK e-Research community. Our software includes Software Solutions, which are easy-to-use and easy-to-install software packages that solve common e-Research problems, and the Development Kit, which is a set of inter-operable software components that can be linked together to provide bespoke functionality. OMII-UK supports Open Source software development by commissioning developers to produce software with the functionality required by our user community.
    15. 15. e-Science Value Chain © Infrastructure Provider Component Provider Solution Provider e-Science End User OMII OMII-UK
    16. 16. is… <ul><li>“ Facebook for Scientists”...but different to Facebook! </li></ul><ul><li>A community social network. </li></ul><ul><li>A gateway to other publishing environments </li></ul><ul><li>A federated repository </li></ul><ul><li>A platform for launching workflows </li></ul><ul><li>Publishing self-describing Encapsulated myExperiment Objects </li></ul><ul><li>Mindful publication </li></ul><ul><li>Started March 2007 </li></ul><ul><li>Closed beta since July 2007 </li></ul><ul><li>Open beta November 2007 </li></ul> is... 703 users, 67 groups, 146 workflows, 24 files
    17. 19. scientists Graduate Students Undergraduate Students experimentation Data, Metadata Provenance Workflows Ontologies Digital Libraries The social process of science 2.0 Local Web Repositories Virtual Learning Environment Technical Reports Reprints Peer-Reviewed Journal & Conference Papers Preprints & Metadata Certified Experimental Results & Analyses
    18. 20. <ul><li>Our Six Principles of Design for Adoption </li></ul>
    19. 21. <ul><li>No obligation on service providers to change their services to fit into Taverna </li></ul><ul><li>Early users tolerated less-than-perfect interfaces because their favourite service was available </li></ul><ul><li>myExperiment motto is to bring myExperiment to the user </li></ul><ul><ul><li>Wikis, iGoogle, etc </li></ul></ul><ul><ul><li> </li></ul></ul>1. Fit in, Don’t Force Change
    20. 22. <ul><li>This is about incentives </li></ul><ul><li>The activation energy required by users to adopt a feature must be matched by the reward gained </li></ul><ul><li>Get some core capability and quick wins out there as soon as you can </li></ul><ul><li>Our scientists and developers travelled on the journey together </li></ul>2. Jam Today and more Jam Tomorrow
    21. 23. <ul><li>This is about delivery </li></ul><ul><li>Be better not perfect </li></ul><ul><li>Solve the problems users already know they have – don’t make them wait for solutions to problems they don’t yet know they have and perhaps never will! </li></ul><ul><li>With websites it’s easier to be incremental and to involve a distributed and disparate community of users in the design process </li></ul>3. Just in Time and Just Enough
    22. 24. Carole Goble
    23. 25. <ul><li>We targeted a community we know really well, picked a few close ‘friends and family’ and just built it for them </li></ul><ul><li>Experience suggests that customisation outvotes genericity, extensibility outvotes comprehensivity, and scruffy and flexible outvotes smart but rigid </li></ul><ul><li>As Don Wells said, “Don’t Solve a Problem Before You Get to It” </li></ul>4. Act Local, think Global
    24. 26. <ul><li>This is about empowerment </li></ul><ul><li>Extensibility and customisation are crucial to adoption </li></ul><ul><li>The small team associated with myExperiment means maximal reuse and reusability is a necessity as well as a nicety </li></ul><ul><li>As much use as possible of third party code and services, and our services available through a simple API </li></ul>5. Enable Users to Add Value
    25. 27. <ul><li>This is about community </li></ul><ul><li>Large number of scientists conducting the routine processes of science on a daily basis </li></ul><ul><li>Gathering usage data enables the community to benefit from usage without explicitly uploading new content </li></ul>6. Design for Network Effects
    26. 28. <ul><li>Both projects are just as much – or perhaps even more – about content as software </li></ul><ul><li>We were reminded of this when we went open beta with myExperiment and the first bug report that came in was about a spelling error in a user-provided workflow description </li></ul>NB
    27. 29. <ul><li>Building Trust between Users and Developers </li></ul><ul><li>Our Six Principles of User Engagement </li></ul>
    28. 31. <ul><li>Local pioneers and external early adopters </li></ul><ul><li>OMII-UK operates a scheme of beta testers and ‘Product/Area Liaisons’ (PALs), who are not directly working for OMII-UK but are the eyes and ears in the communities they work in </li></ul><ul><li>Taverna has three very active PALs </li></ul><ul><li>myExperiment has community champions </li></ul>1. Keep your Friends Close
    29. 32. <ul><li>We embed developers with users and users with developers, getting them to sit side by side for long periods </li></ul><ul><li>We started myExperiment by embedding the developers in an end-user laboratory, to experience the work environment with respect to sharing and communication, and understanding non-functional requirements </li></ul>2. Embed
    30. 33. <ul><li>Tendency of developers to get hung up on some point that a user doesn’t worry about in the overall scheme of things </li></ul><ul><li>Our software is not the only software our users use, and they are only using it to do the research they really want to do </li></ul><ul><li>They daily use complex tools they are familiar and comfortable with – mimic these tools and link with them </li></ul>3. Keep Sight of the Bigger Picture
    31. 34. <ul><li>Building trust is a two-way activity, requiring compromise and favours </li></ul><ul><li>For every pioneer, myGrid ‘sacrificed’ one developer in support – this was not wasted effort! </li></ul><ul><li>We still develop, or help partners develop, bespoke code </li></ul><ul><li>In myExperiment we prioritise tasks and allocate development effort based on the return in adoption </li></ul>4. Favours will be in your Favour
    32. 35. <ul><li>Rarely is there one kind of user: </li></ul><ul><ul><li>Scientists </li></ul></ul><ul><ul><li>domain expert developers producing applications </li></ul></ul><ul><ul><li>service developers </li></ul></ul><ul><ul><li>service providers </li></ul></ul><ul><ul><li>system administrators. </li></ul></ul><ul><li>Don’t forget young postdocs and postgraduates! </li></ul>5. Know your Users
    33. 36. <ul><li>User needs and wants will change </li></ul><ul><li>Success will mean that scientific practice will change, and so will expectations </li></ul><ul><li>The choice of pioneering friends will need to change and new classes of user will emerge </li></ul><ul><li>When we started out, we replicated current scientific practice – two years later we were inventing new practice </li></ul>6. Expect and Anticipate Change
    34. 37. <ul><li>The myExperiment Experience </li></ul>
    35. 38. 24/5/2007 | myExperiment | Slide
    36. 39. Google Gadget
    37. 40. Ownership and Attribution
    38. 41. ` Enactor HTML XML Snapshot map of resources with their relationships and versions users descriptions groups friendships tags blobs workflows
    39. 43. <ul><li>Web 2.0 developers vs CS Software Engineers </li></ul><ul><li>Core team + champions works really well </li></ul><ul><li>We’ve stuck to “only do what users ask for” – features then refactoring </li></ul><ul><li>For the project manager it’s like driving a very fast car! </li></ul><ul><li>Weekly update </li></ul>Managing Developers
    40. 44. <ul><li>Daily 5pm developer chat chaired by PM, Co-PI or PM delegate </li></ul><ul><li>Weekly 10.30 management telephone conference </li></ul><ul><li>Monthly team Face to face </li></ul><ul><li>Monthly hackfest </li></ul><ul><li>Monthly (at least) user workshop </li></ul><ul><li>PM has daily contact with developers </li></ul><ul><li>Influencing myGrid team </li></ul>The regime!
    41. 46. e-Science Pipeline e-Science Technology Creators & Integrators Applications Research EE Research Socio-economic & Commercial Innovation e-Science bespoke tailoring Mass Use by Researchers 5 years 5 years 5 years CS Research e-Science 10s of integrators 100s of embedded consultants 1000s of research users The Arrow Problem Malcolm Atkinson NB This isn’t wrong!
    42. 47. <ul><li>Don’t think rollout of technologies... </li></ul>Think roll-in of researchers... Mass Use by Researchers Knowledge co-production vs Service Delivery! Mass Use by Researchers
    43. 48. Web Services RESTful APIs cmd lines ssh http Web Browser Mobile phone iPod Car Equipment PDA P2P OeRC mashups workflows services applications Subject ICT experts Computer Scientists Software Companies Workflow tools Ruby on Rails ecosystem Scientists open source Software Engineers nesc
    44. 49. N 2 N N
    45. 50. One Middleware 2N N N
    46. 51. Middleware ? N N Middleware Middleware Middleware Middleware Middleware Polynomial involving N1, N2 and M
    47. 52. <ul><li>Don’t think rollout of technology, think roll-in of users </li></ul>Take home
    48. 53. <ul><li>Fit in, Don’t Force Change </li></ul><ul><li>Jam today and more jam tomorrow </li></ul><ul><li>Just in Time and Just Enough </li></ul><ul><li>Act Local, think Global </li></ul><ul><li>Enable Users to Add Value </li></ul><ul><li>Design for Network Effects </li></ul>Summary of Principles <ul><li>Keep your Friends Close </li></ul><ul><li>Embed </li></ul><ul><li>Keep Sight of the Bigger Picture </li></ul><ul><li>Favours will be in your Favour </li></ul><ul><li>Know your users </li></ul><ul><li>Expect and Anticipate Change </li></ul>
    49. 54. <ul><li>Contact </li></ul><ul><li>David De Roure </li></ul><ul><li> </li></ul><ul><li>Carole Goble </li></ul><ul><li>[email_address] </li></ul><ul><li>Thanks </li></ul><ul><li>Malcolm Atkinson, Jeremy Frey, Savas Parastatides, The myGrid Family </li></ul>