ContentslistsavailableatScienceDirect
Information and Software Technology
journalhomepage:www.elsevier.com/locate/infsof
A systematic review of requirements change management
Shalinka Jayatilleke, Richard Lai
∗Department of Computer Science and Information Technology, La Trobe University, Bundoora, Victoria 3086, Australia
a rt i c l e i n f o
Article history:
Received 4 May 2017 Revised 11 August 2017 Accepted 10 September 2017 Available online 12 September 2017 Keywords:
Requirements change management Agile
Systematic review
a b s t r a c t
Context: Software requirementsareoftennot set inconcrete atthe startofasoftware development project;and requirementschangesbecomenecessaryandsometimesinevitableduetochangesincus- tomer requirementsand changesin business rules and operating environments;hence, requirements development,whichincludesrequirementschanges,isapart ofasoftwareprocess.Previousworkhas shownthatfailingtomanagesoftwarerequirementschangeswellisamaincontributortoprojectfailure.
Giventheimportanceofthesubject,there’saplethoraofresearchworkthatdiscussthemanagementof requirementschangeinvariousdirections,waysandmeans.Anexaminationoftheseworkssuggeststhat there’saroomforimprovement.
Objective: Inthispaper,wepresentasystematicreviewofresearchinRequirementsChangeManagement (RCM)asreportedintheliterature.
Method: Weuseasystematicreviewmethodtoanswerfourkeyresearchquestionsrelatedtorequire- mentschangemanagement.The questionsare:(1) Whatarethe causesofrequirementschanges?(2) Whatprocessesareusedforrequirementschangemanagement?(3)What techniquesareused forre- quirementschangemanagement?and(4)Howdoorganizationsmakedecisionsregardingrequirements changes?Thesequestionsareaimedatstudyingthevariousdirectionsinthefieldofrequirementschange managementandatprovidingsuggestionsforfutureresearchwork.
Results: Thefourquestionswereanswered;andthestrengthsandweaknessesofexistingtechniquesfor RCMwereidentified.
Conclusions: Thispaperhasprovidedinformationaboutthecurrentstate-of-the-arttechniquesandprac- ticesforRCMandtheresearchgapsinexistingwork.Benefits,risksanddifficultiesassociatedwithRCM arealsomadeavailabletosoftwarepractitionerswhowillbeinapositionofmakingbetterdecisionson activitiesrelatedtoRCM.Betterdecisionswillleadtobetterplanningwhichwillincreasethechanceof projectsuccess.
© 2017ElsevierB.V.Allrightsreserved.
1. Introduction
Changeisanintrinsiccharacteristicofthesoftwareengineering disciplinecomparedtootherengineeringdisciplines.Inreal-world scenarios, it is difficult to specify all the requirements for soft- ware astheneedandthecircumstance ofthescenariois subject to change.Factorssuchascustomer needs,market change,global competition,governmentpolicies,etc.contributeprofoundlytothe changing nature ofrequirements. The needfor increasingly com- plex softwareisinhighdemand asorganizationsstruggleto sur- vive in a highlycompetitive market.Therefore, managingchange insoftware developmentis notjustimportantbutcrucialforthe successofthefinalproduct.
∗ Corresponding author.
E-mail addresses: [email protected] (S. Jayatilleke), [email protected] , [email protected] (R. Lai).
Nurmuliani[1]definesrequirementsvolatilityas“thetendency of requirements to change over time in response to the evolv- ing needs of customers, stakeholders, the organisation and the workenvironment”.Requirements,inprinciple,aretheneedsand wants of the users and stakeholders of the system captured by an analyst through an elicitation process [2].These requirements changethroughoutthesystemdevelopmentandmaintenancepro- cess,whichincludes thewholelifecycleofasystem:requirement formation,analysis,design,evaluationandlearning[1–15].Asthis reviewprogresses, we discussindetailthefactors that cancause theserequirementschanges.Therefore,requirementschangeman- agement(RCM)canbedefinedasthemanagementofsuchchang- ing requirements during the requirements engineering process, system development and the maintenance process [2,5,16]. This definition ofRCM is an adaptation ofthe definition provided by Sommerville[2]whostatesRCMisaprocessof“managingchang- ingrequirementsduringtherequirementsengineeringprocessand systemdevelopment”.
http://dx.doi.org/10.1016/j.infsof.2017.09.004 0950-5849/© 2017 Elsevier B.V. All rights reserved.
164 S. Jayatilleke, R. Lai / Information and Software Technology 93 (2018) 163–185
Managing such evolving changes has proved to be a major challenge[12–15].The consequencesofunmanagedorimproperly managedrequirementchangescanspelldisasterforsystemdevel- opment.Thesenegative consequencescan resultin softwarecost andscheduleoverrun,unstable requirements,endless testingand can eventually cause project failure and business loss [1,17–23]. Therefore,thepropermanagement ofchangecanbebothreward- ingandchallengingatthesametime.
The research areaof RCMis ofimportanceto manypartiesas requirements change is a constant factor. Many research studies onhavebeenconductedonimprovingRCMandmanymorehave beenconductedtolookforanswersintheknowledgegapsfound inthecurrentresearch. Themain motivationofthisresearch pa- peristobringtogethertheplethoraofresearchworkdoneinthe areaofRCMintoonelocation.Thiswillenablesoftwarepractition- ersandresearchersalikeareferencepointinacquiringknowledge onthecurrent practices,benefits,risks anddifficultiesassociated withRCM. Asaresult, theycanformrealistic expectationsbefore makingdecisionsonactivitiesrelatedtoRCM.Betterdecisionmak- ingwillleadtobetterplanningwhichwillincreasethechance of projectsuccess. An equally important reasonto conduct this re- searchistoidentifytheknowledgegapsintheareaofRCM.Given that a lot of research work has been done in this area, we felt itis importantfor usaswell asother researchers to understand thefutureofRCM.Althoughthisisawidelyresearchedarea,there aremanygapsstill remainingthat oncerecognizedandremedied couldassistorganizationsimmensely.
2. Researchquestions
To gainan understanding ofcurrenttrends, practices,benefits and challenges in RCM, we formulated the following four ques- tions;
RQ1:Whatarethecausesofrequirementchanges?
The motivation behindthisquestionisto understandwhy re- quirementchangesoccur,whichleadstotherealizationastowhy thishasbeenanevolvingtopic.Toanswerthisquestion,weinves- tigatedvariouseventsanduncertaintiesthathavebeenmentioned inliterature.We alsoinvestigatewhetherthereisanycommonal- itybetweentheseeventsthat wouldleadtoarecognitionpattern inpredictingRCs.
RQ2: What processes are used for requirements change man- agement?
The motivationbehindthisquestionisto understandthevari- oussteps involvedin managingRCs. Toanswerthisquestion, we investigated the following: (1) recommendations for semi-formal methodsofmanagingchange;(2)formalprocessmodelsavailable forRCM
RQ3: Whattechniquesare usedforrequirementschangeman- agement?
The motivationforthis questionis toidentify andunderstand the state-of-the-art techniques in managing major areas of the RCMprocess.Toanswerthisquestion,weidentifythemainsteps requiredtomanageRCbasedontheanswertoRQ2andtheniden- tifyin the literature what techniques havebeen used in each of thesesteps.
RQ4: How doorganizations make decisionsregarding require- mentschanges?
Themotivationbehindthisquestionistodiscoverwhatfactors areinvolvedinmakingdecisionsregardingRCsatdifferentorgani- zationallevels.Toanswerthisquestion,wefirstidentifythemain levelsofan organizationandusetheinformationavailableinthe literatureonRCMthatcanbemappedtoeachlevel.
3. Reviewapproach
The systematic review was designed in accordance with the systematic review procedures and processes defined by Kitchen- ham[24,25].According toKitchenham[24],thereare 10sections inthestructure ofa systematicreview: 1.Title;2.Authorship;3.
Executive summary or abstract; 4. Background; 5. Review ques- tions;6.ReviewMethod; 7.Inclusionandexclusionofstudies; 8.
Results;9.Discussion;and10.Conclusion.Thefirst5sectionshave beencoveredsofar.Thereviewmethodcomprisesfoursections:1.
Datasearchstrategy;2.Studyselection;3.Dataextraction;and4.
Datasynthesis.Thissection comprisesthereviewmethodandthe inclusionandexclusionofstudies.Theresults,discussionandcon- clusionarepresentedinthenextsection.
3.1. Studyobjectives
As noted earlier, the objective of this literature review is to thoroughly study the background and existing methods in RCM and thereby provide a critical analysis of the relevant research workandidentifyfuturedirectionsforimprovement.
3.2. Selectedsources
In orderto carry out a comprehensiveanalysis, search strings were established by combining the keywords through the logi- cal connectors “AND” and “OR”. The studies were obtainedfrom thefollowingsearch sources:IEEE,ACM,Science Direct(Elsevier), Springer, Wiley Inter Science, andGoogle Scholar. The quality of thesesourcesguaranteesthequalityofthestudy.
3.3. Selectedlanguage
The Englishlanguage is themostcommonly usedlanguage in theworldandmostoftheavailableresearchiswritteninEnglish.
Therefore,onlypaperswhichare writteninEnglish wereselected fortheliteraturereview.
3.4. Datasearch
Toanswertheresearchquestion,weundertookthesearchusing foursteps;
Step01 – Identify thefundamentalareasto finalizethe scope ofthereview.
Step02– Select keywords/stringsfromthedefinedareas.Key words/stringswerelimitedtoseven(seeTable1).
Step 03– Describe search expressions based on the first two stepsi.e.[Expression=(A1 ORA2ORA3ORA4ORA5ORA6 ORA7 ORA8 ORA9 OR A10ORA11) AND (B1 OR B2 ORB3 ORB4ORB5)].
Step04– Usethesearchexpressioninthelibrariesmentioned intheselectedsources.
3.5. Studyselection(Inclusionandexclusionofstudies)
Once the research questions and the data search mechanism were defined, we started the process of selecting studies which fell underthe definedscope andcontainedthekeywords set out inthereviewprocess.AsshownincategoryAofTable1,thearea ofRCM hasa lotofpotentialaschange isaconstant factor.As a result,oursearchyieldedhundredsofresearchpapersandstudies.
Afterscreeningthesepapers,wecametotheconclusionthat 28%
(184)wererelevanttothestudy.
Paperswereexcludedforanumberofreasonsrelatedtoformat (editorial,seminar, tutorialordiscussion), repetition, lack ofpeer
Table 1
Categories and keywords.
Category Area Keywords/strings
A Requirement
change manage- ment
A 1– Requirement change/volatility/creep A 2– Requirement change difficulties A 3– Requirement change management A 4– Requirement change management
models/Processes
A 5– Requirement change identification/type A 6– Requirement change analysis A 7– Requirement change factors/causes A 8– Requirement change decisions A 9– Change impact analysis
A 10– Agile requirement change management A 11– Requirement change cost estimation
B Nature of
study
B 1– Case study B 2– Experiment B 3– Surveys B 4– Industrial B 5– Literature reviews
Table 2
Study selection process.
Analysis phase Inclusion criteria Number of papers 1. Initial search • Papers written in English 650
• Available online
• Contain search keywords and strings 2. Scrutinizing
titles
• Only published in journals, conferences, workshops and books
573
• Not an editorial, seminar, tutorial or discussion
3. Scrutinizing abstract
• Experiments, case studies, literature reviews, industrial and surveys
340 4. Analysing
introduction and conclusion
• Main contribution in the areas of search strings
230
5. Analysing main contribution
• Reported significant contribution 184
• Originality of work
• Sole focus related to the theme of this review study
Table 3
Classification of exclusion.
Exclusion criteria No.
Paper format (editorial, seminar, tutorial or discussion) 95
Repetitions 43
Lack of peer review 75
Lack of a focus on RC and RCM 110
Redundancy 98
Lack of quality 45
Total 466
review, lack of a focus on RC and RCM, redundancy andlack of quality.Severalpapersappearedinmorethanoneresearchrepos- itory. We eliminated therepetitions andonly considered one in- stanceofa paper.Detailsonrepeatedarticlesdonot provideany significant information, except the names of the articles which have beenpublishedby morethan one publishing authority(e.g.
IEEE,ACM). Asa result, wedonot mentionthenames ofthere- peated articleswhich werefound duringthestudyselection pro- cess.Intheinitialphase,theextractedpaperswereindependently reviewedbybothauthorsbasedontheinclusionandexclusioncri- teria. In the secondary phase, both authors compared their out- comeoftheirselectionandthroughdiscussion,cametoagreement ontheinclusionandexclusionofpapers.Theoverallinclusionpro- cess comprised fivesteps, as shownin Table 2.Table 3 provides detailsofthereasonsfortheexclusionof466papers.
Table 4
Data extraction process.
Aspects Details
Study ID Paper ID
Title Title of paper
Authors Names of authors
Publishers Name of publishing authority Publishing date Date of publication
Causes of RCs Factors that cause requirement changes Study focus Focus and perspective of paper RCM processes/models Processes/models listed for managing RC RCM techniques Techniques used for RCM (identification, impact
analysis, cost estimation, etc.) Reported challenges in
RCM
Challenges and consequences associated with RCM Decision making in RCM Factors involved in decision making related to RCM Study findings Lessons learned from the paper
Knowledge gaps in RCM Implications for future work
3.6.Dataextraction
After completingthe studyselection process,we recorded ba- sic information on each paper in data extraction form (refer to Table4)togatherinformationonthecausesofRCs, thestudyfo- cus,RCMprocesses/models, RCidentification,RCM techniques,re- portedchallengesinRCM,decisionmakinginRCM,studyfindings andknowledgegapsinRCM.Thenon-experimentalmodelswhich presented a proposal without conducting experiments were also applied.
3.7.Datasynthesis
Kitchenham[24,25]statesthattherearetwo mainmethodsof data synthesis:descriptive (qualitative) andquantitative. The ex- tracteddata were analysed usinga qualitative methodto answer ourresearch questions,which leadsto adescriptive data synthe- sis.One ofthe co-authors ofthispaperhaspublishedqualitative systematicreviews [26,27] using similar techniques. The analysis used theconstant comparison method [28] in comparingstudies pastandpresentinRCM.Usingthismethod,wepresentthefocus ofthestudies,theproposedmethods,applicabilitytorequirement changemanagement, lessonslearnedfrom thestudies anddraw- backsandlimitationofthestudies.
4. ResultsforRQ1:whatarethecausesofrequirements changes?
Itisanticipatedthatrequirementswillchangeduringaproject lifecycle.Whilstthisfactisaconstant,delayeddiscovery ofsuch changesposesarisktothecost,scheduleandquality ofthesoft- ware [3,29–31] andsuch volatility constitutesone ofthe top ten riskstosuccessfulprojectdevelopment[30–32].Pfleeger[33]rec- ommendsthatamethodneedstobedevelopedtounderstandand anticipatesomeoftheinevitablechangesduringthedevelopment processinordertoreducetheserisks.Theidentificationoffactors thatcauseorinfluencerequirementsuncertaintyisanecessity.The recognitionofsuch factors willsupportrequirements changerisk visibilityandalsofacilitatebetterrecordingofchangedata[30,31]. Changecausefactorswerecollectedusingakeywordsearchon academicpapers,industryarticlesandbooksthatdealwithchange managementorrequirementengineering.Weusedthe searchex- pressionsA1ORA2ORA3ORA5 ORA7 (seeTable1).
Mostliteratureextractedinthissurveymentioned/indicatedthe reasons for requirement changes. However, it was deemed nec- essary to present these findings in a form that was meaningful rather than listing all the causes of RCs mentioned in the liter- ature. Of the literature extracted, there were three studies that
166 S. Jayatilleke, R. Lai / Information and Software Technology 93 (2018) 163–185
formally classify the causes of RCs. Weiss and Basili [34] divide changes into two categories: error correction and modifications.
Thisclassificationappearstobesimplisticandcategorisingallthe identifiedchange causesmaynot createan in-depth understand- ing.Bano etal.[35] classifies changecauses also undertwo cat- egories;essentialandaccidental.Theyfurther classifythe change causesbasedontheirorigin:withintheproject,fromtheclientor- ganizationandfromthebusiness environment.McGee andGreer [30,31] usefive areas/domains to classify change causes.For this survey,weusetheclassificationpresentedbyMcGeeandGreeras it has a more comprehensive categorization. The five change ar- easare:externalmarket,customerorganization,projectvision,re- quirementspecificationandsolution.Withinthefivechangeareas, theydistinguishbetweentwocausesofchange:triggeranduncer- tainty[30].Thedifferencebetweenthesetwocategoriesisthatan eventcan causeachangewithout pre-orpost-uncertainty.How- ever,uncertaintycannotcauseachangetooccurwithoutanevent thatistriggeredtomanagetheriskoftheuncertainty.Thefactors thatwereidentifiedascausesofrequirementschangeweresorted intofiveareasasfollows:
(i) Changearea:Externalmarket
In this category, the changes to the requirements are trig- geredby theeventsanduncertaintiesthatoccur intheex- ternalmarketwhichalsoincludestakeholders.Thesestake- holdersincludepartiessuchascustomers,governmentbod- ies and competitors. Therefore, events such as changes in government policy regulations [36–38], fluctuations in market demands [1,37–39] and response to competitors [15,37,40,41] can be considered. Also, uncertainties such as the stabilityof themarket [15,42] and thechanging needs ofthecustomers[15]arealsopartofthiscategory.
(ii) Changearea:Customerorganization
In thiscategory, changes to the requirementsare triggered by the events andthe uncertainties that arise froma sin- gle customer and their organizational changes. Although the changesoccur withinthe customer’sorganization,such changes have a tendency to impact the needs of the cus- tomer andasa result,impact thedesign andrequirements of the software project.Therefore, events such asstrategic changeswithintheorganization[4],restructuringoftheor- ganization [1,36,38,39,43],changes in organizationalhierar- chy [15,37,44]andchanges insoftware/hardwareinthe or- ganization should be considered. The stability of the cus- tomer’s business environment can createuncertaintiesthat mayleadtochangesandthesearealsopartofthiscategory.
(iii)Changearea:Projectvision
In this category, the changes to the requirements are trig- geredbychangesinthevisionoftheproject.Thesechanges are in response to a better understanding of the problem space from a customer point-of-view and the emergence of new opportunities and challenges. Events such as im- provements to business processes [2,37], changes to busi- ness cases due to return on investment [4], overrun in cost/schedule of the project [36,39], identification of new opportunities [36] and more participation from the stake- holder[38]shouldbeconsidered.Uncertainties,suchasthe involvement of all stakeholders [37,43–45], novelty of ap- plication [37,46],clarityinproduct vision[37,38,45,47],im- proved knowledge development team in the business area [44,46], identification of all stakeholders [43,45], experi- ence and skill of analyst [37,44,47,48], size of the project [2,44,49]canalsocausechangesunderthiscategory.
(iv)Changearea:Requirementspecification
In this category, changes in the requirements are trig- gered by events and uncertainties related to requirement
Table 5
Comparison between classifications.
Bano et al.’s Classification [35]
McGee and Greer’s Classification [30]
Essential External market Customer organization
Accidental Project vision Requirement specification Solution
specification. These trigger events are based on a devel- oper’s point-of-view and their improved understanding of theproblemspace andresolutionofambiguities relatedto requirements. Events such as increased understanding of the customer [2,36,37,49,50], resolution of misunderstand- ingsandmiscommunication[15,51,52]andresolutionofin- correct identification of requirements [1] can be consid- ered as change triggers. Uncertainties, such as the quality ofcommunicationwithin the developmentteam [4], insuf- ficientsample ofuser representatives [4],low staff morale [48], quality of communication between analyst/customer [37,42,44,49],logicalcomplexityofproblem[44,46,49],tech- niquesusedforanalysis[2,36,37,39,48],developmentteams’
knowledgeofthebusinessarea[44,46],involvedcustomers’
experience of IT [46], quality of requirement specification [4],andthestabilityofthedevelopmentteam[4]cancon- tributetowardschangeunderthiscategory.
(v) Changearea:Solution
In thiscategory, changes inthe requirements are triggered by events and uncertainties related to the solution of the customer’srequirementsandthetechniquesusedtoresolve this.Eventssuchasincreasedunderstandingofthetechnical solution[4],introductionof newtools/technology[5,15,36–
38,41,43,53] and design improvement [15,36,51] should be areconsideredaschangetriggers.Technicaluncertaintyand complexitycanalsobeconsidered underthiscategoryasa causeofchange[4].
Thefivechangeareaslistedabovecanbemappedtotheclassi- ficationproposedbyBanoetal.[35].Thetermsessentialandacci- dentalwereinitiallyintroduced byBrooks[54].AccordingtoBano et al.[35],change causes under the essential category are those that are inherent in nature and cannot be controlled i.e. “fluc- tuating market demand” cannot be controlled oravoided by the developmentteam orthe organization. In comparison,accidental causescanbecontrolledandavoidedi.e.“overrunincost/schedule oftheproject” canbeavoidedoratleastcontrolledbyputtingbet- ter techniquesandmechanismsin place.Beingableto categorize change causes under these two categories has added benefits in managingRCs. Withessentialcauses,the focusshould beto deal with their impact and therefore use techniques that will reduce timeandeffortfortheirmanagement.Withtheaccidentalcauses, thefocusshouldbetousetechniquesthatavoidsuchoccurrences.
Table5showshowthesefivecategoriesinMcGeeandGreer’sclas- sification[30]canbemappedtoBanoetal.’sclassification[35]of essentialandaccidentalcategories.
KeyfindingsofRQ1
Giventhat RC isan inevitableoccurrenceinanydevelopment project, it is beneficial to identify which factors can causethese changes.Theknowledge gainedthroughsuch findingswillenable all stakeholders ofa project tobetter manage the changes when they occur,develop systemsbasedonthechanges,andanticipate certain changes. Basedon the discussionformulated for RQ1,the followingarethekeyfindings:
1) The factors that cause RCs can be divided into two cate- gories:changetriggerevents;anduncertainties.
2) In reality, it isdifficult to determine whether change hap- pensasaresultofoneorboth.Inapracticalsense,itisnot important that the causes of the changes are divided into thesetwocategories,aslongastheyareidentified.
3) Theseidentified changescanbe categorisedintofiveareas:
external market; customer organization; project vision; re- quirementspecification;andsolution.
4) Thesefiveareaswereidentified byobservingthecharacter- istics ofthe changeevents andthe uncertaintiesdiscussed in the literature. For example, any change factor that was part ofthe external environment of the organization, such ascompetitors,governmentregulations,etc.wascategorised astheexternalmarket.
5) Thesefiveareascanbedividedintotwocategories:essential and accidental. Based on this division, development teams canbeproactiveinmanagingsuchchanges.
6) Based on the location in the life cycle of the software project,theaboveinformationcanbemeaningfulforantic- ipatingwhat factorsmaycausechangeandasaresultwill leadtobetterplanningthatwillensureabettersuccessrate fortheproject.
5. ResultsforRQ2:whatprocessesareusedforrequirements changemanagement?
Inorder toanswerRQ2,the followingsectionsdiscussvarious processessuggestedformanagingRCandtheprocessmodelsthat are dedicatedforRCM. Weusedthesearch expressionsA3 ORA4 ORA6ORA9ORA10(seeTable1)toextracttherelevantliterature.
5.1. Semi-formalmethodsavailableforrequirementschange management
Change isconsidered to be an essential characteristic of soft- ware development and successfulsoftware has to be adapted to the requirementsof its customersand users[5,55,56]. Thus RCM has become a significant activity, which is undertaken through- out the development ofthe software andalso during the main- tenancephase.Giventhesignificanceofthisactivity,itisunlikely that changemanagementisundertakeninan ad-hocmanner.Ac- cordingtoSommerville[2],theprocessofRCM“isaworkflowpro- cess whosestages can be defined andinformation flow between thesestagespartiallyautomated”.HavingaproperprocessforRCM is linked with both improvement inthe organizational processes and the successof software projects [5,6,57]. We have identified four(i–vii) academicworksthatrefer toestablishingsemi-formal methodsformanagingchange.
(i) Proposal:LeffingwellandWidrig[58]
Thisisafive-stepprocessformanagingchange.Theprocess isasfollows:
1. Recognizethatchangeisinevitable,andplanforit.
2. Baselinetherequirements.
3. Establishasinglechanneltocontrolchange.
4. Useachangecontrolsystemtocapturechanges.
5. Managechangehierarchically.
The processbegins witha changemanagement planwhich recognizes that change is unavoidable. Requirements are thereforebaselinedforchangecontrolandanyproposedRC isthencomparedwiththebaselineforanyconflicts.Inthe third step, achange authority orchange decision makeris established.Forsmallprojects,thiswouldbeaprojectman- ager while for larger systems, the responsibility would be handed to a change control board. In both cases, the de- cision is based on impact analysis.In the decision-making process, it is recommended that input fromvarious stake- holders,suchascustomers,end-user,developers,testers,etc.
shouldbe taken intoconsideration. Tobe able to makean informed decision, the impact analysis should capture the effectofthechangeoncost,functionality,customersandex- ternalstakeholders.Alsotobeconsideredisthedestabiliza- tionofthe system, whichcan occur duetothe implemen- tationofthechange.Thedecisionwhichistakenshouldbe communicatedtoall theconcernedparties.Thefourthstep refersto establishinga systemthat canbe used tocapture thechangeseffectively.Thiscould beeitherpaper-basedor electronic.The ripple effectsof thechange are tobe man- agedinatop-downorder.
Limitationsoftheproposal:
AccordingtoLeffingwellandWidrig[58],thisprocessshould enable software practitioners to identify changes that are
“both necessary and acceptable”. However, it is not men- tionedinthiswork whatsteps aretobe takentodecideif aparticularchange isbothnecessary andacceptable.Simi- larly,nospecificdetailsaregivenastohowtocalculatethe impactoncost,functionality,customersandexternalstake- holders.Inthissense, thesesteps onlyforma basicunder- standingofwhatneedstooccurinhandlingachange.
(ii) Proposal:ElEmametal.[57]
Thisprocess focuses onthe preliminary analysisof change management. Two inputs are considered in order to con- ductthisprocess,thetechnicalbaselineandanycomments madebystakeholders,suchascustomers,end-users,thede- velopmentteam,etc.Thedecision-makingprocessinvolvesa changecontrolboardasthischangemanagementprocessis prescribedforlargesystems.Thetechnicalbaselineisessen- tially the system requirement specification document. The changemanagementprocesshasthefollowingfourphases:
1.Initialissueevaluation 2.Preliminaryanalysis 3.Detailedchangeanalysis 4.Implementation
In the first step, the comments gathered from the stake- holdersarevalidatedandenteredintoadatabaseaschange requests. If a change request addresses a problem that is withinthescopeofthetechnicalbaseline,andhasnotbeen addressed before, a change proposal will be generated. In the second step, an analysisplan is formulated which de- scribestheproblemofthechangeproposalindetail.Ifthis planisapprovedbyachangecontrol board,thenmanypo- tentialsolutions willbedeveloped,fromwhichonewillbe selectedforimplementation.Thissolutionthenneedstoun- dergo further approval. In the third step, the solution ap- proved by the preliminary analysis report is further anal- ysedagainstthetechnicalbaseline todeterminetheimpact on the system in detail and the changes required. In the laststep,thetechnicalbaselineismodifiedaccordingtothe changeproposalandthechangerequestisclosed.
Limitationsintheproposal:
Theuse ofthesesteps islimitedto largeprojects. Further- more, it is not clear on what basis the different alterna- tivesolutionsareassessedandwhatexactlyisthedecision- makingprocess inthe second step.Giventhat thisprocess isconductedataninitialstageofthedevelopmentprocess, thereisnoaccesstothecode.Therefore,apossibilityexists thatthesechangesmaycauseissuesatacodelevel.
(iii) Proposal:KotonyaandSommerville[59]
The authors emphasize the importance of having a formal process for change management to ensure the proposed changescontinuetosupportthefundamentalbusinessgoals.
They[59] indicatethat such a process ensures thatsimilar informationiscollectedforeachproposed changeandthat overalljudgementsaremadeaboutthecostsandbenefitsof
168 S. Jayatilleke, R. Lai / Information and Software Technology 93 (2018) 163–185
such changes. A three-step change management process is proposedin[59]asfollows:
1. Problemanalysisandchangespecification 2. Changeanalysisandcosting
3. Changeimplementation
Inthefirststep,aproblemrelatedtoarequirementoraset of requirements is identified. These requirements are then analysed usingtheprobleminformationandasaresult, re- quirements changes are proposed. In the second step, the proposed changesare analysedto determinetheimpacton the requirementsaswell asa roughestimation ofthecost in terms of money and time that is required to make the changes. Finally, once the change is implemented, the re- quirement document should be amended to reflect these changes and should be validated using a quality checking procedure.
Limitationsintheproposal:
The cost estimation carried out in the second step has a component of seeking customer approval. The information whichislackingatthisstageisthedecisionfactorsthatare considered bythesoftwarepractitioners andthe customers in order to approve or disapprove a proposed change.The negotiationprocess withcustomersinrelationto accepting orrejectingaproposedchangeasindicatedin[59]isbased on costandthere isnoindicationthat therisks associated withimplementingthechangewereconsidered.
(iv)Proposal:StrensandSugden[7]
The change analysis process introduced in [7]is based on two analysis methods, namely sensitivity analysis and im- pactanalysis.AccordingtoStrensandSugden[7],sensitivity analysis is used to predict which requirements anddesign areashavethehighestsensitivitytochangesinrequirements while impact analysisis used to predict the consequences of thesechangeson the system.The main outcome ofthis analysis is to reduce the associated risks in accepting and implementingRCs.Theprocessisasfollows:
1. Identifythefactorswhicharethecauseofchange.
2. Identifythoserequirementswhicharehighlyaffectedby thechange(thisinformationisacquiredfromtheprevi- oushistoryofrequirementsorintuition).
3. Identify the consequences of these changes - impact analysis
4. Undertakechangeanalysisonotherrequirements,design, cost, schedule,safety,performance, reliability, maintain- ability,adoptability,sizeandhumanfactors.
5. Decideonandmanagechanges.
Limitationsintheproposal:
Itisimportanttoperformchangeanalysis,howeverthereis noclearexplanationastohowtheimpactanalysisistobe carriedoutfortheelementsmentionedinstepfourandhow these factorswill be "equated". It is alsodifficult todeter- minetherippleeffectofthechanges,giventhatthereisno identificationoftheimplementationpartandthetestdocu- mentstobemodified.
(v) Proposal:Pandeyetal.[60]
Theauthorsproposeamodelforsoftwaredevelopmentand requirements managements. There are four phases in this process model: requirement elicitation and development, documentation of requirements, validation and verification of requirements and requirements management and plan- ning[60].ThemanagementofRCsarecontrolledbythere- quirement management and planning phase. However, ac- cordingtothefullprocessmodel,theactivitiesofthisphase areinterrelatedwiththeotherphases.Theprocessisasfol- lows:
1. Trackthechangesoftheagreedrequirements.
2. Identifythe relationship between thechanging require- mentswithrespecttotherestofthesystems.
3. Identify the dependencies between the requirements documentandotherdocumentsofthesystem.
4. Decisionontheacceptanceofthechange(s).
5. Validationofchangerequest.
6. Maintainanaudittrailofchanges.
Limitationsintheproposal:
Althoughacomprehensivesetofstepsisdescribed,thepa- per doesnotdiscussspecific schematicsin executingthese steps. Dependencies are considered butthere is no indica- tionoffurtherimpactanalysis.Itisnotclearhowdecisions willbemadeintermsofacceptingorrejecting achangeas theimpact analysisphase isnot clearlydiscussed.There is alsonoindicationofconsiderationofthecostorrisksasso- ciatedwithimplementingthechange.
(vi) Proposal:TomyimandPohthong[8]
The method introduced by Tomyim and Pohthong [8] for RCMusesUMLforobject-orienteddevelopment.Theauthors justifythe useof UMLdue tothe complexityof themany viewsanddiagramsitproduces,therebyaddingmorecom- plexity in managingchange. Therefore,a need arisesfor a processtomanagethechangesbetterusingUML.Thebusi- nessmodelusedinthismethodconsistsoftwoprocedures:
systemsprocedure (SP)andwork instructions(WI).The SP explainsthebusinessoperationfromthebeginningofatask until the end of the business process. The WI explain the way to operate any single task step by step. The method comprisesthefollowingsteps:
1. Identifythechangerequest.
2. IdentifytherelatedSPandWI.
3. Analysetheimpactonthesystemandreportontheim- pactedartefacts.
4. Makeadecisionbasedontheimpact.
Limitationsintheproposal:
The paperprovides severalsets of diagramsthat represent theactivitiescarriedoutbutdoesnotprovidedetails ofthe executionofthesteps.Adecisionontheimplementationof thechangeissolelybasedontheimpactanalysis.Thismay beproblematicifchangeprioritiesandcosts/effortelements arenottakenintoconsideration.
(vii) Proposal:Hussainetal.[61]
The method proposed by Hussain et al. [61] is based on the need to manage informal requirements changes. Such requirements are internally focused, potentially subversive to the development process andtherefore harder to man- age[61]. Accordingto theauthors, thereare manyreasons forinformalchanges,some ofwhichare: prematurelyend- ingrequirementengineeringactivities[62];attemptingare- quirements ‘freeze’ earlier than usual ina project [58]; as a consequence of work hidden by managers to get some- thingdevelopedby makingadhocdecisions andbypassing time consuming formalities [63]; additions made without theconsideration ofdelayintheschedule andprojectcost [64];andfailure tocreatea practical processto help man- agechanges [58]. Therefore,the authorssuggest that there isasmucha needfora methodformanaginginformal re- quirementchanges asfor formal requirementchanges. The methodcomprisesthefollowingsteps:
1. Identifyinformalrequirementchange.
2. Analysetheimpactofchange.
3. Negotiatethechangewithstakeholders.
4. If accepted, decide on whether to include in current phaseornext.
Limitationsintheproposal:
The process isnot verydifferentfromformal change man- agement techniques. The negotiation component after the impact analysis is a slight variation from the norm, how- ever it does not explicitly explain how the negotiation is done.Themaincomponentconsideredfornegotiationisthe impact analysis. However, the proposed method does not disclosehow theimpact analysisisconducted andwhatis consideredfortheimpactanalysisi.e.affectedcomponents, cost,effort,etc.
5.2. Formalprocessmodelsavailableforrequirementschange management
The processesintroduced aboveare notformalizedmodels for managingRC.ThissectionintroducesseveralRCMprocessmodels.
These models facilitate communication, understanding, improve- mentandmanagementofRCs. Typically,aprocessmodelincludes activities,whoisinvolved(roles)andwhatartefactsaretobeused [9,65].
The activities ofa changemanagement process modelare the actionsperformedduringtheRCMprocess thathavea clearlyde- fined objective,such asdetermining the change type which is a part of change identification [2,66,67]. The identification of the rolesin theseprocess models define theresponsibilitiesattached to each role. Forexample, ifthe role ofthe customer is defined by the process model,thismeans the responsibilitiesneed to be shared with the customer’s organization and its representatives.
Theartefactsaredocumentsandpartsoftheproductcreated,used and/or modifiedduringtheprocess[2,66,67].Byidentifying these artefacts aspartoftheRCMprocess, thismakes themanagement ofchangemoreefficientduetotheearlydetectionofwhat docu- mentationisgoingtobeaffectedbythechange.
Based on the information given in [16] and by individually studying several change management process models, ten such models[10,19,58,68–72]wereselectedfromtheliterature.Table6 compares these models based on their activities, roles and the artefactsused.Therearecertainlimitationstothesemodels,which aredetailedinTable7.
5.3. Agilemethodsavailableforrequirementschangemanagement
One of the most important aspects of agile methods is that changeisa built-inaspectoftheprocess [73].Sincesoftwarede- velopment is done in small releases, agile methods tend to ab- sorb RCM into these small iterations. The processes for manag- ing changecan neitherbe categorisedassemi-formalnorformal.
Because ofthe frequent face-to-facecommunication betweenthe development team and the client, the main reported changes in requirements are to add or to drop features [74,75]. The clarity gainedbyclientshelpsdevelopmentteamstorefinetheirrequire- ments,whichresultsinlessneedforreworkandfewerchangesin subsequentstages[75].Thereareseveralagiledevelopmentmod- els used, the most popular being Extreme Programming, Scrum, RUP, Lean, Plan-driven methods, Iterativeand Incrementalmodel andtheGeneralAgile model[76].Regardlessof theagilestyle of development used, the underlying processes have an inbuilt ca- pacitytomanagerequirementchange.Wewere abletoextract10 suchprocessesthatdealwithRCMasfollows:
1. Face-to-facecommunication[74,75,77–79]:
This is a frequent characteristic activity between the client andthe developmentteam[74,77,78].There is minimaldocu- mentation usinguserstories whichdoesnot requirelong and complex specificationdocuments. The frequencyof thisactiv- ityhelpsclients tosteer theproject intheir own directionas
the understandingofneeds tend todevelop andrequirements evolve [75,79].Therefore,the possibility ofdramatic andcon- stantchangesisreducedandthechangesthatdoariseareeas- ilycommunicatedduetothefrequentcommunicationbetween allthestakeholders.
2.Customerinvolvementandinteraction[73–75,78,80]:
In relation tosome ofthe changecause factors listed inRQ1, thereare severalelementstotheinvolvementofthecustomer organization.Inagilemethods,thereisa needtoidentifycus- tomersor representativesfromthe clientorganization forfre- quent collaborationto ensure that requirementsare appropri- atelydefined[78,80].Asdiscussedabove,thisleadstoabetter understanding of the systemrequirements and makes the in- clusionofchangeslesscomplicated.
3.Iterativerequirements[74,78,79]:
Unlike traditional software development, requirements are identified over time through frequent interactions with the stakeholders (face-to-face communication) [78]. The frequent interactions make this an iterative process. This allows the requirements to evolve over time with less volatility [74]. Thisgradual growthofrequirementsleadstolessrequirement changesandfarlesstimespentmanagingsuchchanges.
4.Requirementprioritisation[75,78–80]:
This isa part ofeach iteration inagile methods [75]. Ineach iteration,requirements areprioritisedbycustomerswho focus onbusinessvalueoronrisk[78,80].Incomparison,traditional requirements engineering is performed once before develop- ment commences. Iterativerequirementprioritisation helpsin RCM by comparing the needfor thechange withtheexisting requirements andthenplacing itan appropriate priorityloca- tionforimplementation.Asthisisdonefrequently,understand- ing the need forthechange andits priority becomesa much easierprocess.
5.Prototyping[74,78,81]:
Thisisasimpleandstraightforwardwaytoreviewtherequire- ments specificationwithclients,sothattimelyfeedbackisob- tainedbeforemovingtosubsequentiterations[81].Thisassists in RCM by identifying what new additions are required and whatexistingrequirementsaretobechangedorremoved.This reducescomplexand/orfrequentRCsinsubsequentiterations.
6.Requirementsmodelling[82,83]:
Onetechniqueusedinrequirementmodellinginagilemethods is goal-sketching, whichprovides goalgraphs that are easy to understand[83].Thisactivityisalsoiterativeandthegoalsare refined duringeach iteration[82].ThishelpsinRCMbycreat- ing unambiguous requirements that havea clearpurpose, re- ducingtheneedforchangeduringsubsequentiterations.
7.Reviewmeetingsandacceptancetests[78,84]:
Duringreviewmeetings,thedevelopedrequirementsandprod- uctbacklogsarereviewedtoensureuserstoriesarecompleted.
Acceptancetestsaresimilartoaunit test,resultingina“pass”
ora“fail” forauserstory.Thesetestsincreasethecollaboration ofallthestakeholdersaswellasreducetheseverityofdefects.
One of the reasonsfor RC isdefects in the endproduct. This practice effectively reducesthe need for changes dueto such defects.
8.Coderefactoring[85]:
This process is used for revisiting developed code structures and modifying them to improve structure and to accommo- datechange [86].Thispracticedealswithrequirementvolatil- ity insubsequent stagesof agile development[85]. Therefore, intermsofRCM,themethodallowsflexibility inhandlingdy- namicallychangingrequirements.
9.Retrospective[78,79,87]:
Thisprocesscomprisesmeetingswhichareheldafterthecom- pletion of an iteration [87]. These meetings often review the
170S.Jayatilleke,R.Lai / InformationandSoftwareTechnology93(2018)163–185
Table 6
Comparison of RCM process models.
Areas of change management
Model elements Process models
Activities Leffingwell and
Widrig [58] Olsen [68] V-Like [69] Ince’s [69] Spiral [69] NRM [10] Bohner [72] CHAM [70] Ajila
[71] Lock and Kotonya [19]
Change identification
Plan of change Y Y
Problem understanding Y Y Y
Determine type of change
Y Change analysis Change impact on
functionality
Y Y Y Y
Manage change hierarchy
Y
Solution analysis Y Y Y Y
Change effort estimation
Change impact on cost Y Y Y
Estimate effort Y
Cost benefit analysis Y
Other Negotiation process Y Y Y
Update document Y Y Y
Change implementation Y Y Y Y Y Y Y
Verification Y Y Y Y
Validation Y Y Y Y Y
Document impact, cost and decisions
Y
Artefacts Baseline, Vision
document, Use case model, software requirement specification
N/A Modification
report, Problem statement
Problem statement, Change authorization note, Test record
Implementation plan, Release plan
N/A N/A N/A N/A Vision
document, Use case model, software requirement specification, problem statement, change request form
Roles Customer,
developer, end user, change control board
N/A Maintenance
organization
Customer, Developer, Change control board
N/A N/A N/A Customer,
Devel- oper, End user
N/A Customer, Developer, End user
Table 7
Limitations of RCM process models.
Model Limitations
Leffingwell and Widrig [58] Implementation of change is missing. Verification is not available and therefore not able to ensure the stability of the system post-change. Documentation in the form of change requests and decisions are also missing which contributes to poor management and future decision making.
Olsen [68] Does not explicitly mention if there is any update to documents to keep track of the changes and also, there is no indication of the artefacts used and who is involved in the management process.
V-Like [69] Two key elements are missing, cost estimation and impact analysis.
Ince’s [69] The decision-making process is unclear. Verification is not done.
Spiral [69] Similar to Ince’s model, there is a lack of decision making and no verification. Does not mention who needs to be involved in this process.
NRM [10] Activities are at a very abstract level. Given that no artefacts and roles are mentioned, it is difficult to make use of this model in practice.
Bohner [72] A key element that is missing is the analysis of impact, which is a major part of the decision-making process.
CHAM [70] Although cost and effort is estimated, there is no analysis of impact on functionality which is an important factor for decision making.
The artefacts to be used are also not mentioned.
Ajila [71] There is no estimation of cost or effort. artefacts and roles are also not mentioned.
Lock and Kotonya [19] No aspect of change identification, which is critical in understanding the change.
Table 8
Challenges in traditional RCM resolved by Agile approaches.
Challenges in traditional RCM approaches Solutions provided by Agile approaches Communication gaps and lack of customer involvement causing ambiguous
requirements
Frequent face-to-face communication, customer involvement, and iterative requirements
Changes that occur due to over scoping which is a result of communication gaps and changes after finalizing project scope
Continuous customer involvement, iterative requirements, and prototyping
Change validations Requirement prioritisation through iterative processes, prototyping, and review
meetings and acceptance tests
Table 9
Challenges in Agile RCM.
Agile technique Challenges
Face-to-face communication The frequency of the communication depends on the availability and willingness of the team members. Customers may not be familiar with this agile technique and could be wary of it.
Customer involvement Failure to identify needed/correct customer representatives can lead to disagreements and changing viewpoints.
Requirement prioritisation A focus only on business value when prioritising requirements/changes can be problematic as there can be other factors to consider.
Prototyping Problems may occur if there a high influx in client requirements at a particular iteration.
Code refactoring Can generate code wastage, which increases the project cost.
User stories and product backlog
This is the only documentation used in agile methods as minimal documentation is a characteristic. This becomes a problem when there is a communication lapse or project representatives are unavailable. It is also problematic when requirements must be communicated to stakeholders in distributed geographical locations.
Budget and schedule
estimation Due to the nature of incorporating RCs in subsequent iterations, it is not possible to make upfront estimations, which can result in budget and schedule overruns.
work completed so far and determine future steps and re- work.IntermsofRCM,thisprovidesanopportunitytoidentify changes.
10. Continuousplanning[79]
This is a routine task for agile teams where the team never adheresto fixed plansbutratheradapts toupcoming changes fromcustomers.InRCM,thisfacilitateschangingrequirements inthelaterstagesoftheproject.
Agile development, different to traditional software develop- ment encourages changein every iteration.The iterative anddy- namicnatureofthisdevelopmentmethodpromotesconstantfeed- backandcommunicationbetweenthestakeholders.Therefore,the management of changes is continuous during the iterations. We haveidentified some ofthechallengesthat are inherentintradi- tionalmethodsofRCMthatcanberesolvedbyagilemethods.This isdiscussedinTable8.Whilstagilemethodsseemtohaveavery efficientwayofmanagingchange,wewere ableto identifysome practicalchallengesinsomeofthetechniquesdiscussedabove.The challengesarepresentedinTable9.
KeyfindingsofRQ2
Similarto anyother activityinthesoftwaredevelopmentpro- cess, RCM has alsobeen describedinrelatedwork asan activity thatneedstobecarriedoutindefinedsteps.Basedonthediscus-
sionthatformulatestheanswerforRQ2,thefollowingarethekey findings:
1) Academicwork hasidentifiedthat itisimportantto estab- lishaprocess formanagingchangewhere establishingand practicingadefinedprocess forRCM isattachedwithben- efits, such as the improvement of organizational processes andanincreaseinthepredictabilityofprojects.
2) Intermsoftraditionalsoftware development,two different approacheswere investigated,namely:1) recommendations for semi-formal methods of managing change; and 2) the formalprocessmodelsavailableforRCM.
3) Withsemi-formalmethods,itbecameevidentthatdifferent academicworktookdifferentapproachesandelements,and recommended different steps for managing change, which resultedinnoconsensusontheelements.
4) However,basedontheactivitiesonwhichtheelementsfo- cused,wewereabletoidentifythreeareasofmanagement:
changeidentification;changeanalysis;andchangeeffortes- timation.
5) Thesethree areaswere thenappliedto thetenformalpro- cessmodelsofRCMfoundintheliterature.Usingthisclassi- fication,wewereabletoidentifycertaincommonalitiesbe- tweentheprocessmodels,asillustratedinTable6.
172 S. Jayatilleke, R. Lai / Information and Software Technology 93 (2018) 163–185
Stakeholders Volale requirements
Change Idenficaon
• Elicitaon
• Representaon
Change Analysis
• Impact
• Priority
Change Cost/Effort Esmaon
• Cost
• Time
Verificaon
Update Verificaon
Verificaon
Verificaon
Update Verificaon
Verificaon
Update
Fig. 1. Change management process.
6) The formalprocess modelshavethreedistinctsections: ac- tivities– theactions/stepstakeninmanagingchange; roles – the stakeholders involved in carrying out the activities;
and artefacts – the documents neededin some of the ac- tivities(seeTable6).
7) We were also able to identify the limitations in both the semi-formalmethodsaswellastheformalmodels.
8) Giventhepopularityofagiledevelopmentintherecentpast andpresent,severalprocesseswereidentifiedthatdealwith RCM. Through this identification, we were able to discuss how agile methods can address some challenges in tradi- tionalRCMandalsothechallengesinagileRCM.
6. ResultsforRQ3:whattechniquesareusedforrequirements changemanagement?
The informationgathered in RQ2 will be used to formulate a framework to answer this question. Examiningthe processes in- troducedin RQ2 as a whole, we have identified three key areas ofapracticalapproachtomanagingchange.Fig.1illustratesthese areasi.e.changeidentification,changeanalysisandchangecostes- timation. It is important to understand how these areas can be practically implemented andwhat best practices are available in an organizational setting. As shown in Fig. 1, none of these ar- easarestandalone.Theyneedtocommunicatewitheachother in termsofupdatesandverifications.Thereasonforthisisthateach areahastheabilitytofeedinformationtoanotherarea.Forexam- ple,although changeanalysiscanbe undertakenoncethe change hasbeenidentified,thecostestimationmayprovideadditionalin- formationforthe analysisstep thatmaynothavebeenidentified previously.AgoodRCMprocessdoesnothavestepsthatarestand alone,rathertheyareinterconnectedwithinformationfollowingto andfrofromthesteps.Weusedthesearch expressionsA4 ORA5 ORA6 ORA7 ORA8 ORA9 ORA10 ORA11 (see Table1) toextract relevantliterature.
6.1.Changeidentification
Changeidentificationstemsfromseveralprocessesidentifiedin RQ2[57–59].Thisstepisimportantfortherestofthemanagement processasthestepstofollowwillbebasedonthecorrectidenti- ficationof theproblemspaceaswell asthe changerequirement.
According to Fig. 1, the change management process starts with changeidentification.Withinthisidentification,therearetwoma- jor activities,i.e. changeelicitation and changerepresentation.In orderto ensurethe correctelicitation of changes,the change re- quirementsneedtobeidentified.
The correct elicitation should then lead to identifying further details of the change and if possible, where in the system the change hasto be made. This signifies the representation part of theidentificationstep. Inmostsituations, thepersonnelinvolved
in this step will need to have continuous communication with thestakeholdersinordertoverifythat identificationisdonecor- rectly,asillustratedinFig.1.Throughtheliterature,weidentified two methods of change identification: taxonomiesand classifica- tion.Thefollowing sectionsdescribe thesetwomethodsandsev- eralothermethodsthatdonotfallunderthesecategories.
6.1.1. Throughtaxonomies
1) Researchanalysing changeusesa plethora oftechniquesin order to build a taxonomy that can be used to identify changesaswellastheirimpact.Onesuchmechanismisthe useofrequirementengineeringartefacts,suchasusecases.
The research done by Basirati etal.[88] establishes a tax- onomy of common changes based on their observation of changingusecasesthat can thenbe usedinother projects topredict andunderstand RCs.Theyalsocontribute tothis research space by identifying which parts ofuse cases are pronetochangeaswellaswhatchangeswouldcreatediffi- cultyinapplication,contributingalsototheimpactanalysis ofchange.
2) The taxonomy developed by Buckley et al. [89] proposes a software change taxonomy based on characterizing the mechanisms of changeand the factors that influence soft- ware change. This research emphasizes the underlying mechanismof changeby focusing on the technicalaspects (i.e.how, when, what andwhere) rather thanthe purpose ofchange (i.e.the why) orthe stakeholdersof change(i.e.
who) as other taxonomies have done. This taxonomy pro- vides assistance in selecting tools forchange management thatassistinidentifyingthechangescorrectly.
3) McGee andGreer [4] developed a taxonomy based on the sourceofRCandtheirclassificationaccordingtothechange source domain. The taxonomy allows software practition- ers to make distinctions between factors that contribute to requirementsuncertainty, leadingto thebetter visibility ofchange identification.Thistaxonomy also facilitatesbet- ter recording ofchange data which can be used in future projectsorthemaintenancephaseoftheexistingprojectto anticipatethefuturevolatilityofrequirements.
4) Gosh et al. [11] emphasize the importance of having the ability to proactively identify potentially volatile require- ments andbeing able to estimate their impact at an early stage is useful in minimizing the risks and cost overruns.
Tothiseffect,they developeda taxonomythat is basedon fourRCattributesi.e.phases(design,developmentandtest- ing), actions (add, modify and delete), sources (emergent, consequential,adaptiveandorganizational)andcategoriesof requirements(functional,non-functional, userinterfaceand deliverable).
5) The taxonomy established by Briand et al. [90] is the ini- tialstepinafull-scalechangemanagementprocess ofUML