Title:
Computer-supported cooperative Work: introduction to distributed
Personal Author:
Publication Information:
Berlin : Springer, 2000
ISBN:
9783540669845
Added Author:
Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000004800391 | QA76.9.D5 B67 2000 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
A detailed introduction to interdisciplinary application area of distributed systems, namely the computer support of individuals trying to solve a problem in cooperation with each other but not necessarily having identical work places or working times. The book is addressed to students of distributed systems, communications, information science and socio-organizational theory, as well as to users and developers of systems with group communication and cooperation as top priorities.
Table of Contents
Part I Introduction to Distributed Systemsand Computer-Supported Cooperative Work | |
1 Fundamental Principles of Distributed Systems | p. 3 |
1.1 Introduction | p. 4 |
1.2 Transparency | p. 5 |
1.2.1 Levels of transparency | p. 6 |
1.2.2 Transparency levels of existing systems | p. 10 |
1.2.3 Problems with transparency in CSCW | p. 10 |
1.3 Mechanisms for Communication | p. 11 |
1.3.1 Information sharing | p. 12 |
1.3.2 Message exchange | p. 12 |
1.3.3 Bidirectional communication | p. 16 |
1.3.4 Producer-consumer interaction | p. 18 |
1.4 Client-Server Model | p. 19 |
1.4.1 Terms and definitions | p. 21 |
1.4.2 Client-server communication | p. 23 |
1.4.3 Processing requests for service operations | p. 24 |
1.5 Remote Procedure Call (RPC) | p. 29 |
1.5.1 RPC properties | p. 31 |
1.5.2 Mediation and brokering | p. 38 |
1.5.3 Asynchronous RPC | p. 39 |
1.5.4 Failure semantics of remote procedure calls | p. 41 |
1.6 Object-Oriented Distributed Systems | p. 43 |
1.6.1 Definitions | p. 43 |
1.6.2 Object distribution | p. 45 |
1.6.3 Object mobility | p. 46 |
1.6.4 Common Object Request Broker Architecture (CORBA) | p. 50 |
1.6.5 Tuple space | p. 53 |
1.6.6 Linear Objects | p. 54 |
1.7 Distributed Applications | p. 59 |
1.7.1 Group communication | p. 60 |
1.7.2 Design of distributed applications | p. 65 |
1.7.3 Distributed applications in ODP | p. 71 |
1.7.4 Resource allocation | p. 74 |
1.7.5 History of highly influential distributed systems | p. 78 |
1.7.6 Caching | p. 82 |
1.8 Further Reading | p. 85 |
2 Computer-Supported Cooperative Work | p. 87 |
2.1 Introduction | p. 88 |
2.2 Background for Team Support | p. 89 |
2.3 Terminology | p. 90 |
2.4 CSCW in Practice - Scenarios | p. 95 |
2.4.1 Support of face-to-face meetings | p. 95 |
2.4.2 Support of distributed electronic meetings | p. 98 |
2.4.3 Support in between meetings | p. 100 |
2.5 Application Domains and their Characteristics | p. 103 |
2.5.1 Software design and development | p. 103 |
2.5.2 Teaching environment | p. 104 |
2.5.3 Telecooperation | p. 105 |
2.5.4 Further examples for teamwork | p. 106 |
2.6 Interpretation of CSCW | p. 107 |
2.6.1 CSCW: Work | p. 109 |
2.6.2 CSCW: Cooperative Work | p. 109 |
2.6.3 CSCW: Supported Cooperative Work | p. 111 |
2.6.4 CSCW: Computer-Supported Cooperative Work | p. 112 |
2.7 History of the Most Important CSCW Systems | p. 112 |
2.8 Groupware Classification | p. 118 |
2.8.1 Time space taxonomy | p. 118 |
2.8.2 Application level classification | p. 119 |
2.8.3 Classification according to the 3C model | p. 125 |
2.8.4 More classification models | p. 126 |
2.9 Design of Groupware | p. 126 |
2.9.1 Possible aspects | p. 126 |
2.9.2 Criteria for the acceptance of groupware systems | p. 128 |
2.9.3 Why groupware systems sometimes fail | p. 128 |
2.9.4 Benefits and risks of groupware | p. 130 |
2.9.5 Development methodology of groupware systems | p. 130 |
2.9.6 Methods for studying groups | p. 134 |
2.9.7 The Portland experiment | p. 136 |
2.9.8 Lotus Notes | p. 139 |
2.10 Further Reading | p. 140 |
Part II Basic Concepts of Computer-Supported Cooperative Work | |
3 Concepts of Asynchronous and Synchronous Cooperation | p. 145 |
3.1 Group Processes | p. 146 |
3.1.1 Group process models | p. 150 |
3.1.2 Group communication | p. 152 |
3.1.3 Concurrency control | p. 155 |
3.1.4 Roles of group members | p. 158 |
3.2 Cluster Model | p. 158 |
3.2.1 Direct point-to-point connection | p. 159 |
3.2.2 Indirect communication links | p. 160 |
3.3 Strategies for the Distribution of Information Units | p. 163 |
3.3.1 Direct point-to-point connection | p. 163 |
3.3.2 Cluster hierarchy | p. 163 |
3.3.3 Broadcast flooding | p. 165 |
3.3.4 Routing | p. 167 |
3.4 Structures of Asynchronous Group Interaction | p. 167 |
3.4.1 Linear model (Emisari) | p. 167 |
3.4.2 Comb model (Confer, Usenet) | p. 168 |
3.4.3 Branch model (Parti) | p. 169 |
3.5 Management of Shared Context | p. 170 |
3.5.1 The concept WYSIWIS | p. 172 |
3.5.2 Relaxed forms of WYSIWIS | p. 172 |
3.5.3 Telepointing | p. 175 |
3.5.4 Group awareness | p. 175 |
3.6 Groupware Architectures | p. 178 |
3.6.1 Centralized architectures | p. 178 |
3.6.2 Replicated architectures | p. 180 |
3.7 Further Reading | p. 182 |
4 Concurrency Control | p. 185 |
4.1 Introduction | p. 186 |
4.1.1 Motivation | p. 186 |
4.1.2 Classification of concurrency control approaches | p. 187 |
4.2 Optimistic Concurrency Control | p. 188 |
4.3 Centralized Control | p. 189 |
4.3.1 Control unit | p. 189 |
4.3.2 Token-passing | p. 190 |
4.4 Decentralized Control: Overview | p. 191 |
4.5 Simple Locking Schemes | p. 191 |
4.6 Floor-passing Schemes | p. 194 |
4.6.1 Explicit floor-passing scheme | p. 195 |
4.6.2 Implicit floor-passing with coordination unit | p. 195 |
4.6.3 Implicit floor-passing with distributed coordination | p. 196 |
4.7 Transactions | p. 197 |
4.8 Operation Transformation | p. 201 |
4.8.1 Sites | p. 201 |
4.8.2 Group Outline Viewing Editor (Grove) | p. 202 |
4.8.3 The Grove algorithm: distributed Operational Transformation (dOPT) | p. 206 |
4.8.4 Correctness of the Grove algorithm | p. 208 |
4.9 Further Reading | p. 209 |
5 Replication and Concurrency Control | p. 211 |
5.1 Introduction | p. 212 |
5.2 Voting Schemes | p. 218 |
5.2.1 Majority consensus | p. 220 |
5.2.2 Weighted voting | p. 224 |
5.2.3 Write-all-read-any | p. 226 |
5.2.4 Voting with witnesses | p. 227 |
5.2.5 Available- copy | p. 239 |
5.2.6 Dynamic voting | p. 245 |
5.2.7 Voting-class | p. 259 |
5.2.8 Multidimensional voting | p. 261 |
5.2.9 Hierarchical Voting | p. 263 |
5.3 Additional Schemes with Decentralized Control | p. 266 |
5.3.1 Coding scheme | p. 267 |
5.3.2 Grid protocol | p. 274 |
5.4 Regeneration | p. 279 |
5.5 Further Reading | p. 280 |
Part III Application Classes of Computer-Supported Cooperative Work | |
6 Communication Systems and Shared Information Spaces | p. 285 |
6.1 Email Systems | p. 286 |
6.1.1 Message transfer agent | p. 287 |
6.1.2 User agents | p. 288 |
6.1.3 Message envelope | p. 289 |
6.1.4 Email address | p. 290 |
6.1.5 Groupware characteristics of an email system | p. 290 |
6.2 Video Conferencing | p. 291 |
6.2.1 Aspects in the usage of video conferencing | p. 291 |
6.2.2 Conference management | p. 293 |
6.3 Shared Information Spaces | p. 295 |
6.3.1 General definitions | p. 295 |
6.3.2 History of hypertext systems | p. 296 |
6.3.3 Architecture of hypertext systems | p. 301 |
6.3.4 Dexter reference model | p. 307 |
6.3.5 Navigation in hypertext networks | p. 309 |
6.3.6 Trellis model | p. 315 |
6.3.7 IBIS method | p. 315 |
6.3.8 Campiello - Information spaces and communities | p. 318 |
6.3.9 Case studies: cooperative nature of information search activities | p. 322 |
6.4 Further Reading | p. 325 |
7 Workflow Management, Conversation and Coordination Systems | p. 327 |
7.1 Introduction | p. 328 |
7.1.1 The history of workflow management | p. 330 |
7.1.2 Terminology | p. 331 |
7.1.3 Goals, barriers and features | p. 333 |
7.1.4 Taxonomy | p. 335 |
7.2 Conversation Model | p. 337 |
7.2.1 Definition of speech act | p. 338 |
7.2.2 Conversation networks | p. 340 |
7.2.3 Conversation systems | p. 341 |
7.2.4 The Coordinator | p. 343 |
7.2.5 The office procedure system Domino | p. 344 |
7.2.6 The activity management system Tacts | p. 346 |
7.3 Coordination Models | p. 350 |
7.3.1 The coordination theory according to Malone | p. 352 |
7.3.2 Customer-performer model | p. 353 |
7.4 Workflow Modeling | p. 354 |
7.4.1 Aspect-oriented workflow model | p. 355 |
7.4.2 Process grammar | p. 358 |
7.5 Execution Environments for Workflows | p. 360 |
7.6 Further Developments | p. 361 |
7.6.1 Problems and open issues | p. 362 |
7.6.2 Workflow Management Coalition (WfMC) | p. 363 |
7.6.3 Adaptive workflow | p. 364 |
7.6.4 Workflow life cycle | p. 368 |
7.7 Further Reading | p. 372 |
8 Workgroup Computing | p. 373 |
8.1 Electronic Meeting Support | p. 374 |
8.1.1 Architectures for electronic meeting systems | p. 376 |
8.1.2 General characteristics of electronic meeting systems | p. 378 |
8.1.3 Design alternatives for meeting rooms | p. 379 |
8.2 Distributed Document Systems | p. 382 |
8.2.1 Cooperative document creation | p. 383 |
8.2.2 Group editors - overview | p. 387 |
8.2.3 The group editor Iris | p. 387 |
8.2.4 DistEdit | p. 389 |
8.2.5 User interface layer of a group editor | p. 390 |
8.2.6 Access layer of a group editor | p. 394 |
8.2.7 Architecture of a distributed group editor | p. 397 |
8.2.8 Document structure | p. 401 |
8.2.9 Logical views of the document structure | p. 402 |
8.2.10 Structure editor | p. 404 |
8.2.11 Versioning/history management | p. 406 |
8.3 Undo in Distributed Group Editors | p. 407 |
8.3.1 Basic concepts | p. 408 |
8.3.2 Simple undo | p. 409 |
8.3.3 Selective undo according to Prakash and Knister | p. 409 |
8.3.4 Selective undo (extended version) | p. 412 |
8.4 Further Reading | p. 413 |
9 Multiagent Systems | p. 415 |
9.1 Introduction | p. 416 |
9.2 Characteristics and Classification | p. 418 |
9.3 Modeling | p. 424 |
9.3.1 Distributed problem solving | p. 425 |
9.3.2 Agent model | p. 425 |
9.3.3 Conceptual framework | p. 426 |
9.3.4 Layer concept | p. 427 |
9.4 Cooperation among Agents | p. 430 |
9.4.1 Cooperation by (semi) structured messages | p. 430 |
9.4.2 Cooperation strategies | p. 433 |
9.4.3 Cooperation methods | p. 434 |
9.4.4 Communication types | p. 436 |
9.5 The Contract Net Protocol | p. 438 |
9.5.1 Basic concepts of the contract net protocol | p. 438 |
9.5.2 Task announcement phase | p. 439 |
9.5.3 Bid creation phase | p. 440 |
9.5.4 Bid selection phase | p. 441 |
9.5.5 Task assignment phase | p. 443 |
9.5.6 Task execution phase | p. 443 |
9.5.7 Assessment of the contract net protocol | p. 443 |
9.6 Agent-based Information Brokering | p. 444 |
9.6.1 Systems of agent-based information brokering | p. 445 |
9.6.2 Constraint-Based Knowledge Brokers | p. 452 |
9.6.3 Protocols | p. 459 |
9.6.4 Agent processing | p. 463 |
9.7 Distributed Meeting Scheduling | p. 469 |
9.7.1 Formal definition of the meeting scheduling problem | p. 471 |
9.7.2 Scheduling process | p. 473 |
9.7.3 Scheduling model | p. 473 |
9.7.4 Strategies | p. 475 |
9.8 Actor Model | p. 476 |
9.8.1 Actor definition | p. 476 |
9.8.2 Generic actor system | p. 477 |
9.8.3 Example for an actor system | p. 478 |
9.9 Further Reading | p. 479 |
References | p. 481 |
List of Figures | p. 509 |
List of Tables | p. 515 |
Index | p. 517 |