Evaluation and improvement of the Lydian visualization environment:

An interdisciplinary project

in the human-computer interaction and network areas

 

 

 

Background:

 

The field of information visualization has arisen to allow computer users to access, explore, and manipulate complex data sets. This field is based partly on advances in computer graphics and cognitive psychology. One area in which visualization techniques may be applied to enhance understanding of computer systems is the field of distributed algorithms. As distributed algorithms may involve a large amount of data describing local state information and complex interactions between elements, it is often very difficult to achieve an understanding of their control flow (and performance behaviour) only from a  pseudo-code description given in a book or technical paper, and the explanation given by a teacher concisely in the static blackboard. Visualization may be used to illuminate the execution of the algorithm and help to find problems in the implementation.

 

A software technique was recently developed in the Department of Computing Science at Chalmers University of Technology. Lydian is a simulation and visualization environment for distributed algorithms, which provides to the students an experimental environment to test and visualize the behaviour of distributed algorithms.

 

Lydian offers the students an easy, visual way to describe their own networks, including traffic parameters, or select one from a database included with Lydian. Subsequently students can use these network-descriptions in order to see the behaviour of the protocol or algorithm running on top of them.

Further, it offers a database of basic distributed algorithms and protocols that the student can select from. The database so far contains algorithms for broadcasting, spanning tree constructions, resource allocation, leader election and counting networks. Students can insert a new distributed algorithm in Lydian by using a high-level description language. The simulator of Lydian takes as input the network description file and the distributed algorithm and creates an execution (run). This execution describes the behaviour of the algorithm for the specific execution parameters.

 

Although Lydian has been used by numerous students on an informal basis, no rigorous usability evaluation has been performed. Such evaluation can identify problems and solutions from the perspective of human-computer interaction (HCI). Evaluation normally leads to recommendations for usability fixes and design improvements. Implementing software changes based on these recommendations is quite feasible, given the modular nature and reasonable size of the Lydian software. The proposed changes will increase the effectiveness of Lydian for its primary purpose – simulating and teaching distributed algorithms.

 

The interdisciplinary nature of this project will be both a challenge and a reward. The challenge will be in acquiring and coordinating expertise in two sub-fields of computer science – HCI and distributed systems – either individually or by specializing members of the project team. The reward will be in increased learning, and in simulating an industrial development environment (which is normally interdisciplinary).

 

Ultimately, success in this project will help to improve the teaching activities of the Department of Computing Science.

 

Project Goals: The project has two primary goals. First, students will apply HCI methodologies to evaluate the usability of the Lydian environment and to suggest improvements. Second, students will design improvements to Lydian based on the suggested improvements, and then implement these improvements. The first goal should be achieved during Reading Period 3, and the second goal during Reading Period 4.

 

Useful courses: Human-Computer Interaction, Distributed Systems, Distributed Systems II.

 

Supervisors: Marina Papatriantafilou, and Phillippas Tsigas

 

The Lydian WWW page.