Designing E-Learning Services: A Case Study

— Recently, increasing numbers of e-learning tools have been developed. However, the benefits of these tools cannot be fully used as they typically operate separately and do not communicate with each other. It is necessary to develop a solution to redeploy existing tools, and create new tools, in a more effective way. Our approach is to link and manage these e-learning tools together, by grouping the tools together and presenting them as a set of e-learning services, implemented using service technologies. In this paper, we propose a set of e-learning services, together with the approach we have adopted to develop them, which are developed based on a case study.


INTRODUCTION
E-learning has become increasingly popular, and the number of software tools to support e-learning is growing [1].These tools can support different aspects of the complex learning and teaching process, including designing the learning content, delivering learning activities, assessing learning outcomes, and evaluating students' learning performance.However, these applications have not been deployed effectively, as they seldom interoperate, and this restricts the benefits they offer.
Support for interoperability using service technology offers a potential solution for this [2].Our proposed solution is to wrap existing educational software as e-learning services, so that these tools can be linked together, and valuable data can be exchanged easily between them.
Additionally, the idea of e-learning services can also bring a number of potential commercial benefits into organizations, including the following distinct advantages [3].
Agility.E-learning services can be offered by a variety of software providers.They are required to be discovered at run time, thus enabling flexible selection and use of appropriate services over networks, as users' requirements are always changing.
Cost reduction.During the e-learning services development process, reuse of existing services, rather than developing bespoke software components, enables organizations to use cost effective software.
The development of e-learning services faces a number of open research challenges.Our research aims to explore possible solutions to these two challenges.
How can we identify a set of services which support complex learning and teaching activities?
Since there is no commonly agreed definition for a service (rather than Web service) in service oriented computing [4], and since many practitioners lack practical experi-ence with service applications, the identification of services from complex learning and teaching processes is difficult [5], and few people are currently working in this area [6].Our proposed approach is to identify services based on concrete processes and their data flows within learning and teaching activities.

How can we ensure these e-learning services can meet different users' requirements?
A number of educational services have been proposed [7,8], however there have been few published papers which discuss the motivations for using these services, and how such services can meet both learners' and teachers' requirements.We have conducted a case study to identify the fundamental tasks required to deliver learning and teaching activities, and have identified a number of practical challenges that both learners and educators are facing.
In this paper, we explore a possible solution to these two challenges.We first clarify what we mean by services, then we present our approach for abstracting elearning services from learning and teaching activities, and using a case-study we derive a set of processes and data flows which describe those activities.We then propose a set of e-learning services developed from our processes and data flows.Finally, we address possible technical solutions required to implement e-learning services.

II. WHAT IS A SERVICE?
The word 'service' is used in multiple contexts, and in order to clarify its meaning, we consider 'services', 'eservices', and 'e-learning services'.

A. Services
Services have been defined from a number of angles.The generic definition of service in dictionaries relates to 'the performance of work (a function) by one for another' [9].
From an industrial perspective, IBM defines a service as 'a provider/client interaction that creates and captures value.' [10].It ia used to 'represent a natural step of business functionality' [11].Business processes are performed in different steps on different systems -for example, in order to book a hotel room in London, a number of tasks are involved, such as finding available hotels in London, selecting a suitable hotel and room, and making payment for the booking.We can view this process from a service angle: a hotel booking service is involved, and this service is well-defined and may be provided by a variety of different service providers.
In academia, Chung states that 'a Service is the nonmaterial equivalent of tangible goods' [12] which, in this iJAC -Volume 2, Issue 4, November 2009 context, can be interpreted as a repeatable task, e.g.booking a hotel room.
Our working definition for a service refers to a repeatable task, offered by multiple providers, which contains functionality which is able to meet users' requirements.

