tool-supported collaborative requirements prioritisation

15
Tool-supported Collaborative Requirements Prioritisation P. Busetta, F. M. Kifetew, D. Muñante, A. Perini, A. Siena, A. Susi 6 July 2017 COMPSAC 2017

Upload: supersede

Post on 22-Jan-2018

74 views

Category:

Science


0 download

TRANSCRIPT

Page 1: Tool-supported Collaborative Requirements Prioritisation

Tool-supportedCollaborativeRequirementsPrioritisationP.Busetta,F.M.Kifetew,D.Muñante,A.Perini,A.Siena,A.Susi

6July2017COMPSAC2017

Page 2: Tool-supported Collaborative Requirements Prioritisation

MotivationsandKeyPoints ataglance:• Decidingwhatismoreandwhatislessimportantiscriticalwhendevelopingsoftware,inparticulartodeterminethecontentsofadevelopmentcycle,aswellasinanyactivitywithlimitedtimeandresources• However,differentstakeholders(developers,users,operations,marketing…)mayhavedifferentperspectivesandsometimesconflictingopinionsontherelativepriorityofrequirementstobeaddressed

• Supportingdecision-makingtechniques/toolsaboundbutpracticaluseisrelativelyrare• … especiallyinsmallanddistributedorganizations,becauseofperceivedcostsandeffortsw.r.t.benefits

• Theprocessweproposeanditsaccompanyingtooltackletheseissuesby:• Minimizingthecostofset-upandexecutionofadecision-makingsession• Allowingittobeeasily repeated,withthesameordifferentparticipants/criteria/items• Distributingitintimeandspace(i.e.,notrequiringeverybodytobeatthesametimeinthesameplace)

• Insertinggamification elementstomakedecision-makingorganizationallyflexible,engagingfortheparticipants,andpotentiallyitselfsourceoffurtherorganizationalknowledge

• Experimentedinafewcasestudiessofar,theveryfirstbeingillustratedhere

06July2017 Tool-SupportedRequirementPrioritisation 2

Page 3: Tool-supported Collaborative Requirements Prioritisation

Outline

• Context:Involvingtheend-usersdirectlyintheloopandfosteringcollaborationwithinthedevelopmentteamandwithstakeholders• Introducinggamificationintheprocess• Anexperiment:configurationandconclusions• CurrentstateandFuturework

06July2017 Tool-SupportedRequirementPrioritisation 3

Page 4: Tool-supported Collaborative Requirements Prioritisation

ProjectContext:End-userfeedbackandmonitoringdataasdriversofsoftwareevolutionandadaptation

06July2017 Tool-SupportedRequirementPrioritisation 4

Usersarefirst-classactorswithin theloop–particularlyrelevantwiththeincreasingadoptionofCI/CDpipelines

Prioritizationisacriticalsteptoinformreleaseplanning.Criteriamaybemultiple;thus,thisactivitycanbeseenasaformofmulti-objectiveoptimizations

ResearchperformedaspartoftheH2020SUPERSEDEproject

(www.supersede.eu)

Usersfeedbackanddatafrommonitorsbecomerequirements tobeaddressedbythenextsoftwarerelease

Page 5: Tool-supported Collaborative Requirements Prioritisation

Prioritizinginacollaborativeenvironment• Collaborationisrequiredtocapturedifferentperspectivesonaproduct,aswellasdifferentcompetencesandexperiencewithinateam• Theprocess(anditsaccompanyingtool)shouldallowtheinvolvementofdecision-makersthat donotcoveranytraditional,organization-determinedrole• Whichmayincludemorethanthesole“productowner”(inSCRUMterminology)• Thisisevenmoreimportantifend-users“sitatthetable”,notjustbyprovidingfeedbackbut,indeed,participatingtothedecision-makingprocess

• Ontheotherside,howtokeepparticipantsengaged,willingtoparticipate?• Especiallynon-developersorothersthatdonothaveaspecificdutyintheorganization

06July2017 Tool-SupportedRequirementPrioritisation 5

