Back to Research

Past Research Projects

I have a summary table of the major research projects, organized according to time frame and theme. This was part of the presentation I made when interviewing for the faculty position at University of South Carolina.  It represents a summary of the research directions and pulls together a number of the ideas into one place.  The exercise of doing this as part of my preparation for my first USC seminar was very enlightening for me personally.   Past Research Summary (PDF File)

Industry Research Projects

I will have information on a number of industry research projects, since that is where I have carried out most of my research over the past 15 years or so.  Many of the topics of which I have been involved are reflected in my publications list, which you can get to from this link.  The following reports are not available in my Bibliography.

1. Agents for Monitoring Healthcare Treatment Compliance - HTML, PDF versions.

2. Knowledge Acquisition Environment for Capturing Domain Specifications for Flow-Shop Scheduling Systems - HTML, PDF versions.

3. Using Objects and Patterns for Building Compliance Agents in Healthcare (OOPSLA-98 Workshop on Healthcare Presentation, June 1998 - PDF).

4. Using Intelligent Software Agents to Monitor Patient Adherence to a Medication Regimen (AMIA-98 Spring Conference Presentation, May 1998, American Medical Informatics Association - PDF).

5. Role-playing: Bridging the Gap (OOPSLA-97 Workshop on Objects, Architecture & Domain Analysis Presentation, October 1997 - PDF).

6. Introduction to IDEF0 Modeling: A Short Seminar ( EDA&T-95, August 1995 - PDF).

Research Systems

I'm going to add demo video Mpeg and Jpeg files of systems that have been built. These will be added soon.

Back to Research

Doctoral Research

My doctoral topic was titled The Knowledge Dictionary: The Many-to-Many Coupling of Knowledge Systems to Databases.  The focus of the research was on the development of a framework, modeling notation, and design methodology, for the creation of closely coupled knowledge systems that drew their data sets from on-line relational databases.  The gestation of this work started in the mid-1980s while I was involved in several different projects with NCR Corporation, where I was a senior engineer at the time.  There were a number of disparate systems over which we were trying to build reasoning engines--but which all of these basically used the same data sets.  The data sets were housed in several different relational databases, running in heterogeneous DBMS environments (including, Oracle, Ingres and Informix).

The problem-solving that needed to be done had to do with the creation, management and utilization of product-oriented information and data, associated with different reasoning tasks required to execute tasks managed in different organizations within the enterprise.  This set of problem-solving activities included production planning, production scheduling, and product configuration management and remote support for the NCR Tower product line.  At the time, NCR was generating about US$1 Billion in revenues for its Tower product line of departmental Unix servers; however, the company was encountering considerable problems in field service and support, and in managing the production process, to name a few.  These had considerable impact on the company's bottom line profitability for this product family.  (It should be noted that this is a business driver that was occurring for the company circa 1986-1989.  Other events took place which radically altered NCR's business model, of which I won't go into here.)

The research, thus, was focused on addressing some real data management concerns, at a time when NCR was seriously investigating (and making capital commitments) the use of "artificial intelligence" techniques to address some of these problems.  The focus of my research activities was focused on how to bring these disparate systems together.  But, I realized that this was more than just a matter of integrating a bunch of databases together.  There had to first be a common vocabulary and modeling formalism around which precise and unambiguous descriptions of the domain semantics could be captured for these different domains.  Only then, could comparative representations and inventories of the information be made so as to be re-used in the architecting of knowledge systems (then referred to as "expert systems") that spanned problem-solving domains and organizational boundaries in the NCR enterprise.

Back to Research

Masters Research

There's probably not a lot to say about my Master's work, except that it gave me exposure to a number of different areas--namely, assembler/compiler design, ATNs, FSMs and graph theory, and Chomsky's taxonomy of language grammars.  It was also my first application of principled software engineering techniques in the context of a software design project.  The project was the creation of a target-independent cross-assembler, utilizing a table-driven approach to machine language generation, using a common assembler language front-end.

Back to Research