B. E-Services
We have considered that services might be implemented by humans (such as consultation services), physical equipment (e.g. transportation services), or computer software.Our research focuses on software services only, and we name them 'E-Services', as they are software packages which can communicate with each other over networks.Humans and physical services are beyond the scope of our current research.
In the area of service computing, E-services are the key building blocks in a system.It is commonly agreed that 'a service is a bound pair of a service interface and a service implementation' [3], and most existing software applications can be reused for this purpose.The interface describes what the service is, and enables the communications between services and users.They can exchange information between each other, and operate collectively to support a common process [13].We propose that our Eservices contain the following attributes [11,12].
• Services are independent of each other: a service can be accessed from any operating platform, via any appropriate communication device.• Services are selectable: services are offered by multiple providers, so users can easily make choices between them depending on their requirements.• Services are reusable: data are reused between services, and services are reused between users.• Services enable interoperability: services are linked, and data are shared between services and users.
The figure 1 below illustrates the relationships between these concepts.

C. E-Learning Services
E-services have already been developed, especially in a commercial context.Research suggests that developing services is an effective solution to managing existing commercial software [14].However, fewer services have been applied in the education domain, and our research is to explore how to deploy educational software effectively based on the service model.
In the educational domain, many processes support a university's learning and teaching activities.For example, we have the process of delivering a module, which might involve tasks such as designing the module, delivering the course content, assessing students, and evaluating students' learning progress.These tasks can be considered as e-learning services, and more than one service may be available to complete each task.Most of these tasks can (in principle) be performed by software provided by different vendors.Data such as module specifications, learner data and assignment data are reused and shared within and for communication between these services.III.APPROACH TO DESIGN E-LEARNING SERVICES Although the structures of universities are well understood, and there is a substantial body of literature on the individual processes which underpin such institutions, there are few useful studies which examine how those processes relate to each other and what data are transferred between them.
We adopt a three phase approach to identifying elearning services.The first phase is to identify distinct learning and teaching processes from a case study, using staff interviews and literature reviews to collect data.The second stage is to identify data flows within and between these processes using a qualitative data flow analysis.The final phase is to abstract e-learning services based on those processes and data flows.Three research questions guide us.
• What are the main distinct processes which support a university's learning and teaching activities?• What types of data are involved in terms of delivering these activities?• What kinds of e-learning services would be required to deliver these activities?
In this section, we present the methods used at each stage, together with our proposed process and data flows.

A. Learning and Teaching Processes
This study aims to gain a deeper understating of how learning and teaching are delivered in a university.Our proposed processes are identified from two sources.One is staff interviews and the other is a literature review.Staff interviews provide data to support a case study from a single university, which is used to generate our process model, and the literature review is conducted to strengthen our model by ensuring it is grounded in established administrative and educational practice.

