i . , ,, v , s.., -...

21
I . , ,, v, ,4 \ , .0... ”,-,,.. s..,.....

Upload: dangliem

Post on 16-Mar-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

I . , ,, v , ,4 \ , .0... ”,-,,.. s..,.....

PRA~lCES

Groupware reflects a change inemphasisfrom usingthecomputerto solve problems to using thecomputerto facilitatehuman in-teraCtiCfIC.This article describescategoriesandexamplesof group-ware and discussessomeunderly-ing researchand developmentis-sues.GROVE,a novelgroupeditor,isexplainedin somedetailasa sa-

lientgroupwareexample.

SOME ISSUES ANDEXPERIENCES

C.A. Ellis,S..I. Gibbs, and

C.L.ReinsOclctv dc[]ulreb [11”.t, “f 1[,character fron) the ways II,which people inter.ct Although the C<,mPUtCl ,,,the home or otfice IS noucommonplace, CI”r ,nt.ra.t,on w,th c>n. .n<, ther I,more or 1.s, the ,.mc [I(>was ,[ was a decade ago A,the technologies of com-puters and other forms ofelectronic conlnlun]catlor,

c(,,,tc,nue to con>erge, h“we\cr,p.c>ple wdl .<>”t,”ue t<, Interact I““CM a“d d~ffcrent ways

One probable outcoIrIe of lf,t,:~ technological nlarrlage IS tbe ele.J trol}lc ,,orkpl..e—an c,rg.n,z.t]c,”~ w,dc system th.t ,ntegr.te~ ,nr<>r-: nl.t,on pr<,cess,ng a“d c{>m”lu IIIca-< tlon ..t,v,t,e~ The study of suchJ \V5tC,n, ,, pa, t of a “CM rx]ulttd~sc,-~ phr,ar\ field f,.mpul?.-supp..ted~ Cooperatt.e work (Ls(,w) [29]E Dr.w,ng c>n the cxpert,<c and col

Iabor.t,”n of mdny Spe’,.ih,t,, ,“.I”d,ng s<,c,al sctet>t,sts ar]d c“mputer ~c,c”t)sts, C.SLW looks .t b<,w

gl(~uPs WOrk arid seek, t“ d,scove,bow tecb”ologv (espe.~.lly c“”lput-CrS) CaIl help the”, -ork

Lommerc,.1 C.SCW product,,

such .s [he Coordinator’” [24] and,,tbcr PC-based software [67], are,)fte” referred to a?, eXamplCS of

fl~flPwareThistermIS frequ~ntly“seal ahno~t synonymously ~tthLS(,W technology (se. [8] “r [44]f<)r general des.rlpttc>n, “f, andstrong rnot,v.t,”n for gro”pware)Others dcfi”e gro”pware as softw.,, f<,, ,mall or “arrowly f(n”sed

gr~upq. n~~tOrgarll~atlOn-wldc qUP-p~,rt [~ol Wepropo\e a somewhathroader V,CM, suggest,”g th. ~

, grOupw~rC he viewed as the Ll~SSOfdPPhL~tl<~(ls, fOr s~lall grCJUP~andfor “rg.”,zat,ons, arlslng from themerg,”g of co”,puters .nd large,“fc,lmat~o” bases and .c>mmu ”Ica-t>ons tech”oiogy These apphc.-ttorls nl.v <jr m~y not speclficaltysupport c<n>pcrat,””

1 hts art)cle explores gt<>upw.rc

II) tbtslarge, ,cn\e a“d dehn..tesclasses of des,g” ,s~”es taclnggro”pw.re developers It IS d,vlded,“tc, C,ve “Ialrl secttons First, theOverview defines groupw.re II,tern)s of . group’s c<I”Imo” taskand Its need f<,. a sbared e“v,ro”m.nt S,nce our de finlllon ofgl<lup~are .overs . ra”ge ,,f SY5.teIns, the se.<>nd scct,o” prov,des .Taxonomy of Group”are Systems.The th,rd descr,bes the w~delyr.ng, ng Perspectives of those whobudd tbcsc systems ‘1 he fo”rth \e..t,<,n, Concepts and Example, ,ntr<,-duces some common grc>upwareconcepts, .nd .pphe~ these toGROVE, c>nc example of a gro”pw,are system The fifth section .“nta~n~ a d,scusslo” of some D.sqp,Iss”es fac~”g groupware de,,g”er,ar)d developer, Our empbasls IrIth,s sect,<>” ,, “pO” system-level ,sSUCSw,th,” ,Cal-t,me ~.O”pW~~~ 1,,our LLI”cl”z,on to th,s art,cle weboth ,?SUe a “ote of .aut,on ‘<,”.cernlng (he dlffi.ulty <>fdcvelop~”gSUCCCSSf”lg,””p~a,~ due to socialand “rg.n,zat,o”al effects, ar,d ,n

39

OuewiewM<I~t?<,ftwarr systcrr,s <,111)supp,),[the Interaction betwten a user aridthe system Wbether prepai-I,Ig adocume”t, ~UC,~,”g a da(ahase, oreve” play,”g a v,deo ga”]e, the use,,“teracts solely w]d, the c<)rnpute,FVC” systems des,gned f<,, ,nult,.user .pphcatt<>n~. such as oftice trl-for,r)atlon ,y~tems, pr<,vlde rntr>l-111.1 5upp<>It for user-to-user,nteract,<]n 1h,s type of ,LIpp<Irt15clearly needed, \InLt a s~gndica”tpOrtlOn of. persc>n’sactlv,t,es occurin a group, r.tber tban an tt>dlv~d-ual, .ontext As we beg,. to focus011bow to s“pp<)rt th,s grO”p l“ter-act,on, we m“st attend to three key.TCdS C(lmmunlcatlon, .(dlab(]ra-t,<,n, and coordlrlat,(,”

me rm90rMnce wCOmmu.lmlm. mm—m.Ona —I”atlml

C<>rrlp,,ter f,ased 0, corrlpute,med,.ited c<]mn,”rllcatlo”, sucb a,elcctrc)”,c mad, 1s not f“lly ,nte-grated w,th other fornls ofcc>mmu-nlcatlc)n Tbc prBInard) asynchr(].“o”s, text-hased world <>felectron~cmad and bullct,n boards exists separaLely from tbe synchronous worldof telcpb<,”e and face-to-f.,. c“”.versat,o”s Whale appbcat,c)”s s“chas voice mad (IFtalk programs hlurthis dl,t,nct,”” somewhat, there .,.stallgaps betwce” the asynchror]o”sarid the synchrc]n<,us worlds Onecannot tra”sfer a docunlent between two arbitrary pb<,”e num-bers, for example, and ,t ISuIIcommon to Orl@nate a telepborleconversation from a workstatlol]Integrating telecOmnlunlcatlOnsand computer processing techn(>lo-

gles WIIIhelp bridge 1he~e gapsSlmdar to communlc.tlon, ccll-

laboratlo” ISa cornerst””c <)fgr<~”pacttvlty kffe’t,vc collabrattOrldemarlds tbat people sbare ~Ilfor.matlOn U“fort””ately, c“rre”t In-fc>rmatton syste,ns—database ~ys-tems ,n partlc”l.r—gc> t<> gredtlengths to InsulAte “~ers fr”m each

other A, d,, C,.,,, pi.> cur,,tdcr Lwodes,grlers work)ng with a CADdatabase SehloIII are they able t<,s,m”ha”e”t, sly m<>d,fy d, fferent

Pdrt~ (If the sdme (>bject and beaware of each other’s changes,rather, dley rrlust cbc.k tbe “b~ectIn arid out .nd tell eacb <,tbcr whatthey ha,. d<)ne Ma”y tasks rrq”,rcarl ever, fi”cr gra”ular,ty (If sbar-1rlg What ISneeded are shared erl-v,,”””,cnts that u,,oblruslvely offerup-to-date group .or, text .nd .,pbcIL rloldicatlon of each u~cr’~ ac-tlorls wbcn app,<,prlate

The effcct~vc”ess of corrlrr,”rl,..tLon alld collaboratlo,l can be .nbarl.ed ~f a gro”p’s act,v,t~es arccoordlr]ated W,tb<>”t c<,<,rd,”att<,t,,fur example, a team <If progra”l-mcrs C>FwrItcr5 wdt ofte” erlgage IrBc<>nfl,ct,ng or repetitive actIorIs<:oord)nattoll can be viewed as anactlv!t) Irl ,tself, as a “eccs,ary <)ver-head wbe” se, e,al part,cz are pe,-f<)rm,”g a task [62] Whale c“r,entdatabase apphcatlorls contr,b”teson)ewh.t to the c“”rd,”at~<)n <Ifgroups—by p,<,v,d,”g m“lt,ple ac.‘.ss t<, shared <>b,ects—most soft-ware t<>c>lsotter o“ly a slr>gle-userpcrspect,ve and thus do btde to .s517tdIIS lnlportant function

a Dtimftlon H uuulaw-~ be g<,dl <If g,OUp~a,e IS to .ss,,1grl,ups In cOmmurl]catlrlg, ,n CLIlIaborat,”g, a,,d I,, c,n)rd,”at,ngthe,r act,v,t,cs Spec~fically, we de-fine groupware as

computer bayed ,y,l?,r,, 1}w1,upfio,l

ffouPf ofpeoplee?l~~~edZTLacammo,~tmk (0, goal) and lhat P,o,,tdean z?lle~acet“ u ,hared enut,onment

1he “oIIor,~ “f . common ta<ka“d .shared cnutronment dre cr”c,al toth)sdcfi”,t,c>n This excl”des multl”sersystems, sucb as tlnle-sh.ring sy~-tems, whose “sers n~ay not share ac“mmo. task Note also that thede finlttoll doe, not spec,fy that theusers be dct,ve ~,multa”e(]uslyGro”pware tbat specdically s“pports slm”h.neous act,vtty IScalledreal ttme groupware, otherw,se, ,t ,s?zon-r?al-ttme gr”uput”re The cm.phas,s of tf,,s art,cle ,5 real-t,mc

~r~u~~dr~ .Ild ~YSLCIII-l~VCjISSUC~‘1 he terrrl groupw.re W.S first

de fir]ed by Iohnson-Lenz [46] to,efer to a c<,mp”ter based SySIe”#ph15 tbe S“’,al g,”Up prOCeSSeS1,,bls book on gro”pware [44], Joba”SC” restricts h,s de f,n~t,on t<) thec<,mputer-based systc”, Our de fi-n,t,<,” f<dh)ws the h“e of reaso”lng<>fJ,)ba”sc” s,”ce tb~s art,cle ISprl-nlardy concerlled wId> systeln-fevelIss”es All of the .utbors mentlo”ed

agree with us [hat the ~y~cem andtbe gr”up arc ,“t,”,ately ,“teract,”gcnt,t,e~ Successful technologicalaugnlerltatxon of a task or proceshdepends .pon . debcate balancebetwee” g“”d s<,c,al p,”.t,~e, andpr<ncd”res w,th appropr,atelv,tr”ct”rcd technology

me Groupware ~m1here IS rlo ng,d d,v,d,ng I,,,e be-tween ~y?tems that are co”slderedgroupware ar~d tbose that are “otSince s~stems s“pport commc)”tasks and \bared cnvlr<)nme”ts tovary, ng degrees, ,t ISappropriate tothink of a groupware spectrumw}th d, ffere”t syslerns at d, fferentpoIrIts 011the spe~trum Of course,this spectrum IS muhld,mens,<)n.d,two dlnlens,”ns are dl”str.ted II,F,gure 1 F“llow,”g are two exam-pl~~ “f ?ystems dcscr,bed accord,ngto our definltlol)’? comlnon taskdtnlenslon

1

2

A cot,ventlor,al t~nlesharltlg systen, supports marly users concurrently performing their sep.rate a,)d t“depe”de”l 1asksSince they are riot worklrlg 1n atightly coupled mode on a c“mmon task, th,~ sy,tcm IS usuallylow on the g,c,”pware spectr””IIn co”tra~t, co{,stder a softwarercv,ew system thal electro”lcallyallows a gro~xp of designers toevaluate a software mc]d”le d“r1ng a real-t,mc ,nterdct,<>” Th,s

system a~slsts pe~~plc who arefocus,”g <>” the same spec,fictask at the sa”Ie time, and whoare closely tnleractlng 1( IShigh011 the groupware spectruIII

Other systems, s“ch a~ those de-scribed ,n the follow,”g examples,

..n be placed ont hegroupwarespectrum according to how thev fltthe shared environment p.rt of ourdetinlt]on In other words, to whatextent do they prov,de ,“formatlonabout the part,c,pa”ts, the CU~~C”l

