Gary Edward Byatt

I turned to research to satisfy my interests in software engineering after a period of work in the software industry.

My research

Motivation

To reduce the cost of creating and maintaining software.

Objectives

These objectives are aligned with my motivation and are associated with a common problem.

Problem

Program modification introduces cost, risk, and disruption.
My interest is in two needs for modification:

Minimising the need for program modification and reducing its implementation effort is a vector for meeting my objectives.
One cause of both needs for modification is the focus of my research.

Cause

My research considers situations where the problem is caused by dependence on formalisms.
Formalisms completely and statically define data form but are extrinsic to the data they formalise.
They are formalising data abstractions statically defined in artefacts other than those directly containing the data they formalise.
Example formalisms are record types, OO classes, database schemas, web service descriptions, and some XML schemas - some may be intrinsic to XML and/or not complete.
Some formalisms may be dependent on others, e.g. a class definition may be dependent on a web service description, or vice versa.
Dependency between database schemas and program defined formalisms (e.g. record types and OO classes) is unavoidable.
Specifically, my research concerns dependence on formalisms in two cases:

These cases are typical for programs but are antagonistic to the important trends highlighted below.
The fullest commitment to data primacy requires data independence, which by definition is impossible where data entities are dependent on formalisms.
Program statements that are dependent on formalisms inherently resist change to meet evolved formalism requirements.
A connection between programs is made fragile by program statement dependence on formalisms that specify the form of exchanged data.
Program statement dependence on formalisms also requires program modification where connections to new programs introduce a new formalism dependency.

Important trends

Three important trends influence the design of my solution:

Solution - Semi-Formalised Data Management

I created Semi-Formalised Data Management to remove the dependence on formalisms that causes the needs for program modification.
The two main features of Semi-Formalised Data Management are:

These features reduce cognitive load on the software developer by removing the need to understand formalisms, and make program statements more adaptable to variation in data form because details of formalisms are not embedded in program statements.

There are three important principles used in Semi-Formalised Data Management:

Solution difficulties

Generally and for Semi-Formalised Data Management, more adaptability is accompanied by more uncertainty of an outcome.
Runtime adaptability increases runtime workload.
Reducing uncertainty in Semi-Formalised Data Management also increases runtime workload.

Research evaluation

I am evaluating my ideas using data interaction between processes which have not been specifically programmed for each other.
This should provide new opportunities for increased and dynamic connectivity of processes.
This presentation provides an introduction to Semi-Formalised Data Interaction, which is a specific implementation of Semi-Formalised Data Management.

Other notable research

A large amount of research into semi-structured data addresses itself to concerns of data that may not be completely formalised.
By contrast, Semi-Formalised Data is not simply data between two extremes of formalism, it has a very specific but adaptable formalism.

Keyword search of XML exhibits more of the important features of my research than most others in semi-structured data research.

This hardware research is addressing some aspects of the runtime workload difficulty.

Eli Rohn offers a useful survey of data integration.

Leonid Libkin and Cristina Sirangelo consider data exchange with a hybrid approach to semantics.

Adaptive programming also confronts the adaptability problem, but only for object-oriented programming, and in a very different way.

Contacting me

Please feel free to contact me if you think you may be interested in my research.
You can find my email address on this page.


PhD research student. Start date 2008-12-01