103
acceptthemormakeotherchangestotheresult.Inthemergeprocess,theexactuser
changesthatledtoconflictswouldallbeaccessibleandlinkedtotheprecisecontextin
whichtheyoccurred.
APalimpsest-basedmodelencodesmuchmoreinformationabouttheprecisechanges
contributingtoaversionandtheirrelationships,butabranchingsystemdoesnotneedmost
ofthecapabilitiesofaPalimpsest-basedmodel.Forabranchingsystemwithoutmerge,the
versiongraphisisomorphictothesubsetrelationshipsamongthechangesetsrepresenting
theversions,withsuccessorrelationscorrespondingtodescendingchainsunderthesubset
relationbetweenchangesets.Oncemergeoperationsandconflictresolutionareadded,this
isomorphismbetweentheversiongraphandthesubsetrelationonchangesetsceasesto
hold,sinceadescendantofaversionmaylacksomeconflict-producingchangesofitspar-
ent(s).
Onespecialcaseoftree-structuredversioningsystemsisevenmorerestrictive.Somesys-
tems(ofwhichtheearliestwasAugment/NLS(Engelbart,Watsonetal.1973;Engelbart
1984))constraintheversiongraphtobeasimplesequenceofhistoricallyrelatedrevisions.
Thesesystemscanbemodeledinthesamewayastree-structuredsystems.Inthiscase,a
seriesofversionscorrespondstoachainofchangesetsunderthesubsetrelation.
5.1.2 Trackingstatesandpersistentaddressing
Likeanychange-orientedrepresentation,thePalimpsestmodelallowsamuchlarger
numberofpotentialconfigurationstobeeasilydescribedandrelatedthanstate-oriented
systemscan.Anycausally(orminimally)consistentsetofchangesdefinedaP-sequence
thathasawell-definedstate.Anytwoversionsrepresentedbychangesetscanbemeaning-
fullycomparedinanumberofways:
ThedifferencesbetweentwochangesetsAandBcanbedeterminedbyexaminingthe
setsA –B,B A,andA ˙ B.
104
Thereasonforasemanticorsyntacticconflictcanbepreciselydeterminedbyexamining
thechangesinquestionforconflictingaddresses,overlappingoperationscausedbya
merge,missingchanges,andotheractualorpotentialproblems.
Thedetailedhistoryofasubsequenceofadocumentcanbedetermined.Theaddressesof
aparticularregionrevealwhatinsertionscreatedeachitem,whatmoveshavechanged
itspositionandwhatcopyoperationswereappliedtoit.Findingotheroperationsthat
affectthatregionallowsthedeterminationofwhatmighthavebeenintheregionbut
wasdeletedormovedelsewhere.
Themanagementofpersistentoffsetsandregionsinasequenceisgreatlyfacilitated,
evenacrossradicalchangesandrearrangements.BecausetheaddressspaceinaPalimp-
sestsequenceisstable,rangescanbestoredandtheircontentslocatedlaterevenasthe
sequencechanges.
Theuseofsetoperationsondeltasinchangesetsiscommonforchange-orientedsys-
tems,althoughmanyofthesameeffectscanbeachievedinsystemsthatarenotstrictly
change-oriented.GoldsteinandBobrow’sPIE(GoldsteinandBobrow1984)systemtookad-
vantageofthefactthatsoftwareiscomposedofmanyindependentunits,eachwiththeir
ownhistories,tocreateamoreflexiblewayofcombiningchanges.Sincetheywereworking
withinanintegratedSmalltalkdevelopmentenvironment,theywereabletotrackchangesto
individualmethods,ratherthantosourcefiles.PIEwasworkingatafinerlevelofgranular-
itythanthetypicallargesoftwareproject;theobjectswhoseeditinghistoriesbeingtracked
weresignificantlymoreindependent,providinginterestingoptionsforversionselection.
Theygroupedthelogicalchanges(whichwereupdatedobjectmethods),intoindependently
combinablecontexts,orlayers.Laterworkonthemanagementofevolvinghypertexts
(CampbellandGoodman1987;DelisleandSchwartz1987)modifiedandgeneralizedtheno-
tionofcontextsandintroducedadditionalmanagementfunctionstobettersupportasyn-
chronouscollaboration.
Previous Page Next Page