Sign In

Communications of the ACM

Table of Contents


President's letter

ACM forum

Programming pearls: self-describing data

Electronic markets and electronic hierarchies

By reducing the costs of coordination, information technology will lead to an overall shift toward proportionately more use of markets—rather than hierarchies—to coordinate economic activity.

Power over users: its exercise by system professionals

Analysis and awareness of the types of power that IS professionals exercise over users can improve the productivity of both parties.

Systems analysis: a systemic analysis of a conceptual model

Adopting an appropriate model for systems analysis, by avoiding a narrow focus on the requirements specification and increasing the use of the systems analyst's knowledge base, may lead to better software development and improved …

A versatile data structure for edge-oriented graph algorithms

An abstract graph module that allows for easy and secure programming of a great number of graph algorithms is implemented by symmetrically stored forward and backward adjacency lists, thus supporting edge-oriented traversals  …

Arithmetic coding for data compression

The state of the art in data compression is arithmetic coding, not the better-known Huffman method. Arithmetic coding gives greater compression, is faster for adaptive models, and clearly separates the model from the channel  …

Rule-based versus structure-based models for explaining and generating expert behavior

Flexible representations are required in order to understand and generate expert behavior. Although production rules with quantifiers can encode experiential knowledge, they often have assumptions implicit in them, making them …

Relationships between selected organizational factors and systems development

Three organizational variables influence the quality of the system development process: available resources (both human and financial), external influences on the development process, and the project team's exposure to information …