Software Configuration Management (SCM) is a concept of trying to group the changing artifacts of software development to try to manage the complexity of modern day software. This paper provides a roadmap for improving the SCM support process based on a meta-model. I developed a model that defines key practice...
The Sacagawea testbed has been designed to support testing and development of decision making models, and associated uncertainty management techniques, that are appropriate under real-time problem solving constraints. Conceptually, it provides a simulated temporal and spatial environment, the latter consisting of a terrain grid of elevation and tree cover data,...
Watering a lawn involves several factors such as laying out the sprinklers and valves, trenching, laying pipes, cables, etc. The primary goal is to ensure uniform watering subject to various constraints. We present some abstract problems involving sprinkler layout and some solutions with theoretical worst case bounds on their performance....
This project aims at building a Java application and a Java applet that would simulate a Stern-Gerlach laboratory in Quantum Mechanics. The project provides a tool for allowing the student to quickly design and run on the computer screen a number of experiments involving spin systems. This application could be...
Spreadsheet languages are widely used by end users for many different purposes. Previous research shows that spreadsheets often contain faults. To help end users test their spreadsheets, in previous research, a testing methodology for spreadsheets has been developed. Th.is methodology is supported by an automatic test case generation (ATCG) methodology....
This report describes "VIGRAM" (Visual Programming) which is a program understanding and complexity metric analysis tool for Pascal programs. VIGRAM is implemented on the Macintosh as one part of the "O.S.U." (Qregon Speedcode Universe) project. With VIGRAM, the source code of a Pascal procedure can be displayed as a visual...
Performance of a reliable storage subsystem for a centralized database system was studied by simulation. The reliable storage subsystem studied consists of three redundant disk units that are updated one at a time from a consistent database state to another consistent database state, Thus, even if a central processor and/or...
The demand for improved controllers creates the need for synthesis techniques which emphasize optimality. Optimality automatically infers stability. This thesis presents one such technique which is not limited to linear systems. The theory of dynamic programming is applied to the synthesis of optimal controllers with emphasis on missile flight control...
Wireless technologies advance rapidly in the recent time. The maJor initiative is the realization of the third generation wireless network that provides high bandwidth access to digital data on the Internet. Moreover, recent improvements in computer and embedded systems have enabled portable devices with sufficiently high computing capability.
The combination...
Monitoring the performance of electrical utility assets is a critical activity for power companies. Gas chromatography has long been established as the analytical technique of choice for assessment of transformer fault conditions by detection of the presence of key fault gases through analysis of transformer oil. Chromatography is one of...
'Search engine for a book library section' was developed for the Philosophy department. This Search Engine is a user interface application used for the purpose of searching for words or phrases as the need may be from a directory of books in a section of the Philosophy department library. The...
I present a new heuristic search approach to compute approximate answers for the probability query in belief nets. This approach can compute the 'best' bounds for a query in a period of any given time (if time permitted, it will get an exact value). It inherits the essence of Symbolic...
Shape transformation is a technique for gradually changing one geometric shape to another. A recent approach presents the use of thin-plate radial basis functions as opposed to traditional "blobby sphere" implicit functions. Without the explicit evaluation of he energy function, this approach combined the two traditional steps into one by...
Wireless Application Protocol (WAP) is an industry standard aimed to bring the web to handheld devices. The handheld devices are constrained by battery life and it becomes important that power is conserved across web transactions. The power consumed by the handheld device is directly proportional to the time taken for...
This paper discusses Java Bytecode Obfuscation techniques that make the reverse engineering task more difficult. This paper is structured as follows: Java virtual machine and Java language specifications are discussed first. Then the paper talks about different techniques for protecting software and then details one promising approach named Obfuscation. The...
Personalization is defined as a process that facilitates interaction among consumers and providers such that individual consumers are enabled to more readily access the content and services of providers, and individual providers are enabled to more effectively and easily deliver their content and services to consumers. This project presents a...
This survey looks at five different polygon breaking algorithms and compares them. The criteria for comparison are:
1. Complexity of the algorithm.
2. The number and type of subpolygons produced.
3. The classes of input polygons that can be broken.
The best algorithm is then coded and a comparison is...
As XML becomes more and more popular, easy-to-use and powerful XML query languages are in great need. Xing is a visual query and restructuring language for XML documents. The objective of this project is to develop a basic version of Xing, including a user-oriented XML query interface and a simple...
The material in this paper is divided into the following four chapters for convenience. Chapter 1 explains, how the idea of fault testing changed from testing the machine instructions to testing the hardware in logic circuits. Chapters 2, 3 and 4 present the different approaches considered, namely:
1. Path sensitizing...
This project is about helping protein naturalists understand the protein structure. The database system developed here provides a convenient tool for scientists to explore conformational information in a database of known structures and thereby provide researchers with a deeper and wider view of the empirical data. In this way, it...
BIOMAP (Biogeochemistry model (BIOME-BGC) - Mapped Atmospheric Plant Soil System (MAPSS)) is a computer program that predicts ecosystem distribution and behavior over spatial grid cells of 10km at a daily timestep. It needs to consider events like fire for a more realistic prediction. This project involved integrating a new fire...
This paper presents the initial results from an empirical study of mechanical design engineers. In this study, six engineers were video-taped solving real mechanical design problems. Preliminary analysis of this protocol data has yielded several important findings, including (a) mechanical designers progress from systematic to opportunistic behavior as the design...
Acoustic position estimation is used where high accuracy navigation is required over a small area, such as for searching or for collecting gravitational or geomagnetic data. In this position estimation method, a surface ship or submersible periodically sends out a high-frequency acoustic 'ping' at a prearranged frequency. This ping is...
System architectures for interconnecting large numbers of processors are being widely studied [AG82,TH75,TR82]. Of particular interest in such architectures is the exploitation of concurrency among processors. This concurrency can be parallelism, in which different parts of a single data case are processed at the same time, or pipelining, in which...
This grant supported acquisition of a minicomputer system for departmental research. The equipment selected is a DEC VAX-11/750 system, installed in remodeled space in the Computer Science (formerly Farm Crops) Building. Grant funds for equipment acquisition were supplemented by support from the Tektronix Foundation.
After completion of the physical facilities...
Advanced computer architectures are centered around the parallel computer systems. This project is focused on the experiment on two parallel computer architectures : Sequent Balance 21000 shared memory multiprocessor and Cogent XTM distributed system.
A set of benchmark programs are implemented using "C" language and Dynix parallel programming library on...
Exploratory Data Analysis (EDA) is a lesser known field which has outgrown the bounds of statistics. It differs from ordinary, or “confirmatory”, data analysis. Originated by John Tukey, EDA aspires toward an open-ended meta-goal: to discover “all interesting” [nontrivial, normal form, valid] hypotheses about a domain that is represented by...
Recent advances in diagnostic expert systems have been limited by the crucial Knowledge Acquisition Problem: to bring expert heuristics into logical, conditional rule forms useful for computer aided diagnosis. Some automatic systems with potential biomedical relevance that do acquire knowledge are reviewed here, and analyzed from the standpoint of possible...
Three different approaches to type checking have been taken in object-oriented programming languages. Smalltalk-80 uses run-time type checking. C++ uses subtypes. A third alternative is to use parameterized types. We examine the difficulties of programming in an object-oriented fashion with compile-time type checking and argue that parameterized types are better...
There is disagreement about the role and importance of typographic style (source code formatting and commenting) in program comprehension. Results from experiments and opinions in programming style books are mixed.
This paper presents principles of typographic style consistent and compatible with the results of program comprehension studies. It introduces the...
X2 is an object-oriented programming language. Object-oriented programming models everything in the world as objects that have some local state that may vary with time. If the state of an object varies with time the object is mutable. If the state is time independent the object is immutable. Each object's...
A database to be used by electrical circuit design, test, and repair expert systems must support both structural data and inferential data about the circuit. It is well known that engineering databases must support dynamic schema (re)definition of the structural data and entity-based access to it. We analyze this requirement...
This paper presents the results of a controlled experiment comparing debugging abilities of novice, intermediate and skilled student programmers. Debugging performance differences were studied using two single-page Pascal programs: a binary search program and a median calculation program. Two types of semantic errors, array bounds and undefined variable, and two...
Many studies have shown that expert programmers are more effective at debugging programs than novice programmers. These studies have suggested that the major reason for this difference is due to the experts' superior comprehension of the program. This paper reports two experiments which investigated expert and novice student programmers program...
FORTRAN permits both explicit and implicit options for both data declaration and type conversion features. This study investigated the effects of explicit and implicit data declaration and type conversion features on a program comprehension task performed by FORTRAN programmers in an introductory programming course. The results indicated that both factors...
This study examined the UNIX command abbreviation schemes preferred by expert and novice UNIX programmers. The two parts of the conducted experiment were: subjective rating of UNIX command abbreviations for each of the six abbreviation categories (acronym, combination, contraction, identity, synonym, and truncation); subjects suggested descriptive command names for UNDC...
In this short paper, we present an implementation method for a distributed commit/ termination protocol for a distributed database system. The protocol, which handles both commit and termination processing of distributed transactions, is represented by communicating Moore machines. Several advantages of our approach are discussed.
A theory for resiliency control of distributed database systems is developed, and schemes that preserve the consistent global database state in the presence of site crashes and message link failures are discussed. The schemes can at least theoretically be paired with any concurrency control scheme that produces y-serializable executions. Further,...
A typical database system maintains target data, which contain information useful for users, and access path data, which facilitate faster accesses to target data. Further, most large database systems support concurrent processing of multiple transactions. For a static database system model, where units of concurrency control are not dynamically created...
It is highly desirable for a distributed database system to achieve logically continuous operation even if some sites or message links fail. In this paper, we describe a scheme that can automatically reconfigure a fully-replicated distributed database system upon subsystem failures. The scheme can tolerate total failures of some sites....
An execution of a database system is considered correct if its net effect is as if transactions were executed serially, and such an execution is called serializable. In this short paper we show that the serializability test problem can be reduced to a simple pebbling problem. Our characterization is intuitive...
A concurrency and resiliency control scheme for a distributed database system with replicated data is discussed. The scheme, true-copy token scheme, uses true-copy tokens in order to designate the physical data copies (true copies) that can be identified with the current logical data that are globally unique, and then it...
In this paper, the current demands for veterinary mobile and emergency services in the state of Oregon will be reviewed as well as how the human EMS model can be translated into veterinary triage and workflow. The proposed idea for Veterinary Emergency Mobile services consists of several potential working models,...
Machine learning models are powerful tools which may aid in the prediction of survival outcomes of cancer patients. This study evaluated eight classification models and eight regression models on their ability to predict survival outcomes on breast cancer and prostate cancer data sets from the SEER database. The most accurate...
Microprogramming has evolved since its introduction in 1951 by Maurice Wilkes. The most significant change that has taken place is the recent growth of interest in user microprogramming. However, user microprogramming is a difficult task because of various complex and intricate features of the host processors. A microprogrammer must be...
Tbc expanding complexity of database application worlds, and the accelerating pace of change of these worlds mandate data models which support some of the tasks of data interpretation which formerly were borne by the applications programs. Chief among these are the support for virtual data, definition of transactions, and enforcement...
This tutorial discusses one of the oldest problems in computing: how to search and retrieve keyed information from a list in the least amount of time. Hashing - a technique that mathematically converts a key into a storage address - is one of the best methods of finding and retrieving...
The "style metric" of Berry and Meekings is purported to quantify the lucidity of software written in the C programming language. We used a modification of this metric to try and identify error-prone software. Our results indicate that this metric seems to bear little relationship to the density of errors...