Though mutation analysis is the primary means of evaluating the quality of test suites, though it suffers from inadequate standardization. Mutation analysis tools vary based on language, when mutants are generated (phase of compilation), and target audience. Mutation tools rarely implement the complete set of operators proposed in the literature,...
An important challenge in machine learning is to find ways of learning quickly from very small amounts of training data. The only way to learn from small data samples is to constrain the learning process by exploiting background knowledge. In this report, we present a theoretical analysis on the use...
We developed a tool that migrates the database schema and the data from one database to another. As DBMSs store the same data by using slightly different data types, one cannot simply copy all the tables and data from the source DBMS to the target DBMS. When our tool, db2db,...
Modern cryptanalysis is generally based on the mathematical theory. However, side-channel analysis has become increasingly popular recently. The benefit of side-channel cryptanalysis is due to the fact that performers can mount attacks with low costs in terms of time and equipment and are highly successful in extracting useful results. The...
Generative programming is a paradigm that seeks to automate the manufacture of software products the same way other industries automated the manufacture of consumer, electric, and mechanical products. I examine how meta-programming fits into the context of generative programming and, along the way, expose theoretic and taxonomic deficiencies. In some...
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....
A cluster of computers can be used to render large amounts of data at very high resolutions. One application of clusters is scientific visualization, which often involves the display of large data sets. This paper describes a prototype system that allows oceanographers to interactively view oceanographic data using a cluster...
Web-based Pesticide Screening Tool (Web-PST) is a web-based software application for evaluating the potential risk of pesticides on the surrounding environment. It uses the formulas and standards specified by the Soil/Pesticide Interaction Screening Procedure Version II (SPISP II). Web-PST closely models the stand-alone Windows application Windows Pesticide Screening Tool (WIN-PST)....
CREEDA-BG (Crop Rotation Economic and Environmental Decision-Aid Budget Generator) is a web-based enterprise budgeting tool that allows a user to manage information on her fields, rotations, crops, and operations, and to view estimates of income and expenses. The user can then use this information to evaluate alternative plans and make...
We have developed a prototype web-based GIS application for tracking the locations of moving entities. This application, which is called the Responder application, consists of two parts: the Responder client and the Responder server. The Responder client is a .NET application written in C#. It reads the location data from...
Interconnection Networks have been used as a high performance communication fabric in parallel processor architectures. Parallel processors built using off-the-shelf components, called clusters, are becoming increasingly attractive because of their high performance to cost ratio over parallel computers.
Many web servers and database servers make efficient use of clustering from...
A Turfgrass Information and Decision Support System (TIDSS) was developed by international collaborators. In this project, an efficient and effective web-based information system, composed of a Turf Content System (TCS), a Turf Resource System (TRS), and the supporting tools, was developed to support the cooperative efforts. A comprehensive schema of...
The Functional Graph Library (FGL) contains type and function definitions to address graph problems. In this report, we present the implementation of several graph algorithms to be added to the FGL. The current implementation of the FGL follows an inductive view of graphs, and all the presented graph algorithms try...
We developed a Web-based GIS/database application designed to help motel businesses reach target customers effectively. By using an interactive map along with a relational database, users can view any particular area of the map and perform some basic operations as their groups privileges permit. With different types of privileges, users...
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...
Spreadsheet programming is ubiquitous in businesses today. Spreadsheets are frequently created by end users with little or no programming experience. Unfortunately spreadsheets often contain errors. For example, 54 field audits of spreadsheets showed that 91 % of the spreadsheets contained errors [ 15]. Our research is aimed at bringing the...
Current math software provides limited interactivity and dynamics when conveying math
ideas. We are developing prototype Java toolkits to display math-embedded documents
in a more dynamic and interactive way. The core task of current project is to create a
Java implementation of a MathML (in which a math expression is...
The amount of research data online is growing exponentially, scattered across a multitude of locations and stored in various formats on a wide variety of platforms. The value of metadata which assists us in determining the relevance, location, and accessibility of data and related research, has become correspondingly more important....
We have developed a framework for Web-based GIS/database applications which allow users to insert, update, delete, and query data with a map interface displayed by Web browsers. The framework was designed so that a Web-based GIS application that uses ArcIMS as a map server can be easily created, customized, and...
The World Trade Center disaster brought into focus, tragically, the need for well-designed evacuation systems in modem buildings. Today, designing an efficient evacuation system has become an integral part of designing large buildings. Simulation software enables an evacuation system to be evaluated. Modern day buildings, whether airports, auditoriums, public office...
WEPP (Water Erosion Prediction Project) is a stand-alone Windows application for predicting water erosion from overland flow on a hillslope. This application was developed by the National Soil Erosion Research Laboratory (NSERL). To make the WEPP application more accessible and easy to use, we created a web version of WEPP,...
Component based software technologies are viewed as essential for creating the software systems of the future. However the use of externally provided components has serious drawbacks for a wide range of software engineering activities often because of a lack of information about the components. One such drawback involves validation of...
A timing attack on a cryptosystem allows the attacker to deduce the secret key information based on the timing differences with respect to different inputs given to an encryption or decryption algorithm. Cryptosystems can take variable amounts of time to process due to performance optimizations in software, branching or conditional...
Component based software technologies are viewed as essential for creating the software systems of the future. However, the use of externally provided component has serious drawbacks for a wide range of software engineering activities often because of a lack of information about the components. One such drawback involves validation of...
Web-Site Generator 3 (WebSiteGen3) is a rapid application development (RAD) tool that generates ASP.NET forms to insert, query, update and delete data stored in the user tables in a SQL Server 2000 database. WebSiteGen3 uses a graphical user interface to show the user tables in a hierarchical tree based on...
Revised Universal Soil Loss Equation (RUSLE) is a standard for estimating soil loss caused by rainfall and overland flow. The current software tool that implements this standard is RUSLE 1.06b, which is a stand-alone DOS application. In this project, we converted the DOS application to a Web application, which we...
"Collaborative filtering has seen considerable success in the areas regarding
information overload and e-commerce, while the current developed systems are
flawed in several respects. Two approaches, the distribution-based algorithm and
the blurring profile solution, are proposed to address several outstanding issues.
The main findings of this research include:
• The...
Regression testing is an expensive testing process used to validate changes made to previously tested software. Different regression testing techniques can have different impacts on the cost-effectiveness of testing. This cost-effectiveness can also vary with different characteristics of test suites. One such characteristic, test suite granularity, reflects the way in...
Test case prioritization techniques schedule test cases for regression testing in an order that increases their ability to meet some performance goal. One performance goal, rate of fault detection, measures how quickly faults are detected within the testing process. The APFD metric had been proposed for measuring the rate of...
Nonnegative matrices have a myriad of applications in the biological, social, and physical genres. Of particular importance are the primitive matrices. A nonnegative matrix, M, is primitive exactly when there is a positive integer, k, such that M[superscript k] has only positive entries; that is, all the entries in M[superscript...
We demonstrate an approach to transform keyword queries automatically into queries that combine keywords appropriately by boolean operations, such as and and or. Most current search engines will preprocess the queries before they really use these queries to search locally stored files or web pages. However, the search engines usually...
Traditionally, research into end-user programming has focused on how to make programming more accessible to end users. However, few researchers have considered providing end users with devices to help improve the reliability of the programs they create. To help improve the reliability of spreadsheets created by end users, we are...
We have developed a web-based software tool for evaluating the potential risk of pesticides on the surrounding environment. The software tool is called Web-based Pesticide Screening Tool (Web-PST). It uses the formulas and standards specified by the Soil/Pesticide Interaction Screening Procedure Version II (SPISP II). Web-PST closely models the stand-alone...
Satellite data ingestion tool is an automated database application for processing and archiving the ocean and land data that is broadcasted by a remote sensing satellite. This Ingestion system has a two-tier architecture, with data processing algorithm forming the first tier and the database server forming the second tier. The...
Previous work has developed the What You See Is What You Test (WYSIWYT) methodology for testing spreadsheets. This methodology has been shown to help end users test, debug, and modify spreadsheets. To date, however, this system has provided no support for creating, reusing, and managing test cases, a process that...
'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...
Real time delivery of products is the context of stochastic demands and multiple vehicles is a difficult problem as it requires the joint investigation of the problems in inventory control and vehicle routing. We model this problem in the framework of Average reward Reinforcement Learning (ARL) and present experimental results...
Due to the rapid growth of wireless technology, there has been a growing interest in the capabilities of ad hoc networks connecting mobile phones, PDAs and laptop computers. The distributed and self-configurable capabilities of ad hoc networks make them very attractive for some applications such as tactical communication for military,...
Reinforcement Learning (RL) is the study of agents that learn optimal
behavior by interacting with and receiving rewards and punishments from an unknown
environment. RL agents typically do this by learning value functions that
assign a value to each state (situation) or to each state-action pair. Recently,
there has been...
Here is the excel spreadsheet that lists the ABET course category values for the undergraduate CS courses. There are nothing more than the best guesses of the UG committee, and are subject to revision. Courses 100 and 200 level are listed as core, courses 300 and 400 are listed as...
Remote sensing is the most practical way to acquire large amounts of land cover data for monitoring and understanding environmental change, so it is important to be able to map land cover from imagery. Maps defining land cover patches as polygons rather than pixels greatly improve processing efficiency in models...
Events are an important concept in the Microsoft windows operating system. When a
program runs interactively, it uses a user interface or a console to communicate with the
user. Background services, however, do not have such mechanisms; instead, they use
events to notify the user about changes and to report...
Analysis of programs forms an important activity in the field of software engineering. It is necessary to help understand the code, which facilitates comprehensive testing, maintenance and optimization of code. Aristotle is a tool for analyzing programs written in C. We have designed a system on similar lines for Java...
With the rapid development of Internet technology and popularity of Web solutions, the Internet has become a major means for collecting information. The Weatherlnfo system is conceived and developed to provide weather data for end users in tabular and graphic formats over the Internet. In order to make data retrieval...
Interoperability is the ability to enable different systems to work together and exchange data. Interoperability between different systems is achieved by using common standards and specifications. This paper talks about our research work on interoperability in Calendaring and Scheduling. There are many calendaring and scheduling software products on the market...
Current approaches to presentation of mathematics (on paper or in electronic format have usability drawbacks that make learning and appreciation of mathematics challenging and often frustrating. In a framework of a big research project of identifying new approaches to communicating mathematical ideas in a highly usable and effective manner, we...
Recent work has shown that AdaBoost can be viewed as an algorithm that maximizes the margin on the training data via functional gradient descent. Under this interpretation, the weight computed by AdaBoost, for each hypothesis generated, can be viewed as a step size parameter in a gradient descent search. Friedman...
Many approaches for achieving intelligent behavior of automated (computer) systems involve components that learn from past experience. This dissertation studies computational methods for learning from examples, for classification and for decision
making, when the decisions have different non-zero costs associated with them. Many practical applications of learning algorithms, including transaction...
This dissertation explores and analyzes the performance of several Bayesian anytime inference algorithms for dynamic influence diagrams. These algorithms are compared on the On-Line Maintenance Agent testbed, a software artifact permitting comparison of dynamic reasoning algorithms used by an agent on a variety of simulated maintenance and monitoring tasks. Analysis...
Spreadsheets are arguably the most widely used programming language in use today, yet spreadsheets commonly contain errors. Research shows that regardless of the experience of the end user, an alarming number of spreadsheets contain errors (91% in recent field audits). Most spreadsheets are created by end users with little or...
In this report we present Java/MP, a multiparadigm language designed as an extension to Java. Java/MP is an
upward compatible superset of Java and incorporates the object oriented, functional and logical paradigms.
Java/MP programs are compatible with the standard Java virtual machine. Many of the ideas in Java/MP have
been...
A binary code of length n is called a balanced code if each codeword contains exactly ⌊n/2⌋ (or ⌈n/2⌉) ones and ⌈n/2⌉ (or ⌊n/2⌋) zeros. In this paper, we give two improved methods for encoding and decoding the balanced codes. The first one, called improved single map, improves the computation...
Spreadsheet languages are the most commonly used end-user programming paradigm, yet spreadsheets commonly contain errors. Research shows that a significant number of spreadsheets (20%-40%) created by end users contain errors. In an attempt to reduce this error rate, this work presents an assertion propagation system for an end-user spreadsheet programming...
E-commerce has begun to evolve beyond simple web pages to more sophisticated ways of conducting e-business transactions, such as through electronic advertising, negotiation, and delivery. However, to participate in these advances requires the skills of professional programmers, and end-user owners of small businesses often cannot justify this expense. In this...
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...
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....
The Component Object Model (COM) defines a completely standardized mechanism for creating objects and for clients and objects to communicate. Unlike traditional object-oriented programming environments, these mechanisms are independent of the applications that use object services and of programming languages used to create the objects. In the present work, a...
Logic Sampling, Likelihood Weighting and AIS-BN are three variants of stochastic sampling, one class of approximate inference for Bayesian networks. We summarize the ideas underlying each algorithm and the relationship among them. The results from a set of empirical experiments comparing Logic Sampling, Likelihood Weighting and AIS-BN are presented. We...
In this project we implemented WebSiteGen2, which is a software tool that automatically generates HTML pages and server-side scripts for a Web-based database application. A user of WebSiteGen2 can select the tables and columns for which HTML pages and server-side scripts are generated. The menus for this selection process are...
The Elliptic Curve Digital Signature Algorithm (ECDSA) is the elliptic curve analog of the Digital Signature Algorithm (DSA) and a federal government approved digital signature method. In this thesis work, software optimization techniques were applied to speed up the ECDSA for a particular NTST curve over GF(p). The Montgomery multiplication...
Researchers in the Forms/3 group have previously developed the WYSIWYT methodology, exploring a way of systematically testing spreadsheet languages. The previous work presented the WYSIWYT methodology for individual spreadsheet cells, and later partially extended it to large grids in which some cells share the same formula. The Forms/3 spreadsheet language...
Tree patterns are natural candidates for representing rules and hypotheses in many tasks such as information extraction and symbolic mathematics. A tree pattern is a tree with labeled nodes where some of the leaves may be labeled with variables, whereas a tree instance has no variables. A tree pattern matches...
Windows Exploratory Testing (WET) is examined to determine whether testers working in pairs produce higher quality results, are more productive, or exhibit greater confidence and job satisfaction than testers working alone. WET is a form of application testing where a tester (or testers) explores an unknown application to determine the...
The temporal behavior in applications involving visual data can be critical for the correctness of some programs. Forms/3 allows the user to specify temporal behaviors in an independent way, without introducing extraneous code in the original spreadsheet, whereas some other languages define new language devices specific to time. In this...
The Soil Conditioning Index (SCI) aids the conservationist in designing crop rotations and residue management practices when low organic matter, poor soil tilt, and crusting problems are identified. The Natural Resources and Conservation Services (NRCS) field staff and others use the SCI as a qualitative tool during conservation planning. In...
Spreadsheet language programs, which include commercial spreadsheets, are among the most common form of software in use today. Unlike more "traditional" forms of software however, spreadsheet language programs are created and maintained by end-users with little or no programming experience. As a result, a high percentage of these programs contain...
It is widely believed that there is not enough experimentation in the field of computer science. One area in particular in which additional experimentation is needed involves regression testing of large, real software. Regression testing is the expensive process of validating changes made to previously tested software. One reason why...
In order to aid comparison of estimates of genetic parameters between dominant and codominant makers for population genetics society, we developed a genetic dominance simulation program to determine how the dominance and biallelism could affect the estimation of population genetic statistics. The simulation indicates that genetic diversities within populations based...
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...
The use of mobile devices is increasing and these devices run on batteries. Therefore, it becomes important to save power in these devices. To do so, we need to have a mechanism that estimates the power consumption in transmission as well as power used by the CPU while processing a...
Abstract: In this project, our goal is to design a flipping algorithm for computing the Voronoi diagram of simple polygons. As preparation towards designing a flipping algorithm, we re-implemented the ear cutting algorithm of using a standard geometric library COAL. This new Implementation is compatible with COAL, We have designed...
The new Technical Report Management System (TRMS) is a client/server web application developed for the Compute Science Department. It provides web services like online browsing, viewing, searching and online database administration including creating and modifying the existing bibliographic records. It is a multi-tiered, component-based application that deploys the latest J2EE...
Structure Query Language (SQL) is widely used to access data stored in relational database systems. Although a powerful and flexible language, SQL can also be complex and hard to learn. For most new SQL users, it's easy to write SQL statement by following SQL grammar and syntax rules, but it's...
A video server is the multimedia equivalent of a data file server. As video goes digital video servers that support digital media are required for production and broadcasting in television companies. Grass Valley Group provides comprehensive digital video solutions through a range of video servers called Profiles.
The Profile Media...
In this project, we have investigated three different techniques for plagiarism detection and have compared its effectiveness against that of an unaided human grader. The techniques investigated were word frequency analysis, sentence inclusion analysis and sub string inclusion analysis. We found that a combination of word frequency analysis and sub...
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...
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...
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...
Graphics resource allocation has often existed on the periphery of graphics research, taking second place to faster or more realistic algorithms for global illumination and modeling. Most research has focused on generating sets of images that best match the effects one might see in photographs. While this approach works well...
Researchers have hypothesized that if we could estimate the probability that a fault in a code component will a cause a failure, we could use this estimate to improve the fault-detection effectiveness of code-coverage-based testing. If this hypothesis could be supported, it would motivate further research in this area and...
Test case generation in software testing is a process of developing a set of test data that satisfies a particular test adequacy criterion. It is desirable to automate this process since doing it manually is not only technically difficult but also tedious and time-consuming. Although there has been considerable research...
An important objective of tactical ad hoc networks is to deliver threat information from sensors to shooters efficiently and quickly. The information sent to a particular shooter should contain warnings about threats that are within some distance and/or within some time of the shooter's current location. In this thesis we...
Specifying varying speeds and temporal relationships is necessary when programming graphical animations, but support for temporal programming has usually been done by adding new language features to a Visual Programming Language (VPL), and these features must be mastered over and above the other aspects of the VPL. However, some researchers...
Spreadsheet languages, which include commercial spreadsheets and various research systems, have proven to be flexible tools in many settings. Research shows, however, that spreadsheets often contain faults. This thesis presents an integrated testing and fault localization methodology for spreadsheets. This methodology allows spreadsheet developers to engage in modeless development,
testing...
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 is an attempt to increase the power of a spreadsheet and try to use the spreadsheet as a powerful programming tool. The basic idea is to treat each cell of the spreadsheet as an object. The cell (Object) could be programmed, that is, the attributes and the functionality of...
The arithmetic portions of almost all modern processor architectures are of very similar design. We use the term "traditional" to describe this design, the primary characteristics of which are native support for integer and floating-point number types and special disjoint instructions and hardware for each supported type. Decades of refinement...
The goal of this project is to design and implement an information system for self-service chemistry stockroom at Oregon State University. The system will have the following major functionalities: (1) Recording inventory purchases and sales; (2) Customer account administration and periodic billing of customers; (3) Inventory monitoring; ( 4) Allowing...
Is it possible to achieve some of the benefits of formal testing within the informal programming conventions of the spreadsheet paradigm? We investigate an approach that attempts to do so via the development of a testing methodology for this paradigm. The "What You See Is What You Test" (WYSIWYT) methodology...
Algorithms and MP1 parallel C programs are developed for constructing wavelet expansions of long-range potential functions with O(n) time complexity. A new high frequency correction algorithm is introduced. The emphasis is on the common potential expansion encountered in physics that behaves as l/r in three-dimensions. The central B-Splines are used...
MIDAS is an application framework developed at College of Oceanic and Atmospheric
Science for interactive remote data acquisition and visualization. The objective is to provide
dynamic reconfiguration of the sensing process. The current MIDAS application framework
utilizes the code mobility and portability of Java 2 platform. The Jini technology for...
Although there has been research into ways to design spreadsheet systems to improve the processes of creating new spreadsheets and of understanding existing ones, little attention has been given to helping users of these environments test their spreadsheets. To help address this need, we introduce two visual approaches to testing...