A Design Language for Interactive Systems
Computational artifacts remain incapable of naturally interacting with living, biological systems because traditional computation and programming models emulate mathematics' detachment from time. Those of us who strive to design dynamic, adaptive systems that exhibit robust, context-dependent behavior, must consistently attempt to do so with constructs that unnaturally abstract and constrain the very concept of change. This talk presents a novel, human-centered approach to the design and implementation of interactive software systems, in the form of a design language, Hermes/dl, that bridges this disconnect between mathematical models and natural interaction.
The creation of Hermes/dl builds on the experience gained in creating and using the Software Architecture for Immersipresence (SAI) architectural framework. A design language comprises of a collection of primitives, a set of organizing principles, and collections of qualifying situations. The elements of Hermes/dl exist in three interchangeable forms: a human-oriented graphical notation, a proof-oriented graph theoretic formulation, and machine-oriented code middleware.
Hermes/dl's primitives and organizing principles confer modularity and scalability to system designs, and promote the expression of processing logic at the architectural level, prompting the emergence of a rich vocabulary of structural patterns. Several interactive vision, music and game system designs provide concrete illustrations of these points. The Crosswinds game system shows the use of the language as a collaboration tool in a class-wide term project.
Alexandre R.J. Francois is a Visiting Assistant Professor in the Computer Science Department at Tufts University.
He is on leave from the University of Southern California, where he currently holds an appointment as a Research Assistant Professor of Computer Science in the USC Viterbi School of Engineering. From 2001