Have you ever heard of Groupware systems? Not all of us have, so here is an insight into the basics of Groupware systems, from an article I read at the Criss library in Omaha.
What are Groupware systems?
Software that supports multiple users working on related tasks in local and remote networks is called a groupware system. Also called “collaborative software,” groupware is an evolving concept that is more than just multiuser software which allows access to the same data. Groupware provides a mechanism that helps users coordinate and keep track of ongoing projects together.
Groupware systems are closely related with factors governing organization and knowledge of the group within an organization. Considering these factors are very variable, development and management processes of groupware systems are complex and require adaptable infrastructure which guarantees their evolution. An example of this groupware system is AGORA. It is a layered architecture for building cooperative applications that are flexible in distributed environments. This approach is based on a shared workspace defining the basic resources for groupware systems. The classic concept of Agora from Greek philosophy is defined as a meeting place for making decisions in community as per a defined protocol. This idea is being adapted at this time for making decisions and working in organizations groups.
AGORA as a groupware system:
Although a groupware system provides distinctive and speciﬁc services for collaborative groups, all of these systems share a set of common key aspects of communication, group awareness, coordination and group memory. Taking each of these key aspects into consideration,
- Communication:the communication in a groupware system is categorized under synchronous and asynchronous according to the moment in which is carried out. Both classes of communication should be performed in such a way that services can mutually beneﬁt from both these categories.
- Group Awareness:The group awareness is deﬁned as an understanding of the activities of others, which provides a context for our own activity .If this context is not available, collaboration is impossible because users are unaware about behavior of other group members when performing the group task. Therefore, this context is used to ensure that individual contributions are relevant to the group’s activity.
- Coordination:The coordination is a critical issue because the group’s activity is realized by means of shared objects. Therefore, the management of these artifacts should be adequately coordinated for avoiding duplications or inconsistencies with the information derived of bad handled concurrent accesses.
- Group memory:The group memory manages the historical information associated with shared objects used in group applications. This information helps understand the cooperative process from the events which identify all actions realized with shared objects in the application. We consider these aspects as essential features of groupware systems, and AGORA implements all of them by means of the shared environment layer which is used by upper layers for designing and building cooperative applications.
Cooperative Service: A key concept of AGORA
The cooperative service is a key concept in AGORA, because it allows getting a ﬂexible and extensible solution with a high level of adaptation for managing the evolving needs of the group. These features are based on a suitable use of the resources provided by the shared environment layer.
In conclusion, this article presents AGORA as a software architecture used for building adaptable groupware systems. These systems help us design and exploit ﬂexible and extensible applications that cooperative projects use. Therefore, these applications are competitive in real environments and have a high level of quality to manage the dynamics of the evolving project groups that use them.