Advertisement

Practice

Efficient decoding of prefix codes

A special case of the data compression problem is presented, in which a powerful encoder transmits a coded file to a decoder that has severely constrained memory. A data structure that achieves minimum storage is presented, and alternative methods that sacrifice a small amount of storage to attain faster decoding are described.
Practice

Retrospective on DACNOS

Heterogeneity of hardware and software is a fact in most distributed computing environments. The DACNOS prototype is a network operating system that enables resource sharing in such environments. It extends the local operating systems without interfering with existing programs. It provides comprehensive system level support for distributed applications.
Practice

Automatically generating visual syntax-directed editors

Since inexpensive computers possessing sophisticated graphics were introduced in the late 1970s, program development research has focused on syntax-directed editors that are based on the grammars of their underlying languages. The system presented here automatically generates object-oriented, syntax-directed editors for visual languages, which are described by a family of editing operations.
Research and Advances

The art of navigating through hypertext

Hypertext (3), (19), (25) is becoming a popular approach to many computer applications, especially those dealing with the on-line presentation of large amounts of loosely structured information such as on-line documentation or computer-aided learning. There are still many issues concerning hypertext that remain to be resolved, however, many of which are in the user interface area. One of the major usability problems with hypertext is the user's risk of disorientation while navigating the information space. For example, our studies [23] showed that 56 percent of the readers of a document written in one of the most popular commercial hypertext systems agreed fully or partly with the statement I was often confused about ‘where I was. ’ To investigate a number of user interface options in hypertext systems we designed a prototype system in the form of a hypertext report on events at the 1987 hypertext workshop. This system was implemented on an Apple Macintosh with Hypercard as the programming system. (To get a feel for our hypertext system, the reader is encouraged to review Figures 1 to 10 which contain screen dumps of a session with the system and thus constitute a kind of printed demonstration or guided tour.) Hypertext is a very dynamic form of human-computer interaction and can only be fully appreciated in an interactive environment. However, even these figures give a much better understanding of the system than a traditional textual description could give.
Practice

N-Fold inspection: a requirements analysis technique

N-fold inspection uses traditional inspections of the user requirements document (URD) but replicates the inspection activities using N independent teams. A pilot study was conducted to explore the usefulness of N-fold inspection during requirements analysis. A comparison of N-fold inspection with other development techniques reveals that N-fold inspection is a cost-effective method for finding faults in the URD and may be a valid technique in the development of mission-critical software systems.
Research and Advances

Dynamic file migration in distributed computer systems

The importance of file migration is increasing because of its potential to improve the performance of distributed office, manufacturing and hospital information systems. To encourage research in the file migration problem, the authors summarize accomplishments of researchers of the problem, provide a detailed comparison of file migration and dynamic file allocation problems, and identify important areas of research to support the development of effective file migration policies.
Research and Advances

Investigating the effects of color

A laboratory experiment studies the effects of color on a decision maker's ability to extract information from different graphical and tabular presentations. Results indicate color improves time performance for tables, pie charts and bar graphs, and accuracy performance for pie charts and line graphs.
Research and Advances

Smart game board and go explorer: a study in software and knowledge engineering

Software engineering is an established discipline that has accumulated and codified more than two decades worth of know-how. Knowledge engineering, on the other hand, is an emerging discipline with lots of issues but, at least so far, little structure. Despite its lack of maturity the practice of knowledge engineering promises to have a noticeable impact on software engineering doctrine. The experimental nature of knowledge engineering goes hand-in-hand with a style of software development best characterized as ‘exploratory,’ which has not been much studied in traditional software engineering.

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Get Involved

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

Learn More