ConstrainConstrain
NetKernel development
Home > Books > Solutions Developer Guide > Development Approach > Constrain

Rate this page:
Really useful
Satisfactory
Not helpful
Confusing
Incorrect
Unsure
Extra comments:


NetKernel Development: Constrain

In NetKernel development, constraints may be considered quite late in the development cycle and may be easily lifted when changes to a systems features are required during a projects lifespan. This is quite different from e.g. OO development where constraints on interfaces and types are surfaced early. For example, simply defining classes in an OO environment is an early constraint which can lead to later inflexibility.

Constraint in NetKernel means enforcing structural or semantic requirements on the information to be processed - usually this is done by transparently overlaying the implementation of constraints without the application or services knowing.

Data Admittance

The most usual application of constraints is on the boundary of a system. When information arrives through a transport that invokes a process on NetKernel it is valuable to ensure that it conforms with the requirements and expectations of the implementation.

It is quite straightforward to introduce a transparent filter that will examine the supplied information and will permit or refuse admittance. The form of the externally supplied information is entirely application specific - a frequently used resource type is XML messages and a number of validation languages are supplied and can be used to constrain message structures.

Access Control

Access control is an important constraint. Any URI address space can be access controlled within NetKernel using the URI gatekeeper. Equally any request into a module can readily be routed to an access control manager that can perform authentication of the supplied credentials before allowing access to the internal services of a module.

© 2003-2007, 1060 Research Limited. 1060 registered trademark, NetKernel trademark of 1060 Research Limited.