invited talk at tu graz

31
Poten&als and Challenges of Recommenda&on Systems for So6ware Engineering Dr. Walid Maalej TU München Invited Talk @ Ins&tute of So6ware Technology Graz University of Technology

Upload: walid-maalej

Post on 27-Jan-2015

109 views

Category:

Documents


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Invited Talk at TU Graz

Poten&alsand

Challengesof

Recommenda&on

SystemsforSo6wareEngineering

Dr.WalidMaalej

TUMünchen

InvitedTalk@

Ins&tuteofSo6wareTechnology

GrazUniversityofTechnology

Page 2: Invited Talk at TU Graz

© W. Maalej, July 2010

Summary

Alargeneedandhighpoten&alsforrecommenda.onsystemstoaddresstoday’smainchallengesinso5wareengineeringprojects

1

Firstresearchresultsarepromisingbuthavelimita&onsinsupportedscenariosandcontext‐awareness

2

Recommenda.onsystemsshouldsupportbothknowledgeconsumer&providerduringdevelopment&collabora&ontasks

3

Majorresearchchallengesincludemodeling,represen.ng,sessionizingandsharingcontext

4

2 Poten&alsandChallengesofRecSysinSE

Page 3: Invited Talk at TU Graz

©W.Maalej,July2010 3

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

Page 4: Invited Talk at TU Graz

©W.Maalej,July2010

DailyChange

•  Changeinrequirements,design,

andprojectseHngs

•  Knowledgeagesquickly

Poten&alsandChallengesofRecSysinSE 4

Today’sChallengesofSo6wareProjects

1

2

3

4

Fourincreasing

challenges

“Mul&ple”Distribu&on

•  Outsourcing,offshoring,opensource,cross‐organiza.onal

projects

•  Limitedawarenessabout

informa.on

•  Problemsincoordina.on,

knowledgesharing

Informa&onOverload

•  Projectswithcomplex

technologies,diverse

frameworksand

requirements

•  Immenseinforma.onsources

•  Informa.onscaOeredacross

severalsystems

HighCompe&&on

•  Short“.metomarket”

•  Highestproduc.vity,flexibilityandqualityarerequired

Page 5: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 5

Poten&alsofRecommenda&onSystemsinSo6wareEngineering

So6wareEngineeringisaperfectdomainforrecommenda&onsystems

ChancesofRecommenda&onSystemsNeedsforRecommenda&onSystems

•  Thenatureofso5wareengineeringincreasesthepoten.alsofRecSys

•  Mostdatausedisstructuredor

semi‐structured

•  Developmentac.vi.esand

projectar.factshavewell

definedseman.cs

•  Tocopewiththesegrowingchallengesdevelopersneed

automatedassistance:

•  Inbothcollabora.onanddevelopmenttasks

•  Toincreasedevelopment

efficiencyandproductquality

Page 6: Invited Talk at TU Graz

©W.Maalej,July2010 6

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

Page 7: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 7

Tool Goal Context Trigger Style Corpus

HipikatInformnewcomersandmaintainersaboutpastdocumenta.on

Explicitquery(contentsimilarity)

ManualClient/Server

CVS,bugreports,emails

CodeBrokerFostercodereusebysugges.ngmethods

Methodcommentsandsignature;discourse&usermodelonmethods

Con.nuousClient/Server

JavaDoc,sourcecode

DhruvSpeedupbugfixesbyrecommendingrelatedar.facts

Currentbugreport(contentsimilarity)

Con.nuousClient/Server

Communitydata(code,emails,bugreports...)

MylynHidenon‐relevantar.factsforcurrenttask

Taskbaseduserinterac.onwithar.facts

Con.nuousEclipsePlug‐in

Ar.factsinprojectworkspace

RASCALPredictnextmethodstobereused

Analysisofcurrentclass ManualClient/Server

SwingappsfromSourceForge

StrathconaGiveexamplecodeforthirdpartyAPIs

Structuralcontext ManualClient/Server

Sourcecode

RecentResearchReapedSeveralTools

