invited talk at tu graz

Post on 27-Jan-2015

109 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Poten&alsand

Challengesof

Recommenda&on

SystemsforSo6wareEngineering

Dr.WalidMaalej

TUMünchen

InvitedTalk@

Ins&tuteofSo6wareTechnology

GrazUniversityofTechnology

© 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

©W.Maalej,July2010 3

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

©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

©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

©W.Maalej,July2010 6

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

©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

©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

©W.Maalej,July2010 9

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

©W.Maalej,July2010

ALightweightKnowledgeExchangeProcess

KnowledgeAccess

KnowledgeSharing

KnowledgeSeeker

KnowledgeProvider

Lookingforandiden.fyingknowledge

Movingandincorpora.ngknowledge

10 Poten&alsandChallengesofRecSysinSE

©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…

©W.Maalej,July2010 12

Outline

ResearchDirec&ons:A.Context

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

©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

©W.Maalej,July2010

AContextAwareModelofSo6wareEngineeringWork

Poten&alsandChallengesofRecSysinSE 14

©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

©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

©W.Maalej,July2010 17

Outline

ResearchDirec&ons:B.KnowledgeSharing

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

©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

©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

©W.Maalej,July2010 20

Outline

ResearchDirec&ons

StateoftheArt

Poten&als

Mo&va&on

2

1

3

4

Poten&alsandChallengesofRecSysinSE

NextSteps5

©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?

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 22

TeamWeaverOpenSourcePlamorm

•  Aframeworkandasetofrecommenda.ontoolsforso5wareengineering•  Createdfrompastandcurrentresearchprojects

©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

©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

©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

©W.Maalej,July2010

Formoreinforma&oncontact:

26

Dr.WalidMaalejTUM

maalejw@cs.tum.edu

www1.in.tum.de/walidmaalej

Poten&alsandChallengesofRecSysinSE

©W.Maalej,July2010 Poten&alsandChallengesofRecSysinSE 27

Backups

©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

©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

©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%

©W.Maalej,July2010

Defini&on

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

Poten&alsandChallengesofRecSysinSE 31

top related