Home page
Client benefits
Expertise
Services
Products
Partnerships
Our people
Contact us

Expertise in Multi-tier Architechtures-Graphic
Middleware | Code Red & Java
Multi-tier architectures | Time-series data

Who needs architectures?
The overall design or architecture of computer systems is an issue that has grown alongside the increasing population of deployed systems in the world.

The traditional approach to building systems was to start with a clean sheet and build a specialised, monolithic application that would achieve the demands of the users. For much of the history of computing, achieving greater fidelity to user needs has been the goal of new programming techniques and development processes.

Today, however, the needs of users are lodged in a complex web of constraints and responsibilities that extends beyond their immediate work roles. Any business system commissioned today has to serve not only the functional needs of its users, but also the wider goals of the organisation in which they operate.

Primary amongst these goals is that of adaptability: the recognition that the system discussed today, and its users, will be unpredictably different tomorrow. A multi-tier architecture is a key tool in assuring this kind of adaptability in the systems that Code Red creates.

From two-tier to three-tier architectures
A three-tier architecture is a generic design that separates the system into three separate but communicating layers. It is a development from the traditional client/server model, which is effectively a two-tier design dictated by hardware realities.

Two-tier client/server originated with the need to connect many low-cost, high-user-functionality personal computers with fewer, higher-cost, higher-batch-functionality departmental computers.

Whilst highly successful in driving down the cost of corporate computing, two-tier client/server can have an important structural disadvantage: an inability to share or re-use any of the interesting business features of the applications built in to its design. If re-use is key, every two-tier system is like a fairy-tale broken amulet: together the pieces perform magic, but apart they are useless and neither piece will match anything but its original partner.

If clients and servers could be built in a different way, then it would be possible to mix and match different components to compose new systems.

Separating concerns
The three-tier architecture interposes a middle layer into the generic design. This layer mediates between the front-end and back-end, providing a common semantic model. The client tier now contains the functions and data that implement the user interface, and the server contains the data access and transmission functions required. The middle tier contains all the business structure and logic that previously existed in a fragmented manner in the old client and server.

Once established as an architectural approach, the three-tier model has many advantages. The middle layers of business objects become a common and re-usable semantic representation of the organisation's business that is independent of system implementation.

To N-tier architectures
Furthermore, with the principle of separated concerns established, it becomes easier to identify further specialised intermediate layers that represent potential re-use. For example, the middle tier can be further divided in its own right. The sub-layer that interfaces to the server tier can be formalised as a data access layer, with software frameworks specialised for particular database vendors, recruited to fulfil its responsibilities in the appropriate situations.

Code Red is building multi-tier systems that offer maximum adaptability when required, protecting and enhancing the client's investment in technology and shortening the gap between business model and technology platform.

Home Client Benefits Expertise Services Products Partnerships Our People Contact Us