forCooperativeSoftwareEngineering
AlfIngeWang,ReidarConradiandChunnianLiu
Abstract
ThispaperlooksathowCooperativeSoftwareEngineer-ing(CSE)canbesupported.Wefirstinvestigatetheprocessaspectsbypresentingatraditionalprocessarchitecturesup-portingCSE.Thenweproposeamulti-agentarchitectureforCSE,whichisbetterintermsofsimplicityandflexibility,andparticularlyusefulinmodellingandprovidingsupporttocooperativeactivities.WedescribeanindustrialscenarioofCSE,andshowhowtoapplytheproposedarchitecturetothisscenario.Thescenarioisbasedonasoftwaredevel-opmentandmaintenanceprocessforaNorwegiansoftwarecompany.
Keywords:Computer-SupportedCooperativeWork,CooperativeSoftwareEngineering,SoftwareProcessTech-nology,Multi-AgentSystems
1Introduction
Mostoftheworkinthesoftwareprocesscommunityhasbeenfocusingonhowtomakepeopleworktogetherinanorganisedandplannedway(partlypre-planned).Forhigh-levelprocesseswithlittledetails,itislikelythatitispossibletomakepeopleworkinthismanner.However,thedevel-opmentofsoftwareinvolvespeoplethatcooperatetosolveproblemsandtodoactualwork.Thesekindofprocessesareveryhardtosupportbytraditionalsoftwareprocesssupporttools,becausethefocuswillbemoreatcooperativeaspectsthanpurecoordinationofwork[22].Inthispaperweintro-duceanarchitecturetoprovidesupportforcooperativesoft-wareengineering.
Computer-SupportedCooperativeWork(CSCW)isamultidisciplinaryresearchareafocusingoneffectivemethodsofsharinginformationandcoordinatingactivi-ties.CSCWsystemsareoftencategorisedaccordingtothe
rangetoolsupportofsuchprocesses.TheresearchinthisareawillhelpthesoftwareindustrytochangetheworkstyletotakefulladvantageofWWW,andwillenrichtheresearchareaofSoftwareProcessTechnology(SPT)inwhichsofaracentralisedworkstylehasbeenoftenassumedimplicitly.Comparedwiththetraditionalarchitecture(asfoundinsystemssimilartoEPOS[22]),anagent-basedarchitectureisadvantageousintermsofsimplicityandflexibility,andparticularlyusefulinmodellingandprovidingsupporttoco-operativeactivities[6,5].Inthispaper,wetrytointegratetheareasofCSCWandSPTinamulti-agentarchitecture.FirstweinvestigatetheprocessaspectsofCSEbypresent-ingatraditionalprocessarchitecturesupportingCSE.Thenweproposeamulti-agentarchitectureforCSE,whichisanextensionandspecialisationofthemoregeneralarchitecture[17]forallCSCW.ThisarchitecturewillthenbeappliedtoanindustrialCSEscenario.
2ATraditionalProcessArchitecturesup-portingCSE
ThekeyissuesofCSEaregroupawareness,concurrencycontrol,communicationandcoordinationwithinthegroup,sharedinformationspaceandthesupportofaheteroge-neous,openenvironmentwhichintegratesexisting,single-userapplications.Allthesearerelatedtothesoftwarepro-cess.WithintheSPTcommunitytherehavebeenresearchoneachoftheissues,butfromaslightlydifferentpointofview(see,forexample[9,19,7,14]).ToseehowCSEissupportedbyatraditionalarchitecture,wepresentthepro-cesssupportinsuchaarchitecture.Thisarchitectureisusu-allyrealizedbyaProcess-sensitiveSoftwareEngineeringEnvironment,aPSEE,withaspectrumoffunctionalitiesandassociatedprocesstools.Thesupportisneededinthreemainareas;attheProcessModellingtemplatelevel(defin-ingprocessinPML),attheInstancelevel(addingdetailtoprocessmodel),andforEnactmentandmonitoring.
TofullfillthegoalasaprocesssupportarchitectureforCSE,someunderlyingcomponentsareneeded.Thesecom-ponentsmakesitpossibletoapplythearchitectureinadis-tributed,heterogeneousenvironment.First,aportableplat-forminfrastructureforPSEE-basedclienttoolsareneeded(candidatesareHTML/CGIandJava).Second,thearchi-tecturemustofferanintegratedenvironmentfortooloper-ationandcommunication(candidatesareCORBA[20]orDCOM[10]).Third,weneedfacilitiesfordistributionoftoolsandworkspaces(candidatesareCORBAorDCOM).Fourth,weneedacommunitymemoryorexperiencebasetostoretemplateprocessmodels(acandidateisExperienceFactory[1]).
Figure1presentsageneralPSEEarchitectureforCSE.Itscooperativesupportisprovidedthroughasharedworkspacewherefilesandpartsoftheprocessmodelare
Inter−ProjectExperience BaseevolutionWeb serverconfig.reuseplanPersistentRepositoryInternetInternetProject DBplannerclient−1plannerclient−2schedulerschedulerprocess engineprocess enginePrivatePrivateWorkspaceWorkspaceof client−2of client−1coop. plannerNegotiation / Coordinationclient for Project ManagerShared Workspace(common Lib, etc.)local process model3Multi-AgentArchitectureforCSE
TheprevioussectionshowshowcomplexaCSEenviron-mentcouldbe.SimilarsituationsexistinotherareassuchasDistributedArtificialIntelligence,BusinessProcessMan-agement,andElectronicCommerce.Nowadays,itisbe-lievedthattheMulti-AgentSystems(MAS)areabetterwaytomodelandsupportthesedistributed,open-endedsystemsandenvironments.AMASisaloosely-couplednetworkofproblemsolvers(agents)thatworktogethertosolveagivenproblem.ThemainadvantagesofaMASare:
Decentralisation:beingabletobreakdownacomplexsystemintoasetofdecentralised,cooperativesubsys-tems.Inaddition,manygroupsoforganisationsarein-herentlydistributed.
Reuseofpreviouscomponents/subsystems:Thatis,buildinganewandpossiblylargersystembyintercon-nectionandinteroperationofexisting(sub)systems,eventhoughtheyarehighlyheterogeneous.Thus,wedonotrequestacommonPML,sodifferentPMLscanbeusedindifferentsubsystems.
CooperativeWorkSupport:beingabletobettermodelandsupportthespectrumofinteractionsincooperativework,sincesoftwareagentscanactasinteractive,au-tonomousrepresentativesofhumans.
Flexibility:beingabletocopewiththecharacteris-ticfeaturesofadistributedenvironmentsuchasCSE,namelyincompletespecification,constantevolution,andopen-endness.
IntheremainderofthepaperwetrytomodeltheproblemareaCSEasaMASconsistingoffourcomponentsAgents,Workspaces,AgorasandRepositories.
3.1Agents
Inthispaper,anagentisapieceofautonomoussoftwarecreatedbyandactingonbehalfofauser(orsomeotheragent).Itissetuptoachieveamodestgoal,withthecharac-teristicsofautonomy,interaction,reactivitytoenvironment,aswellaspro-activeness.Thewholeprocess(andmeta-processes)ofCSEiscarriedoutbygroupsofpeople,usingtools,suchasproductiontools,processtools,andcommu-nicationtools.Eachparticipantcancreateasetofsoftwareagentstoassisthim/herinsomeparticularaspects.Therearealsosomesystemagentscreatedbydefaultfortheadminis-trativepurposeinthearchitecture.Wecanperceivethefol-lowingtypesofagents:
Systemagents:Thesecoverdefaultagentsforthead-ministrationofthemulti-agentarchitecture,suchas
creationanddeletionofagoras.Insomecasesmorespecificsystemagentsareneeded.Monitoragentstrackeventsinworkspacesandagorasinordertocol-lectrelevantmeasurementsaccordingtopredefinedmetrics.Repositoryagentscanprovideintelligenthelpforsearchingforinformation.
Localagents:Toassistinworkwithinlocalworkspaces.Theseagentsactaspersonalsecre-tariesdealingwithlocalprocessmatterssuchasproductionactivitiesaswellastodefine,plan,andenactprocessmodels.
Interactionagents:Tohelpparticipantsintheircoop-erativework.Suchagentscanbeviewedassharedpro-cessagents,andtheyincludefoursubclasses.Commu-nicationagentsareusedtosupportaspectrumofmorehigh-levelcommunicationfacilities.Allinformationflow,alsosimplecommunication,usesagentsastheunderlyingcommunicationmechanismtomakethear-chitecturecleanandsimple.Negotiationagentsver-balisetheirdemands(possiblycontradictory)tomovetowardsanagreementthroughtheprocessofjointde-cisionmaking[18].Coordinationagentssupport,e.g.,aprojectmanagerissuingawork-orderthatinvolvesagroupofdevelopers;orahigher-levelmanagerbe-ingcalledintomediatebetweennegotiatingagentstoreachanagreement.Mediationagentsareusedtohelpnegotiatingagentsreachanagreement.Indoingso,mediationagentsmayconsulttheExperienceBase(EB,cf.Section3.4),actaccordingtocompanypoli-cies,oraskaprojectmanager(human)forhelptomakedecisions.
3.2Workspaces(WS)
Aworkspaceisaplacewherehumanandsoftwareagentsaccessshareddata(usuallyfiles)andtoolswhichcanbeprivateorsharedbyagroupofpeople.Inaddition,in-teractionbetweenusersandsoftwareagentstakesplaceinworkspaces.Thesimplestformofaworkspacecanbeafile-systemprovidedwithservicestoreadandwritefiles.Amoreadvancedworkspacecanprovidefileversioning,ac-cesstoofsomerepository,awarenessservices,websupportetc.BSCW[4]isoneexampleofanadvancedwebbasedworkspaceimplementation.Agentscanaccessdataintheworkspaceeitherdirectlyorindirectlythroughtools.
3.3Agoras
Anagora[17]isaplacewheresoftwareagentsmeetandin-teract,butcanalsobeamarketplacewhereagents“trade”informationandservices.Agorasshouldprovideagentswithmoreintelligentmeanstofacilitatetheirinteraction.
Themainpurposeoftheagoraistofacilitatecooperativesupportforapplicationsandagents.Belowweproposethefollowingpreliminaryfunctionalitiesthatanyagorashouldsupport.
1.Inter-AgentCommunication:
Thisisnotsimpleinformation-passing,itrathercon-veysintentions,goals,beliefs,andothermentalstatestoformthefoundationofnegotiationandothercom-plexinteractions.Anagorashouldfacilitateagentstoannouncetheircapabilitiesandtogetintouchwithagentscapableofdoingspecifictasks.Thefollowingservicesareneededtofacilitateinter-agentcommuni-cation:
A:DeclineA:RequestB:PromiseB:AssertA:Declare12345B:CounterB:RenegeB:RejectA:AcceptA:WithdrawA:Counter67A:Withdraw8A:RejectB:WithdrawA:Withdraw9Figure2.Anexampleofspeech-actAnagorashouldprovideapredefinedsetofspeech-acts[23](conversationtypes),suchasproposal,counter-proposal,acceptance,rejec-tion,confirm,deny,informetc.Thevariousspeech-actstypeswilldefinehowagentscanin-teractwitheachother.Inmanycasesaspeech-actisrepresentedasastatetransitiondiagramastheoneshowninfigure2.Thespeech-actsactassharedprocessmodelforhowagentsshouldin-teract.Figure2showsstatesofaconversationbe-tweentwoagentsAandB.Statesareshownascircleswhiletransitionbetweenonestatetoan-otherisshownasarcs.Theterminalstate5indi-cateasuccessfulconversationandtheboldlinesshowsthepathofasuccessfulconversation.Anagorashouldspecifyacommonsyntaxformessagestransmittedthroughtheagora,sothattherecipientcananalysethecontentsofames-sage.
Anagorashouldspecifyacommonsemanticofanagentlanguage.Onepartofthissemanticisdefinedthroughspeech-acts,i.e.whatstatetransitionsofaconversationthatamessagewillcause.Thesemanticalsoensuresthatsoftwareagentsinterpretthesamewordssimilarly.
Anagorashouldspecifypragmaticsforagents.Thismeansthatagentsshallnotlietootheragentsandtheagentsintentionsshouldbehonest.
2.Inter-AgentNegotiation:
Theprogressofanegotiationdependsmainlyonthenegotiationstrategiesemployedbytheagentsin-volved,butagorasshouldprovidemechanismstomin-imisecommunicationoverheads.
3.4Repositories
Inourarchitecture,arepositoryrepresentsaninformationserverthatinthesimplestformonlyprovideservicestostoreandretrievepersistentdata.Amoreadvancedrepositorywillprovideservicesfordatamodelling,searchingthroughdata,comparingdata,computingdataetc.Repositoriescanbeaccessedeitherbytoolsorbyagents.
Themostfundamentalrepositoryistheproductionrepos-itorystoringversionedproducts.Otherrepositoriesmayin-cludeprocessmodels,experiences,user-error-reportsetc.Themoreadvancedrepositoryisthecommunitymem-oryacrossprojectswhichcanberealizedbyanExperienceBase.Storedinformationfrompreviousprojectscanthenbeusedtocreatemoreaccurateestimates,foreseeproblems,andimproveprocessesfornewprojects[19].
3.5TheCSEMulti-AgentArchitecture
Withinourarchitecture,thefourCSEcomponentsareinter-connectedandinteroperateasfollows:
1.Agentsarecreatedbypeopletohelpthemwork;byotheragentstoperformdelegatedwork;orbydefaulttomanageworkspacesoragoras.Notethatagentcreationisaprocessofinstantiationofthecorrespondingagentclassesbasedontemplates.2.Agentsaregroupedmainlyaccordingtopeoplegrouping.InCSE,wecanusuallyperceivevariousgroupsofpeopleworkingasateam.Themecha-nismwehaveusedtogrouppeopleandagentsisbyworkspaces.Sharedworkspacesareusedtogroupteamsofhumanandsoftwareagentsworkingtogether,whileprivateworkspacesprovidesupportforonehu-manandpossiblyseveralsoftwareagents.3.Interactionbetweenagentsisviaagoras.Agorascanbetoprovideagentinteractionbetweengroupworkspacesaswellasinteractionbetweenprivateworkspaces.Somesystemagentsarecreatedbyde-faulttomanagetheagora(creation,deletion,andbook-keeping).4.Agentsusesrepositories.Therearemonitoringagents,toperceiveeventsinworkspacesandagoras,tocollectrelevantdataandtostorethedataintoreposito-ries.Inthisway,thecommunitymemoryisbuilt.And
indecisionmaking,orwhensomenegotiationrunsintodifficulties,mediationagentscanhelpbyutilisingpre-viousexperiencefromsomerepository.
5.Withinagroupofagentsandtheirsharedworkspace,anyexistingprocessmodelsareallowed,andthetradi-tionalprocessarchitecturedescribedinSection2canbeapplied.Ontheotherhand,wecanalsoapplythisagent-basedarchitecturerecursivelytoagroupofagents.
WS1Agent Group 1GlobalRepositoryLocalReposi−toryLocalProcessModelTheDevelopmentprocessfocusesonworkthatisdi-rectlyrelatedtochangesofsoftwareproductsandtheplan-ningandschedulingofthesechanges.Thethreemainpro-cessstepsare:1)Releaseandupdateplanning,2)Schedul-ing,and3)Implementation.
TheMaintenanceprocessistriggeredbyaoneofthefollowingmaintenancereports;SoftwareQueryReports(SQRs):Errorreportordesired,ReleaseProblemReports(RPRs):Internalproblemreports,orProductionorders:Requestsfromcustomersforagivenproductorproductre-vision.
ThemaintenanceagreementsdefineprioritiessystemforSQRsandRPRs,withfivelevelsfromCriticaldownto
beMay
LegendAgoraLocal AgentNegotiation AgentWS2Agent Group 2LocalProcessModelCoordination AgentMonitor AgentMediate AgentWorkSpaceAgoraRepositoryFigure3.Multi-AgentArchitectureforCoop-erativeSE
Figure3showsthefourcomponentsoftheCSEarchitectureandtheirinterconnectionandinteroperation.Notethatthefigureshowsdifferenttypesofagentsandrepositories.Insection5wewillseeaconcretearchitecturewhenourap-proachisappliedtoaCSEscenario.
4Anindustrialscenario
Thisscenarioisbasedonthesoftwaredevelopmentandsoft-waremaintenanceprocessfromarealNorwegiansoftwarecompany,inthispapercalledAcmeSoft.Thecompany’sproductsexistonvariousoperatingsystemplatforms,in-cludingMicrosoftWindowsNTandvariousUNIXplat-forms.Inthisscenariowebysoftwaredevelopmentmeanthedevelopmentoffuturereleasesandupdatesofproducts,whereasbysoftwaremaintenancewerefertothecorrec-tionofdefectsinreleasedsoftware.Commontothesepro-cessesareaproductionandtestingprocesswhichbuildstheproductsforrequestedplatformsandthedeliveryprocesswhichcreatesthedistributionmediaandshipsproducts.Anoverviewofthemainactivitiesinthescenarioprocessisshownisfigure4.Correspondingresponsiblegroupsarelistedbelowtheactivityname.
CustomerDefect ReportA1ReportP0: 1 weekOrderP1: 1 month1)WSP2: next updateFirst−Support ProcessP3: next release2a)WSP4: new func.Maintenance Planning ProcessDB forclassificationAg1DefectforwardingReportsregisterestimateallocateOrder forBExisting DRConflict listEBchangeA2Market/Ag2orderTechnologyRequirements2b)3)WSRejectionA4.1ReportUpdate/Release Planning ProcessWSDWorkDevelopment ProcessOrdercodingCcorectionOrdermodule testforupdate per quatermergingDRrelease per yearwithNewPlatformNew DRA3A4.25)WSAccepted4)WSDelivery and Shipping ProcessUpdate /ReleaseProduction and QA ProcessGlobal testMake ExecutableCopyverificationForwardingFigure5.ScenarioofSoftwareMaintenanceandDevelopment
Eachgrouphastheirsharedworkspace.Eachgrouphasalsoitsownprocessmodel,whichmaybeanexistinglegacyone.Theprocessmodelsofdifferentgroupscanbeheterogeneous.Furthermore,somegroupsmayhavethisnewagent-basedarchitecturerecursively.Thatis,anagentgroupmaybespiltintoseveral(sub)groups,andthesharedworkspacesintoseveral(sub)workspaces.Inallcases,theinter-(sub)groupcommunicationismodelledexplicitlyviaagoras.Inthearchitecture,wecanobservedifferentkindsofinteractionagentsbelongingtovariousgroups.Examplesare:
Twonegotiationagents,onebelongingtotheFirst-Supportgroup,theothertotheMPG,communicateviatheagoraAg1.BecausewhentheFirst-SupportOf-ficeconveysauserrequestforachangeandthedesireddeadlineforthenewrevision,theMPGmayormaynotauthorisethechanges(accordingtotheirconfigurationcontrolpolicy).Eveniftheplanningofficeagreestoauthorisethechanges,adeadlineneedtobenegotiated.Inotherwords,theDefectPriorities(P0–P4)showninfigure5aretheresultofnegotiation,ratherthanasim-pleinformationpassing.
Twonegotiationagents(onebelongingtotheURPG,theothertotheMPG)communicateviatheagoraAg2.Seebelowfordetaileddiscussion.
SomecoordinationagentsareobservedinbetweentheMPG(ortheURPG)andtheDevelopmentTeam.Thismeansthatthechange-orderaregiventoagroupofdevelopers.SotheMPGneedstocoordinatethede-velopmentwork.Thechange-orderwillactualcausechangestothelocalprocessmodels.Inthisperspec-tivewecanseethecoordinationofachangeorderasaprocessmodelchange.
Othernegotiationand/orcoordinationagentscouldbeobservedinthefigure,butforsimplicitywejustshowthemassimplecommunicationagents.
AcmeSofthasadistributedrepositoryusedasanEBofthecompany.TheEBholdsinformationaboutprevi-ouslycompletedprojectsandproductsandaboutpreviousupdates/releasesofthecurrentproducts.Typicaldataare:theprojectprofiles,evolutionpatterns,performancemet-rics,andprocessmodels.
Let’shaveacloserlookattheagoraAg2.Therearevari-ousinter-agentactivitiesoccurringinortransmittedthroughit.Inthefollowing,weexplainsomeoftheseactivities:1.NegotiationandcoordinationbetweentheURPGandtheMPG.First,rememberthatthemaintaskoftheURPGistoplanthenextupdateandthenextreleaseofacom-pany’sproducts.Indoingso,theURPGshouldmakedecisionsonissuessuchaswhatdefectsshouldbefixedandwhatnewfunctionalitiesshouldbeincludedinthenextupdate/release.Whattoincludeisbasedonmar-ketanalysisandfeedbackfromusers(prioritisedde-fectreports).Naturally,marketandtechnologyanal-ysiscontributestothisdecision-making.Therelevantinformationispresentedinusers’defectreportswiththepriorityP2–P4,whichisreceived,analysed,andstoredbytheMPG.Basedonthisinformation,theMPGwouldgiverequests,suggestionsoradvicetotheURPGaboutthecontentsofthenextupdate/release.Ontheotherhand,theURPGmayaccept,reject,orne-gotiatetheseproposals.Alltheseinter-agentactivitiesarecarriedoutthroughtheagoraM2.
Secondly,rememberthatthesamedevelopmentteamisresponsiblebothformaintainingexistingproductsandfordevelopingnewupdates/releases.Herewehaveaconflictinresourceallocation,andnegotiationisnec-essary.
2.MediationinthenegotiationbetweentheURPGandtheMPG.Asindicated,insolvingaresourceallocationconflict,theMPGandtheURPGmaynotbythemselvesbeabletoreachanagreement.E.g.,theMPGwouldliketo“lend”programmerAtofixanerrorinaproduct
foruserBthatdemandsanimmediatereaction.Ontheotherhand,theURPGwouldliketohaveAasthechiefprogrammerthefullnextyearforaplannedupdate/release.Theproblemisthateachnegotiatingagentviewstheissueonlyfromitsownangle,basedonlocalexperience.Furthermore,insuchareal-lifedomain,itishardtoevidencethatalgorithm-basedne-gotiationstrategiesalonecansolvesuchproblemsrea-sonably.Humaninterventionbyamanagerofthecom-panymaybenecessary.Howmuchhumaninterven-tiontheagentwillneed,dependsofthedefinitionoftheagent.Inthiswayitispossibletotailortheagenttotheneedsofthecompany.Itshouldbepossibletostate,e.g.,thatresourcenegotiationformorethanacer-tainamountofmoneymustbedonethroughhumanin-terventions.Themediationagentworksonbehalfofthehigher-levelmanager,inordertoproposeanover-allbeneficialsolution.Indoingso,themediationagentmayutilisepreviousexperiencesbysearchingtheEB.Forexample,iftheEBshowsthatuserBhasbeenan“important”customerinthepast,themediationagentmaystandbytheMPGandpersuadetheURPGtocon-sideranotherchoiceaschiefprogrammer.
6ConclusionsandFutureWork
Inthispaperwehaveintroducedanagent-basedarchitecturetosolveCSEproblems.Thisarchitectureconsistsoffourmaincomponents:Agents,Workspaces,AgorasandRepos-itoriesAgentsprovideflexibleanddynamicsupporttoco-operatingusers,aswellashelpfordoingevery-daywork.Agentscaneasilyrespondtoachangingenvironment(learn,adoptbasedonexperiencesintheExperienceBaseetc.).Itiswidelyacceptedthatrealsoftwareprocessesevolveovertime,soourprocesssupportmustadoptandcopewithsuchchanges.Toenableagentstocopewithprocesschanges,theywillneedtolearnfrompriorexperiences.Inourarchi-tecturethisisintroducedthroughrepositories(Experience-Bases)aswellasagentscanlearnontheirown.Agorasandworkspacesareintroducedtosupportagentinteractionandgroupingofagents,respectively.
Ourarchitecturehasbeenappliedononespecificsce-nario.Webelieve,however,thatourmulti-agentCSEarchitectureisapplicableonvarioussituations,processesandorganisations.Oneconcreteexampleistosupportmeta-processactivities,suchasdiscovering/planningpro-cessmodels,negotiationabouttheprocessmodelandthereal-worldmodelandassignmentofresourcestoainstan-tiatedprocessmodel.Ourarchitecture’smaincontributionistogiveprocesssupportwheretraditionalSPTsoftenfailinrespectchangingenvironmentandunexpectedevents.Fur-therworkwithdescribeformalities,implementationofpro-totypes,andexperimentwithmoreindustrialscenarioswill
showifthisisthecase.AnotheroutcomeofourresearchwillbetoidentifydisadvantagesofMAS.
7Acknowledgement
TheauthorsofthispaperwanttofirstofalltothankMih-hailMatskin,SobahAbbasPetersen,MonicaDivitini,HeriRamampiaroforsuggestionsanddiscussionsregardingthepaperandabigthanktoTorgeirDingsøyrandJoarØyenforreadingthroughandgivingusefulcommentsonthispaper.
References
[1]VictorR.Basili,G.Caldiera,FrankMcGarry,R.Pa-jerski,G.Page,andS.Waligora.TheSoftwareEngi-neeringLaboratory–anOperationalSoftwareExperi-enceFactory.InProc.14thInt’lConferenceonSoft-wareEngineering,Melbourne,Australia,pages370–381,May1992.[2]IsraelBen-ShaulandGailE.Kaiser.Aparadigmfor
decentralizedprocessmodeling.KluwerAcademicPublishers,Boston/Dordrecht/London,1995.[3]IsraelBen-ShaulandGailE.Kaiser.AParadigm
forDecentralizedProcessModeling.KluwerAca-demicPublishers,Boston/Dordrecht/London,1stedi-tion,1995.[4]R.Bentley,T.Horstman,andJ.Trevor.TheWorld
WideWebasenablingtechnologyforCSCW:ThecaseofBSCW.ComputerSupportedCooperativeWork:TheJournalofCollaborativeComputing,7:21,1997.[5]AnthonyChavezandPattieMaes.Kasbah:AnAgent
MarketplaceforBuyingandSellingGoods.InPro-ceedingsoftheFirstInternationalConferenceonthePracticalApplicationofIntelligentAgentsandMulti-AgentTechnology,London,UK,April1996.[6]AnthonyChavez,AlexandrosG.Moukas,andPattie
Maes.Challenger:AMultiagentSystemforDis-tributedResourceAllocation.InProceedingsoftheInternationalConferenceonAutonomousAgents,Ma-rinaDelRay,California,USA,1997.[7]ReidarConradi,MarianneHagaseth,andChunnian
Liu.PlanningSupportforCooperatingTransactionsinEPOS.InformationSystems,20(4):317–326,June1995.[8]ReidarConradi,M.LetiziaJaccheri,andCristina
Mazzi.Design,UseandImplementationofSPELL,alanguageforSoftwareProcessModelingandEvolu-tion.InProc.SecondEuropeanWorkshoponSoftware
ProcessTechnology(EWSPT’92),Trondheim,Nor-way.,pages196–214,1992.
[9]ReidarConradi,EspenOsjord,PerH.Westby,and
ChunnianLiu.InitialSoftwareProcessManagementinEPOS.SoftwareEngineeringJournal(SpecialIssueonSoftwareprocessanditssupport),6(5):275–284,September1991.[10]MicrosoftCorporation,Redmond,andWashing-ton.MicrosoftDCOM:ATechnicalOverview.web:http://www.eu.microsoft.com/win-dows/downloads/bin/nts/DCOMtec.exe,1996.[11]S.Dami,J.Estublier,andM.Amiour.APEL:AGraph-icalYetExecutableFormalismforProcessModeling.InProcessTechnologyeditedbyE.NittoandAlfonsoFuggetta,pages61–96,PolitecnicodiMilanoandCE-FRIEL,1998.KluwerAcademicPublishers.[12]YaronGoldberg,MarilynSafran,WilliamSilverman,
andEhudShapiro.ActiveMail:AFrameworkforIntegratedGroupwareApplications.InD.Coleman,editor,Groupware’92,pages222–224.MorganKauf-mannPublishers,1992.[13]J.Grudin.Computer-SupportedCooperativeWork:
HistoryandFocus.InIEEEComputer,number5in27,pages19–26,1994.[14]M.LetiziaJaccheri.ReusingSoftwareProcessMod-elsin.InTheTenthInternationalSoftwareProcessWorkshop,6,1996.
[15]C.LiuandR.Conradi.ProcessViewofCSCW.
InProc.ofISFST98,OconTechnologyApplication,page12,Bremen,Germany,15-17September1998.InternationalWorkshoponIntelligentAgentsinInfor-mationandProcessManagement.[16]ErnstLutz,Hansv.KleistRetzow,andKarlHoernig.
MAFIA-AnActiveMail-Filter-AgentforanIntel-ligentDocumentProcessingSupport.InS.GibbsandA.A.Verrijn-Stuart,editors,IFIP,North-Holland,1990.ElsevierSciencePublishersB.V.[17]M.Matskin,M.Divitini,andS.Petersen.AnArchitec-tureforMulti-AgentSupportinaDistributedInforma-tionTechnologyApplication.InInternationalWork-shoponIntelligentAgentsinInformationandPro-cessManagement,page12,Bremen,Germany,15-17September1998.[18]H.J.Muller.NegotiationPrinciples.InFoundationsof
DistributedArtificialIntelligence,pages211–230.Wi-leyInterscience,1996.
[19]MinhNguyen,AlfIngeWang,andReidarConradi.
TotalSoftwareProcessModelEvolutioninEPOS.InProceesingsICSE’97,Boston,USA,May1997.[20]OMG.CORBAComponents:JoinInitialSubmis-sion.ftp:ftp://ftp.omg.org/pub/docs/orbos/97-11-24.pdf,1997.[21]W.J.Orlikowski.LearningfromNotes:Orga-nizationalIssuesinGroupwareImplementation.
InProceedingsoftheConferenceonComputer-SupportedCooperativeWork,CSCW’92,pages362–369,Toronto,Canada,1992.TheAssociationforComputerMachinery,ACMPress.[22]AlfIngeWang,Jens-OttoLarsen,ReidarConradi,
andBjørnMunch.ImprovingCooperationSupportintheEPOSCMSystem.InVolkerGruhn,editor,Proc.EWSPT’98,London,18-19.Sept.1998,page17,September1998.[23]T.WinogradandF.Flores.UnderstandingComput-ersandCognition;ANewFoundationforDesign.InAblex,1986.
因篇幅问题不能全部显示,请点此查看更多更全内容