1. The 15th ACM SIGCHI Symposium on
Engineering Interactive Computing
Systems
juan.saenz@polito.it, luigi.derussis@polito.it
https://elite.polito.it/
Juan Pablo Sáenz and Luigi De Russis
Listen Veronica!
Can you give me a hand with this bug?
2. The documentation that novices
produce is not commonly helpful to
themselves or other developers to
overcome cognitive barriers or guide
the development of new projects.
Our observation
Novices can produce documentation
that might become a valuable asset if
enabled to capture various points of
the development process seamlessly.
The opportunity
3. Our
proposal
The memos consist of self-explanatory
comments or the URLs to the web pages
that developers visit while programming,
which Veronica automatically gathers
from the browser
Developers can create memos
textually or vocally and attach
them to the code
A Visual Studio Code extension in
the form of a conversational agent, to
help developers self-explain their
development process and thoughts as
they arise
4. Visual Studio Code
extension
Selenium
Standalone Server
Speech recognition
API
Google Chrome
extension
Speech synthesis
API
Software developer
Google Dialogflow
socket.io socket.io
Architecture
HTTP HTTP
HTTP
Voice command or textual input
Veronica
5. Laura is a non-experienced developer
working on her programming course
exercise (bubble sort algorithm)
At some point she gets stuck, and
starts thinking aloud reviewing the
code she has written
Therefore, Laura decides to enable
Veronica
Usage Scenario
The computer
microphone turns on
and Veronica starts to
"listen" (1)
The chat opens in the
VS Code left sidebar (2)
6. Laura is not sure where to start
Usage Scenario
With a clear idea of how
the algorithm works,
Laura switches back to
VS Code
Veronica automatically
gathers the URLs of
the consulted websites
and asks Laura if she
wants to save them as a
memo (3)
She opens her browser and finds a
step-by-step conceptual explanation
and a video on YouTube explaning the
implementation of the algorithm
7. Furthermore, Laura has been able to
overcome the doubt that was
blocking her
She creates a memo to remember in
her own words what she understood
from the documentation
Laura also creates another memo to
remember how to deal with the
indexes of the nested loop correctly
The memo can be attached to a line
or block of code
Usage Scenario
"I want to create a new
memo" (4 & 5)
8.
9. The users were asked to complete a set of tasks, each
focused on a specific functionality, and then we posed
feedback questions during a debriefing session to measure
their perception on the tool's usability
The most common piece of feedback among the
participants concerned the lack of guidance
Participants appreciated that Veronica automatically
gathered the URL they consulted and linked it to the code
Usability test
10. Conclusions
and future
work
The usability study showed
that the tool has the
potential to support the
overall goal of producing
documentation with self-
explanatory insights
Future work concerns
solving the usability issues
that have emerged so far
Perform in-the-wild
evaluation of the tool with
developers of varied
expertise
juan.saenz@polito.it