Specifying coordinators: guidelines for groupware developers

D. Marca
{"title":"Specifying coordinators: guidelines for groupware developers","authors":"D. Marca","doi":"10.1145/75199.75234","DOIUrl":null,"url":null,"abstract":"There is a growing trend to develop software that supports the work of groups, as opposed to individuals. Such software is currently being termed groupwure (Tazelaar 1988), and the technical field is being called computer-supported cooperative work (Greif 1988). One aspect of supporting group work involves coordinating the speaking and actions of teams. A coordinator is software which supports team conversations (Winograd 1988). Coordinators are distinguished from traditional software applications because they contain embedded protocols which describe group work (Holt & Cashmau 1981). This position paper presents guidelines for specifying coordinators. 1. Adaptable Specifications In the past, software engineers interpreted group work as tasks which require coordination. Early coordinators Iike Monster (Holt & Cashman 1981) and XCP (Sluzier & Cashmsn 1984) took the approach of specifying group work as a set of rules which define the work tasks and their interrelationships. Such rule-based specifications have difficulty adapting to particular group work situations. To explain, these specifications sequence work tasks, and so it is diflicult to specify rules without also considering their execution sequence. Not surprisingly, it is sometimes impossible to reliably modify these rules when a work process quickly changes. Croup work is plastic -groups continually redesign they way they work. In fact, the work process of a group is always in a state of flux (Ehn 1988). In order for software to operate effectively in this domain, adaptable specifications must be written. A more flexible approach to specifying coordinators is to define rules for those work tasks that are independent of time. Task sequencing is left up to the group while they do their work. Coordinators like COSMOS (Buckley 1988) have adopted this approach, using a declarative specification language to describe “timeless” work tasks. Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication aad its date appear, and notice IS given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specrfic Permission. 2. Specifications Of Conversation Another interpretation of group work is to consider conversation being common to all work activity (Searle 1969, Wmograd & Flores 1986). This interpretation sees work as language which generates action, and action which generates work products. Specifications written from this perspective define how to manage the commitments people make to each other during their work. Examples of these kinds of coordinators ate: CHAOS (DeMichelis 1988), CONTRACT (Mama et. al. May 1987), and The Coordinator (Winograd 1986). Specifications that define structured conversations have the advantage of being less dependent on the actual work being done and being totally independent of time. This is possible because the specification defines the conversation, as opposed to the work tasks, which can vary in context, content, and complexity. The conversation is straightforward by comparison, and thus the specification is greatly simplified. 3. The CONTRACT System The CONTRACT project (Mama et. al. April 1987), successfully developed a coordinator for a small manufacturing team. The day-to-day operation of the system returned significant savings to several organizations within the company. The process used to specify CONTRACT emphasized understanding the conversations underlying the work of the group. Before discussing the specification in detail, the value engineering work setting is summarized: The mission of a value engineering enterprise is to improve the value of an existing product or product line (Mudge 1971). For the CONTRACT project, cost avoidance was the value goal. To achieve this goal, r-e-engineering is first done to psrticular parts in order to reduce their cost of manufacture. These changes are then introduced somewhere in the life of a product, realizing savings over the remaining life of the product (i.e. multiplying the cost reduction per part, the number of parts per product, and the expected product volume, yields an estimate of the savings returned from the part change). 235 01989 ACM O-89791 -305l/89/0500/0235$00.75 4. The CONTRACT Specification The specification of the CONTRACT coordinator was developed using a paradigm that stresses multiple, interconnected models (Marca & McGowan 1982). Applying this paradigm resuits in the speczjkation architecture shown in Figulre 1. The architecture encapsulates three major aspects of coordinating group work: the work tasks and information flow, the structured conversation types, and negotiation. Models lower in the architecture rely on the model above for context. Figure 1: Specification Architecture The fmt mod&l in the CONTRACT specification defines the context in which the group works. The work process, specified as a user experience (Whiteside et. al. 1988), is the grounding for the remainder of the specification. For CONTFUKT, developers worked along side users in order to specify the typical value engineering scenario shown in Figure 2. The scenario then became the source for the rest of the specification: The boxes represent more detailed work contexts, and the arrows represent the information shared during conversations.","PeriodicalId":435917,"journal":{"name":"International Workshop on Software Specification and Design","volume":"3 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1989-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Workshop on Software Specification and Design","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/75199.75234","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

There is a growing trend to develop software that supports the work of groups, as opposed to individuals. Such software is currently being termed groupwure (Tazelaar 1988), and the technical field is being called computer-supported cooperative work (Greif 1988). One aspect of supporting group work involves coordinating the speaking and actions of teams. A coordinator is software which supports team conversations (Winograd 1988). Coordinators are distinguished from traditional software applications because they contain embedded protocols which describe group work (Holt & Cashmau 1981). This position paper presents guidelines for specifying coordinators. 1. Adaptable Specifications In the past, software engineers interpreted group work as tasks which require coordination. Early coordinators Iike Monster (Holt & Cashman 1981) and XCP (Sluzier & Cashmsn 1984) took the approach of specifying group work as a set of rules which define the work tasks and their interrelationships. Such rule-based specifications have difficulty adapting to particular group work situations. To explain, these specifications sequence work tasks, and so it is diflicult to specify rules without also considering their execution sequence. Not surprisingly, it is sometimes impossible to reliably modify these rules when a work process quickly changes. Croup work is plastic -groups continually redesign they way they work. In fact, the work process of a group is always in a state of flux (Ehn 1988). In order for software to operate effectively in this domain, adaptable specifications must be written. A more flexible approach to specifying coordinators is to define rules for those work tasks that are independent of time. Task sequencing is left up to the group while they do their work. Coordinators like COSMOS (Buckley 1988) have adopted this approach, using a declarative specification language to describe “timeless” work tasks. Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication aad its date appear, and notice IS given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specrfic Permission. 2. Specifications Of Conversation Another interpretation of group work is to consider conversation being common to all work activity (Searle 1969, Wmograd & Flores 1986). This interpretation sees work as language which generates action, and action which generates work products. Specifications written from this perspective define how to manage the commitments people make to each other during their work. Examples of these kinds of coordinators ate: CHAOS (DeMichelis 1988), CONTRACT (Mama et. al. May 1987), and The Coordinator (Winograd 1986). Specifications that define structured conversations have the advantage of being less dependent on the actual work being done and being totally independent of time. This is possible because the specification defines the conversation, as opposed to the work tasks, which can vary in context, content, and complexity. The conversation is straightforward by comparison, and thus the specification is greatly simplified. 3. The CONTRACT System The CONTRACT project (Mama et. al. April 1987), successfully developed a coordinator for a small manufacturing team. The day-to-day operation of the system returned significant savings to several organizations within the company. The process used to specify CONTRACT emphasized understanding the conversations underlying the work of the group. Before discussing the specification in detail, the value engineering work setting is summarized: The mission of a value engineering enterprise is to improve the value of an existing product or product line (Mudge 1971). For the CONTRACT project, cost avoidance was the value goal. To achieve this goal, r-e-engineering is first done to psrticular parts in order to reduce their cost of manufacture. These changes are then introduced somewhere in the life of a product, realizing savings over the remaining life of the product (i.e. multiplying the cost reduction per part, the number of parts per product, and the expected product volume, yields an estimate of the savings returned from the part change). 235 01989 ACM O-89791 -305l/89/0500/0235$00.75 4. The CONTRACT Specification The specification of the CONTRACT coordinator was developed using a paradigm that stresses multiple, interconnected models (Marca & McGowan 1982). Applying this paradigm resuits in the speczjkation architecture shown in Figulre 1. The architecture encapsulates three major aspects of coordinating group work: the work tasks and information flow, the structured conversation types, and negotiation. Models lower in the architecture rely on the model above for context. Figure 1: Specification Architecture The fmt mod&l in the CONTRACT specification defines the context in which the group works. The work process, specified as a user experience (Whiteside et. al. 1988), is the grounding for the remainder of the specification. For CONTFUKT, developers worked along side users in order to specify the typical value engineering scenario shown in Figure 2. The scenario then became the source for the rest of the specification: The boxes represent more detailed work contexts, and the arrows represent the information shared during conversations.
指定协调器:群件开发人员的指导方针
与个人工作相反,开发支持团队工作的软件的趋势正在增长。这类软件目前被称为群组工作(Tazelaar 1988),技术领域被称为计算机支持的合作工作(Greif 1988)。支持小组工作的一个方面包括协调团队的发言和行动。协调器是支持团队对话的软件(Winograd 1988)。协调器与传统的软件应用程序不同,因为它们包含描述群体工作的嵌入式协议(Holt & Cashmau 1981)。本立场文件提供了指定协调员的指导方针。1. 过去,软件工程师将团队工作解释为需要协调的任务。早期的协调者如Monster (Holt & Cashman 1981)和XCP (Sluzier & Cashmsn 1984)采用了将团队工作指定为一组规则的方法,这些规则定义了工作任务及其相互关系。这种基于规则的规范难以适应特定的群体工作情况。解释一下,这些规范对工作任务进行排序,因此如果不考虑它们的执行顺序,就很难指定规则。不足为奇的是,当工作流程快速变化时,有时不可能可靠地修改这些规则。团队工作是可塑的——团队不断地重新设计他们的工作方式。事实上,一个群体的工作过程总是处于一种不断变化的状态(Ehn 1988)。为了使软件在这个领域有效地运行,必须编写适应性强的规范。指定协调器的一种更灵活的方法是为那些与时间无关的工作任务定义规则。任务排序由小组在完成工作时决定。COSMOS (Buckley 1988)之类的协调器采用了这种方法,使用声明性规范语言来描述“永恒的”工作任务。允许免费复制本材料的全部或部分,前提是这些副本不是为了直接的商业利益而制作或分发的,ACM版权声明和出版物的标题及其日期出现,并通知复制是由计算机械协会许可的。以其他方式复制或重新发布,需要支付费用和/或特定许可。小组工作的另一种解释是认为谈话是所有工作活动的共同特征(Searle 1969, Wmograd & Flores 1986)。这种解释将工作视为产生行动的语言,以及产生工作产品的行动。从这个角度编写的规范定义了如何管理人们在工作期间对彼此做出的承诺。这类协调器的例子有:《CHAOS》(DeMichelis 1988)、《CONTRACT》(Mama等人1987年5月出版)和《The Coordinator》(Winograd 1986年出版)。定义结构化对话的规范具有较少依赖于正在完成的实际工作和完全独立于时间的优点。这是可能的,因为规范定义了对话,而不是工作任务,工作任务在上下文、内容和复杂性方面可能有所不同。相比之下,对话是直截了当的,因此规范大大简化了。3.CONTRACT项目(Mama et. al. 1987年4月)成功地为一个小型制造团队开发了一个协调器。该系统的日常运行为公司内部的几个组织节省了大量资金。用于指定CONTRACT的过程强调理解小组工作基础上的对话。在详细讨论规范之前,对价值工程的工作设置进行总结:价值工程企业的使命是提高现有产品或产品线的价值(Mudge 1971)。对于CONTRACT项目,成本规避是价值目标。为了实现这一目标,首先对特定部件进行r-e工程,以降低其制造成本。然后在产品生命周期的某个地方引入这些更改,实现在产品剩余生命周期内的节省(例如,将每个部件的成本降低、每个产品的部件数量和预期的产品体积相乘,得出部件更改所带来的节省的估计)。ACM O-89791 -305l/89/0500/0235$00.75CONTRACT协调器的规范是使用强调多个相互关联的模型的范式开发的(Marca & McGowan 1982)。应用此范例会产生如图1所示的分区体系结构。该体系结构封装了协调小组工作的三个主要方面:工作任务和信息流、结构化对话类型和协商。体系结构中较低的模型依赖于上面的模型来获取上下文。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信