Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Próximo SlideShare
Matrices
Matrices
Cargando en…3
×
1 de 43

Harnessing Stack Overflow for the IDE - RSSE 2012

1

Compartir

Full paper presentation ("Harnessing Stack Overflow for the IDE") @ RSSE 2012

Libros relacionados

Gratis con una prueba de 30 días de Scribd

Ver todo

Audiolibros relacionados

Gratis con una prueba de 30 días de Scribd

Ver todo

Harnessing Stack Overflow for the IDE - RSSE 2012

  1. 1. Harnessing for the IDE Alberto Bacchelli, Luca Ponzanelli, and Michele Lanza REVEAL @ Faculty of Informatics University of Lugano, Switzerland
  2. 2. Who am I?
  3. 3. R E V E A L
  4. 4. “The software development process also heavily relies on the knowledge and creativity of individual software developers and their intense interactions.” Supporting software development as knowledge-intensive and collaborative activity. Yunwen Ye [WISER’06]
  5. 5. “The software development process also heavily relies on the knowledge and creativity of individual software developers and their intense interactions.” Supporting software development as knowledge-intensive and collaborative activity. Yunwen Ye [WISER’06]
  6. 6. Developers’ knowledge is not enough
  7. 7. Manuals Documentation Online Resources
  8. 8. Outdated Documentation
  9. 9. “Developers’ knowledge can only be satisfied by posing questions to other programmers.” Maintaining Mental Models: A Study of Developer Work Habits LaToza,Venolia, DeLine [ICSE’06]
  10. 10. General Purpose Technical
  11. 11. “Q&A online services are filling archives with millions of entries for software development.” How do programmers ask and answer questions on the web? (NIER track) Treude, Barzilay, Storey [ICSE’11]
  12. 12. Q&A services are disconnected from the IDE
  13. 13. Issue Found
  14. 14. Research...
  15. 15. Resolve Issue
  16. 16. Context Switch
  17. 17. Developers need suggestions
  18. 18. http://seahawk.inf.usi.ch
  19. 19. http://seahawk.inf.usi.ch Apache POST XML POST Seahawk Solr Search Query data Mbox Engine XML HTTP engine Mbox dump XML files files files Document Annotation Annotation Cache builder engine (SQLite) XML dump DB System model importer PostgreSQL Data-collection Mechanism Eclipse
  20. 20. http://seahawk.inf.usi.ch Apache XML Solr Search data Mbox Data Mbox Engine dump files files files Collection Document builder Mechanism XML dump importer DB PostgreSQL Data-collection Mechanism
  21. 21. http://seahawk.inf.usi.ch Query Seahawk engine Recommendation Annotation engine Annotation Cache Engine (SQLite) System model Eclipse
  22. 22. Query engine http://seahawk.inf.usi.ch Island Parsing
  23. 23. Query engine http://seahawk.inf.usi.ch /*Sample Class for a test*/ public class ExampleClass{ private final List<Integer> values; public ExampleClass(){ values = new ArrayList<String>(); } public int doSum(){ int sum = 0; for(final Integer i : values) sum += i; return i; } }
  24. 24. Query engine http://seahawk.inf.usi.ch /*Sample Class for a test*/ Comment public class ExampleClass{ private final List<Integer> values; Field public ExampleClass(){ values = new ArrayList<String>(); Method } public int doSum(){ int sum = 0; for(final Integer i : values) sum += i; Method return i; } }
  25. 25. Query engine http://seahawk.inf.usi.ch No AST
  26. 26. Query engine http://seahawk.inf.usi.ch Imports Code define refines the context the context
  27. 27. Seahawk Query engine Annotation Annotation Annotation Cache Cache engine (SQLite) (SQLite) System model http://seahawk.inf.usi.ch Eclipse Annotations = Collaboration
  28. 28. http://seahawk.inf.usi.ch /*! * @documentId http://stackoverflow.com/questions/567160 * @title C++ linker problem with wrapper * @comment check it out! * @author Seahawk * @creationTime 2012.04.13 16:42:52.634 CEST */
  29. 29. http://seahawk.inf.usi.ch Integrates Stack Overflow in the IDE Links relevant documents to code Favors example-based programming Automatically generates query from code
  30. 30. http://seahawk.inf.usi.ch Integrates Stack Overflow in the IDE Links relevant documents to code Favors example-based programming Automatically generates query from code
  31. 31. http://seahawk.inf.usi.ch Integrates Stack Overflow in the IDE Links relevant documents to code Favors example-based programming Automatically generates query from code
  32. 32. http://seahawk.inf.usi.ch Integrates Stack Overflow in the IDE Links relevant documents to code Favors example-based programming Automatically generates query from code
  33. 33. Interfaces and well-known topics
  34. 34. Badly written code
  35. 35. Your personal “Alfred”

×