|
Chapter 14 - Epilog
14EpilogThere are many emerging technologies which are being or may be adopted to improve the development efficiency as well as the quality of industrial automation software. The typical such technologies include middleware, Unified Modeling Language (UML), agent-based software development, and agile methodologies, which are introduced in this chapter. 14.1 MIDDLEWARE Modern industrial automation systems are made up of diverse devices interconnected by a network. Each device interacts with both real-world and other devices in the network. Middleware (also known as plumbing) is a connectivity software layer comprising a set of enabling services that provides communication across heterogeneous platforms with different programming languages, operating systems, and network mechanisms. It is the intermediary software layer serving as the glue between two disconnected applications. The typical middleware products include Object Management Group's Common Object Request Broker Architecture (CORBA), Microsoft's COM/DCOM, and Open Software Foundation's Distributed Computing Environment (DCE). Middleware services are sets of distributed software that exist between the application and the operating system and network services on a system node in the network. Typically, middleware programs provide messaging services so that different applications can communicate with each other. In a distributed computing system, middleware is defined as the software layer that lies between the operating system and the applications. They cover a wide range of software systems, which include distributed objects and components, message-oriented communication, and mobile application support. Companies and organizations are now building enterprise-wide information systems by integrating previously independent legacy applications together with new developments. These intermediate software layers provide common programming abstractions, by hiding the heterogeneity and distribution of the underlying hardware and operating systems as well as programming details. Essentially, middleware is the software that connects multiple applications, allowing them to exchange data. It is a middle layer residing between front-end client and back-end server. It accepts the client request, conducts corresponding manipulations on the request, passes it to the back-end server, and finally returns the processing results to the client. With the widespread use of client/server architecture, the middleware technology began to be accepted by more and more practitioners in various industrial and business applications. In the client /server environment, middleware is usually located between the client and server, and thus may "cut the weight" of the client server. Furthermore, middleware can also be put in the multilayered application server between the client and server. In the modern industrial automation systems, due to a large amount of communications among heterogeneous system components as well as the intensive interactions with physical world, it is highly necessary to have a "virtual machine" in the software for appropriately allocating system resource and coordinating various tasks. Middleware is a promising technology which can be used to accomplish these tasks. In the coming years, it is expected more industrial automation systems will adopt middleware technology. |
Preface
TABLE OF CONTENTS