ppxscal/embedding_network huggingface dataset:
Testing student micro computer skills through direct computer use
Authors: Michael M. Delaney
Venue: ACM SIGCSE Bulletin (1989)

This paper introduces the concept of testing students' microcomputer skills through direct computer use. Techniques are discussed which make it feasible for the instructor to grade the disk and printout that are produced by each student. The process can be generally applied to testing many different skill areas, and has been effectively used for tests on DOS and utilities, wordprocessing, spreadsheet work, and data base. Practical examples of test creation and grading of spreadsheet tests are presented. Further developments of the technique are suggested.
Tools for real time system design
Authors: R. A. Orr, M. T. Norris, R. Tinker, C. D. V. Rouch
Venue: Proceedings of the 10th international conference on Software engineering (1988)

This paper describes the development of a toolset that supports the specification and design of large real time systems. The starting point is the evolution of a method suitable for use in practical environments; for example in the specification of telecommunication systems. The characteristics that are required of a good specification method for real time systems are discussed and a method based upon the CCITT SDL notation is described which aims to satisfy these characteristics. The component parts in the toolset to support this method are described.
Diagnosing multiple faults using knowledge about malfunctioning behavior
Authors: Tim Hansen
Venue: Proceedings of the 1st international conference on Industrial and engineering applications of artificial intelligence and expert systems - Volume 1 (1988)

A technical fault diagnosis system based on knowledge about the structure of a device and the behavior of its components is presented. This approach allows knowledge about components to be reused for new devices and simplifies maintenance of the fault diagnosis system. A new method for diagnosing multiple faults using this representation is presented and discussed. The method assumes that both normal functioning and malfunctioning behavior are described for components in the form of user-defined constraints. A prototype implementation for parts of the method exists and has been compared with a traditional fault-tree implementation of a trouble-shooting system for an separator application.
On Implementing Large Binary Tree Architectures in VLSI and WSI
Authors: H. Y. Youn, A. D. Singh
Venue: IEEE Transactions on Computers (1989)

The authors present an efficient scheme for the layout of large binary-tree architectures by embedding the complete binary tree in a two-dimensional array of processing elements. Their scheme utilizes virtually 100% of the processing elements in the array as computing elements; it also shows substantial improvements in propagation delay and maximum edge length over H-tree layouts. They shown that their layouts readily lend themselves to fault-tolerant designs for overcoming fabrication defects in large-area and wafer-scale implementations of binary-tree architectures.
Theory-W Software Project Management Principles and Examples
Authors: B. W. Boehm, R. Ross
Venue: IEEE Transactions on Software Engineering (1989)

A software project management theory is presented called Theory W: make everyone a winner. The authors explain the key steps and guidelines underlying the Theory W statement and its two subsidiary principles: plan the flight and fly the plan; and, identify and manage your risks. Theory W's fundamental principle holds that software project managers will be fully successful if and only if they make winners of all the other participants in the software process: superiors, subordinates, customers, users, maintainers, etc. Theory W characterizes a manager's primary role as a negotiator between his various constituencies, and a packager of project solutions with win conditions for all parties. Beyond this, the manager is also a goal-setter, a monitor of progress towards goals, and an activist in seeking out day-to-day win-lose or lose-lose project conflicts confronting them, and changing them into win-win situations. Several examples illustrate the application of Theory W. An extensive case study is presented and analyzed: the attempt to introduce new information systems to a large industrial corporation in an emerging nation. The analysis shows that Theory W and its subsidiary principles do an effective job both in explaining why the project encountered problems, and in prescribing ways in which the problems could have been avoided.
Data abstraction mechanisms in SINA/ST
Authors: Mehmet Aksit, Anand Tripathi
Venue: ACM SIGPLAN Notices (1988)

This paper describes a new data abstraction mechanism in an object-oriented model of computing. The data abstraction mechanism described here has been devised in the context of the design of Sina/st language. In Sina/st no language constructs have been adopted for specifying inheritance or delegation, but rather, we introduce simpler mechanisms that can support a wide range of code sharing strategies without selecting one among them as a language feature. Sina/st also provides a stronger data encapsulation than most of the existing object-oriented languages. This language has been implemented on the SUN 3 workstation using Smalltalk.
The object-oriented software development method: a practical approach to object-oriented development
Authors: E. Colbert
Venue: Proceedings of the conference on Tri-Ada '89: Ada technology in context: application, development, and deployment (1989)

