ppxscal/embedding_network huggingface dataset:
Tailoring the software process to project goals and environments
Authors: V. R. Basili, H. D. Rombach
Venue: Proceedings of the 9th international conference on Software Engineering (1987)

This paper presents a methodology for improving the software process by tailoring it to the specific project goals and environment. This improvement process is aimed at the global software process model as well as methods and tools supporting that model. The basic idea is to use defect profiles to help characterize the environment and evaluate the project goals and the effectiveness of methods and tools in a quantitative way. The improvement process is implemented iteratively by setting project improvement goals, characterizing those goals and the environment, in part, via defect profiles in a quantitative way, choosing methods and tools fitting those characteristics, evaluating the actual behavior of the chosen set of methods and tools, and refining the project goals based on the evaluation results. All these activities require analysis of large amounts of data and, therefore, support by an automated tool. Such a tool &mdash; TAME (Tailoring A Measurement Environment) &mdash; is currently being developed.
Low cost management of replicated data in fault-tolerant distributed systems
Authors: Thomas A. Joseph, Kenneth P. Birman
Venue: ACM Transactions on Computer Systems (TOCS) (1986)

Many distributed systems replicate data for fault tolerance or availability. In such systems, a logical update on a data item results in a physical update on a number of copies. The synchronization and communication required to keep the copies of replicated data consistent introduce a delay when operations are performed. In this paper, we describe a technique that relaxes the usual degree of synchronization, permitting replicated data items to be updated concurrently with other operations, while at the same time ensuring that correctness is not violated. The additional concurrency thus obtained results in better response time when performing operations on replicated data. We also discuss how this technique performs in conjunction with a roll-back and a roll-forward failure recovery mechanism.
An expert system for a resource allocation problem
Authors: James R. Slagle, Henry Hamburger
Venue: Communications of the ACM (1985)

We describe an expert system for resource allocation in a particular military domain. The system incorporates variants of several important techniques of artificial intelligence and makes the first use of the Merit system for question selection. This technique enables the system to direct the acquisition of information by finding questions with a high ratio of probable importance to difficulty. In the current application, each resource is a military weapon, each task to which such a resource can be allocated is firing at a military target, and the objective function is the expected reduction in value of targets. The coefficients that relate a particular resource to a particular task are not provided explicitly. Instead, in the first phase of the allocation process, the system uses a computation network to determine the effectiveness of each individual weapon against each prospective target. The network, built by a domain expert in advance, allows reasoning with logical, Bayesian, and expert-defined operators. After the calculation of individual effectiveness values, portions of an allocation tree are constructed to determine good allocation plans for the set of weapons. The individual effectiveness values are used to direct the traversal and pruning of the allocation tree.
Teaching first year programming: a proposal
Authors: Ahmed Ferchichi, Ali Jaoua
Venue: ACM SIGCSE Bulletin (1987)

The first contact of students with programming is of prime importance and ought to be controlled carefully. This paper proposes an approach for managing this first contact.
A short proof of a conjecture of De Remer and Pennello
Authors: Thomas J. Sager
Venue: ACM Transactions on Programming Languages and Systems (TOPLAS) (1986)

In this paper we offer a short proof of the DeRemer-Pennello conjecture that if the LR(0) automaton for a grammar G contains a state p and a nonterminal A such that (p, A) is a nonterminal transition, (p, A) includes+ (p, A) and Read(p, A) is not empty, then grammar G is not LR(k) for any k.
Parallel geometric algorithms on mesh-connected computers
Authors: C.-S. Jeong, T. D. Lee
Venue: Proceedings of the 1987 Fall Joint Computer Conference on Exploring technology: today and tomorrow (1987)

We show that a number of geometric problems can be solved on a \trn x \trn mesh connected computer(MCC) in 0(\trn) time, which is optimal to within a constant factor, since a nontrivial data movement on an MCC requires \gW(\trn) time. The problems studied here include multipoint location, planar point location, trapezoidal decomposition, intersection detection, intersection of two convex polygons, Voronoi diagram, the largest empty circle, the smallest enclosing circle, etc. The 0(\trn) algorithms for all of the above problems are based on the classical divide-and-conquer problem solving strategy.
A three dimensional wire frame graphics system
Authors: Uday G. Gujar
Venue: ACM SIGAPL APL Quote Quad (1987)

