Slides for the talk on "An Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives", held at the 1st International Workshop on Bots in Software Engineering on May 28th, 2019 in Montreal, Canada, in conjunction with ICSE 2019.
Paper authors: Christoph Matthies, Franziska Dobrigkeit, Guenter Hesse
Website: https://botse.github.io/
Preprint: https://arxiv.org/abs/1903.02443
Decarbonising Buildings: Making a net-zero built environment a reality
An Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives
1. Hasso Plattner Institute
University of Potsdam, Germany
christoph.matthies@hpi.de
@chrisma0
An Additional Set of (Automated) Eyes:
Chatbots for Agile Retrospectives
Christoph Matthies, Franziska Dobrigkeit, Guenter Hesse
BotSE @ ICSE’19, Montréal, Canada, May 2019
2. Motivation
2
Why ChatBots?
■ Chat solutions widely used in software teams
■ Teams are often distributed
■ Bots ➞ “virtual team members” [Lebeuf et al., 2017]
□ Remote team member who prefers texting over video calling
□ Give new team member a role that is currently often not filled:
measurement and analysis
□ Second set of eyes for feedback
[Lebeuf et al., 2017] Lebeuf, C. & Storey, M.-A. & Zagalsky, A., “How Software Developers Mitigate Collaboration
Friction with Chatbots”, Talking with Conversational Agents in Collaborative Action Workshop @ CSCW'17, 2017.
3. Idea
3
Why Retrospectives?
■ Chatbots for software development teams
□ Data produced during regular dev. activities [deSouza et al., 2005]
□ Manual analysis is tedious, doesn’t scale well
□ Assign the bot the analysis of this data
■ What should the bot measure exactly?
■ How does it integrate into existing processes?
[deSouza et al., 2005] de Souza, C., Froehlich, J., & Dourish, P, “Seeking the Source: Software Source Code as a Social
and Technical Artifact”. In Proceedings of the 2005 international ACM SIGGROUP conference on Supporting group
work - GROUP ’05, p. 197, New York, New York, USA: ACM Press, 2005, https://doi.org/10.1145/1099203.1099239.
4. Application Context
4
The Scrum Retrospective Meeting
■ Scrum’s dedicated feedback and improvement meeting
[Schwaber et al., 2017]
[Schwaber et al., 2017] Schwaber, K., & Sutherland, J., “The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game”, 2017,
[online] Available: http://scrumguides.org/docs/scrumguide/v2017/2017-Scrum-Guide-US.pdf
5. The Scrum Retrospective
5
An Ideal Habitat for an Analysis Software Bot
Retrospective
Meeting
Sprint
■ What went well?
■ What should be improved next iteration?
6. The Scrum Retrospective
6
An Ideal Habitat for an Analysis Software Bot
Did we improve
what we planned?
Retrospective
Meeting
7. The Scrum Retrospective
7
An Ideal Habitat for an Analysis Software Bot
Did we improve
what we planned?
Retrospective
Meeting
■ “decisions to optimize [..] based on
the [...] state of the artifacts”
- Scrum Guide [Schwaber et al., 2017]
■ “Start with the hard data” [Esther et al., 2007]
[Schwaber et al., 2017] Schwaber, K., & Sutherland, J, “The Scrum Guide - The Definitive Guide to Scrum: The Rules of the Game”, 2017.
[Esther et al., 2007] Esther, D., & Larsen, D, “Agile retrospectives - Making Good Teams Great”, Journal of Product Innovation Management, Vol.
24, Pragmatic Bookshelf, 2007.
8. The Scrum Retrospective
8
An Ideal Habitat for an Analysis Software Bot
Did we improve
what we planned?
commits,
reviews
test runs
tickets
static
analysis
Retrospective
Meeting
Project Data
Evidence of last
iteration’s work
9. The Scrum Retrospective
9
An Ideal Habitat for an Analysis Software Bot
Did we improve
what we planned?
commits,
reviews
test runs
tickets
static
analysis
Retrospective
Meeting
Project Data
Evidence of last
iteration’s work
10. The Scrum Retrospective
10
An Ideal Habitat for an Analysis Software Bot
Did we improve
what we planned?
commits,
reviews
test runs
tickets
static
analysis
Retrospective
Meeting
Project Data
Evidence of last
iteration’s work
11. Software Project Data
11
Mining Repositories of Teams
code code analyses
Project Data
documentation
Primary purpose: Communication Opportunity: Process Insights
...
12. Software Project Data
12
Mining Repositories of Teams
■ Project data is continuously produced
■ Holds insights into team processes
code code analyses
Project Data
documentation
Primary purpose: Communication Opportunity: Process Insights
...
13. RetroBot Workflow
13
The Steps and Resources which are Required
Chat Context
Developer
Bot
(1)
(5)
Analysis
Artifact Measurements
(3)
(4)Analysis
Results
Bot Context
Software Project Data
(2)
Team in
retrospective
RetroBot requires knowledge of team project data and
of defined artifact measurements
14. Related Work
14
An Entire Family of Software Bots
■ Tools for supporting Retrospectives through automation
□ Reminders, archiving action items [goReflect, 2019]
□ Facilitating activities [Retrium, 2019]
□ Running surveys [Standuply, 2019]
■ Chat platforms can support agile teams in Retrospectives
■ Existing bots automate organizational tasks,
inputs are solely team members’ perceptions
[goReflect, 2019] GoReflect, “goReflect - Continuous Retrospectives for Agile Improvement,” 2019, [Online] Available: https://www.goreflect.com/
[Retrium, 2019] Retrium, “The era of boring retrospectives isover,” 2019, [Online] Available: https://www.retrium.com
[Standuply, 2019] Standuply, “Retrospective Meeting Slack Bot,” 2019, [Online] Available: https://standuply.com/retrospective-meeting
17. Image Credits
17
In order of appearance
■ Robot by Oksana Latysheva from the Noun Project (CC BY 3.0 US)
■ Retrospective meeting by Shocho from the Noun Project (CC BY 3.0 US)
■ Developer by shashank singh from the Noun Project (CC BY 3.0 US)
■ Wall by Creaticca Creative Agency from the Noun Project (CC BY 3.0 US)
■ Gears by Icon Fair from the Noun Project (CC BY 3.0 US)
■ Code by Gregor Cresnar from the Noun Project (CC BY 3.0 US)
■ Documentation by tom from the Noun Project (CC BY 3.0 US)
■ Analysis by Chameleon Design from the Noun Project (CC BY 3.0 US)