state of the project, and the socialatmosphere;

I

2

The typ,c.1 el..t,o”,. mad sy,-tem transnllt? me~sages, b“t ,tprov,des few c“v,ronmentalcues Therefore It ISrather lowon the groupware spectr”mIn contrast, the ‘.electro”lc C1.SSroom” s“stem [74] u?es mult,plcw,ndows to post t“formatlo”about the subject be,ng taught,and about the environmentElnulatlng a traditional class-room, th,s system allows a“ ,“-structor to present an o“-h”eIect”re t<>stude”ts at remotepersonal workstations In addl-tlon to the blackboard co”troll.dby the teacher, windows d~splaythe attendance bst, students’que$tlons and comments, andthe classroom status Many com-ma”ds facd,tate Iect”re dehveryand class InteractIon This systcm IS high on the groupwartspectrum

Over t,me, systems can migrate toh,gher points on the groupwarespectrum For example, Engelbart’spioneering work on augmentingthe Intellect In the 1960s demon-strated m“ltl”ser systems withgro”pware capabdltles slmdar tosome of today’s research proto-types Engclbart’s On-Line System[NLS] [21], an early hypertext sys-tem, conta,ned advanced featuressuchas filters for selectivelyv,ew,ng,“formatton, a“d support for o“-hne con ferenclng. Today’s im-proved technology and enhanceduser Interfaces have hosted th,stype of systemh,gher o“ the gro”p-ware spectr”m Add,t,onally, thetechnological infrastructure re-quired for groupware’s w!de use—an Infrastructure mlsslng in the1960s—Is now emer~ng

raxonomy 06

Groupwws Syseams

7 III, sect,on presents two

t.xo”<,m,es “seful f<>,v,ew,ng [hevar,cty of gro”pware The first tax-onomy ,s based upon notions oftime and space, the second on ap-phcdtlon-level f“nct,onabty

flme s- mxmoawGroupware can be cor].e!ved cohelp a face-to-face group, or agroup that ISdistributedover manvlocatlons Furthermore a group-w.re system can be conce,ved toenhance commun,cat,on and col-Iaborat,o” wrth,” a real-t,me l“ter-actron, or an asynchronous, non-real-time InteractIon These t,mcand space cc>ns,derat,o”s s“ggcstthe four categories of groupwarercpre~ented by the 2x2 matrixshown ,n Figure 2 Meeting roomtechnology would be w,thl” theUPPeFleft cell, a real-time dOcu-ment ed~tor w,th,” the lower leftcell, a physicalbullet]nboard wlthlnthe upper right cell, and an elec.tronlc mad systemw,th,n the lowerright Cell

PRA~lCES

A .omprchc”,,ve gF””pw.F. ,y,t.m m,ght best serve the needs <Ifallofth. q“adrants F“, .X.mpl., IIwo”ld be q“,te helpf”l t“ bavc thesame base funct]onabty, and userInterface look and feel (a) whale1am uslnga computer to edit a docu-ment ,n real-t,me w,th a gro”p(same tlmel?.me place 0. sam.

t,me/d,fferent place) and (b) whale1am alone edltlng In my office orhome (different time) Of course,there are other dlmenslons, s“ch .,group s,ze,thatcan be added to th,ssimple 2x2 matrix Further detadsof this taxonomy are presented byJohansen [45]

X9W=0t10m-LeWel

Taxonomy

1he secorld taxonomy preser,led ]n

FEGURE *. ~ DifIWrfSiOIfSOftheGroupwarespectrum.S~GURE 2. CMUpWZrSnMeSpace Matria.

Low HighTimasharfngSystem SoftwareReviewSystem

Shared Environment Dimanaion

Low HighElectronicMailSystem ElectronicClassroom System

. , - .--=.— . . ---. -4----------------

Same Time DifterenfTimes

Same Place

DifferentPiaces

41

d115sectlul> IS based 01>A~pb’.LIO,l-Ievel functlorlabty .nd ISnot meantto be comprehensive, furthermc>rc,nlany of the defined categoriesovrrlap Th,s taxon<~mv ISt“tendedpl,nlardy to gllc a general ]dea ofthe breadth of the groupware do-main

me9s09e ~msThe “just famd,dr e.’idmple ofgr{,upwaIe I, the cc,mputer-basedmessage system, wh]cb supports tbeasynchronous exchange of textualnlessages between groups of usersEx.mplcs ,nclude electrc>n,c madand comp”ter co” fercnc,ng 0, bul.let,” board s>stems Tbe prohtera-t,on of such systems has led to the“,”for”>at,or> overload” phe”ome-11011[37] Some recent nlessage sys-tems help manage ,“format,c>n<>,erh>dd by ea,, ”g the “SCF’Spro-ce~~~ng burden ,.lntrlhge”cc” ISsometimes added to the messagedebvery system, for ex~mplc, theI“f<]rmat,<>n Lens [63] lets usersipec,fy rules that automatically file<,, reroute l“coml”g message,hased 011 their content Other sys-tems add 1ntelhgence to the messages themselves, the Imad system[38], for example, has a languagefor attach,”g scripts to messagesScr,pts are sender-specdied pro-grams that execute 1n the receiver’senvironment and that ca”, fol ex-ample, query the rece,ver, reporlback tc> the se”dcr, or cause themtssage t<) be rero”ted

M“muser e#-bfember, <,f a gFO”p La,>U5C,1,LIh-user ed,tors tojolndy compose andedit a doc”ment Some of these ed,-tors, such .s For(;omment” [67],are for asynchronous “se, a“d co”-ven,e”dv separate the text s“ppbedby the author from the comme”tsof varlo”s reviewers Real-timegroup edlt”rs allow. group [If peo-ple to edit the same object at thesame time The object be,”g editedIS usually d~v,ded tnto logical seg-ments, for example, a docume”tcould be spht into sections or a pro.granl into procedures or mc>dule~

TYPIcall~. d multluser edltOr allOws

.<,,,c”r, er>t read acces%to .,)> seg-ment, but only to one writer per,cg”,e”( I be ed,tor tra”~pdr~”dymanages Iocklrlg and syrlchronlza-tIorI, .nd user, cd,t the shared c>h-

JeLt as they wOuld a private ObJeclExamples ,“clude the CollaborativeEd,t,”g System (CFS) [28], SbaredB(>c]k[58], ar)d Qudt [22, 57]

Some muhluser edlcors providecxphcII notlficatlor> of other “,ers’actions For example, Mercury [47],all editor intended f,]r prc>gr~m-m,ng teams, ,“forms “sers ~,ber,the,. code needs to be cha”ged be-cause of program moddicat,o”,made by others “rhe D,stEd,t sys.teln [49] tr,e, t<, prov,dc a toolkltfor b“dd,ng and support~ng muh-pie g.<,”p ed,tors

-P De.l=lon sumuortsystems m.d EI—leMeet/”g R-s

(,rutIp L)e.,\~c,r, Supp<)rt Sy&LerIIs(f,l)\SS) pr,)tllfe computer-hasedfacd,t,e< f<>,the explorat]o” of u“structured problems ,n. gr<>upset.t,ng (see [51] or [L6] fc>rrece”t s“r.~~y~) ‘[ be ~oai ,, t,] ,mpF<)V? tbcproductivity of dec,s,on-mak~”gmeetl”gs, e~ther hy speed,ng “p (bedeclslon-maktng process or by Improb,ng the quabty of the res”h,”gdec,~,<,”s [51] I here are (;DSS ~,dsfor decjs~o” str”ctun”g, s“ch as al-ternative ra”k,”g a“d votl”g tools,a“d f<>r]dea generation [2] c)r Issuea“dlys,s [1 1]

Ma”y GDSSS are ,r”plcmentcd a%electronic meeting rooms that c“”-taln several networked worksta-tions, large cc,mputer.controlledpubhc d,splays, a“d aud,o/v,deo

equlpm~nt (examPles are discussed1n [2, 12, 16, 64, 77 and 78]) Sc)mc<Ifthese facdltles requ,rr a spec>allytrained operator, others ass”me

OperatlOnal cclmpetence amOng thegro”p members

A %el)-k”ow” eXamp!~ IS thePlexCe”ter Plan”l”g and DecIsIo”Support Laboratory at the Un,ver-slty of Arlzo”a [2] The fa-d,ty pro-vides a large U-shaped r >“ferencetable w,th e,ght perso”al worksta-t,[>ns, a ti,orkstatlon III each of fo”rbreak-out rooms, a v,deo d,sk, a“d

. I.rge-s.reerl pro]ectlor] syste,.that car) display screens of ,nd,,,d“<d wo.kstat,ons or a .“mpd.tl”” “fscreens The conference tablew<>rkstat,<>”s are recessed to en-ha”ce the participants’ h“e of sigh,alld to encourage 1nteracllon Theycommunicate over a local area network arid run software tools f<>,electrorllc brainstorming, stake-holder ,dc”tdicat,<,” and a“alys,sand t~,uc analy~,s

Recent ti,ork at the UrII\ersILy “fArizona has concentrated on thesupport of larger grc,ups The c“r.re”t large group fac,f,ty has 24w“rk,tat,o”s ales,g”ed to S“ppOF1up to 48 people The support oflarge gro”ps presents “n,quc chal-lenges and <>pportu”,t,c~

-muter --CIR91 b? Co”lpt,ler serves .s . cum”,”nlcatlons medium ,n a v.ir,et> c)fways In partlc”ldr, ,t has pro, ]dcdthree “ew approaches III the wavpeople carrv out conferences redltime computer co” ferenclng, c<>m-puter telec””ferenc,ng, a“d desk-top con ferenc,ng

Real-Ttme Computer Confe.enc,ngReal-t,me ~OmpUter co” ferenclngallows a group of “>ers, who AFC.,tber gathered In a“ elc.tr<,”,cmeet,ng r(I(Im <,. pby~lcally dis-persed, to Interact synchronouslythrough their workstat,<]n~ C,Fte, -mIr>ab When a gro”p ,s phys,call”dispersed, an a“d,o b“k, s“ch as aconference ..11, ,$ ofte” estahbshed

There axt two bas,c approachest<, ,mplemet,t,ng real-cIme co*,>-putcr con ferenclrlg software [73]The first embeds a“ “nmoddiedsingle-user appbcat~c)” I“ a con]fr.,nczng enz,tronment that muhIplexesthe apphcatlon%s oLitptII to eachparticipant’s display [42] fnp”tcomes fron%one “ser at. t,mc, a“dafloorfi~r~ngpr~~t~~c<~l(determlnlnxwho has the flcn,r) excha”ges Inputco”tr<dam<>”g“XC,S[56] ~Xa”)ple,,“clude t?vmtnal l,nk,n~ (a ser,,cefou”d !“ some t,me-shdr,”g sys.lems) and replicated wtndow, (tvp!-cally ,mpleme”ted hy a wl”dowserver that dr~vesa set of dlsplavsII,

42

tdnde,,,) I hc ,eco,]d approach ,s t<,de,,gn the aPPhcdtlon SpCClfi..i[Vt<,account for the p,esen.e of mul.t,plc users Some cx<,mples are Real‘I ~nle Calendar [RTCAL] [73], .meeting ,chcduhng system, a,ldLogn<>tcr [78], a real-time groupnote t~k~ng svstem

Each appr<)ach has Itsadva[,tage<and d,sarfvantages Whale the f,rstdllows exlstlng dpphcatlO1ls to beused> each u,,, has a,, ,dent,calVICWofthc appbcat,or, -thc,c ,5 noper-~,ser c<,ntext The %ec<,nd ap-proach <,ffers the p<>~~,bd~tyof ar,che, ,nterface, but the apphcat~onmust be budt frc]m the grourld up,], w,th con~,dcrable add,t,onal cf.tort

Computi? TeleconfevenctngTelecotnrn,, n,.atlc]n support f<,rgroup Interdct,<,n IS referred t<, asteleconferc”c,”g [43] The mostfamdlar examples of teleconfcrcnc.Ing are c<>nfercr,ce calls and .Ideoco” ferenctng Teleconfcrenc,ngtc”ds to be awkward, requiring spe.clal rooms a“d sometimes t,a, ”cdoperators Newer systems prov~dework, tdt,o ”-based interfaces to aconference arid makr the proce~~more acces,,ble Xerox, for exa”, -ple, estabbshed an audtolv,de<] b“kfor use by a prcyecc tean] spbt be-tweerl Porda”d and Palo Alto [26]Mo%t ,,deo l“teract,ons occurredbetween large f, ”mmo1ls .red5 aleach site, but project memberscould al,<] ~ccess video cba”nelsthr<)”gh the,r office workstat,,>”,A s,mdar system, C.RUISER [72],lets “sers eleCtrO”ICall) r<,~m thehallways by brows,”g v,de,, cha”-nels

