The paradigm shift in business computing due to the emergence of service-oriented architecture (SOA) and business process management (BPM) left traditional college level computer science curriculum behind the curve.
Dr. Paul Buhler, associate professor of computer science and graduate program director at the College of Charleston in Charleston, S.C., is working update curriculum at his school to meet the needs of students who will graduate and find jobs in IT departments doing SOA.
Pointing to data from the UCLA Higher Education Research Institute that indicates a decline in computer science enrollment nationwide, he said his colleagues in academia are not unaware that curriculum needs to be updated. A gap has developed during the past five or six years as software vendors and IT departments moved to building applications using Web services, while the academic world continued to teach programming approaches that were little changed in three decades.
"There have been some papers written that indicate computer science curriculum got stuck and did not pick up on the distributed object paradigm, which paved the way for CORBA technology, XML-RPC, Java RMI that were foundational to today's services," Buhler said.
Academia has been questioning its traditional approach to computer science for the past six years, he said, as it's been going through the much publicized decline in computer science enrollments.
"Since the fall of 2000 to the fall of last year, the decline in computer science enrollments, freshman matriculation into computer science, has been 70 percent," Buhler noted.
That is now a wake up call inside the ivy covered walls, where Buhler and his colleagues are starting to re-think what computer science departments need to teach.
"Computer science curriculum today is still based upon traditional systems assumptions," Buhler said. "I think we need to tweak curricula to be updated and recognize distributed systems assumptions."
The old curriculum assumes that software is being built on homogeneous hardware and operating systems, something that was true in the heyday of mainframes and continued to some extent into the client/server era, but it is increasingly rare to encounter homogeneous environments in today's enterprise.
Buhler points out that the way software is developed has changed from creation of programs that were centrally configured and managed on homogeneous hardware and operating systems, to software that is now being composed of services running in today's heterogeneous environments.
"Software development is no longer an act of pure creation, but is often an act of composition," he said. "Composition with software development frameworks as services is something that needs to push curricula in a different direction."
Buhler does not advocate a radical change to computer science curriculum. He said there are students who want to focus on research and the theoretical side of computer technology, which has traditionally been the province of the academic world.
What he is working on is a new major that would focus on SOA and BPM and bridge the gap between computer science and business education in ways that are similar to the way SOA is bringing together architects, developers and business analysts in the enterprise.
"At the College of Charleston what we are in the process of doing is standing up a new major that sits somewhere between computer science and business," Buhler explained. "We haven't formally named this major, but it's been inspired by IBM's SSME [Service Science, Management and Engineering] initiative."
SSME is IBM's effort to bridge the gap between the academic world and the service-oriented world by providing professors such as Buhler with help in developing curriculum focused on SOA, BPM and other technologies for application composition.
Buhler prefers the term service-oriented computing (SOC) to describe all the technologies now emerging as a new approach to business applications. In the new curriculum SOC will encompass SOA, BPM and service-oriented development of applications (SODA).
"That's the new world of curriculum," the professor said. "We're working to create a blended skill set with the assumption that the students who will be graduating in this type of curriculum will be able to do things like compose services into a business process. They will be able to bridge the gap and talk to the business analysts and be able to serve as a liaison between the business analysts and the IT folks in terms of design and process. It's a different skill set and I believe there is a ready market for people who have this new set of skills."
Buhler is in the process of putting together a curriculum proposal that will need to be approved by the faculty senate at the College of Charleston and by the Commission of Higher Education in South Carolina.
He said he already has buy-in throughout the administrative chain at the college and is confident the service-oriented curriculum will be approved, although because the process takes time, it is not ready for this academic year. He expects the new service-oriented curriculum to be in place in either the fall or spring of 2008/2009 academic year.
However, service-oriented computing is already part of the graduate program he directs. That program primarily draws students who are already working in the IT departments of business and government, and are seeking advanced education, he explained. Service-orientation is already a part of the world they work in, so graduate courses are aimed at providing them with a better understanding of SOA, BPM and related technologies, Buhler said.