Advertisement

Research and Advances

ALGLIB, a simple symbol-manipulation package

ALGLIB—a library of procedures that perform analytic differentiation and other simple symbolic manipulations—has certain advantages over existing and more comprehensive packages. It can be implemented in a high-level language of the user's choice using a pseudocode available from the authors, and it is easily interfaced with the user's programs.
Research and Advances

Database design: composing fully normalized tables from a rigorous dependency diagram

A new simplified methodology for relational-database design overcomes the difficulties associated with nonloss decomposition. It states dependencies between data fields on a dependency list and then depicts them unambiguously as interlinked bubbles and doublebubbles on a dependency diagram. From the dependency diagram, a set of fully normalized tables is derived.
Research and Advances

Natural language with discrete speech as a mode for human-to-machine

A voice interactive natural language system, which allows users to solve problems with spoken English commands, has been constructed. The system utilizes a commercially available discrete speech recognizer which requires that each word be followed by approximately a 300 millisecond pause. In a test of the system, subjects were able to learn its use after about two hours of training. The system correctly processed about 77 percent of the over 6000 input sentences spoken in problem-solving sessions. Subjects spoke at the rate of about three sentences per minute and were able to effectively use the system to complete the given tasks. Subjects found the system relatively easy to learn and use, and gave a generally positive report of their experience.
Research and Advances

A randomized protocol for signing contracts

Randomized protocols for signing contracts, certified mail, and flipping a coin are presented. The protocols use a 1-out-of-2 oblivious transfer subprotocol which is axiomatically defined.The 1-out-of-2 oblivious transfer allows one party to transfer exactly one secret, out of two recognizable secrets, to his counterpart. The first (second) secret is received with probability one half, while the sender is ignorant of which secret has been received.An implementation of the 1-out-of-2 oblivious transfer, using any public key cryptosystem, is presented.
Research and Advances

Designing for usability: key principles and what designers think

This article is both theoretical and empirical. Theoretically, it describes three principles of system design which we believe must be followed to produce a useful and easy to use computer system. These principles are: early and continual focus on users; empirical measurement of usage; and iterative design whereby the system (simulated, prototype, and real) is modified, tested, modified again, tested again, and the cycle is repeated again and again. This approach is contrasted to other principled design approaches, for example, get it right the first time, reliance on design guidelines. Empirically, the article presents data which show that our design principles are not always intuitive to designers; identifies the arguments which designers often offer for not using these principles—and answers them; and provides an example in which our principles have been used successfully.

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