Weitere ähnliche Inhalte Ähnlich wie Invited Talk at TU Graz Ähnlich wie Invited Talk at TU Graz (20) Mehr von Walid Maalej (18) Invited Talk at TU Graz1. Dr.
Walid
Maalej
TU
München
Poten&als
and
Challenges
of
Recommenda&on
Systems
for
So6ware
Engineering
Invited
Talk
@
Ins&tute
of
So6ware
Technology
Graz
University
of
Technology
2. Summary
1
A
large
need
and
high
poten&als
for
recommenda.on
systems
to
address
today’s
main
challenges
in
so5ware
engineering
projects
2
First
research
results
are
promising
but
have
limita&ons
in
supported
scenarios
and
context‐awareness
3
Recommenda.on
systems
should
support
both
knowledge
consumer
&
provider
during
development
&
collabora&on
tasks
4
Major
research
challenges
include
modeling,
represen.ng,
sessionizing
and
sharing
context
© W. Maalej, July 2010 Poten&als
and
Challenges
of
RecSys
in
SE
2
3. Outline
1
Mo&va&on
2
State
of
the
Art
3
Poten&als
4
Research
Direc&ons
5
Next
Steps
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
3
4. Today’s
Challenges
of
So6ware
Projects
Daily
Change
• Change
in
requirements,
design,
and
project
seHngs
• Knowledge
ages
Informa&on
Overload
quickly
2
• Projects
with
complex
1
technologies,
diverse
“Mul&ple”
Distribu&on
frameworks
and
• Outsourcing,
offshoring,
open
requirements
source,
cross‐organiza.onal
Four
increasing
• Immense
informa.on
sources
projects
challenges
• Informa.on
scaOered
across
• Limited
awareness
about
several
systems
3
informa.on
4
• Problems
in
coordina.on,
High
Compe&&on
knowledge
sharing
• Short
“.me
to
market”
• Highest
produc.vity,
flexibility
and
quality
are
required
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
4
5. Poten&als
of
Recommenda&on
Systems
in
So6ware
Engineering
Needs
for
Recommenda&on
Systems
Chances
of
Recommenda&on
Systems
• To
cope
with
these
growing
• The
nature
of
so5ware
engineering
challenges
developers
need
increases
the
poten.als
of
RecSys
automated
assistance:
• Most
data
used
is
structured
or
• In
both
collabora.on
and
semi‐structured
development
tasks
• Development
ac.vi.es
and
• To
increase
development
project
ar.facts
have
well
efficiency
and
product
quality
defined
seman.cs
So6ware
Engineering
is
a
perfect
domain
for
recommenda&on
systems
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
5
6. Outline
1
Mo&va&on
2
State
of
the
Art
3
Poten&als
4
Research
Direc&ons
5
Next
Steps
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
6
7. Recent
Research
Reaped
Several
Tools
Tool
Goal
Context
Trigger
Style
Corpus
Inform
newcomers
and
Explicit
query
(content
Client/
CVS,
bug
reports,
Hipikat
maintainers
about
past
Manual
similarity)
Server
emails
documenta.on
Method
comments
and
Foster
code
reuse
by
Client/
JavaDoc,
source
CodeBroker
signature;
discourse
&
Con.nuous
sugges.ng
methods
Server
code
user
model
on
methods
Speed
up
bug
fixes
by
Community
data
Current
bug
report
Client/
Dhruv
recommending
related
Con.nuous
(code,
emails,
(content
similarity)
Server
ar.facts
bug
reports...)
Hide
non‐relevant
Task
based
user
Ar.facts
in
Eclipse
Mylyn
ar.facts
for
current
interac.on
with
Con.nuous
project
Plug‐in
task
ar.facts
workspace
Predict
next
methods
Client/
Swing
apps
from
RASCAL
Analysis
of
current
class
Manual
to
be
reused
Server
SourceForge
Give
example
code
for
Client/
Strathcona
Structural
context
Manual
Source
code
third
party
APIs
Server
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
7
8. Limita&ons
of
Current
Tools
“Pseudo”
Context‐Awareness
No
pro‐ac.veness,
limited
context
and
personaliza.on
“Hard‐coded”
knowledge
and
Limited
focus:
only
reuse
and
heuris&cs
bug
fixing
scenarios
Centralized
and
inflexible
Informa&on
provision
and
architecture
experience
capture
not
supported
Limita&on
in
func&onality
and
technology
A
systema&c
account
is
required
to
tape
the
poten&als
of
RecSys
in
SE
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
8
9. Outline
1
Mo&va&on
2
State
of
the
Art
3
Poten&als
4
Research
Direc&ons
5
Next
Steps
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
9
10. A
Lightweight
Knowledge
Exchange
Process
Looking
for
and
Knowledge
Sharing
iden.fying
knowledge
Knowledge
Provider
Moving
and
Knowledge
incorpora.ng
Knowledge
Access
knowledge
Seeker
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
10
11. Recommenda&on
Landscape
When Knowledge Access Knowledge Sharing
What Propose... Ask to share / capture ...
Software Code examples, methods, Ways of using APIs, used
Artifacts components, requirements to reuse documentation…
Engineering
Related Related, useful information for the Information that help to solve a
Information current task… particular problem…
Warn about a problematic change, New quality measure, design
Quality
patterns to improve quality… patterns…
Tools How-tos, new features… Experience with new tools…
Associations of people with
People Experts to contact…
Collaboration
expertise areas…
Collaboration artifacts: mails,
Awareness Ad-hoc collaboration…
decision rationale…
Related open issued, emerging Status, open issues, rationale
Coordination
priorities… behind priority changes…
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
11
12. Outline
1
Mo&va&on
2
State
of
the
Art
3
Poten&als
4
Research
Direc&ons:
A.
Context
5
Next
Steps
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
12
13. What
is
Context?
Used Artifacts
Developer’s Changed
Working Session
Interactions Artifacts
Read Artifacts
Context is the set of all events and information, which can be
observed or interpreted during knowledge work, except those
events and pieces of information that constitute the change
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
13
15. Developer’s
Work:
From
Interac&ons
to
Inten&ons
Assist
Colleague
on
?
Reusing
Component
C
Fix
Table
Rendering
Bug
?
Interac&on
Current
Granularity
Inten&on
Task
T1:
Implement
XML
Export
Session
Work
Session
1
Work
Session
2
Work
Session
3
Work
Session
4
…
Seman.c
Read Reuse
Impl.
Read
Bug
Seek
Debug
Impl. Test
Close
…
Chat
…
…
interac.on
Task Lib
Class
Report
Info
App Met App Bug
h
Interac.on
Use
Download
Edit
Copy
Paste
Open
Scroll
Edit
Import
Open
Add
Edit
Add
Step
into
Step
into
with
tools
Run ..Read Search .. ...
Write
Scroll
Tool
T1Library
L
Classpath Method
b Method
b
Task
List Task
T
URL
URL
Method
a
Class
X
URL
Breakpoint Method
x Method
y
Time
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
15
16. A
Scratch
of
Context‐Aware
Recommenda&on
Tools
Addi.onal
feedback
Recommenda&on
Tool
Interac.on
interact
trigger
Ontoloy
Context
Observer
problem
problem
Problem
Applica&on
sensors
Elicita&on
events
Session‐
iza&on
Execu.on
OS
Execu&on
Env.
Ontology
sensors
sensors
update
User
Profile
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
16
17. Outline
1
Mo&va&on
2
State
of
the
Art
3
Poten&als
4
Research
Direc&ons:
B.
Knowledge
Sharing
5
Next
Steps
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
17
18. Inverse
Search
to
Support
Informa&on
Providers
Conven&onal
recommenda&on
systems
1. Matches
the
corpus
of
informa.on
providers
against
a
given
informa.on
needs
(e.g.
a
set
of
queries)
1. Match
queries
of
knowledge
seekers
against
a
given
corpus
2. Iden.fy
documents/
knowledge
worth
sharing
2. Pull
informa.on
into
their
local
space
This
model
assists
(and
mo.vates)
knowledge
providers
in
capturing
This
model
excludes
knowledge
and
sharing
their
knowledge
providers
although
they
are
poten.al
providers
of
addi.onal
informa.on
Recommenda&on
Systems
using
inverse
search
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
18
19. Roles
and
Time
in
Informa&on
Access
Retroac.ve
Search
Synchronous
Index
Query
Queries
Results
Knowledge
Seeker
Prospec.ve
Search
Inverse
Search
Asynchronous
Index
Subscrip&on
Queries
inverse
Search
No&fica&on
Sharing
Knowledge
Knowledge
Seeker
Provider
Consumer
Provider
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
19
20. Outline
1
Mo&va&on
2
State
of
the
Art
3
Poten&als
4
Research
Direc&ons
5
Next
Steps
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
20
21. Challenges
of
Context
Awareness
Efficient
Instrumenta&on
How
can
heterogeneous
Privacy
Protec&on
Context
Modeling
tools
be
efficiently
How
can
we
protect
users’
How
can
we
model
abstract
instrumented?
privacy
while
collec.ng
no.on
of
context
to
support
sensi.ve
informa.on?
What
unique
scenarios?
What
is
Major
research
are
acceptable
trade‐offs?
part
of
the
context?
challenges
on
context‐
Context
Representa&on
Aggrega&on
and
Processing
awareness
Can
we
efficiently
represent
How
can
we
aggregate
data
and
knowledge
and
Context
context
for
different
levels
of
enable
reasoning
and
Sessioniza&on
granularity?
Can
we
measure
seman.c
interpreta.on?
and
compare
subjec.ve
How
can
we
“package”
context
like
experience?
context
events?
How
can
a
context
switch
be
detected?
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
21
22.
TeamWeaver
Open
Source
Plamorm
• A
framework
and
a
set
of
recommenda.on
tools
for
so5ware
engineering
• Created
from
past
and
current
research
projects
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
22
23. Related
Events
Conferences
• Interna.onal
Conference
on
Automated
So5ware
Engineering
• Interna.onal
Conference
on
So5ware
Engineering
• ACM
Recommender
Systems
Workshops
• Int.
Workshop
on
Recommenda.on
Systems
in
So5ware
Engineering
(RSSE)
• Int.
Workshop
on
Managing
Requirements
Knowledge
(MaRK)
• Social
So5ware
Engineering
(SSE)
• Coopera.ve
and
Human
Aspects
in
So5ware
Engineering
(ChaiSE)
• Search‐Based
So5ware
Engineering
(SBSE)
• Workshop
on
Context,
Informa.on
and
Ontologies
(@EKAW)
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
23
24. Bibliography
RecSys
in
So6ware
Engineering
• H‐J.
Happel,
W.
Maalej,
Poten.als
and
Challenges
of
Recommenda.on
Systems
for
So5ware
Development.
In
RSSE'08,
2008.
• M.
P.
Robillard,
R.
J.
Walker,
and
T.
Zimmermann.
Recommenda.on
systems
for
so5ware
engineering.
IEEE
So5ware,
2010.
• A.
Felfernig,
et
al.
Recommenda.on
and
Decision
Technologies
For
Requirements
Engineering.
In
RSSE’10,
2010.
• W.
Maalej,
A.
Sahm,
Assis.ng
Engineers
in
Switching
Ar.facts
by
using
Task
Seman.c
and
Interac.on
History.
In
RSSE’10,
2010.
• W.
Maalej,
AK
Thurimella,
Towards
a
Research
Agenda
for
Recommenda.on
Systems
in
Requirements
Engineering.
In
MaRK’09,
2009.
Context
&
Inten&ons
• W.
Maalej,
Inten.on
Based
Integra.on
of
So5ware
Engineering
Tools,
Dr
Hut
Verlag,
2010
• W.
Maalej,
H‐J.
Happel,
Can
Development
Work
Describe
Itself?
In
MSR’10,
IEEE
2010.
• W.
Maalej,
Task‐First
or
Context‐First?
Tool
Integra<on
Revisited.
In
ASE’09,
2009.
Knowledge
Sharing
• W
Maalej,
H‐J
Happel,
Lightweight
Knowledge
Sharing
in
Distributed
So5ware
Teams.
In
PAKM,
2008
• H‐J
Happel,
Social
Search
and
Need‐driven
Knowledge
Sharing
in
Wikis
with
Woogle.
In
WikiSym,
2009
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
24
25. Summary
1
A
large
need
and
high
poten.als
for
recommenda.on
systems
to
address
today’s
main
challenges
in
so5ware
engineering
projects
2
First
research
results
are
promising
but
have
limita.ons
in
supported
scenarios
and
context‐awareness
3
Recommenda.on
systems
should
support
both
knowledge
consumer
&
provider
during
development
&
collabora.on
tasks
4
Major
research
challenges
include
modeling,
represen.ng,
sessionizing,
aggrega.ng
and
sharing
context
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
25
26. For
more
informa&on
contact:
Dr.
Walid
Maalej
TUM
maalejw@cs.tum.edu
www1.in.tum.de/walidmaalej
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
26
28. Four
States
of
Private
and
Organiza&onal
Knowledge
Space
A user has lots of knowledge about There is enough knowledge w.r.t. a
a topic, while there is not much certain topic, both locally and in the
knowledge in the organization organization
Documents in private space
Organizational Information
many
Information gap overload
Information Personal
few
shortage information gap
few many
Documents in organizational space
While there is lots of knowledge in
Few knowledge exists both locally the organization, the user does not
and globally have much knowledge
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
28
29. The
Big
Picture
of
Context
Aware
Development
Environments
Time
Short Term Context Long Term Context
Import
of external
components
Component Developers profiles
Reuse Documentation used on reusing APIs
Documents changed
Scenario
Context
Error message
Environments Developers profiles
Error
Handling Search keywords on handling errors
Discussion threads
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
29
30. Which
problems
to
you
encounter
when
you
try
to
answer
your
ques&ons
during
development?
Answer
%
o5en
or
usual
I
can’t
specify
my
ques.on
appropriately
in
33,58%
search
tools
I
do
not
know
where
to
find
answers
to
my
27,88%
ques.ons
Answers
to
my
ques.ons
are
outdated
40,16%
Answers
to
my
ques.ons
are
too
general
(out
57,61%
of
context)
Answers
to
my
ques.ons
are
scaOered
across
70,64%
various
sources
Answers
to
my
ques.ons
are
not
available
38,06%
I
don’t
have
rights
to
access
required
7,80%
informa.on
Experts
are
not
willing
to
help
9,27%
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
30
31. Defini&on
"A
recommenda.on
system
for
so5ware
engineering
is
a
so5ware
applica.on
that
provides
informa.on
items
es.mated
to
be
valuable
for
a
so5ware
engineering
task
in
a
given
context."
[Robillard,
Walker,
Zimmermann,
2009]
©
W.
Maalej,
July
2010
Poten&als
and
Challenges
of
RecSys
in
SE
31