Almost six months ago, Daniel Bäumges, an Informatics student who completed his Diploma Thesis in the SAP Student Lifecycle Management development team, described in his New Services in Campus Management to Support New Types of User Interaction (“Web 2.0”) how new Enterprise (Web) Services can be used to support new ways of user interaction (e. g. “Web 2.0”) in Student Lifecycle Management.
Daniel has now completed his thesis. This blog summarizes his findings and development work.
The impact of Web Services in the Higher Education world
The motivation for Daniel to explore this field was the role web services play in today’s student lifecycle. Email and instant messenger are established means of communication for life on campus. Daniel was interested in finding ways how universities can adapt to this phenomenon by building relevant business processes based on a service-oriented architecture. As his work shows, Web 2.0 technologies and standards offer the chance to do this in an easy and comprehensive way. Daniel successfully built a prototype with SAP Student Lifecycle Management and Web 2.0 scenarios and demonstrated how it can improve user interaction.
Web 2.0 and how it changed the World Wide Web user community
Web 2.0 deals with the interactivity of the World Wide Web and at the same time it has set a new standard for user behaviour in the web. The web has moved from being a mere place for storing information to a platform where users actively generate new knowledge themselves. Wikis, used for collaborative publishing, are a famous example. Within the world of Higher Education, academic staff is making increased use of the opportunity to do knowledge exchange through Wikis.
“Mashup”, a term which is oftentimes heard in this context, describes the fact that users can now take existing applications or services and create new applications out of them. Open interfaces allow them to do so.
Mashup between SOA and Web 2.0:
RSS – easily being up to date
One of these open interfaces in Web 2.0 is RSS (Really Simple Syndication) which allows users to subscribe to online feeds.
Today’s academic staff is keeping up to date on new developments in research, economics and politics by subscribing Feeds which allow them to quickly access updated content of relevant websites. For a student scenario, a RSS-Feed could be offered to check the availability of grades or changes in the requirement catalogue instead of sending him/her an email.
REST and SOAP – two alternatives web services
At the beginning of Daniel’s research he had to evaluate the existing options – SOAP or REST – and decide which one offered the best functionalities for realizing an innovate Web 2.0 scenario with Student Lifecycle Management.
REST refers to the collection of network architecture principles which outline how resources are defined and can be addressed. The World Wide Web (WWW) is the key example for this architecture. Resources located there can be e.g. documents, figures, scripts, etc.
REST is based on the transport protocol HTTP (URL http://) which is also supported by an SAP system. It offers a uniform interface and therefore a unique URL for accessing resources. The meaning of “resource” in the web context can be compared to “Business Object” in SAP language.
Since REST uses protocol HTTP, web services are based on the HTTP methods:
REST’s advantages are its user friendliness based on a simple structure. Also it offers transparency regarding firewalls. Its disadvantages are that it does not offer a way to describe interfaces in a standardized way (like WSDL 1.1 in SOAP) and that not all functions can be realized. For example, a hardware store which offers its products online through REST will not be able to provide its customers with the option to compare selected hardware pieces regarding their compatibility. While REST offers useful functionality for simple information requests, it cannot deal with complex requests.
In order to increase its value within a service oriented architecture scenario, REST can be used as additional method for simple “get” scenarios and a SOAP service can fulfil a more complex request (see example below).
SOAP refers to a XML based message format and, in contrast to REST, offers rules how these messages are to be formatted. One of these formats is WSDL which is used to describe service interfaces. The way HOW messages are transferred is not (pre-) defined. While REST offers a simple message structure, that of SOAP is a complex one. While it does not offer Firewall transparency, it does provide a wide variety of functionalities to its users. Usually it is applied in B2B integrations.
REST in SAP Student Lifecycle Management
In the relevant Student Lifecycle Management scenario a student has booked all courses required for his/her program of study and is able to download the relevant timetable into MS Outlook’s calendar.
Condition for this scenario to work is the download possibility of the calendar as well as the integration to the calendar application. iCalendar, a specification for calendar data exchange, has been used for this case. It allows to subscribe to a timetable through an URL.
In Outlook the resulting timetable scenario looks as follows:
Folllowing the same principle Daniel has built a service which uses REST to get persons contact data in a vCard format. For example contact data of an instructor.
RSS in SAP Student Lifecycle Management
Also an RSS interface was added by Daniel. He managed to create a framework to publish RSS feeds with Student Lifecycle Management content. A customer can easily create new RSS channels which then can be subscribed by RSS Reader applications (e.g. MS Outlook 2007, Mozilla Firefox, and many more) through an URL. The content of these feeds is highly customizable and could include for example university news or some kind of notifications in case of changed schedules or in case new results (e.g. grades) arrive.
WSDL has become available as interface description for REST. Thereby, an important condition for using REST in SOA has been fulfilled. WSDL 2.0 fully supports HTTP.