Summary: | Business team collaboration in the future will increasingly take place in an
environment where everything is potentially distributed. Traditional group support systems
have been LAN-based and have not ported easily to distributed, Internet-based products.
Rather, distributed group support systems require new architectures if they are to support the
same type of real-time, high-collaboration environments that traditional systems have.
This dissertation describes the development of a server architecture and programming
model to support the rapid application development of real-time, distributed, and
collaborative applications. Since the efficiency, robustness, and scalability of these
applications are handled by the server, complex applications can be developed in very short
production cycles.
Background literature presented in the dissertation includes a taxonomy of distributed
networking and data sharing methods, models of dialog independence, and messaging
methods. Many different prototype and real systems are presented, analyzed, and compared
with the Collaborative Server in this dissertation. The Systems Development methodology
is applied to this research domain.
A prototype system-the “Collaborative Server”-is developed, including a unique data
persistence and replication scheme based upon a central Property object. Properties are
created in hierarchical trees to form the “scaffolding” for collaborative applications. Each
Property governs a single value, or datum, and controls the access, replication, security,
viewing, locking, and persistence of its value. Properties are layered with predefined or
custom child indices.
A new systems development methodology, based upon the Waterfall method but
tailored for the Collaborative Server, is presented. The efficiency and effectiveness of this
methodology is analyzed using a simulated example and two case studies.
The research contribution of this dissertation is the Collaborative Server. The basis
of this server is the Property concept, including the methodology changes it effects, the
efficiencies and application stability it produces, and the specialized messaging system it
allows. Required programmer knowledge is significantly reduced when applications are built
upon the Collaborative Server. In addition, the presented examples and case studies show
significant decreases in code size and in time-to-market for their respective applications.
|