64
Literaturverzeichnis [Abdel-Wahab 88] Hussein M. Abdel-Wahab, Sheng-Uei Guan, Jay Nievergelt. Shared Workspaces for Group Collaboration: An Experiment Using Internet and UNIX Inter- process Communications. COMPUTER, S. 10-16, Nov. 1988. [Ahuja 88] S. R. Ahuja, J. Robert Ensor, David N. Horn. The Rapport Multimedia Con- ferencing System. In Robert B. Allen (Hrsg.), Proc. Conference on Office Information Systems, S. 1-8, Palo Alto, CA, Miirz 1988. [Ahuja 90] S. R. Ahuja, J. R. Ensor, S. E. Lucco. A Comparison of Application Sharing Mechanisms in Real-Time Desktop Conferencing Systems. In Frederick H. Lochovsky, Robert B. Allen (Hrsg.), Conf. on Office Information Systems, S. 238-248, Cambridge, Massachusetts, April 1990. ACM Press. [Akscyn 88] Robert M. Akscyn, Donald L. McCracken, Elise A. Yoder. KMS: A Distri- buted Hypermedia System for Managing Knowledge in Organizations. Communications of the ACM, 31{7}:820-835, Juli 1988. [Altenhofen 90a] Michael Altenhofen. Erweiterung eines Fenstersystems fUr Tutoring- Funktionen. Diplomarbeit, Institut fUr Telematik, Universitat Karlsruhe, Jan. 1990. [Altenhofen 90b] Michael Altenhofen, Burkhard Neidecker-Lutz, Paul Tallett. Upgrading a Window System for Tutoring Functions. In The European X Window System Confe- rence, S. 37-44, London, UK, Nov. 1990. [Angebranndt 91] Susan Angebranndt, Richard L. Hyde, Daphne Huetu Luong, Nagendra Siravara, Chris Schmandt. Integrating Audio and Telephony in a Distributed Worksta- tion Environment. In USENIX-Summer '91, S. 419-435, Nashville, TN, Juni 1991. USENIX Assoc. [Applegate 91] Lynda Applegate, Clarence Ellis, Clyde W. Holsapple, Franz J. Raderma- cher, Andrew B. Whinston. Organizational Computing: Definitions and Issues. Journal of Organizational Computing, 1(1):1-10, 1991. [Araujo 88] Regina B. Araujo, George F. Coulouris, Julian P. Onions, Hugh T. Smith. The Architecture of the Prototype COSMOS Messaging System. In R. Speth (Hrsg.),

Literaturverzeichnis - Home - Springer978-3-322-87883-0/1.pdf · KMS: A Distri buted Hypermedia ... G. Blakowski, T. Riidebusch, J. Schaper. NESTOR-Die Architektur ... 138 LITERATURVERZEICHNIS

Embed Size (px)

Citation preview

Literaturverzeichnis

[Abdel-Wahab 88] Hussein M. Abdel-Wahab, Sheng-Uei Guan, Jay Nievergelt. Shared Workspaces for Group Collaboration: An Experiment Using Internet and UNIX Inter­process Communications. COMPUTER, S. 10-16, Nov. 1988.

[Ahuja 88] S. R. Ahuja, J. Robert Ensor, David N. Horn. The Rapport Multimedia Con­ferencing System. In Robert B. Allen (Hrsg.), Proc. Conference on Office Information Systems, S. 1-8, Palo Alto, CA, Miirz 1988.

[Ahuja 90] S. R. Ahuja, J. R. Ensor, S. E. Lucco. A Comparison of Application Sharing Mechanisms in Real-Time Desktop Conferencing Systems. In Frederick H. Lochovsky, Robert B. Allen (Hrsg.), Conf. on Office Information Systems, S. 238-248, Cambridge, Massachusetts, April 1990. ACM Press.

[Akscyn 88] Robert M. Akscyn, Donald L. McCracken, Elise A. Yoder. KMS: A Distri­buted Hypermedia System for Managing Knowledge in Organizations. Communications of the ACM, 31{7}:820-835, Juli 1988.

[Altenhofen 90a] Michael Altenhofen. Erweiterung eines Fenstersystems fUr Tutoring­Funktionen. Diplomarbeit, Institut fUr Telematik, Universitat Karlsruhe, Jan. 1990.

[Altenhofen 90b] Michael Altenhofen, Burkhard Neidecker-Lutz, Paul Tallett. Upgrading a Window System for Tutoring Functions. In The European X Window System Confe­rence, S. 37-44, London, UK, Nov. 1990.

[Angebranndt 91] Susan Angebranndt, Richard L. Hyde, Daphne Huetu Luong, Nagendra Siravara, Chris Schmandt. Integrating Audio and Telephony in a Distributed Worksta­tion Environment. In USENIX-Summer '91, S. 419-435, Nashville, TN, Juni 1991. USENIX Assoc.

[Applegate 91] Lynda Applegate, Clarence Ellis, Clyde W. Holsapple, Franz J. Raderma­cher, Andrew B. Whinston. Organizational Computing: Definitions and Issues. Journal of Organizational Computing, 1(1):1-10, 1991.

[Araujo 88] Regina B. Araujo, George F. Coulouris, Julian P. Onions, Hugh T. Smith. The Architecture of the Prototype COSMOS Messaging System. In R. Speth (Hrsg.),

136 LITERATURVERZEICHNIS

Research into Networks and Distributed Applications, EUTECO'BB, S. 157-170, Vi­enna, Austria, April 1988. The European Action in Teleinformatics COST 11ter, North Holland, Amsterdam.

[Arendt 92] Ralph Arendt. Erweiterung des MVC-Konzepts urn Mehrbenutzer-Fiiliigkeit. Studienarbeit, Universitat Karlsruhe, Institut fiir Telematik, 1992.

[Artsy 90] Yeshayahu Artsy. Routing Objects on Action Paths. In 10th Intl. Conf. on Distributed Computing Systems, S. 572-579, Paris, France, Mai 1990. IEEE Computer Society Press, Los Alamitos, California.

[Bach 86] Maurice J. Bach. The Design of the UNIX Operating System. Prentice Hall, Englewood Cliffs, N.J., 1986.

[Bannon 89] Liam J. Bannon, Kjeld Schmidt. CSCW: Four Characters in Search of a Con­text. In EC-CSCW 'BY First European Conference on Computer Supported Cooperative Work, S. 358-372, London, UK, Sept. 1989.

[Bannon 91] Liam Bannon, Mike Robinson, Kjeld Schmidt (Hrsg.). ECSCW '91 The 2nd European Conference on Computer Supported Cooperative Work, Amsterdam, The Netherlands, Sept. 1991. Kluwer Academic Publishers, Dordrecht.

[Barghouti 91] Naser S. Barghouti, Gail E. Kaiser. Concurrency Control in Advanced Database Applications. ACM Computing Surveys, 23(3):269-317, Sept. 1991.

[Benford 88] Steve Benford. A Data Model for the AMIGO Communications Environ­ment. In R. Speth (Hrsg.), Research into Networks and Distributed Applications, EU­TECO'BB, S. 97-110, Vienna, Austria, April 1988. The European Action in Teleinfor­matics COST 11ter, North Holland, Amsterdam.

[Berlin 90] Lucy M. Berlin, Vicki L. O'Day. Platform and Application Issues in Multi­User Hypertext. In S. Gibbs, A. A. Verrijn-Stuart (Hrsg.), Multi-User Interfaces and Applications, S. 293-309. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-U~er Interfaces and Applications, Heraklion, Crete, Greece, Sep., 1990.

[Bhandaru 90] Nehru Bhandaru, W. Bruce Croft. An Architecture for Supporting Goal­Based Cooperative Work. In S. Gibbs, A. A. Verrijn-Stuart (Hrsg.), Multi-User In­terfaces and Applications, S. 337-354. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-User Interfaces and Applications, Heraklion, Crete, Greece, Sep.,1990.

[Bier 91] Eric A. Bier, Steve Freeman. MMM: A User Interface Architecture for Shared Editors on a Single Screen. In UIST'Y1 Proc. of the ACM Symposium on User Interface Software and Technology, S. 79-86, Hilton Head, South Carolina, Nov. 1991. ACM Press.

LITERATURVERZEICHNIS 137

[Bignoli 89] C. Bignoli, C. Simone. AI Techniques for supporting human to human com­munication in CHAOS. In EC-CSCW '89 First European Conference on Computer Supported Cooperative Work, S. 133-147, London, UK, Sept. 1989.

[Bikson 88] Tora K. Bikson. Communication, Coordination, and Group Performance (Pa­nel). In CSCW 88 Conference on Computer-Supported Cooperative Work, S. 189-190, Portland, Oregon, Sept. 1988. ACM Press. Panelists: James H. Bair, Richard E. Barry, Charles E. Grantham and Terry Winograd.

[Birman 91] Kenneth P. Birman, Robert Cooper, Barry Gleeson. Programming with Process Groups: Group and Multicast Semantics. Technischer Bericht TR-91-1185, Cornell University, Jan. 1991.

[Bishop 90] Matt Bishop. Collaboration Using Roles. Software-Practice & Experience, 20(5):485-497, Mai 1990.

[Blakowski 91] G. Blakowski, T. Riidebusch, J. Schaper. NESTOR-Die Architektur einer fortgeschrittenen Autoren-/Lernerumgebung. In Workshop 'Informatik in der Aus- und Weiterbildung', S. 62-68, Dresden, Germany, Feb. 1991.

[Blakowski 92] Gerold Blakowski. High Level Services for Distributed Multimedia Ap­plications Based on Application Media and Environment Descriptions. Proceedings ACSC-15, Fifteenth Australian Computer Science Conference, Hobart, Australia, Janu­ary 29-31, 1992. Australian Computer Science Communications, 14(1):93-109, Januar 1992.

[Bly 90] Sara A. Bly, Scott L. Minneman. Commune: A Shared Drawing Surface. In Frederick H. Lochovsky, Robert B. Allen (Hrsg.), Con/. on Office In/ormation Systems, S. 184-192, Cambridge, Massachusetts, April 1990. ACM Press.

[Bogen 88] Manfred Bogen, Karl-Heinz Weiss. Group Co-ordination in a Distributed En­vironment. In R. Speth (Hrsg.), Research into Networks and Distributed Applications, EUTECO'88, S. 111-128, Vienna, Austria, April 1988. The European Action in Telein­formatics COST 11ter, North Holland, Amsterdam.

[Bonfiglio 89] Amedeo Bonfiglio, Giuseppe Malatesta, Francesco Tisato. Conference Tool­kit: A Framework for Real-Time Conferencing. In EC-CSCW '89 First European Con­ference on Computer Supported Cooperative Work, S. 303-316, London, UK, Sept. 1989.

[Borchers 89] Detlef Borchers. Gruppenzwang - Groupware: Freiheit unter Kontrolle. iX, (6):52-53, 1989.

[Borenstein 88] Nathaniel Borenstein, Chris A. Thyberg. Cooperative Work in the An­drew Message System. In CSCW 88 Conference on Computer-Supported Cooperative Work, S. 306-323, Portland, Oregon, Sept. 1988. ACM Press.

138 LITERATURVERZEICHNIS

[Borning 91] Alan Borning, Michael Travers. Two Approaches to Casual Interaction over Computer and Video Networks. In Scott P. Robertson, Gary M. Olson, Judith S. Olson (Hrsg.), Human Factors in Computing Systems: CHI '91, S. 13-19, New Orleans, Louisiana, April 1991. ACM Press.

[Bowers 88] John Bowers, John Churcher, Tim Roberts. Structuring Computer-Mediated Communication in COSMOS. In R. Speth (Hrsg.), Research into Networks and Distri­buted Applications, EUTECO'88, S. 195-210, Vienna, Austria, April 1988. The Euro­pean Action in Teleinformatics COST Uter, North Holland, Amsterdam.

[Bradley 91] G. Bradley. Control vs Creativity: Software Engineering at a Crossroads. In H.-J. Bullinger (Hrsg.), Human Aspects in Computing-Proc. IVth Intl. Conference on Human-Computer Interaction, S. 561-565, Stuttgart, Germany, Sept. 1991. Elsevier Science Publishers, Amsterdam.

[Brauer 91] W. Brauer, D. Hernandez (Hrsg.). Verteilte Kiinstliche Intelligenz und ko­operatives Arbeiten, Miinchen, Okt. 1991. GI, Springer, Berlin etc.

[Breiteneder 92] Christian Breiteneder, Laurent Dami, Simon Gibbs, Vicki de Mey, Den­nis Tsichritzis. Telepresence in Shared Virtual Worlds. In D. Tsichritzis (Hrsg.), Object Frameworks, S. 265-274. Centre Universitaire d'Informatique, 1992.

[BROCKHAUS 86] Brockhaus-Enzyklopiidie in vierundzwanzig Biinden, neunzehnte Auf­lage. F. A. Brockhaus GmbH, Mannheim, 1986.

[Brothers 90] L. Brothers, V. Sembugamoorthy, M. Muller. ICICLE: Groupware For Code Inspection. In CSCW '90 Conference on Computer-Supported Cooperative Work, S. 169-181, Los Angeles, CA, Okt. 1990. ACM Press.

[Buckley 88] Paul Buckley, Peter Johnson. Analysis of Communications Tasks in the COSMOS Project. In R. Speth (Hrsg.), Research into Networks and Distributed Appli­cations, EUTECO'88, S. 185-194, Vienna, Austria, April 1988. The European Action in Teleinformatics COST Uter, North Holland, Amsterdam.

[Burkhardt 87] H.-J. Burkhardt, H. Eckert, R. Prinoth, E. Raubold. A model of coope­ration and its specification with nets. In K. Voss, H. J. Genrich, G. Rozenberg (Hrsg.), Concurrency and Nets, S. 95-U4. Springer, Berlin etc., 1987.

[BYTE 88] BYTE: Special Issue on Groupware, Dez. 1988.

[CACM 91] Communications of the ACM: Special Issue on Computer-Supported Coope­rative Work, Dez. 1991.

[Cerf 91] V. Cerf, P. Kirstein, B. Randell. Network and Infrastructure User Requirements for Transatlantic Research Collaboration. Technischer Bericht RFC1210, The Internet Research and Development Community, Marz 1991.

LITERATURVERZEICHNIS 139

[Chen 76] Peter Pin-Shan Chen. The Entity-Relationship Model- Toward a Unified View of Data. ACM Transactions on Database Systems, 1(1):9-36, Marz 1976.

[Cheriton 85] David R. Cheriton, Willy Zwaenepoel. Distributed Process Groups in the V Kernel. ACM Transactions on Computer Systems, 3(2):70-107, 1985.

[Cindio 86] F. De Cindio, G. De Michelis, C. Simone, R. Vassallo, A. M. Zanaboni. CHAOS as Coordination Technology. In CSCW '86 Conference on Computer-Supported Cooperative Work, S. 325-342, Austin, Texas, Dez. 1986. MCC STP, ACM.

[Comer 91] Douglas E. Comer. Internetworking with TCP/IP, Vol. 1. Prentice Hall, Englewood Cliffs, N.J., 1991.

[Conklin 87] Jeff Conklin. Hypertext: An Introduction and Survey. COMPUTER, S. 17-41, Sept. 1987.

[Conklin 88] Jeff Conklin, Michael L. Begeman. gIBIS: A Hypertext Tool for Exploratory Policy Discussion. ACM Transactions on Office Information Systems, 6(4):303-331, Okt. 1988.

[Croft 84] W. Bruce Croft, Lawrence S. Lefkowitz. Task Support In an Office System. ACM Transactions on Office Information Systems, 2(3):197-212, Juli 1984.

[Croft 88] W. B. Croft, L. S. Lefkowitz. Using a Planner to Support Office Work. In Robert B. Allen (Hrsg.), Proc. Conference on Office Information Systems, S. 55-62, Palo Alto, CA, Miirz 1988.

[Crowley 90] Terrence Crowley, Paul Milazzo, Ellie Baker, Harry Forsdick, Raymond Tomlinson. MMConf: An Infrastructure for Building Shared Multimedia Applicati­ons. In CSCW '90 Conference on Computer-Supported Cooperative Work, S. 329-342, Los Angeles, CA, Okt. 1990. ACM Press.

[Crowston 88] Kevin Crowston, Thomas W. Malone. Intelligent Software Agents. BYTE, S. 267-271, Dez. 1988. Special Issue on Groupware.

[CSCW 86] MCC STP, ACM. CSCW '86 Conference on Computer-Supported Cooperative Work, Austin, Texas, Dez. 1986.

[CSCW 88] CSCW 88 Conference on Computer-Supported Cooperative Work, Portland, Oregon, Sept. 1988. ACM Press.

[CSCW 90] CSCW '90 Conference on Computer-Supported Cooperative Work, Los An­geles, CA, Okt. 1990. ACM Press.

[Danielsen 88] Thore Danielsen, Uta Pankoke-Babatz. The AMIGO Activity Model. In R. Speth (Hrsg.), Research into Networks and Distributed Applications, EUTECO'88, S. 227-242, Vienna, Austria, April 1988. The European Action in Teleinformatics COST lIter, North Holland, Amsterdam.

140 LITERATURVERZEICHNIS

