DADiSP® White Paper

The Task


Scientists and engineers (S&Es) are in the business of converting data into information. With the incredible increase in processing power of personal computers and data acquisition software, scientists and engineers can now collect reams of data at the push of a button. However, converting that data into useful information often remains a daunting task.

The Scientific Method


Scientific inquiry is rooted in the basic tenets of the scientific method:
  1. Ask a question.
  2. Formulate a hypothesis as a possible answer to the question.
  3. Design an experiment to test the hypothesis.
  4. Collect data from the experiment.
  5. Analyze the data.
  6. Accept or reject the hypothesis based on the results of the analysis.
Thus, data analysis is a fundamental and necessary step in virtually every scientific endeavor. Due to economy and flexibility, personal computers are the tool of choice for both scientific data acquisition and data analysis. To understand the necessary components of data analysis software, we must first look at the data analysis user.

Common User Attributes


S&Es who use data analysis software share four common attributes:
  1. S&Es are not professional programmers. Although often familiar with the tasks required to write software routines, technical professionals get paid to produce results, not code.
  2. S&Es are experts in their application area. The technical professional knows precisely what methods, calculations and graphics are required to produce acceptable results in their particular field.
  3. S&Es work in technical application areas that are extremely diverse. Applications run the full gamut of scientific inquiry including signal processing, statistical analysis, test and measurement, noise and vibration, medical research, process monitoring, image processing, communications, quality management and just about anything and everything else.
  4. S&Es routinely work with huge volumes of data and rely on graphical representation as an interpretation aid. The raw numbers are overwhelming and must be reduced to application specific graphical form to convey meaningful information. The great diversity of graphs employed by S&Es has lead to the term scientific visualization.

Two Approaches


Because of the numerous target applications, we see at least two avenues of designing data analysis software:
  1. Create many application specific programs, such as chromatography, modal analysis, filter design, etc. that target specific customers.
  2. Create a general purpose tool that can be adapted to the many application areas.
Obviously, a general purpose tool is highly preferable from a software development and marketing point of view. In addition, engineering problems can span several disciplines making some application specific programs too limiting. Finally, add in modules can be provided to allow the tool to further target specific applications similar to an application specific product.

Design Requirements


From the above common attributes, we can derive several design implications a general purpose analysis tool must address to effectively satisfy the needs of S&Es:
  1. S&Es are not professional programmers
    » The tool must be easy to use.
  2. S&Es are experts in their application area
    » The tool must support customization by the end user.
  3. S&Es work in technical application areas that are extremely diverse
    » The tool must be extremely flexible.
  4. S&Es routinely work with huge volumes of data and rely on graphical representation as an interpretation aid
    » The tool must produce graphical results in a natural way.

The Traditional Approach


The traditional approach of creating a technical data analysis tool has been to provide an interactive, high level language. To meet the requirements of S&Es, these languages offer the following features:

Products such as Matlab, APL, IDL and a host of other analysis languages fall into this category.

The great benefit of a language based solution is flexibility - almost any application requirement can be programmed. Of course, this flexibility comes at a tremendous price - the S&E must program almost everything! Programming is a difficult, low productivity chore not in the direct realm of the S&E's expertise.

The Business Spreadsheet


The business spreadsheet is an extremely popular and flexible software tool. The spreadsheet derives its tremendous power from the ability of the user to easily set up relationships between numeric cells in a relatively intuitive manner. When cells are updated with new values, dependent cells automatically recalculate. The user is effectively writing an application specific program without actually programming in the traditional sense. In addition, almost all spreadsheets provide a mechanism to reduce numeric data to graphical form. Thus, the spreadsheet represents a flexible, easy to use tool that provides some degree visualization without the heavy burden of programming. Not surprisingly, surveys consistently show the overwhelming majority of S&Es use business spreadsheets for technical data analysis over every other solution - even though this tool was not designed to handle technical data.

The Spreadsheet User Model


In fact, the business spreadsheet is designed to manipulate a small collection of scalar values. These values are processed and perhaps displayed as a final graph. For example, a user might enter values such as sales, cost of sales, expenses, taxes and more taxes to produce a basic income statement. Several periods of this data could then be appended together to produce a simple trend chart. The business user starts with numbers and perhaps ends up with a graph.

The S&E User Model


In contrast, in the course of data analysis, the S&E begins with graphs, almost always creates additional graphs, and perhaps produces a meaningful scalar as a final result. For example, a mechanical engineer would integrate the acceleration data of a vehicle chassis crash test to produce a velocity graph. This graph by itself conveys valuable information. However, the derived velocity data would in turn be converted into the frequency domain to isolate the important natural frequencies. Finally, the most prominent frequency in a certain band would be singled out as the resonant frequency of the chassis.

In this case, the S&E starts with a graph and ends up with a scalar - the exact opposite reduction chain of the business user. In addition, the volume of data routinely processed by the S&E rapidly chokes the business spreadsheet.

Limitations of the Business Spreadsheet


The business spreadsheet is a flexible and powerful tool that S&Es often "shoehorn" to meet their analysis requirements. However, because it was designed for business use, the standard spreadsheet presents many limitations for S&E data analysis applications:


DADiSP - the S&E's Spreadsheet


DADiSP (pronounced day-disp) is spreadsheet designed specifically for S&Es. DADiSP capitalizes on the power and familiarity of the business spreadsheet while at the same time, overcoming its limitations in S&E applications.

Instead of cells that contain numbers, a DADiSP Worksheet consists of analysis windows that automatically display data as a table or graph. Like a business spreadsheet, when the data in an analysis window changes, all dependent windows automatically update. Specific, custom analysis can be accomplished naturally without the need for traditional programming. DADiSP employs contemporary user interface elements such as pull down menus, dialog boxes, toolbar buttons and on line help to provide a productive, familiar environment. And unlike business spreadsheets, DADiSP is designed to accommodate huge data series and render graphs with optimal speed.

Data import is extremely flexible with support for ASCII and binary file types. Imported data resides in a separate series data base and can be exported to several file formats. Complex numbers are fully supported. DADiSP includes 2000 built-in analysis routines tailored specifically to S&E applications. DADiSP also offers several optional processing modules that target specific application areas.

DADiSP - Language Included


To provide full user customization, DADiSP includes SPL, Series Processing Language. SPL is a full featured, incrementally compiled series processing language based on the omnipresent C/C++ language. As a result, SPL programs have a clean and familiar style about them. SPL also contains useful constructs of languages such as APL and Matlab. Thus, the C/C++ programmer is immediately at home with SPL and the Matlab or APL programmer will recognize their favorite programming idioms.

DADiSP - The Best of Both Worlds


By combining the ease of use and familiarity of the business spreadsheet with the power and flexibility of an interpreted analysis language, DADiSP is designed to be the analysis tool of choice for both the "point and click" and "type and enter" S&E user. A few of DADiSP's more popular features include:
DADiSP is a registered trademark of DSP Development Corporation.