Design of Extensible Component-Based Groupware

Tailoring is identified as a key requirement for CSCW applications. One major tailoring mechanism is the extensionof an application at run-time to change its behavior.This article shows how synchronous CSCW component-based applicationscan be designed to be extensible at run-time. We propose to split the act of tailoring into two steps: thedesign-time customization of new components in visual builder tools and their insertion into the running application. Thus the customization tool is not required to be part of the application.This article presents a new design pattern for extensibility andgives several examples based on that pattern. With the help of the pattern extensible application frameworks can besystematically created from a non-extensible application design. The different possibilities to place insertionpoints into the application design are discussed with respect to flexibility and ease of deployment. Finally, wepresent the advantages and limitations of this approach.

[1]  Paul Dourish,et al.  Developing a reflective model of collaborative systems , 1995, TCHI.

[2]  Abbe Mowshowitz,et al.  Virtual Organization - Introduction to the Special Section. , 1997 .

[3]  Anders I. Mørch,et al.  Three levels of end-user tailoring: customization, integration, and extension , 1997 .

[4]  SchmidHans Albrecht Creating the architecture of a manufacturing framework by design patterns , 1995 .

[5]  X. N. Zhang Secure Code Distribution , 1997, Computer.

[6]  Don Kiely,et al.  Are Components the Future of Software? , 1998, Computer.

[7]  Wolfgang Pree,et al.  Meta Patterns - A Means For Capturing the Essentials of Reusable Object-Oriented Design , 1994, ECOOP.

[8]  Anders I. Mørch,et al.  Application Units: Basic Building Blocks of Tailorable Applications , 1995, EWHCI.

[9]  Hans Eriksson,et al.  MBONE: the multicast backbone , 1994, CACM.

[10]  Douglas C. Schmidt,et al.  Object-oriented application frameworks , 1997, CACM.

[11]  Hans Albrecht Schmid,et al.  Systematic framework design by generalization , 1997, CACM.

[12]  Bernard Mérialdo,et al.  Questionnaires: a framework using mobile code for component-based tele-exams , 1998, Proceedings Seventh IEEE International Workshop on Enabling Technologies: Infrastucture for Collaborative Enterprises (WET ICE '98) (Cat. No.98TB100253).

[13]  Richard M. Adler,et al.  The Emergence of Distributed Component Platforms , 1998, Computer.

[14]  Gloria Mark,et al.  Supporting Groupware Conventions through Contextual Awareness , 1997, ECSCW.

[15]  Hans Albrecht Schmid Creating the architecture of a manufacturing framework by design patterns , 1995, OOPSLA.

[16]  James Paul Dourish,et al.  Open implementation and flexibility in CSCW toolkits , 1996 .

[17]  Henry Lieberman,et al.  Debugging and the experience of immediacy , 1997, CACM.

[18]  Lars Mathiassen,et al.  Three Levels of End-User Tailoring: Customization, Integration, and Extension , 2003 .

[19]  Jakob Hummes Software components for cooperation : a solution for the "get help" problem , 1998 .

[20]  Richard Bentley,et al.  Medium versus mechanism: Supporting collaboration through customisation , 1995, ECSCW.

[21]  Christopher Fry,et al.  Experiments with Oval: a radically tailorable tool for cooperative work , 1992, CSCW '92.

[22]  Saul Greenberg,et al.  Building real-time groupware with GroupKit, a groupware toolkit , 1996, TCHI.

[23]  Abbe Mowshowitz,et al.  Virtual organization , 1997, CACM.

[24]  Ralph E. Johnson,et al.  Frameworks = (components + patterns) , 1997, CACM.

[25]  Saul Greenberg,et al.  Simplifying component development in an integrated groupware environment , 1997, UIST '97.

[26]  Desmond D'Souza,et al.  Objects, Components, and Frameworks with UML: The Catalysis Approach , 1998 .

[27]  Anja Syri Tailoring Cooperation Support through Mediators , 1997, ECSCW.

[28]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[29]  Susanne Bødker,et al.  From implementation to design: tailoring and the emergence of systematization in CSCW , 1994, CSCW '94.

[30]  DourishPaul Developing a reflective model of collaborative systems , 1995 .

[31]  Armin B. Cremers,et al.  Tailorable component architectures for CSCW-systems , 1998, Proceedings of the Sixth Euromicro Workshop on Parallel and Distributed Processing - PDP '98 -.

[32]  Christine Solomon Developing Applications with Microsoft Office: Strategies for Designing, Developing, and Delivering Custom Business Solutions Using Microsoft Office , 1995 .

[33]  Tom Rodden,et al.  Proceedings of the Fifth European Conference on Computer Supported Cooperative Work , 1997, Springer Netherlands.

[34]  Rainer Weinreich A component framework for direct-manipulation editors , 1997, Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239).

[35]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture: A System of Patterns: John Wiley & Sons , 1987 .

[36]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .