• Tidak ada hasil yang ditemukan

A systematic review of requirements change management

N/A
N/A
Protected

Academic year: 2023

Membagikan "A systematic review of requirements change management"

Copied!
23
0
0

Teks penuh

(1)

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.

(2)

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

(3)

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

(4)

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.

(5)

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

(6)

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.

(7)

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

(8)

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

(9)

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.

(10)

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

Referensi

Dokumen terkait

A close examination of people’s relationship with their past provides background for their current nostalgia (community gathering, Innu way of life, spirit of resistance),

Berdasarkan hasil kegiatan pengabdian Kepada masyarakat mengenai sosialisasi budidaya tanaman porang menunjukkan bahwa para peserta belum mengenal jenis tanaman porang