Using Cloud Computing For E-learning Systems - WSEAS - Free Download PDF

1m ago
396.17 KB
6 Pages

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERSUsing Cloud Computing for E-learning SystemsPAUL POCATILU, FELICIAN ALECU, MARIUS VETRICIEconomic Informatics DepartmentAcademy of Economic Studies6 Piata Romana, Secot 1, [email protected], [email protected], [email protected]: - Cloud computing is growing rapidly, with applications in almost any area, including education. E-learningsystems usually require many hardware and software resources. There are many educational institutions that cannotafford such investments, and cloud computing is the best solution. This paper presents the positive impact of usingcloud computing architectures upon e-learning solutions development. It focuses on the benefits of cloud computing fore-learning solutions and the e-learning project management challenges when this architecture is used.Key-Words: - Cloud computing, E-learning, Mobile learning, Project managementunique access point for all the requests coming from theworld wide spread clients (see figure 1).Cloud computing comprises of three layers [5]: infrastructure as a service (IaaS) platform as a service (PaaS) software as a service (SaaS)Depending on the requirements, the customers canchoose one or more services provided.1 IntroductionDuring the last years, the nature of the Internet wasconstantly changing from a place used to read web pagesto an environment that allows end-users to run softwareapplications. Interactivity and collaboration have becomethe keywords of the new web content.There is no doubt the future belongs to the Web 3.0(also called the intelligent Web) [1]. This newenvironment supports the creation of a new generation ofapplications that are able to run on a wide range ofhardware devices, like mobile phones or PDAs, whilestoring their data inside the cloud.The need for education is increasing constantly andthe development and the improvement of the e-learningsolutions is necessary.Also, the e-learning systems need to keep the pacewith the technology, so the new direction is to use cloudcomputing.There are several cloud computing services providersthat offer support for educational systems. Among themare Amazon, Google, Yahoo, Microsoft etc.In [2] are presented the main advantages of usingcloud computing in schools.The following sections focus on cloud computingconcepts and the benefits of cloud computing for elearning solutions. Also, the impact on e-learningsolutions based on cloud computing project managementis analyzed. This is very important for the developmentof e-learning solutions based on cloud computing.2 Cloud ComputingThe cloud computing term was derived from the way theInternet is often represented in network diagrams. Due tothe fact it involves the existence of data centers that areable to provide services, the cloud can be seen as aISSN: 1790-5109Fig. 1 Cloud computingHardware devices (such as regular PCs, notebooks,mobile phones, PDAs or any other similar equipments)54ISBN: 978-960-474-134-2

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERS devices with minimal hardware requirements(mobile phones, for example) could besuccessfully used as cloud clients; in order to become part of the cloud, there is noneed to download or install a specific software,only the Internet connection is required; the cost of licensing different software packagesis moved to the data center level, so there is noneed to upgrade the local system when newservice packs or patches are released; crash recovery is nearly unneeded. If the clientcomputer crashes, there are almost no data lostbecause everything is stored into the cloud.Some of the main cloud computing disadvantages arethe following: the Internet connection speed may affect theoverall performances; on a long term basis, the data center subscriptionfee may be more expensive than buying thehardware; the service quality is crucial and the need of thebackups is critical when speaking about datasecurity.The major players in the field of cloud computing areGoogle, Microsoft, Amazon, Yahoo and some legacyhardware vendors like IBM and Intel. Cloud Computingapplications are mainly intended to help companies andindividuals to stretch resources and work smarter bymoving everything to the cloud.One of the biggest promoters of the cloud computingis Google that already owns a massive computerinfrastructure (the cloud) where millions of people areconnecting to. Today, the Google cloud can be accessedby Google Apps [6] intended to be software as a servicesuite dedicated to information sharing and security.Google Apps covers the following three main areas:messaging (Gmail, Calendar and Google Talk),collaboration (Google Docs, Video and Sites) andsecurity (email security, encryption and archiving).Microsoft is developing a new Windows platform,called Windows Azure, which will be able to run cloudbased applications [7].In 2006, Amazon extended its AWS (Amazon WebServices) suite with a new component called AmazonElastic Compute Cloud (or EC2), that allows to the usersto rent from Amazon processing power to be used to runtheir own applications [8]. The EC2 users rent out fromAmazon virtual machines that can be accessed remotely.The cloud is an elastic one just because the user canstart, stop and create the virtual machines through theweb service. There are three predefines sizes for thevirtual machines that can be rented: small, medium andlarge, depending on the physical hardware performances.or software applications (like web browsers, for exampleGoogle Chrome) can successfully play the role of acloud client (see figure 2). The customers are renting orsimply accessing the needed processing capacity fromthe data center using the above mentioned clientapplications. The quality of the service becomes acrucial factor of the cloud computing success.Fig. 2 Cloud computing clientsCloud computing is by no means different from gridcomputing. The later tries to create a virtual processor byjoining together a cluster of computers. The aim of a gridcomputing architecture is to solve large tasks by usingthe advantage of concurrency and parallelism, while thecloud is focused on collaboration.Cloud computing becomes very popular because itmoves the processing efforts from the local devices tothe data center facilities. Therefore, any device, like anInternet connected phone, could be able to solvecomplex equations by simply passing the specificarguments to a service running at the data center levelthat will be capable to give back the results in a veryshort time. In these conditions, the security of data andapplications becomes a very major issue.Cloud computing is widely accepted today due to itskey advantages: the cost is low or even free in some cases. Also,there are no costs (or very small ones) forhardware upgrades; for some applications (like spreadsheets) it canbe used even in the offline mode, so when theclient goes back online a synchronizationprocess is refreshing the data; the strong connection that exists today betweenthe users and their personal computers can becompletely broken because a customer can reachthe same result by using any Internet connecteddevice having minimum software requirements;ISSN: 1790-510955ISBN: 978-960-474-134-2

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERSdesktop computer. The client application can be a simpleweb browser or a dedicated application.Even with the current hardware and softwarelimitations, mobile devices are supporting lications, nowadays mobile applications, especiallymultimedia-based applications, have serious limitationsdue the processing power and memory constraints. Duethe fact that the data processing is on the server side, theuse of mobile devices for learning is growing fast. Still,the mobile applications need to be optimized to be usedfor e-learning. In [3] and [17] the m-learningapplications characteristics were analyzed.The e-learning server will use cloud computing, soall the required resources will be adjusted as needed.E-learning systems can use benefit from cloudcomputing using: Infrastructure: use an e-learning solution on theprovider's infrastructure Platform: use and develop an e-learning solutionbased on the provider's development interface Services: use the e-learning solution given bythe provider.A very big concern is related to the data securitybecause both the software and the data are located onremote servers that can crash or disappear without anyadditional warnings.Even if it seems not very reasonable, the cloudcomputing provides some major security benefits forindividuals and companies that are using/developing elearning solutions, like the following: improved improbability – it is almost impossiblefor any interested person (thief) to determinewhere is located the machine that stores somewanted data (tests, exam questions, results) or tofind out which is the physical component heneeds to steal in order to get a digital asset; virtualization – makes possible the rapidreplacement of a compromised cloud locatedserver without major costs or damages. It is veryeasy to create a clone of a virtual machine so thecloud downtime is expected to be reducedsubstantially; centralized data storage – losing a cloud client isno longer a major incident while the main partof the applications and data is stored into thecloud so a new client can be connected very fast.Imagine what is happening today if a laptop thatstores the examination questions is stolen; monitoring of data access becomes easier inview of the fact that only one place should besupervised, not thousands of computersbelonging to a university, for example. Also, thesecurity changes can be easily tested andimplemented since the cloud represents a unique3 Cloud Computing Benefits for Elearning SolutionsMany education institutions do not have the resourcesand infrastructure needed to run top e-learning solution.This is why Blackboard and Moodle, the biggest playersin the field of e-learning software, have now versions ofthe base applications that are cloud oriented.E-learning is widely used today on differenteducational levels: continuous education, companytrainings, academic courses, etc.There are various e-learning solutions from opensource to commercial. There are at least two entitiesinvolved in an e-learning system: the students and thetrainers.The students: Take online course Take exams Send feedback Send homework, projectsThe trainers: Deal with content management Prepare tests Assess tests, homework, projects taken bystudents Send feedback Communicate with students (forums)Usually, e-learning systems are developed asdistributed applications, but this is not necessary so. Thearchitecture of a distributed e-learning system includessoftware components, like the client application, anapplication server and a database server (see figure 3)and the necessary hardware components (clientcomputer, communication infrastructure and servers).Fig. 3 E-learning systemThe client hardware could be a mobile device or aISSN: 1790-510956ISBN: 978-960-474-134-2

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERSmanagement comprises of the following process groups(see figure 4): Project initiation Project planning Project execution Project monitoring and controlling Project closingSubsequent sections of this article will go into greatdetails of the project management process groups.entry point for all the clients.Another important benefit is related to costs. If the elearning services are used for a relative short time(several weeks, a quarter, a semester), the savings arevery important.4 Project Management ChallengesThis section deals with the impact of employing cloudcomputing architectures in the field of e-learningsoftware systems development. We analyze theindividual influence of the cloud computing modelcharacteristics on the project development process.4.2.1 Project initiation process groupThe initiation of an e-learning system developmentproject using cloud computing architecture comprises ofdeveloping the project charter and the development ofthe preliminary project scope statement.The project charter represents the document thatformally authorizes the development project and endowsproject manager with the authority to employorganizational resources to project activities.Preliminary project scope statement defines whatneeds to be accomplished, i.e. the functionalspecifications of the future e-learning system.4.1 DefinitionsA project is “a temporary endeavor undertaken to createa unique product, service, or result” [10]. In [11] we findthat “a software development project is a temporaryendeavour undertaken to create a unique piece ofsoftware.” Considering the two former definitions, westate that a cloud computing based development projectis a temporary endeavour undertaken to create a uniquesystem (both hardware and software) that will berunning on a cloud computing architecture. High qualitycloud computing based development projects deliver therequired product within scope, on time and withinbudget. It is the project manager’s duty to skilfullybalance the competing demands for project quality,project duration and cost of resources in order to be ableto deliver the system as planned.4.2.2 Project planning process groupThe very nature of a cloud computing business modeland of its technical architecture makes the planning of acloud computing based project different than any otherIT development project. Considering the cloudcomputing infrastructure will be rented from the serviceprovider, the project manager’s focus moves fromchoosing the right technology to choosing the rightvendor. Instead of concentrating on the computingpower of the architecture and the costs of scaling up thee-learning system, the project manager will be looking atsuch parameters as service availability, data security,backup and contingency plans the cloud computingvendor offers, etc.The more business oriented and less technical natureof the cloud computing based project activities can beimmediately observed in the project scope planning,project work breakdown structure, activity identificationand sequencing, activity duration estimation andschedule development. This is because the serviceprovider takes on this initial burden and then offers ondemand virtualized processing power. For projectactivity duration estimation, one or several of thedescribed techniques [12], [13] can be successfullyemployed.Cost estimation and cost budgeting project processesare highly biased because of the cloud computingarchitecture. The service supplier absorbs up-front costsand spreads the costs over a longer period and overseveral cloud computing customers. Thus, the initialcapital expenditure of the project is converted to ongoingoperational expenditure of the e-leaning system4.2 Project management for cloud computingsystem developmentAt the top level view, cloud computing baseddevelopment of e-learning systems follows the samepattern as any other software development project.Fig. 4 Cloud computing project management processgroupsNamely,cloudcomputingISSN: 1790-5109developmentproject57ISBN: 978-960-474-134-2

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERSmaintenance. Table 1 shows the average fees for cloudcomputing services.Google App Engine includes a free quota. After thisquota is exceeded, the rates from table 1 apply [14].Amazon EC2 services are charged based on therequired resources (small, medium or large) [4].Microsoft Azzure services are not yet commerciallyavailable [6]. Table 1 Average fees for cloud computing servicesProvider AverageAverageAverageCPU costbandwidthstorage cost(per hour) cost (per(perGB/month)GB/month)0.11 0.120.15 Amazon0.10 0.11 0.15 Google0.125 0.15 Microsoft 0.12 Using cloud computing instead of investments indatacenters (hardware and software licenses) will resultin a shift from capital expenditure (CapEx) tooperational expenditure (OpEx).Quality planning project process involves creatingtest plans for the future e-learning system. The testsshould take into consideration both intrinsic systemfeatures and performance testing on the cloud computingarchitecture.Human resource planning entails allocating bothlegacy software development personnel and cloudcomputing engineers that are aware of the peculiaritiesof these platforms.Communications planning means deciding whatproject processes and tools will be used for timely andappropriate generation, collection, distribution, storageand retrieval of project information. More exactly, thismeans setting up the reports that have to be generated,their content and frequency. Also, this implies setting upa bug tracking system for recording all the issues thatarise during e-learning system development.Risk management planning project processes needspecial attention when working with cloud computinginfrastructure. It is true that the cloud computingmaintenance burden resides solely within theresponsibilities of the provider. Even though there areservice level agreement items in the contract with thevendor, still Gartner analysts advices us [15] to discussthe following items with our future cloud computingvendor: Privileged user access, means asking who hasspecialized access to data and what are theprocedures regarding hiring and management ofsuch administrators. Regulatory compliance, means asking whetherthe vendor is willing to undergo external auditsISSN: 1790-5109 and/or security certifications.Data location, does the provider allow for anycontrol over the location of data.Data segregation means making sure that dataencryption is available at all stages. Also thisimplies making sure that the encryption schemesare designed and tested by experiencedprofessionals.Recovery, means discussing what happens todata in the case of a disaster, and whether thevendor offers complete restoration. If so, howlong does that process will take.Investigative support means making sure that thevendor has the ability to investigate anyinappropriate or illegal activity.Long-term viability, what happens to data if thecompany goes out of business. Also this impliesmaking sure that the date will be returned in anappropriate format.Data availability means asking what are theprocedures of moving the data onto a differentenvironment, should the vendor decide to dothat.4.2.3 Project execution process groupExecuting the project means directing and managing theproject development and performing ongoing qualityassurance. For a successful cloud computing based elearning system to be developed, legacy softwaredevelopment techniques can be successfully employed.That is source control software, build scripts for buildingthe deployment package and automated tests forregression testing. Project criticality analysis techniques[16] can be easily employed in order to enhance theproject development quality.4.2.4 Project monitoring and controlling processgroupThe monitoring and controlling processes are performedduring the entire project lifecycle in order to takepreventive and corrective actions so as to meet theestablished project performance goals. Continuousmonitoring gives the project management team insightsregarding project health and identifies any areas thatmight need special attention.The cloud computing based e-learning systems are nodifferent than other software development projects. Moreexactly, monitoring and controlling processes areconcerned with: Assessing project current performance. Comparing planned and actual projectperformance. Analyzing, tracking and monitoring identifiedproject risks. Provide accurate information regarding project58ISBN: 978-960-474-134-2

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERS status report.Provide updated project costs and scheduleinformation.Manage ongoing feature change requests.Computers in Business and Economics (MCBE'09),Prague, Czech Re

RECENT ADVANCES on DATA NETWORKS, COMMUNICATIONS, COMPUTERS ISSN: 1790-5109 56 ISBN: 978-960-474-134-2. entry point for all the clients. Another important benefit is related to costs. If the e-learning services are used for a relative short time (several weeks, a quarter, a semester), the savings are