Desktop ConferemctngTeleconferen.,”g IS out o,dy Iela-t,”e{y ,“access,ble> but 11al,<, bay thedisadvantage of “ot lett,ng partici-pants sbare text and graphics (see[18] f<,, a dlsc”ss,o” of the fadure<,f v,deo co” ferenclr,g) Real-timecomputer c<,nferenclng dc)es riotoffer v,deo capabd,tles A Lhlrdtype Of c<,nlputer-s”pp<, rted COn.ferenc,ng co”lblne, the advantagesof teleconferenc,”g a“d real-t,mc

.C>nfe,en.tr,gwf,dc m,tlgdtnr,g tf,e~rdrawbacks D“bbed d .onfp.enctng, {),,smetbod ,tdl “s. s theworkstat,or, as the cor, fere”cc I“.rcrface, but ,t also runs appbcatlo”sshared by the participants Moderndeskt<,p co” feren.,”g SySte”)S s“pport mult,ple v,de<> w~”dows perw<,rkstatlor> rbIs aRows display ofdynamic \,cws of I“formatio”, a“dd.frIdmIc “Ideo ,magcs of part, <,.p.nrs [80}

An exar”ple ,,1 desktop co”fe,.enclng IStbe MMLonf system [14]MM(:c,nf ptovIdes a sharedof . m,dt,,nedIa d<numcnt, as wellas com”l”rll’at,<,n, chanrlels forV<I,CCa“d shared pO,”te,S Anothercxanlple ,s tbc Rapport rnult,med,acorlferr”c~ng systeIII [1] Rapport ,,des,g”ed for w<jrkytattons co”“ected by a rr,”h,med,a network (anetwork capable <If tra”smltt,”gdata, VOICC,a“d \,deo) 1he syste”,supports van<>”s forms of ,“terac-t]on, from s,mple telephone-bkeconvers.t,<>ns to m“ltlpartydlsplay ,nteractlon

J Agmts

N,,t d~] the pa, t,.,pd,,l, ,,, .,, e!.’tronlc n,etl,ng are people Mul.tsplaycr computer gan,es, for .x.alnple, m,ght autc>mdt,callygerlerate p~rt,cIp.r~t~ 1fthe numberof PC<lp(eIS 100 h>,. f,), a cballeng.,ng game Such nonhuman pa,t,c,.pants dre * special case of ,ntell,-ger,t dgents (a slmdar cc)ncept IS“,urrc>gates” {44]) In general, Intel-bger,t agents are respons~ble fc)r aspecific set of tasks, and the usertnterface makes their act,ons re-sen~ble th,)sc of other users

As d spec,fic example, we bavcdebcloped a grc~upware toolklt that,ncludes an ~gcnt named LIza [25]One of the ttnds ,n the toolklt d,,.plays d~e p,ctures and Iocat,ons ofall sess,c)n participants Wben LIZa

~~~tnsa session, a p,cture of an Intel.hgenc-looklng andro,d IS also d,~-played, lrjd,c~t,ng to tbe group tbatl.l~a IsparttctfIalt,tE I.lza’s pdrl,c,pa-cIon means dlat a set of rules c)wnedby LIza beconle active, these rulesm<)n,tor session act,v,ty and resuh

—m-an SY9tenm1he c<n,rd,”~t,on probleln IS tf>r“,ntegrat,o” a“d harmo”,ous adjustment of 1ndlvldudl work effortstoward the accomphshrnent of ~larger goal” [76] <;oord,natto” sys-tems address tb,s ptobletn I“ a vari-ety of tiays Typically these systemsallow 1ndlvldtlals to view the, r ac-t,ons, a~ well as the relev.nt act~o”,<Ifothers, with,” the context <Iftheoverall goal System, may AISCItri-gger “SC, S’ act,<)”s b} ,nfor,n,”gu,.., of the states of d,e,r act,onsand tbe, r watt co”d, t,o”s, or b,

g.nt,atln% automatic rem,nder,al]d alerts Coordlnat,on system,can be categ<>nzcd by one of thefour type, <)f models they embraceform, procedure, co”versatlon, orc<),nmu”,cat,on -str”ct”re oriented

Form-or, r”trd models typ]callyfocus on the routing of doc”me”ts(fornls) In Orga”lzat,o”al proce-d“re, Theye ~y~temsaddress coord,nat,o” by exphc,dy modehng orgar)]7at10nal actl\lty a$ fixedprocesses [59, 83] In soIne of them<,re recent systems there ISa“ eff<,,t t<]make pTOCCSSSUppOF1III,].?flex,ble For ~xalllpi~, ,“ Electron,<Clrculatlon Folder, [E(,F] [48] ex.ceptlon handbng IS addressedthro”gh m,~rattor, specdicatlonsthat descr,be all the poss,ble taskmlgratlOn routes in terms of thesteps to be earned <,”t ,n proce~sI”gorgan,zat,<]n~l doc”me”ts

P,ocedure.or>entcd model~ View<]rgan~zatto,,al procedures as programmable proccsse$, bc”ce thepbrase ‘p~O,.SS progr.mm,”g,% [3,68, 69] T h,, approach was first

apphed co cOOrdlrlatlOn pr<~blen>~In the ~c]ftwarc process dorna,n andtakes the V)CWthat software p,0CCS5descriptions should be tbo”ght ofand implemented as software Thedevelopment Of pFOCCSSp,<,g,am,1s ,tself a r,goro”s plo’ess co”s,sl-,ng of speclflcat,o”, des,gn, Impleme”tatIo”, and te5t~”g/verlficatlo”pbases [69]

Conversation-or,e”ted mc>del,are based c>n the observ.t,on thai

c o F. . , , ,””,,, ,., 43

rrdisciplirrary field, relying on the diverse skills “f graphics and indus- trial designers, computer graphics experts (who study display technol- ogies, input devices, and interaction techniques), and cognitive scientists (who study human cognitive, per- ceptual, and motor skills).

Until recently, most user intcr- face research has focused on single- user systems. Groupware chal- lcngcs rcaearchers to broaden this perspective, t” address the issues of human-computer interaction within the context of multiuser or RDU,~ interfaces. Since these inter- faces are sensitive to such factors as group dynamics and organizational structure-factors not normally considered relevant t” user inter-

face design-it is vital that social scientists and end users play a role in the development of group inter- faces.

With an emphasis on rheorica ot intelligent behavior, this perspec- tive seeks to develop techniques and technologies for imbuing ma- chines with human-like attributes. The artificial intelligence (AI) ap- proach is usually heuristic or aug- mentative, allowing information t” accrue through user-machine inter-

action rather than being initially complete and structured.

This approach blends well with groupware’s requirements. FOI

example, groupware dcblgnrd for use by different groups must be flexible and accommodate a variety of team behaviors and tasks: re- search suggests that two different teams performing the same task use group technology in very different ways [?‘I]. Similarly, the same team performing two separate tasks uses the technology differently for each

task. Al may, in the long run, provide

one of the most significant contri- butions LO groupware. This tech- nology could transform machines from passive agents that process and present information t” active agents that enhance interactions. The challenge is to ensure that the system’:, activity enhances interac- tion in a way that is procedurally and socially desirable t” the partici-

pants.

zorfra, ?azory -peccIre This perspective emphasizes social theory, or soci”l”gy, in the design of groupware systems. Systems de- signed from this perspective em- b”dy the principles and explana- tions derived from sociological research. The devrl”pers of Quilt

[ZZ], for example, conducted sys- tematic research on the social as- pects of writing, and from this re- search they derived the requirements for their collaborative editing environment. As a result,

Quilt assigns document access rights according to interactions be-

The artificial intelligence (Al) approach is usually heuristic or augmentative, allowing infor- mation to accrue through user- machine interaction rather than being initially complete and

structured.

twrrn users’ social roles, the macure of the information, and the stage of the writing prqject.

Systems such as this ask people t” devekrp a new or different aware-

ness, one that can be difficult t” maintain until it is internalized. For

example, Quilt users must be aware when their working styles-which are often based on inf.ormal agree- ments-change, s” that the system can be recontigured to provide appropriate access controls. With The Coordinator [24], users need to learn about the language impli- caions of requests and promises,

because the system makes these speech acts explicit by automatically recording them in a group calen- dar. Both examples suggest the need for coaching. Perhaps the sys- terns themselves could coach users, both by encouraging and teaching users the theories on which the sys- tems are based.

=eal-Tlm- crouBBrrare concepem rana wawlrnIlle3 ‘l’hc vrx-ah&r)- and ideas embod- ied in groupware arc still evolving.

In this section, we list some impor- tant terms useful for explanation and comparison of groupware sys- tems, followed by an illustrative real-time groupware system. Our emphasis throughout the remain- der of this paper is “n real-time groupware. Functionality, design issues, and usage experience of GROVE, a real-time group text edi- tor allowing simultaneous editing

of private, shared, and public views of a document will also be ex~ plained.

l shared contexl. A shared context is a set of objects where the objects and the actions performed on the

otajects are visible t” a set of users. Examples include document ob- jects within coauthoring systems and class notes within electronic classrooms. This notion of shared context is a subset of the larger, more elusive concept of a shared

environment discussed earlier. l gwup window. A group window 1s

a collection of windows whose instances appear on different dis-

45

play surfacra. The instances are connected. For example, drawing a circle in one instance makes a circle appear in the other in- rtances, or scrolling one instance makes the others scroll.

l t&pointer. A t&pointer is a cur- sor that appears on more than one display and that can be moved by different users. When it is moved on one display, it moves on all displays.

l view. A view is a visual, or multi- media representation of some portion of a shared context. Dif- ferent views may contain the same information hut differ in their presentation (for instance, an array of numbers can be pre- sented as a table or as a graph), or they can use the same presenta- tion hut refer to different por- tions of the shared context.

l synchronotu and asynchronowr w&r- action. In synchronous interac- tions, such as spoken cnnwrsa- dons, people interact in real time. Asynchronous interactions are those in which people interact over an extended period of time such as in postal correspondence. Most groupware systems supporr only one of these interaction modes.

l session. A session is a period of synchronous mteraction sup- ported by a groupware system. Examples include formal meet- ings and informal work group discussions.

l role. A role is a ser of privileges and responsibilities attributed to a person, or sometimes to a sys- tem module. Roles can he for- mally or informally attributed. For example, the person who happens to like to talk and visit with many people may informally take on the role of information gatekeeper. The head of a group may officially have the role of manager [37].

~RoIf6: n c;rourrv##~ mrmw~le ‘I’he GRoup Outline Viewing Editor (GROVE), [ZO], is an example of real-time groupware that illustrates some of the concepts just intro-

duced. GKOVK, implemrnted at MCC, is a simplr text editor de- signed for use by a group of people simultaneously editing an outline during a work session.

Within a GROVE .x%non, each user has his or her own workstation and bitmap display. Thus each user can see and manipulate one or more vieax of the text being worked on in multiple overlapping win- dows on his or her screen. GROVE separates the concept of a view from the concept of a viewer. A view is a subset of the items in an outline determined by read access privileges. A viewer is a group win- dow for seeing a contiguous subset of a view. GROVE views and view- ers are categorized as private, shared. and public. A private view contains items which only a particu- lar user can read, a shared UZPW con- tains items readable by an enumer- ated set of users, and a public uzew contains items readable by all users.

Figure 3 shows a GROVE group window-group windows provide the shared viewers for synchronous mteractions among users.

In addition to displaying views, group windows indicate who is able to use the window and who is actu- ally participating in the session at any given time. This information is provided by displaying images of the people who are members of the view (or simply printing their names if their images are not avail- able) along the bottom border of the window. Thus as users enter or leave the session, their pictures appear and disappear in all appro- priate group windows. The window in Figure 3 appears on the worksta- tions of the three users shown along the bottom border, and each user knows that the others have joined the session. Users can modify the underlying outline by performing standard editing operations (insert, delete, cut, paste, and so on) in a group window. When this is done, all three of the users immediately see the modification. Outline items which are grey (like the last item, in Figure 3) rather than black on a particular user’s screen cannot be

modified by that user. Users can also open and close parts of the out- line (by mousing cm the small but- tons on the left-hand side) 01 change the read and write permis- sions of outline items.

