Adopting Cloud Computing Technology to enhance the Architecture of a Proposed Learning Content Management System
Abstract
E-learning systems usually require many hardware and software resources which require a lot of investment. There are many educational institutes that cannot afford such investments, and cloud computing is the best solution. Cloud computing is becoming an adoptable technology for many institutes with its dynamic scalability and usage of virtualized resources as a service through the Internet. This paper promotes a cloud-based, multi-platform E-learning solution to help educational institutes especially, which are under budget to manage their E-learning content in an efficient, cost-effective way.
General Terms
E-learning, E-learning Systems, and Cloud Computing
Keywords
E-learning, E-learning Systems, LCMS, Infrastructure, Cloud Computing, and GAFE
1. INTRODUCTION
E-learning has become an indivisible part of education due to the trend of utilizing the newer information technology. It is a force, which has some kind of presence on almost every campus in developed countries. As a result of the rapid development of Information and Communication Technology (ICT) and their increasing relevance in all aspects of our living, the role of E-learning systems increases too.
E-learning systems are complex, data systems primarily determined for the support of E-learning activities [1]. They have several names which basically mean the same: Virtual Learning Environment (VLE), Learning Management System (LMS), Course Management System (CMS), Learning Content Management System (LCMS), Managed Learning Environment (MLE), Learning Support System (LSS), and Learning Platform [2].
With the increase in number of students and rapid growth of content, the educational institutes are confronted with a dramatic increase in costs [3]. Also, E-learning systems’ dimensions grow at an exponential rate. The challenges regarding this topic about optimizing resource computation, storage, and communication highlight the necessity of the use of a platform that meets scalable demands and cost control. This environment is cloud computing [4].
Cloud computing is an excellent alternative for educational institutes, which are under budget shortage in order to operate their E-learning systems effectively without spending any more capital for the computers and network devices. Universities can take the advantage of available cloud-based applications offered by service providers, and enable their own teachers and students to perform academic tasks [5].
The purpose of this paper is adopting cloud computing technology to enhance an LCMS architecture which provides educational institutes with an efficient, cost-effective solution. This paper is structured as follows. Section 2 presents cloud computing, advantages, and challenges of cloud-based solutions. Section 3 presents the proposed system architecture. Section 4 presents the results and discussions, and conclusions are presented in section 5.
2. CLOUD COMPUTING
2.1 Definition
According to the National Institute of Standards and Technology (NIST), cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g. networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or provider interaction [6-14].
2.2 Essential Characteristics
NIST identified the following five essential characteristics of cloud computing:
• On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider [14].
• Resource pooling. The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources but may be able to specify location at a higher level of abstraction (e.g., country, state, or datacenter). Examples of resources include storage, processing, memory, and bandwidth [6, and 14-18].
• Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time [16].
• Measured service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service [6, 15-16, and 18].
• Broad network access. Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations) [14].
2.3 Service Models
According to [14-15, and 18-23], cloud computing have three essential service models:
• Software as a Service (SaaS). The capability provided to the consumer is to use the provider’s applications running on a cloud infrastructure. The applications are accessible from various client devices through either a thin client interface, such as a Web browser (e.g., Web-based email), or a program interface. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.
• Platform as a Service (PaaS). The capability provided to the consumer to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration settings for the application hosting.
• Infrastructure as a Service (IaaS). The capability provided to the consumer is to provision processing, storage, networks, and other fundamental computing resources where the consumer is able to deploy and run arbitrary software, which can include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, and deployed applications; and possibly limited control of select networking components (e.g., host firewalls).
2.4 Deployment Models
According to [6, 15, 18, 20, and 24-26], cloud computing have the following four essential deployment models:
• Private Cloud. The cloud infrastructure is provisioned for exclusive use by a single organization comprising multiple consumers (e.g., business units). It may be owned, managed, and operated by the organization, a third party, or some combination of them, and it may exist on or off premises.
• Public Cloud. The cloud infrastructure is provisioned for open use by the general public. It may be owned, managed, and operated by a business, academic, or government organization, or some combination of them. It exists on the premises of the provider.
• Community Cloud. The infrastructure is provisioned for exclusive use by a specific community of consumers from organizations that have shared concerns (e.g., mission, security requirements, policy, and compliance considerations). It may be owned, managed, and operated by one or more of the organizations in the community, a third party, or some combination of them, and it may exist on or off premises.
• Hybrid Cloud. The hybrid cloud infrastructure is a composition of two or more distinct cloud infrastructures (private, public, or community) that remain unique entities, but are bound together by standardized or proprietary technology that enables data and application portability (e.g., cloud bursting for load balancing between clouds).
2.5 Advantages
There are many advantages of switching to a cloud computing model:
• Cost Effectiveness. In the past, organizations have had to buy their own hardware and software to automate and improve their business processes. IT teams were also employed by organizations to manage their hardware and software. Cloud computing implementations have revolutionized as the management of the hardware’s and software’s is now the responsibility of the third party service provider. Cloud computing implementation has been found to be cost-effective as it helps organizations to eliminate the cost of buying, installing, maintaining, and upgrading hardware and software [27].
• Enhanced Availability. A further benefit is that availability may be higher with less downtime due to the superior resources and skills available to cloud providers. Whereas a university computing service department may aim to achieve 99.5% availability for its educational services such as LMSs, Google offers 99.9% availability for its educational application suite and appears to outperform this target. Students increasingly dependent on online services for learning and assessment should be given the best possible availability [28].
• Scalability and Elasticity. The infrastructure of cloud computing is very scalable. Cloud providers can add new nodes and servers to cloud with minor modifications to cloud infrastructure and software. This enables organizations to quickly scale their operations – scaling up and down hardware, network capacity, and cost based on demand. Provisioning of new resources and software applications can be delivered at a pace that does not hold back the rest of the business. By tapping into right cloud capabilities, companies can quickly enter new markets or launch new services in existing markets. As demand grows, they can quickly scale up. Conversely, when opportunities dry up, they can scale down with minimum waste of time and capital [18].
• Centralization of Data Storage. The cloud provides much storage recourses than that available in local, corporate computing systems. Moreover, there is flexibility in increasing or decreasing these cloud storage resources according to operating cost adjustments. This form of centralization of storage infrastructure results in cost efficiencies in utilities, trained personnel, and real-estate. In addition, it will be much easier to implement and monitor data protection schemes in a centralized system than on large numbers of computing platforms [21].
2.6 Challenges
Despite various benefits of cloud computing, there are some challenges and drawbacks:
• Data Security and Privacy. This issue has always been a major concern for users who had data stored in a third-party storage space. In cloud computing, this issue is also the most important concern of cloud users as they will not know exactly where their data are going to be stored and who would have the privilege to access it inside the cloud infrastructure, and how the safety and integrity of their data can be guaranteed [13].
• Data Location. The geographic location of the data matters in some cases. Knowing data’s location is fundamental to securing it, as there might be important differences between regulatory policies in different countries. Customer could be involved in illegal practices without even noticing, as some governments prosecute companies that allow certain types of data to cross geographical boundaries [30].
• Data Lock-in. Lock-in means that the data is locked to a certain Cloud Service Provider (CSP) because there are no standards followed in data formats or in services interfaces that could guarantee data portability. This make the customer migration from one provider to another or migration of data and services back to an in-house IT environment a difficult task [21].
• Service Availability. Outages of a service become a major worry when customers have deposited all their information in the cloud and might need it at any time. Given that the customer management interfaces of public clouds are accessible via Internet, there is an increased risk of failure when compared to traditional services since there are more weak points in the chain of elements needed to access the information or application [30].
3. SYSTEM ARCHITECTURE
The main components of the proposed cloud-based LCMS are: automated authoring applications, learning object repository, administrative application, and dynamic delivery interface as shown in Fig. 1.
Fig 1: The proposed system architecture
3.1 Automated Authoring Applications
Automated authoring applications are used to create Reusable Learning Objects (RLOs) that are accessible in the repository. These applications provide authors with templates and storyboarding capabilities that incorporate instructional design principles. According to the proposed system, automated authoring applications component consists of two main parts: TinyMCE editor and Google Apps for Education (GAFE) as shown in Fig. 2.
Fig 2: Automated authoring applications
3.1.1 TinyMCE Editor
What You See is What You Get (WYSIWYG) editor is the main authoring tool for most of LCMSs, which makes the content creation process easier for those authors who don’t have such knowledge to handle HTML code. TinyMCE is one of the most advanced WYSWIYG editors designed to simplify content creation. The proposed LCMS adopts TinyMCE as an editor.
Educational institutes usually need various applications to create learning content. In traditional situations, they buy licenses for using software which will be installed on hardware. To receive support and updates, it is needed to pay more. This way of working comes with large upfront investments of hardware and software [31]. Therefore, the proposed system adopts GAFE to enhance authoring process.
3.1.2 Google Applications for Education
GAFE is a free suite of cloud-based applications that Google provides to educational institutes [32]. The adopted applications from GAFE are as follows:
• Docs. Docs allows to create meaningful, impactful, and persuasive documents. Using Docs, users can write, edit, and collaborate wherever they are [33].
• Slides. Slides allows to create beautiful, impactful, and inspiring presentations. Using Slides, users can write, edit, collaborate, and present wherever they are [34].
• Sheets. Sheets allows to create complex, powerful, and useful spreadsheets. Using Sheets, users can create, edit, collaborate, and present wherever they are [35].
• Forms. Forms allows to create effortless, beautiful, and polished forms. Using Forms, users can collect and organize information [36].
• Drive. Drive is a safe place for all files. It allows the following features: keep any file, share files and folders, sync files with computer automatically, and view files without buying extra software [37].
3.2 Learning Object Repository
Learning Object Repository (LOR) is a central database in which learning content is stored and managed. Learning Objects (LOs) can be dispensed to users individually or used as components to assemble larger learning modules or full courses, depending on individual learning needs. The same object may be used as many times and for as many purposes as is appropriate.
Usually, educational institutes buy a massive online storage for E-learning content. Instead, the proposed system adopts Drive service from GAFE to store, manage, and share E-learning content which achieves the following advantages:
• Cost Savings. The cost of hardware and maintenance are eliminated.
• Syncing. Syncing ensures that files are automatically updated across all devices.
• Sharing. Online storage services allow to easily sharing files with just a few clicks.
• Collaboration. People can work on the same file with the ability to track changes.
• Enhanced Accessibility. Stored files can be accessed from anywhere anytime.
3.3 Administrative Application
This application is used to manage courses’ records and provide other basic administrative functions. The proposed system’s administrative application consists of the modules shown in Fig. 3.
Fig 3: Administrative application modules
• Authentication Module. This module consists of three major functions: login, logout, and reset password. Every one of them has its own task.
• Homepage Module. If an administrator logged in to the system correctly, he will be redirected to the administrator application’s homepage.
• Pages Management Module. This module enables system administrators to manage the system pages. Thru it, they can view all pages, create a new page, edit a page, arrange pages, preview a page, and delete a page.
• Courses Management Module. This module enables system administrators to manage courses. Thru it, they can view all courses, create a new course, edit a course, preview a course, and delete a course.
• Lessons Management Module. This module enables system administrators to manage lessons. Thru it, they can view all lessons, create a new lesson, edit a lesson, preview a lesson, and delete a lesson as shown in in Fig. 4.
Fig 4: Lessons management module
• Cloud-Based Applications Management Module. This module enables system administrators to manage cloud-based applications. Thru it, they can view all applications, add a new application, edit an application, access an application, display a demonstration video, and delete an application as shown in in Fig. 5.
Fig 5: Cloud-based applications management module
• Articles Management Module. This module enables system administrators to manage articles. Thru it, they can view all articles, create a new article, edit an article, preview an article, and delete an article.
• Users and Groups Management Module. This module enables system administrators to manage users and groups. Thru it, they can view all registered users, create a new account, edit an account, delete an account, create a new group, and edit a group.
• Massages Management Module. This module enables system administrators to manage messages. Thru it, they can read a message, reply to a message, and delete a message.
3.4 Dynamic Delivery Interface
The main function of this component is to serve up E-learning content. It consists of the pages shown in Fig. 6.
Fig 6: Dynamic delivery interface pages
• Homepage. This page works as a front page for the system. When a user visits the system through a Web browser, this page is displayed. The homepage contains a scroller for the most recent courses added to the system as shown in Fig. 7.
Fig 7: Dynamic delivery interface homepage
• Courses Page. When a user clicks the “Courses” link from the navigation menu, this page is displayed. The courses page displays the currently available courses on the system.
• Course Page. When a user clicks a course title from the courses page, this page is displayed. The course page displays the currently available lessons related to a specific course.
• Lessons Page. When a user clicks the “Lessons” link from the navigation menu, this page is displayed. The lessons page displays the currently available lessons on the system.
• Lesson Page. When a user clicks a lesson title from the lessons page, this page is displayed. The lesson page displays a specific lesson. Below the lesson content, there is a discussion board allows users to have discussions about the current lesson as shown in Fig. 8.
Fig 8: Dynamic delivery interface lesson page
• Articles Page. When a user clicks the “News” link from the navigation menu, this page is displayed. The articles page displays the currently available articles on the system.
• Article Page. When a user clicks an article title from the articles page, this page is displayed. The article page displays a specific article.
• Contact Page. When a user clicks the “Contact” link from the navigation menu, this page is displayed. The contact page main contents are a map to the institution’s geographic location, a form to enable users to leave a message for the system administrator, phone, E-mail, and Facebook account.
4. RESULTS AND DISCUSSIONS
To evaluate the proposed system, a heuristic evaluation checklist developed by Pierotti was used [38]. Three response levels were used for the checklist criteria: (1) yes, (2) no, and (3) Not Applicable (NA). Scores were used to determine the system usability.
The checklist included 106 questions categorized into 14 parts as follows:
• Visibility of System Status. Questions under this category mainly focused on consistency through the system, and legibility and understandability of the user interface.
• Match between System and the Real World. Questions under this category aimed to measure complexity of the structure, and familiarity and completeness of the user interface.
• User Control and Freedom. Questions of this part related to control and navigation of the user interface. Another concern of this part is given freedom to users.
• Consistency and Standards. Questions under this category aimed to measure consistency of the user interface through all parts: menus, structure, and navigation.
• Error Prevention. Questions under this category aimed to test the mechanism developed to prevent users from making errors or making wrong actions.
• Recognition rather than Recall. Questions of this part usually related to visual attributes, aids supplied, and consistent design of the interface.
• Flexibility and Efficiency of Use. Questions under this part aimed to measure flexibility of the system and efficiency of using system parts.
• Aesthetic and Minimalist Design. Questions related to this heuristic aimed to found problems related to legibility, briefness, and excessive use of buttons or texts.
• Help Users Recognize, Diagnose, and Recover from Errors. At this part, questions related the efficiency of error messages, and prompts were tested.
• Help and Documentation. Questions used at this part related to general structure, accessibility of help, and documentation.
• Supporting Multi-platform and Cross-browser. Questions used at this part related to the efficiency of the proposed system on different platforms and Web browsers.
• Supporting Cloud–based Applications. Questions used at this part related to the proposed system’s supporting for cloud–based technologies.
• Availability and Accessibility. Questions used at this part related to the impact of adopting cloud computing on E-learning content availability and accessibility.
• Total Costs. Questions used at this part related to the impact of adopting cloud computing on the total costs required for E-learning process.
A live version of the system was configured online. Also, different user accounts were created for evaluators who were a group of computer and information technology teachers, and then accounts information was sent to them. Using a suitable device and browser, evaluators logged in to the system and examined it regarding the checklist’s criteria. Table 1 presents the evaluators’ responses for every heuristic of the evaluation checklist.
Table 1. Heuristic evaluation checklist results
Heuristic Responses
Yes No Na
Visibility of System Status 94.0 3.0 3.0
Match between System and the Real World 93.1 2.2 4.7
User Control and Freedom 77.5 16.6 5.9
Consistency and Standards 96.2 1.5 2.3
Error Prevention 94.2 1.7 4.2
Recognition Rather Than Recall 93.8 2.7 3.5
Flexibility and Efficiency of Use 63.8 20.4 15.8
Aesthetic and Minimalist Design 97.8 0 2.2
Recognize, Diagnose, Recover from Errors 96.7 0.6 2.8
Help and Documentation 98.9 1.1 0
Multi-Platforms and Cross-Browsers 95.0 0 5.0
Supporting Cloud Computing 93.3 1.7 5.0
Availability and Accessibility 100 0 0
Total Costs 100 0 0
Mean 92.44 3.67 3.89
The heuristic evaluation checklist results are presented in Fig. 9, checklist heuristics were represented in numbers from 1 to 14. Evaluators’ response for every heuristic is presented in percent.
Fig 9: Evaluator’s responses
Based on the foregoing results, there are no major problems found related to checklist heuristics. But, some improvements were needed at some parts of the system such as user control and freedom. So, various modifications related to these parts were made to increase the system usability. To get the overall degree of system usability, the mean of the three responses: yes, no, and NA for the checklist heuristics was calculated as shown in Fig. 10.
Fig 10: Overall responses
From the foregoing results shown in the above figure, 92.44% of evaluators agreed with the checklist heuristics, which means that the proposed system is highly usable. Also, this implies that adopting cloud computing technologies to enhance the system architecture reduced the overall costs required for E-learning process. Since cloud computing implementation helped users to eliminate the cost of buying, installing, maintaining and upgrading hardware and software, and allow them to pay for services on demand, the proposed system has been found cost-effective.
5. CONCLUSIONS
During this paper, a cloud-based LCMS was developed. The proposed system was developed to be multi-platform, cross-browser system. A long with cloud-based applications, the system helped educational institutes and teachers to manage E-learning content effectively and costless.
The proposed system adopted GAFE to enhance the E-content management process. It provided teachers with a list of cloud-based applications that helped them to quickly access the required application and create, manage, store, and share E-content through Web browser. In addition, it provided teachers who are not familiar with cloud-based applications with a set of demonstration videos to help them know about how to use these applications.
Depending on a heuristic evaluation checklist, the proposed system was evaluated by a group of computer and information technology teachers. Based on evaluators’ responses, the system achieved 92.4% of usability and efficacy, so it has been highly recommended, since it showed a high level of availability, accessibility, and cost effectiveness.
The efficiencies of cloud computing can help educational institutes to keep pace with the ever-growing resources, so new cloud-based solutions had to be thought off, to allow maximum efficiency and utilization of resources and the same time to be economically viable. Moreover, alternative methods must be developed to enhance E-learning systems’ architecture with cloud computing technologies.