The Object-Oriented Software Development Method (OOSD) includes object-oriented requirements analysis, as well as object-oriented design. OOSD is a practical method of developing a software system which focuses on the objects of a problem throughout development. OOSD's focus on objects early in the development, with attention to generating a useful model, creates a picture of the system that is modifiable, reusable, reliable, and understandable &mdash; the last perhaps most important because the picture of a software system created by a development method must be an effective device for communication among developers, customers, management, and quality-assurance personnel. Most object-oriented methods competing for the attention of the software developer actually apply traditional Structured Analysis (function-based), or variations of Structured Analysis, to requirements activity, and work through a transition process to an object-oriented design [1,2,7,10,11]. In these methods the developer begins with functionally-based requirements analysis, and only reaches an object-oriented design by the intermediary step of converting a traditional, functionally-decomposed data flow diagram (DFD) to an object-oriented DFD (or equivalent). In this conversion process, objects are identified through a set of heuristics which group &ldquo;transformations&rdquo; in the DFD generated during requirements analysis. These methods carry a number of interesting but unfortunate burdens. Lower-level objects, which directly relate to real-world objects, are easily identified, but higher-level objects are generally more arbitrary, so that developers do not consistently identify a hierarchy of objects which achieves significant improvement in software engineering goals (e.g., reliability, maintainability, reusability). The heuristics for identifying objects usually relate the DFD transforms to the object that controls execution of an operation, rather than the object which &ldquo;owns&rdquo; the operation. These methods generally ignore the need to convert behavior descriptions of the DFD transforms into behavior descriptions of the objects. Finally, the use of Structured Analysis in an otherwise object-oriented approach complicates the tracing of requirements by forcing the developer to look first to DFD transforms and their behavior descriptions, and then to the objects.
Necessary and Sufficient Ergodicity Condition for Open Synchronized Queueing Networks
Authors: G. Florin, S. Natkin
Venue: IEEE Transactions on Software Engineering (1989)

A necessary and sufficient ergodicity condition for complex open queueing systems is given. The queueing networks considered belong to a particular class of unbounded Markov stochastic Petri nets. These systems can include synchronization features like fork and join arrivals and departures, and feedback between behavior of different queues. Grouped and correlated arrivals and departures are also allowed. An example and a proof of the ergodicity results are presented.
Massively parallel switch-level simulation: a feasibility study
Authors: S. A. Kravitz, R. E. Bryant, R. A. Rutenbar
Venue: Proceedings of the 26th ACM/IEEE Design Automation Conference (1989)

This work addresses the feasibility of mapping the COSMOS switch-level simulator onto a computer with thousands of simple processors. COSMOS preprocesses transistor networks into Boolean behavioral models, capturing the switch-level behavior of a circuit in a set of Boolean formulas. We describe a class of massively parallel computers and a mapping of COSMOS onto these computers. We discuss the factors affecting the performance of such a massively parallel simulator including: the amount of parallelism in the simulation model, performance measures for massively parallel machines, and the impact of event scheduling on simulator performance. We have developed compilation tools which automatically map a MOS circuit onto a massively parallel computer. Massively parallel switch-level simulation is illustrated by describing our pilot implementation on a 32k processor Thinking Machines Connection Machine System.
REXDC&mdash;a remote execution mechanism
Authors: C.-C. Chang
Venue: ACM SIGCOMM Computer Communication Review (1989)

A new concept, Remote EXecution with During Construct (REXDC), is introduced. In addition to the Remote Procedure Call (RPC) functionality, it allows the client to execute cooperatively with the server during the call period. The During Construct (DC) is a unit where effective cooperation between the client and the server is provided. A mechanism is proposed to integrate the REXDC into a many-client and many-server environment. The mechanism provides a way to program different types of process to process communication and synchronization.
The chemical abstract machine
Authors: Gerard Berry, Gerard Boudol
Venue: Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages (1989)

We introduce a new kind of abstract machine based on the chemical metaphor used in the &Ggr; language of Ban&acirc;tre al. States of a machine are chemical solutions where floating molecules can interact according to reaction rules. Solutions can be stratified by encapsulating subsolutions within membranes that force reactions to occur locally. We illustrate the use of this model by describing the operational semantics of the TCCS and CCS process calculi. We also show how to extract a higher-order concurrent &lgr;-calculus out of the basic concepts of the chemical abstract machine.
Changes and extensions in the C family of languages
Authors: Roger E. Lessman
Venue: ACM SIGCSE Bulletin (1989)

Some very important current developments are taking place within the C family of programming languages. Via the ANSI C Standard, extensions to C provide for stricter type-checking, better control of portability, and improved efficiency at run-time. The C++ language has further enhanced C to support data abstraction and inheritance. This paper briefly summarizes some of the C extensions which result from the ANSI C Standard and which will become important to courses which utilize C as a programming vehicle and as the subject for the study of the block-structured programming paradigm.
RIDL*: a tool for the computer-assisted engineering of large databases in the presence of integrity constraints
Authors: O. De Troyer
Venue: ACM SIGMOD Record (1989)