Page 6: Tool-supported Collaborative Requirements Prioritisation

Gamifyingtheprocess(1/2)”Gamification”simplymeans“introducingelementstypicalofgames”forvariouspurposes,typicallytomakeaprocesssmootherandmoreengaging.Wetookafewtoaddresstherequirementsidentifiedbefore:• Multipleroleswithdifferentallowedactions.Theyareunrelated toanyorganizationalstructure,justlocaltoaspecific(game)session• Identifiedsofararesupervisor,opinionprovider,negotiator,thelatterintroducingawholeworldof(potentiallyrich)interactionsamongplayersthatgoesbeyondthedeterministicresultsofatechniqueoralgorithm

• Anon-linearworkflow,wheremovingfromonephasetoanotherisdeterminedeitherby(game)logicorbyaspecificrolewhile,withineachphase,allrolesinvolvedcanplaytheiractionsinanarbitraryorderandpossiblymultipletimes• Identifiedsofarare(1)set-up,(2)opinionprovisionandnegotiation,(3)closure.Set-upandclosurearecurrentlyforthesupervisoronly(butcouldbeautomatede.g.withreasoningaboutthestateofthegame),whilethemiddlephaseisforallotherplayers

06July2017 Tool-SupportedRequirementPrioritisation 6

Page 7: Tool-supported Collaborative Requirements Prioritisation

Gamifyingtheprocess(2/2)• Playfulness (howmuchoneis“entertained”bythesystem),tobeintroducedinvariousways.Weexperimentedwith:• Competition andReward bymeansofpoints-ification (i.e.collectionofpointsaccordingtotheactionsperformedandtheirmodalityofexecution,inturnleadingtotheintroductionofleaderboards,badgesandsoon)

• Timepressure isboththeresultsofpoints-ification (thefasteroneplays,themorepointsonecollects)andbythebarepsychologicaltrickofshowingaclockticking

• Lightweight-nessofgameplay(i.e.thesimplicityandspeedatwhichplayerscanperformtheiractions),notonlytoimproveplayfulnessbuttosupportrepeatability

• Easyrepeatability,enablingmultiplerunswiththesameordifferentstakeholders(participants),thesameordifferentsetsofrequirements,thesameordifferentsetsofprioritizationcriteria,andsoon• Further,theintroductionofsomeformofKPIs(e.g.,pointscouldbecomputedaccordingtovariouscriteriaandkeptseparated)maybeexploitedtoletcompetenceandengagementemergeovertime

06July2017 Tool-SupportedRequirementPrioritisation 7

Page 8: Tool-supported Collaborative Requirements Prioritisation

GRP(GamifiedcollaborativeRequirementsPrioritisation):Experimentalset-up• TheexperimentedprocessisbasedonthewellknownAHP (AnalyticHierarchyProcess)

• Pairwisecomparisons:decision-makerexpresseswhichoneoftwoitems(requirementsinourcase)ispreferredaccordingtoaspecificcriterion(e.g.uservalue,developmentcomplexity,…)

• 9-valuescaleusedtoexpresspreferences,rangingfrom“AisgreatlypreferredtoB”to“indifferent”to“BisgreatlypreferredtoA”.

• Numberofcomparisons=½items2 *criteria• But,astopping criteriacanbeimposed,andsupervisormaydecidetostopanyway.Computationscanusepartial

data

• Allopinionproviderscanexpresstheirpreferencesonallrequirements.Negotiation isautomaticallyrequestedbythesystemwhentwoormoreplayershavestronglydifferentopinions(contrastingpreferencesexceedathreshold)• Resolutioncurrentlyimplementedasnegotiatorexpressingfinalopinionorignoringandlettingtheunderlyingcomputationsuseaverages

• ThetoolprovidesaWebinterface.Playerscanintervenefromanylocationattheirleisurebutwithinatimewindowdefinedbythesupervisor• Gamificationthusincludedmanyplayfulnessaspects,butnopoints-ification (competition&rewards)fortheexperimentreportedhere