Participants can enter and leave a GROVE session at any time. When users enter (or reenter) a session, they receive an up-to-date docu- ment unless they choose to retrieve a previously stored version. The current context, is maintained even though changes may have occurred during their absence from the ses- sion. A session terminates when there are no remaining partici- pants.

Design Issues and Rationak GROVE was built as an expenmerr- tal prototype to explore systems implementation issues, and to gain usage experience. We chose to build this system from scratch rather than beginning with the code of an existing editor because we wanted to understand, control, and modularize the code in particu- lar ways. We were especially con- cerned with the user interface, and wanted to carefully architect the system’s features and its look and feel. In keeping with the experi- mental nature of this tool, we chose to minimize the functionality and coding time spent on the standard editing features, and to concentraw on its groupware features. Thesr features include the private, shared, and public group window support; the shared context present in the user interface; and the repli- cated architecture to allow ftne- grained (keystroke level) concur- rent editing and notifKation.

The architecture uses a local edl- LOT and replicated document at each user’s workstation, and a cen- tralized coordinator that serializea the operations of the various edi- tors. This forced us to immediately face problems of response times, concurrent actions, and data incon- sistencies. These are problems that plague real-time groupware sys- tems in general. We have investi- gated this further, and using some

66

Groupware developers need to be s of the potential effects

chnology on people, their rk and interactions.

SCION rhousands of miles, and have included participants at remove lo- cations at the MCC Human Irrter- face Program, from the University of Michigan, and from the Arthur Anderscn Consulting Company. Distributed and mixed-mode ses-

sions frequently involve as many as five or six people.

From the user’s perspective, dis- tributed editing sessions are dis- tinctly different experiences from face-to-face editing sessions. Here are some pro and con observations regarding distributed sessions:

Increases information access. Partic-

ipants in distributed sessions who reside in their offices have access to their local books and f&s. Thia sometimes allows easy access to important information that would not otherwise be available during the session. People have corn- mented positively on the conven- ience, comfort, and familiarity asso- ciated with remaining in their offices.

Encourages paralkd work within the group. People often divide into sub-

groups to work on different parts of the task by using a social protocol and shared views. Then their work

is merged with the rest of the group’s work by changing the ac- cess rights on the shared items to public items. This is also done in face-to-face sessions, but not as fre- quently as in distribuwd sessions (perhaps because there are more participants in a typical distributed session).

It is easy for distributed mem-

bers to drop out for a while, do something else (such as work on some code in another window or

48

ger a drink), then reu~n I’hrL is

not socially acceptable in most face to-face siwalions, but is accepted in distributed sessions.

Makes discussion more difficult. UIS- tribuced sessions have a noticeably different communication pattern from face-to-face sessions. Because our phones are not full-duplex,

only one person’s voice is transmit- led at a time. Consequently, people tend to take turns and are unusu- ally polite-if they are impolite or uncooperative, remarks get cut off and the discussion is incomprchen- sible.

Makes group focus more difftculf, requiring more concentration. Peo-

ple have commented that in gcn- eral, face-u-face sessions fed shorwr, seem to accomplish more in less time, and are frequently more exhilarating. In contrast, dis- tributed and mixed-mode sessions seem tc~ require more concentration and are more tiring. Since discus- sion is more difficult when some of the group members are distributed, people appear to work harder (i.e.,

they make a conscious effort) to get and give feedback.

Cuts down on social interaction. Dia. tributed sessions lend to be more serious. Since there is less inter- change about nontask-related top- ics, people tend to focus on the task immediately. The effect is a possi- ble efficiency gain from time saved and a possible loss from social

needs. Most of the face-lo-face sessions

seem to have more intense, richer interactions, but we think the rea- sons are deeper than simply the

ability to look direcdy a other par- ticipants. Group members rarely look directly at each other during face-to-face sessions, but being in the same room seems to increasr the awareness of othrr members’ activities to the point where highly cooperative work can be done. Most of the GROVE cooperative usage techniques have emerged in the

face-to-face sessions, then have been used again in the distributed

sessions because they were success~ ful in the face-to-fact environment.

In addition to comparing distrib- uted with face-to-face sessions, it is inwresting to compare group edit- ing (in Ihe synchronous or real-time sense) with single-user editing. OUI observations regarding group edit- ing are:

Can be confusing, unfocused, and chaotic. Many things can be going on at once. Several people may be busy in different parts of the out- line. At times someone starts word- smitbing a public item while an- other is still working on it. Since GROVE does not provide a telepointcr or other explicit turn- taking mechanisms, actions on the public view (such as scrolling or

opening and closing items) are gen- erally disruptive unless accompa- nied by some verbal explanation. Without verbal explanations, such as “Let’s scroll to the next page” or “I’m opening line 2,” one wonder: “Who is doing this?” and “Why ia this being changed?’

Collisions are surprisingly infre- quent. Awareness of others’ activi- ties is frequently at a subconscious level. As one user expressed it, “During the brainsmrming phase, I remember feeling that I was totally occupied with entering my own thoughts as fast as 1 could. I didn’t feel at the time that 1 was paying much attention to what others were doing-but I know I was First of all, there was very little duplica-

tion (most of the items were fresh material), so I must have been read- ing others’ contributions without being aware of it. Secondly, there

ocipants. ‘l’hr advantaga of WYSIWlS are a strong senst! of shared context (e.g., people can refer to something by position) and simple implementation. Its major disadvantage is that it can be inflex- ible.

Experience has shown that ucrs often want independent control over such details as window places ment and sire, and may require customized information within the window. The contents of the GROVE window in Figure 3, for example, vary among users in that color indicates user-specific write permissions (i.e., black text is read/ write, gray text is read-only). This is an example of r&_wd as opposed to &cl WYSIWIS. Stefik et al. [78] have suggested that WYSIWIS can be relaxed along four key dimen- sions: display space (the display ob- jects to which WYSIWIS is applied), time of display (when displays are synchronized), subgroup popula- tion (the set of participants involved or affected), and congruence of view (the visual congruence of dis- played information).

Group Focus and Distraction Issues A good group interface should depict overall group activity and at the same time not be overly dis- tracting. For example, when one user creates or scrolls a group win- dow, opens or closes a group win- dow, or modifies an &ject another person is viewing/working on, other users can be distracted.

This points up a fundamental difference between single-user and multiuser interfaces. With single- user interfaces, users usually have the mental context to interpret any display changes that result from their actions. As a result, the sud- den disappearance of text at the touch of a button is acceptable; in fact, much effort goes toward in- creasing the system’s responsive- ness. By contrast, with group inter- faces, users are generally not as aware of others’ contexts and can less easily interpret sudden display changes resulting from others’ ac- Cons.

What is needed arc ways to pro- vide contextual clues to the group’s activity. A simple solution is for participants to audibly announce their intentions prior to taking actio-suitable in some situations but often burdensome. A promis- ing alternative ia to use real-time animalion to drpict smoothly changing group activity. For exam- ple, text could materialize gradually or change in color as it ia entered. This approach, however, intro- duces a new set of problems. First, animation is computationally ex- pensive and requires specialized workstation hardware. Second, it is difficult to find visual metaphors that are suitable for animating op- erations, although work on artificial realities and responsive environ- ments [54, 551 seems promising. Finally, any solution to this problem must take into account the dual needs for speed and continuity: the system’s real-time responsiveness to the user making changes must not be sacrificed for the smooth, con- tinuous notification to other users.

Issues Related to Group Dynamics Group interfaces must match a group’s usage pattcms. Single-user text editors often rely on simple in- terfaces: characters appear and dis- appear as they are inserted and de- leted. Multiuser text editors, must contend with a diversity of usage patterns as we observed with GROVE. The text was generated as independent, reflective, consensus, partitioned, and recorded entries and, therefore required much richer interfaces.

An experimental cloudbunt

FIGURE 0. POltiOA of an Edit- ing Window Using the Cloudburst Model.

model uf multiuser text edlrin!: II- lustrates some needed group intw face techniques. This model applies two techniques and is illustrated irl Figure 4.

First, the text is aged so that re- crntly rntrrcd text appears in bright blue and then gradually changes to black. Second, while text tual modifications (insertions and deletions) are immediately visible to the person who initiates them, they are indicated on other users’ disk plays by the appearance of clouds over the original text. The position and six of a cloud indicates the approximate location and extent of the modification. When a user has stopped typing for some time, the clouds on his or her display disap- pear and the new text is displayed, first in blue and graduallv changing to black. The rationale tar this in- terface ia that an active user is only marginally interested in others’ changes, which should therefore be indicated subtly and not disrup- tively. By the same token, when the changes are merged, everyone should be made aware of their cow tmts. Issues Related to Screen Space Management Screen space is a limited ~aour~e III single-user applications, but it ia even more of a problem with group interfaces in which each user can create windows that appear cm other users’ screens. Techniques for managing window proliferation are needed.

One approach is to aggregate windows into functional sets, or roovu, each of which corresponds to a particular task [Y, 611. Parti& pants can move from roan, to roan, or be teleporled by other users. When a room is entered, the win- dows associated with that room arc opened.

A second approach 1sto let one“f the users bear s“me of the bur-den of malntaln,”g window orderThe LIZA system [25] provides amonitor tool, for example, whichallows one user to open and closewindows used by partlctpants Th,sapprOachISparticularlyuseful withInexperienced users

Z$suesRelated to Group ZnterfmeToolkitsSingle-user Interface technologyhas matured slgnlficandy duringthe past decade The advances can& attributedIn part to the work onuser Interfacemanagementsystems(see [60] for a summary)and In partto the prohferat,on of window sys-tems and their ,nterface toolklts

Many of these single-user znter-face concepts can be generalized tom“lt,”ser Interfaces Group win-dows are one example, telepolntersanother Several questions remainOpen, because there ISIlttleexperi-ence with these generahzed tech-niques Should there & group win-dows for subgroups> Should therebe multlple telepolnters for themultlple subgroups> What are theIntultlvewaysto share telepo,nters+Experience w,th show,ng all users’cursors on every screen suggeststhat groupware developers mustbecareful not to clutter the screen oroverload the partlc,pants [78] Thepoint ISthatgroup Interfacetoolkltsmust not simply & extensions ofexlstlng toolklts, rather, they mustintroduce new constructs that bet.ter accommodate shared usage

-p —HSome well-defined tasks, such ascode walk-throughs, requ,re thepartlclpatlon of a set of users andare called Poup processes Groupprocesses offer Increased synergyand parallehsm, but the requ,redcmrdlnatlon overhead can burdenthe group and dampen Itseffective-ness. Groupware technology seeksto enhance the benefits whalemlnl-mlzlng the overhead

tioup ProtocolsProtmols are mutuallyagreed upon

WdyS Of llllC1dLL1ll~ ‘I hese pFOLO-

COIS may he budt Into the hardwareand software, calfed technolo#ca/P,otocoh,or left to the co”trol of thepartlclpants, called ,octal firoto.ohExamples of technological proto-cols are the floor control mecha-nisms In several conferenclng sys-tems [1, 27, 56] These systemscanonly process one user’s Input re-quests at a time, ,mposlng on par-t,c,pants a group process of turn-mk,ng

AhernaLlvely, control of thegroup process can be left to thegroup’s soc]al etiquettes wh,ch arem“t”ally understood and agreedupon, but not enforced by thegroupware system Social protocolsInclude formal rules or pohcles,such as Robert’r Rules of Order, andless formal practices, such as pohteturn-taking or hand-ra!slng InGROVE, social protocols controlthe use of puhhc w,ndows For ex-ample, anyone can scroll a puhhcwindow at wall,but a group quicklylearns that th,s ISdisruptive unlessaccompanied by a verhal explana-tion afong the bnes of “Let’s scrollto tbe next page “

%ach approach to group pro-cesses has advantages and d,s.d-vantages Leaving the processes tosoc,al protocols encourages coRaho-ration. the group must develop ltsown protocols, and consequentlythe groupware Itself ISmore adap-tive SOcIalprotocols (In particular,ad hoc protmols), however, can beunfair, dlstractlng,orlnefflclent Incontrast, embedding a group pro-cess In software as a technolo~calprotocof ensures that the prmess ISfollowed, prov,des more structureto the group’s actlvlty, and assistslessexperienced “sers. Technologl-caf protocols can be overly restrtc-tlve a group’s Idlosyncratlc work-ing stylemay not h supported, andthe system can constrain a woupthat needs to use different pro-cesses for different actlvltles

Goup OpatiowAt times, ,t ISappropriate and ,n-slghtful to v,ew the work of muh-ple people asa singleoperation We

---- -PRA~lCE<

..11 lhe resuftdnt operation, ffoupoperattO~TThere are many CaSCSOfgroups accomphshlng a task wltbmore speed and accuracy thanwould be possible by a single lnd&-vldual Examples Include basketballteams, and fire-fighting teams Inother casesthe complex procedurescarried out by a group are easiertounderstand If they are not d,v,dedinto specific tasks performed bvspec,fic Indlvlduals

Group operations occur In bothsynchrur,uusalld asynchronous sit-uations Office procedures presentan asynchronous sltuatlonand havebeen studied extensivelyInthe context of the office ,nformatlon sys-tems [5, 13, 83] Problems associ-ated w,th supporting theseprocedures Incfude the followlngorganizational knowledge, excep-tions, coordlnat,on and unstruc-tured actlvlty Knowledge of anorganization’s structure, historyand goals, ISuseful when foltowlngoffice procedures [5], yet tblsknowledge ,s volatde and dlfficuhto specify ExceptIons are frequents,nce offices are opensyslem[33], Inparticular, they conta,n Incompleteand partial Information ahut the)rday-to-day act,vltles, mak,ng It Im-possible to Identifyall the sltuat]onsencountered by an office proce-dure Office procedures consist oimany parallel asynchronous tasksrelated by temporal constraintsThere ,s a need for coordlnatlon—a mechan,sm for Informing usersofrequired tasksand remlndlng themof commitments F,nally, since of-fice procedures are not entirelyro”t,ne, unstructured actlvlt,es,such as plannlng and problem solv-lng, can occur at various pointswlthln an office procedure [70]