Tools and methods that transform higher level formalisms into logical database designs become very important. Rarely if ever do these transformations take into account integrity constraints existing in the &ldquo;conceptual&rdquo; model. Yet these become essential if one is forced to introduce redundancies for reasons of e.g. query efficiency. We therefore adopted the Binary Relationship Model (or &ldquo;NIAM&rdquo;) that is rich in constraints and built a flexible tool, RIDL*, that graphically captures NIAM semantic networks, analyzes them and then transforms them into relational designs (normalized or not), under the control of a database engineer assisted by a rule base. This is made possible by a rule-driven implementation of a new, stepwise synthesis process, and its benefits are illustrated by its treatment of e.g. subtypes. RIDL* is operational at several industrial sites in Europe and the U.S. on sizeable database projects.
Detection of Ada Static Deadlocks Using Petri Net Invariants
Authors: Tadao Murata, Sol M. Shatz, Boris Shenker
Venue: IEEE Transactions on Software Engineering (1989)

A method is presented for detecting deadlocks in Ada tasking programs using structural; and dynamic analysis of Petri nets. Algorithmic translation of the Ada programs into Petri nets which preserve control-flow and message-flow properties is described. Properties of these Petri nets are discussed, and algorithms are given to analyze the nets to obtain information about static deadlocks that can occur in the original programs. Petri net invariants are used by the algorithms to reduce the time and space complexities associated with dynamic Petri net analysis (i.e. reachability graph generation).
Children's collaborative use of a computer microworld
Authors: Janice Singer, Stephanie D. Behrend, Jeremy Roschelle
Venue: Proceedings of the 1988 ACM conference on Computer-supported cooperative work (1988)

This paper will discuss a framework and methodology for understanding the use of computers in collaborative learning. In particular, we are interested in how learning occurs when students work together using a computer microworld. Collaborative settings provide a particularly rich environment for studying learning. Many theorists (see Brown and Palinscar, in press) have proposed that learning occurs when students have to explain, develop, or justify their ideas to others. In a collaborative setting, students communicate their ideas in order to coordinate their activity towards shared goals. When dilemmas arise in the course of productive work, the combination of communication and activity can lead to learning (Vygotsky 1978, Dewey 1923, Mead 1934). The microworld used in this studies, the &ldquo;Envisioning Machine&rdquo; (Roschelle, 1987) was designed to help students learn Newtonian physics. The Envisioning Machine presents students with an interactive graphical simulation of the Newtonian concepts of velocity and acceleration. This graphical model was intended to be an externalization of the mental models that physicists use when solving problems. Originally we thought that by manipulating and observing graphical objects on the computer screen, students would internalize correct Newtonian models of velocity and acceleration. However, our observations of pairs of students interacting with the Envisioning Machine has lead us to adopt an alternate view. Students do not simply internalize an external model. Instead, they continually invent interpretations of the model as they interact with it. Though students work by developing their own interpretations, these interpretations converge towards the target concepts. The methodology we present helps us to understand how students collaboratively invent, develop, and refine their ideas. We are interested in how interactions both between the students and the computer and between the students themselves enables them to move from one state of knowledge to the next. These interactions form the basis for cognitive and social activities that support the evolution and eventual rejection or acceptance of ideas. In the body of this paper, we examine characteristics of the microworld and the students learn process. First, we present a characterization of the Envisioning Machine as a computer-supported collaborative learning environment. We propose that this environment can be viewed as a Notational System. Second, we present our methodology with a case study that illustrates how one pair of students learn in this environment.
Representation and use of design rules within a technology adaptable CAD system
Authors: J. S. Aude, H. J. Kahn
Venue: Proceedings of the 26th ACM/IEEE Design Automation Conference (1989)

This paper describes the representation and use of technology related information in a CAD system designed to support technology adaptable applications. This information is described as design rules using a special-purpose language, DRDL, and is stored in a Design Rule Data Base. The main features of DRDL are noted and the mechanisms that can be implemented in application programs which use design rule information are discussed
The future of high performance computers in science and engineering
Authors: C. Gordon Bell
Venue: Communications of the ACM (1989)

A vast array of new, highly parallel machines are opening up new opportunities for new applications and new ways of computing.
Computer vision and its application to APL
Authors: I. Feldberg
Venue: ACM SIGAPL APL Quote Quad (1987)

