DCE: A Foundation for Administrative Software Collaboration in Higher Education Copyright 1995 CAUSE. From _CAUSE/EFFECT_ magazine, Volume 18, Number 1, Spring 1995. Permission to copy or disseminate all or part of this material is granted provided that the copies are not made or distributed for commercial advantage, the CAUSE copyright and its date appear, and notice is given that copying is by permission of CAUSE, the association for managing and using information technology in higher education. To disseminate otherwise, or to republish, requires written permission. For further information, contact Julia Rudy at CAUSE, 4840 Pearl East Circle, Suite 302E, Boulder, CO 80301 USA; 303-939-0308; e-mail: jrudy@CAUSE.colorado.edu DCE: A FOUNDATION FOR ADMINISTRATIVE SOFTWARE COLLABORATION IN HIGHER EDUCATION by Nancy Yuochunas ABSTRACT: Many higher education institutions are making significant investments in new technology to support administrative operations. As we prepare to use this next generation of technology, can we afford for each institution to proceed independently, as we have in the past, or should we develop collaborative approaches to software development based on a more standardized technology environment? By the late 1960s, serious efforts were under way on college and university campuses to use a new technology--computers-- to improve the efficiency of the institution's administrative processes. Computing was in its infancy and the problems encountered were complex. However, alternatives were also limited. Many institutions turned to a sole-source vendor for primary support for their technology environment. With a vendor focused on providing technology integration, institutional staff were able to concentrate on understanding the administrative offices' application requirements and writing the application software to meet those unique requirements. For the next fifteen years or so, administrative computing departments undertook the development of computer systems to support each of the institution's administrative processes. The results of these pioneering efforts were unique, institutionally focused sets of administrative systems for general ledger, payroll, registration, class scheduling, grade reporting, etc. and a greatly enhanced body of knowledge about the process of applying technology to an institution's administrative functions. While the original administrative systems provided great benefit, institutions were over time faced with two problems. First, changing demands on administrative offices resulted in the need to change administrative systems. Institutions were required to make recurring investments to upgrade systems. Second, new technology was available at an alarmingly rapid rate. This availability of new technology provided additional pressure to redevelop and improve administrative systems. Two major technology developments--powerful desktop computers and network enhancements to support the transmission of large amounts of data at very high speeds--provided the foundation for applications designed to use multiple computers. While these new technology developments expanded the possibilities, they also illustrated how quickly complex, expensive, state- of-the art equipment and software become obsolete. CURRENT CHALLENGES Every higher education institution faces the challenge of employing new technologies to improve the quality of its administrative systems and deliver higher levels of computing services while managing the investments required to create and maintain these vital systems. The following are common objectives guiding many administrative computing organizations in higher education. * Provide quality technology support to administrative offices through the development of administrative systems that are functionally rich and robust. * Assure better access to and use of the institution's administrative information resources. * Promote the integration of administrative processes through emphasis on cross-functional administrative systems and direct use of information. * Deliver services and solutions that have institution- wide benefits. * Leverage new technology to improve both the development and operation of administrative systems. * Manage the investment necessary for creation and maintenance of each administrative system. While working to meet these objectives, institutions face a similar set of common problems. * Changing demands on administrative offices result in the need to change administrative systems. Each institution is investing substantial resources on an annual basis to update current administrative systems. * Administrative applications do not last forever. Each campus is in a cycle of replacing and/or upgrading the administrative applications that have been developed over the last thirty years. Whether the new software is developed in- house or purchased, the development costs are high. * New technologies reach the market daily. Each institution must evaluate new hardware, software, and development techniques, and determine how they should be used. * The portfolio of current systems does not take advantage of the processing power available in personal computers. For most current system access, personal computers merely emulate non-intelligent terminals. * The shift from a traditional mainframe computing environment to an open, distributed computing environment is an expensive and difficult one. Significant investments have been made at many institutions to respond to the availability of new technology. However, the complexity of this undertaking indicates that no single institution can easily afford to independently create a distributed computing environment, rebuild administrative applications to take advantage of the new technology, and still maintain the quality of administrative support provided in the past. If we are to meet the challenges that are facing us, collaborative approaches are needed within higher education. Standards for a common distributed environment would provide a solid foundation for inter-institutional efforts and potentially reduce the effort required of any single institution. DISTRIBUTED COMPUTING Open distributed computing, the fundamental design strategy for the next generation of systems, represents a significant change in the technology base upon which administrative applications are run. In an open, distributed environment, computers are connected by a high-speed network to create a single-image computing environment. This open operating environment allows hardware and software from a variety of vendors to function together seamlessly. Significant effort is required to move our campuses from our current stage, network computing, to this next stage, distributed computing. In the network stage, computers connected to a network have access to basic communication services: electronic mail, file transfer, and (with proper authorization) remote login to other information systems. However, today's developer must have knowledge about the target system location and operation to work across computers. In addition, coordinating security across all the computers requires considerable duplication of effort. The "operating system" for a distributed computing environment, however, supports transparent communication between many different computers and maintains the security across these computers. In this transparent operating environment, software and data are shared across many different computers. Applications execute on one machine or multiple machines and developers do not need to know the details about each specific processing environment. For higher education to create a common operating environment, there must be agreement on network communication through protocols like TCP/IP. However, the essential piece of this distributed computing environment is the operating system that makes it possible to build and execute applications across an open environment. The simple physical connection of single vendor proprietary hardware and operating software to one network is not enough. Again, standards are the key to this integration of systems software from a variety of vendors. Open Software Foundation (OSF), a consortium of major hardware and software vendors, has developed a set of standards called the Distributed Computing Environment (DCE) to support computing across different vendor equipment and software. OSF's DCE is a set of standards to establish, manage, use, and secure distributed applications. Its existence provides higher education the basis to meet many of the challenges in a distributed computing environment, like: * interoperability across heterogeneous systems, * security in an open network environment with a single security interface, and * scaleability from small local area networks to enterprise-wide networks. While OSF's DCE is not yet an official industry standard, it is supported by a number of vendors. Higher education's adoption of DCE would encourage vendors to create products based on these standards and go a long way toward ensuring a standard distributed operating environment. SHARING ADMINISTRATIVE SOFTWARE With OSF's DCE as the basis for a distributed computing operating system, it is possible to investigate collaboration on software design strategies like client/server and object orientation as a basis for the portability and reusability needed to share the burden of software development and acquisition among higher education institutions. Client/server is the primary design model for distributed computing. It allows for the three major system activities (presentation of information, processing, and access/storage of data) to be segregated in a manner that allows them to either run on a single machine or be distributed in some fashion across multiple machines on the network. Client/server designs promote the division of systems functionality and allow these pieces to be run on equipment that is best suited to the function. For example, workstations are best suited to handle the user interfaces required by a system because of their support for graphical presentations. Implementation of distributed systems through a client/server design is relatively new, so standard models and guidelines for the design of client/server systems and the tools to develop and maintain them provide an opportunity for collaboration among higher education institutions. Object orientation is a cluster of technologies and methods that have developed over the last twenty years to deal with complex information systems problems. The object-oriented approach to systems analysis and design can be used to focus on flexibility and reusability. Computer application systems have been developed for many years with an orientation either to process or to data. Both approaches supported the development of institution-specific applications with unique process rules and data definitions buried inside the thousands of lines of computer code (programs). With either approach reusability is possible, but it is difficult to achieve. In object-oriented design, the fundamental building block is an object. This object is the association of specific data (variables) with the procedures (methods) that act on it. Each object is defined and maintained independently. Objects are then organized into a hierarchy of classes and sub- classes to build on similarities and recognize differences. (There is a general similarity to the taxonomy used in biology.) A class or sub-class of objects has associated methods that it shares. While sub-classes inherit some methods from a class, they also have their own methods as well as methods that can override the inherited methods. Objects are joined through message exchanges to create systems. Because specific data can only be affected by the methods associated with that object, relationships between objects can be changed without worrying about how data will be affected. Objects thus become standard building blocks (objects) which can be combined in a variety of ways to create extremely flexible information systems. Object-oriented design is a critical foundation for the reusability of code and the possible sharing of software among institutions. Institutions may be able to share objects and object classes and thus collaborate in application development through the creation of this set of common building blocks. Object-oriented technology is a major paradigm shift that will require careful, thoughtful development of the basic structure and classifications. However, the possible benefits of shared software development to our institutions are so great that we cannot afford to ignore the need for a more standardized distributed computing environment. SUMMARY As higher education institutions plan for the future, common agreement to build our open distributed computing environments using standards like DCE can position us to exploit new application design approaches to build applications that can be shared. These collaborative efforts offer us the most promising opportunity to successfully meet the challenges that we face at each of our institutions. ************************************************************* Nancy Yuochunas is Director of Administrative Information Management at Purdue University, where she is responsible for the technology, application, and data architecture for administrative computing, the development of new administrative applications, and the Master Plan for Administrative Computing. She also serves on the Academic Computing Policy Committee. ************************************************************* DCE: A Foundation for Administrative Software Collaboration in Higher Education 2(f-|` 3f -Word Work File D 4lTEXTMSWDTEXTMSWD,nB` #)f -|'`b bf f -|"`> f Tf -|#` f bf -| Jeff Hansen2i2STR `