Page 8: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 8

Limita&onsofCurrentTools

Limita&oninfunc&onalityand

technology

Asystema&caccountisrequiredtotapethepoten&alsofRecSysinSE

“Hard‐coded”knowledgeand

heuris&cs

Limitedfocus:onlyreuseand

bugfixingscenarios

Centralizedandinflexible

architecture

Informa&onprovisionand

experiencecapturenotsupported

“Pseudo”Context‐Awareness

Nopro‐ac.veness,limitedcontextandpersonaliza.on

Page 9: Invited Talk at TU Graz

©W.Maalej,July2010 9

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

Page 10: Invited Talk at TU Graz

©W.Maalej,July2010

ALightweightKnowledgeExchangeProcess

KnowledgeAccess

KnowledgeSharing

KnowledgeSeeker

KnowledgeProvider

Lookingforandiden.fyingknowledge

Movingandincorpora.ngknowledge

10 Poten&alsandChallengesofRecSysinSE

Page 11: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 11

Recommenda&onLandscape

When

What

Knowledge Access

Propose...

Knowledge Sharing

Ask to share / capture ...

Engineering

Software Artifacts

Code examples, methods, components, requirements to reuse

Ways of using APIs, used documentation…

Related Information

Related, useful information for the current task…

Information that help to solve a particular problem…

Quality Warn about a problematic change, patterns to improve quality…

New quality measure, design patterns…

Tools How-tos, new features… Experience with new tools…

Collaboration

People Experts to contact… Associations of people with expertise areas…

Awareness Ad-hoc collaboration… Collaboration artifacts: mails, decision rationale…

Coordination Related open issued, emerging priorities…

Status, open issues, rationale behind priority changes…

Page 12: Invited Talk at TU Graz

©W.Maalej,July2010 12

Outline

ResearchDirec&ons:A.Context

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

Page 13: Invited Talk at TU Graz

©W.Maalej,July2010

WhatisContext?

Poten&alsandChallengesofRecSysinSE 13

Working Session

Used Artifacts

Changed Artifacts

Read Artifacts

Developer’s Interactions

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

Page 14: Invited Talk at TU Graz

©W.Maalej,July2010

AContextAwareModelofSo6wareEngineeringWork

Poten&alsandChallengesofRecSysinSE 14

Page 15: Invited Talk at TU Graz

©W.Maalej,July2010

OpenTaskT

ScrollTaskList

Search ..

?

?

Developer’sWork:FromInterac&onstoInten&ons

Poten&alsandChallengesofRecSysinSE 15

ImportClassX

EditClasspath

ReuseLib

AddBreakpoint

StepintoMethodx

StepintoMethody

DebugApp

Impl.Class

DownloadLibraryL

EditMethoda

EditMethodb

ReadBugReport

CopyURL

PasteURL

OpenURL

ScrollRun

TestApp

Write..

Chat

.

SeekInfo

AssistColleagueonReusingComponentC

..Use

ToolT1

ReadTask

TaskT1:ImplementXMLExport

WorkSession1 WorkSession2

FixTableRenderingBug

WorkSession3

Impl.Meth

WorkSession4

CloseBug

Read

Interac&onGranularity

Time

CurrentInten&on

AddMethodb

Session

Seman.cinterac.on

Interac.onwithtools

Page 16: Invited Talk at TU Graz

©W.Maalej,July2010

AScratchofContext‐AwareRecommenda&onTools

ContextObserver

problemproblem

Execu.onOntology

Interac.onOntoloy

Recommenda&onTool

OSsensors

UserProfile

Elicita&on

Problem

events

update

trigger

Applica&onsensors

Execu&onEnv.sensors

Addi.onalfeedback

interact

Session‐iza&on

Poten&alsandChallengesofRecSysinSE 16

Page 17: Invited Talk at TU Graz

©W.Maalej,July2010 17

Outline

ResearchDirec&ons:B.KnowledgeSharing

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

Page 18: Invited Talk at TU Graz