1) Staff Interviews
We are using the Department of Computer Science in the University of Warwick as a case study.In order to obtain real data, a realistic case-study at a single institution will provide sufficient data.In order to obtain qualitative information on the learning and teaching processes, 9 staff have contributed to this activity.The choice of a computing department is appropriate since its internal processes are likely to make good use of an IT infrastructure.Of course, it is understood that processes will vary between institutions and between individual departments, in particular between social science and natural science subject areas, and an exploration of those differences is beyond the scope of this paper.
We interviewed a variety of academic staff involved in all aspects of the delivery of undergraduate and masters courses in the Department of Computer Science.The interviews were semi-structured, and due to the nature of the information we were seeking, we adopted a hybrid analysis procedure informed by approaches for identifying and combining patterns rather than making judgments about hypotheses [15,16,17,18].This procedure consists of six stages.
Stage 1: Generating general themes.By reviewing the interview transcriptions, we identified the main themes that were common to most of the interviews.The themes are represented as key phases that describe aspects of a university's learning and teaching processes, and are: • Procedures for designing modules • Procedures for delivering modules Stage 2: Classifying the interview data according to these themes.We went back to the interview transcriptions again, and examined the data that were relevant to each key phrase we identified above.For example, for 'module evaluation', all of the interviewees discussed this activity, but each addressed different aspects of it, including reviewing learning performance, collecting feedback, updating modules, and so on.
Stage 3: Interpreting the quotations to identify patterns.At this stage, we analyzed the interview data to identify the main learning and teaching processes and data involved.We examined the meanings of each quotation, to determine if one or more common learning and teaching related tasks are involved in each theme.We also identified the data required before each task, and data generated after each task.For example, for 'student assessment', we identified the tasks of 'delivering exams', 'delivering tests', and 'delivering assignments'; to perform these tasks, assessment materials are required, and at the end of these tasks, student's pieces of work are generated.After we developed a full list of learning and teaching tasks from the quotations, we grouped together similar tasks as a single process.For instance, we developed the process of 'delivering assessment tasks' from the theme 'student assessment' which we have mentioned above.Finally, the eight general themes we identified form stage 1 are grouped in the following processes.Process 1: Design and get approval for a module (or course) • Procedures for designing modules Stage 4: Describing findings.We used the interview data to help us arrive at a form of words for accurately describing each process and the data it requires or generates, and also to provide a short document which discusses and identifies the issues related to each process.
Stage 5: Combining the findings.This stage aims to study the relationships between these processes, in order to generate a whole picture of the process model.We went back to the transcriptions again to identify evidence that describes the order and relationships between different activities, such as '…is a start point…', '…is followed by …' '…is needed to be done before…'.We then ordered these processes and illustrated them using a diagram to represent the process model.
Stage 6: Validating the findings above.At this stage, we compared the findings against the interview transcriptions to check if we have misinterpreted any quotation, or have missed out any important quotation. 2

) Literature Review
The staff interviews can only provide direct evidence of each process in a case study.We also need further evidence to support our proposed process model.We therefore conducted a literature survey to gain more understanding about the processes we identified, and these helped us to refine the definitions of individual processes, and to identify their relative importance.For example, Littlejohn and Pegler [19] have classified the differences between academic and non-academic support, and Inglis iJAC -Volume 2, Issue 4, November 2009 [20] and Forsyth [21] have explored the necessity for evaluating modules whilst they are being taught.

B. Data Flow Analysis
According to the findings from interviews, data and data flows are identified by reviewing the learning and teaching processes.We conducted a qualitative data analysis, suggested by Watling [22] for research in educational management, as follows.
Stage 1: Identify data from process flows.We went back to the processes developed already, and identified the following types of data.
• Module specifications • Teaching plans (includes plans for learning activities, supporting activities, and assessment tasks)

• Teaching feedback
Stage 2: Identify linkages between data.Based on the process descriptions, we then highlighted all the linking words to represent the data flows, such as '…based on…', '…end's up with…', 'after…' and so on.
Stage 3: Combine data flows and the process flow diagram.Based on the data and data flows we have identified from stage 1 and 2, we then studied what and how the data are shared between different processes, and for each data item, how it was developed and what data are generated based on it.
Stage 4: Simplify the process and data flow diagram.At this stage, we reviewed our diagram again, to study if there are any similarities between data flows, and to identify any data flow cycles in the diagram.For instance, the data flows for delivering learning materials, assessment materials and supporting materials are similar to each other.
Stage 5: Validate the findings against the process flow diagram.We compared our results with the processes to check if we have missed out any important flows or misinterpreted any of them.

Design and Get Approval
For A Module Plagiarism Results

C. Process and Data Flows Diagram
This diagram shows the learning and teaching processes and their data flows (see Fig. 2), developed from the first two phases of our approach described in sections A and B. The rectangles represent the processes, and the arrows and (unboxed) text indicate data flows between these processes.A module delivery cycle is included.Teaching and learning activities normally start with the module designing process, followed by the process of module planning and developing learning related materials, before the actual delivery takes place.When the module is delivered, it will be evaluated in order to identify possible future changes required to improve the module.Suggested updates obtained from the evaluation process will be used to guide the module planning and learning material developing processes that will take place in the next module delivery cycle.

