
There are enormous changes happening in companies around the globe, and these changes are having a dramatic impact on the way the software infrastructure for computing is evolving. At no other time has there been a such a huge restructuring of business processes while the supporting technology is simultaneously in transition.
The era of the virtual corporation has arrived. Companies are continually changing the definitions of their structures. One day headquarters is in a single building; three months later it is distributed across the country or around the globe. Companies in complementary markets become close strategic partners. Customers begin to link into suppliers' systems and become, in essence, an extension of each others' environments. Each time a company creates a strategic relationship or partnership with another company, it has formed another entity with a different identity and perhaps a different business model. What does this fluid, virtual corporate structure mean in terms of technology? It implies that a new mode of computing must follow. I call this new technology the Hurwitz Movable Enterprise infrastructure.
The Movable Enterprise infrastructure is an application-oriented architecture designed to meet the ever-changing needs of the virtual corporation. This model is intended to help frame the requirements that management should look for when evaluating technology. In my view, the Internet is a key component in the implementation of the Movable Enterprise, but it needs to be put into context. This column describes the components of the model, where the Internet fits, and how the Internet intersects with the other components of the networked infrastructure.
The Movable Enterprise is composed of layers. (See Figure 1) Each layer of the Movable Enterprise must be present in order for an application to run successfully in a distributed environment. The layers are Access, Response/Coordination, Resources, and Translation.
Access. This is the user interface layer. It is where a user formulates a request for information and receives a reply. Unlike the fat client model, the access layer in the Movable Enterprise model assumes that context (the application-specific logic) is outside the user interface. Therefore, the access layer is responsible only for displaying information, not maintaining it. Within this model, the access layer can be architected to run on whichever platform and interface are appropriate, such as telephones, personal digital assistants, Internet appliances, or interactive televisions.
Response/Coordination. Getting the information from the user interface or Access layer to the appropriate logic or data takes place in the Response/Coordination layer. This layer is navigational in nature. When a request is ready to be answered, the Response/Coordination layer routes a response back through a Translation layer and finally back to the Access layer. This Response/Coordination layer acts as a broker, matching the appropriate reply to the request created in the Access layer. When there is heavy traffic, the Response/Coordination layer acts as a traffic cop controlling the flow of requests and managing the availability of underlying resources. The range of technology within this layer is broad. It can be as straightforward as an Internet search engine or as complex as an object request broker (ORB) or a transaction-processing monitor. Most important for the Movable Enterprise, the Response/Coordination layer provides location transparency, a key requirement for a virtual corporation.
Resources. The application logic and the supporting data are part of the Resources layer. This layer contains data, images, video, specific application services, and metadata. For example, in the Internet world, an HTML document requested by a user via a browser resides in the Resources layer. In order for this layer to be accessible to the Movable Enterprise, it must be structured and maintained in a modular manner. (This is one of the best reasons for organizations to begin modifying their applications as modular services rather than as entire integrated sets of code.)
Translation. In the Movable Enterprise model there are actually two Translation layers. One layer sits between the Access layer and the Response/Coordination layer, while the other sits between the Response/Coordination layer and the Resources layer. These Translation layers transform the inputs and outputs of each layer into a format that the adjacent layer can process. For example, the Translation layer beneath the Access layer accepts requests and actions, such as a query, created by a user in the Access layer. The Translation layer then puts the query into a form that the next layer of the model can understand (for example, an external data representation for a remote procedure call to an ORB or a program that translates database query result sets into HTML). Likewise, the Translation layer between the Response/Coordination layer and the underlying Resources layer creates a request in the native format that the Resources layer understands. For example, the ORB issues a SQL command to retrieve the required data. (Earlier I mentioned that the Access layer was not responsible for the context of information; context is the responsibility of the Translation layers.)
How should IT planners use such a model? Organizations should look at their existing technology infrastructure and map it to this model. The reality should be revealing. For example, you may find that without reorganizing corporate data, you cannot provide the organization with a Resources layer. Let's look briefly at how each layer might map to applications in a typical corporate computing infrastructure today, and what actions an IS planner might begin to take.
Access Layer. Most existing client/server applications include considerable logic in the Access layer. For example, most applications are designed as a fat client with considerable logic and data. Corporate IT planners should begin to look at building new applications without including a lot of logic at the desktop - even if there is enough memory and disk to support a fat client.
Response/Coordination Layer. In most applications today, routing of information and data from one place to another requires complex coding. Applications often have hard-coded references to locations of logic and data. Even ORBs, for the most part, hard-code the locations of information. To support a virtual corporation, begin to look for technologies that dynamically locate key data and logic as well as keep track of the state transitions. Don't be surprised if this is hard to find. Only a few technologies are working on this type of abstraction. Those that are will probably require that it be within the context of a well-managed, self-contained environment. Experimenting with these self-contained environments will help you get started.
Resources Layer. Today most resources are complex, intertwined code and complete applications. It is difficult for developers to reuse resources or even understand what functions they provide. To prepare for the Movable Enterprise model of computing, planners should begin to provide clean and easily understandable interfaces between application components, data, and services. Begin to clean up data so that definitions and rules are consistent and clear. Metadata modeling becomes very important in this emerging world. Investigate agent software that will allow resources to work closely with services in the Response/Coordination layer.
Translation Layer. Most translations are interwoven into complete applications today. IT planners must begin to separate this code from the application logic. Look at translations as a set of services. Begin investigating technology that will support the movement of rules and information quickly and effectively. Assume that a lot of security will be needed at the Translation layer and not just at the Resources layer.
The type of architectural perspective described in the Movable Enterprise framework is being accelerated today by the advent of the Internet. The Internet and its flat hierarchy is forcing the software industry to rethink how it provides a range of application-oriented services. IT management may find rethinking the computing infrastructure to be a complex task. In fact, it is. However, if organizations want to leverage software as they move to become true virtual corporations, they will have to look at their computing infrastructure differently. Start now to be prepared for the inevitable future.
