November 1982 - Vol. 25 No. 11
Features
MINI-EXEC: a portable executive for 8-bit microcomputers
As microprocessor systems and single-chip microcomputers become more complex, so do the software systems developed for them. In many cases, software is being designed that incorporates multiple control functions running asynchronously on a single microprocessor. Here, discussion focuses on the motivation for running such multiple functions under the control of a real-time multitasking executive. A successfully implemented executive whose design is portable and suitable for use on most 8-bit microprocessors is presented.
The “Wolf Fence” algorithm for debugging
The “Wolf Fence” method of debugging time-sharing programs in higher languages evolved from the “Lions in South Africa” method that I have taught since the vacuum-tube machine language days. It is a quickly converging iteration that serves to catch run-time errors.
Information systems curriculum recommendations for the 80s: undergraduate and graduate programs
The recommendations of the 1972 and 1973 ACM Curriculum Committee on Information Systems programs have been influential in the development of degree programs at the bachelor's, master's, and doctoral levels. The earlier curriculum has been revised and updated based on advances in the field over the past nine years. The report discusses the continuing need for education related to the definition, analysis, design, construction, and management of information systems in organizations. The structure of both bachelor's and master's level programs are described and courses are defined. Course outlines include rationale for the courase, course objectives, instructional modes, and a list of topics. Each topic is weighted in terms of suggested percent of time devoted to the subject.
Unionization of professionals in data processing: an assessment of recent trends
The needs of management, unions, employees, and computer professionals combined with existing practices of Labor Relations Boards and the various divisions in the Departments of Labor have combined to create a unique array of social conflicts. At the root are management's interest in keeping many skills in data processing and computing out of bargaining units and the union's interest in including as many of these skills as possible. There is also conflict between past strategies guiding labor relations and the structure and function of professional work in modern organizations. Two recent developments are analyzed: (1) The FAA's success in keeping airports operational with the help of computer-controlled air flow procedures; (2) Management's successful bids to exclude professional engineers working in data processing jobs from bargaining units. At the same time, the National Labor and Mediation Boards have rejected attempts to define data processing jobs including highly skilled systems analysts as a separate craft or class for representation purposes while granting such status to engineers in similar employment situations. If this principle of exclusion from unions of licensed and certified professionals who are doing DP work is established in North America, it may lead to increased labor unrest in many highly automated and data processing industries.
Computer-Aided complexity classification of combinational problems
We describe a computer program that has been used to maintain a record of the known complexity results for a class of 4536 machine scheduling problems. The input of the program consists of a listing of known “easy” problems and a listing of known “hard” problems. The program employs the structure of the problem class to determine the implications of these results. The output provides a listing of essential results in the form of maximal easy and minimal hard problems as well as listings of minimal and maximal open problems, which are helpful in indicating the direction of future research. The application of the program to a restricted class of 120 single-machine problems is demonstrated. Possible refinements and extensions to other research areas are suggested. It is also shown that the problem of determining the minimum number of results needed to resolve the status of all remaining open problems in a complexity classification such as ours is itself a hard problem.
HISDL—a structure description language
The features of a language designed for the description of the structure of computer systems are described. The structure of a system is specified hierarchically as an interconnection of components with each component being a named instance of a component type. The system itself is another component type. The interconnection between components is specified in two ways: either by specifying all the ports that are connected together, or by specifying a component and the ports that are connected to its ports. A structure specification is a list of such connection specifications. The language has an iterative construct for specifying highly regular structures, and a conditional construct is also provided. A component type can be recursively specified while parameterization of component type specifications is supported. The latter is particularly useful for specifying classes of components of similar structure.
The distribution of granule accesses made by database transactions
The problem of characterizing the number of granules (or blocks) accessed by a transaction is important in modeling the performance of database management systems and other applications. Different expressions for this quantity have appeared in the literature under different probabilistic assumptions. These expressions along with one new result are presented with a uniform notation and a clear statement of the assumptions underlying each. The partial order relating the predictions of the expected number of granules accessed is presented.
Distributed computation on graphs: shortest path algorithms
We use the paradigm of diffusing computation, introduced by Dijkstra and Scholten, to solve a class of graph problems. We present a detailed solution to the problem of computing shortest paths from a single vertex to all other vertices, in the presence of negative cycles.
The impact of office automation on the organization: some implications for research and practice
Computer technology has recently been applied to the automation of office tasks and procedures. Much of the technology is aimed not at improving the efficiency of current office procedures, but at altering the nature of office work altogether. The development of automated office systems raises a number of issues for the organization. How will this technology be received by organization members? How will it affect the definition of traditional office work? What will be its impact on individuals, work groups, and the structure of the organization? This paper presents a descriptive model and propositions concerning the potential impacts of office automation on the organization and it stresses the need, when implementing automated office systems, to take a broad perspective of their potential positive and negative effects on the organization. The need for further research examining the potential effects of office automation is emphasized.