This paper describes the design and implementation of an APL based three dimensional graphics system. The system is composed of several functions which are grouped into individual modules such as modelling functions, viewing functions, transformation functions, view aid functions, special view functions, text manipulating functions and several other helpful functions. The task of obtaining a perspective view from an arbitrary observer position has been simplified - all that is needed is the (x, y, z) co-ordinates of the eye position and the 3-D description of the object(s). One can obtain parallel, perspective and oblique projections using this system. Functions are provided to obtain a movie type strip chart of perspective views of an object as the eye position moves slowly along a specified path. Several functions, such as plane sweep, surface revolution, are provided to simplify the task of generation of 3-D description of the objects. Many sample functions are written to generate various types of 3-D objects; an accompanying workspace contains these functions. The paper contains several illustrative examples.
Automating the Transformational Development of Software
Authors: Stephen F. Fickas
Venue: IEEE Transactions on Software Engineering (1985)

This paper reports on efforts to extend the transformational implementation (TI) model of software development [1]. In particular, we describe a system that uses AI techniques to automate major portions of a transformational implementation. The work has focused on the formalization of the goals, strategies, selection rationale, and finally the transformations used by expert human developers. A system has been constructed that includes representations for each of these problem-solving components, as well as machinery for handling human-system interaction and problem-solving control. We will present the system and illustrate automation issues through two annotated examples.
Moving from DoD to OSI protocols: A first step
Authors: M Witt
Venue: ACM SIGCOMM Computer Communication Review (1986)

Recently, there has been a great deal of interest in the possibility that the U.S. Department of Defense might transition to the use of the OSI Protocol Standards. There are many difficult issues involved in such a transition. This paper takes a brief look at the general issues involved and then proposes a first step toward OSI compatibility - the ability for DoD and OSI protocols to coexist on the same network. This is achieved through the implementation of a "Dual-IP Gateway", which supports both the DoD and OSI Internet Protocols.
Construction of Universal Instances for Loop-Free Network Databases Using a Join-Like Operation
Authors: S. Jajodia, F. N. Springsteel
Venue: IEEE Transactions on Software Engineering (1987)

In this paper, we give a polynomial-time method to construct effectively the unique universal instance, using as few nulls as possible, from any loop-free network database, via a "minimal information" extension of natural join. Our results can be seen as concretely and quickly implementing the universal relation view for databases which are not pairwise consistent.
A resilient distributed protocol for network synchronization
Authors: I A Cimet, P R Srikanta Kumar
Venue: ACM SIGCOMM Computer Communication Review (1986)

We present a resilient distributed protocol that enables a synchronous algorithm to run on an asynchronous network. The protocol is resilient in the sense that it can continue providing network synchronization in the presence of topological changes in the underlying communication network of a distributed system. These changes are caused by link/node failures and recoveries that occur while running the protocol. In general, the protocol is a useful tool in the design of resilient distributed algorithms as it isolates the algorithm from the characteristics of the communication network.
Polyhedral subdivision methods for free-form surfaces
Authors: Ahmad H. Nasri
Venue: ACM Transactions on Graphics (TOG) (1987)

One of the central issues in computer-aided geometric design is the representation of free-form surfaces which are needed for many purposes in engineering and science. Several limitations are imposed on most available surface systems: the rectangularity of the network describing a surface and the manipulation of surfaces without regard to the volume enclosed are examples. Polyhedral subdivision methods suggest themselves as a solution to these problems. Their use, however, is not widespread for several reasons such as the lack of boundary control, and interpolation and interrogation capabilities. In this paper the original work on subdivision methods is extended to overcome these problems. Two methods are described, one for controlling the boundary curves of such surfaces, and another for interpolating points on irregular networks. A general surface/surface intersection algorithm is also provided: seven decisions need to be made in order to specify a particular implementation. The algorithm is also suitable for intersecting other classes of surfaces amongst which are the popular B&eacute;zier and B-spline surfaces.
Deadlock-Free Message Routing in Multiprocessor Interconnection Networks
Authors: W. J. Dally, C. L. Seitz
Venue: IEEE Transactions on Computers (1987)

A deadlock-free routing algorithm can be generated for arbitrary interconnection networks using the concept of virtual channels. A necessary and sufficient condition for deadlock-free routing is the absence of cycles in a channel dependency graph. Given an arbitrary network and a routing function, the cycles of the channel dependency graph can be removed by splitting physical channels into groups of virtual channels. This method is used to develop deadlock-free routing algorithms for k-ary n-cubes, for cube-connected cycles, and for shuffle-exchange networks.
A prototype electronic encyclopedia
Authors: Stephen A. Weyer, Alan H. Borning
Venue: ACM Transactions on Information Systems (TOIS) (1985)

