ICSE 2016 Software Engineering in Practice keynote.
Continuity in software development is all about shortening cycle times. For example, continuous integration shortens the time to integrating changes from multiple developers and continuous delivery shortens the time to get those integrated changes into the hands of users. Although it is now possible to get multiple new versions of complex software systems released per day, it still often takes years, if ever, to get software engineering research results into use by software development teams. What would software engineering research and software engineering development look like if we could shorten the cycle time from taking a research result into practice? What can we learn from how continuity in development is performed to make it possible to achieve continuous adoption of research results? Do we even want to achieve continuous adoption? In this talk, I will explore these questions, drawing from experiences I have gained in helping to take a research idea to market and from insights learned from interviewing industry leaders.
29. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Mylyn/Tasktop Highlights: 2007-2016
30. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Mylyn/Tasktop Highlights: 2007-2016
31. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Mylyn/Tasktop Highlights: 2007-2016
32. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Mylyn/Tasktop Highlights: 2007-2016
33. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Users thought
Tasktop/Mylyn
had deleted their
code!
Mylyn/Tasktop Highlights: 2007-2016
34. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Users thought
Tasktop/Mylyn
had deleted their
code!
Solution was to add one line
instruction
Mylyn/Tasktop Highlights: 2007-2016
35. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Users thought
Tasktop/Mylyn
had deleted their
code!
Solution was to add one line
instruction
Mylyn/Tasktop Highlights: 2007-2016
36. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Mylyn/Tasktop Highlights: 2007-2016
37. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Mylyn/Tasktop Highlights: 2007-2016
38. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovations
Mylyn/Tasktop Highlights: 2007-2016
39. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovationsVarious
inventions
Mylyn/Tasktop Highlights: 2007-2016
40. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovationsVarious
inventions
Mylyn/Tasktop Highlights: 2007-2016
41. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovationsVarious
inventions
Mylyn/Tasktop Highlights: 2007-2016
42. 2007
2008
2009
2011
2014
2015-16
Mylar becomes Eclipse Mylyn
Tasktop Dev
Tasktop Dev - Enterprise sales
Tasktop Sync
$11M Series A funding
Tasktop Data & Gateway capabilities
Eclipse Mylyn
Various innovationsVarious
inventions
Continual
innovation &
incremental
validation
Mylyn/Tasktop Highlights: 2007-2016
47. Continuous Integration
Problem: Slow discovery of integration problems
slows development and delivery
Shared
Repository
Thanks to https://
www.thoughtworks.com/continuous-
integration
Automated
Fast Builds
Self-testing
Builds
Everyone
commits
to baseline
each day
Automate
Deployment
Build
every commit
on
integration
machine
24
67. Research
Invention
creation or
design of
something that
has not existed
before
e.g., the
incandescent
lightbulb
Innovation
about the use of
an idea of
method
e.g., iPhone
Both “I”s are important
Innovation builds from
earlier inventions and
innovations
68. Research
Invention
creation or
design of
something that
has not existed
before
e.g., the
incandescent
lightbulb
Innovation
about the use of
an idea of
method
e.g., iPhone
Both “I”s are important
Innovation builds from
earlier inventions and
innovations
Research is the
base
69. Research
Invention
creation or
design of
something that
has not existed
before
e.g., the
incandescent
lightbulb
Innovation
about the use of
an idea of
method
e.g., iPhone
Both “I”s are important
Innovation builds from
earlier inventions and
innovations
Research is the
base
It takes almost as
much creativity to
understand a good
idea as to have it
in the first place.
- Alan Kay
70. Forrester Research, TechRadar™: Continuous Software Delivery, Q2 2015"
Research
is having
impact
Tech Radar image
removed for
licensing reasons.
Image showed that
static analysis tools,
version management,
etc. from SE research
community have
impact in SE in practice.
80. 42
Thanks to…
Mylar + Early Tasktop:
Tasktopians circa 2013
Mik Kersten, Rob Elves, Shawn Minto, Davor Cubranic, Taivo Evard, Nathan Hapke,
Wesley Coelho, Meghan Allen, Leo Dos Santos, Steffen Pingel
Reid Holmes and my
research group for suffering
through practice
talks: Daniel Almeida, Julius
Davies, Michalis Famelis,
Marc Palyart, Albert
Thompson, Giovanni Viviani
86. I do not want you to leave this talk
thinking…
•Every research project needs impact in
practice
•Every research project should result in an
open source project
•It is good enough to transfer people to
Practice
•Having impact in practice requires creating a
company
90. Is Continuous Adoption in SE
Achievable and Desirable?
45
It is happening
Much more often from practice,
driven by need to solve problems,
not from SE research
91. Research
Impact
Impact
Practice
engage with the practice of software engineering
convey (blog?) results in terms of problems in practice
create and nurture an open source project
commercialize a technology
collaborate with industrial partner
track results and share the stories
and more...
Some Actions on the Paths to Impact in Practice
92. Think about the
paths to impact
in research and
practice for your
projectsResearch
Impact
Impact
Practice
Challenge: Take at least one of your
projects from research to practice
Gail C. Murphy
University of British Columbia
Tasktop Technologies Inc. @gail_murphy