the supersede project
TRANSCRIPT
AnnaPeriniFBK,CenterforInforma3onandCommunica3onTechnology–ICTTrento(Italy)So@wareEngineeringUnith"p://se.)k.eu
TheSUPERSEDEproject
FirstUniversityofKentuckyRequirementsEngineeringWorkshopWednesday,May3rd
2
• AnHORIZON2020project• Call:H2020-ICT-2014-1(ToolsandmethodsforSo@wareDevelopment)• Title:SUppor3ngevolu3onandadapta3onofPERsonalizedSo@wareby
Exploi3ngcontextualDataandEnd-userfeedback• Startedon:May1,2015(Dura3on:36months)ßJuststar5ngY3• TypeofAc3on:RIA
- toestablishnewknowledgeand/ortoexplorethefeasibilityofaneworimprovedtechnology,product,process,serviceorsolu3on
- basicandappliedresearch,technologydevelopmentandintegra3on,tes3ngandvalida3ononasmall-scaleprototypeinalaboratoryorsimulatedenvironment
• Consor3um:8Partners(4Academic/Research;4Industrial)
WhatisSUPERSEDE?
3
• ProjectOverview• Mo3va3ons• ProjectObjec3ve• UseCases
• SUPERSEDEatY2• Glimpseonmainachievements
• Thewayahead
Outline
4
developer
manager
Mo3va3onsExamplescenario:SEnerConESAservice
Thereissomethingwrong
withthecalcula3onof
Aprilconsump3on…
Howcangetthisissuesolved….I’llhavetophone/emaillater...
WhenwillIdoit?Hopetonotforget
L
3projectsunderdeadline…tensof
newrequirementstoimplement,what
shallIconsiderfirst?
Whicharethefeaturesthatwillmakeourusers
happy?Whichoneswillaeractmore
users?
user
5
SUPERSEDEVision:
Ø End-user• enablingthemtoexpress
feedbackeasily• makingusersanddevelopers
closer• providingbe"erso@ware
applica3ons- context-awareness,
personaliza3on(improveQoE)
Ø So@wareengineer/providers• supportthemtotakebeeer
decisionsinevolvingso@wareapplica3onandservicesandtoenactthem
• supportthemtointegrateandextendtheirserviceswithmechanismsforamoresituateddynamicadapta3on
6
Objec3ve:Supportavfeedback-drivenengineeringprocess
• Obj-A:methodsandtoolstocollectend-users’feedbackandrun5medatawhichwillbeefficient,scalableandadaptable
• Obj-B:methodsandtoolstoperformanintegratedanalysisofthecollecteddatainordertoestablishasoundbasisforevolu3onandadapta3ondecision-making
• Obj-C:methodsandtoolstosupportdecision-makingintheevolu5onandrun5meadapta5onofservicesandapplica5onsbasedonuser’sfeedbackandcontextualdata
• Obj-D:methodsandtoolstoenactthedecisionsmadeandmeanstoassesstheimpactofthesedecisionsbothintermsofQoEandorganiza3onproduc3vity
• Obj-E:validatedataandfeedback-drivenso@wareevolu3onandadapta3onfortheimprovementofso@warequali3esalongdifferentindustrialusecases
Obj-C
Obj-DObj-A
Obj-B
Obj-E
7
Approach:Knowledgeareas/challenges
• CH1-FeedbackGathering:Mul3modalfeedbackcommunica3onchannels
• CH2-Run-?memonitoring:Comprehensivemonitoringsolu3on
• CH3-Bigdataanalysis:Integra3onofheterogeneoussources
• CH4-User-FeedbackAnalysis:Combiningsen3mentanalysisandconversa3onanalysisapproaches
• CH5-SoKwareQuality:FrameworkthatintegratesQoEandQoS
• CH6-Decision-makingsupport:Automatedandmix-ini3a3vedecision-makingtechniques
• CH7-Run-?meAdapta?on& Personalisa?on:Scalablesolu3ons–customizabletospecificdomainseings
CH6
CH7CH1CH2
CH5
CH3 CH4
8
Approach:3UseCaseswillensure
Demo Apps CityInfoAPI:Management
andOpera5on
SMART CITY INFORMATION PLATFORM
• SmartCityInforma3onAPIprovisionandconsump3on
• EcosystemforSmartCityInforma3onexchange
ESA service Energy Savings Account
• Usercanchecktheirhouseenergyconsump3on
• Calculatecostsandsavingsforenergyefficientac3ons
SMART PLAYER Sport Media Application in Real Time
• Webscas3ngMediaplakormforlargesportevents
• Allowspeopletowatchsportvideosondemand
• Givestatswith:liveresultsandsportinfo
• Applica3oninRealTime
• theelicita3onofrelevantdomainknowledge
9
• M12 validation: • Scope: individual components (product parts) • TRL3: Experimental proof-of concepts validated on realistic scenarios
• M24 validation • Scope: first toolset integrating the methods developed in the project • TRL5: Technology validated in relevant environment (scenarios for software evolution
and dynamic adaptation) • M36 validation
• Scope: toolset integrating all the methods developed in the project • TRL6: Technology demonstrated in relevant environment
Approach:3UseCases
First validation
Second validation
M0 M12 M24 M36
Final validation
TRL=3 TRL=5 TRL=6
• aprogressivevalida3onofthemethodsandtoolsproducedtoul3matelyprovideevidenceofpoten3alforproduc3vitygains
10
ü ProjectOverview• Mo3va3ons• ProjectObjec3ve• UseCases
• SUPERSEDEatY2• Mainachievements
• Thewayahead
Outline
12
FeedbackGathering&Monitoring
• Unifiedarchitecturerealized- explicit and implicit feedback
• Provisionofmul3modalfeedbackgatheringmechanisms
• Firstheterogeneousanddistributedmonitorsareimplementedandrunning
14
• BigDataarchitecturerunningonUPCcloud(1)• AUC-agnos3cintegra3on-orientedontologytomodel
ingesteddatastreams• Combinedspeech-actbasedanalysisandsen3ment
analysisforderivingrequirementsoutofuserfeedback(2)
• Analysisoftweets(3)
Integratedanalysisofdata
REFERENCES• (1)Abelloetal.IST(underrevision)ASoKwareReferenceArchitectureforSeman?c-AwareBigDataSystems• (2)Moralez-Ramirez,Kifetew,Perini,CAISE17AnalysisofOnlineDiscussionsinSupportofRequirementsDiscovery• (3)Guzman,Alkadhi,Seyff.ANeedleinaHaystack:WhatDoTwi"erUsersSayaboutSoKware?RE16
16
• Results: - Found association between types of speech acts (e.g. Informative, Responsive, Requestive,
etc.) and type of issues (e.g. Enhancement, Defect) - Distribution of speech acts for the first ten comments for Defect and Enhancement, and
identified common patterns
Speech-act&sen3mentanalysisTextualonlinediscussion
• Techniques: - NLP techniques for pre-processing - speech acts and the sentiment as parameters
for training three machine learning algorithms (Random Forest, J48 and SMO) classify comments into Enhancement, Feature and Defect
REFERENCES• Moralez-Ramirez,Kifetew,Perini,CAISE17AnalysisofOnlineDiscussionsinSupportofRequirementsDiscovery
18
DecisionMaking1)forso@wareevolu3on
DecidethesetofRequirements Nego3ate
onconflicts
DecidePriorityofrequirements
Decisionmakingprocessorchestra5on
Userfeedback
Contextmonitoring
Distributeddecisionmakingteams
Priori5sedRequirements
Thetechniques
REFERENCESP.Buseea,F.Kifetew,D.Munante,A.Perini,A.Siena,andA.Susi.ToolsupportedCollabora3veRequirementsPriori3sa3on.InProceedingsoftheIEEEInt.ConferenceCOMPSAC,Torino,Italy,July4-7,2017Thetoolisaccessibleat:heps://github.com/supersede-project/dm_game
• Automatedreasoning.Currentlyincluded:• Analy5cHierarchyProcess(AHP)methodthatwasselectedbecauseitspairwise
comparisonmechanismallowsustoperformafine-grainedanalysisofthemo3va3onsthatleadtoaresul3ngranking,thusexploi3ngatbestthedifferentskillsandexper3seofthedecisionmakers
• Gene5cAlgorithms(GA)becauseitallowstoovercomesomeofthelimita3onsofAHP,atthecostofareducedgranularityoftheranking
• Gamifica3on• Tofosteruserengagement,gameelementsareincluded,suchas:
- Progress,thatisusercomple3onrateisreportedtoeachuser- TimePressure,thatistheprocesshasafixeddura3on,andac3onsdonea@ertheprocess
expira3onarediscarder;- Pointsifica1on,thatisapointaeribu3onmechanismhasbeendesigned,withthepurposeof
providinganincen3veto(i)performthevo3ngtaskquickly,and(ii)performanaccurate
DMop3mizer
●
●
●
●
●
●
●
0.05 0.10 0.15 0.20 0.25
0.4
0.5
0.6
0.7
Optimal Configurations
Cost (Memory consumption)
Valu
e (A
vaila
bilit
y)
●c1
c4
c3
c2
c5
c6
c7
MonitoringData
Mul3-objec3vealgorithmstoop3misethe
configura3onswithrespecttothecurrentparametersvalueandconstraints
Currentconfigura3on
Anexample
23
ReleasePlanningTheReplantool
REFERENCES• DavidAmeller,CarlesFarré,XavierFranch,AntoninoCassarino,DaniloValerio,Valen3n
Elvassore,Replan:aReleasePlanningTool,SANER2017• DavidAmeller,CarlesFarré,XavierFranch,AntoninoCassarino,DaniloValerio,Towards
Con?nuousSoKwareReleasePlanning,SANER2017
Dashboard:Providesausablehumaninterface
Controller:Collectsallthenecessaryinforma3ontogenerateareleaseplan:features,andresourcesandsendsittotheReplanOp3mizerThereleaseplanthatthislaeerreturnsisthenstoredandsentbacktotheReplanDashboard
ReplanOp3mizer:Gene3cAlgorithms:jMetal4,aframeworkwithanextensiveporkolioofavailablemul3-objec3veop3miza3onalgorithms:NSGA-II,MOCell,PESA-II,SPEA-II
24
SUPERSEDE at Y2 Chainofmethods&toolshavebeenvalidated
• User-feedback(tweets)+Decision-Making+ReleaseplanninghasbeenvalidatedinATOSUCs
• Eventsfrommonitoreddataweresimulatedtovalidatedynamicadapta3oninATOSUC(bothdecision-makingandenac3ng)
• …
Tutorial • Release Planning (ICSE’16), Xavier Franch and
Workshop: • PRIORE17@REFSQ • RE17 CrowdRE17
Int Journal Papers: • JOA 15 • IEEE software 17 • REJ, IST submissions
Int. Conferences papers • PROFES16 • RE16 • SANER17 • CAiSE17 • COMPSAC17 • …
Int. Workshop papers • PRIORE17 • iStar17
… Industrial Workshop in Berlin on September 2017
SUPERSEDE at Y2 Dissemina3on
26
What’s next?
• Project perspective: - M30 (October 17) final release of the
tool suite to be validated in realistic setting
- M36 (April 18) final results for all the components
- Validation of the tool-suite in realistic settings
• Struggling to attract external evaluators, please contact me if you are interested to use SUPERSEDE components
• Integrating components into issue tracking systems
• Research advancement in data-driven RE - Further research results in addressing
CH1---CH7
Thank you for your attention Questions?
Figu
res
Cre
dits
: Cha
ract
ers
desi
gned
by
MD
F16
Mile
ston
es a
nd ro
ad p
ictu
res:
Credits:someoftheslideshavebeenadaptedfrompresenta3onsofNorbertSeyff(FHNW,UZH),AlbertoAbello(UPC),AngeloSusi(FBK),DavidAmeller(UPC))
29
Chapter 5. Speech-Act based Analysis of User Feedback
from which Assertives, Confirmatives and Concessives are aggregated into the analysis categoryAssertives. The speech act Assertives is considered as a strong belief and intention by a senderwho maintains his/her belief about something.
Table 5.1: Categories of speech acts
Category Subcategory Analysiscategory
Definition (excerpt)1
Constantives
Informatives Not usedAssertives: speech act that is con-sidered as having a strong be-lief and intention by a senderwho maintains his/her belief aboutsomething, e.g., “I know the choco-late is good for your health...”.Suppositive: speech act conveyingthat is worth considering the conse-quences of something regardless ofwhether it is true, e.g. “I supposethe configuration file ...” Reques-tive: speech act expressing sender’sintention that the receiver take theexpressed desire as reason to act,e.g., “I kindly ask you to provideme ...”
AssertivesAssertivesConfirmatives
ConcessivesSuggestives
ResponsivesSuppositivesResponsives
DirectivesRequestives
RequestivesQuestionsRequirements
Expressives
Thank Not usedAccept AcceptReject RejectNegative opinion Negative
opinionPositive opinion Positive opinion
Attach (non-linguistic)URL link
AttachCode lineLog file
5.1.2 Automated Tagging of Speech Acts
The procedure followed to build our method includes a gathering of seed words and the com-putation of their frequencies. This was done in order to have evidence of a presence of perfor-mative verbs in messages of OSS community discussions. The resulting seed words composesets of words that are used later to elaborate rules for tagging speech-acts. In the following weexplain such steps.
Selection of seed words for the OSS context. To find out what are the words reifying the intentionswe want to identify, we examined crawled messages from Apache OpenOffice bugzilla2 to findregularities in written messages. We analysed empirical data from other OSS project to notbe biased in defining the kind of words regularly used by participants in online discussions.Following a supervised selection of seed words, we executed the process depicted in Figure 5.2,from step (a) to (f):
1Definitions taken and adapted from the work by Bach et al. [BH79]2https://issues.apache.org/ooo/
85
Speech-act categories
Theobjec3ve(forSE)
• Supportdecision-makersinusingexplicit(1)andimplicit(2)feedbackfromtheuserstoevolvethesystem
– (1)Getfeedbackfromyourstakeholderscon3nuously
– (2)Monitortheircontextandtheopera3onalcontextofthesystemtheyareusing
– Analysethecombineddatatoiden3fynewstakeholders’requirementsorrequestsforsystemadapta3on/reconfigura3on
31
The SIEMENS use case SMART CITY INFORMATION API PLATFORM
Demo Apps
CityInfoAPI:Managementand
Opera5on
• SmartCityInforma3onAPIprovisionandconsump3on
• EcosystemforSmartCityInforma3onexchange
• AdvancedSmartCityAppsandServicesforenergyproviders,gridoperatorsandci3zens
• Run3memonitoringofplakorm• APIaccesspaeernsandKPIs
WithSUPERSEDE• Collectandanalysedeveloperandpublisher
feedback• Suppor3ngplakormevolu3on• Improvingmaintenanceplanning• PerformingSLA-drivenserviceadapta3on
32
Interactive Energy Savings Account
The SEnerCon use case
• SENERCON(so@waredeveloper,management)HomeEnergyEfficiency-Energyevalua3onapplica3on(heps://www.energiesparkonto.de)
WithSUPERSEDE• Setupaneffec3vecommunica3on
channelbetweenend-usersanddeveloperstoimprovetheso@waredevelopmentbasedontheend-users
needs• Helpdeveloperstofindproblemsinthe
so@warefasterandgivethemthepossibilitytodecidewhicharethemostimportantfeatures/bugstoworkon
33
SMART PLAYER Sport Media Application in Real Time
The ATOS use case
• Webscas3ngMediaplakormforlargesportevents
• SportsEventLive• Allowspeopletowatchsportvideos
ondemand• Applica3oninRealTime• Givestatswith:liveresultsandsport
info• Mul3-audioindifferentlanguages
WithSUPERSEDE• Win-winforend-usersandcontent
providers• Dynamicconfigura3onontheproduc3on
side• Collectandanalyseuserfeedbackinreal-
3me• ATOS’businessservicescomposi3ontool• Improveend-userqualityofExperience
Decision Making for adaptation
• Thanks to the analysis of monitoring data, that allows to trigger a change in the configuration of the system
• Search for new (possibly alternative) configurations given feature model, current configuration, monitoring data, constraint from the trigger
39
Release Planning & Enacting Adaptation
Research topics • Models@runtime - representations of runtime behavior
• Variability expressed as feature models • AOM on UML for system modeling (e.g., the target use case) • Adaptability managed by our own DSL
• Generic (highly reusable) top-down MDE approach • M2M/M2T transformations for the models@runtime • Platform specific adaptation hooks