What is middleware?
The term middleware is defined by one's point of view. It is used to describe a broad array of tools and data that help applications use networked resources and services. Some tools, such as authentication and directories, are in all categorizations. Other services, such as coscheduling of networked resources, secure multicast, object brokering and messaging, are the major middleware interests of particular communities, such as scientific researchers and business systems vendors. One definition that reflects this breadth of meaning is "Middleware is the intersection of the stuff that network engineers don't want to do with the stuff that applications developers don't want to do."
Why is middleware important?
Middleware has emerged as a critical second level of an enterprise IT infrastructure, sitting on top of the network level. The need for middleware stems from the increasing growth in the number of applications, in the customizations within those applications and the number of locations in our environments; these and other factors now require that a set of core data and services be moved from their multiple instances into a centralized institutional offering. This central provision of service eases application development, increases robustness, assists data management, and provides overall operating efficiencies.
Okay, so it is important. Lots of things are these days. Why is it urgent?
There are several drivers bringing middleware to campus; Advanced scientific computing environments such as PACI are placing requirements on campus researchers for middleware services such as authentication and directories. Library projects such as the UCOP/Columbia certificate project will be extending across a broader higher ed community . The Federal government is preparing requirements for digital signatures for student loan forms. New versions of software, such as Windows 2000, come with the tools to build ad hoc middleware components. What is urgent is that the campus builds a coherent infrastructure to respond to these drivers.
What makes the higher ed and research communities distinctive in its need for middleware?
Many companies and other communities of interest are rapidly understanding the importance of middleware to their missions and are proceeding with development. Higher education faces unique technical and policy issues in its deployment. Technical issues include the mobility of students, the diversity of equipment, and advanced application requirements. Policy issues include ownership of data, FERPA and other public records issues, and extended collaborative relationships. Together these considerations make the middleware deployment significantly harder within higher education.
When middleware becomes part of the IT environment, how critical will a robust infrastructure be?
The middleware components of the future IT environment will be every bit as critical as the underlying network infrastructure, requiring 7x24 service, high-performance, and appropriate redundancy. Directory services will be receive millions of hits per day; identifiers will have explicit control mechanisms; attribute services will be invoked by almost every application on campus; lawyers will place stringent operational constraints on security services.
Is middleware a centralized or distributed issue on campus?
It is both. Like network services on campus, there is a need for a consistent infrastructure across campus that is best provisioned centrally. At the same time, much of the contents of this infrastructure are best maintained by the individuals themselves and their departments. The trick is to create a centrally coordinated service that provides tools and authority for distributed management of the contents.
Aren't we going to get middleware from the commercial marketplace?
It is certainly the case that most basic middleware products that higher education will deploy commercial products, from broad software companies such as Microsoft and Novell, and from specific product providers such as Netscape, HP, and ATT. However a number of distinctive characteristics of the higher ed community create design considerations that in turn cause complex implementations. In addition, the research part of the academic enterprise needs additional discipline-specific middleware that is likely not going to attract a commercial interest. Finally, the collaborative nature of higher education suggest interoperability issues that must be addressed within the community.
What kind of investments will campuses need to make?
Like networking, middleware will require considerable commitments of time and money. However, the types of costs are different. Networking has required large sums of capital (for fiber, routers, switches, etc.) and considerable operating costs (for external access, maintenance, etc.) Personnel costs have been relatively modest. For middleware, the hardware costs (servers, readers, etc.) are likely to be relatively low. Software costs are unclear now, but there are clearly considerable expenses in building bridges to legacy systems and evolving middleware-enabled applications.
Unlike networking, there is a second major cost component in middleware - process time. A campus must develop consensus and support for the need for middleware, clarify data ownership and management issues, specify relationships among individuals, groups and information technology objects, establish legal agreements and change the way that information is managed on the campus.
How does the Internet2 Middleware Initiative intend to address these needs?
Efforts will focus on advancing the level of middleware within higher education through a set of related activities, including fostering technical standards, aggregating and disseminating technical design and implementation strategies, fostering opportunities for vendors and Internet2 members to shape and deploy products, and integrating efforts with particular scientific and research communities.
What should campuses be doing now?
It is not to early for campuses to begin the processes that address the "policy-side" of the challenge, building awareness about the need for middleware, identifying key constituencies that will be involved in the process, and taking basic inventories of the data and management relationships on campus. At the same time, experimentation in the core technologies, most notably in directory services, should be undertaken.