©W.Maalej,July2010

Conven&onalrecommenda&onsystems

Poten&alsandChallengesofRecSysinSE 18

InverseSearchtoSupportInforma&onProviders

1. Matchqueriesofknowledgeseekersagainstagivencorpus

2.  Pullinforma.onintotheirlocalspace

Thismodelexcludesknowledgeprovidersalthoughtheyarepoten.alprovidersofaddi.onalinforma.on Recommenda&onSystemsusing

inversesearch

1.  Matchesthecorpusofinforma.onprovidersagainstagiveninforma.onneeds(e.g.asetofqueries)

2.  Iden.fydocuments/knowledgeworthsharing

Thismodelassists(andmo.vates)knowledgeprovidersincapturingandsharingtheirknowledge

Page 19: Invited Talk at TU Graz

©W.Maalej,July2010

KnowledgeSeeker

KnowledgeProvider

Index

Queries inverseSearch

Sharing

Subscrip&on

No&fica&on

KnowledgeSeeker

Index

QueriesQuery

Results

Retroac.veSearch

InverseSearchProspec.veSearch

ProviderConsumer

Asynchron

ous

Synchron

ous

RolesandTimeinInforma&onAccess

19 Poten&alsandChallengesofRecSysinSE

Page 20: Invited Talk at TU Graz

©W.Maalej,July2010 20

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

Page 21: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 21

ChallengesofContextAwareness

ContextModeling

Howcanwemodelabstractno.onofcontexttosupportuniquescenarios?Whatis

partofthecontext?

ContextSessioniza&on

Howcanwe“package”contextevents?Howcanacontextswitchbedetected?

EfficientInstrumenta&on

Howcanheterogeneoustoolsbeefficientlyinstrumented?

ContextRepresenta&on

Canweefficientlyrepresentdataandknowledgeandenablereasoningandseman.cinterpreta.on?

Majorresearch

challengeson

context‐

awareness Aggrega&onandProcessing

Howcanweaggregatecontextfordifferentlevelsofgranularity?Canwemeasure

andcomparesubjec.vecontextlikeexperience?

PrivacyProtec&on

Howcanweprotectusers’privacywhilecollec.ng

sensi.veinforma.on?Whatareacceptabletrade‐offs?

Page 22: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 22

TeamWeaverOpenSourcePlamorm

•  Aframeworkandasetofrecommenda.ontoolsforso5wareengineering•  Createdfrompastandcurrentresearchprojects

Page 23: Invited Talk at TU Graz

©W.Maalej,July2010

RelatedEvents

Conferences•  Interna.onalConferenceonAutomatedSo5wareEngineering

•  Interna.onalConferenceonSo5wareEngineering•  ACMRecommenderSystems

Workshops•  Int.WorkshoponRecommenda.onSystemsinSo5wareEngineering

(RSSE)

•  Int.WorkshoponManagingRequirementsKnowledge(MaRK)•  SocialSo5wareEngineering(SSE)

•  Coopera.veandHumanAspectsinSo5wareEngineering(ChaiSE)

•  Search‐BasedSo5wareEngineering(SBSE)

•  WorkshoponContext,Informa.onandOntologies(@EKAW)

Poten&alsandChallengesofRecSysinSE 23

Page 24: Invited Talk at TU Graz

©W.Maalej,July2010

BibliographyRecSysinSo6wareEngineering•  H‐J.Happel,W.Maalej,Poten.alsandChallengesofRecommenda.onSystemsforSo5ware

Development.InRSSE'08,2008.•  M.P.Robillard,R.J.Walker,andT.Zimmermann.Recommenda.onsystemsforso5ware

engineering.IEEESo5ware,2010.•  A.Felfernig,etal.Recommenda.onandDecisionTechnologiesForRequirementsEngineering.In

RSSE’10,2010.•  W.Maalej,A.Sahm,Assis.ngEngineersinSwitchingAr.factsbyusingTaskSeman.candInterac.on

History.InRSSE’10,2010.