[Decouchant 91J D. Decouchant, V. Normand, G. Vandome. Application design using the Comandos distributed object oriented system. In H.-J. Bullinger (Hrsg.), Human Aspects in Computing-Proc. IVth Intl. Conference on Human-Computer Interaction, S. 359-363, Stuttgart, Germany, Sept. 1991. Elsevier Science Publishers, Amsterdam.

[Delisle 86J Norman Delisle, Mayer Schwartz. Contexts-A Partitioning Concept for Hy­pertext. In CSCW '86 Conference on Computer-Supported Cooperative Work, S. 147-152, Austin, Texas, Dez. 1986. MCC STP, ACM.

[Dewan 91aJ Prasun Dewan, Rajiv Choudhary. Flexible User Interface Coupling in a Collaborative System. In Scott P. Robertson, Gary M. Olson, Judith S. Olson (Hrsg.), Human Factors in Computing Systems: CHI '91, S. 41-48, New Orleans, Louisiana, April 1991. ACM Press.

[Dewan 91bJ Prasun Dewan, Rajiv Choudhary. Primitives for Programming Multi-User Interfaces. In UIST'91 Proc. of the ACM Symposium on User Interface Software and Technology, S. 69-78, Hilton Head, South Carolina, Nov. 1991. ACM Press.

[Dietel 90J Clemens Dietel, Hans Haugeneder, Andreas Lux, Walter Reinhard, Dieter Scheidhauer, Astrid Scheller-Houy, Thomas Schmidt, Jean Schweitzer, Donald Steiner. Kiinstliche Intelligenz & Kommunikationstechnologie, Projektbeschreibung Version 2.1. Technischer Bericht, DFKI, Siemens, Sept. 1990.

[Dollimore 91J J. Dollimore, E. Miranda, Wang Xu. The Design of a System for Distri­buting Shared Objects. THE COMPUTER JOURNAL, 34(6):514-521, Dez. 1991.

[DOMINO 89J DOMINO, Ein System zur Koordinierung von Teamarbeit. Gesellschaft fur Mathematik und Datenverarbeitung mbH, Sept. 1989.

[Durr 92J Martin Durr, Karl Rosch. A Model for Cooperative Transactions. In 7th Bra­zilian Symposium On Database Systems (SBBD), Porto Alegre, Brazil, Mai 1992.

[ECSCW 89J EC-CSCW '89 First European Conference on Computer Supported Coope­rative Work, London, UK, Sept. 1989.

[Edmonds 91J Ernest Edmonds, Rachel Jones. Negotiation support in design. In John S. Gero, Fay Sudweeks (Hrsg.), Artificial Intelligence in Design, Workshop of the Twelfth Intl. Joint Conf. on Artificial Intelligence, S. 93-108, Sydney, Australia, Aug. 1991. Univ. of Sydney.

[Ellis 88aJ Clarence Ellis. CSCW '88 Report. ACM SIGOIS Bulletin, 10(1):2-4, Jan. 1988.

[Ellis 88b] Clarence A. Ellis, Gary J. Nutt. Office Information Systems and Computer Science. In Irene Greif (Hrsg.), Computer-Supported Cooperative Work: A Book of Readings, Kap. 9, S. 199-247. Morgan-Kaufmann Publishers, San Mateo, CA, 1988. Reprinted from ACM Computing Surveys 12(1):27-60 1980.

LITERATURVERZEICHNIS 141

[Ellis 89a] C. Ellis, S. J. Gibbs, G. Rein. Design and Use of a Group Editor. Technischer Bericht STP-263-88, Microelectronics and Computer Technology Corp., Austin, Texas, Juni 1989.

[Ellis 89b] C. A. Ellis, S. J. Gibbs. Concurrency Control in Groupware Systems. ACM SIGMOD RECORD, 18(2):399-407, Juni 1989.

[Ellis 91a] C. A. Ellis, S. J. Gibbs, G. L. Rein. Groupware: Some Issues and Experiences. Communications of the ACM, 34(1):38-58, Jan. 1991.

[Ellis 91b] Clarence A. Ellis. Consistency within Concurrent Groupware Systems. IEEE Data Engineering, 14(1):9-13, Marz 1991. Special Issue on Unconventional Transaction Management.

[Elwart-Keys 90] Mary Elwart-Keys, David Halonen, Marjorie Horton, Robert Kass, Paul Scott. User Interface Requirements for Face to Face Groupware. In Jane Carrasco Chew, John Whiteside (Hrsg.), Human Factors in Computing Systems: CHI '90, S. 295-301, Seattle, Washington, April 1990. ACM Press.

[Engelbart 70] Douglas C. Engelbart. Intellectual Implications of Multi-Access Computer Networks. In Interdisciplinary Conference on Multi-Access Computer Networks, Austin, Texas, April 1970.

[Ensor 88] J. Robert Ensor, S. R. Ahuja, David N. Horn, S. E. Lucco. The Rapport Mul­timedia Conferencing System-A Software Overview. In 2nd IEEE Con/. on Computer Workstations, S. 52-58, Santa Clara, Marz 1988. IEEE Computer Society Press, Los Alamitos, California.

[Ensor 90] Bob Ensor. How Can We Make Groupware Practical? (Panel). In Jane Car­rasco Chew, John Whiteside (Hrsg.), Human Factors in Computing Systems: CHI '90, S. 87-89, Seattle, Washington, April 1990. ACM Press. Panelists: Terry Crowley, Bob Kraut, Gail Rein and Lee Sproull.

[Erickson 89] Thomas D. Erickson. Interfaces for Cooperative Work: An Eclectic Look at CSCW '88. ACM SIGCHI Bulletin, 21(1):56-64, Juli 1989.

[Evangelist 88] Michael Evangelist, Ira R.Forman, Glenn R. Bruns. Tebasco: A Team­Based Coordination System. Technischer Bericht STP-250-88, Microelectronics and Computer Technology Corp., Austin, Texas, Aug. 1988.

[Evangelist 89] Michael Evangelist, Nissim Francez, Shmuel Katz. Multiparty Interactions for Interprocess Communication and Synchronization. IEEE Transactions on Software Engineering, 15(11):1417-1426, Nov. 1989.

[Farber 91] Georg Farber. Workstations in den 90ern. PIK: Praxis der Informationsver­arbeitung und Kommunikation, 14(4):216-222, 1991.

142 LITERATURVERZEICHNIS

[Ferwagner 89] Thomas Ferwagner, Yingdi Wang, Henrik Lewe, Helmut Krcmar. Expe­riences in Designing the Hohenheim CATeam Room. In EC-CSCW '89 First European Conference on Computer Supported Cooperative Work, S. 87-101, London, UK, Sept. 1989.

[Fish 88] Robert S. Fish, Robert E. Kraut, Mary D. P. Leland. Quilt: a collaborative tool for cooperative writing. In Robert B. Allen (Hrsg.), Proc. Conference on Office Information Systems, S. 30-37, Palo Alto, CA, Miirz 1988.

[Fish 90] Robert S. Fish, Robert E. Kraut, Barbara L. Chalfonte. The VideoWindow System in Informal Communications. In CSCW '90 Conference on Computer-Supported Cooperative Work, S. 1-11, Los Angeles, CA, Okt. 1990. ACM Press.

[Flores 88] Fernando Flores, Michael Graves, Brad Hartfield, Terry Winograd. Computer Systems and the Design of Organizational Interaction. ACM Transactions on Office Information Systems, 6(2):153-172, April 1988. Special issue on the language/action perspective.

[Frank 85] Ariel J. Frank, Larry D. Wittie, Arthur J. Bernstein. Multicast Communica­tion on Network Computers. IEEE Software, 2(3}:49-61, 1985.

[Friedrich 91] J. Friedrich, K.-H. Rodiger (Hrsg.). Computergestiitzte Gruppenarbeit (CSCW), 1. Fachtagung, Bremen, Sept. 1991. Teubner, Stuttgart. Berichte des German Chapter of the ACM, Band 34.

[Galanis 92] Thomas Galanis. Realisierung eines kooperativen Spreadsheets. Studienar­beit, Universitat Karlsruhe, Institut fur Telematik, 1992.

[Galegher 90] Jolene Galegher, Robert E. Kraut, Carmen Egido (Hrsg.). Intellectual Teamwork. Lawrence Erlbaum Associates, Hillsdale, New Jersey, 1990.

[Garcia-Luna-Aceves 88] J. J. Garcia-Luna-Aceves, Earl J. Craighill, Ruth Lang. An Open-Systems M9del for Computer-Supported Collaboration. In 2nd IEEE Conf. on Computer Workstations, S. 40-51, Santa Clara, Miirz 1988. IEEE Computer Society Press, Los Alamitos, California.

[Garret 86] L. Nancy Garret, Karen E. Smith, Norman Meyrowitz. Intermedia: Issues, Stategies, and Tactics in the Design of a Hypermedia Document System. In CSCW '86 Conference on Computer-Supported Cooperative Work, S. 163-174, Austin, Texas, Dez. 1986. MCC STP, ACM.

[Gelernter 92] David Gelernter, Nicholas Carriero. Coordination Languages and their Significance. Communications of the ACM, 35(2}:96-107, Feb. 1992.

[Gibbs 88] S. J. Gibbs. LIZA: An Extensible Groupware Toolkit. Technischer Bericht STP-042-88, Microelectronics and Computer Technology Corp., Austin, Texas, Jan. 1988.

LITERATURVERZEIGHNIS 143

[Gibbs 89a] S. Gibbs. CSCW and Software Engineering. In D. Tsichritzis (Hrsg.), Object Oriented Development, S. 31-40. Centre Universitaire d'Informatique, 1989.

[Gibbs 89b] S. J. Gibbs. LIZA: An Extensible Groupware Toolkit. In Ken Bice, Clayton Lewis (Hrsg.), Human Factors in Computing Systems: CHI '89, S. 29-35, Austin, Texas, Mai 1989. ACM Press.

[Gibbs 90] S. Gibbs, A. A. Verrijn-Stuart (Hrsg.). Multi-User Interfaces and Applicati­ons. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-User Interfaces and Applications, Heraklion, Crete, Greece, Sep., 1990.

[Giese 85] E. Giese, K. Gargen, E. Hinsch, G. Schulze, K. Trua!. Dienste und Protokolle in Kommunikationssystemen. Springer, Berlin etc., 1985.

[Gifford 85] David K. Gifford, James E. Donahue. Coordinating Independent Atomic Actions. In Compcon Spring 85, S. 92-95. IEEE, IEEE Computer Society Press, Los Alamitos, California, 1985.

[Gigabit 90] Gigabit Network Testbeds. COMPUTER, S. 77-80, Sept. 1990.

[Gargen 85] K. Gargen, H. Koch, G. Schulze, B. Struif, K. Trua!. Grundlagen der Kommunikations-Technologie. Springer, Berlin etc., 1985.

[Goldberg 84] Adele Goldberg. Smalltalk-80: The Interactive Programming Environment. Addison Wesley, Reading, MA, 1984.

[Goldberg 89] Adele Goldberg, David Robson. Smalltalk-80: The Language. Addison Wesley, Reading, MA, 1989.

[Greenbaum 88] Joan Greenbaum. In Search of Cooperation: An Historical Analysis of Work Organization and Management Strategies. In CSCW 88 Conference on Computer­Supported Cooperative Work, S. 102-114, Portland, Oregon, Sept. 1988. ACM Press.

[Greenberg 89] Saul Greenberg. The 1988 Conference on Computer-Supported Coopera­tive Work: Trip Report. ACM SIGCHI Bulletin, 21(1):49-55, Juli 1989.

[Greenberg 90] Saul Greenberg. Sharing views and interactions with single-user applica­tions. In Frederick H. Lochovsky, Robert B. Allen (Hrsg.), Conf. on Office Information Systems, S. 227-237, Cambridge, Massachusetts, April 1990. ACM Press.

[Greenberg 91a] Saul Greenberg. An Annotated Bibliography of Computer Supported Cooperative Work. ACM SIGCHI Bulletin, 23(3):29-62, Juli 1991. Special Issue on Computer Supported Cooperative Work.

[Greenberg 91b] Saul Greenberg (Hrsg.). Computer-supported Cooperative Work and Groupware. ACM Press, 1991.

144 LITERATURVERZEICHNIS

[Greenberg 91c] Saul Greenberg. Computer-supported cooperative work and groupware: an introduction to the special issues. Int. Journal of Man-Machine Studies, 34:133-141, 1991. Two-edition series on computer supported cooperative work and groupware.

[Greenberg 91d] Saul Greenberg. Personalizable groupware: Accommodating individual roles and group differences. In Liam Bannon, Mike Robinson, Kjeld Schmidt (Hrsg.), ECSCW'91 The 2nd European Conference on Computer Supported Cooperative Work, S. 17-31, Amsterdam, The Netherlands, Sept. 1991. Kluwer Academic Publishers, Dor­drecht.

[Greenberg 92] Saul Greenberg, Mark Roseman, Dave Webster. Issues and Experiences Designing and Implementing Two Group Drawing Tools. In Jay F. Nunamaker Jr., Ralph H. Sprague Jr. (Hrsg.), Twenty-Fifth Hawaii International Conference on System Sciences, Vol. IV, S. 139-150. IEEE Computer Society Press, Los Alamitos, California, 1992.

[Greif 86] Irene Greif, Robert Seliger, William Weihl. Atomic Data Abstractions in a Distributed Collaborative Editing System. In Proc. 19th Annual ACM Symposium on Principles of Programming Languages, S. 160-172, St. Petersburg, Florida, Jan. 1986. ACM.

[Greif 88a) Irene Greif (Hrsg.). Computer-Supported Cooperative Work: A Book of Rea­dings. Morgan-Kaufmann Publishers, San Mateo, CA, 1988.

[Greif 88b) Irene Greif, Sunil Sarin. Data Sharing in Group Work. In Irene Greif (Hrsg.), Computer-Supported Cooperative Work: A Book of Readings, Kap. 17, S. 477-508. Morgan-Kaufmann Publishers, San Mateo, CA, 1988.

[Groupware 92) GROUPWARE: Software for Computer-Supported Cooperative Work. IEEE Computer Society Press, Los Alamitos, California, 1992. In Vorbereitung.

[Grudin 88a] Jonathan Grudin. Perils and Pitfalls. BYTE, S. 261-264, Dez. 1988. Special Issue on Groupware.

[Grudin 88b] Jonathan Grudin. Why CSCW Applications Fail: Problems in the Design and Evaluation of Organizational Interfaces. In CSCW 88 Conference on Computer­Supported Cooperative Work, S. 85-93, Portland, Oregon, Sept. 1988. ACM Press.

[Grudin 89] Jonathan Grudin. CSCW '88: Report on the Conference & Review of the Proceedings. ACM SIGCHI Bulletin, 20(4):80-84, April 1989.

[Grudin 91a) Jonathan Grudin. CSCW Introduction. Communications of the ACM, 34(12):30-34, Dez. 1991. Special Issue on Computer-Supported Cooperative Work.

[Grudin 91b) Jonathan Grudin. CSCW: The Convergence of Two Development Contexts. In Scott P. Robertson, Gary M. Olson, Judith S. Olson (Hrsg.), Human Factors in Computing Systems: CHI '91, S. 91-97, New Orleans, Louisiana, April 1991. ACM Press.

LITERATURVERZEICHNIS 145

[Grudin 91c] Jonathan Grudin. A Tale of Two Cities: Reflections on CSCW in Europe and the United States. ACM SIGCHI Bulletin, 23(3):22-24, Juli 1991.

[Hammiiinen 91] Heikki Hammiiinen, Chris Condon. Form and Room: Metaphors for Groupware. In Peter de Jong (Hrsg.), Conference on Organizational Computing Sy­stems, S. 95-105, Atlanta, Georgia, Nov. 1991. ACM Press.

[Hahn 89] Udo Hahn, Matthias Jarke, Klaus Kreplin, Marisa Farusi, Francesco Pimpinelli. CoAUTHOR: A Hypermedia Group Authoring Environment. In EC-CSCW '89 First European Conference on Computer Supported Cooperative Work, S. 226-244, London, UK, Sept. 1989.

[Hahn 90] Udo Hahn, Matthias Jarke, Thomas Rose. Group Work in Software Projects. In S. Gibbs, A. A. Verrijn-Stuart (Hrsg.), Multi-User Interfaces and Applications, S. 83-101. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-User Interfaces and Applications, Heraklion, Crete, Greece, Sep., 1990.

[Hahn 91] Udo Hahn, Matthias Jarke, Thomas Rose. Teamwork Support in a Knowledge­Based Information Systems Environment. IEEE Transactions on Software Engineering, 17(5):467-482, Mai 1991.

[Halasz 88] Frank G. Halasz. Reflections on Notecards: Seven Issues for the Next Ge­neration of Hypermedia Systems. Communications of the ACM, 31(7):836-852, Juli 1988.

[Henderson Jr. 86] D. Austin Henderson Jr., Stuart K. Card. Rooms: The Use of Multiple Virtual Workspaces to Reduce Space Contention in a Window-Based Graphical User Interface. ACM Transactions on Graphics, 5(3):211-243, Juli 1986.

[Hennessy 89] Pippa Hennessy, Steve Benford, John Bowers. Modelling Group Communi­cation Structures: Analysing four European projects. In EC-CSCW '89 First European Conference on Computer Supported Cooperative Work, S. 406-420, London, UK, Sept. 1989.

[Henninger 91] Scott Henninger. Computer Systems Supporting Cooperative Work: A CSCW '90 Trip Report. ACM SIGCHI Bulletin, 23(3):25-28, Juli 1991.

[Herrtwich 89] R. G. Herrtwich, G. Hommel. Kooperation und Konkurrenz. Springer, Berlin etc., 1989.

[Hewitt 86] Carl Hewitt. Offices Are Open Systems. ACM Transactions on Office Infor­mation Systems, 4(3):271-287, Juli 1986.

[Hoffmann 90] Gerd E. Hoffmann. Telearbeit verandert Unternehmensstrukturen. ntz, 45(9):664-666, 1990.

146 LITERATURVERZEICHNIS

[Holt 88] Anatol W. Holt. Diplans: A New Language for the Study and Implementation of Coordination. ACM Transactions on Office Information Systems, 6(2):109-125, April 1988.

[IJMMS 91] Int. Journal of Man-Machine Studies: Two-edition series on computer sup­ported cooperative work and groupware, 1991.

[Ishii 91] Hiroshi Ishii, Naomi Miyake. Toward an Open Shared Workspace. Communi­cations of the ACM, 34(12):36-50, Dez. 1991. Special Issue on Computer-Supported Cooperative Work.

[ISO 84] Information processing systems-Open Systems Interconnection-Basic Refe­rence Model, International Standard ISO 7498. International Organization for Stan­dardization, Technical Committee ISO/TC 97, 1984.

[Jakobs 89] Kai Jakobs. OSI - An Appropriate Basis for Group Communication? Tech­nischer Bericht 89-6, RWTH Aachen, 1989.

[Jarczyk 92] Alex P. J. Jarczyk, Peter Lomer, Frank M. Shipman III. Design Rationale for Software Engineering: A Survey. In Jay F. Nunamaker Jr., Ralph H. Sprague Jr. (Hrsg.), Twenty-Fifth Hawaii International Conference on System Sciences, S. tbs. IEEE Computer Society Press, Los Alamitos, California, 1992.

[Jensch 90] P. Jensch. Multimediale Systeme in der Medizin. In A. Reuter (Hrsg.), GI-20. Jahrestagung II, Informatik auf dem Weg zum Anwender, S. 252-258, Stuttgart, Okt. 1990. Springer, Berlin etc.

[Johansen 88] R. Johansen. Groupware: Computer Support for Business Teams. The Free Press, New York, 1988.

[Johansen 91] Robert Johansen. Teams for Tomorrow. In 24th Annual Hawaii Intl. Con/. on System Sciences, S. 520-534. IEEE Computer Society Press, Los Alamitos, Califor­nia, 1991. Plenary Speech.

[Kaplan 91] Simon M. Kaplan, Alan M. Carroll, Kenneth J. MacGregor. Supporting Collaborative Processes with ConversationBuilder. In Peter de Jong (Hrsg.), Conference on Organizational Computing Systems, S. 69-79, Atlanta, Georgia, Nov. 1991. ACM Press.

[Karbe 90] Bernhard H. Karbe, Norbert G. Ramsperger. Influence of Exception Handing on the Support of Cooperative Office Work. In S. Gibbs, A. A. Verrijn-Stuart (Hrsg.), Multi-User Interfaces and Applications, S. 355-370. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-User Interfaces and Applications, Heraklion, Crete, Greece, Sep., 1990.

[Kim 89] W. Kim, F. Lochovsky (Hrsg.). Object-Oriented Concepts, Databases and App­lications. Addison Wesley, Reading, MA, 1989.

LITERATURVERZEIOHNIS 147

[Knister 90] Michael J. Knister, Atul Prakash. DistEdit: A Distributed Toolkit for Sup­porting Multiple Group Editors. In OSOW 'YO Oonference on Oomputer-Supported Oooperative Work, S. 343-355, Los Angeles, CA, Okt. 1990. ACM Press.

[Kobialka 89] H.-U. Kobialka, W. Hanschke. Ein Konzept fUr kooperierende Entwurf­stransaktionen. In M. Paul (Hrsg.), GI-lY. Jahrestagung, S. 231-242, Miinchen, Okt. 1989. Springer, Berlin etc.

[Kraemer 88] Kenneth L. Kraemer, John Leslie King. Computer-Based Systems for Co­operative Work and Group Decision Making. AOM Oomputing Surveys, 20(2):115-146, Juni 1988.

[Krasner 87] Herb Krasner. CSCW '86 Conference Summary Report. AOM SIGOHI Bulletin, 19(1):51-53, Juli 1987.

[Krasner 88] Glenn E. Krasner, Stephen T. Pope. A Cookbook for using the Model­View-Controller User Interface Paradigm in Smalltalk-80. Journal of Object-Oriented Programming, 1(3):26-49, Aug. 1988.

[Krasner 91] Herb Krasner, John Mcinroy, Diane B. Walz. Groupware Research and Tech­nology Issues with Application to Software Process Management. IEEE 1ransactions on Systems, Man, and Oybernetics, 21(4):704-712, 1991.

[Kreifelts 87] Th. Kreifelts, P. Seuffert, G. Woetzel. Ausnahmebehandlung, Verteilung und Adressierung im Vorgangssystem DOMINO. In M. Paul (Hrsg.), GI-17. Jahres­tagung, Oomputerintegrierter Arbeitsplatz im Bura, S. 682-696, Miinchen, Okt. 1987. Springer, Berlin etc.

[Kreifelts 91] Thomas Kreifelts, Elke Hinrichs, Karl-Heinz Klein, Peter Seuffert, Gerd Woetzel. Experiences with the Domino Office Procedure System. In Liam Bannon, Mike Robinson, Kjeld Schmidt (Hrsg.), EOSOW '91 The 2nd European Oonference on Oomputer Supported Oooperative Work, S. 117-130, Amsterdam, The Netherlands, Sept. 1991. Kluwer Academic Publishers, Dordrecht.

[Kriiger 90] Gerhard Kriiger. Potenzen der informationsverarbeitenden Techniken bis ins Jahr 2000. Vortrag anliifilich der 45. internationalen Akademiewochen der Deutschen Bundespost, Juni 1990.

[Kurzynski 87] Marcia J. Kurzynski. Work-Flow Analysis. Journal of Systems Manage­ment, S. 14-20, Jan. 1987.

[Lai 88] Kum-Yew Lai, Thomas W. Malone, Keh-Chiang Yu. Object Lens: A 'Spreads­heet' for Cooperative Work. AOM 1ransactions on Office Information Systems, 6(4):332-353, Okt. 1988.

[Lantz 86) Keith A. Lantz. An Experiment in Integrated Multimedia Conferencing. In CSCW '86 Conference on Computer-Supported Cooperative Work, S. 267-275, Austin, Texas, Dez. 1986. MCC STP, ACM.

148 LITERATURVERZEICHNIS

[Lauwers 90aJ J. Chris Lauwers, Thomas A. Joseph, Keith A. Lantz, Allyn L. Romanow. Replicated Architectures for Shared Window Systems: A Critique. In Frederick H. Lochovsky, Robert B. Allen (Hrsg.), Conf. on Office Information Systems, S. 249-260, Cambridge, Massachusetts, April 1990. ACM Press.

[Lauwers 90bJ J. Chris Lauwers, Keith A. Lantz. Collaboration Awareness in Support of Collaboration Transparency: Requirements for the Next Generation of Shared Window Systems. In Jane Carrasco Chew, John Whiteside (Hrsg.), Human Factors in Compu­ting Systems: CHI '90, S. 303-311, Seattle, Washington, April 1990. ACM Press.

[Lederberg 89J Joshua Lederberg, Keith Uncapher. Towards a National Collaboratory. available from Forms & Publications Unit, NSF, Miirz 1989. report of an invitational workshop at the Rockefeller University.

[Lee 90aJ Jeffrey J. Lee. Xsketch: a multi-user sketching tool for XII. In Frederick H. Lochovsky, Robert B. Allen (Hrsg.), Conf. on Office Information Systems, S. 169-173, Cambridge, Massachusetts, April 1990. ACM Press.

[Lee 90bJ Jintae Lee. SIBYL: A Tool for Managing Group Decision Rationale. In CSCW '90 Conference on Computer-Supported Cooperative Work, S. 79-92, Los Angeles, CA, Okt. 1990. ACM Press.

[Leffler 89) Samuel J. Leffler. The Design and Implementation of the 4.9 BSD UNIX Operating System. Addison Wesley, Reading, MA, 1989.

[Lehman 87) M. M. Lehman. Process Models, Process Programs, Programming Support. In Proc. 9th Intl. Conference on Software Engineering, Monterey, CA, 1987. IEEE Computer Society Press, Los Alamitos, California.

[Leiner 87] B. M. Leiner. Telescience and Advanced Technologies. In J. J. Garcia-Luna­Aceves (Hrsg.), Frontiers in Computer Communications Technology: Proc. of the ACM SIGCOMM '87 Workshop, S. 292, Stowe, Vermont, Aug. 1987. ACM Press. Special Issue Computer Communication Review, Vol. 17, N. 5.

[Leland 88] Mary D. P. Leland, Robert S. Fish, Robert E. Kraut. Collaborative Document Production Using Quilt. In CSCW 88 Conference on Computer-Supported Cooperative Work, S. 206-215, Portland, Oregon, Sept. 1988. ACM Press.

[Lewe 91] Henrik Lewe, Helmut Krcmar. Groupware. Informatik Spektrum, 14(6}:345-348, Dez. 1991. 'Das aktuelle Schlagwort'.

[Liang 90J Luping Liang, Samuel T. Chanson, Gerald W. Neufeld. Process Groups and Group Communications: Classification and Requirements. COMPUTER, S. 56-66, Feb. 1990.

[Liskov 83] Barbara Liskov, Robert Scheifler. Guardians and Actions: Linguistic Support for Robust, Distributed Programs. ACM Transactions on Programming Languages and Systems, 5(3}:381-404, Juli 1983.

LITERATURVERZEICHNIS 149

[Lochovsky 88] F. H. Lochovsky, J. S. Hogg, S. P. Weiser, A. O. Mendelzon. OTM: Spe­cifying Office Tasks. In Robert B. Allen (Hrsg.), Proc. Conference on Office Information Systems, S. 46-54, Palo Alto, CA, Miirz 1988.

[Loff 90] Gisbert Loff. Konzeption, Entwurf und Implementierung eines netzweiten Vide­odienstes. Diplomarbeit, Universitat Karlsruhe, Institut fur Telematik, 1990.

[Lu 91] Iva M. Lu, Marilyn M. Mantei. Idea Management In a Shared Drawing Tool. In Liam Bannon, Mike Robinson, Kjeld Schmidt (Hrsg.), ECSCW '91 The 2nd European Conference on Computer Supported Cooperative Work, S. 97-112, Amsterdam, The Netherlands, Sept. 1991. Kluwer Academic Publishers, Dordrecht.

[Madsen 89] Christian Murmann Madsen. Using Persistent Objects to Implement an Environment for Cooperative Work. In TOOLS '89 - Technology of Object-Oriented Languages and Systems, S. 243-252, CNIT Paris, France, Nov. 1989.

[Mantyla 90] Risto Mantyla, Jari Alasuvanto, Heikki Hammrunen. PAGES: A Testbed for Groupware Applications. In S. Gibbs, A. A. Verrijn-Stuart (Hrsg.), Multi-User Interfaces and Applications, S. 37-47. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-User Interfaces and Applications, Heraklion, Crete, Greece, Sep., 1990.

[Malone 87a] Thomas W. Malone, Kenneth R. Grant, Kum-Yew Lai, Ramana Rao, David Rosenblitt. Semistructured Messages Are Surprisingly Useful for Computer-Supported Coordination. ACM Transactions on Office Information Systems, 5(2):115-131, April 1987.

[Malone 87b] Thomas W. Malone, Kenneth R. Grant, Franklyn A. Turbak, Stephen A. Brobst, Michael D. Cohen. Intelligent Information-Sharing Systems. Communications of the ACM, 30(5):390-402, Mai 1987.

[Malone 88] Thomas W. Malone. What is Coordination Theory? Paper presented at the NSF Coordination Theory Workshop, Feb. 1988.

[Malone 90] Thomas W. Malone, Kevin Crowston. What is Coordination Theory and How Can It Help Design Cooperative Work Systems? In CSCW '90 Conference on Computer-Supported Cooperative Work, S. 357-370, Los Angeles, CA, Okt. 1990. ACM Press.

[Mantei 88] Marilyn Mantei. Groupware: Interface Design for Meetings (Panel). In El­liot Soloway, Douglas Frye, Sylvia B. Sheppard (Hrsg.), Human Factors in Computing Systems: CHI '88, S. 161-163, Washington, D.C., Mai 1988. Panelists: Lucy Suchman, Gerardine DeSanctis, Lynda Applegate, Sirkka Jarvenpaa.

[Marca 89] David A. Marca. Specifying Coordinators: Guidelines For Groupware Devel­opers. ACM SIGSOFT SOFTWARE ENGINEERING NOTES, 14(3):235-237, Mai 1989.

150 LITERATURVERZEICHNIS

[Martens 91] Clarence Martens, Frederick H. Lochovsky. OASIS: A Programming En­vironment for Implementing Distributed Organizational Support Systems. In Peter de Jong (Hrsg.), Conference on Organizational Computing Systems, S. 29-42, Atlanta, Georgia, Nov. 1991. ACM Press.

[Martin 91] Bruce E. Martin, Claus H. Pedersen, James Bedford-Roberts. An Object­Based Taxonomy for Distributed Computing Systems. COMPUTER, S. 17-27, Aug. 1991.

[Metzger 91] Rolf Metzger. Erweiterung von Smalltalk-80 um Verteilungskomponenten. Diplomarbeit, Universitat Karlsruhe, Institut fiir Telematik, 1991.

[Miihlhauser 89] M. Miihlhauser. Requirements and Concepts for Networked Multimedia Courseware Engineering. In H. Maurer (Hrsg.), ICCAL, Inti. Conf. on Computer Aided Learning, S. 400-419, Dallas, Texas, Mai 1989. Springer, Berlin etc.

[Miihlhauser 90] M. Miihlhauser. Software Engineering in Distributed Systems-Approaches and Issues. In IEEE Inti. Phoenix Conf. on Computers and Communi­cations, IPCCC'90, S. 408-416, Scottsdale, AZ, USA, Miirz 1990.

[Miihlhauser 91a] Max Miihlhauser. Computer Based Learning with Distributed Multi­media Systems. In HCI International '91-IVth Inti. Conference" on Human-Computer Interaction, Stuttgart, Germany, Sept. 1991.

[Miihlhauser 91b] Max Miihlhauser. Hypermedia-Konzepte zur Verarbeitung multime­dialer Information. Informatik Spektrum, 14(5):281-290, Okt. 1991.

[Miihlhauser 92] Max Miihlhauser, Alexander Schill. Software Engineering for verteilte Anwendungen. Springer, Berlin etc., 1992.

[Neuwirth 90] Christine M. Neuwirth, David S. Kaufer, Ravinder Chandhok, James H. Morris. Issues in the Design of Computer Support for Co-authoring and Commenting. In CSCW '90 Conference on Computer-Supported Cooperative Work, S. 183-195, Los Angeles, CA, Okt. 1990. ACM Press.

[Newman-Wolfe 91a] R. E. Newman-Wolfe, Harsha K. Pelimuhandiram. MACE: A Fine Grained Concurrent Editor. In Peter de Jong (Hrsg.), Conference on Organizational Computing Systems, S. 240-254, Atlanta, Georgia, Nov. 1991. ACM Press.

[Newman-Wolfe 91b] R. E. Newman-Wolfe, C. L. Ramirez, H. Pelimuhandiram, M. Mon­tes, M. Webb, D. L. Wilson. A Brief Overview of the DCS Distributed Conferencing System. In USENIX-Summer '91, S. 437-452, Nashville, TN, Juni 1991. USENIX Assoc.

[Nielsen 87] Jakob Nielsen. Computer-Supported Cooperative Work: Trip Report from the Conference in Austin, December 3-5, 1986. ACM SIGCHI Bulletin, 19(1):54-61, Juli 1987.

LITERATURVERZEICHNIS 151

[Nierstrasz 86] O. M. Nierstrasz. What is the 'Object' in Object-oriented Programming? In Proc. of the CERN School of Computing, August-September 1986.

[Nierstrasz 88] O. M. Nierstrasz, D. C. Tsichritzis. Integrated Office Systems. In Object­Oriented Concepts and Databases. Addison Wesley, Reading, MA, 1988.

[Nierstrasz 89] Oscar Nierstrasz. A Survey of Object-Oriented Concepts. In W. Kim, F. Lochovsky (Hrsg.), Object-Oriented Concepts, Databases and Applications, S. 3-21. Addison Wesley, Reading, MA, 1989.

[NSF 90] Special Initiative on Coordination Theory and Collaboration Technology. availa­ble from Forms & Publications Unit, NSF, Jan. 1990. Announcement and call for proposals.

[Obermeit 87] Volker Obermeit, Ralf Steinmetz. Communication and Database Oriented Modelling of Multilateral Cooperation - A Comparision Based on Petri Netz. In K. Voss, H. J. Genrich, G. Rozenberg (Hrsg.), Concurrency and Nets, S. 363-379. Springer, Berlin etc., 1987.

[Olson 83] Margrethe H. Olson. Remote Office Work: Changing Work Patterns in Space and Time. Communications of the ACM, 26(3):182-187, Miirz 1983.

[Olson 89] Margrethe H. Olson. Work at Home for Computer Professionals: Current Attitudes and Future Prospects. ACM Transactions on Office Information Systems, 7( 4):317-338, Okt. 1989.

[Opper 88] Susanna Opper. A Groupware Toolbox. BYTE, S. 275-282, Dez. 1988. Special Issue on Groupware.

[Osterweil 87] Leon Osterweil. Software Processes Are Software Too. In Proc. 9th Inti. Conference on Software Engineering, S. 2-13, Monterey, CA, 1987. IEEE Computer Society Press, Los Alamitos, California.

[Palme 88] Jacob Palme. Extending Message Handling to Computer-Conferencing. In J. Raviv (Hrsg.), Computer Communication Technologies for the 90's, S. 44-49, Tel Aviv, Israel, Okt. 1988. The International Council for Computer Communication, North Holland, Amsterdam.

[Pankoke-Babatz 88] Uta Pankoke-Babatz, Wolfgang Prinz. Support for Coordinating Group Activities. In Einar SteH'erud, Ole J. Jacobsen, Pietro Schicker (Hrsg.), Message Handling Systems and Distributed Applications, S. 345-358, Costa Mesa, California, U.S.A, Okt. 1988. IFIP TC 6/WG 6.5, North Holland, Amsterdam.

[Pankoke-Babatz 89] Uta Pankoke-Babatz (Hrsg.). Computer Based Group Communica­tion - the AMIGO activity model. Ellis Horwood, Chichester, 1989.

[Patterson 90a] John Patterson. The Good, the Bad, and the Ugly of Window Sharing in X. In 4th Annual X Technical Conference, Boston, Massachusetts, Jan. 1990.

152 LITERATURVERZEIOHNIS

[Patterson 90b] John F. Patterson, Ralph D. Hill, Steven L. Rohall. Rendezvous: An Architecture for Synchronous Multi-User Applications. In CSCW '90 Conference on Oomputer-Supported Cooperative Work, S. 317-328, Los Angeles, CA, Okt. 1990. ACM Press.

[Patterson 91] John F. Patterson. Comparing the Programming Demands of Single-User and Multi-User Applications. In UIST'91 Proc. of the ACM Symposium on User Inter­face Software and Technology, S. 87-94, Hilton Head, South Carolina, Nov. 1991. ACM Press.

[Pehrson 92] Bjorn Pehrson, Per Gunningberg, Stephen Pink. Distributed Multimedia Applications on Gigabit Networks. IEEE Network Magazine, 6(1):26-35, Jan. 1992.

[Powrie 90] S. E. Powrie, C. E. Siemieniuch. IBC and Cooperative Working in the Auto­motive Industry. In S. Gibbs, A. A. Verrijn-Stuart (Hrsg.), Multi-User Interfaces and Applications, S. 311-322. North Holland, Amsterdam, 1990. Proc. of the IFIP WG8.4 Conf. on Multi-User Interfaces and Applications, Heraklion, Crete, Greece, Sep., 1990.

[Press 91] Larry Press. Wide-Area Collaboration. Communications of the ACM, 34(12):21-24, Dez. 1991. Special Issue on Computer-Supported Cooperative Work.

[Prinz 89a] Wolfgang Prinz. Survey of Group Communication Models and Systems. In Uta Pankoke-Babatz (Hrsg.), Computer Based Group Communication - the AMIGO activity model, Kap. 3, S. 127-180. Ellis Horwood, Chichester, 1989.

[Prinz 89b] Wolfgang Prinz, Paola Pennelli. Relevance of the X.500 Directory to CSCW Applications. In EC-CSCW '89 First European Conference on Computer Supported Cooperative Work, S. 289-302, London, UK, Sept. 1989.

[Quarterman 90] John S. Quarterman. The Matrix: Computer Networks and Conferen­cing Systems Worldwide. Digital Press, Bedford, MA, 1990.

[Rapaport 91] Matthew Rapaport. Computer Mediated Communications. John Wiley & Sons, New York etc., 1991.

[Rein 89] Gail L. Rein, Clarence A. Ellis. The Nick Experiment Reinterpreted: Implica­tions for Developers and Evaluators of Groupware. Technischer Bericht STP-018-88, Microelectronics and Computer Technology Corp., Austin, Texas, Juni 1989. cf. Office: Technology and People, Vol 5, Issue 1.

[Rein 91] Gail L. Rein, Clarence A. Ellis. rIBIS: a real-time group hypertext system. Int. Journal of Man-Machine Studies, 34:349-367, 1991.

[Reisig 85] W. Reisig. Petri Nets. An Introduction. Springer, Berlin etc., 1985.

[Reuter 91] Andreas Reuter, Helmut Wachter. The ConTract Model. IEEE Data Engi­neering, 14(1):39-43, Marz 1991. Special Issue on Unconventional Transaction Mana­gement.

LITERATURVERZEICHNIS 153

[Richartz 90] Martin Richartz, Tom D. Riidebusch. Collaboration in Hypermedia En­vironments. In David H. Jonassen, Heinz Mandl (Hrsg.), Designing Hypermedia for Learning, Kap. 18. Springer, Berlin etc., 1990.

[Robinson 91] Mike Robinson, Liam Bannon. Questioning Representations. In Liam Ban­non, Mike Robinson, Kjeld Schmidt (Hrsg.), ECSCW '91 The 2nd European Conference on Computer Supported Cooperative Work, S. 219-233, Amsterdam, The Netherlands, Sept. 1991. Kluwer Academic Publishers, Dordrecht.

[Rodden 91] Tom Rodden, Gordon Blair. CSCW and Distributed Systems: The Problem of Control. In Liam Bannon, Mike Robinson, Kjeld Schmidt (Hrsg.), ECSCW '91 The 2nd European Conference on Computer Supported Cooperative Work, S. 49-64, Amsterdam, The Netherlands, Sept. 1991. Kluwer Academic Publishers, Dordrecht.

[Root 88] Robert W. Root. Design of a Multi-Media Vehicle for Social Browsing. In CSCW 88 Conference on Computer-Supported Cooperative Work, S. 25-38, Portland, Oregon, Sept. 1988. ACM Press.

[Rosenberg 91] Laurence C. Rosenberg. Update On National Science Foundation Funding Of The 'Collaboratory'. Communications of the ACM, 34(12):83, Dez. 1991. Special Issue on Computer-Supported Cooperative Work.

[Rosenblatt 91] Alfred Rosenblatt, George F. Watson. Concurrent Engineering. IEEE SPECTRUM, S. 22 ff., Juli 1991. Special Report on Concurrent Engineering.

[Riidebusch gOa] Tom D. Riidebusch. The GroupIE System. Vortrag bei IBM Tokyo Research Lab., Tokyo, Japan, 29. Oktober 1990.

[Riidebusch 90b] Tom D. Riidebusch. The NESTOR System. Vortrag bei DEC Educa­tional Services, Tokyo, Japan, 23. Oktober 1990.

[Riidebusch 90c] Tom D. Riidebusch. Requirements and Concepts for a Group Interaction Environment. In HIS'90-Sixth Symposium on Human Interface, S. 545-552, Tokyo, Japan, Okt. 1990.

[Riidebusch 90d] Tom D. Riidebusch. Unterstiitzung von Kooperation in Lernsystemen. Vortrag wahrend der Sitzung der Fachgruppe 'Intelligente Lernsysteme' im Rahmen der 20. GI-Jahrestagung, Stuttgart, 12. Oktober 1990.

[Riidebusch 91a] Tom D. Riidebusch. Ansatze zur Unterstiitzung von kooperativer Arbeit in verteilten Umgebungen. Vortrag im DFKI, Saarbriicken, 19. Juni 1991.

[Riidebusch 91b] Tom D. Riidebusch. Development and Runtime Support for Collabora­tive Applications. In H.-J. Bullinger (Hrsg.), Human Aspects in Computing-Proc. IVth Inti. Conference on Human-Computer Interaction, S. 1128-1132, Stuttgart, Germany, Sept. 1991. Elsevier Science Publishers, Amsterdam.

154 LITERATURVERZEICHNIS

[Riidebusch 91c] Tom D. Riidebusch. Ein Ansatz zur generischen Unterstiitzung von Teamarbeit in verteilten Systemen. Vortrag im ENC, IBM, Heidelberg, 4. Mii.rz 1991.

[Riidebusch 91d] Tom D. Riidebusch. The Interaction Concept as a Basis for Open CSCW Systems. In ECSCW '91 Developers Workshop, Amsterdam, Sept. 1991.

[Riidebusch 91e] Tom D. Riidebusch. Supporting Interactions within Distributed Teams. In K. Gorling, C. Sattler (Hrsg.), Inti. Workshop on CSCW, S. 17-33, Berlin, Germany, April 1991. IFIP TC6/Co-Tech (COST 14), iir.

[Riidebusch 9lf] Tom D. Riidebusch, Max Miihlhauser. Ein Unterstiitzungssystem fiir Gruppenarbeit in verteilten Systemen. In W. Effelsberg, H. W. Meuer, G. Miiller (Hrsg.), Fachtagung 'Kommunikation in verteilten Systemen', S. 464-478, Mannheim, Feb. 1991. GI/ITG, Springer, Berlin etc.

[Riidebusch 92] Tom D. Riidebusch. Ansiitze zur Unterstiitzung von kooperativer Arbeit in verteilten Umgebungen. Vortrag vor Mitgliedern des ZFE, Siemens Miinchen, 24. Februar 1992.

[Sarin 85] Sunil Sarin, Irene Greif. Computer-Based Real-Time Conferencing Systems. COMPUTER, S. 33-45, Okt. 1985.

[Schill 90] Alexander Schill. Object-Oriented Group Communication Support for Dis­tributed Applications. In Message Handling Systems and Application Layer Com­munication Protocols, Zurich, Switzerland, Okt. 1990. IFIP WG 6.5, North Holland, Amsterdam.

[Schill 91] Alexander Schill. Distributed system and execution model for office environ­ments. computer communications, 14(8):478-488, Okt. 1991.

[Searle 69] John R. Searle. Speech Acts: An Essay in the Philosophy of Language. Cam­bridge University Press, London, 1969.

[Shipman III 89] Frank M. Shipman III, R. Jesse Chaney, G. Anthony Gorry. Distributed Hypertext for Collaborative Research: The Virtual Notebook System. In Hypertext '89, S. 129-135, Pittsburgh, Pennsylvania, Nov. 1989. Association for Computing Machi­nery.

[Siegenheim 91] Veit Siegenheim. Integration von Videoobjekten in Smalltalk-80. Studi­enarbeit, Universitiit Karlsruhe, Institut fiir Telematik, 1991.

[Siegenheim 92] Veit Siegenheim. Koordinationsunterstiitzung fiir verteilte CSCW­Anwendungen. Diplomarbeit, Universitiit Karlsruhe, Institut fiir Telematik, 1992.

[Sloman 88] Morris Sloman, Jeff Kramer. Verteilte Systeme und Rechnernetze. Carl Hanser Verlag, Miinchen, 1988.

LITERATURVERZEICHNIS 155

[Sluizer 85] Suzanne Sluizer, Paul M. Cashman. XCP: An Experimental Tool for Mana­ging Cooperative Activity. In Proc. of the Thirteenth ACM Computer Science Confe­rence, S. 251-258, New Orleans, Louisiana, Miirz 1985.

[Smith 90] Hugh Smith, Steve Benford, Alan Shepherd, Howidy Howidy. OSI-Based Group Communication. In Message Handling Systems and Application Layer Com­munication Protocols, S. DI-1-DI-16, Zurich, Switzerland, Okt. 1990. IFIP WG 6.5, North Holland, Amsterdam.

[Smith 91] John B. Smith, F. Donelson Smith. ABC: A Hypermedia System for Artifact­Based Collaboration. In Hypertext '91, S. 179-192, San Antonio, Texas, Dez. 1991. Association for Computing Machinery, ACM Press.

[Spafford 87] G. Spafford. USENET Software: History and Sources. USENET, 1987. recurrent article in news.admin and news.announce.newusers.

[Spektrum 91] Spektrum der Wissenschaft, Nov. 1991. Schwerpunktthema: Verschmel­zung von Kommunikations- und Informationstechnologie, Deutsche Ausgabe von Sci­entific American, September 1991.

[Stefik 87a] M. Stefik, D. G. Bobrow, G. Foster, S. Lanning, D. Tatar. WYSIWIS Revised: Early Experiences with Multiuser Interfaces. ACM Transactions on Office Information Systems, 5(2):147-167, April 1987.

[Stefik 87b] Mark Stefik, Gregg Foster, Daniel G. Bobrow, Kenneth Kahn, Stan Lanning, Lucy Suchman. Beyond the Chalkboard: Computer Support for Collaboration and Problem Solving in Meetings. Communications of the ACM, 30(1):32-47, Jan. 1987.

[Steiner 90] Donald D. Steiner, Dirk E. Mahling, Hans Haugeneder. Human Computer Cooperative Work. In Proc. 10th Inti. Workshop on Distributed Artificial Intelligence, S. 1-28, Bandera, Texas, Okt. 1990. AAAI, MCC.

[Stevens 90] W. Richard Stevens. UNIX Network Programming. Prentice Hall, Englewood Cliffs, N.J., 1990.

[Stingl91] Thomas Stingl. Problematik und Liisungsansiitze verteilter CSCW-Anwendungen am Beispiel einer exemplarischen Realisierung. Diplomarbeit, Univer­sitiit Karlsruhe, Institut fiir Telematik, 1991.

[Streitz 89] Norbert A. Streitz. Hypertextsysteme und computerunterstiitztes kooperati­ves Arbeiten. Tutorium der GI-Jahrestagung 1989, Okt. 1989.

[Streitz 91] Norbert Streitz. The Role of Hypertext for CSCW Applications (Panel). In Hypertext '91, S. 369-377, San Antonio, Texas, Dez. 1991. Association for Computing Machinery, ACM Press. Panelists: Frank Halasz and Hiroshi Ishii and Tom Malone and Chris Neuwirth and Gary Olson.

156 LITERATURVERZEICHNIS

[Stupperich 92J Michael Stupperich. Interaktionsunterstiitzung fUr verteilte CSCW­Anwendungen. Diplomarbeit, Universitat Karlsruhe, Institut fiir Telematik, 1992.

[Tang 91J John C. Tang, Scott L. Minneman. VideoDraw: A Video Interface for Col­laborative Drawing. ACM Transactions on Information Systems, 9(2):170-184, April 1991.

[Terek 91J Robert Terek, Joseph Pasquale. Experiences with Audio Conferencing Using the X Window System, UNIX, and TCP/IP. In USENIX-Summer '91, S. 405-418, Nashville, TN, Juni 1991. USENIX Assoc.

[Tesler 91J Lawrence G. Tesler. Das Vordringen vernetzter Computer. Spektrum der Wis­senschajt, (11):78-86, Nov. 1991. Deutsche Ausgabe von Scientific American, September 1991.

[TIMBUKTU 89J Farallon Timbuktu. PRISMA Information, Sept. 1989.

[Trigg 86J Randall H. Trigg, Lucy A. Suchman, Frank G. Halasz. Supporting Collabo­ration in NoteCards. In CSCW '86 Conference on Computer-Supported Cooperative Work, S. 153-162, Austin, Texas, Dez. 1986. MCC STP, ACM.

[Watabe 90] Kazuo Watabe, Shiro Sakata, Kazutoshi Maeno, Hideyuki Fukuoka, Ka­zuyuki Maebara. A Distributed Multiparty Desktop Conferencing System and Its Archi­tecture. In IEEE Inti. Phoenix Conf. on Computers and Communications, IPCCC'YO, S. 386-393, Scottsdale, AZ, USA, MiLrz 1990.

[Watabe 91] Kazuo Watabe, Shiro Sakata, Kazutoshi Maeno, Hideyuki Fukuoka, Toyoko Ohmori. Distributed Desktop Conferencing System with Multiuser Multimedia Inter­face. IEEE Journal on Selected Areas in Communications, 9(4):531-539, Mai 1991.

[Wegner 87J Peter Wegner. The Object-Oriented Classification Paradigm. In Bruce Shri­ver, Peter Wegner (Hrsg.), Research Directions in Object-Oriented Programming, S. 479-560. MIT Press, Cambridge, MA, 1987.

[Weiser 91J Mark Weiser. Computer im nikhsten Jahrhundert. Spektrum der Wissen­schajt, S. 92-101, Nov. 1991. Deutsche Ausgabe von Scientific American, September 1991.

[Wettstein 87J H. Wettstein. Architektur von Betriebssystemen. Carl Hanser Verlag, Miinchen, 1987.

[Whitaker 89J Randall Whitaker, Olov Ostberg, Ulf Essler. Communications and Coor­dination of Concerted Activity. In Human Interface, S. 325-338, Tokyo, Japan, 1989.

[Whitescarver 87] James Whitescarver, Prithviraj Mukherji, Murray Turoff, Ronald J. DeBlock Jr., Robert M. Czech, Bijoy K. Paul. A Network Environment for Computer­Supported Cooperative Work. ACM SIGCOMM Computer Communication Review, 17(5):260-272, Aug. 1987.

LITERATURVERZEICHNIS 157

[Wilbur 88] Sylvia B. Wilbur, Robert E. Young. The COSMOS Project - A Multi­Disciplinary Approach to Design for Computer-Supported Group Working. In R. Speth (Hrsg.), Research into Networks and Distributed Applications, EUTECO '88, S. 147-156, Vienna, Austria, April 1988. The European Action in Teleinformatics COST lIter, North Holland, Amsterdam.

[Williams 90] Daniel Williams. New Technologies for Coordinating Work. DATAMA­TION, S. 92-96, May 15 1990.

[Wilson 88] Paul Wilson. Key Research in Computer Supported Cooperative Work (CSCW). In R. Speth (Hrsg.), Research into Networks and Distributed Applications, EUTECO'88, S. 211-226, Vienna, Austria, April 1988. The European Action in Telein­formatics COST lIter, North Holland, Amsterdam.

[Winograd 86a] Terry Winograd. A language/action perspective on the design of coope­rative work. In CSCW '86 Conference on Computer-Supported Cooperative Work, S. 203-220, Austin, Texas, Dez. 1986. MCC STP, ACM.

[Winograd 86b] Terry Winograd, Fernando Flores. Understanding Computers and Co­gnition: A New Foundation for Design. Ablex Publishing Corporation, Norwood, New Jersey, 1986.

[Winograd 88] Terry Winograd. Where the Action Is. BYTE, S. 256a-258, Dez. 1988. Special Issue on Groupware.

[Winograd 91] Terry Winograd. Groupware: Systems Design from Perspective of Getting Things Done. IEEE Software, S. 81-82, Nov. 1991. Interview.

[Wi13kirchen 83] P. Wi13kirchen, T. Kreifelts, F. Kriickeberg, G. Richter, G. Wurch. In­formationstechnik und Burosysteme. Teubner, Stuttgart, 1983.

[WoetzeI87] G. Woetzel, Th. Kreifelts. Die Vorgangssprache CoPlan, Version 2. Tech­nischer Bericht FB-GMD-87-34, Gesellschaft fiir Mathematik und Datenverarbeitung mbH, Dez. 1987.

[Woitass 90] Michael Woitass. Koordination in strukturierten Konversationen. GMD­Bericht Nr. 190. R. Oldenbourg Verlag, Miinchen, 1990.

[Woo 86] Carson C. Woo, Frederick H. Lochovsky. Supporting Distributed Office Problem Solving in Orga~izations. ACM Transactions on Office Information Systems, 4(3):185-204, Juli 1986.

[Xanadu 89] Xanadu - Information Packet. Xanadu Operating Company, Palo Alto, Ca­lifornia, April 1989.

[Yankelovich 88] Nicole Yankelovich, Bernard J. Haan, Norman K. Meyrowitz, Steven M. Drucker. INTERMEDIA: The Concept and the Construction of a Seamless Information Environment. COMPUTER, S. 1-14, Jan. 1988.

158 LITERATURVERZEICHNIS

[Yoder 89] Elise Yoder, Robert Akscyn, Donald McCracken. Collaboration in KMS, A Shared Hypermedia System. In Ken Bice, Clayton Lewis (Hrsg.), Human Factors in Computing Systems: CHI '89, S. 37-42, Austin, Texas, Mai 1989. ACM Press.

[Young 89] Douglas A. Young. X Window Systems. Prentice Hall, Englewood Cliffs, N.J., 1989.

[Ziegler 92] Marcus Ziegler. Erweiterung von Smalltalk-80 urn 'Software Motion Pictures'. Studienarbeit, Universitat Karlsruhe, Institut fUr Telematik, 1992.

Anhang A

Zusammenfassung der Thesen

Aile im Verlauf des Textes formulierten Thesen sind an dieser Stelle zusammengestellt. Es empfiehlt sieh, die jeweiligen Seitenverweise zu verfolgen, urn den Kontext sowie eventuelle Bemerkungen naehzuvollziehen.

1. Kooperative Anwendungen werden haufig in grofien Teilen neu zu entwerfen und zu realisieren sein. Die CSCW-spezifisehe Funktionalitat sollte dureh eine generisehe CSCW-Teehnologie erbraeht werden (S. 26).

2. Eine generisehe CSCW-Teehnologie sollte fiir jedes einzelne der Kriterien Inter­aktion, Koordination und Verteilung und insbesondere fiir deren Kombination vielfliltige und variable Auspragungen zulassen (S. 26).

3. Voraussetzung fiir einen Paradigmenweehsel von der Kommunikation zur Koope­ration mit Hilfe von Informationssystemen ist eine einheitliehe, generisehe CSCW­Teehnologie, die neb en grundlegenden, kooperativen Anwendungen insbesondere ein allgemeines Modell eomputerunterstiitzter Teamarbeit sowie eine adaquate Umge­bungsunterstiitzung umfassen mufi (S. 38).

4. Der Ubergang von heutigen Einbenutzerarbeitsumgebungen zu zukiinftigen Team­arbeitsumgebungen sollte dureh eine konzeptionelle Erweiterung der bearbeiteten Objekte erreieht werden (S. 45).

5. In einer homogenen Teamarbeitsumgebung sollte Einzelarbeit der Spezialfall von Teamarbeit sein (S. 45).

6. Eine flexible Teamarbeitsumgebung sollte neben den Extrema synehroner und asyn­ehroner Zusammenarbeit die gesamte dazwisehenliegende Bandbreite als Synehro­nitat beziehungsweise Involvierungsgrad der Teammitglieder unterstiitzen (S. 49).

7. In einer umfassenden Teamarbeitsumgebung sollten explizite und implizite Interak­tionen in integrierter Weise unterstiitzt werden (S. 49).

160 Anhang A. ZusammenJassung der Thesen

8. In einer flexiblen Teamarbeitsumgebung sollte praskriptive Koordination der Spe­zialfall deskriptiver Koordination maximalen Detaillierungsgrades sein (S. 61).

9. In einer homogenen Teamarbeitsumgebung sollte eine Bandbreite von elementarer bis komplexer Koordination einheitlich auf der Grundlage einzelner Interaktionen formulierbar sein (S. 62).

10. Der hohe Anspruch einer allgemeinen Kooperationsunterstiitzung darf nicht dariiber hinwegtauschen, daB auf absehbare Zeit die Integration existierender Einzelanwen­dungen aus aufgabenspezifischen Griinden sowie fiir einen reibungslosen Migrations­pfad von traditionellen zu kooperativen Umgebungen unabdingbar sein wird (S. 82).

11. Eine Kooperationsunterstiitzung, die den hohen Nutzen einer 'Enabling Techno­logy' erbringen will, mufi in ihren Ausfiihrungseinheiten, Datenstrukturen und der Benutzerschnittstelle verteilt sein (S. 82).

Anhang B

Ausgewiihlte Teamobjektbeschreibungen

Dieser Anhang gibt eine Ubersicht der Realisierung ausgewahlter Teamobjektbeschreibun­gen [Stupperich 92]. Bis auf die Wurzelobjekte der beiden Hierarchien werden die seman­tische und die syntaktische Klasse des jeweiligen Teamobjektes gemeinsam beschrieben. Urn zu unterscheiden, ob die aufgefiihrten Variablen oder Methoden der semantischen oder der syntakischen Klasse zugehoren, wird dies durch den Zusatz (sem), (syn) bzw. (sem/syn) kenntlich gemacht. Will man Funktionalitat, Variablen und Methoden einer Klasse betrachten, ist es erforderlich, auch die Erlauterungen bei den entsprechenden Oberklassen nachzulesen.

Vor der Beschreibung der Teamobjektklassen wird deren Hierarchie aufgezeigt:

semantische Objekte

Object SemanticObject

SemanticText SemanticGraphics

SemanticRectangle SemanticLine

Semantic User Interface SemanticPopUpMenu SemanticButton SemanticPointer

SemanticComplex SemanticComplexGraphics SemanticEditor

Semantic Workbench

syntaktische Objekte

Object SyntaxObject

SyntaxText SyntaxGraphics

SyntaxRectangle SyntaxLine

Syntax U serInterface SyntaxPopUpMenu SyntaxButton SyntaxPointer

SyntaxComplex SyntaxComplexGraphics SyntaxEditor

SyntaxWorkbench

162 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

Die Klasse SemanticObject

Oberklasse: Object

Funktionalitiit: SemanticObject ist die Klasse, von der alle semantischen Objekte die Funktionalitaten der Interaktionsbehandlung und die Verwaltung des Interaktionskontex­tes erben. AuBerdem stellt diese Klasse Mechanismen zur Weiterleitung von Interaktionen an die anderen Replikate des semantischen Objektes zur Verfiigung. Hierbei wird die Ein­stellung der eigenen Synchronitatsparameter und die der Partner beachtet. Da ein Team­objekt, und damit auch das semantische Objekt, in einer Aggregationshierarchie steht, wird ein Verweis auf das Vorgangerobjekt in der Aggregation gefiihrt.

Klassenvariablen:

DefaultGranularity, DefaultMode, DefaultNotification, DefaultTime,De­faultVisibility (String): Wenn keine explizite Einstellung des Interaktionskon­textes erfolgt, sind dies die Voreinstellungen, die fiir das Wurzelobjekt der Aggre­gationshierarchie gelten.

MediumValue (Integer): Dieser Wert gibt bei der Operationsgranularitat medium an, jede wievielte Teilinteraktion dem Interaktionspartner mitgeteilt wird, sofern ein Zahlalgorithmus zu deren Ermittlung genutzt wird.

Wesentliche Instanzvariablen:

setOfProxys (OrderedCollection): Fiir jedes entfernte Replikat des semanti­schen Objektes steht in dieser Liste ein Eintrag, der ein Stellvertreterobjekt und die Synchronitatsparameter des entfernten Objektes beinhaltet.

time (String): Bisher unterstiitzte Werte des Interaktionsparameters Zeit sind 'immediate', 'noConstraints' und 'inherited'.

granularity (String): Die Operationsgranularitat kann die Werte 'fine', 'me­dium', 'coarse' und 'inherited' annehmen.

notification (String): Die Operationsabbildung einer Interaktion ist 'syntacti­cal', 'semantical', 'descriptiv' oder 'inherited'.

mode (String): Der Modus einer Interaktion kann 'explicit', 'implicit' oder 'inhe­rited' sein.

visibility (Set oder String): Falls der Wert 'inherited' in der Sichtbarkeit steht, gilt die des iibergeordneten Objektes der Aggregation. Andernfalls wird die Menge der Benutzer aufgefiihrt, die das Objekt sehen.

superObject (SemanticComplex): Referenz auf das Vorgiingerobjekt in der Ag­gregationshierarchie.

163

syntaxObjects (Set): Menge aIler syntaktischen Objekte, die lokal an diesem Ob­jekt angebunden sind. Zur Zeit wird erst ein syntaktisches Objekt unterstiitzt.

bbOrigin. bbCorner (Point): Die A usdehnung des zugehorigen syntaktischen Objektes.

Wesentliche Methoden: Alle Methoden, die im Rahmen der Interaktionsbehandlung gege­benenfaIls an andere Replikate des semantischen Objektes weitergeleitet werden miissen, haben den Zusatz with Forwarding: . Folgt als Parameter ein String 'forward *', so wird die Methode an die anderen Replikate weitergeleitet. Beginnt der Parameter mit 'local', erfolgt eine Benachrichtigung der eigenen syntaktischen Objekte.

multicast: String with:Array - Diese zentrale Methode ist fiir die Weiterlei­tung aIler Methodenaufrufe an andere Replikate zustandig. In ihr werden die In­teraktionskontexteinstellung gepriift und der Partner wird in vorgesehener Form in eine Interaktion miteinbezogen. In String wird der Methodenname iibergeben (z.B. 'moveTo :withForwarding: ,), in Arrayein Feld, das aile Argumente der Me­thode enthiilt (entsprechend: Array with: 50150 with: 'localNoAnswer'). Das letzte Argument dieses Feldes muB der String sein, der die Ubergabe charakteri­siert. Ausgewertet wird in der Methode 'muItica.st:with:' sein zweiter Teil. Enthiilt dieser 'NoAnswer', wird die Methode so weitergeleitet, dafi keine Antwort erfolgt, enthiilt er 'WithAnswer', sendet das entfernte Replikat die Antwort der Methoden­ausfiihrung zuriick.

moveTo: Point wi thForwarding: String - Die Verschiebung eines Objektes wird mit dieser Methode allgemein zur Verfiigung gestellt. In dieser Methode wird der Parameterstring auf 'forward' bzw. 'local' getestet. Bei 'forward' wird die Methode an 'multicast :with:' weitergeleitet, bei 'local' an die lokalen syntaktischen Ob­jekte. Andere graphische Operationen werden in den entsprechenden Unterklassen realisiert.

visibili ty: Set/String - Dem semantischen Objekt wird iiber diese Methode die geforderte Sichtbarkeit entweder als Menge der Benutzer oder als 'inherited' mitge­teilt. Die Erzeugung von neuen Replikaten mit vollstandiger Verzeigerung unterein­ander bzw. das Loschen entsprechender semantischer Objekte erfolgt beim Aufruf dieser Methode.

granularityValue - Der Wert der Operationsgranularitat wird ermittelt. Bei der Einstellung 'inherited' wird so lange in der Aggregationshierarchie nach oben ge­fragt, bis der giiltige Wert gefunden wird. Entsprechende Methoden gibt es fiir alle Parameter des Interaktionskontextes.

164 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

Die Klasse SyntaxObject

Oberklasse: Object

Funktionalitat: Die syntaktischen Objekte stellen die Schnittstelle eines Teamobjektes zum Benutzer dar. Allgemeine Funktionalitaten werden in der Klasse SyntaxObject rea­lisiert und damit allen syntaktischen Objekten zur Verfiigung gestellt. Dies sind die Ver­waltung des Status, in dem sich ein Objekt befinden kann (,normal', 'selected', 'remo­teSelected' und 'inconsistent'), die Einstellung des Interaktionskontextes eines Objektes durch den Benutzer und allgemeine interaktive Veranderungen am Objekt.

Wesentliche Instanzvariablen:

superObject. samanticObject: Verweise auf das Vorgangerobjekt in der Aggrega­tionshierarchie der syntaktischen Objekte bzw. auf das eigene semantische Objekt.

bbOrigin. bbCorner: Die Ausdehnung des dargestellten Objektes.

state: Mit dieser Variable wird der Status des syntaktischen Objektes verwaltet.

form: Teamobjekte der Klassen Rechteck, Linie, Text und Knopf erlauben eine un­terschiedliche Darstellung bei gleichem zugrundeliegenden Inhalt. Die aktuelle Dar­stellungsform wird in dieser Variable gefuhrt.

Wesentliche Methoden:

coarse - Mit dieser Methode wird der Interaktionsparameter Operationsgranularitat auf 'coarse' gesetzt. Analoge Methoden existieren fUr alle erlaubten Parameterwerte des Kontextes.

moveItemTouchedBy: Point - Mit dieser Methode wird getestet, ob 'Point' den oberen linken Selektionspunkt des Objektes beriihrt. Fiir die anderen Selektions­punkte und die gesamte Darstellungsfiache des Objektes gibt es entsprechende Me­thoden.

save - Das Teamobjekt wird kopiert und als globale Variable in der Smalltalkum­gebung gesichert. Die Ermittlung des Namens erfolgt mit einer Dialog-View.

Das Teamobjekt Text

Klassen: SemanticText und SyntaxText Oberklassen: SemanticObject bzw. SyntaxObject

Funktionalitat: Das Teamobjekt Text erlaubt mehreren Benutzern gleichzeitig einen Text zu sehen und zu verandern. Der Text kann an einer beliebigen Stelle der Arbeitsfiache

165

dargestellt werden. Mittels der linken Maustaste kann er selektiert und anschlief3end ver­schoben (linker oberer Selektionspunkt) und in seiner Form geiindert werden (rechter oberer Selektionspunkt), wobei sich die GroBe der dargestellten Zeichen andert. Bislang konnen nur am Ende des Textes neue Zeichen hinzugefiigt oder alte geloscht werden.

Text kann auch als Anweisung an die Programmierumgebung genutzt werden. Hierzu gibt es analog zu den bekannten Smalltalkfenstern den dolt-Befehl, der eine Ausfiihrung des selektierten Textes ermoglicht.

Wesentliche Instanzvariablen:

text (String) (sem/syn): In dieser Variable wird der Text gespeichert.

Wesentliche Methoden:

displayDn:GraphicsContext (syn) - Leider stellt Smalltalk keine Methode zur Verfiigung, einen Text als Ganzes darzustellen. So muf3 die Variable text auf return­Zeichen untersucht und die Zeilen dann einzeln auf dem graphischen Kontext dar­gestellt werden

setbbCorner (sem/syn) - Mit dieser Methode wird die Ausdehnung des dargestell­ten Textes berechnet. Bei einer Selektion erscheinen so die Selektionspunkte an der richtigen Stelle

dolt (syn) - Dies Methode erzeugt eine neue Compiler-Instanz und laf3t den Text von dieser auswerten.

Erzeugung:text := SynatxText nevAt: Point

Die Teamobjektklasse Graphisches Objekt

Klassen: Semantic Graphics und SyntaxGraphics Oberklassen: SemanticObject bzw. SyntaxObject

Funktionalitiit: Einfache graphische Objekte (Linie, Rechteck, Kreis, Ellipse, Oval) konnen interaktiv verschoben, gestreckt und gestaucht werden. Auch eine Veriinderung ihrer Dar­stellung ist moglich. Diese allgemeinen Funktionen werden in den Klassen SemanticGra­phics und SyntaxGraphics fiir alle graphischen Objekte zur Verfiigung gestellt. Da diese Objekte durch zwei Punkte charakterisiert werden konnen, sind Methoden zum Kopieren ebenfalls allgemein realisierbar.

Wesentliche Methoden:

setCornerTo:Point (syn) - Beim Stauchen oder Strecken eines syntaktischen Ob­jektes wird diesem eine neue rechte untere Ecke zugewiesen. Die Anderung wird dem semantischen Objekt mitgeteilt.

166 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

resize: Size (syn) - Da dasselbe graphische Objekt bei verschiedenen Benutzern an unterschiedIichen Stellen auf dem Bildschirm positioniert sein kann., muB dem entfernten syntaktischen Objekt die Ausdehnung und nicht der neue Eckpunkt mit­geteilt werden. So wird diese Methode nur auf entfernte Objekte angewendet.

remotelnitialize (sem) - Die Erweiterung der Sichtbarkeit des Objektes hat in einem ersten Schritt die Erzeugung eines neuen semantischen Objektes bei neuen Benutzern zur Folge. Dieses neue Objekt hat aber noch nicht die aktuellen Werte. So muB das vorher schon existierende semantische Objekt seinen Inhalt dem neuen Re­pIikat mitteilen, was mit dieser Methode ftir aile graphischen Objekte gewahrleistet wird.

Das Teamobjekt Rechteck

Klassen: SemanticRectangle und SyntaxRectangle Oberklassen: Semantic Graphics bzw. SyntaxGraphics

Funktionalitiit: Fast aile FunktionaIitaten werden von den Oberklassen geerbt. Einzig Methoden zur Darstellung und zum Selektieren sind notig. Ein Rechteck wird selektiert, indem in der Niihe einer Linie die linke Maustaste betatigt wird. Anschlie6end konnen Po­sition (linke obere Selektionstaste), Form (rechte obere Selektionstaste) und GroBe (rechte untere Selektionstaste) interaktiv verii.ndert werden. Verii.nderung der Form beein:8u6t die Strichbreite des Rechtecks. Bislang werden die Werte 'thin' und 'thick' unterstiitzt.

Wesentliche Methoden:

displayOn:GraphicsContext (syn) - Stellt das Rechteck auf dem graphischen Kon­text dar. Dabei werden Strichbreite und Status (,normal','selected' .. ) beachtet.

containsPoint:Point (syn) - Testet, ob Point in der Nahe einer der vier Linien des Rechtecks Iiegt.

Erzeugung: Mit folgendem Befehl wird ein Teamobjekt 'Rechteck' erzeugt, das die Sicht­barkeit nur des Erzeugers besitzt. Die GroBe und die Form haben Voreinstellungswerte.

rectangle := SyntaxRectangle newAt: Point

Das Teamobjekt Linie

Klassen: SemanticLine und SyntaxLine Oberklassen: Semantic Graphics bzw. SyntaxGraphics

Funktionalitiit: Die Mechanismen und FunktionaIitaten dieser Klassen entsprechen vollstandig denen des Teamobjektes Rechteck. Wii.hrend beim Verii.ndern der GroBe eines

167

Rechtecks der rechte untere Selektionspunkt immer rechts unterhalb des linken oberen Selektionspunktes bleiben muB, gilt dies bei der Linie nicht, da eine Linie eine beliebige Richtung einnehmen kann.

Erzeugung: Mit folgendem Befehl wird ein Teamobjekt 'Linie' erzeugt, das die Sichtbarkeit nur des Erzeugers besitzt. Die GroBe und die Form haben Voreinstellungswerte.

line := SyntaxLine nevAt: Point

Die Teamobjektklasse UserlnterfaceObjekt

Klassen: SemanticUserlnterface und SyntaxUserlnterface Oberklassen: SemanticObject bzw. SyntaxObject

Funktionalitiit: Die verschiedenen realisierten User-Interface-Objekte haben sehr unter­schiedliche Funktionalitaten. So muBten nur triviale Mechanismen und Methoden in diesen Klassen realisiert werden. Fiir detaillierte Informationen sei auf die Unterklassen Zeiger, Knopf und Pop- Up-Menu verwiesen.

Das Teamobjekt Pop-Up-Menu

Klassen: SemanticPopUpMenu und SyntaxPopUpMenu mit den Controller Klassen Lo­calMenu'I'racker und RemoteMenuTracker Oberklassen: SemanticUserlnterface bzw. SyntaxUserInterface und MenuTracker fUr die Controller

Funktionalitiit: Instanzen der Klasse SyntaxPopUpMenu verhalten sich entsprechend den Pop-Up-Meniis, die vom System bereitgestellt werden. Sie werden mit der mittleren Maustaste aufgerufen. Pop-Up-Meniis werden in Smalltalk-80 mit eigenen Fenstern darge­stellt. Als Controller haben die SyntaxPopUpMenus eine Instanz der Klasse LocalMenu­Tracker. Diese informieren das SyntaxPopUpMenu iiber alle Daten, die zur Anzeige eines Meniis notwendig sind. Diese Daten werden iiber die semantischen Objekte den entfern­ten SyntaxPopUpMenus mitgeteilt. Mit Hilfe der Klasse RemoteMenuTracker wird das PopUpMenii dort dargestellt, allerdings hat der entfernte Benutzer keinen Zugriff auf die­ses, da der RemoteMenuTracker keine Benutzeraktionen auswertet und damit auch kein Controller ist, auch wenn die Klasse Unterklasse von Controller ist. Bei der Erzeugung einer entfernten Instanz wird zuerst ein leeres Pop-Up-Menii gebildet und erst in einem zweiten Schritt erfolgt die Eintragung der Werte.

Es besteht die Moglichkeit, kaskadierende Pop-Up-Meniis zu erzeugen. Die Untermeniis sind wieder Instanzen der Klasse SyntaxPopUpMenu, allerdings existiert fiir eine gesamte Hierarchie von Meniis nur ein semantisches Objekt. Deshalb unterscheidet sich die Erzeu­gungen des Hauptmeniis von der der Untermeniis (siehe Erzeugung).

168 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

Wesentliche Instanzvariablen:

labelList (sem): Liste der dargestellten Zeilen des Meniis.

values (sem/syn): Liste der zugehorigen auszufiihrenden Befehle.

olderMenu (syn): Da kaskadierende Meniis moglich sind, gibt es einen Verweis auf das in der Hierarchie nachsthOherliegende Menii.

currentMenu (syn): Falls ein Untermenii geoffnet ist, wird mit dieser Variablen auf dieses verwiesen.

Wesentliche Methoden:

startUpLocal (syn) - Mit dieser Methode wird das SyntaxPopUpMenu gestartet. Ais Antwort erhiilt man von dieser Methode den der selektierten Zeile zugeord­net en Methodennamen. Falls keine Zeile abschliefiend selektiert wurde, erfolgt die Ubergabe der Zahl O.

startUpRemoteAt : Point wi thHeading: String wi thForvarding: String (sem) -Diese Methode an das semantische Objekt gesendet, ruft das SyntaxPopUpMenu ohne aldiven Controller auf.

markerOn:lnteger withForwarding:String (sem) - Dem semantischen Objekt wird mit dieser Methode mitgeteilt, auf welcher Zeile des aktuellen Meniis der Zeiger steht, welche Zeile also markiert werden mufi.

unmapWithForwarding:String (sem) - Mit dieser Methode kann das Fenster eines SyntaxPopUpMenus, das keinen Controller hat, geschlossen werden.

Erzeugung: Dem SyntaxPopUpMenu werden bei der Erzeugung bereits die Eintrage und die zugehorigen Werte zugewiesen. Werte konnen Methodennamen, die mit einem # ge­kennzeichnet sind, 9der SyntaxPopUpMenus sein. Ein Beispiel solI dies verdeutlichen. Man beachte die unterschiedlichen Befehle zur Erzeugung des Hauptmeniis und der Un­termeniis.

valSub := Array with: #fine with: #medium with: #coarse with: #inheritGranu.

subMenu := SyntaxPopUpMenu labelList: #('fine' 'medium' 'coarse' 'inherited' )

localValues: val Sub valMenu := Array with: #cut with: #paste with: #copy with: subMenu menu := SynatxPopUpMenu labelList: #(('cut' 'copy' 'paste')

('Granularity'» values: valMenu

169

Das Teamobjekt Knopf

Klassen: SemanticButton und SyntaxButton Oberklassen: SemanticUserInterface bzw. SyntaxUserInterface

Funktionalitiit: Das Teamobjekte Knopf bietet dem Benutzer die Moglichkeit, eine Me­thode auszufUhren, die diesem Knopf zugeordnet ist. Bei einer Betatigung des Knop­fes (linke Maustaste driicken) wird die Methode an das in der Aggregationshierarchie nachsthoherliegende Objekt gesendet. Dieses ist fUr die Bearbeitung zustandig. Der Knopf kann mit linker Maustaste und betatigter Shift-Taste zu Darstellungsanderungen selek­tiert werden. Die Position des Knopfes (linke obere Selektionstaste), die Form (rechte obere Selektionstaste) und seine GroBe (rechte untere Selektionstaste) konnen interaktiv veriindert werden. Funktionalitaten der Interaktionsbehandlung werden geerbt.

Wesentliche Instanzvariablen:

selected (Boolean) (sem/syn): Gibt an, ob der Knopf betatigt wurde. Der Wert ist so lange auf true, wie die zugeordnete Methodenausfiihrung dauert.

message (String) (sem/syn): Methode, die bei Betatigung ausgefiihrt wird.

name (String) (sem/syn): Charakterisiert das Aussehen des Knopfes. Mogliche Wert sind 'rectangle', 'line' und 'text'.

textString (String) (sem/syn): Falls name den Wert 'text' hat, wird textString angezeigt.

Wesentliche Methoden:

containsPoint : Point (syn) - Testet, ob aPoint innerhalb der Anzeigeflache des Knopfes liegt.

svitchSelected (syn) - Methode, die bei Betatigung des Knopfes ausgefUhrt wird.

moveTo:Point, setCornerTo:aPoint, changeltemTouchedBy:Point (syn)­Veranderungen der Darstellung des Knopfes werden durch diese Methoden gewahr­leistet.

Erzeugung: Als Beispiel die Erzeugung eines Knopfes, der das iibergeordnete Objekt auf­fordert, einen Text einzufUgen:

button := SyntaxButton newAt: 20120. button name: 'text'. button textString: 'ABC'. button message: 'dolnsertText'.

% gibt die Position an

button form: 'circle'. % unterstiitze Formen sind 'circle' und 'rectangle'

170 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

Das Teamobjekt Zeiger

Klassen: SemanticPointer und SyntaxPointer Oberklassen: SemanticUserInterface bzw. SyntaxUserInterface

Funktionalitiit: Es kann in Gruppenanwendungen sinnvoll sein, den eigenen Zeiger auch entfernt anzuzeigen, damit der dortige Benutzer jede Bewegung verfolgen kann. In der Smalltalk-80 Umgebung wird der Zeiger von dem zugrundeliegenden Fenstersystem (z.E. X-Windows) verwaltet, so daB die lokale Darstellung nicht unterstiitzt werden muB. Falls der Zeiger also entfernt angezeigt werden soIl, wird lokal die Position ermittelt, an die entfernte Instanz iiber das zugehOrige semantische Objekt mitgeteilt und dort dargestellt. Beachtet werden dabei unterschiedliche Darstellungsweisen des Zeigers.

Wesentliche Instanzvariablen:

cursorlmage (syn): Das aktuelle Aussehen des Zeigers, gespeichert in einem Image.

Wesentliche Methoden:

moveTo:Point (syn) - Mit dieser Methode wird das lokale syntaktische Objekt iiber die aktuelle Zeigerposition informiert. Eine Weiterleitung an die iibrigen Replikate erfolgt. Diese Methode wird von Controllern der Klasse Team ViewController be­nutzt und die Position bezieht sich auf die View, die von diesem Controller beob­achtet wird.

moveOnMenuTo:Point (syn) - Diese Methode hat denselben Zweck, ist aber fiir Controller der Klasse LokalMenuTracker vorgesehen, da bei einem aktiven Pop­Up-Menii die Position des Zeigers beziiglich des Meniis berechnet wird.

beVisualAs: String (syn) - Mit dieser Methode an das lokale syntaktische Objekt gesendet wird das Aussehen der entfernten Zeiger veriindert. Zur Zeit kann String die Werte 'normal', 'cross', 'move' und 'size' annehmen.

Erzeugung: pointer := SyntaxPointer new.

Die Teamobjektklasse Komplexes Objekt

Klassen: SemanticComplex und SyntaxComplex Oberklassen: SemanticObject bzw. SyntaxObject.

Funktionalitiit: Diese Klasse stellt allgemeine Mechanismen zur Verfiigung, die bei der Verwaltung mehrerer Teamobjekte notwendig sind. Dazu gehort das Weiterleiten von Me­thoden an alle Teilobjekte, wie zum Beispiel die Aufforderung, sich auf dem Bildschirm

171

darzustellen. Weiterhin gibt es natiirlich die Hinzunahme und das Loschen von Teilob­jekten. Ein anderer Mechanismus ist das Gruppieren von ausgewahlten Teilobjekten zu einem neuen komplexen Teilobjekt.

Wesentliche Instanzvariablen:

objectCollection (OrderedCollection) (sem/syn): Liste alier Teilobjekte.

my Window Controller (Controller) (syn) : Diese Variable wird von dem Wurzel­objekt der syntaktischen Aggregationshierarchie benutzt. Der Controller des MVC­Tripels wird ihr zugewiesen. Benotigt wird dieser, wenn ein Benutzer die Grup­penanwendung auf einem entfernten Rechner schlieBen mochte.

Wesentliche Methoden:

group (syn) - AIle selektierten Teilobjekte werden zu einem neuen Teilobjekt zu­sammengefaBt, das Nachfolger des bisherigen komplexen Objektes wird. Aus Nach­folgern werden Enkel. Entsprechend gibt es den Befehl ungroup, der die Wirkung des ersteren aufhebt.

addTeamObject : TeamObject (sem/syn) - Das TeamObj ect wird in die Liste der Teil­objekte sowohl des syntaktischen wie auch des semantischen Objektes eingetragen, wenn die Methode des syntaktischen Objektes ausgefiihrt wird.

remove:TeamObject (sem/syn) - Das TeamObjekt wird aus den Listen entfernt.

createAddSemanticObject:String for:RemObjectList (sem) - Wenn die Sicht­barkeit eines Teamobjektes erweitert wird, sorgt diese Methode dafiir, daB neue semantische und syntaktische Objekte bei dem hinzukommenden Benutzer er­zeugt und als Teilobjekte in das entsprechende komplexe Objekt eingebunden werden. String bezeichnet den Typ des zu erzeugenden Teilobjektes und in der RemObjectList stehen die bereits existierenden Replikate.

dolnsertText (syn) - Gemiill der Konzeption der User-Interface-Objekte werden Methodenaufrufe, die durch die Betatigung der User-Interface-Objekte erfolgen, an die iibergeordneten komplexen Objekte weitergeleitet und von diesen ausgewertet. Die Methode dolnsertText soli von einem Editor ausgewertet werden, so daB die in der Aggregationshierarchie dazwischenliegenden komplexen Objekte die Methode nach oben weiterleiten.

Das Teamobjekt Komplexes Graphisches Objekt

Klassen: SemanticComplexGraphics und SyntaxComplexGraphics Oberklassen: SemanticComplex bzw. SyntaxComplex

172 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

Funktionalitiit: Gruppierungen von graphischen Objekten erfordern zusatzliche Mechanis­men. So wird das Verschieben von allen Objekten der Gruppierung moglich. Dazu wird an alle Teilobjekte die Verschiebeoperation weitergeleitet und von diesen ausgefUhrt. Bei Stauch- oder Streckoperationen wird analog vorgegangen, nur daB sich diese Operation ausschlieBlich auf Linien und Rechtecke bezieht. Bei der Ubermittlung einer Interaktion an entfernte Replikate des semantischen Objektes erfolgt die Nachricht zwischen den kom­plexen Objekten, sofern der Interaktionskontext der Teilobjekte dem des komplexen Ob­jektes entspricht. Andernfalls sind die Teilobjekte fUr die Ubermittlung der Interaktion zustandig.

Einer Instanz der Klasse SyntaxComplexGrapbics wird bei der Initialisierung direkt ein SyntaxPopUpMenu als Teilobjekt zugeordnet. Dieses erlaubt Veranderungen am kom­plexen Objekt und an seinen Teilobjekten (vergleiche hierzu die Vorgehensweise bei der AusfUhrung eines Pop-Up-Menii-Aufrufes).

Selektionen von Objekten in der Aggregationshierarchie geschehen nach folgendem Prin­zip: Beim ersten Selektieren wird das umfassendste komplexe Objekt selektiert, was eine Selektion aller seiner Teilobjekte bedeutet. Mit jedem weiteren Betatigen der lin­ken Maustaste wird in der Aggregationshierarchie abwarts gestiegen, bis ein Blatt der Hierarchie erreicht worden ist.

Wesentliche Methoden:

moveTo:Point (syn) - Methode, die das Verschieben einer ganzen Gruppierung er­laubt. Eine entsprechende Methode gibt es fiir das Strecken bzw. Stauchen von Objekten einer Gruppierung.

ini tialMenu (syn) - Hier wird das Syntax-Pop-Up-Menu definiert, das jedem kom­plexen graphischen Objekt zugeordnet ist.

menuAt : Point (syn) - Ein Meniiaufruf wird von dem zugehOrigen komplexen gra­phischen Objekt ausgewertet. Wenn ein Teilobjekt selektiert ist, wird die Menii­Nachricht an dieses Objekt gesendet, andernfalls wertet das komplexe Objekt die Nachricht selber aus.

containsPoint : Point (syn) - Mit dieser Methode wird die geforderte Funktiona­litat des Selektionsvorgangs erbracht.

Erzeugung: complex := SyntaxComplexGraphics new

Das Teamobjekt Editor

Klassen: SemanticEditor und SyntaxEditor Oberklassen: SemanticComplex bzw. Syntax Complex

173

FunktionaJitiit: 1m Rahmen einer Beispielanwendung ist ein einfacher graphischer Mehr­benutzereditor erstellt worden, der vollstandig analog zu den anderen Teamobjekten ent­worfen wurde. Beim Bearbeiten von komplexen graphischen Objekten stellt eine Instanz dieser Klasse das Wurzelobjekt der Aggregationhierarchie dar. Ein Editor ist fiir das Verwalten der in ihm enthaltenen Objekt, die Bearbeitung der Benutzereingaben und das Darstellen der enthaltenen Objekte zustandig. Der hier vorgestellte Editor erbt von seiner Oberklasse Komplexes Objekt die wesentlichen Mechanismen der Objektverwaltung.

Das Model-View-Controller Paradigma in Smalitalk erfordert einen Controller fiir die Benutzereingaben und eine View fiir die Darstellung der Objekte. In diesem Fall stellt das Teamobjekt Editor durch sein syntaktisches Objekt das Modell der MVC-Trias. Der dar auf zugeschnittene Controller ist eine Instanz der Klasse Team ViewController, die View eine der Klasse Team View. Beziiglich der Darstellung seiner Teilobjekte reicht es ganz im Sinne objektorientierter Programmierung, den Teilobjekten eine Darstellungsaufforderung zukommen zu lassen. Bevor eine Instanz des Editors erzeugt wird, miissen bereits der Controller und die View instanziiert sein. Dies wird durch die Klasse Tool erbracht.

Als komplexes Objekt besitzt der Editor eine Reihe von Auswahlknopfen, einen Zeiger und ein leeres komplexes graphisches Objekt als fest vorgegebene Teilobjekte. Es handelt sich jeweils urn Teamobjekte der Entwicklungsunterstiitzung.

Eine wesentliche Funktion des Editors ist die Verwaltung des Zustandes, in dem er sich befindet. Nur so konnen die Benutzereingaben richtig interpretiert werden. Als Wurzel der Aggregationshierarchie ist er weiterhin fiir die Auswertung der mit Knopfen und Pop­Up-Meniis verbundenen Befehle zustandig.

Wesentliche Instanzvariablen:

vievMode (String) (syn): In dieser Variable steht der aktuelle Zustand, in dem sich der Editor gerade befindet. Bislang unterstiitzt werden: 'reset', 'move', 'size', 'text', 'InsertText', 'InsertLine' und 'InsertRectangle'.

copySyntax (syn): geloschte und kopierte Objekte werden in dieser Variable gespei­chert, und bei einem paste-Befehl an der entsprechenden Stelle eingebunden.

Wesentliche Methoden:

initialize (syn) - Initialisiert einen neuen Teameditor ohne Dokument und mit dem Aufrufenden als einzigem Benutzer.

ini t ializeWi th: RemOb j ectList (sym) - Erweitert einen im System bestehen­den Editor und des sen Teilobjekte um die Sichtbarkeit des Benutzers, in dessen Smalitalk-Umgebung dieser Befehl aufgerufen wird. Die RemUserList stellt dabei eine Liste alier bereits existierender Replikate des Editors dar.

createAddTeamObj ect: Type cpAct: Point to: Collection (syn) - Mit dieser Me­thode werden neue Teamobjekte in den Editor und damit in die Aggregationshier­archie eingebunden. Type gibt den geforderten neuen Objekttyp an (,rectangle',

174 Anhang B. Ausgewiihlte Teamobjektbeschreibungen

'text', 'line', 'button', 'complexGraphics'), Point die Position auf dem zugehOrigen graphischen Kontext und Collection bezeichnet das komplexe Objekt, als dessen Teilobjekt das neue Objekt in die Aggregationshierarchie eingebunden werden solI.

do Insert Text (syn) - Methode, die bei der Betatigung eines Buttons ausgelost wird und von den in der Aggregation dazwischenliegenden Teamobjekten an den Editor gesendet wird. Dieser andert seinen Zustand, so daB anschlie13end ein neuer Textabschnitt eingefiigt werden kann.

Die Klasse Workbench

Klassen: SemanticWorkbench und SyntaxWorkbench Oberklassen: SemanticEditor bzw. SyntaxEditor.

Funktionalitiit: Dieses Teamobjekt wurde im Rahmen des Beispielszenarios entwickelt. Ais Unterklasse des Editors erbt dieses Teamobjekt Funktionalitaten der Darstellung. Es dient als Auswahlwerkzeug, verschiedene Teilaufgaben oder verschiedene zu bearbeitende Dokumente auszuwahlen. Bei der Initialisierung werden verschiedene Knopfe als Teilob­jekte eingebunden. So ist die wesentliche Funktionalitat dieser Klasse die Bereitstellung eben der Methoden, die durch die Betiitigung der verschiedenen Knopfe ausgelost werden. In Anhang B erfolgt eine nahere Beschreibung der Benutzung von Objekten dieser Klasse.

Anhang C

Team-, Aufgaben- und Koordinations beschreibungssprache

Dieser Anhang enthiilt die Syntax der statischen und dynamischen Aufgaben-, Team- und Koordinationsbeschreibungssprache [Siegenheim 92] in erweiterter Backus-Naur-Form. Die Grundelemente der erweiterten BNF sind:

• < ... > Nichttarminalzaichan

• " ••• II

Tarminalzaichan

• * o - n-facha Wiadarholung

• + 1 - n-facha Wiadarholung

• a b a und b in dar vorgagabanen Raihanfolga

• a I b antvadar a odar b · ( ... ) Klammarung von AusdrUckan · [ ... ] Dar Klammarinhalt ist optional

176 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

C.I Die Teambeschreibungssprache

Grundelemente der Teambeschreibungssprache

<STANDARDJWPERCASE> : :==

"A" I "B" I "C" I "D" I "K" I "L" I "M" I "N" I "U" I "V" I "W" I "X" I

<STANDARD-LOWERCASE> : :==

"a" I "b" I lie" I lid" I "k" I "III I "m" I lin II I "u" I "V" I "v" I "x" I

<STANDARD-LIT> :: == <STANDARD_UPPERCASE> I <STANDARD-LOWERCASE>

<NON...zERO...DIGIT-LIT> : :==

"E" "F" "G" "H" "I" "0" "P" "Q" "R" "S" "Y" "Z"

"e" "f" "g" "h" "i" flO" "p" "q" urn liS"

"y" liZ"

"i" I "2" I "3" 1 "4" I liS" "6" I "7" I "8" 1 "9"

<DIGIT-LIT> : :== "0" I <NON...zERO...DIGIT-LIT>

< INTEGER> :: == "0" I <NON...zERO...DIGIT-LIT> «DIGIT-LIT» *

<STRING> : :== """ «STANDARD-LIT» *",",

<INSTANCE..NAME> : :== <STANDARD-LOWERCASE> «STANDARD-LIT» *

<TEAMJ\OLE..NAME> :: == <STANDARD_UPPERCASE> «STANDARD-LIT» *

<TEAM...DESCRIPTION..NAME> :: == <STANDARD_UPPERCASE> «STANDARD-LIT» *

<USER..NAME> :: == < INSTANCE..NAME>

<TEAM..NAME> :: == < IliSTAllCE..1lAME>

<CARDINALITY> :: == "[,, <INTEGER> " " . «INTEGER> I "*") "]"

"J" "T"

"j" "t"

C.l. Die Teambeschreibungssprache

< INSTANCE...5ELECTOR> :: == (1t[1t <INTEGER> Itllt) I (It [It It] It )

<TEAMROLE> :: ==

<TEAM.l\OLEJlAME> <CARDINALITY>

<TEAMROLE-LIST> :: == 1t{1t «TEAMROLE> 1t,1t)* <TEAMROLE> 1t}1t <CARDINALITY>

<ROLE_INSTANCE> :: ==

<TEAM.l\OLEJlAME> < INSTANCE...5ELECTOR>

<ROLE_SPECIFIER> :: ==

( «ROLE_INSTANCE> I <TEAM.l\OLEJlAME» It. It) * «ROLE_INSTANCE> I <TEAM.l\OLEJlAME»

<ROLE_SPECIFIER-LIST> :: ==

«ROLE_SPECIFIER> It, It) * <ROLE_SPECIFIER>

<INTERACTIONltOLE-LIST> : == <ROLE_SPECIFIER> I It (It «ROLE...5PECIFIER> It, It) + <ROLE_SPECIFIER> It) It

<INTERACTION.l\ELATION> :: == <INTERACTION.l\OLE-LIST> It_ >It <INTERACTIONltOLE-LIST>

<TEAM_STRUCTURE> :: == 1t{1t «INTERACTION.l\ELATION> ",")* <INTERACTION...RELATION> "}"

Statische Teambeschreibung

<TEAM...DESCRIPTION> :: == "Team: <TEAM...DESCRIPTION..NAME>

"description:" <STRING> "teamRoles:" <TEAMROLE-LIST> "interface:" .. {It <ROLE_SPECIFIER-LIST> .. } .. .. structure:" <TEAM....5TRUCTURE>

ItEndTeam:" <TEAM...DESCRIPTION..NAME>

Dynamische Teaminstanziierung und -anderung

<ROLE..ASSIGNMENT> :: == It (.. «USERJlAME> I < TEAMJlAME > ) <INTERACTION-.ROLE-LIST> .. ) ..

<ROLE..ASSIGNMENT-LIST> : :==

II II ,

.. ( .. «ROLE..ASSIGNMENT> ", ")* <ROLE..ASSIGNMENT> ")"

177

178 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<ROLE...LIST> :: == " (" «TEAM.l\OLE...NAME> ",") * <TEAM.l\OLE...NAME> ")"

<ROLE...MAPPING> :: == " (" <ROLE...LIST> "," <ROLE...LIST> ")"

<ROLE...HAPPING...LIST> :: == "(" «ROLE...MAPPING> ",")* <ROLE...MAPPING> ")"

<TEAM_INSTANTIATION> : :==

II II

<TEAM...NAME> ": =" <TEAM...DESCRIPTION...NAME> ("new:" <ROLE...ASSIGNMENT ...LIST> (" deri ved:" <TEAM...NAME> "map:" <ROLE...MAPPING...LIST») It It

<TEAM.ltEINSTANTIA TION> :: == <TEAM...NAME> "reinstantiate."

<TEAM...PRELIMINARY..END> : :==

<TEAM...NAME> "discard."

<MODIFY_INSTANTIATION> : :== "join:" <ROLE...ASSIGNMENT> "leave:" <ROLE...ASSIGNMENT> I "(" <USER...NAME>")"

<GET...ASPECT> : :== "description" I "teamRoles" I "interface" I "structure"

<SET...ASPECT> : :== "description:" <STRING> "teamRoles :" <TEAMROLE...LIST> I "interface:" "{" <ROLE~PECIFIER...LIST> "}" I "structure:" <TEAM~TRUCTURE>

<STATEMENT> : :==

<SET...ASPECT> I <GET...ASPECT> I <MOD IFY .-INSTANTIATION>

<CASCADED...5TATEMENT> :: == <TEAM...NAME> «STATEMENT> "; ,,) * <STATEMENT>

<STATEMENT...LIST> : :==

( <CASCADED...5TATEMENT> ("beginTransaction"

«CASCADED...5TATEMENT» * "endTransaction"»*

If "

C.2. Die Aufgabenbeschreibungssprache

C.2 Die Aufgabenbeschreibungssprache

Grundelemente der Aufgabenbeschreibungssprache

<STANDARD_UPPERCASE> : :==

"A" I "B" I "C" I "Dn I "K" I "L" I "M" I "N" I "U" I "V" I "W" I "X" I

<STANDARD...LOWERCASE> : :== I'a" I "b" I "c" I "d" "k" I "1" I "mil I "n" "u" I "v" I "w" I "x"

<STANDARD...LIT> :: == <STANDARD_UPPERCASE> <STANDARD...LOWERCASE>

<SPECIAL...LIT> :: ==

I I I

"E" "F" "G" "H" "I" "J" "0" liP" "Q" "RI! "S" "T" "y" liZ"

"e" "f" "g" "h" "ill "j" "0" "p" "q" "r" "s" "t" "y" liZ"

u+" 1 11/" I "\11 1 n*11 "I" I ttlll I n?" I "! II

II-II I "<II 1 ">" 1 II_II I "G" I "%" I

<OTHER...LIT> :: == "[" I "],, I "{" I "}" I "(" I ")" I "-,, I

<CHARACTER> : :== <STANDARD...LIT> I <SPECIAL...LIT> I <OTHER...LIT>

<NONJ:EROJ)IGIT...LIT>

11.11 . I "$" I "#" I

"1" I "2" I "3" I "4" I "5" "611 I "7" I "8" I "9"

<DIGIT...LIT> : :== "0" I <NONJ:EROJ)IGIT...LIT>

<INTEGER> : :== "0" I <NONJ:EROJ)IGIT...LIT> «DIGIT...LIT»*

<NUMBER> :: == <INTEGER> I < INTEGER> "." < INTEGER>

<STRING> : :== """ «CHARACTER» *"""

<IDENTIFIER> :: == <STANDARD...LIT> «STANDARD...LIT> I <DIGIT...LIT» *

ft.1I

179

" It I IIIIt

180 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<CLASS.lUKE> .. ==

"<" <STANDARD_UPPERCASE> «STANDARD.LIT»* ">"

<INSTANCEJUKE> : :== <STANDARD.LOWERCASE> «STANDARD.LIT» * "#currentRole" I "#currentlnstance"

<UNARy...sELECTOR> :: == < IDENTIFIER>

<BINARy...sELECTOR> :: ==

<SPECIAL.LIT> I <SPECIAL.LIT> <SPECIAL.LIT>

<KEYWORD> :: == <IDENTIFIER> ":"

<PRIMARY> :: ==

< INSTANCE..NAKE> <NUMBER> I <STRING> I "(,, <EXPRESSION> ")"

<UNARY _OBJECT .DESCR> <PRIMARY> I <UNARY..EXPR>

<BINARY _OBJECT .DESCR> :: == <UNARY _OBJECT .DESCR> <BINARY..EXPRESSION>

<UNARY..EXPR> :: == <UNARY _OBJECT .DESCR> <UNARy...sELECTOR>

<BINARY..EXPR> : :== <BINARY _OBJECT .DESCR> <BINARY_SELECTOR> <UNARY _OBJECT .DESCR>

<KEYWORD..EXPR> :: == <BINARY _OBJECT .DESCR> «KEYWORD> <BlNARY_OBJECT.DESCR»+

<KESSAGE..EXPR> :: == <UNARY..EXPR> I <BlNARY..EXPR> I <KEYWORD..EXPR>

C.2. Die A ufgabenbeschreibungssprache

<CASCADEDJfESSAGE...EXPR> :: == <MESSAGE...EXPR> (" j" «UNARY _SELECTOR> I

<BINARY ...sELECTOR> <UNARY_OBJECT ...oESCR> I «KEYWORD> <BINARY _OBJECT ...oESCR» + ) ) +

<EXPRESSION> :: == «<INSTANCE..NAME> ":=") I " ") ( <PRIMARY» I <MESSAGE...EXPR> I <CASCADEDJfESSAGE...EXPR> )

<TASK...ROLE..NAME> :: == <STANDARD_UPPERCASE> «STANDARD.!.IT» *

<TASK...oESCRIPTION..NAME> :: == <STANDARD_UPPERCASE> «STANDARD.!.IT» *

<SUBTASK...oESCRIPTION..NAME> :: == <STANDARD_UPPERCASE> «STANDARD.!.IT» *

<TEAMOBJECT..NAME> :: == < INSTANCE..NAME>

<CARDINALITY> :: == "[,, <INTEGER> "," «INTEGER> I "*") "l"

<TASKROLE> :: == <TASK...ROLE..NAME> <CARDINALITY>

<TASKROLE.!.IST> :: == {<TASKROLE> ("," <TASKROLE»* } <CARDINALITY>

< INTERACTION_CATEGORY> "context" I "syntactic" I "semantic" I "view"

<ACCESS> : :== <TASK...ROLE..NAME> "[,, «INTERACTION_CATEGORY> ",")* <INTERACTION_CATEGORY> "l"

<ACCESS.!.IST> :: == «ACCESS> ) * "," <ACCESS>

181

182 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<PROTOCOL.JIAME> :: == "free...:floor" I "pre-emptive" I "explici t..release" "fifo-queue" I " central.moderator" "pause..d.etection" II II

<TEAMOBJECT> :: == « <CLASS.JIAME> I «TEAKOBJECT.JIAME> "." <CLASS.JIAME»)

( ( <TEAHOBJECT .JIAME> "."). <TEAMOBJECT .JIAME> ) ) <TEAHOBJECT.JIAME> <CARDIIALITY> [ "access:" <ACCESS.LIST> 1 [ " sync :" <PROTOCOLJrAME> 1

<TEAHOBJECT.LIST> :: == "{" "}" I "{" «TEAHOBJECT> ","). <TEAMOBJECT> "}"

<ATTRIBUTE.LIST> : :== "{" "}" I "{" «IDEITTIFIER> ","). <IDENTIFIER> "}"

<TASK.LIST> ; ;== "{" "}" I "{" «SUBTASI.DESCRIPTIOIJrAME> ", "). <SUBTASI.DESCRIPTIOI.JIAME> "}"

<PREDICATE.LIST> : :== "{" "}" I "{" <IIESSAGE..EXPR>

<CASCADED.JIESSAGE..EXPR> "}"

<ACTION.LIST> :: == "{" "}" I "{" «EXPRESSIOI> ","). <EXPRESSION> "}"

C.2. Die Aufgabenbeschreibungssprache

Statische A ufgabenbeschreibung

<SPECIFICATION..BODY> : :== "description:" <STRING>

"tasltRoles :" <TASKROLE...LIST>

"teamObjects:" <TEAHOBJECT...LIST>

"attributes:" <ATTRIBUTE...LIST>

"subTasks:" <TASK...LIST>

"constraints:" <PREDICATE...LIST>

"start: " "condition:" <PREDICATE...LIST>

"action:" <ACTION...LIST>

"terminate: " "condition:" <PREDICATE...LIST>

"action:" <ACTION...LIST>

"enter: " "condition:" <PREDICATE...LIST>

"action:" <ACTION...LIST>

"leave:"

"condition:" <PREDICATE...LIST>

"action:" <ACTION...LIST>

<TASKJ)ESCRIPTION> :: == "Task:" <TASKJ)ESCRIPTION..NAHE>

< SPECIFICA TION-.BODY> "EndTask:" <TASKJ)ESCRIPTION..NAME>

< SUBTASKJ)ESCRIPTION> :: == "SubTask:" <SUBTASKJ)ESCRIPTION..NAME>

<SPECIFICATION..BODY> "EndSubTask:" <SUBTASKJ)ESCRIPTION..NAHE>

Dynamische Aufgabeninstantiierung und Anderung

<TASK..NAME> :: == < INSTANCE..N.ME>

<TEAHOBJECT .1\EFERENCE> .. == "(,, <INSTANCE..NAME> "."

<TEAHOBJECT...NAME> "[" <INTEGER> "]" ")"

<TEAHOBJECT.1\EFERENCE...LIST> :: == " (" «TEAHOBJECT ..REFERENCE> ".") * <TEAMOBJECT..REFERENCE> ")"

183

184 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<TASK_INSTANTIATION> : :== <TASK...NAME> ": =" <TASK-DESCRIPTION...NAME> "new:" <TEAHOBJECT...REFERENCE.LIST> II It

<TASK...REINSTANTIATION> :: == <TASK...NAME> "reinstantiate."

<TASK.PRELIMINARY.END> :: == <TASK...NAME> "discard."

<GET.-ASPECT> :: == "description" I "taskRoles" I "teamObjects" I "attributes" I "subTasks" I "constraints" I "startCondition" "startAction"l "terminateCondition" "terminateAction" I "enterCondition" I "enterAction" I "leaveCondition" "leaveAction"

< SET .-ASPECT> :: == "description:" <STRING> "taskRoles:" <TASKROLE.LIST> "teamObjects:" <TEAHOBJECT.LIST> "attributes:" <ATTRIBUTE.LIST> I "subTasks:" <TASK.LIST> I "constraints:" <PREDICATE.LIST> I "startCondition:" <PREDICATE.LIST> "startAction:" <ACTION.LIST> I "terminateCondi tion:" <PREDICATE.LIST> "terminateAction:" <ACTION.LIST> I "enterCondition:" <PREDICATE.LIST> "enterAction:" <ACTION.LIST> I "leaveCondi tion:" <PREDICATE.LIST> "leaveAction:" <ACTION.LIST>

<STATEMENT> : :== <SET.-ASPECT> I <GET.-ASPECT>

C.3. Die K oordinationsbeschreibungssprache

<CASCADED..sTATEMENT> :: ==

«TASK..NAME> I «TASK...NAME> (". II <SUBTASK...DESCRIPTION..NAME»* )) «STATEMENT> ";")* <STATEMENT>

<STATEMENT--LIST> : :==

( <CASCADED..sTATEMENT> (lbeginTransaction"

«CASCADED..sTATEMENT» * lendTransaction"))*

fI It

C.3 Die Koordinationsbeschreibungssprache

Grundelemente der Koordinationsbeschreibungssprache

<STANDARD_UPPERCASE> .0== "A" I "B" I "C" I "D" I "K" I "L" I "M" I "N" I "U" I "V" I "wit I "X" I

<STANDARD--LOWERCASE> .0== "a" I lib" I "e" I lid"

"k" I "I" I "mit I "n" "u" I "v" I "wit I "x"

<STANDARD--LIT> :: ==

<STANDARD_UPPERCASE> <STANDARD--LOWERCASE>

<SPECIAL--LIT>

I I I

"E" "F" "G" uH" "I" fiJI!

liD .. "P" "Q" "RI! "S" "T" "Y" "z"

"ell "f" "g" "h" "i" "j" "0" "p" "q" "rl! "s" "t" "y" liZ"

185

"+" I "/" I "\" 1 "*" I " .. " I "<" I ">" I II_II I "III" I "Yo" I "I" I "I:" I "?" I "!"

<OTHER.l.IT> ,,[It I If]" I "{II I "}" I n(" I ")" I It ... " I

<CHARACTER> :: ==

<STANDARD.l.IT> I <SPECIAL--LIT> I <OTHER..LIT>

<NON.2ERO...DIGIT..LIT>

It .11 . I "$" I "#" I

"1" I "2" I "3" I "4" I "5" "6" I "7" I "8" I "9"

<DIGIT--LIT> : :== "0" I <NON.2ERO...DIGIT.l.IT>

11.11 " " I ",II

186 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<INTEGER> "0" I <NON..2ERO...DIGIT...LIT> «DIGIT...LIT» *

<NUMBER> :: == <INTEGER> I <INTEGER> "." <INTEGER>

<STRING> : :== 111111 «CHARACTER» *"""

< IDENTIFIER> :: == <STANDARD...LIT> «STANDARD...LIT> I <DIGIT...LIT» *

<INSTANCE...sELECTOR> :: == ("[" <INTEGER> "]") I ("[" "]")

<INSTANCE...NAME> : :== <STANDARD...LOWERCASE> «STANDARD...LIT» * I #tasltRole I #teamObject #subTask I #teamRole

<UNARY _SELECTOR> <IDENTIFIER>

<BINARy...sELECTOR> :: == <SPECIAL...LIT> I <SPECIAL...LIT> <SPECIAL...LIT>

<KEYWORD> :: == <IDENTIFIER> ": II

<PRIMARY> :: == < INSTANCE...NAME> <NUMBER> I <STRING> I "(" <EXPRESSION> ")"

<UNARY _OBJECT ...DESCR> <PRIMARY> I <UNARY.EXPR>

<B INARY _OBJECT ...DESCR> <UNARY _OBJECT ...DESCR> <BINARY.EXPRESSION>

<UNARY.EXPR> :: == <UNARY _OBJECT ...DESCR> <UNARy...sELECTOR>

C.3. Die Koordinationsbeschreibungssprache

<BINARY...EXPR> :: == <BINARY _OBJECT ..DESCR> <BINARY_SELECTOR> <UNARY _OBJECT ..DESCR>

<KEYWORD...EXPR> :: == <BINARY _OBJECT ..DESCR> «KEYWORD> <BINARY_OBJECT..DESCR»+

<MESSAGE...EXPR> :: ==

<UNARY...EXPR> I <BINARY...EXPR> I <KEYWORD...EXPR>

<CASCADED.MESSAGE...EXPR> <MESSAGE...EXPR> (" ;" «UNARY _SELECTOR> I

<BINARy..sELECTOR> <UNARY_OBJECT..DESCR> I «KEYWORD> <BINARY_OBJECT..DESCR»+ ) )+

<EXPRESSION> :: ==

<PRIMARY» I <MESSAGE...EXPR> <CASCADED.MESSAGE...EXPR>

<PREDICATE> :: == <MESSAGE...EXPR> I <CASCADED..MESSAGE...EXPR>

<PREDICATE-LIST> :: == n{" "}" I "{" <PREDICATE> "},,

<COORDINATION..DESCR..NAME> <STANDARD_UPPERCASE> «STANDARD-LIT» *

<TASK..DESCR..NAME> :: == <STANDARD_UPPERCASE> «STANDARD-LIT» *

<TEAM..DESCR..NAME> :: ==

<STANDARD_UPPERCASE> «STANDARD-LIT» * <TASK...ROLE..NAME> :: ==

<STANDARD_UPPERCASE> «STANDARD-LIT» * <TEAM...ROLE..NAME> :: ==

<STANDARD_UPPERCASE> «STANDARD-LIT» * <TEAM...ROLE_INSTANCE> :: ==

<TEAM...ROLE..NAME> < INSTANCE..sELECTOR>

187

188 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<TASK..ROLE...LIST> :: == <TASK..ROLUlAHE> I (" (" «TASK..ROLE.1lAME> ", ")+ <TASK..ROLE.1lAHE> II) II)

<DELEGATION> : :== II (" «TEAM..ROLE.1lAHE> I <TEAM..ROLE_INSTANCE» <TASK..ROLE...LIST> ") II

<DELEGATION...LIST> :: == "{" «DELEGATION> ",")* <DELEGATION> "}"

<TASKATTRIBUTE> :: == "guiding" I "checking" I "none"

<TASKATTRIBUTES> :: == <TASKATTRIBUTE> I

II II ,

"(" «TASKATTRIBUTE> ",")* <TASKATTRIBUTE> ")"

<TASKATTRIBUTE...LIST> :: == "{}" I (II{" (11(" <PREDICATE> "," <TASKATTRIBUTES> ")" ",")* "(11 <PREDICATE> ", II <TASKATTRIBUTES> ")" II}" )

<TEAMATTRIBUTE> : :== "guiding" I "checking" I "directed" I "none"

<TEAMATTRIBUTES> : :== <TEAMATTRIBUTE> I "(11 «TEAMATTRIBUTE> ",")* <TEAMATTRIBUTE> ")"

<TEAMATTRIBUTE...LIST> : :== "{}" I (,,{" (11(" <PREDICATE> "," <TEAMATTRIBUTES> ")" ",")* "(" <PREDICATE> "," <TEAMATTRIBUTES> ")" II}" )

0.3. Die Koordinationsbeschreibu.ngssprache

Statische Koordinationsbeschreibung

<CDDRDINATIDN..DESCRIPTIDN> :: == "Coordination:" <CDDRDINATIDN..DESCR...NAME>

"description:" <STRING> "team:" <TEAM..DESCR...NAME> "task:" <TASK..DESCR...NAME> "delegation:" <DELEGATIDN.LIST> "teamCoordination:" <TEAMATTRIBUTE.LIST> "taskCoordination:" <TASKATTRIBUTE.LIST> "teamTaskConstraints:" <PREDICATE.LIST>

"EndCoordination:" <CDORDINATION..DESCR...NAME>

Dynamische Koordinationsbeschreibung und -anderung

<CDDPERATION...NAME> :: <INSTANCE...NAME>

<TASK...NAME> :: == < INSTANCE...NAME>

<TEAMJlAME> :: == < INSTANCE...NAME>

<CDDPERATID1LINSTANTIATIDN> .. == <COOPERATIDN...NAME> ": =" <COORDINATION..DESCR...NAME> "telllll:" <TEAM...NAME>

"task:" <TASK...NAME>

<CDOPERATION.REINSTANTIATION> :: == <CDDPERATIDN...NAME> "reinstantiate."

<CDDPERATION.PRELIMINARY...END> :: == <COOPERATION...NAME> "discard."

<GET...ASPECT> : :== "description" I "delegation" I "teamCoordination" "taskCoordination" "teIllllTaskConstraints"

" II

189

190 Anhang C. Team-, Aufgaben- und Koordinationsbeschreibungssprache

<SET...ASPECT> : :== "description: II <STRING> I "delegation: II <DELEGATION-LIST> "teamCoordination: II <TEAMATTRIBUTE-LIST> "taskCoordination: II <TASKATTRIBUTE-LIST> "teamTaskConstraints: II <PREDICATE-LIST>

<STATEMENT> : :== <SET...ASPECT> I <GET ...ASPECT>

<CASCADED...sTA TEMENT> <COOPERATIONJlAHE> «STATEMENT> "; ") * <STATEMENT>

<STATEMENT-LIST> : :== ( <CASCADED...sTATEMENT> (lbeginTransaction"

«CASCADED...sTATEMENT» * lendTransaction"»*

II II

Anhang D

Beispiel: Entwicklung kooperativer Szenarien

Urn den Einsatz der Entwicklungsunterstiitzung durch Teamobjektklassen sowie Team-, Aufgaben- und Koordinationsbeschreibungssprachen zu veranschaulichen, werden in die­sem Anhang konzeptionell interessante Teile der Realisierung des Beispielszenarios auf­gefiihrt, das die kooperative Entwicklung kooperativer Szenarien zum Gegenstand hat.

Ein neues Teamobjekt zur Visualisierung der Aufgabe

Das folgende Fragment zeigt, wie Teamobjekte der Klasse 'Knopf' fUr die Visualisierung der Aufgabe 'Realisiere Kooperation' (s. Abbildung 5.1) wiederverwendet werden (vgl. auch die Klasse 'Workbench' in Anhang B).

workbench := SyntaxWorkbench new. "Einfiigen eines komplexen graphischen Objektes:"

buttonsViewModel := workbench createAddTeamDbject:'complexGraphics' cpAct: 010 to: workbench.

buttonsViewModel aspect: #button.

"Einfiigen der drei Kniipfe fiir die Auswahl der Teilaufgabe." button := workbench createAddTeamObject: 'button' cpAct: (30150)

to: buttonsViewModel. button name: 'text'. button textString: 'DESIGN' . button setbbCorner: (button bbOrigin) + (120150). button message: 'design' .

button := workbench createAddTeamObject: 'button' cpAct: (180150) to: buttonsViewModel.

192 Anhang D. Beispiel: Entwicklung kooperativer Szenarien

button name: 'text'. button textString: 'DESCRIBE'. button setbbCorner: (button bbOrigin) + (120G50). button message: 'describe'.

button := workbench createAddTeamObject: 'button' cpAct: (330G50) to: buttonsViewModel.

button name: 'text'. button textString: 'INSTANTIATE'. button setbbCorner: (button bbOrigin) + (120G50). button message: 'instantiate'.

"Erweitern der Sichtbarkeit urn den GroupIE-Manager" visible := Set new. visible add: (workbench semanticObject userID); add: 'control'. workbench semanticObject visibility: visible.

"Erzeugen der lokalen Objekte View und Controller:" teamView := TeamView newExtentX: 480 extentY: 150. teamView model: workbench. teamView controller: TeamViewController new. teamView aspect: #button.

self openView: (480G150) withLabel: 'realizeCooperation'.

Team-, Aufgaben- und Koordinationsbeschreibung

Es folgen die Teambeschreibung, konzeptionell interessante Teile der Aufgabenbeschrei­bung, die Koordinationsbeschreibung sowie die Instanziierung des Beispielszenarios.

Statische Teambeschreibung

Es wird die Struktur eines demokratischen Teams urn einen Protokollfiihrer erweitert.

Team: ArgumentativeTeam description: "Demokratisches Team mit einem Protokollfiihrer" teamRoles: {Member[1.*]. Protocol[1.1]}[2.*] interface: {Member[l]} structure: {Member - > Member.

Member - > Protocol} EndTeam: ArgumentativeTeam

Statische A ufgabenbeschreibung

Die Aufgabe gliedert sich in drei Teilaufgaben.

Task: RealizeCooperation description:"Der ProzeB der Kooperationserstellung wird durch

diese Aufgabendefinition beschrieben." taskRoles: {Developer[1,6], HistoryKeeper[1,1]}[2, 7] teamObjects: {<Document> designDocument[1,1]

access: Developer[context,semantic,syntactic,view], HistoryKeeper[context, view]

sync: implicitRelease, <TeamDescription> myTeamDescr[1,1] access: Developer[context, semantic, syntactic, view],

HistoryKeeper[context, view] sync: implicitRelease, <TaskDescription> myTaskDescr[ 1,1] access: Developer[context, semantic, syntactic, view],

HistoryKeeper[context, view] sync: implicitRelease, <CoordinationDescription> myCoordinationDescr[1,1] access: Developer[context,semantic,syntactic,view],

HistoryKeeper[context, view] sync: implicitRelease}

attributes: {} subTasks: {Design, Describe, Instantiate} constraints: {} start:

condition: {} action: {}

terminate: condition: {} action:{}

enter: condition: {} action: {}

leave: condition: {} action: {}

EndTask: RealizeCooperation

SubTask: Design description:"Die Phase des Grobentwurfs, inklusive Brainstorming

193

194 Anhang D. Beispiel: Entwicklung kooperativer Szenarien

zu geeigneten Interaktionstypen wird hier beschrieben. Der HistoryKeeper, der fUr das FUhren der Design-Historie verantwortlich ist, darf als einziger die Aufgabe start en"

taskRoles: {Developer[1, a], HistoryKeeper[ 1,1]}[2, 7] teamObjects : {<Document> designDocument[1,1],

<Group IT> interactionPrototyper[O ,1] access: Developer[context,semantic,syntactic,view],

HistoryKeeper[context, view] sync: freeFloor, <Note> localNote[O,*] access: Developer[context, semantic, syntactic, View],

HistoryKeeper[context,semantic,syntactic,view] sync: freeFloor}

attributes: {designCompleted} subTasks: {} constraints: {«designDocument numberOfComponents) < 7)} start:

condition: {(#currentRole = HistoryKeeper)} action: {}

terminate: condition: {} action: {designCompleted := true}

enter: condition: {} action: {}

leave: condition: {} action: {}

EndSubTask: Design

SubTask: Describe description: "Der Grobentwurf in Team-, Aufgaben- und

Koordinationsbeschreibung gegeben wird hier konkretisiert und beschrieben"

taskRoles: {Developer[1,a], HistoryKeeper[1,1]}[2, 7] teamObj ects: {<TeamDescription> myTeamDescr[ 1,1],

<TaskDescription> myTaskDescr[1,1], <Coordinat ionDescription> myCoordinationDescr[ 1 ,1]

attributes: {describeCompleted} subTasks: constraints: {} start:

condition: {(designCompleted)}

action: {} terminate:

condition: {} action: {describeCompleted .= true}

enter: condition: {} action: {}

leave: condition: {} action: {}

EndSubTask: Describe

SubTask: Instantiate description: OlDie in der Describe-Phase erstellten Beschreibungen

werden an dieser Stelle instanziiert. Bach der Instanziierung ist die Kooperation aktiviert"

taskRoles: {Developer[1.6]. HistoryKeeper[1.1]}[2. 7] teamObjects: {<TeamDescription> myTeamDescr[l.l].

<TaskDescription> myTaskDescr[ 1.1]. CoordinationDescription myCoordination[l.l] access: Developer[context. syntactic. view].

HistoryKeeper[context. view] sync: implicitRelease}

attributes: {} subTasks: {} constraints: {} start:

condition: {(describeCompleted)} action: {}

terminate: condition: {} action: {}

enter: condition: {} action: {}

leave: condition: {} action: {}

EndSubTask: Instantiate

195

196 Anhang D. Beispiel: Entwicklung kooperativer Szenarien

Statische Koordinationsbeschreibung

Coordination: ArgumentativeRealizeCooperation description: "Die Aufgabe der kooperative Realisierung einer

Kooperation wird durch ein argumentatives Team bearbeitet"

team: ArgumentativeTeam task: RealizeCooperation delegation: {(Protocol, HistoryKeeper),

(Member, Developer)} teamCoordination: {(true, guiding),

(#taskRole = HistoryKeeper,(checking,directed)} taskCoordination: {(true, (checking ,guiding) ,

(#subTask = RealizeCooperation.Design,(none,checking)} teamTaskCoordination: {}

EndCoordination: ArgumentativeRealizeCooperation

Dynamische Instanziierung

myTeam := ArgumentativeTeam new: ((tom, Member[l]),

(stup, Member[2]), (siegen, Protocol[l]».

myTask := RealizeCooperation new:(myDesignTemplate,designDocument[l]».

myCooperation := ArgumentativeRealizeCooperation team: myTeam task: myTask.

~ I.\rJ DeufscherUl1iversitafsVerlag ____ --, ~ GABlER·VIEWEG·WESTDEUTSCHER VERLAG

Aus unserem Programm

Siegbert Kern Produktions-Controlling fOr Fertigungsinseln 1993. xx. 223 Seiten, 67 Abb., Broschur DM 89,­ISBN 3-8244-0151-7 In dieser Arbeit werden die durch die Einffihrung und den Betrieb von Fer­tigungsinseln sich ergebenden technischen und organisatorlschen Verinde­rungen analysiert und daraus die Anforderungen ftir ein Produktions-Con­trolling abgeleitet.

Hermann Korndle Mensch-Computer-Interaktion Psychologische Aspekte des Umgangs mit komplexen technischen Systemen 1993. 199 Seiten, 30 Abb., 11 Tab., Broschur DM 44,-ISBN 3-8244-4129-2 Computer und andere komplexe technische Systeme breiten sich immer mehr und immer schneller in unserem Alltag aus. Die Psychologie bearbeitet die Mensch-Computer-Interaktion sowohl aus der Sicht der Nutzer (Subjektaspekt) als auch aus der Sicht der Ergonomie (Objektaspekt).

Simone Pribbenow RAumliche Konzepte in W"lS8ens- und Sprachverarbeitung Hybride Verarbeitung von Lokalisierung 1993. IX, 282 Seiten, 66 Abb., Broschur DM 72,­ISBN 3-8244-2042-2 Das Thema dieses Buches ist "Sprache und Raum", konkreter die Untersu­chung sprachlicher Lokalisierungsausdriicke. Die Analyse reicht von der lin­guistischen Theoriebildung bis bin zur Implementierung der Verarbeitung von Lokalisierungsausdriicken im LILOG-Prototyp.

Franco di Primio Hybride Wissensverarbeitung Am Beispiel von BABYLON 1993. IV, 296 Seiten, 17 Abb., Broschur DM 76,­ISBN 3-8244-2039-2 Eine der grundlegenden Anforderungen ftir Systeme zur Repriisentation und Verarbeitung von Wissen ist die inkrementelle Veriinderbarkeit der Sy­sterne selbst. In diesem Buch wird dargestellt, wie diese Anforderung erfilllt werden kann.

f[)'l1.\f7 DcutscherUnivc.·siHitsVcrlag---------. ~ GAOLER ·VIEWEG ·WESlDEUTSCHER VERLAG

SimoneRehm Komplexe ObJekte und Anfragen in der Programmierung Zur Integration von Datenbanken und Programmiersprachen 1993. VIII, 221 Seiten, 33 Abb., 12 Tab., Broschur DM 54,-ISBN 3-8244-2040-6 Komplexe Objekte baben sich bereits aIs besonders aussagekriiftiges Hilfs­mittel bewiihrt. Dieses Buch zeigt, wie sie sich in einer stark typisierten . Programmiersprache verankem lassen. Auf diese Weise werden die Voraus­setzungen geschafl'en ftir eine reibungslose Integration von Programmier­sprachen und Datenbanken.

Harald SchOning Anfrageverarbeitung in KomplexobJekt-Datenbanksystemen 1993. XII, 243 Seiten, 111 Abb. und Tab., Broschur DM 72, ISBN 3-8244-2041-4 Das Buch untersucht die efliziente Verarbeitung von Operationen auf kom­plexen Objekten in Datenbanksystemen, wie sie zum Beispiel in Entwurfs­anwendungen auftreten. Die Probleme der Optimierung in diesem Bereich sind bestimmt durch die N euartigkeit der Operationen und die Komplexitat der Daten (hoher Vemetzungsgrad).

Dirk Stelzer Sicherheitsstrategien in der Informationsverarbeitung Ein wissensbasiertes, objektorientiertes Beratungssystem ftir die Risiko­analyse 1993. XXIII, 378 Seiten, 45 Abb., Broschur DM 98, ISBN 3-8244-2038-4 Risikoanalysen sind ein notwendiger Bestandteil der Entwicklung von Stra­tegien ftir die Sicherheit der Informationsverarbeitung. Mit Hilfe von Me­thoden und Techniken der Kunstlichen Intelligenz wird ein Beratungssy­stem zur Unterstutzung der Risikoanalyse entworfen.

Die Bilchererhalten Sie in Ihrer Buchhandlung! Unser Verlagsverzeichnis konnen Sie anfordem bei:

Deutscher Unive1'8itits-Verlag Postfach 30 09 44 61338 Leverkusen