Computer Vision refers to the application of human vision techniques to a computer, simply put, teaching the computer to see. This branch of computer science is well rooted in several other branches, including: image processing, artificial intelligence, and computational geometry. From these fields, as well as its own, come many interesting algorithms that can be used to form computer vision systems. These systems have been used in the past to perform such operations as inspecting tools on an assembly line and maneuvering a vehicle without human intervention. These tasks require two very different types of computer vision systems. In the first, a very limited domain can be covered, that is, the computer has to recognize only a few things (e.g. tool, belt, background). In the second, the computer has to be much smarter. It must recognize many diverse things (ground, walls, sky, obstacles). In this project, a medium-scale computer vision task was chosen. We were to take an image of a mandrill (the famous one) and create algorithms to accurately label parts of the image. After some thought, APL was chosen as the language to program the task in. Not only was APL easy to work with, but it proved to be a creative factor. In APL, we were able to use array techniques that were simply unavailable in any other language.
Performance Measurement for Parallel and Distributed Programs: a Structured and Automatic Approach
Authors: C.-Q. Yang, B. P. Miller
Venue: IEEE Transactions on Software Engineering (1989)

Novel approaches are presented for designing performance measurement systems for parallel and distributed programs. The first approach involves unifying performance information into a single, regular structure that reflects the structure of programs under measurement. The authors define a hierarchical model for the execution of parallel and distributed programs as a framework for the performance measurement. A complete different levels of detail in the hierarchy. The second approach is based on the development of automatic guidance techniques that can direct users to the location of performance problems in the program. Guidance information from such techniques supplies facts about problems in the program and provides possible answers for the further improvement of program efficiency. A performance measurement system, called IPS, has been developed as a prototype of the authors' model and design. Some of the test results from IPS are also discussed.
Fair Edge Deletion Problems
Authors: L. Lin, S. Sahni
Venue: IEEE Transactions on Computers (1989)

The notation of fair edge-deletion problems is introduced. These arise when it is desirable to control the number of edges incident to any node that are either deleted or remain following edge deletion. Six such problems were formulated for the case where the resultant graph is known to be acyclic, and the complexity of four of these is easily determined from known results. The remaining two are the authors' focus. It is shown that the problem of finding a minimum-degree deletion graph H such that G-H is acyclic is NP-hard when G is undirected, and is solvable in linear time when G is directed.
Dynamic construction of animated help from application context
Authors: Piyawadee Sukaviriya
Venue: Proceedings of the 1st annual ACM SIGGRAPH symposium on User Interface Software (1988)

Help provided as traditional text descriptions has become incompatible with graphical interfaces. Animation suggests a better association between help and a graphical interface. This paper describes a prototype system implemented to demonstrate the use of dynamic scenarios as help. A scenario animates the execution of a task as a sequence of steps in the actual interface and work context. Each scenario is dynamically generated depending on the current work context of the user. The system reasons from the user's request for help as well as from the context what and how much to animate. In addition to the animation driving mechanism, construction of animated help requires knowledge about application semantics, user interface semantics, user interface syntax and application context. The application semantics determines the steps needed to satisfy the help request. The user interface semantics determines whether the current state of the graphical interface will support the appropriate animated help scenarios. The user interface syntax gives detailed information on how each step will actually be performed. Preconditions are used in both application and user interface semantics for reasoning in help construction. The restoring of context is performed using help session history data to return to the original work context after an animation session. The implemented example uses a directory tree program where the graphical interface is kept simple. In future research the concept will be applied to more complicated applications.
Constrained nonlinear least squares: an exact penalty approach with projected structured quasi-Newton updates
Authors: Nezam Mahdavi-Amiri, Richard H. Bartels
Venue: ACM Transactions on Mathematical Software (TOMS) (1989)

This paper is concerned with the development, numerical implementation, and testing of an algorithm for solving constrained nonlinear least squares problems. The algorithm is an adaptation of the least squares case of an exact penalty method for solving nonlinearly constrained optimization problems due to Coleman and Conn. It also uses the ideas of Nocedal and Overton for handling quasi-Newton updates of projected Hessians, those of Dennis, Gay, and Welsch for approaching the structure of nonlinear least squares Hessians, and those of Murray and Overton for performing line searches. This method has been tested on a selection of problems listed in the collection of Hock and Schittkowski. The results indicate that the approach taken here is a viable alternative for least squares problems to the general nonlinear methods studied by Hock and Schittkowski.
Physical design equivalencies in database conversion
Authors: Mark L. Gillenson
Venue: Communications of the ACM (1990)

As relational technology becomes increasingly accepted in commercial data processing, conversion of some of the huge number of existing navigational databases to relational databases is inevitable. It is thus important to understand how to recognize physical design modifications and enhancements in the navigational databases and how to convert them to equivalent relational terms as applicable.