6 CONCLUSION AND
PERSPECTIVE
We have proposed in this article a component model
based on documents and instruments. It aims to sub-
stitute the application concept to the software compo-
nent concept at the workspace level in order to over-
come the problem induced by the intensive use of
widgets in today’s workspaces. The proposed model
goes into the opposite direction from widgets: DPI
components are open-boxes that respect an unifying
contract, while widgets are black-boxes that aim at
masking the internal complexity.
The overall DPI model has been implemented in
the OpenDPI java toolkit
4
. It uses Piccolo for dis-
playing graphics (Bederson et al., 2000). It provides
its own high level management of multiple human
input devices under Linux and a standard one under
other operating systems. The toolkit is made of about
250 classes and 18000 lines of code. We have imple-
mented a set of interactive components through sce-
nario, such as the ones presented in this paper, that
are often considered too complex to develop. We
have noted that, by experimenting student projects,
the design and programming of new DPI components
is quite easy as soon as the DPI concepts are captured
(which was mainly done by analyzing sample codes).
Students have underlined the elegance of the ap-
proach and its unifying purpose. DPI components
can be implemented without many programming ef-
forts in varied contexts such as bimanual interaction
or single display groupware, with the ability to guar-
antee the interaction consistency. By defining the
replication point concept, the OpenDPI toolkit pro-
vides an alternate rendering engine that can be used
to build interaction-consistent magic lenses, and gives
the foundation of the groupware facet of the model.
The next step of our work consists of validating the
DPI model by implementing a software suite dedi-
cated to specific tasks. Such a tool will allow our ap-
proach to be more precisely qualified, based on the in-
tensive use of interactive components without any ap-
plication (except the kernel of OpenDPI), and to dis-
cover potential new problems that this approach may
induce. We are also about to refine the DPI model
by using well known standards. The document model
will be based on DOM and the presentation model
will be based on SVG (W3C, 2003). We will thus
extend DOM by specifying how the (inter)action and
collaboration aspects of DPI can be added on top of
it.
4
http://www.eseo.fr/˜obeaudoux/opendpi
REFERENCES
Apple (1994). Opendoc technical summary. Technical doc-
umentation, Apple Computer Inc.
Backlund, B. E. (1997). OOE: A compound document
framework. ACM SIGCHI Bulletin, 29(1):68–75.
Beaudouin-Lafon, M. (2000). Instrumental interaction: An
interaction model for designing post-wimp interfaces.
In Proc. CHI’00, pages 446–453. ACM Press.
Beaudouin-Lafon, M. and Karsenty, A. (1992). Trans-
parency and awareness in a real-time groupware sys-
tem. In Proc. UIST’92, pages 171–180. ACM Press.
Beaudouin-Lafon, M. and Mackay, W. (2000). Reification,
polymorphism and reuse: Three principles for design-
ing visual interfaces. In Proc. AVI’00, pages 102–109.
ACM Press.
Beaudoux, O. and Beaudouin-Lafon, M. (2001). DPI: A
conceptual model based on documents and interaction
instruments. In Proc. IHM-HCI’01, pages 247–263.
Springer Verlag.
Bederson, B. B., Meyer, J., and Good, L. (2000). Jazz: An
extensible zoomable user interface graphics toolkit in
java. In Proc. UIST’00, pages 171–180. ACM Press.
Bier, E. A., Stone, M. C., Pier, K., Buxton, W., and DeRose,
T. D. (1993). Toolglass and magic lenses: the see-
through interface. In Proc. of SIGGRAPH’93, pages
73–80. ACM Press.
Brockschmidt, K. (1995). Inside OLE, Second Edition. Mi-
crosoft Press.
Dewan, P. and Choudhary, R. (1992). A high-level and
flexible framework for implementing multiuser user
interfaces. ACM Trans. on Information Systems,
10(4):345–380.
Gamma, E., Helm, R., Johnson, R., and Vlissides, J.
(1994). Design Patterns: Elements of Reusable
Object-Oriented Software. Addison-Wesley.
Johnson, J., Roberts, T. L., Verplank, W., Smith, D. C., Irby,
C., Beard, M., and Mackey, K. (1989). The Xerox
Star: A retrospective. IEEE Computer, 22(9):11–29.
Knister, M. J. and Prakash, A. (1990). DistEdit: a distrib-
uted toolkit for supporting multiple group editors. In
Proc. CSCW’90, pages 343–355. ACM Press.
Krasner, G. E. and Pope, S. T. (1988). A cookbook for
using the Model-View-Controller user interface para-
digm in Smalltalk-80. Journal of Objet Oriented Pro-
gramming, pages 26–49.
Microsoft (1995). The component object model specifica-
tion. Specification Document.
Sun (1997). JavaBeans API specification. Specification
document.
W3C (2001). Web services description language (WSDL)
1.1. Technical report, Consortium W3C.
W3C (2003). Scalable vector graphics (SVG) 1.1 specifica-
tion. Technical report, Consortium W3C.
W3C (2004). Document object model (DOM) level 3 core
specification. Technical report, Consortium W3C.
OPENDPI: A TOOLKIT FOR DEVELOPING DOCUMENT-CENTERED ENVIRONMENTS
47