We describe a prototype electronic encyclopedia implemented on a powerful personal computer, in which user interface, media presentation, and knowledge representation techniques are applied to improving access to a knowledge resource. In itself, an electronic encyclopedia is an important information resource, but this work also illustrates the issues and approaches for many types of electronic information retrieval environments. In the prototype we make dynamic use of the structure and semantics of the text articles and index of an existing encyclopedia, while experimenting with other forms of representation, such as simulation and videodisc images. We present a long-term vision of an intelligent user-interface agent; summarize previous work related to futuristic encyclopedias, electronic books, decision support systems, and knowledge libraries; and outline current and potential research directions.
A prototype framework for knowledge-based analog circuit synthesis
Authors: R. Harjani, R. A. Rutenbar, L. R. Carley
Venue: Proceedings of the 24th ACM/IEEE Design Automation Conference (1987)

An organization for a knowledge-based analog circuit synthesis tool is described. Analog circuit topologies are represented as a hierarchy of functional blocks; a planning mechanism is introduced to translate performance specifications between levels in this circuit hierarchy. A prototype implementation, OASYS, synthesizes sized transistor schematics for simple CMOS operational amplifiers from performance specifications and process parameters, and demonstrates the workability of the approach.
Pattern formation and chaos in networks
Authors: Clifford A. Pickover
Venue: Communications of the ACM (1988)

Chaos theory involves the study of how complicated behavior can arise in systems that are based on simple rules, and how minute changes in the input of a system can lead to great differences in the output. Using computer graphics, the dynamic behavior of chaos-producing networks is explored, and convergence maps reveal a visually striking and intricate class of displayable objects.
An experimental comparison of RGB, YIQ, LAB, HSV, and opponent color models
Authors: Michael W. Schwarz, William B. Cowan, John C. Beatty
Venue: ACM Transactions on Graphics (TOG) (1987)

The increasing availability of affordable color raster graphics displays has made it important to develop a better understanding of how color can be used effectively in an interactive environment. Most contemporary graphics displays offer a choice of some 16 million colors; the user's problem is to find the right color. Folklore has it that the RGB color space arising naturally from color display hardware is user-hostile and that other color models such as the HSV scheme are preferable. Until now there has been virtually no experimental evidence addressing this point. We describe a color matching experiment in which subjects used one of two tablet-based input techniques, interfaced through one of five color models, to interactively match target colors displayed on a CRT. The data collected show small but significant differences between models in the ability of subjects to match the five target colors used in this experiment. Subjects using the RGB color model matched quickly but inaccurately compared with those using the other models. The largest speed difference occurred during the early convergence phase of matching. Users of the HSV color model were the slowest in this experiment, both during the convergence phase and in total time to match, but were relatively accurate. There was less variation in performance during the second refinement phase of a match than during the convergence phase. Two-dimensional use of the tablet resulted in faster but less accurate performance than did strictly one-dimensional usage. Significant learning occurred for users of the Opponent, YIQ, LAB, and HSV color models, and not for users of the RGB color model.
A Performance Comparison of Multimicro and Mainframe Database Architectures
Authors: Philip Heidelberger
Venue: IEEE Transactions on Software Engineering (1988)

This paper considers the performance of a hypothetical multimicroprocessor back-end database machine relative to that of a mainframe database system. The class of workloads considered is high volume transaction processing. Analytic queueing models of the two architectures are constructed and used in parametric performance studies. The performance sensitivities with respect to transaction complexity, the amount of overhead required to implement the distributed database function, the amount of skew in the data access pattern, and the buffer miss ratio are determined. These performance sensitivities are determined for technology available in both 1986 and for that projected for the early 1990's.
Distributed Version Management for Read-Only Actions
Authors: William E. Weihl
Venue: IEEE Transactions on Software Engineering (1987)

Typical concurrency control protocols for atomic actions, such as two-phase locking, perform poorly for long read-only actions. We present four new concurrency control protocols that eliminate all interference between read-only actions and update actions, and thus offer significantly improved performance for read-only actions. The protocols work by maintaining multiple versions of the system state; read-only actions read old versions, while update actions manipulate the most recent version. We focus on the problem of managing the storage required for old versions in a distributed system. One of the protocols uses relatively little space, but has a potentially significant communication cost. The other protocols use more space, but may be cheaper in terms of communication.
Consensus in the presence of partial synchrony
Authors: Cynthia Dwork, Nancy Lynch, Larry Stockmeyer
Venue: Journal of the ACM (JACM) (1988)

The concept of partial synchrony in a distributed system is introduced. Partial synchrony lies between the cases of a synchronous system and an asynchronous system. In a synchronous system, there is a known fixed upper bound &Dgr; on the time required for a message to be sent from one processor to another and a known fixed upper bound &PHgr; on the relative speeds of different processors. In an asynchronous system no fixed upper bounds &Dgr; and &PHgr; exist. In one version of partial synchrony, fixed bounds &Dgr; and &PHgr; exist, but they are not known a priori. The problem is to design protocols that work correctly in the partially synchronous system regardless of the actual values of the bounds &Dgr; and &PHgr;. In another version of partial synchrony, the bounds are known, but are only guaranteed to hold starting at some unknown time T, and protocols must be designed to work correctly regardless of when time T occurs. Fault-tolerant consensus protocols are given for various cases of partial synchrony and various fault models. Lower bounds that show in most cases that our protocols are optimal with respect to the number of faults tolerated are also given. Our consensus protocols for partially synchronous processors use new protocols for fault-tolerant &ldquo;distributed clocks&rdquo; that allow partially synchronous processors to reach some approximately common notion of time.
The Crystal Multicomputer: Design and Implementation Experience
Authors: D. J. DeWitt, R. Finkel, M. Solomon
Venue: IEEE Transactions on Software Engineering (1987)