06July2017 Tool-SupportedRequirementPrioritisation 8

Page 9: Tool-supported Collaborative Requirements Prioritisation

Webinterfaces

• Gameset-upandconclusionwithcomputations(supervisor)• Pairwisepreferences(opinionproviders)• Conflictresolution(negotiator)

06July2017 Tool-SupportedRequirementPrioritisation 9

Pointsandbadges(NOTE:laterversion)

Preferenceexpression

Playerhistory

Page 10: Tool-supported Collaborative Requirements Prioritisation

Theexperiment:dataandcharacteristics• DevelopmentteamofR&Ddepartment• DeltaInformatica’s owngroupworkingonauthoringtoolsforvirtualreality-basedtraining(PRESTOtoolsuite)

• SME.Littleornouserinputonmostnovelaspects• 16requirements,groupedin4clusters• 2criteriaforevaluation(effortanduservalue)• 8participants:engineersofvarioussenioritylevelsandtheircoordinator• Allasopinionproviders• Thecoordinatorhadalsotheroleofnegotiator

• 24hoursfor“playing”4games(onepercluster)• Questionnairesandinterviewsafterconclusion

06July 2017 Tool-SupportedRequirementPrioritisation 10

Page 11: Tool-supported Collaborative Requirements Prioritisation

Thesubjectofprioritization:Averycontroversialuserinterface

PRESTOScripting’scontrolleristhekeytoolforatrainertostartanddirectatrainingsession

inavirtualreality

(seediscussioninP.Busetta,AddressingTeamAwarenessByMeansOfARequirementPrioritizationTool,PRIORE’17)

Page 12: Tool-supported Collaborative Requirements Prioritisation

Resultsfromtheexperiment• GRPperceivedaseffective forreachingacceptabledecisionsinanefficientmanner• Participantsagreedtoahighdegreewiththefinaloutcomeoftheprocessforallclustersofrequirements• Thisinspiteofahighlevelofdisagreementinpairwisepreferences• ThecomparisonsofGRPoutcomesbeforeandafterthenegotiator’sinterventionshowedthatthenegotiatorplaysanimportantrole inmanagingconflictingpreferences,affectingresults

• Reportedadvantagesincludetheabilitytotrackdecisions• Suggestedpotentialimprovementsincludemechanismsfor“livecommunication”duringgameplay• Themeasuredtimerequiredtoexpresspreferencesisquiteshort

06July2017 Tool-SupportedRequirementPrioritisation 12

Page 13: Tool-supported Collaborative Requirements Prioritisation

Currentstate

• Improvedprototypeandextendedscopeofprocess• Points-ifcation fullysupported• PrioritizationtechniquesalternativetoAHPhavebeenintroduced,mostimportantlynon-pairwisecomparisons(usingGAstocomputeagreements,measuringindividualchoice’sdistancefromgroup’sconsensus,…)

• Revisedtheentireprocesstogivemoreimportancetothesupervisorandtointroduceplanningtools,e.g.toselectthemostsuitablealgorithm/technique,todecidehowmanygamestoplayandwithwhichparticipants,andsoon

• Triedoutinotherexperimentsandvalidatedagainsttheproject’susecases• Resultsavailableasproject’sreports• Overall,approachalwayswellreceived

06July2017 Tool-SupportedRequirementPrioritisation 13

Page 14: Tool-supported Collaborative Requirements Prioritisation

Futuredirections

• Integrationofprioritizationprocesswithsomeexistingapproach/methodology• LookinginparticularatSCRUMandatitsSprints’“backlog”selectionand“planning”meeting

• Integrationofprioritizationtoolasplug-inofmarkettools• Currently,developingplug-insforAtlassian’s JIRA,extendingitsAgiletools

06July2017 Tool-SupportedRequirementPrioritisation 14

Page 15: Tool-supported Collaborative Requirements Prioritisation

06July2017 Tool-SupportedRequirementPrioritisation 15

Thanksforyourattention!