  There is growing acknowledgement within the software engineering community
that a theory of software development is needed to integrate the myriad
methodologies that are currently popular, some of which are based on opposing
perspectives. We have been developing such a theory for a number of years. In
this paper, we overview our theory and report on a recent ontological analysis
of the theory constructs. We suggest that, once fully developed, this theory,
or one similar to it, may be applied to support situated software development,
by providing an overarching model within which software initiatives might be
categorised and understood. Such understanding would inevitably lead to greater
predictability with respect to outcomes.
