In the modern era of computing, monolithic applications have given way to servers, clients, middleware and components. Our understanding of
information technology (IT), software, applications and web sites is analogous to our relationship with the automobile. Depth and breadth of knowledge comes not from
use, but from design, building and repairing. The person who designs, builds or repairs cars must understand quality requirements for parts and assemblies. The same
is true of computing and information technology. Solutions for web computing, mobile computing and enterprise computing rely on a collection of hardware and software
components. Knowledge of parts and assemblies is essential to being able to create and maintain systems in this era of distributed computing.
The model of monolithic applications on a central computer gave way to resource sharing and partitioning logic across clients and servers. That meant an application’s
parts and data were distributed and not centrally managed. Clients and servers communicated via remote procedure calls (RPCs) and exchanging messages, implemented
with various types of middleware. The reliability, performance and security of middleware in processing messages or accessing databases became an important
consideration for mission-critical software. As the computing paradigm changed, consistency also became an issue. Consistent behavior and compliance with standards
became a critical feature for data access middleware.
As a development paradigm, fabrication from parts solved problems of building monolithic applications. But in distributing processing across servers, clients,
databases and middleware, we are reminded
A chain is only as strong as its weakest link.
To build applications and web sites characterized by stability, security and excellent service, we must maintain quality when buying or building the constituent
parts. Every part of a system must be robust, supportive of data integrity and transactional integrity, and consistent in its behavior. This is true of tool kits,
servers, database software, network software and middleware.
Attaining that assurance for middleware is best addressed by adopting a best-of-breed mentality when it comes to buying or building data access middleware. The
defining characteristics of best-of-breed data access middleware include:
• Broad connectivity and platform support
• Scalability
• Performance
• Robustness, reliability, stability, high availability
• Standards compliance, consistency
• Security
• Tools, language support. |
Networks, RPCs and distributed computing
Best-of-breed
middleware |