Synchronous group operationsare one of the characteristicsdlstln-g“lshlng groupware from othersystems The prOblems describedabove for asynchronous group op-erations also apply $n the synchro-nous realm. Tb,s can be dlustratedby considering a hypothetical votetool Intended for small uoupsSuppose the toot functions as fol-lows.

51

WherI .1 ,1s., A’tlV.t.S the1<>[)1d

w3tldow cilntalrlltl~. type-in arc.alld “Start Vole” and “Stop Vote’b“ttons appears on that person’sd,$pla> After th,s ,iser enters theIs7ue to be voted on aild selects“St.rt Vote,” a grOup wlndOwappears on all sesslOIl partlcl-pants’ d,spl.ys The gro”p wln-d,>w contains four buttons forvc,t,”g (“Yes,” ‘“No,” “Unde-cided,” and “Uncast”), and a barcb., t show,ng the tallies of the

participants’ vOtes

The fcdh,w,”g paragraphs refer toth,s tool ,n d,scussli]ns of tbe ,sstresInvolved In supporting synchro-nous group operations

Organizational a“d Social Factors.It [s easy t<>b“dd a t“cd ~,th tb.abo, e funct)onahty, the dlfficuhvbes 111deslg[~lngII to be useful in anumber ofdlfferent situations Tbetool allows participants to changethe,r votes, displays partlaf res”lts,lets a“v”nc p“se A“ ,szue f“r voting,and prov,des anonymttv (unless tbeusers can see each others’ act]ons)How closely this functlonabty,natches a g,ve” gr<>up’~needs depends <>nboth organ, z.t,onal factc>rs (e g , wbetber ,t ,, a gr<>”p c>fpeers or a stratdied, and perbapsless democratic, gro”p) and socialfact<,r~ (e g , bow ope” or tr”st,”gtbe grc>”p ,s) In ge”eral, spec,abz-,“g a t,,<d t“ meet a gro”p’s part,c”-lar needz requ,rez ,~oup k“owlcdge(e g , user and group profiles) aswell as ..gantzattonalknowledge

Exceptions and Coordsnatiom. 1 hevot,”~ t<,”l example alz” p“, ”ts o“tthe need for exception bandf,ngand coordination In synchronousgroup operations Typical excep-tions occ”r wben a noncooperative“SC. fads to c“mplete b,s or her role,“ tbe operat,o”, or wbe” tbe gFO”pcomposition changes (a personunexpectedly leaves or enters dur-ing a vote) Coordlnatlon IS neces-sary since group operations imposeobbgatlons on the participants andresponse times vary A simple solu-tlon 13to let the group resolve sucb

ddfI.uhlcs (Istt)g dlte, native cOm-

m“mc.tIo” chanr]el~,such asaudioTbe system should at least help de-tect problems, however, (e g , bymonitoring tbe progress of v<>te)and allow dynam,c reconfigurationof the operat,on’s parametrr~ (e gchanging role a551gnments orgroup Size)

Inteflmtion of Actiu:~ Support.

Asynchror,ous and syncbronotls<>perat,ons are complementary suh-parts of larger tasks or act,v,tlesFor example, 5~stem design prol-ects Include both blgb-level asyr~-chronous tasks, sucb as requ,reme”t~ .nalysls, and syncbronc,usacttv,ty, ~ucb .s face-to-face meet-ings A meet,ng proceeds ]n alargely unstructured way, but II earlc“nt.,” Isl.nds of structured syncbr(>tlc>usc>peratlons—sucb as vot-t“g <,r bra,nstormlng I’hls calls fi]rt“tegratl”g support for structuredtinscructured actlv,ty on the onehand and for synchrc>nouslasyn-cbrono”s a.tlvlty on tbe other For,n~t.nce, o“r voting tool sbouldstore vote results so thal the groupcan use tbe results ,n tbe context ofother tools and act,v[t,e~ [n othe!words, tbe destgner of group pro‘eSS SUppOrl tOOISsbould look bevend the group and account forfactors such as the group’s goalsand Its place In tbe larger context ofthe organlzat!on or soc,ety

-Cu-mw —GroupTNare system$ need .orlcur-rency control to resolve conthctsbetween participants’ simultaneous

OperatlOns Wjcb a gr<~up edltOrsuch as GROVE, for example, oneperson might delete a sentencewbde a second person Inserts aword Into tbe sentence Groupwarepresents a unique set of concur-rency problems, and many of tbe

approaches to handllng concur-rency ,n database apphcatlons-sucb as exphc,t Iocklng or transac-tion processing—are not only lnap-propr,ate for groupware but car,actually b,nder tightly coupledteamwork

The followlng hsts some of the

.or].urren. y-related Issues f&ciIlggroupware designers

. Respnsiveness—interactionsbke group bralnstormin~ anddec,slon mak,ng arc somet]mesbest carried <Iut synchronously

Real-time ~ystems suPPOrtlngthese a.tlv]t,es musl not hinderthe gr<)up’s cadence To ensurethis, two prc)perttes are requ, reda short re~pome ttme, or the time ,ttakes for a user’s own ,nterfacc toreflect h,, or her actions, and asbort nottfzcatlon ttme, which IStbetime requ, red for these act,<>ns10be propagated to everyone’s in-terfaces

. Group lntetiace-Group ,nterfaces are based on techn,que~such as WYSIWIS and groupwindows, wb,cb require Ident]calor near Identrcal d,splays If lhec<)n.urrency control scbeme 15?uch that one user’s actions arenot immediately seen by otbers,tben tbe effect on the group’sdynamics must be cc,nsldered andthe scheme allowed only If II IS“ot disruptive A sess,on’~ cohestveness ,s lost, for lnslance. wbet>each partlc, pant IS vlewlng ashgbdy d, fferent <>r out-of-dateversion

. Wide-Area Distribution—A pr, -mary benefit of groupware ,s th.[It allows people t<>work togetfler,In real l]me, even wben separatedby great phys]cal d,stances Withc“rrent commun,cat,ons technol-

ogy. tran$mlsslOn times and ratesfor wide-area networks tend to beslower than for local area nel-works, the possible Impact on re-

spOnse time must tberefOre beconsidered In add,t, on, commu-n,cat,ons fadures are more hkely,po?ntlng out the need for res,l-Ient concurrency control algo-rithms

. Dam Replication—Because .real-t,mc groupware system rc-qu,res sbort response time, Itsdata state may be replicated aleach user’s site Many potentiallyexpensive operations can be performed locally Consider, for ln-sunce, a ]o,nt ed,tlng session be-

S2

Lweer,a user ,n Los Angeles andone In New York Typ!cally, eachuser Mpouldhe working in ashared concext with group win-dows If the ohJectbeing edited ISnot rephcated, then even scroll-ing or repalrlng windowdamagecould requ,re communicationktween the (WOsites—leadlng toa potentially catastrophic degra-dation In response time

. Robustness—Robustness refersto the recovery from unusual c,r-cumslances, such as componentfadures or unpredictable useract,””s Rec”very from a sitecrash or a communtcat,ons hnkbreakdown—typical Instances ofcomponent fadure-ls a famdlarconcer” ,n distributed systemsand a maJor one ,n groupwareGroupware must ai~o be con-cerned wltb recovery fr<>museractions For exanlple, adding anew “ser to a set of users lssulngdatabase transactions ISnot nor-mally pr”blemat,c—b”t adding aparticipant to a groupware ses.slon can result In a maJOrsystemreconfiguration. The system’:concurrency control algorlthmmust adapt t“ such a reconfiguretton, recovering easdy from suchunexpected user actions as abrupt sesston entr,es or depar.turesWe wdlnowdescribe several con.

currency control methods. Of par.tlcular Interest are techniques “se-ful to real-time groupware, beca”sereal-tame systems exaggerate theconcurrency problems we haveJustoutlined Tbe dlsc”sslon beginswith traditional dlstrib”ted systemstechniquesand ends w,tb the newergro”pware approaches, whichstrive for greater freedom andsharl”g

Simpk Lwki.gOne solut,”” t“ c“r,curre”cy ,s s,”I.ply to lock data before ,t ISwr)tte”Deadlock ca” be prevented by theusual techniques, such as two-phaseIocklng, or by metbods more suitedto >nteractlve environments Forexample, the system m,gbt VLsuallyIndicate locked resources [58], de

creastrlg the bkebh””d of requestsfor these resources

I.ocklng presents three prob-lems First, the overhead of re-questing and obta,n,ng tbe l~k,Includ,ng wait t>meIf the data ISal-ready Imked, causes a degradation,“ ,CSpOnSCt,me Second, tbere ,sthe question of granularity forexample, w,th text edltlng It ,s notclear what should be locked wben auser movesthe cursor to tbe m,ddleof a hne and Inserts a characterShould the encloslng paragraph orsentence be locked, orJust the wordor ‘haracter~ Part,c,p~nts are lesscunstra,ned as tbe Iock,ng granu-Iartty Increases, but fine-gralnedIocklng adds system overhead Tbetblrd problem Involves the tlmlngof lock rcq”csts and ,elcaSC,Should tbe lock in a text editor berequested when tbe c“rsor ISmoved, or when the key ISstruck;Tbe system should not burdenusers with tbese de.lslons, b“t ,t ISd, ffic”h t“ embed a“t”mat,c lock-,ng ,“ ed,tor comma”ds If locksare released when the cursor ISmoved, then a user might copy textIn one loc~t,<>”,only t“ be pre-vented from past~”glt back l“to theprev,ous Iocatlon I-he system, Insb<>rt, h,nders tbe free flow ofgroup actlvlty

More flexlbk Iock,ng mecba-nlsms bave bee” l“vestlgated a“dreported ,n tbe bterat”re Tlckklocks [28] allow the lock to be re-leased to a“otber requester after anIdle period, soft locks [17] allowlocks to be br”ken by CXpbCltOVCr-r,de comma”ds Numero”s others’hemes “ot,fy “sers whe” locks areobta,ned or confbctlng requestssubmjtted

Tra”.actio” MechanismsTransaction mechanisms have al-lowed for successful concurrencycontrol In non-real-t,me groupware

systems, such as CES [281 and QUIIL[22, 57] For real-t]me groupware,tbese mechanisms present severalproblems Dlstr,buted concurrencycontrol algor)tbms, based on trans-action processing, are dlfficuh toImplement, Inc”rrlng a cost In user

COMPUTINGPRA~lCES

respor,se tL*ne Ira”sact,orl, trrtph-mented by using locks lead to theproblems described above Otbermethods, such as tlmestamps, mayca”se the system to abort a “ser’sactions (Only “ser-req”estedaborts sbould be sh<>wnby the user,“ter face.) Gc”crally, l“ng tra”sac-tlons are not well-suitedto interac-tive use, because changes madeduring a transaction are not vlslbleto other “sers “ntd the transactlo”comm,ts Sbc>rt(e g , per-keystroke)tra”sact,o”s are t<>oexpe”s,ve

