Foundations - The Technical Architecture
Foundations™ implements a modern tiered architecture, this means that different aspects of the system are insulated from each other in layers or 'tiers'. This approach requires a well designed framework, but once that is in place, greatly simplifies the implementation of specific business requirements and is far easier to maintain and modify in the long term.
It has particular benefits in any situation where core data and processes need to be reused in many different contexts such as multiple brands, languages or devices.
Foundations™ has three primary tiers each with its own role in delivering the high performance and reliability our customers require.
The data manager provides all of the data management services required by the application. Data is stored in a relational database which provides the indexing, data integrity, retrieval, backup and resilience required for storing the information we are managing. In technical terms the data manager is termed a 'persistence layer' in that it ensures that any information we need to keep 'persists' (which is a good thing).
Use of the Data Manager significantly reduces the amount of code we need to write, it also allows the use of different database platforms without any change to other parts of the system.
There are a number of plug-ins for more complex enterprise requirements covering things like multi lingual information and real time data replication over the internet.
Business Process Layer
This layer of a system contains all of the application specific logic defining any processes which are unique to your application. It also contains a large number of standard components which are common to many systems which can be used 'off the shelf' or modified as required. Examples of this are things like shopping basket and credit card processing, calendar functions, address management, user management, and so on.
Known internally as 'the dispatcher' this is indeed a killer application! The Interface Manager is the gatekeeper for any Foundations™ system. It ensures that the user is identified, provided with the right level of access and tracked wherever he goes. As well as policing the user, the Interface Manager also makes sure he gets service by presenting an interface which is correctly branded, appropriate to the device being used and in the right language. It also manages the scaleability of the system by seamlessly dealing with any hardware failures.