Experiences with object- oriented group support software development by S. C. Hayne M. Pendergast This paper describes practical design and implementation experiences gained when creating Group Support Systems (GSS) in a networked personal computer environment. Examples of GSS based on the shared context model and implemented using C, C++, and Actor languages are presented. Graphical user interlaces and multitasking extend traditional methods for supporting group work. An object- oriented communication system is introduced comprised of objects that provide support for all inter- and intraprocessor communications between the GSS applications. Multiple levels of data service are provided to maintain shared data, coordinate user views, and transmit cursor positions in a convenient and efficient manner. The applications presented not only demonstrate the viability of implementing GSS on personal computer-based systems, but also show the ability to develop complex applications in different programming environments that make use of common routines. The unique properties of the object-oriented paradigm greatly facilitate the creation and use of Group Support Systems. O ver the past ten years academic and industry researchers have developed computer sys- tems that increase the productivity of work groups. This research has progressed somewhat independently along two parallel tracks: Group Decision Support Systems (ODSS) and computer- supported cooperative work (cscw). DeSanctis and Gallupe defined a Group Decision Support System in 1987 as "an interactive computer- based system that facilitates the solution of un- structured problems by a set of decision-makers working together as a group." I Tasks commonly supported by ODSS include brainstorming, idea organization, voting, strategic planning, policy formation, total quality management, and com- munication. These systems are typically imple- mented for personal computers running the disk operating system (DOS) on low-cost machines that have allowed corporations to adopt and experi- ment with this new method of group work. Sev- eral research prototypes have been developed to prove feasibility; the most notable of these has evolved into the commercial product Group- Systems V**. Computer-supported cooperative work was defined by Ellis, Gibbs, and Rein in 1991 as "computer-based systems that support two or more users engaged in a common task (or goal) and that provide an interface to a shared environment."? cscw applications include systems design, collaborative writing, project manage- ment, and process control. The research proto- types available have been implemented in UNIX** platforms-:? and, although these systems support different tasks, they are very similar from an ar- chitectural standpoint. For example, consider five individuals working on a proposal. Each wishes to work on a section of the document at the same time. The group re- quires real-time access to the shared data, com- ©Copyright 1995by International Business Machines Corpo- ration. Copying in printed form for private use is permitted without payment of royalty provided that (1) each reproduc- tion is done without alteration and (2) the Journal reference and IBM copyright notice are included on the first page. The title and abstract, but no other portions, of this paper may be copied or distributed royalty free without further permission by computer-based and other information-service systems. Permission to republish any other portion of this paper must be obtained from the Editor. 96 HAYNE AND PENDERGAST 0018-8670/95/$3.00 © 1995 IBM IBM SYSTEMS JOURNAL, VOL 34, NO 1, 1995