Joe's Projects
Here are some of the past, current, or future projects.
Most of these projects are
industry related though some of them were sponsored as
research at the University of Illinois. My involvement with
these projects ranged from simple programming to that of
architecture, design and implementation. I was involved with
project management in over half of the following projects.
- AbdoExam - An
Interactive Graphical and Textual Abdominal Examination
Record System developed as a prototype to research ways to
assist the physician during their examination. The design
and implementation used object-oriented and hypertext techniques.
- Medigate -
The MEDIGATE System (Medical Examination Direct Iconic and Graphic Augmented Text Entry
System) is a computer enhanced interactive graphic and textual record
of the findings from physical examination designed to
provide ease of user input and to support organization and
processing of the data characterizing these findings. The design of this system employees an object-oriented approach through
the direct manipulation of graphical objects integrated with hypertext
and semantic networking technologies to build a system that is more natural
to the user.
- Medistat - MEDISTAT is designed to record and help interpret laboratory results,
more specifically pathology results. The application
incorporates graphical pattern matching along with some
primitive diagnostic capabilities. Object-oriented design
and implementation and hypertext techniques is used throughout to provide for easy
ways to build the diagnostic application to the needs of
individual users.
- Ragged Edge Health
Risk Appraisal - This video game for junior-high or
high-school health education classes was mentioned by the
Wall Street Journal on June 21,
1989. It is a real-time non-prescriptive health education video
game which demonstrates (but does not preach) the effects of
health behavior choices on undesirable outcomes such as
mortality, disfigurement, or even the loss of a driver's
license.
- Aids Health Risk
Appraisal - The AIDS/HIV Health Risk Appraisal is a
confidential interactive risk communication computer program
designed to answer: "What is the probability that I have ever
been exposed to HIV, and do I need a blood test?" and "What
is the probability that I have been exposed to HIV in the
last year, and how do I reduce that probability in the next
year?"
- Blood Bank Analysis
Tool - The Blood Bank Analysis System is a
computer-based decision support tool for blood banks and the
blood banking industry to assist in
estimation of the medical, economic, legal and policy
consequences of current vs. alternative screening test sequences
for human immunodeficiency virus (HIV) and for hepatitis markers
in donated blood. This system was designed and implementation
using object-oriented techniques and languages and was
deployed on Windows.
- Tractor Information System
- The project was originally conceived as design and
implementation of an information system for managing a
number of tractor specifications stored in a relational
database. The system operates in a distributed
environment and is based on client-server architecture. It
provides a collaborative environment where engineers can
interactively share in the design of new specifications of
the tractors. This project was developed as an extension
to the following Wheel Loader Information environment and
incorporated object-oriented design and implementation,
specifically Smalltalk to provide for the needed dynamic behavior.
- Wheel Loader Information
System - We have developed a large scale X-window
program which accesses a relational database system for
keeping track of the specifications of equipment for
Caterpillar. A metadata environment was created for generating the
UIMX, Oracle, and C code that was then compiled based upon
the descriptive metadata. This allowed for major changes
to the code. A new table could be added to the
specification database without writing and debugging tons of
code since all you had to do was update the metadata
describing the mapping into the real database and
re-generate the application. The primary limitation was
that it could not be done at run-time and compile time was
starting to become very lengthy. During the technology transfer
phase, Smalltalk was chosen as the language to allow for a more
dynamic generation of the GUIs and the mappings to the database.
- Scenario Planning Tool -
Scenario Planning is being researched as a potential tool to assist
decision makers in being prepared for upcoming events. A
scenario is a story of what might happen; possible elements
are world trade, oil/commodity prices, political/economic
stability, productivity. This project was developed using
ParcPlace VisualWorks and GemStone.
- Financial
Modeling Framework - I've been working on a fairly
large financial modeling project with Caterpillar.
Our main result (from the point of view
of Object-Oriented Solutions) is a framework for financial
modeling. It lets you quickly build applications that
examine financial data stored in a relational database and
produces profit and loss statements, balance sheets,
detailed analysis of departments, sales regions, and
business lines, with the ability to drill down until you hit
individual transactions. MetaData is used extensively for
storing your business rules in a database.
- Web Research - I have been
involved with the development and project management of a
few different web tools while working at the National Center
for Supercomputing Applications. These applications have
ranged from simple web-applications running CGI scripts
interacting with databases etc, to actual web-based
frameworks that provide support for building a set of
web-based applications that are usually built by using an
web-based interface. Some of these systems used MetaData to
either store the business rules or GUI descriptions.
- Innoverse -
Innoverse is a black-box framework for telecommunications
billing developed by ClearSystems. Innoverse makes it
possible to quickly produce billing systems for all kinds of
telecom service including cellular, PCS, local number
portability, conventional local and long distance, and
Immarsat satellite services. It is developed under
ParcPlace Smalltalk and is integrated with Versant. It was
developed using the ENVY environment. MetaData was used
extensively for storing the rules in such a manner that a
new application could be built with much less effort than normally.
- Packaging Tool -
The Packaging Tool is a VisualWorks Smalltalk class library
that provides structures for constructing and configuring
software packages as basic components of applications.
When building an image for either a run-time application or
a development environment, patches, extra utilities,
commercial add-ons, and modules for the application need to
be filed in. These code segments often make use of classes
and methods not in the base VisualWorks image. To ensure
that all the code is filed in the right order, dependencies
between the code pieces need to be established. This can be
accomplished by grouping the code segments into packages and
setting up dependencies between the packages. Building a
customized image then just requires specifying which
packages are desired. The Packaging Tool provides a simple
interface for specifying which packages are needed with any
dependencies (on other packages) they may have.
- Newborn Screening - This is a project by the Illinois Department
of Public Health to provide a computerized system to help
support the screening of new borns. There are a few genetic
diseases that if observed in the very early years of the
life of a baby, they can be treated and the individual can
live a normal life. This is an object-oriented system that
is being developed in VisualAge Smalltalk. Work is being
done for developing Enterprise objects that can be used as
the building blocks for quite a few other projects.
- Immunization - This is a project by the Illinois Department
of Public Health to provide a computerized system to help
support the followup on immunization of individuals.
This is an object-oriented system that
is being developed in VisualAge Smalltalk. Work is being
done for developing Enterprise objects that can be used as
the building blocks for quite a few other projects.
- Extending Classic Blend - Classic Blend
supports mapping Smalltalk objects to JAVA objects for
creating WEB based applications. Custom widgets extensions
in Classic Blend can be difficult to extend and this class project
describes what needs to be done to extend widgets and includes
source code for an extension to the model-view-controller
part of Smalltalk. This project was over seen and spear headed
by myself and the work was done by some graduate students
participating in Ralph Johnson's
Object-Oriented
Programming and Design class.
|