arXiv (Cornell University),
Journal Year:
2020,
Volume and Issue:
unknown
Published: Jan. 1, 2020
A
large
body
of
the
literature
automated
program
repair
develops
approaches
where
patches
are
generated
to
be
validated
against
an
oracle
(e.g.,
a
test
suite).
Because
such
can
imperfect,
patches,
although
by
oracle,
may
actually
incorrect.
While
state
art
explore
research
directions
that
require
dynamic
information
or
rely
on
manually-crafted
heuristics,
we
study
benefit
learning
code
representations
learn
deep
features
encode
properties
patch
correctness.
Our
work
mainly
investigates
different
representation
for
changes
derive
embeddings
amenable
similarity
computations.
We
report
findings
based
produced
pre-trained
and
re-trained
neural
networks.
Experimental
results
demonstrate
potential
empower
algorithms
in
reasoning
about
correctness:
machine
predictor
with
BERT
transformer-based
associated
logistic
regression
yielded
AUC
value
0.8
predicting
correctness
deduplicated
dataset
1000
labeled
patches.
shows
learned
lead
reasonable
performance
when
comparing
state-of-the-art,
PATCH-SIM,
which
relies
information.
These
further
complementary
were
carefully
(manually)
engineered
literature.
Recent
advances
in
automated
program
repair
(APR)
have
widely
caught
the
attention
of
industrial
developers
as
a
way
reducing
debugging
costs.
While
hundreds
studies
evaluated
effectiveness
APR
on
open-source
software,
case
been
rarely
reported;
it
is
still
unclear
whether
can
work
well
for
software.
This
paper
reports
our
experience
applying
state-of-the-art
technique,
ELIXIR,
to
large
software
consisting
150+
Java
projects
and
13
years
development
histories.
It
provides
lessons
learned
recommendations
regarding
obstacles
use
current
APR:
low
recall
(7.7%),
lack
bug-exposing
tests
(90%),
success
rate
(10%),
among
others.
We
also
report
preliminary
results
ongoing
improvement
ELIXIR.
With
some
simple
enhancements,
has
greatly
improved
by
up
40%.
To
reduce
the
cost
of
software
debugging,
Automatic
Bug
Fixing
(ABF)
techniques
have
been
proposed
for
efficiently
fixing
and
maintaining
software,
aiming
to
rapidly
correct
bugs
in
software.
In
this
paper,
we
conduct
a
survey,
analysing
capabilities
existing
ABF
based
on
test
case
set.
We
organize
knowledge
area
by
surveying
133
high-quality
papers
from
1990
June
2020
supplement
57
latest
2017
2020.
This
paper
shows
that
approaches
can
be
divided
into
three
main
strategies:
search-based,
semantic-based,
template-based.
Search-based
considers
using
search
strategies,
such
as
genetic
programming,
context
similarity,
change
programs
one.
Semantic-based
involves
symbolic
execution
constraint
solving,
satisfiability
modulo
theories
solver,
contracts,
fix
bugs.
Different
two
kinds
above,
template-based
is
mainly
templates,
other
programs,
bug
reports,
Besides,
provide
summary
commonly
used
defect
benchmarks
all
available
tools
are
frequently
field
ABF.
also
discuss
empirical
foundations
argumentation
prospect
trend
future
study.
2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE),
Journal Year:
2019,
Volume and Issue:
unknown, P. 1230 - 1233
Published: Nov. 1, 2019
The
error
repair
process
in
software
systems
is,
historically,
a
resource-consuming
task
that
relies
heavily
developer
manual
effort.
Automatic
program
approaches
enable
the
of
with
minimum
human
interaction,
therefore,
mitigating
burden
from
developers.
However,
problem
automatically
generated
patches
commonly
suffer
is
generating
low-quality
(which
overfit
to
one
specification,
thus
not
generalizing
an
independent
oracle
evaluation).
This
work
proposes
set
mechanisms
increase
quality
plausible
including
analysis
test
suite
behavior
and
their
key
characteristics
for
automatic
repair,
analyzing
inform
mutation
operator
selection
distribution,
study
patch
diversity
as
means
create
consolidated
higher
fixes.
arXiv (Cornell University),
Journal Year:
2020,
Volume and Issue:
unknown
Published: Jan. 1, 2020
A
large
body
of
the
literature
automated
program
repair
develops
approaches
where
patches
are
generated
to
be
validated
against
an
oracle
(e.g.,
a
test
suite).
Because
such
can
imperfect,
patches,
although
by
oracle,
may
actually
incorrect.
While
state
art
explore
research
directions
that
require
dynamic
information
or
rely
on
manually-crafted
heuristics,
we
study
benefit
learning
code
representations
learn
deep
features
encode
properties
patch
correctness.
Our
work
mainly
investigates
different
representation
for
changes
derive
embeddings
amenable
similarity
computations.
We
report
findings
based
produced
pre-trained
and
re-trained
neural
networks.
Experimental
results
demonstrate
potential
empower
algorithms
in
reasoning
about
correctness:
machine
predictor
with
BERT
transformer-based
associated
logistic
regression
yielded
AUC
value
0.8
predicting
correctness
deduplicated
dataset
1000
labeled
patches.
shows
learned
lead
reasonable
performance
when
comparing
state-of-the-art,
PATCH-SIM,
which
relies
information.
These
further
complementary
were
carefully
(manually)
engineered
literature.