These pr”blems p“,nt to a basicphdosoph)cal dlffere”ce betweer>database and groupware systemsThe former str,ve to g,ve eacb userthe ,11 ”S,””“f bc,”g tbe system’sonly user, whale groupware systemsstrive to make each user’s actionsvlslble to others Sh,eld,ng a userfr”m zee,”g tbe ,“termed,ate statesof otbers’ transact,o”s IS I“ directoppos,t,on to tbe goals of ~roup-ware Tbere has heen some workon opening up transa’t,ons [4], b“tthe emphasis of th,s work bas ~enon c<>ord,natlngnested transactionsand not on allowlng for interactivedata sharing.

T“m-Takitig ProtocolsTurn-tdk]”g protoc”k, ~“cb asfl”or control, ca” be viewed as aconcurrency control mechanismTbe main problem with tbls ap.preach IStbat ,t ,s hm,ted to thosesttuat,ons ,n wb,cb a s,ngle act,veUSC, f,ts tbc dy”am,cs of the SCS-slon It ISparticularly dl-suited forsessions w,th high paralkhsm, In.hlbltlngthe free and nat”ral flowofInformation Add,t,onally, leavlngflo”r co”trol to a soc,al protocol ca”result in conflicting operationsusers ofteu err In followingthe pro-tocol, or they simply refuse to fol-low It, and consequently, severalpeople act as though they bave tbeflw,

CentralizedControllerAnother concurrency c“”trol sol”-tlon IS to Introduce a centrahzedcontroller processdata IS rephcatedworkstations Tbe

Assume tha[over all usercontroller re-

COMMU”,M,,- .F,”, KM,J....,, ,,,,, ”.,,+ .“) 53

celves user requests f“. operationsand broadcasts these requests to allusers S,nce the same operationsare performed In the same orderfor all “sers, all cop,es of the datiremain the same

This sol”t,on ,ntrod”ces the“s”al problems associated with cen-trahzed components (e g , a singlepoint of fadure, a httleneck) Sev-eral other prohlems also arise Since

OperatlOns are perfOrmed whenthey come hack from the controllerrather than at the time they are re-quested, responsiveness IS lost TheInterface ofa user ,ssu,ng a requestshould k locked untd the requesthas heen processed, otherwise, asubsequent request referring to aparticular data state might be per-formed when the data IS,n a differ-ent state

Depe”de”cy-Detectio”The dependency-detectlorl rr>”del[79] ISanother approach to concur-rency Co”trol ,“ m“lt,user systemsDependency detection uses opera-tion tlmestamps to detect conflict-ing operations, which are then re-solved ma””ally The greatadvantage of th,s method ,s that nosynchronization ,s “Ccessarynonconft)ctlng operations are per-formed Lmmedlatelyupon receipt,and response IS very good Mecha-nisms Involvlng the user are gener-ally valuable In groupware appbca-tlons, however, any method thatrequires user Intervention to assuredata Integrity IS vulnerable to usererror

Rmersibk ExecuttonReversible execut]on [73] IS yet an-other approach to concurrencycontrol In groupware systems Op-erations are executed Immediately,but ,nformatlon ,s reta,ned so thatthe operations can be undone laterIf necessary Many promlslng con-currency control mechanisms fallwlth,n this category Such mecha-nisms def,ne a global t,me order,ngfor the operations Wben two ormore Interfering operations havebeen executed concurrently, one(or more) of these operations IS

u“done and reexecuted I“ tbe c“r-rect order

S1mdarto depend. ncy-detectlorl,tbls method ISvery responsive. The“eed to globally order operations ISa disadvantage, however, as IS theunpleasant posslbdlty that an oper-at,on wdl appear on the user’sscreen and then, needing to be“ndone, disappear

Op@ation Tra.sfomationsA final approach to groupwateconcurrency control IS operationtransformation Used In GROVE,this technique can be v,ewed as adependency-detection solut,on wltbautomatic, rather tban manual,c<>nfhctresolution

OperatlOn transformation allowsfor high responsiveness Each userhas h,? <>rher own copy of theGROVE ed,tor, and when an oper-atron IS requested (. key IS typed,for example), th,s copy locally per-forms the operation Immediately ftthe” broadcasts tbe operat,on,along with a state ueclor Indlcatlnghow manv <>perat,onsIt has recentlyprocessed from other workstationsEach editor-copy has Its own statevector, with which It compares tn-coming state vectors If the receivedand lwal state vectors are equal, thebroadcast operation IS executed asrequested, otherwlsc lt ,s tramfomed before execution The spe.c,flc transformation IS dependenton operation type (for example, anInsert or a delete) and on a log of

OperatlOnsalready perfOrmed [191

-- ~ lmu-As th,s art,clc has shown, group-ware encompasses a wide range ofsystems—from relatively straight-forward electronic mad systems tostate-of-the-art, real-time, mult,-user tools Regardless of a system’splace on the groupware spectrum,groupware des,gners face a com-mon set of Implementation ,ssuesSome of these Issues are descrl~d,n this section

CommunicationProtocols

Effective communlcat,on ,s v,lal tosuccessful groupware UnfOrtu-

r,aLely, CUr,e,,l COmmu”,cat,”,,s

technology ISnut as fully capable ofsupporting groupware as onemlgbt hope

F,rst, fully Integrated data conl-m“nlcatlons and dlgltlzed audlolv,de<, ,s ,Iot “nlversally avadabkGroupware developers need proto-cols that account for the dlfferlngrequirements of the var,ous mediaW,th aud]o or video, for example,tbe occasional loss of data is not d]s-astro”s, b“t a short transmlsslor,t,me ,s cruc,al Additionally, tbe tel-ephone and the workstation needto be Integrated at the system levelExisting prototypes, such as theEtherphone’” [82], are promlslng,but there IS no single network andaddressing scheme with an ,ncluslve protocol su,te that ,s acceptedas a standard

A second prohlem IS Inadequatesupport for muh,party cOmmunlca-tl<>n[73] Real-time computer con-ferences often requ,re that messages be sent to a specific set ofaddresses, such restricted broad-casts are called multt.ask Currentprotocols, whether v,rtual clrcult ordatagram based, are better su,tedfor communication between twop.rtles than for general muhlcasts

Finally, standardization of dataexchange formats IS essential Ifgroupware systems dre to be usefulacross organlzat]onal houndar,esThe office document arcb)tecture[41] and other information ex-change protocols are steps In tblsdirection

Access ControlAccess contr”l dcterm,nes wh” cd”access what and ,n what mannerEffective access control ,s Importantfor groupware systems, wh,ch tendto foc”s actlvlty and to Increase thehkebhood of user-to-”ser Lnterference Thmret,cal and apphed re-searcb on protection structures,such as capabdlty hsts, has deahonly with non-real-time multlusersystems where users are not tightlycoupled [23] These results need tok thought about In tbe context ofgro”pware’s requirements

Groupware’s access contr<>f !e-

54

COMPUTINGPRAfllCES

EffectiveaccessControlisimpor-tant for groupwaresystems,whichtendto focusactivityandto increasethelikelihoodofuser-

to-userinterference.qulrements have been described Inother bterature [27]. For example,Ifa group mskISviewed In terms ofIts participants’ roles, access con-straints are usefully specified interms of roles ratber than lndlvldu-als. Access perm,sslons are notstat)c, but can & granted and re-voked. A system can slmphfy theprmess of obtaining appropriateaccessrights by supprttng negotia-tion htween parties

Groupware’s requirements canlead to complex access models, acomplexity that must k managed.Since access ,nformatlon changesfrequently, there mustbe ltghtietght

access control mechanisms tbatallow end-users to easdy specifychanges User interfaces shouldsm~thly mesh the access modelw,tb the “ser’s conceptual mdel ofthe system. Changing an object’saccess ~rmlsslons should, for ex-ample, be as easy as dragging theobject from one container to an-other.NotificationIn a single-”ser environment, ,t ISImportant to “otlfy the “ser whe”constraints are being violated, orwhen a“tomattc operatlo”s pro-voke tr,ggers or alerters. Notlfica-tlon Is even more vl~l In a muhi-user environment, kcause usersmust know when other users makechanges thataffect the>rwork Thispoints out the need for a mohftcattm

mcknm—a way of alertlng andmodlfylng one user’s Interface ,“response to actto”s performed bysomeone at another interface

In synchronous InteractIons,real-ltm nottf:catton Is crltlcal, In

fact, notification and response

timesshould & comparable Tbereare different granularitiesofnotifi-catlon; at the finest level, any useraction—keystrokes,mouse motlon—resultsInnotification. For example,GROVE ISbased on keystroke-levelnotification as one user types acharacter, this text kcomes vtslbleto tbe other users. Coarser levelsofnottficatlon occur as user actionsare chunked into larger aggregates.A text-edltlng system, for Instance,could not,fy once a hne or para-graph IScompleted. Factorssuch asperformance, group size, and taskare Involved in choosing an appro-priate leveland styleofnotlficatlonIn general, however, we suggesttbat a fine-grained level of notifica-tion ISuseful for groups working Ina tightly coupled manner, such aswhen re$hewlng a dmument orJointly operating a spreadsheet Asthe focus shifts from ~oup taskstoIndlvldual tasks—leading towardmore asynchronous lnteractlon—coarser notification becomes moreapprOprlate

concltilm R.mahWe bave sbown how the conceptualunderplnn,ng of groupware—themerging of computer and commu-nications technolo~—applies to abroad range of systems. We haveexplored tbe technical problemsassociated with designing andbudding these systems, showinghow groupware castsa new hght onsome traditional computer scienceIssues. Information sharing In thegroupware context leads, for exam-ple, to unexplored problems in dis-tributed systemsand user Interfacedesign tbat emphasize group inter-

actionAlthough the prospects of

~oupware appear br,gbt, we must@ke Into account a history of ex.~nslve and repet,t,ve fad”re [30]ApplicatiOnssuch as video confer.enclng and on-hne calendars havelargely ben disappoi”tme”mThese fadures are not simply theresult of poor technology, b“t canalso k traced to desig”ers’ “aIveassumptions ahout the use of thetechnology [7]

Thus, an Importantarea “ot COV.ered in thxsarticle ISthe social a“dorganlzat,o”al aspects of ~Oup-ware design—lntroductlon, “sage,and evolutlon. It sho”ld be notedthat frequently a tool’s effect on agroup ISnot easdypred,cted or wellunderstood [46]. As menuondearlier, the system and the gro”pare intimatelyInteractingent,ttes.Asubstantial hterature explores theImpact of comp”ter technology onorganizations and Lndlvlduals[34,52,53,66]. Ultimately, gro”p-ware sbo”ld ~ eval”ated alongmany dimensions In terms of itsutihtyto ~oups, orga”izatlo”s andsmletles.

Groupware research and devel-opment $hOuldpr~eed aSan tnter-dlsc)phnary endeavor. We use theword interdlsclpbnary as opposedto multldlsc]phnary to stress thattbe contributions and approachesof the many disciplines,and of endusers, must & tnte~atid, and notsimply considered. It ISour kliefthat In groupware design, It is verydifficult to separatetechntcal issuesfrom smial concerns—and that themetbods and theories of the smIalscienceswillprove crltlcalto ~Oup-ware’s success.

[email protected] autbors would bke to thankLes Belady, Pete Cwk and BdlCurtis for encouraging and sup-porting groupware rewarch atMCC. Michael Begeman, Klm Falr-chdd, John Fehr, Mike Graf, BdlJanssen and Tom Smith providedmany contributions to MCC’Searly~oupware projec~. For their manythought-provoking conversations,

55

we th.nk Jeff Lonkbn, Ira Fern) an,Jonathan Grudln, Nancy Pennlng-ton, Steve Poltrock and BaldevS1ngh. We are 1ndehted to PeterMarks, Glenn Bruns, Nancy Gore,as well as numerous colleagues atother Instltutlons, and anonymousreferees for their constructive re-views of early drafts of this articleF,”ally we would hke to express our

appreclatlOn tO thOse PCOPle whOprovided us with excellent techn,cals“pport at MCC. ❑

References1. Ah.,., S R , k“s”r, J R , a“d H“,.,

D N The Rapprt m“b~medla con-ferenc,”g system 1“ P,oceedtfigs ofthe Confe~ewe on Offi.. Info_ttonS>S1- (Palo Ah., Cabf, Mar 23–25) ACM, New York, 1988, pp l–8

2. Applegate, L M , Konsy”skl, B Ra“d N“”amaker,J F A gr”up decis,on support systemfor,dea ge”er-at,o. a“d ,ss”. .“.IYSIS~“organtza-t,on plan”,”g 1“ P~oceedt”gsof theFtrxt C“%fere%ce 0. com@te?Su@wted Co”~e,altue Wo,k (A”st,”,T., Dec 3–5) ACM, New Y“rk,1986, Pp 16–34

3. Baize., R Process pr.gramm,ngpassing ,nto a new phase In pro.eedtngr of th F“urth Inte_tzomlSoftuave Pro,ess Wo,khop (De..”,UK, May 11–13) Softw Eng NotACM SIGSOFT 14, 4 (Ju”e 1989),43–45

4. Bancdhon, F K,m, W a“d Kord>,H A model .fCAD tra”sactto”s 1.P,meedt”gs of h Ehuenth Inte_-twwl conJwmce m Vq Lrge DataBmes (Stmkholm, Swede”, A“g21–23) Very Large Data Base En-do”me”t, Saratoga, Cabf, 1985pP 25–33

5. Barber, G Support,”g orga”,za-t,o”al problem solv,”g w,th a workstat,on ACM Tram Off l-f SyS1 1

1 (J.. lg83), 45–676. B,rrel, A D , Le.,”, R , Needham,

R M , a“d %hroeder, M D Grape-v,ne An ,..,.,,, ,“ d,str,butedcomp”t,”g Commun ACM 25, 4(Apr 1982), 260-274

7. Bodk.r, S , Kn”dse., J L Ky”gM , Eh., P, a“d Madse”, K HComp”ter S“pportfor cm~ratlvedes,gn 1“ Pro,eed,mgs of Confwen,ton Cmpute,-Su@mted Coopmatt.eWwh (P”rdand, Oreg , Sept 26–28) ACM, New York, 1988, Pp

377–3948. Byte December, 19889. Lard, S , He”derso”, D A lhe use

of m.ll$ple vlrt.al workspaces toreduce space conte”t,on B“ a graph,cal “s,, ,“terface ACM TramGraph,<. ACM, New York, 1987

10. Cashma”, P M , Stroll, D Devel”p-,“g tbe ma”ageme”t systemsof the1990s The role of collahrat,,ework 1“ Technol”p,al Suppoti f..Wo?k G.ou~ Collabo.at,on M HOlson, Ed , Lawrence Erlba.m As-sm,ates, P“bhshers, Hdl,dale, NJ1989, 129–146

11. Conkl,n. J a“d Bcgeman, MglBLS A hypertex~tool for exploratory p.b.~ d,sc”ss,on In Proceed,ngs of Second Co.fevm,e on C“m~ulev-Su@o,tid C“opmat,ve Work(Porda”d, Oreg , Sept 26-28)ACM, New York, 1988, pp 140–152

12. Cook, P Elb,, C , Graf, M , R.,”,G , a“d Sm,th, T Pro,ect N,ckMeet,ngs augmentat,o” a“d analy.s,, ACM Tram Off I.f SySt 5, 2(Apr 1987), 132–146

13. Croft, B W , a“d kfiow,tz, L 5Task s“~Dort ,“ an office SYste”,ACM T.;& Off Inf Sy,t 2, 3 (J”ly1984), 197-212

14. Crowley, T et al MMCo”f An ,n.frastru’ture f“, hudd,mg sharedm“lt,med,a appltcat,ons l“P,o.eedzngs of 1he Thtrd Conferm.e on Com+t,r-S”@o,led Coope,altueWovk(Lo,Angeles, Cabf , Oct 8–10) ACM,New York, 1990

15. DeClndt., F, DeM,chehs, G , SI-mone, C , VassaOO,R , Za”abo”iA M CHAOS as coord,”attio” tech.nology 1“ Proceedings of the FtvslConfme.,e on Cm~le, Su@o,tedCoop?vattueWwk (Austl”, T,., De’3–5), 1986, pP 325–342

16. De””,,, A R , Joey, FG , Jess”p,L M , N“”amaker, J F , a“d Vogel,D R I“format,o” Technology toS“PpOrt Electro”,c Meet,”gs MIS@rfwly 12, 4 (Decem&r 1988),pP 591–619

17. Ege, A , and Elb,. C A Des,g” a,,d,mplcme”ut,o” of GORD1ON, anob~ectbase ma”ageme”t system 1.ProceedtnEs of tb Inl_ltoml Con

fere~e.. fl~~~.ffn..n.g (~sAngles, Cabf, Feb 3–5) IEEE,Wasbtngc.”, D C , 1987, pp 226-234

18. Eg,d., C V,deo co” fere”c,”g as atechnology t. s“pprt group workA rev,ew of ,ts fad”,,, 1“ Proceed,%gsof th Se.od confer.... on C“n

pute?-SupPo,led C“”$<,.l,U, W“rk(P”rdand, Orcg , SepL 23–25)ACM, New York, 1988, pp 13-24

19. ElI,,, C A a“d G,bbs, SJ Concur.rencyco”trol ,n gro”pware systems1. Proc<ed,%Esof the ACM SIGMOD,89 Confmen,e on the Managment ofData (Seattle W~sh , May 2-4 1989)ACM, New York

20. Elbs, C A , G1hbs, SJ , and R.,.G L Des,gn a“d “se of. gro”ped,to, 1“ Eng”em”g f.. Hum.[.omputer Intm.,t,o. G Co.kto”,Fd , North-HoOa”d, Amsterdam,lq90, 13–25

21. Enxelbart. D C a“d Engbsh, W u. ,.A research center for augmc”[,”ghum.” ,r,tellect 1“ Pvo,eedtn~oftkFall Jotnt Com+lm Confmm.e (SanFra”ct,co, Cabf, De. 9–1 1)AIIPS, Reston, V. , 1968, pP 395–410

22. Fish, R, Kra.t, R, L.land. M aridCohen, M Q“dt A c.llab.ratlvetool for C..p.raLtVe wr!tl”g In Pr”ce,dtngr of the Confme”.e on Offt,elnf”_lto” SyS1em (Palo Alto, (.abfMar 23–25) ACM, New York,1988, pP 30–37

23. FItes,PE , Kratz,P I a“d Brebner,A F C“nlvOlad Semnty of ~om~.In fomat,o” Sysl-, computer .-,. . .,“., Press, R.ckvdle, Md, 1989

24. Flores, F, Graves, M , Hartfield. Ba“d W,n.grad, T Comp”ter sys-

tem, a“d tbe des,g” of orga”,zaCIO”.I ,nteract,on ACM Tvam OffImf SySt 6, 2 (Apr 1988), 153–172

25. G!bbs, SJ LIZA An extenstbiegroupware toolklt 1n p,oceedtng$ofI& ACM SIGCHI Confcm,e ortHuman Fa.to.s ,. Com@ttnE Sysf_(Aust,”, T,. Aprd 30–May 4)ACM, New York, 1989

26. Goodma”, GO, and A~l, MJCollahrat,on research ,“ SCL 1,,Pr”ceedtn~sof the Ft,rt Conference mtCompute.-Su@orted Coqwat,ue W“vk(Aust,n, Tex De. 3–5) ACM, NewYork, 1986, pp 246–251

27. Grelf, 1, and Sar,”. S Datasharln8!“ gro”p work In P~oceedtngs.JtheFz.rt Co.fm.”ce m Comptie?Su@orted Coope,attve Wo~k (Austt”,T,, , De. 3–5) ACM, New York,1986, pp 175–183

28. Gretf, 1, Sehger, R , a“d We,hl, WAtom,. data abstract,.”, ,“ a d,s-trtb”ted collabrat,ve edttlng sys-tem In Pro,eedtngs of lb 13th An.W1 Sympo.tum m Pfl%tpks ofPr”qammtnE knpges (St Peters-burg, Fla ,Ja” 13–15) ACM, NewYork, 1986, pp 160–172

‘P–RAtilCES

29. Grelf, 1 Ld tom~uterbupp”rtidCoopeTattveWork A Book of ReadtngsMorga” Ka”fma”n, San Mate.Cabf, 1988

30. Gr.d~n, J Why CSLW appbcac,”nsfad Problems ,n the desxg” a“dcvai”att.” of “rgantzactonal inter-faces 1“ ProceedtnCx of lhe SecondConference on Lom+tm Su@ovledC“”peraltve Work (Portland, OregSept 26–28) ACM, New York1988, pp 85–93

31. Grudl”, J , Pohrock, S COmp”ler-s“pported c.operattve work andgrOupware TutOr)al presented al[be ACM SIGCHI Conference onHuman Factors ,%ComputtnRSyrtem(Seattle, Wasb , Apr 2) ACM, New

York, 199032. HarDer, R R Huahes. I A Sha

.“

Plro. Dzworkln~ in harmony Anexam,”at,o” of CO~pUt., technol-ogy ,. a,rtrafficc.ntrol lnP,oceed-,.ES of the Ft,sf Eu,opean Confevmton Com+tm-S”ppo,ted Co@e,altneWork (Gatwtck,L. ”don, UK, Sept13–15) 1989

33. Hew,tt,C Officcs areopen systemsACM T,am Off Inf Syst 4, 3 (July1986), 271–287

34. Hdtz, S R Onltne CommuntttesACu. Stdy of the Offze of the Ful”reAhlex Press, 1984

35. Hdtz, S R , Turoff, M Tb NetworkNation Hum. Communtcatton vuConp”te, Add,,.” Wesley, 1978

36. Hdtz, S R , a“d Turoff, M The ,,”Iutlo” ofuserhehav,or t“ a COmp”t-er,zed conferenc,”g system C“%mu. ACM24, 11 (NOV 1981), 739–751

37. Hdtz, S R , and T“r.ff, M Str”c-t“rt”g computer-med,ated ‘omm”-“,cat,on systems to avo,d ,“format,.” overload COmmunACM 28, 7(Ju)y 1g85), 680-689

33. Hogg, J I“[elhgent message sys-tem, 1“ OJficc Aut_t,on, DTs,chr,w,s, Ed Spr,”ger-Verlag,New York, 1985, pp 113–133

39. Holt A W D,pla”s A “ew Iang”agefor the study a“d lmpl,m~”mt,O”of coord,nat,.n ACM Tram Off[nf Syst 6, 2 (Aprd 1988), 109-125

40. HoIt, A.W , Ramsey, H R , a“dGrimes, J D Co.rd,”atto” systemtech”olo~ as the h,,. for a pro-gramming env,rOnment Electn,alC.mmun ~7, 4 (1983), 307-314

41. H.rak, W Office dw”ment arcb~-tect”re and interchange format,Cur,e”t status of ,nte,nat,o”alsmndard,zat,o” IEEE Cm@l 18,

42.

43.

44.

45.

46.

47.

48.

49.

50.

10 (0.( 1985), 50–60t,h,,, H De,,g” of Team W“rkSta-t,on A reait,me shared workspa’cf“st”g desklops a“d c.mp”terscree”, I“ ProceedznErof the [FIPWC 84 C“nfe,eme on mcll, Usm Intmfaces ad A@ltcattom (Herakbo”,Greece, Sept 24–26) lFIP, 1990Joha”se”, R Tel,confmen,,ngandBqo”d Cmmunuat,o%, ,. the Off,,,of lhe Fulu,e McGraw-Hall, N Y1984]oha”se”, R Groupwave C“m~ulcrSu@wtfo, Bwt”esx Team The FreePress, N Y , 1988]oha”sen, R Le&tng Bu,nes, TeamAddxson-Wesley,Readt”g, Mass (t”& p“hhshcd 1991)Johnson-Le”tz, P a“d John,on-Lc”tz, T Gro”pware The prme,>a“d lmp~.t, of des,g” choxces InComptiv-Medmted CmmunzattonSysl- Stalin and E“almt,o”, E BKerr, a“d S R Hdtz, Academ,’Press, New York, N Y , 1982K,,,.,, G E , Kap]a”, S M , andM,callef, J M“h,”ser, d,,tr,hucedIa”guage-based e“vIro”me”tsIEEE Sofiu 4, 6 (No, 1987), 58-67Karbe, B Mmspcrger, N We,,,, PS“pprt of cwperatIve “ork byelect,. ”,< c,rc”lat,on folders 1,,Proceedingsof the Conference.“ Off,.,[nfo_tton Systtm (Cambridge,Mass, Aprd 25–27) ACM, NewYork, Iggo, pp log–117K“,ster, MJ , Prakash,A D,stEd,~A d,str,h”tcd toolk,t for supportingmult,ple group ed,tors In Proceed,“gs “f lhe Tht,d Co”fe~_e on Compute~-Su@o,ted Coope,at,ue W”rk(Lo,A“geles, Cabf , Oct 8–10) ACM,New York, 1990Koszarck, JL et al A m“l”-”,crdoc”me”t ;ev,ew CWI 1“ Pvmced,ngs of the IFIP WG 84 Cmfevm, mMult, U,,, Inte~accs ad A@l,cahom(Herakhon, Greece, Sept 24-26)lFIP, 1990

51. Kraemer, K L , and K,”g, J.LComp”ter-ba,ed systems for coop-erative work a“d ~o”p dec,s,o”making ACM Cw~l Sum 20, 2(J.ne lg88), 115-146

52. Kra”t, R E Sm,al ,ss..s a“d wh,ce-‘00., technology a“ OV,,V,,W

Technolo~ ad the T,amfo-t,on ofWh,tc-Col&, Wo,h, Erlba”m Assm,-ates, Hdlsdalc, Cabf, 1987, 1–21

53. Kraut, R , Egtdo, C , and Galegher,J Patternsofc.”tacta”d comm””l-cat,on ,“ sc,e”t,fic researcb COll.h-

rat,o” 1“ Proceedtngi of tb Sec”&

54

55

56

57

58

59

60,

61,

Confer,,,,, “n Comp,,lev.\t,pP”vtedCoope,at,ueW“,k (Portland, oreg,Sept 26–28) A(.M, New York1988, pp 1–12Krueger, M W Arttfic,al R,altt)Add,son-We,ley, Read,”g, Mass1983Krueger, M W , G,o”fr,ddo, T , andH,”r,ch,en, K VIDEOPLACE A“art,fic,al reahty In P~oceedtngs“ftheCHI ’85 Confe,en,, on Huron Facto,s,. C“mputtng System (Sa” Fra”c,xo,Cabf , Aprd 14–18) ACM, NewYork, 1985, pp 35–40La”tz, K An exper,me”~ ,“ ,“tc-grated m“lt,med,a cot,fere”c!ng 1.P?oc,ed,nRs “f tti F,,s1 Confer,.,, onCompute.-Su@”v1ed Coope,att”c Work(A”st,”, T., , De. 3–5) ACM, NewYork, 1986, pP 267–275Leland, M D P , F,sh, R S , andKraut, R E C. Oab.rat~vedw”me”cproductto” us,”g Q.dt 1“ P~oceed,.CS “f Lht Conference on Cmpute,.Suppo,ted Coop,,at,ue Wo,k (Portland, Oreg , Sept 26–28) ACMNew York, 1988, pp 206–215Lewis, B T , a“d Hodges, J DShared Books Col)ahrat,,e publ,.catlo” ma”ageme”t for an off,.,[“ format,.” system 1. Proceedingsof the Confermceon OfficeInfo_twn

sYste~ (palo Alto, Cabf, Mar 23–25) ACM, New York, 1988, pp197–204Lochovsky, F H , Hogg, J SWe,,.., S P Me”delzon, A OOTM Spec,fy,ng office ~asks InP,o,,ed,ngsoflhe Conferenceon Officelnfomat,on Sy,tem (Palo Alto, Cabf,March 23–25) ACM, New York,1988, pp 46–53Lowgren, J HIstory, state and fu-t“re of user t“terface management$ystemsSIGCHfBUlkt:n20, 1 (JuIY1988), 32-44Mad,,”, C M Approa<h,”c gro”pcomm””,cat,o” by means .? in o;.fice budd,”g metaphor 1“ Pvoceedtrigs of tti F,,st Euvqean Confe,emeon Cm+lev-Su@md Coo@,at,ueW“rk (Gatw,ck, knd”n, UK, Sep-temkr 13–15) 1989

62. Malone, T, and CrOwstO”,K What,s cwrd,”at,o” theoq a“d how .,.,t help des,gn cw~rat,ve work systerns>lnP~ocetdtngs of the Thtrd Cm.

f~~ce ~ cOm@~-suPPO*dco@e,tit”, Wo,k (Lo, AnKeles,Cahf, %C

63.

8–10) ACM> New York, 1990,pp 357–370Malone. T. Gra”t. K T“rhk FBrobst, S , a“d Cohen, M l“tcO,-gent lnformatl.n-shart”g systems

57

Lommun ACM 30 5 (May 1987)390–402

64. Mante,, M Laptur,ng the capt.r?lab concepts A case study ,“ thedestg” of computer s“pportedmeet,ng c“v,ro”ments 1“ Proceed.,.ES oflhe Second Conferenceo. Com+1,, Suppo,ted Coope”at,.e W“,k(Portland, Oreg ScpL 26–28)ACM, New York, 1988, pp 257–270

65. ..” MartIaI, F A co”versat,onmodel for resolv,ngconfl,cts amo”gd,str,b”ted office act,v,t,es 1. Pro-,eedtngs of lhc ACM Confe,e.ce “n

Offi.. [.f.~t,.. SYS@~ (c.m-br,dge, Mass, Apr 25-27) ACM,New York, 1990, pp 99-108

66. Olso”, M H , a“d L“..,, H C Jr ,The ,mpact of office automat,”. ontheorga”,zatto” Some lmpbcatlonsfor research and pracc,ce CommunACM 25, 11 (No, 1982), 838–847

67. Opper, S A groupware toolbxByte(Decemkr, 1988)

68. Osterwed,L Softwareprwesse, arcsoftwaretoo 1“ Proceedingsoftti 3dInti.tt_l Soflua.e Pvmess W“vkshop (Brecke”r,dge, Colo , Nov 17–19) Lomp”ter boc>etyPress “f theIEEE, Wash!ngto”, D C , 1986, pp79–80

69. Osterwed, L A“tomated supp”r,for the enactme”t of r,goro”sly descr~bedsoftware processes 1“ P,.ceed,ngs of the Fou~th Inle_l,omlSoftware P,ocess W“.&hop (Devon,UK, May 11-13, 1988) Soft EngNot, ACM SIGSOFT 14, 4 (J””e1989), 122-125

70. Panko, R R 38 offices A“alyz,”g“eeds ,“ tnd,v,dual offices ACMTram Ofl Inf Syst 2, 3 (J”ly 1984),226-234

71. Rein, G and Elhs, C The N,’kcx~r,m,”t re,”terpreted ,mpbca-[,0”, for developers a“d evaluatorsof gro”pware OfftceTech ad Pc.ple 5, 1 (Ja””ary 1990), 47-75

72. Root, R W Des,g. of. m“b-med,aveh,cle for sw,al brows,ng 1“ Proceedtngs of tti Second Conferwe onC“m~ute,-Su@wted Coo~eralt”eWork(Portla”d, Oreg , Sept 26-28)ACM, New York, lq88, pp 25–38

73. S.,,”, S , a“d Gre,f, 1 Computer-based real-t,me confercncl”g systerns IEEE Comput 18, 10 (Oct1985), 33–45

74. Sc,gba.o, J A , Ce”tt”t, B A , andJoslyn, D L A Real-t,me Un,x-based Elcctron,c Classrwm In Proceed,ngs of the IEEE Southeution ,87(Tampa, Fla Aprd 5-8) IEEE,

New York, 198775. S.,,!., J R Speech Acfi An h,,.) t.

the Philosophy of h“~gc Cam-brtdgc U“lVCrS,tyPress, 1969

76. S,ngh, B Invxtedtalk o“ coord~”.-t,o” systems at the O?ganzmtzomlCom@ltfig Confmence (November13–14, 1989, Aust,n, Texas)

77. Sl”,zer, S a“d Cashma” P M XCPAn experimental tool for manag!”gcoopcrat,ve act,vtty In Pvoceedtngsof the 1985 ACM Com@tw Scte”ceConference ACM, New York, 1985pp 251-258

78. Stefik, M , Bohrow, D G , F“ster,G , La”nlng, S , a“d Tartar, DWYSIWIS rev,sed Early expert.....s w)th m“b,”ser InterfacesACM Tam Off Inf Syst 5, 2 (Apr1987), 147–186

79. Stefik, M , Foster, G , Bobrow,D G Kah”, K , Lann,ng, S , andS.cbma”, L Reyo”d the chalk-bard Compute, support for c“l-laboral,o” and problem ,01”1”8 ,,>meet,ngs Comm.n ACM30, I (J,”1987), 32–47

80. Watabe, K , et al A d,str,b”ledm“lt, party desktop co”fcrcncx”gsystem and ItSarchitecture In P70,eedtnEs “f the IEEE Phoenm Lonfev,.,, “n C“mputw,ad C“mm”.,c.tt.m (Ph”en,x, A,,. , Mar ) IEEE,New York, 1990, pp 386-393

81. Woo, C C SACT a twl for automattng sem~-str.ct”rcd orga”,zatto”al comm.ntcat,o” h, Pr”.e.d,ngs of the Co.fer_e .“ OfficeInf”_tio. System (Cambr~dgcMass Apr 25–27) ACM, NewYork, 1990, pp 89–98

82. Zeileger, PT , Terry, D B , a“dSwt”ehart, D C A“ overv,ew “fthcEtherphone systemand ,ts appbca-t~ons 1“ Proctedtsgs “f lhe SccotiIEEE Confm,nce on Cmputev Workstattm (Sa”ta Clara, Cahf , Mar 7–10). IEEE, Wash,ngto”, D C , 1988pp 160-168

83. Z!sma”, M D Represe”tat,o”, svc,ficat,o”, a“d automation of officeprwedures Ph D dlssermt,o”Wharton %hool, Un,v of Pe”nsyl...,,, Ph,ladelph,a, Pa , 1977

Ca~oties md S“bja &=riptors:D 22 [%fware En#n*ring]: Tool,a“d Tech”,q”es—we. ,n~a<e,, H I 2[Mdels md Principles]: User/Mach,”eSy.tems—h.mn tnfo-ttm P.cesst.g,H 43 [Infomatio” Systems Applica.tions]: Commun,cat,on, Appbcat,o”sK 40 [bmp”tem md ~ie~]: R“eral

&“eral Te-.:Des,g”, Human F...l“r,

Additio”d Key Words -d Pbraws:Comp”ter-S”pported CooperativeWork, coordl. atlo”, m“lt,user ~.tcrface,, organ,zat!onal ,nterfaccs

Ak”t tie Authors:CLARENCE ELLIS ,s a s.”*”, “,e[”krof the tech”!cal SLaffI“ the SoftwareTechnology Program at the M,croclectron,’s and Computer Tech”olo~ Cor-pratlOn (MCC) a“d ad,unct ~,ofe,,o.at tbe U“IverstiLyof Texas H,s researcbefforts have rece”tly bee” ,. the areasof c“llaborat~on a“d coord,”at,o” sys-tems, office ,nformatlo” ,y,t. m,, andd,str,b”ted systems

SIMON GIBBS ,s a“ ass,smr,tprofess”,at the Centre Un,vers,ta,re d,lnf“rmac,q”e, Un,verstty of~neva, Swit-zerland He ,s curre”tly work,”g o“software t“format,on syslems and m“lttmed,a programm,”g A“[hors Presen,Address Centre U“IversItaIre dTnformat,que, U“lvers,ty of G“.”., 12R“. d“ La., Geneva 1207,Sw,tz,rla”dS,mO”@,UtS”” ““t~e ch

GAIL REIN ,s a member “f tech”,’.)staff ,. the Software Technology Program at MlcrOel.ctrOnlcsand COmput.rTechnology Corprat,o” (MCC) He,research ,“terests are,nmult, user ,“teT-faces, VISU.Ilanguage,, d,str,buted systerns, gro”p work dynamtcs, a“d lechnol”gy Cran,fe,

A“thors’ Pre=”t Address: ClarenceElhs a“d Gad Re,. are w,tb MCC, 3500Balcones Ce”ter Dr,ve, A“st,”, TX,78759-6509 elbs@m’c corn, retn@mcccom

The Coordinator,s a trademarkof Act,onTechnologies1“.

ForComment,s a trademarkof Brderb”nd,1“,

Perm,,, to” to copyWltho”tfeedlorpanofth,, mater,d ISgra”ted prov,ded that thecop,esare notmadeord,strtb”ted ford,rectcommcrc,d advantage,theACM copyrtgbt“ottceandchec,tleofthcp“hhcattona”d,tadateappear,andnot,c. tsxt=”thatcopy,n%,s by pem,ss,o” of the Assoc,at,on forComputt”gMacb,”eT Tocowotiew,=, orto rep”bl,sh, req”,re, a fee and/orsPectfi’wrml~s~..

@ 1991ACM0001-0782/90/1200-038$150

58