Software Adaptability
One of the characteristics of NetKernel solutions that is hard to point to
directly is adaptability -
the tolerance and acceptance of change.
From the discussion about
loose typing
and
loose coupling,
it is clear that the URI address models provides provides a great
deal of flexibility.
The consequences of this are that the relationship between
code is very malleable - changes to one side of a
client-server
relationship often do not break the other.
Since the URI address space abstracts the physical
linking between resources, NetKernel systems are very robust -
physical implementations
can be modified, moved, or even the underlying technology replaced
with no effect on logical services or the
consumers of that service.
The nature of the URI address spaces and their natural partitioning means
that new functionality can be introduced to
legacy systems without affecting existing
consumers.
It is perfectly reasonable to allow old systems to
coexist with updated systems.
We take this property for granted in World Wide Web
applications and now it is also available for general software.
These qualities of tolerance, flexibility, and adaptability mean that
with NetKernel
change is inexpensive.
It is inexpensive to create new systems and it is inexpensive
to change them.