D. E-Learning Service Analysis
We develop e-learning services by identifying major data flows between these processes.For each identified service, we describe its function and the motivation for using it, along with its input and output data.We have also made sure that each service meets all of the service features we have mentioned before.
Although some researchers [6,23] have stressed the use of UML diagrams to represent workflows between services, we note that there is no established methodology which we could apply to abstract services from concrete processes and data flows.

IV. E-LEARNING SERVICE
The following nine e-learning services have been identified, and a service diagram is included above (Fig. 3).The rectangles represent the e-learning services, and the arrows and unboxed text indicate data flows between these services; the dashed lines indicate that services might be combined.Technologies regard to in this section will be discussed in section V below.

A. Learning planning service
Motivation: Learning and teaching activities vary between modules, and planning these activities can be done in varied ways, and various planning approaches exist [24].Having such a service enables educators to easily make choices between the available services offered by multiple vendors, according to their needs.Functionality: This service aims to assist module designers to develop a module delivery plan.By using basic factual and educational details, this service will allow selection and planning for all learning, supporting and assessment activities for a particular module.A list of available services can be discovered from UDDI, however, there are few products that currently support this.
Input data: • Module specification

B. Learning materials development service
Motivation: This service first enables the sharing and reuse of learning resources, and provides an environment to support educators to develop learning materials [25].Additionally, some services might enable support for specific development approaches, such as Biggs' Constructive Alignment [26].A service instance might, for example, enable validation of learning materials by performing an automatic check to ensure consistency with other module components including the intended learning outcomes and learning activities.
Functionality: This service aims to handle computer based learning related materials for learning, assessment and support.It assists module designers to search and select a number of existing computer-based learning and assessment materials, and also supports the creation of new computer based materials.The developed materials can then be easily wrapped as SOAP messages, to be passed to other services, such as the learning materials delivery service, which will be covered later on.
Input data: • Module specification

C. Learning materials delivery service
Motivation: Many Learning Management Systems (LMS), such as Moodle [27], have been developed and are becoming mature [28].This service will reuse these existing products and allow teachers/learners to select between them.
Functionality: This service aims to deliver learning materials based on the pre-defined learning and teaching plan.A computer based learning environment is provided, which allows varied learning materials to be delivered, where learners can easily get access to and make use of them at any time.Existing LMSs can be wrapped as services by adding WSDL interfaces to each of them.
Input data: • Teaching plan for learning activities • Learning materials Output data: • Feedback on teaching D. Support delivery service Motivation: Research results from our interviews suggest that students increasingly expect high levels of support, and this is particularly true of first year students who have recently graduated from high school [29].This service is designed to address this issue, so users can freely make choices between varied support providers.Currently few appropriate tools are available.
Functionality: This service provides a computer based supporting environment to deliver academic support, based on learners' requirements.Learners can easily get access to and make use of support materials, and also communicate with tutors and/or peers any time and anywhere.
Input data: • Teaching plan for support activities • Support materials Output data: • Feedback on teaching

E. Assessment delivery service
Motivation: Many Learning Management Systems can be used to deliver assessment materials [30].This service will reuse these existing products and also allow teachers/learners to make selections between them from different LMS developers.
Functionality: This service aims to deliver assessment tasks based on the pre-defined learning/teaching plan.Similar to the learning materials delivering service, a computer based delivery environment is provided, which contains a number of varied assessment materials for learners.Both learners and teachers can easily get access to support materials any time and anywhere.Again, existing LMSs can be wrapped as services by adding WSDL interfaces to each of them, which can then be combined with a learning materials delivery service via BPEL.
Input data: • Teaching plan for assessment activities • Assessment materials Output data: • Feedback on teaching

F. Submission service
Motivation: Many pieces of coursework are required to be handled every year.This service enables students to submit their work anytime and anywhere.Instructors can choose an appropriate submission service for each assessment task from multiple service providers.
Functionality: This service allows coursework to be submitted in an electronic format.Teachers can easily get access to students' work via this service.Such a service might take the form of a component of an LMS, or might be a specific product (such as BOSS [31]).

