Definition component to dynamically create the web
form.
The glue that connects the Model with the View is
the Variable Definition component. The Variable
Definition component uses XML to define the type
and structure of the inputs that describe the state of
the patient, and defines which models use which
inputs. The XML files are used by both the Model
Manager and the View Manager. The View Manager
uses the XML definitions within the Web Page
Generator to create the Patient Information Entry
Form like the one given in Figure 1. Once the
clinician has completed the form, the inputs that
he/she entered about the patient are passed to the
prediction model via the Model Manager.
3.2 Prediction Model
There are three major components that support the
prediction model. In addition to the prediction model
itself, the Model Manager and Variable Definition
components of the Controller work together to help
researchers and clinicians work with different
prediction models. SPPA was specifically designed
to separate out the functionality of prediction
modeling so as to minimize the type and level of
modifications that are necessary to experiment with
different models.
Obviously, to experiment with different models, the
researcher needs to build a new prediction model. If,
however, the new prediction model is written in R
and uses the same input parameters as the current
prediction model then no additional modifications
are needed. The researcher need merely replace the
current R prediction model with the new one. If, on
the other hand, the researcher needs to add some
additional input parameters then he/she must also
modify the Variable Definition component of the
Controller to define the structure and form of the
new inputs in addition to replacing the current
prediction model with the newly generated one.
It is also possible to build a new prediction model
using a programming language other than R, but
such a change also requires a change to the Model
Manager. JRI serves as an interface between Java
and R. Changing to a different statistical
programming language would require embedding a
Java method that defines an interface between Java
and the new statistical programming language.
The actual prediction models we used in building the
system take inputs describing a given patient (e.g.,
age, gender, stage) along with a suggested treatment
and then predicts the survival probability of the
patient. In our previous work, we analyzed over
5,000 consecutively enrolled non-small cell lung
cancer patients and developed two models for
predicting lung cancer patient’s survival probability
(Sun et. al., 2006). The first model uses patient’s
information available at the time of diagnosis and
has been proven prognostic in our previous work. It
uses age, gender, stage, cell type, and tumour grade
as inputs. The second model uses additional
information, including the treatment options and
patient’s smoking status.
3.3 User View
The user view is controlled by the View Manager as
described above. It is not necessary to change the
Web Form Generator when adding new inputs to the
prediction model. Researchers need only change the
XML definitions in the Variable Definition
component of the Controller without making any
changes to the Web Form Generator. SPPA allows
the researcher to make changes to the inputs to
his/her prediction model without having to make
changes in the Java code. Furthermore, given the
existence of XML editors, researchers can change
XML definitions without a complete understanding
of XML.
The information that is gathered via the web page
form is stored in a file using the format defined by
the XML tags of the Variable Definition component
and then transmitted to the Prediction Model. If the
clinician is dealing with an existing patient, then the
web page form is initially filled in with that patient’s
information. The result of the Prediction Model is a
collection of data that predicts the patient’s
survivability. The Presentation Generator allows the
user to view this data using two different formats: a
graph view and a table view. The graph view of the
data, given in Figure 2, is created with a Java
freeware JFreeChart (www.jfree.org/jfreechart). The
table view, which is obtainable by selecting the
Table tab, is given in Figure 3.
4 CONCLUDING REMARKS
We developed a software framework, the Survival
Probability Prediction Architecture (SPPA), for
translation of research findings into a clinical
application in a timely fashion and at low cost. For
investigators, SPPA helps them to plug in a
HEALTHINF 2009 - International Conference on Health Informatics
414