•  W.Maalej,AKThurimella,TowardsaResearchAgendaforRecommenda.onSystemsinRequirementsEngineering.InMaRK’09,2009.

Context&Inten&ons•  W.Maalej,Inten.onBasedIntegra.onofSo5wareEngineeringTools,DrHutVerlag,2010

•  W.Maalej,H‐J.Happel,CanDevelopmentWorkDescribeItself?InMSR’10,IEEE2010.

•  W.Maalej,Task‐FirstorContext‐First?ToolIntegra<onRevisited.InASE’09,2009.

KnowledgeSharing•  WMaalej,H‐JHappel,LightweightKnowledgeSharinginDistributedSo5wareTeams.InPAKM,2008

•  H‐JHappel,SocialSearchandNeed‐drivenKnowledgeSharinginWikiswithWoogle.InWikiSym,2009

Poten&alsandChallengesofRecSysinSE 24

Page 25: Invited Talk at TU Graz

©W.Maalej,July2010

Summary

Alargeneedandhighpoten.alsforrecommenda.onsystemstoaddresstoday’smainchallengesinso5wareengineeringprojects

1

Firstresearchresultsarepromisingbuthavelimita.onsinsupportedscenariosandcontext‐awareness

2

Recommenda.onsystemsshouldsupportbothknowledgeconsumer&providerduringdevelopment&collabora.ontasks

3

Majorresearchchallengesincludemodeling,represen.ng,sessionizing,aggrega.ngandsharingcontext

4

25 Poten&alsandChallengesofRecSysinSE

Page 26: Invited Talk at TU Graz

©W.Maalej,July2010

Formoreinforma&oncontact:

26

Dr.WalidMaalejTUM

[email protected]

www1.in.tum.de/walidmaalej

Poten&alsandChallengesofRecSysinSE

Page 27: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 27

Backups

Page 28: Invited Talk at TU Graz

©W.Maalej,July2010

few

few

man

y

many Documents in organizational space

Doc

umen

ts in

priv

ate

spac

e

Information

shortage

Organizational

Information gap Information

overload

Personal information gap

FourStatesofPrivateandOrganiza&onalKnowledgeSpace

Few knowledge exists both locally and globally

A user has lots of knowledge about a topic, while there is not much knowledge in the organization

While there is lots of knowledge in the organization, the user does not

have much knowledge

There is enough knowledge w.r.t. a certain topic, both locally and in the

organization

Poten&alsandChallengesofRecSysinSE 28

Page 29: Invited Talk at TU Graz

©W.Maalej,July2010 29

TheBigPictureofContextAwareDevelopmentEnvironments

Error Handling

Context

Short Term Context

Component Reuse

Long Term Context

Time

Scen

ario

 Error message

 Environments

 Search keywords  Discussion threads

  Import of external components

  Documentation used   Documents changed

  Developers profiles on reusing APIs

  Developers profiles on handling errors

Poten&alsandChallengesofRecSysinSE

Page 30: Invited Talk at TU Graz

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 30

Whichproblemstoyouencounterwhenyoutrytoansweryourques&onsduringdevelopment?

Answer %o5enorusual

Ican’tspecifymyques.onappropriatelyinsearchtools

33,58%

Idonotknowwheretofindanswerstomyques.ons

27,88%

Answerstomyques.onsareoutdated 40,16%

Answerstomyques.onsaretoogeneral(outofcontext)

57,61%

Answerstomyques.onsarescaOeredacrossvarioussources

70,64%

Answerstomyques.onsarenotavailable 38,06%

Idon’thaverightstoaccessrequiredinforma.on

7,80%

Expertsarenotwillingtohelp 9,27%

Page 31: Invited Talk at TU Graz

©W.Maalej,July2010

Defini&on

"Arecommenda.onsystemforso5wareengineeringisaso5wareapplica.onthatprovidesinforma.onitemses.matedtobevaluableforaso5wareengineeringtaskinagivencontext."[Robillard,Walker,Zimmermann,2009]

Poten&alsandChallengesofRecSysinSE 31