26
areinherentlydetectablebyautomaticmeans,sincetheyinvolvetheviolationofsystem-
visibleconstraints.
Semanticconflictsaregenerallynotdetectablebyautomatedmeansbecausetheydepend
cruciallyonhumanknowledgeandhumanintent.Oneexample,alreadymentioned,isthe
simultaneousdetectionofaredundancyinashareddocumentbytwocollaborators.Each
collaboratornotesthattwoparagraphsrepeatthesamematerial,butoneauthordeletesthe
firstredundantinstance,whiletheotherdeletesthesecond.Insuchaninstancethemerged
documentwouldhavenodetectablesyntacticconflict,sinceentirelydifferentparagraphs
weredeletedbythetwoauthors.However,apotentiallyserioussemanticerrorhasbeenin-
troduced,sincepotentiallyimportantinformation(importantenoughthatitwaswrittenout
twice!)hasbeencompletelydeletedfromthedocument.Heuristicsareoftenareasonable
waytodetectprobablesemanticconflictsasanaidtousers.Forinstance,non-conflicting
changesbydifferentpeopleinthesamewordorsentencemayfrequentlyindicateaseman-
ticproblem.
Applicationconflictsareactualorpotentialconflictsthataspecificapplicationmayneed
todetecteventhoughtheyarenotsyntacticconflicts.Onecommonkindofapplication
conflictisdetectedbytheapplicationofasemanticconflictheuristic.Differentlevelsofde-
tectionmaybeappropriateatdifferenttimes,dependingonuserandapplicationtasks,and
thesetypicallyneedtobeunderusercontrol(Neuwirth,Chandhoketal.1992).Inatext
editor,somesuchsituationsshouldprobablyalwaysbeflagged,because,evenwhensyntac-
ticconflictisabsent,semanticconflictislikely.Anotherusewouldbethedetectionofap-
plicationconstraintsthatarespecializedinsomeway.Somedrawingapplicationsimpose
conditionsontheformofthedrawings.Forinstance,acircuitdesignapplicationhasany
numberofspecializedconditionsthatmustbeimposedonaschematicinorderforittobe
legal,andcheckingtheseinvariantswouldbeanimportantpartofmergingchangesinsuch
aneditor.MunsonandDewan(MunsonandDewan1994;MunsonandDewan1996)have
27
consideredtheusermanagementofsuchconstraintsbytheuseofprotectionmatriceswhich
specifymergepermissionsbasedonthecombinationofchangetypeanduseridentityorrole
inthecollaboration.
Mergingallowsmoreflexibleupdatesincollaborativeworksituationswherechangeswill
bemadesimultaneouslytothesamedataobject.Semanticconsistencycanultimatelyonly
bedeterminedbyaperson,sothatinthegeneralcase,fullyautomaticmergingthatalways
producesthecorrectresultisimpossible.However,automaticmergefacilitiesshouldalsobe
abletopreserveasmuchoftheindividualeditinghistoriesbeingmergedaspossible,sothat
thenumberofsystem-requireduserinterventionscanbekepttoaminimum.Editinghisto-
riesshouldbecorrectedwhenauserneedstomakeanadjustment,whenthemergingsys-
temdeterminesthatitneedsuserinput.Thismeansthatautomaticprocessingmustbesup-
portedbyanyfullygeneralmodelofmerge.
Thiscreatesastrongpressurebothfortheflexibilityandthedeterminacyofanymerge
algorithm.Maximumflexibilityisachievedbyseparatingchecksforprobableeditingcon-
flictsfromtherulesforresolvingeditingoperations.Italsorequirestheoptiontoallow
automaticresolutionofsyntacticconflicts.Forinstance,independentlymadechangescanbe
orderedbyanyconsistenttie-breakingprocedure(perhapsbasedonuniquetimestamps).In
situationslikeinteractiveeditingitmaybemoreimportanttogetadeterministicandun-
ambiguousresult,thantoproducethe“correct”result,especiallyifthatrequiresinterrupt-
ingtheusertoresolveaconflict,orwaitingforthenetworktofinishsomesynchronization
protocol.Inthecaseof“tie-breaking”themostimportantcharacteristicoftheprocedureis
thatitproduceconsistentresultsforindependentapplications,withoutrequiringactive
communicationatthetimeofconflictresolution.
Onerealproblemwithanyformofmergingisthepossibilityofsurprisingresultswhen
operationalconflictsareresolved,orwhenasynchronouslyexecutedoperationsareinte-
gratedintoaneditinghistory.Inthesynchronouseditingcasesomeoftheanomaliesare
Previous Page Next Page