|
A primary goal of research into orthogonal persistence is to
simplify significantly the construction, maintenance and operation
of applications in order to save software costs, extend the range
of applications and improve users' experiences. To test such
claims we need relevant experiments. To mount such experiments
requires an industrial-strength persistent programming
platform. The PJama project is an attempt to build such a
platform and initiate those experiments. We report our design
decisions and their consequences evaluated by four years of
experience. We have reached a range of platforms, demonstrated
orthogonality and provided durability, schema evolution with
instance reformatting, platform migration and recovery. The
application programming interface is now close to minimal, while
we support open systems through a resumable-programming model. Our
architecture is flexible and supports a range of optimisations.
Performance measurements and current applications attest to our
progress, but it is still possible to identify major research
questions, and the experiments to test the utility of orthogonal
persistence are still in their early stages.
|