Code-tagging and similarity-based retrieval with myCBR

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Code-tagging and similarity-based retrieval with myCBR - Presentation Transcript

    1. CAMBRIDGE, UK, 10 DEC 2008 Code-tagging and similarity- based retrieval with myCBR Thomas Roth-Berghofer & Daniel Bahls Senior researcher, trb@dfki.de German Research Centre for Artificial Intelligence DFKI GmbH Samstag, 18. Juli 2009
    2. Programmer‘s dilemma Samstag, 18. Juli 2009
    3. Programmer‘s dilemma Samstag, 18. Juli 2009
    4. Programmer‘s dilemma • Where is the code fragment I used to solve a similar problem in the past? • Is this piece of code still available? • Is it worth the effort to search for it? • If so, what would be the right search term? Samstag, 18. Juli 2009
    5. Personalised approach Samstag, 18. Juli 2009
    6. Personalised approach • Personal vocabulary: tags Samstag, 18. Juli 2009
    7. Personalised approach • Personal vocabulary: tags • Linking tags Samstag, 18. Juli 2009
    8. Personalised approach • Personal vocabulary: tags • Linking tags • Case-based retrieval Samstag, 18. Juli 2009
    9. Personalised approach • Personal vocabulary: tags • Linking tags • Case-based retrieval • Work context Samstag, 18. Juli 2009
    10. Personalised approach • Personal vocabulary: tags • Linking tags • Case-based retrieval • Work context • Social dimension: tag exchange Samstag, 18. Juli 2009
    11. CBR cycle Agnar Aamodt and Enric Plaza. Case-based reasoning: Foundational issues, methodological variations, and system approaches. AI Communications, 7(1):39–59, 1994. Samstag, 18. Juli 2009
    12. CBR cycle myCBR CBR Agnar Aamodt and Enric Plaza. Case-based reasoning: Foundational issues, methodological variations, and system approaches. AI Communications, 7(1):39–59, 1994. Samstag, 18. Juli 2009
    13. Code snippet & context Java code snippet Samstag, 18. Juli 2009
    14. Code snippet & context Java code snippet Work context • java.net.URL • java.net.URLConnection • java.io.InputStream • java.lang.StringBuffer • java.io.BufferedReader • java.lang.String • java.lang.Exception Samstag, 18. Juli 2009
    15. Case structure Attribute Value type category Tags String (multiple) Problem description Context items String (multiple) Problem description Code snippet String Solution Document type String Provenance Project name String Provenance File path String Provenance Author ID String Provenance Creation date Long Provenance Rating Float Maintenance Rating count Integer Maintenance Samstag, 18. Juli 2009
    16. Case structure Set by user Set by coTag Attribute Value type category Tags String (multiple) Problem description Context items String (multiple) Problem description Code snippet String Solution Document type String Provenance Project name String Provenance File path String Provenance Author ID String Provenance Creation date Long Provenance Rating Float Maintenance Rating count Integer Maintenance Samstag, 18. Juli 2009
    17. Acquiring case Samstag, 18. Juli 2009
    18. Acquiring case Samstag, 18. Juli 2009
    19. Query view • Search for tags: init, logging config • Include context => regard currently selected code Samstag, 18. Juli 2009
    20. Retrieval • Result for: init, logging, config • Ranked list of code snippets Samstag, 18. Juli 2009
    21. Presentation of cases Samstag, 18. Juli 2009
    22. Situations in which explanations play a role • Instructing explanations: • Novice users want to know about how tagging and (similarity-based) retrieval works. • Convincing explanations: • Regular users want to check when the retrieval does not meet their expectations. • Improving explanations • Regular users want to correct coTag‘s behaviour. Samstag, 18. Juli 2009
    23. Explanation of matching • Search terms: • init, logging, config • Case tags: • init, Logger Samstag, 18. Juli 2009
    24. Graphical explanation of trigram matching • Syntactical similarity • Typos • Stemming Samstag, 18. Juli 2009
    25. Similarity customisation • Tag similarities: unsimilar 0% partly similar 25% similar 50% very similar 75% identical 100% • Updates personal and community similarity measure Samstag, 18. Juli 2009
    26. Similarity customisation • Tag similarities: unsimilar 0% partly similar 25% similar 50% very similar 75% identical 100% • Updates personal and community similarity measure Samstag, 18. Juli 2009
    27. Three levels of similarity calculation Personal Imported Trigram Samstag, 18. Juli 2009
    28. Three levels of similarity calculation Personal Imported Trigram Samstag, 18. Juli 2009
    29. Three levels of similarity calculation Personal Imported Trigram Samstag, 18. Juli 2009
    30. Three levels of similarity calculation Personal Imported Trigram Samstag, 18. Juli 2009
    31. Three levels of similarity calculation Personal Imported Trigram Samstag, 18. Juli 2009
    32. Customised (personal) and imported similarity Samstag, 18. Juli 2009
    33. Client-side architecture Samstag, 18. Juli 2009
    34. Client-side architecture Samstag, 18. Juli 2009
    35. Client-side architecture Samstag, 18. Juli 2009
    36. Tag and exchange code snippets Samstag, 18. Juli 2009
    37. Samstag, 18. Juli 2009
    38. Samstag, 18. Juli 2009
    39. Take home messages Samstag, 18. Juli 2009
    40. Take home messages • Re-finding information is a quite typical task in knowledge-work. Samstag, 18. Juli 2009
    41. Take home messages • Re-finding information is a quite typical task in knowledge-work. • Tagging is a helpful and well- known technique. Samstag, 18. Juli 2009
    42. Take home messages • Re-finding information is a quite typical task in knowledge-work. • Tagging is a helpful and well- known technique. • Similarity-based retrieval can improve searches. Samstag, 18. Juli 2009
    43. Take home messages • Re-finding information is a quite typical task in knowledge-work. • Tagging is a helpful and well- known technique. • Similarity-based retrieval can improve searches. • Explanation-aware development of applications help you deal with increased complexity of similarity- based retrieval. Samstag, 18. Juli 2009
    44. Thank you! CAMBRIDGE, UK, 10 DEC 2008 Code-tagging and similarity- based retrieval with myCBR Thomas Roth-Berghofer & Daniel Bahls Senior researcher, trb@dfki.de German Research Centre for Artificial Intelligence DFKI GmbH Samstag, 18. Juli 2009
    SlideShare Zeitgeist 2009

    + Thomas Roth-BerghoferThomas Roth-Berghofer Nominate

    custom

    199 views, 0 favs, 0 embeds more stats

    This paper describes the code tagging plug-in coTag more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 199
      • 199 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 8
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories