CSCW(Computer Supported Cooperative Work)一词最早是由MIT的Irene Grief和DEC公司的Parl Cashman在1984年提出,用于描述他们正在开展的如何利用计算机支持交叉学科研究人员共同工作的课题,并于1986年在美国Texas召开的第一次国际CSCW会议上正式使用,它的含义是计算机支持的协同工作,CSCW是一个非常热门的研究课题,美国CSCW国际会议每两年举行一次,欧洲也是每两年召开一次欧洲CSCW会议。由于CSCW是一个跨学科的研究领域,它涉及到计算机科学、信息科学、社会学、心理学及人类学等多种学科,研究工作刚刚开始,所以目前还没有一个确切的定义,有人认为:CSCW致力于研究协同工作的本质和特征,探讨如何利用各种计算机技术设计出支持协同工作的信息系统。
  与CSCW密切相关的另一个概念是群体(Groupware),群体是能够体现CSCW思想的多用户软件。两者所要解决的问题是一致的,群体意味着支持CSCW的软件系统。也有人认为群体是为协作群体的使用而设计的特殊的计算机系统。这些群体一般是"为了完成某个项目而组成的工作小组,它具有明确的任务及严格的期限。群体包括软件、硬件、服务和群体工作过程的支持等。"

  什么是计算机支持的协同工作系统CSCW(Computer Supported Cooperative Work)?有哪两种本质特征?哪三种基本活动?
  CSCW系统是对完成共同任务的群体进行支持,共提供共享环境访问接口的计算机系统。
  CSCW系统有两个本质特征:共同任务和共享环境。
  CSCW系统三种基本活动:
  (1) 通信:协同工作者间进行信息交换;
  (2) 合作:群体协同共同完成某项任务;
  (3) 协调:对协同工作进行协调,使群体工作和谐,避免冲突和重复。


  由于CSCW系统能够适应信息化社会中人们工作方式的群体性、交互性、分布性和协作性的特点,所以它发展的特别迅速。目前世界上很多研究者正在从事CSCW系统有关群体协作理论的研究,协同工作的本质和特征也就是研究个人和群体的行为特点,协作的目的、意义手段以及有效的协作方式和协作模型,还有协作的支持技术。这些问题首先涉及到协同工作人员的因素和工作习惯,具体内容如下:
  ·个人因素:人们之间的通信以及进行工作的方式,由于个人的行为将影响群体的协作,所以它对CSCW系统是一个非常主要的因素;
  ·组织因素:组织的结构及工作习惯,它涉及到各种规模群体的组织和管理方式,特别是如何给用户提供所需的各种信息,如何组织设计等问题;
  ·群体工作的设计:包括对协同工作的分析以及如何用CSCW方法解决群体工作问题,特别是这些分析及设计过程中用户的参与、原型系统的测试及使用;
  ·群体动态性因素:包括人们对在一起协同工作方式的理解,如何作出群体决策,如何进行协作等问题。
  这方面的研究会涉及到心理学、认知科学、社会学等学科,对于计算机学科,要研究如何支持人们的协同工作,如何提高群体协作效率所需要的各种通信及计算机信息技术。它们包括:
  ·通信技术:使人们在不同的地方看到、听到对方,并且可以相互发送消息,如电话、电子邮件及视频会议等技术,这些技术对通信的过程以及要完成的任务不提供结构化或其他附加的支持;
  ·共享工作空间机制:提供一个虚拟的空间,使两个或更多个参与者能够在其中进行协同工作,如共享屏幕和电子白板等;
  ·共享信息机制:使协同工作者能够共享信息,两个或多个协同工作者能够存储、访问、组织和处理共享信息;
  ·群体活动支持机制:对群体工作过程的支持,如文档的共同编著,设计图纸共同审查讨论,特定工作任务的显示等。
  CSCW系统是对完成共同任务的群体进行支持,并提供共享环境访问接口的计算机系统。CSCW系统有两个本质特征:共同任务和共享环境。一般应具有下述三种活动:
  ·通信:协同工作者间进行信息交换;
  ·合作:群体协同共同完成某项任务;
  ·协调:对协同工作进行协调,使群体工作和谐、避免冲突和重复。
  可以根据下述特征、对CSCW系统进行分类:
  ① 交互形式:CSCW的群体工作者之间的交互可以是同步的或异步的,同步交互要求 所有参与协同工作的用户同时参加,而异步交互允许交互行为可以延迟发生;
  ② 地理位置:参与协作的多个用户地理位置可以是远程的也可以是本地的,它涉及到 协同工作的系统组成,远程时需要采用远程网络进行交互通信,本地情况可以是采用两人间,也可以是多人间的。
  ③ 群体规模:协作可以是两人间,也可以是多人间的。
  根据上述特征我们可以把CSCW系统的分类表示成一个三维空间,一维表示时间坐标,说明是同步还是异步交互协作;一维是空间坐标,说明协作对象空间位置是分散的还是集中的;一维是群体规模坐标,它表示协作者的多少,两人还是多人。CSCW系统的具体分类,参考图8.32。从图中我们可以看到:
   8.32 CSCW系统的分类
  
  电子邮件系统:它们的特征是协作参与者空间坐标是分散,时间坐标是异步,群体规模是两人。在这类系统中,协作参与者之间通过彼此发送消息进行通信与协调,这类系统可以将消息赋予如提问、回答、许诺等类别的标志,使系统可以跟踪交谈过程,从而可以提示用户进行适当的响应。
  视频会议系统:这类系统参加人数可以是多人,空间坐标是分散远距离,时间坐标是同步交互,它可以和数据库和电子白板相连,可以大大提高面对面会议系统的效率。
  协同编著系统:参与协作人员是多人,空间坐标是分散远程,时间坐标是同步的,这类系统可以支持协同编辑人员共同协商讨论,支持文档的联合创建,组织评审和版本控制等。

  CSCW系统具有非常广泛的应用领域,它可以应用到远程医疗诊断系统、远程教育系统、远程协同编著系统、远程协同设计制造系统以及军事应用中的协同指挥和协同训练系统等。正是由于这些应用促使人们更进一步的对群体协作的复杂性及有效协作的工作模式进行深入研究,出现了很多有关协作方面的理论,提出了很多群体协作模型:对话模型、会议模型、过程模型、活动模型以及三层抽象模型等,简述如下:
  一、对话模型
  在已有的CSCW系统中,有相当一部分是基于协作的对话模型的。这种模型将人们之间的各种复杂的协作建立在两个人之间的交互和动作的协调基础上,认为两人间的协作是各类协作的基本元素,而两人间的协作又是特定的言语行为(如请求、许诺等)的执行来完成的。言语行为的表达依赖的是某种语言的词汇,但言语行为却是独立于这些特定语言词汇之外的非语法含义,它是两人间协作的根本。
  可以从通用语言的层次上对这种构成两人间协作的言语行为进行研究,建立讲话一操作(Speech-Act)理论。该理论用三个特征来刻划言语行为:
  ·非语法含义(illocutionary point):它可通过定义言语行为的寓意来解释。如"请求"的寓意可以定义为使听话人做某事的企图;"断言"的寓意是对某事件真实状态的表达;"许诺"的寓意是说话人承担做某事的责任。
  ·适应方向(direction of fit):它指的是命题内容与命题所指世界的关系。某些非语法含义的方向是使内容适应世界,而另一些是使世界适应内容。断言属于前者,许诺与请求属于后者。
  ·诚恳状态(sincerity condition):它是指说话者对其命题内容心理上的态度,比如在断言的情况下,说话人表达了他所说的是真实的这一信念;在请求他人做某事时,说话人表达了他想让听讲人做某事的希望;而如果某人承诺了做某事,他表达了做某事的意愿。
  根据这三个特征,言语行为可分为断言(Assertives)、指令(Directives)、承诺(Commissives)、表达(Expressives)和宣布(Declaretives)等,而协作就是通过这些言语行为的执行完成的。
  基于对话模型的系统主要是消息系统,它们支持参与者之间通过彼此发送异步的消息来进行协调与合作。
  不同于讲话--操作理论中的协作模式,Medina-Mora将两人间的协作抽象为一个动作环,如图8.33所示,两个人的身份分别定义为客户和执行者,这个协作环由四个阶段组成。在第一阶段,客户向执行者提出完成任务的请求;在第二阶段,执行者根据情况决定是否接受其请求;在第三阶段,执行者完成客户提出的任务,并向客户汇报;在第四分阶段,客户向执行者表示感谢,这意味着协作的完成。可以认为所有的协作都是由这样一些基本的协作环组成。
   8.33 两人间的一种协作环
  
  对话模型较好地刻划了两人间直接的交互与协调合作,它将多人间的协作看成两人间协作的简单组合,但实际并非如此,多人间的合作有其固有的特点。

  二、会议模型
  会议是日常生活中最常见的多人间的协作形式,会议使多个人聚集在一起,就共同的问题进行讨论,参与者各自发表自己的意见,并听取他人的看法,通过交流协商,相互学习,最后对同一问题达成共识。具体地会议有以下作用:
  ·参与者通过交流思想,相互学习,吸取经验,促使知识、方法、策略的结合。
  ·参与者经过讨论,纠正错误看法,消除误解,使各观点融合,得到对某问题的一致认识。
  ·参与者对共同事物施以动作,协同完成同一任务。
  从概念上讲,会议模型的协作如图8.34所示,多个协作参与者通过共享讨论空间被组织在一起,在这个共享空间中,他们可以相互交流,或者通过对共享信息的操作来发表自己的意见,与其他参与者进行讨论。会议模型的特点是协作参与者一般不进行两两间的交互,而是通过共享的信息空间彼此沟通。
   8.34会议模型的协作
  
  以这种模型为基础的CSCW系统包括计算机会议系统、白板系统、电子公告栏及其他一些基于共享信息的协同操作系统,其中计算机会议系统最为典型。早期的会议系统只是文本形式的异步系统。
  在这些系统中"会议(Conference)"是有关某个"主题(Topic)"的所有结构化"消息(Message)"的序列,会议成员想与其他人就某个主题进行交流就必须往该主题会议中增添表示自己看法的消息,而一个会议中的所有消息对会议的所有成员而言都是可见的。随着可靠高速通信网络的发展,出现了实时的同步会议系统,它们允许会议成员进行实时的交流,而工作站及多媒体技术又导致了多媒体桌面会议系统的出现,这些系统可处理多种媒体形式的信息,如语音、图像、视频等,这样会议成员之间的交流就可以利用这些多媒体信息,使得交流自然真切。
  以上这两种协作模型都是从完成具体协作任务时人们之间的交互关系这个角度来进行刻划的,下面两种协作模型从协作任务的管理及分工与合作的角度来刻划人们之间的协作。

  三、过程模型
  一个复杂的操作过程,往往被分成一个个不同的小操作步骤,通过对这些小步骤的分别处理使整个操作过程得以完成,如机械产品的生产与装配,从一开始到成品的生产,需要很多步骤,而每个步骤的执行都是由不同的工人负责,这些工人通过单独完成相应的装配步骤,共同地执行产品的生产任务。
  在企业的办公业务中也是如此,许多办公室工作并不是由个人完成整体工作,而是由一组成员顺序完成一系列的小任务,例如:销售业务中的定单处理、接收定单、校验信用证、核对库存、开发货单、库房取货、货物发运、寄发货单、接收货款、成本核算等等,其中小组成员各自分担部分工作,通过分工与合作共同完成任务。
  这种将协作任务分成相互关联的多个小步骤,而通过多个人分别单独地对小步骤的执行共同来完成任务的协作模型称为过程模型。在这种模型下,协作任务的完成是由多个人的单独异步的行为彼此相连而形成的一个复杂的过程。要通过这种模型进行协作,首先要对任务进行分析,将其分成小的操作步骤,形成一个工作流程(Workflow),然后确定每个参与者在完成任务时所应该执行的具体操作,以及需要与其他人交换的信息,并且还要制定协作者的行为规范,赋予他们一定的权力及所担负的责任。而整个任务的完成就是通过各参与者单独地执行事先定义好的相应的小步骤而一步一步向前推进。
  由于过程模型严格地规定了各协作参与者的行为,使得他们之间的协作是预先定义好的高度结构化的协作,缺乏灵活性,它只适合于具有良好定义的办公过程,其应用有一定的局限性。

  四、活动模型
  在现实生活中,对很多协作任务而言,都无法事先确定其详细的执行过程。此外,每个人在完成任务时都 有一定的自主性,人们之间有效的协作也往往是非结构化的。因此为了较好地刻划人们之间普遍性的协作行为就出现了活动模型。活动模型与过程模型基本上类似,其中多个人也是通过分工与合作来共同完成协作任务,然而活动模型并不是将协作任务分成由多个操作步骤组成的过程,而是将其分成一个个目标明确的子任务(有时也称为活动(Activity)),定义这些子任务之间的关系,以及各个子任务的完成者。然后通过各协作参与者分别对相应任务的执行,使整个协作任务得以完成。
  活动模型是对过程模型的进一步扩充,它主要着眼于在执行任务时参与活动的成员间交换什么信息,而并不规定子任务完成时所需执行的操作。它一般只给出子任务的目标及相关信息,如任务期限、执行者、所需资源及与其他任务之间的关系等等,这样执行者完成任务时,就可以根据实际情况,按自己的方式操作,而不受以约束。
  活动模型强调了人们实际的操作,符合了人们行为的情景性 (siruatedaction)特点,具有很好的灵活性。这种协作模型在实际生活中比比皆是,如协作科研项目的完成等需要创造性的协作活动,由于事先根本不知道如何进行,只有规定子任务而不给出子任务的具体执行步骤。
  活动模型在CSCW中的应用非常广泛,在欧洲EuroCoOp项目中就以此为基础提出了异步活动协调模型(EACM),其中给出了"任务"及"任务上下文"等概念。当然,活动模型主要处理的是对多人合作完成的复杂协作任务的分工,以及对子任务之间的关系和整个任务完成进度的管理,它并不涉及到子任务的具体完成方式,往往子任务是由单个人在与其他人无任何联系的情况下完成的。子任务本身的完成没有多人间的同步协作,它仅仅描述了多人通过各自完成同一任务的不同部分而进行的异步协作。上述EACM模型就是如此,这样一来它就无法处理多人间同步的协作问题。

  五、三层抽象模型
  过程模型和活动模型刻划了完成共同任务时各协作参与者之间的分工与合作,会议模型描述了多人之间进行讨论交流的协作行为,对话模型定义了两人间的交互关系,它们都从某个方面对群体的协作进行了抽象。然而在现实生活中,有些群体的协作行为包含以上多种协作模型的特点,如学校中一门课的教学活动,教学是教师与学生共同完成的一项协作任务,这一协作任务首先要分成多个小的子任务,如各章节的教学、实验及测验等,而在完成这些小任务的时候,如上一堂课,又需要教师讲、学生听以及相互讨论等。从这个例子中,我们可以看出人们之间的协作还具有层次性。鉴于此,将群体的协作行为抽象为"会议(Conferences)""活动(Activities)"及"合作(Collaborations)"三个层次。
  ·会议是多个人通过各种途径进行的时间上连续的一次同步交互过程,如一堂课的教学、一次日常的讨论会等,它刻划的是多人间的关系。
  ·活动是一组语义上相关的同时进行的会议的集合。有时一个会议的进行取决于其他会议的状况,如公司的技术人员与经理讨论一份管理报告时,为了及时地得到报告的详细内容,经理又必须与秘书进行交互。
  ·合作是一个具有时间顺序的多个活动组成的序列,如一门课的教学是一个合作,它是上课、实验及测验等活动的具有时间顺序的序列。
  这种模型考虑了群体协作的层次性,较为全面地刻划了某些群体协作过程,然而它所针对的群体协作是一些类似教学活动的结构相对固定的常规性协作过程,活动与活动之间的关系比较简单,并且其最低层是时间上连续的同步会议,这就无法处理由不同的人完成不同子任务的情况。为了概括现实生活中所有的群体协作形式,我们提出了协作的活动-任务-合作模型。
  六、活动一-任务的一个合作模型
  此模型的概念图如图8.35。模型的最高层抽象为合作(Collaboration)。合作是多个人为完成独立长期的合作项目而执行的所有行为,它具有完全的独立性,合作与合作之间一般不存在联系。其中合作项目可以是一个科研项目,可以是一个软件系统的整个开发任务,可以是对一个病人的全部诊断,可以是一个产品的设计开发,也可以是一门课的教学。合作只涉及有关合作项目的一些描述信息,用以表明该合作的目的、意义、完成人员、完成计划及大致的实际完成情况。其中包括:
  ·合作名称。可以是所需要完成的项目的名称,它唯一地标识该合作。
  ·合作的目标。它说明所需完成项目的背景、意义及所需解决的问题。
  ·完成项目的人员及职责。
  ·项目的启动时间与持续时间。
  ·项目的预算及所需的各种资源。
  ·合作的状态。表示项目实际的执行情况。
   8.35活动一任务的一个合作模型
  
  此模型的第二层抽象为任务(Task),任务为合作的各个阶段所需完成的具有一定目标、语义完整的相对独立的长时间协作行为,它具有相对独立性,同一合作的不同任务间有着各种联系,但就任务本身而言,其目标是明确的,其语义是完整的。每个任务可分为任务体(Task Body)与任务上下文(Task Context),如图8.36所示。任务体主要是对任务执行者、执行时间及执行状态的描述,其属性包括:
  ·执行者。 负责完成该任务的人员。可以是单个人,也可以是一组人,如果没确定完成某任务的人员,则执行者可以为空。
  ·期限。 为任务的计划完成期限,任务的实际完成日期可以在完成任务后再加上。
  ·开始日期和持续时间。 最早执行任务的日期与执行任务的时间。
  ·开始条件与结束条件。 任务开始与结束时必须满足的条件,如某任务的执行必须以获得某些资源为基础。
  ·状态。 表示任务所处的状态,如计划中、执行中、完成等。
  任务上下文主要描述任务及任务的执行与其他事物之间的联系,其属性主要包括如下几项:
  ·任务所属的项目。
  ·任务的执行所需的各种资源,包括所需的信息、执行工具及其他实物。
  ·任务之间的关系。
  ·子任务结构。任务可以进一步细分为更小的任务,此属性表示该任务所包含的子任务及它们之间的关系。
   8.36任务结构
  
  一个复杂的合作项目往往要分成多个任务,如一个机械产品的设计开发要分成项目定义、调研与需求分析、设计、制造等任务,而每个任务也可以进一步分成更细的小任务,如上述设计任务可以分成对产品中各零件的设计等,这些任务之间都彼此相关,形成了一个任务网。一个合作就是由一个任务网组成的。而通过对任务网中相关任务的完成,达到完成合作项目的。
  此模型的最底层抽象为活动(Activity),活动是完成某项具体任务时,单个人或一组人执行的在时间上连贯的一次行为,它强调的是行为的时间连贯性,也就是同时性,而并不强调其行为结果的完整性,因为这时才有同步协作的问题。例如,为了对某个问题的看法达成一致,可能需要多次讨论,每次讨论都是一个活动,在一次讨论后可能没有得到最终结果,然而在这些讨论都完成后,必须得到一个统一的结果,也就是说完成该任务。一个任务由一组活动序列组成,当然这些活动可以是单个人执行的,也可以是多个人共同执行的。如一个零件的设计既需要个人分头单独的异步设计,还需要多个人的同步讨论,并且这些行为往往需要进行多次才能使一个任务得以完成。活动包括所有的人类行为,它可分为如下几类:
  ·多人同步紧耦合的协作,如召开讨论会对某问题进行探讨。
  ·个人单独异步地完成协作任务的一部分,个人完成任务时本身没有协作。
  ·非正规的协作活动,如无事先安排的平等的协作参与者之间的临时交流。
  ·其执行与计算机无关的行为。
  在此模型中,从合作层到任务层表现为完成复杂协作任务时群体成员之间的分工与合作,而从任务层到活动层,表现为完成具体任务时人与人之间的交互及行为的协调。通过这三层的抽象,将独立的合作看成多个彼此相关的子任务的网络,并且将各子任务看成多个活动组成的序列,此模型可以概括人与人之间的所有协作行为。
  在一个具体的协作通过以上三层抽象表示之后,其实际的执行过程就是自下而上的了。首先协作参与者进行的是各种活动,通过对各种活动的执行,使得相应的任务得以完成,当所有相关的任务都完成了的时候,最终的合作项目也就完成了,此时全部的协作也就结束了。此过程如图8.37所示。
  从以上模型中,我们可以看出,为了有效地对群体的协作进行全面的支持,CSCW系统不仅需要管理各任务之间的关系及任务的执行进度,而且还要对完成具体任务时群体之间的协作(即各类活动)进行有效的支持。就参与协作的个人而言,他们的直接行为是执行那些完成各种任务所需执行的活动。当然这些活动有的只需单个人独立执行,而有的必须多个人同时一起执行。通过这些活动的进行,使任务得以完成,进而使协作项目得以完成。在一个工作单位中,对某个具体的工作人员来说,需要他参与的活动往往不只一个,并且这此活动的类型可能不同,这样为了提高工作效率,同一个工作人员,有可能同时进行多个活动,参与多项协作,完成多种不同的任务。因此CSCW系统应该提供对这种复杂情形的支持,允许用户在各种工作形式,各种协作方式之间进行自由的转换,使用户的使用方便灵活。
   8.37 合作项目的完成