What is middleware?
The term middleware 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, and object brokering and messaging, are the major middleware interests of particular communities, such as scientific researchers or 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 the enterprise IT infrastructure, between the network and application levels. The need for middleware stems from the increasing growth in the number of applications, in the customizations within those applications, and in 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.
Why is middleware 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 education 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. It is urgent that campuses build a coherent infrastructure to respond to these drivers.
What makes the higher education and research communities distinctive in their need for middleware?
Many companies and other communities of interest are coming to understand 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 the requirements of advanced applications. Policy issues include ownership of data, FERPA and other public records issues, and extended collaborative relationships. Together these considerations make middleware deployment within higher education significantly harder than deployment outside of it.
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 24x7 service, high performance, and appropriate redundancy. Directory services will receive millions of hits per day; identifiers will have explicit control mechanisms; attribute services will be invoked by almost every application on campus. In addition, lawyers will place strict operational constraints on security services.
Is middleware a centralized or a 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, many parts of the contents of this infrastructure are best maintained by the individuals themselves, and by 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 many basic middleware products that higher education will deploy will be commercial products. These products will come both from diversified software companies such as Microsoft and Novell, and from providers of more specific products, such as Netscape, HP, and ATT. At the same time, a number of distinctive characteristics of the higher education community create design considerations that require complex implementations. In addition, the research side of the academic enterprise needs additional discipline-specific middleware that will probably not attract much commercial interest. Finally, the collaborative nature of higher education will raise 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 to evolving middleware-enabled applications.
Unlike networking, middleware has a second major cost component: process time. A campus must develop consensus and support for the deployment of 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. A set of related activities will include 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 specific scientific and research communities.
What should campuses be doing now?
It is not too 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.