We propose an implementation-level architecture as a way to simplify the development of synchronous groupware by providing an intermediate level in mapping of an application's design-level architecture to a distributed implementation. An implementation-level architecture should support flexible mappings from design-level architectures to distributed implementations by allowing the groupware designer to specify distribution policies for a distributed implementation.;To support this argument we present Dragonfly, an implementation-level architecture that encapsulates policy decisions into a set of facets. These facets are designed to support a wide range of plug replaceable mechanism implementations, offering orthogonal distribution policies. These are two properties required of an implementation level architecture.;We demonstrate than an implementation-level architecture is implementable through the implementation of Dragonfly within the Telecomputing Developer (TCD). TCD allows groupware to be designed at a high level, using design-level architectures, and allows distribution policies to be specified for an application though the selection of distribution mechanisms. |