This paper presents an overview of the hardware and software components of the Crystal multicomputer project. The goal of the Crystal project is to design and implement a vehicle that serves a variety of research projects involving distributed computation. Crystal can be used simultaneously by multiple research projects by partitioning the available processors according to the requirements of each project. Users can employ the Crystal multicomputer in several ways. Projects such as operating systems and database machines that need direct control of processor resources (clock, memory management, communication devices) can be implemented using a reliable communication service (the "nugget" that resides on each node processor. Projects that prefer a higher-level interface can be implemented using the Charlotte distributed operating system. Finally, users interested in Crystal principally as a cycle server can run UNIX® jobs on node machines using the "remote" unix service. Development, debugging, and execution of projects can take place remotely under the control of any of several UNIX hosts. Acquiring a partition of machines, resetting each machine, and then loading an application onto each machine is performed by invoking a UNIX-resident program (the "nuggetmaster"). Communication with node machines in a partition is facilitated by a virtual terminal and window mechanism. Crystal is fully operational and has been used to support a variety of research projects. To illustrate the flexibility provided by the Crystal environment, four of these projects are described.
Reasoning About Probabilistic Behavior in Concurrent Systems
Authors: S. Purushothaman, P. A. Subrahmanyam
Venue: IEEE Transactions on Software Engineering (1987)

Certain aspects of the behavior of concurrent systems are intrinsically probabilistic in nature, e.g., the behavior of imperfect communication media used in network protocols. We address the problem of expressing such behavior in an algebraic calculus for communicating systems. The introduction of probabilistic information in the calculus alleviates the problem of proving liveness, as proving liveness now amounts to proving that its probability is 1. A methodology for proving both safety and liveness is developed and used in proving the correctness of the Alternating Bit Protocol.
Parsing distfix operators
Authors: Simon L. Peyton Jones
Venue: Communications of the ACM (1986)

The advantages of user-defined distfix operators&mdash;a syntactic convenience that enhances the readability of programs&mdash;can be obtained as an extension of almost any programming language without requiring dynamic changes to the parser.
Traditional, Semantic, and Hypersemantic Approaches to Data Modeling
Authors: Walter D. Potter, Robert P. Trueblood
Venue: Computer (1988)

An overview is given of past present data-modeling trends, and future directions are identified. The three traditional and commonly used data models that gained wide acceptance in the late 1960s and early 1970s and are used extensively today, namely the relational, hierarchical, and network models, are reviewed. Semantic data models that attempt to enhance the representation of operational information by capturing more of the meaning about data values and relationships are described. Enhancements to semantic data models that characterize hypersemantic data models and emphasize capturing inferential relationships are discussed.
A Formal Definition of Data Flow Graph Models
Authors: K M Kavi, B P Buckles, U N Bhat
Venue: IEEE Transactions on Computers (1986)

In this paper, a new model for parallel computations and parallel computer systems that is based on data flow principles is presented. Uninterpreted data flow graphs can be used to model computer systems including data driven and parallel processors. A data flow graph is defined to be a bipartite graph with actors and links as the two vertex classes. Actors can be considered similar to transitions in Petri nets, and links similar to places. The nondeterministic nature of uninterpreted data flow graphs necessitates the derivation of liveness conditions.
Data compression using static Huffman code-decode tables
Authors: David R. McIntyre
Venue: Communications of the ACM (1985)

Both static and dynamic Huffman coding techniques are applied to test data consisting of 530 source programs in four different languages. The results indicate that, for small files, a savings of 22-91 percent in compression can be achieved by using the static instead of dynamic techniques.
The cookie cutter algorithm for handling mixed hierarchy
Authors: N G Sullivan, J B Rosenberg
Venue: ACM SIGDA Newsletter (1987)

When doing symbolic design in a mixed hierarchy system, primitives that route between cells must be encapsulated in cells themselves to make the job of the compactor easier. To free the designer from that tedium, a transparent process between layout and compaction creates new cells and drops the primitives into them. The designer is thus freed from creating new routing cells every time the design changes, and compaction is more efficient since it can be truly hierarchical.