G. Marking service
Motivation: Many pieces of assessment work are required to be marked every year, and our interviews have suggested us that this is a time consuming task for markers.This service enables marks to be generated easily based on grading criteria, and both individual and overall learning performances are analysed.
Functionality: This service assists markers to handle the marking job easily.Marks and feedback on students' learning performances are generated by this service.Many e-marking systems have been developed, such as Scoris for marking e-tests and e-exams [32] and could potentially be presented as services.
Input data: • Coursework Output data: • Marks • Feedback on learning performance

H. Plagiarism detection service
Motivation: Many pieces of coursework are required to be handled every year, and detecting plagiarism is a time consuming task for human beings [33].This service enables the detection task to be done by machines.Instructors can choose appropriate plagiarism detection services for different assessment tasks from multiple service providers.Furthermore, software for detecting plagiarism already exist, including the Turnitin products for essays [34], and JPlag [35] and Sherlock [36] for computer programming assignments.
Functionality: This service assists markers to detect plagiarism easily.It compares students' assessments against each other's, and also against available web resources.
Input data: • Coursework Output data: • Plagiarism detection results

I. Learning evaluation service
Motivation: Modules are required to be updated all the time.In practice, there are a few formal procedures for this task [37].The learning evaluation service allows educators to easily choose to receive suggestions on improvements for delivering either learning activities or learning materials or both.
Functionality: This service aims to evaluate the delivery of learning activities, learning materials and students' learning performance.Two types of feedback are consid-ered, one is teaching feedback, which refers to the quality of learning, support and assessment activities and materials.The other is feedback on each student's learning performance.Examples include how well an individual student has done for a particular assignment or overall semester performance.Evaluation results can be used to guide the updates of existing learning activities and materials either immediately or for future delivery.
Input data: • Feedback on teaching  [38,39].Each service contains an interface.Messages can be exchanged between them over protocol.
This simple example shows how e-learning services are implemented.In practice, we aim to allow students to submit their assignments online, and then the marks are generated automatically.To achieve this, online coursework submission software and student marks generating software are wrapped as a submission service and marking service, by adding interfaces on top of them.Student assignments are carried in messages, and they can be passed easily from submission service to marking service at run time.Additionally, people can choose services from different software providers.
There are standards to support varying aspects of implementing services interoperability.Service' interface is described by WSDL [40], educational data is carried by SOAP messages, and it can be exchanged via the HTTP protocol between services [41].UDDI are used to store information for varied services, so users can easily search and make selections of any of them depending on their needs.
The rest of the section discusses possible technologies to handle the different aspects of implementing services and their data communication, using existing standards [42].

A. Web Services Definition Language
WSDL is an XML based language to describe service interfaces from a technical point of view [43].A WSDL file defines a service as consisting of three layers.
• the first layer is the interface of a service.The interface describes operations and input and output data types used in the service; • the second layer is the binding of a service.It defines the protocol that is used to provide the service; and • the third layer defines the physical address where the Web service is available.

B. Simple Object Access Protocol
SOAP is a protocol that defines rules to exchange structured information between applications.It relies on XML as its message format, and a transport protocol such as HTTP for data transmission.SOAP messages are used to carry data for communications between services [44].It contains the following elements: • an Envelope element that identifies the XML document as a SOAP message; • a Header element that contains header information; • a Body element that contains call and response information; and • a Fault element containing errors and status information.

C. Universal Description Discovery and Integration
UDDI is a directory for storing services information (web service interface).Service providers can register their services in a UDDI directory.Service users can then search the UDDI directory to find the service they went.When the interface is found, the user can communicate with the service immediately [45].

VI. CONCLUSION
In this paper, we have proposed a novel approach to develop e-learning services from complex learning and teaching activities.We have also proposed 9 distinct elearning services that can be easily reused by learners and instructors.Some of them are particularly useful for addressing challenges relating to current practice.Also, both learners and teachers can easily make selections between services from multiple services vendors.These services are fundamental components to support our educational services framework in the future, and our proposed approach will be useful for developing other e-learning services.

Figure 1 .
Figure 1.The concept of services