Home > Article > Loosely Tied Distributed Architecture for Highly Scalable E Learning System

Loosely Tied Distributed Architecture for Highly Scalable E Learning System

E-learning, experiences and futureInstead of reducing client software sophistication and moving all possible mechanisms to(called modules)and define methods of communications between them Such approachnumber of unique advantages: systeed gradually and not all of itsneed to be deployed (partial deployment) modules(which provideor clientfunctions) can be connected and disconnected from the system at will without disrupting itsFurthermore, system scalestarting from a single client(without aindependent orgats, hundreds(each running a chosen set of modules)and thousandsvarious clients, Integration with third party products is also easy, and third partye present our solution using our original knowledgeent system, created accordingarchitecture, as an exloyed and tested in prodonment on Faculty of Electronics, Telecommunications and Informatics, Technicalof did ty of Gdansk with great success, reducing staff workload and increasing efficiencluded tests results also shown the following section of the chapter we describesy:cluded in the next section, followed by presentation of our originstraction Layer ( ComAL), designed specificalldescription of its architecture and existing modules is provided next Modules are dividedto server and client modules, with a special section devoted to a simulation-based onesNext, we present description of a few possible configuration scenarios and present results ofith conclusions gathered both from theoretical analysis of the new architecture anddistributed, ComAL-supported knowledge assessment system2 SysteThe task of knowledge assessment is one of the fundamental elements of didactic process

as alsothe first didactic tasks to be conducted by various electronic learningmployed to support didactic process Currently there are many e-learning solutionsodule("Saka2008) Almost any advanced e-learning tool offersht of those factuld conclude that thisell explored one and suitably supported by practical e-learning productsOur experience with e-learning systems both as their users and designers, leads us tof currentIelectronic knowledge assessment tools are extremely similar and offer strictlynationality Such products offer almost exclusively knowledgvarious choice tests and their automatic grading mechanisms most oftenmprehensive and fit to support different grading scenarintechopen

Loosely-Tied Distributed Architecture for Highly Scalable E-Leaming SystemAll of these modules are able to function as independent applications and support fullComAL capabpackagesd to them as cryptographically protected files(automatically generateAlso thof network connectivity and initiate automaesults gatheredServer part of the systedistributed databasete configuration information A single server consists of a database(mostoften an SQL")and at least one of two modules: system maintenance module andyorstem maintenance module is responsidinformation basen administrator is responsible for creating a distributed system architecture byechanisms are permitted for each link If ar cannot maintainmechanism it will switch do less demanding one if such is permitted, otherwise itk as down A simple link-state path selection protocol is then used tooring mechanismsmunication structure works a data indexing mechanto distributed information base froly system ncludwide configuration(systedidactic content(test content, grading rules, student lists, test results and grades etc

)whichkeptspecific server and is not replicated(however, creatinpossible), but can be searched and accessed from any server if there is connectivity presentrights are sufficient(Figure 4)OU1 Server OU2 SeOrganization 1Fig 4 Server side of the system: A, B-configuration content(replicated)in organization,actic content (indexed ontechopen

E-learning, experiences and futureSuch architecture allows largely independent operation of a particular server(supportingof the systemwhole and easyto information stored on differentachers or departments the freedom of independentation and stilldebe connected and disconnecfrom the distributed system at will with no negative effect for them or the system(otherwill communicate with clienit must incltion module it iswith other modules usinglyingdules with configuratactic contenthering andprocessing incoming results and providing teachers interface to the systemTeachers interface allows its user to create test packages and assign it to specifiechoice of available tests, Such test package contains all information to condutent adspecific client module, grading rules and additionalinformation concerning test execution (time limit, randomization of content,results upload etc

exporting system data in the sa, porting external data in XML foThere is also an optionto the system ande formatDescribed structure of the distributed database addresses important requirements necessaryd efficient system dhille overallystems integrity remains intact Perforobleeasily solved by deployingReliability level alsoery highsystemto reconfigure its data paths and the only resources that are unavailable are thesemirrored elsewhere)on the malfunctioningFurthermore, despite all these advanced functions and possible configurations, deploymentmains uncomplicated6 Client modulesClient modules are critical for the system as they are its point of contact with the studentdle fony essential tasks, suchpresentation of test content, en-forcingorming it and sendinginformation back to the system for procesbe conducted client-sideclientuIcliencation module Server side gradingsealab6This first and most often employedallows knowledgeof dhile the method itsry popular inof e-learning products, we designed this module to provide functionality unique amongsimilar productsntechopen

Loosely-Tied Distributed Architecture for Highly Scalable E-Leaming System多確eac=」Module's user interface( Figure 5resentation of wideof multimedia contentincluding formatted text, bitmap and vector graphics, soundselected from a larger set, and order of both qAutomatic grading mechanisms support both single and multiple choice questions in singlepopular methpoints for test answers The total test result can be normalized fThe module returns to server or external applicationgrading mechanisms), such as: personal data, test id, timeframe of test, client-side gradingresults of all questions and total grade, alluser name IP address etcModule configurationteacher to enforce various additional test characteristics, suchas necessity of solving questions in order, lack of ability correct already answered questions,time limit for a whole testApart from already described functionality, one of ores was to take fullComALation capabilities allowing the software to function as partof managed system even without network connectivity

Such scenario is most often ignoreby de-signers of modern e-learning solutions as it prohibits the use of web-based thin-clicvery popularbtaining network connectivity is often the final goal of laboratory exercisesule is fully capable of independent offline operation according to encrypted andto theother application such as MS Excel The module can also detect availablnetwork connectivity and update its status by obtaininconfiguration settings/ courseackages from the server and uploading cached test results automatiAfter through testing of this module and over one year of its extensive usage in real didactic?Ltronment, we decided to upgrade its functionality to better supporinitial version, the module can support remote knowledgentechopen

E-learning, experiences and futureessment activities, but it does not incorporate any dedicated mechanisms for the task,us connectivity conditionsKnowledge assessment in remote learning scenario is a very difficult taonmentfor example, there is no guarantee, that the test wasted by ano prohibited reatorsonce, that the questions were unknown prior to test, etclutions proposedmonitoring and similar, difficult and costly solutions) but any of them can be bypassedment and maintenance can be calledtroublesome"at best In this situation we decided to test a number of new approaches tothe problem of enforcing test conditions in remote learning scenario, but none of them hasprovide guarantees- only to protect against most commonor teacherbasicity elements of remote knowledgecommunication aforementioned information should beand results need to be protected against unauthorized3 User identity verification- there should be some way to verity identity of a personSecure Storage functions, Secure communicmechanisms were included in ComAfrom the beginning asnmon requirement for e-learning systems

New Secure Storageprocedures can prevent users from obtaining unauthorizedto local module datarotection against multiple test attperformed by backing up and restoring moduleuntersconfirmativedecided to employ keystrokedynamics analysis(Sungzoon C et al, 2000)-method of identification based on measuringming relations between keystrokes This method is employed during u(about 100 tests), the methoded over 90% efficiendempersonate users The required identification data (necessary to train underlying neuralnetwork) has been collected during preceding classroomAs a result we have at our disposal one of the most advanced(apart from adaptive choicetests)knowledge testing products utilizing choice test method, which can functionto integrated ComAL functionality andes dedicated supportmechanisms for remote know ledge assessmenntechopen

osely-Tied Distributed Architecture for Highly Scalable E-Leaming System62 Real-time grading moduleReal-time grading module has beeto support classical theoretical anderface for aallowing him to grade students during suchhe main element of thinterface(Figureanticipating in the cus and task numbers in columns, a teacabove 100% for exceptional perl9) for specifind the system will calculate resulting total grade automatically and in real-timeFig 6

Real-time grading moduleof any ComAL-supported mechanisms including offline files Fortalry test before the class, their list,th additionalinformation such as their place number and entry test grade will be displayed Of courseating such list can also be used (such as dedicated system module fehecking in or a teacher prepared list) and provided to module by the server automaticallpart from user list, module can also take into account different point weights for differenttasks, and such information is obtained by the module in the same way as the listThis modulebehelp for a teacher, as he has complete information abohis students at his disposal including name, place, and if entry tesway he knows the entry level of theoretical knowledge of his students and can assign hisattention accordingly Also students progress during currenteasy to track andan be uploaded to system server via any of ComAL transport63, Real-time graf theGdansk University of Technology proved greatusefulness of Real-time gradingmo e wIt has been suenarios, including lectures, both theoretical and laboratory exbility to easily grade activity of students, without interrupting the flow of lecture/exercis(to askexample) is a greatthe dthemostntechopen

E-learning, experiences and futureable to run full bmapplications and equipped with standardmutations andopularity of Symbian based mobile phonespports all console types available inphones: standard phone keyboard, fullkeyboard and touch screenule utilizes a simmunication models online andoffline) of Coth use of wiFi, GPRS/ EDGEBluetooth It is also abletransmit ComAL offline communication files through IrDanges information with system in real-time, while offlineode allows teacher to download/upload information packages on demandthe grades, which has proven an efficient one in case of large number of studentsInstead of marking theirhical list (xrow number/ chair number"format, task number andThe module will provide him with student identity and information about hisWith help of such module the most troublesome element of real-time grading is obtaientification of place that a given student occupies, To help with there currently developing and testing two different solutions, both utilizinoguter laboratories, utilizes Bluetooth interface Itt in studmputers, Hardware address of a Bluetooth interface with the strongest signal is thenchecked with aof such addresses to obtain aouter number (place number)

Inpractice it means that all a teacher has to do is to approach a student instead of enteringD manually the module will display student's information aner the gradened for larger environments (fecture hallsnlynline mode In contrast with thetooth-based solutiescribed above, it depends on WiFi acoints(APs) and their ability to measure wiFicaent's signal Our test proved, that with 3-4 APs(we used Cisco Aironet 1100 APssibleinpoint location of wireless client with about 5 mufficient to identify a particular place in the hall, but the module uses this informationdown the list of possible place ID, which it provides to teacher to choose fromguration of the required infrastructure: Bluetoothterfaces should be of the same type or at least transmit with similar power, they need to bewhere they willl not transmit thinformation), the table of Bluetooth hardware addresses and their corresponding place IDsas the table allowing translntechopen

osely-Tied Distributed Architecture for Highly Scalable E-Leaming System64 Script-based automatic grading fiofInerifyimple scriptscheck connectivity, mence statistics(such as throughput, errerate,delay etc ), monitor availability of services(such as for example htTp,Ftp, dnS,or even remoteuters to check correctness ofstudents and help them troubleshoot their solutieing the usefulness of such tools, we decided to integrate them witht system Thedifficulty of this task originates from a multavailablepting engines, additional required libraries etccrits and pms supported by an underlying operating system and then captdhe module obtains configuration from a system server (through ComAL)or from a localXML file Teacher can configure what programs and scripts are to be executed, how oftenre network throughput through a student configured system If thecertain threshold, mark task 5below thishreshold, but here is connectivity mark task 5 as completed in 50%Many programs and scripts can be used to verify a single task creating complex and detailedchained with OR/AND conditionsTeacherin a hierarchicala gI\task -for example: Completion of task 6 ischecked until task 5 is markedcompleted"

It prevents unnecessary checks and possible"false positives" by allowing theteacher to clearly specify the moment the task begins and /or correct starting configurationTest dnt of the frameworker networks laborathding of manyed that teacher analstudents' workflow and prepares a weigned and tested module configurationHowever, as a results of a test deployment we decided to mark automatically assigned taskgrades in systems database as such, for optional verification and confirmation by a teaches7 Simulation-based client modulesrvice in didactic(Chwif, L &e BarrettChiaming Y, Wu-Jeng L,, 2003)and2002) - d classical learning activities (Lainema T Nurmi s2006)(Henning K et al, 2005) Ofthere aresuitable for different tasks: thesimulators devoted to detailed modeling of physicalrocesses (ofteines (for example: flight simulators), and a great many otheroductsIn our work at Gdansk University of Technology we find simulation an effective tool in botharch and didactic tasks Its usefulness in computer network science research is obviousntechopen

Loosely-Tied Distributed Architecture for Highly Scalable E-Leaming Systemn complex e-learning systems knowledge assessment functionality is treated as mandatoryement, but alsomplementation of choice test Specialized knowledge testing solutions (employed for

ample by Microsoft during their computer proficiencymechanisms, like adaptive question selection, but they are few and still do not go beythe basic scenario of choice test(Bersin Accociates, 2004), (Jesukiewicz, P et aL, 2006)part from these weaknesses, one of the most serious problems with currently availablis theirk connectivity Majority of such productslearninn and few are fit tounder other circumstances, such as periodic or no network connectivity, and still ropart of managed e-learning system The quality of network service is also a factor inewski T, 2004)Apart from characteristics directly connected with didactic process, there is also aFrom our experience, the most common reasons for e-learning system deployment problemsfall intthese categoriesexpected functionality of the e-learningterfacedesign,2 incompatibility or lack of integration with other systems being used in3 inability to provide a smooth transition from previously used product

In case of large organizations4 performance/availability problems,The first point is self-explaining and well known- choosing the correct functionality of thebasic step in deployment process andking functions will lowerIn the event where any advantageous function is missing from the product it can beprovided by external applications if the system has been designed with ease of integration inUser interface is the element of e-learning system which has directwith itsdrectly influences thn about the prodknowledgnent systems that includes both teachers and students Efficient and friendlyterface has a paramount impact on system deployment Moreover, if we are deploying asystem in place of previous solutions, serious differences in menu layout will mostlikely be received unfavorably by unt system most often functiarallel with othermputerized applications -grade archivplanners, payment/finance systemste Inneed to make results of know ledge-assessmernould be taken tobetwehis functionality will drastically reducentechopen

E-learning, experiences and futureusefulness of e-learning system and create resentment of users each time an additional worktransfer the data will be requiredalso be easily extended with new functionality, when a need asee point 1), whichry rarely an e-learning knowledgeill be deployedgiven organization more often it would be deployed in place of someIsIfulfill this goal administrators neednsider its technical andyment include such critical elements as uninterruptedand good system performance The service provided by e-learning systeavailable to all interested users continuously, even during the period when an old solutionts operationcover care should be taken tomaintain a good system performance despite a heightened load of the system, which ispected shorrganizational aspects of smooth transition are even more important and difficultaccustomed to their familiar ways of conducting e-learning tasks If the deployment ofIt is also very probable, that teachers organized their workay, which allowed them tostem-if theo,Osition will require drastic changeschances of successful deployment will be low, Therpossibility, that users augmented the basic systems functionality with third partyple they use MS Excelanalyze results exported from the system)Moreover, users weprobably hayconsiderable amount of data collected in theprevious system (for example: test content, grades history etc ) which must be possible tolan toy independent solutions used through an organizaface the most difficuld hardand performance requth different needs will be required to unify theto match functionalitya new system and depend on centrallwhere any modification of syis much more complicated, time consumingnd thus unlikely

Moreover, while consolidating data from different organization units cadifficult, the opposite operation(separation a from shared data store)can prove eveproviding necessaryfunctionality, interoperability of an advants key characteristicifferentiation of systemoperation between organizational units in largens and provide highrformance/reliability are highly recommendedHaving analvzed aboyment pand difficulties of deploying aigned and created our own dedicated knowledge assessment system It wasnedntechopen

Loosely-Tied Distributed Architecture for Highly Scalable E-Leaming Systemprovide highly modifiable platform for various knowledge testing tools, able to provide itsny networystem can scale from very simple setup(adequate for servicing a singleterprise Strictly modular architecture allowsto employ only a selected set of its mechanisms and extremely easily integrate it with third-lutions The selection of employed modules dependthere is no mandatory control module or management platform which must be p scenarios,to1 the classic, but higd versatile, multiple choice knowledulation based knowledge and skillses concerning Asynchronous Trans4

a number of modules allowing a real-time grading of students perfOur system also addresses security aspects of remote, computer based knowledge testing, inkey element of the system, we have created an innovative CommunicationAbstraction Layer(ComAL)-a set of mechanisms designed to provide e-learning systemdesigners with API containing a comprehensive set of communication functions which caarning system independent of underlying network connectivity conditionComAL completely isolates e-learning solution programmer from the details of networbe employed to easily create networked e-learning solutions,allowing creation of an integrated, managed e-learning system even in environment withoutnetwork connectivit3 Overall system design of our system we aimed to provide a solution fitulfill this taskcompatibility with a widest possible set of hardware and operating systemsn variety of network connectivity environments(including lackmanaged solutisecurity and reliability of the system, including safety of the system itself, testontent, students' solutionpersonal dal4 information storage and manipulation capabilities, to allow creation of centrallbase of results and grades, complete with easy at5 knowledge assessment functionality including: multiple choiceth highlytic grading and real time grading by a tead6, comprehensive management interfaces for administrators and teachers,ntechopen

E-learning, experiences and futurese of deployment, customization,ith third-partydecided to abandon thin-client technology in favor of full li che chitecture forTo fulfill these requirementhave chosen a client-server archa pretty standardeb- based thin-clienmpatibility and ease of deployment, is not especially well suited for knowledgewhiccurity mechanisms are also an important issue here, as their incorrect configurationallows unauthorized actions on part of the users Operatinglead to abnormal client software behavior(Nowicki K Gierlowski K, 2004)thin-client This allows inclusion of more advanced internal meclproved functionality, much better reliability and securitydesign full-client utilizing web-based technologies can also operate independently of serverwhich gives our system versatility, necessary to handle limitedscenario It also facilitates creation of a strictly modular system architecture and providinglability(as many tasksThe most serious limitations of full-client approach, depatibilityalso possible to over-come by employing easily delPThe second of our fundamental design decisions was maintaining a strict modularity of ourproduct

All basic elements are constructed as modules capable of operating independentt' s why we call the architecture of our systempsely-tied distributed architecturemoreover, we are employing only standardized, self-descripting data formaModular system structure compladditional inter-module communication mechanisms, but these difficultiesComAL APl, described in later secticsubstitute customized solutionstandard modules or include additionalelements into standard system data paths to provide additional data analysis/translation1) Advantaclomodification and customization of the system, including creation of dedicated interfaces forhird- party systems and applicatiFurthermore thereaccepting XML input and providing XML output( for example Ms OfficeThere is also a possibility which had pruseful then theseduring test deployments of our systeis possible to deploy only selectednd or integrate it directly with third-party solutions supporting XML languagAn ability to deploy only a cheto individual needs If system ussmall number of students there is no need for a systemgh to deploy onlyntechopen

Loosely-Tied Distributed Architecture for Highly Scalable E-Leaming Systemtesting/grading module and read resulting offline data files directly with MS or OpenOffice In an opposite situation, where thefunctions, he can easily deplh his own, as long as they support XML outputappropriate translatingLMStesting moduleFig 1 Integration with external applicationbe conducted in phases, by gradually exchanging existing infrastructure with modules ofhe systemThe most1 No server-side third-party scenario- client modules are operating independently3 Multi-server distributed architecture - able to support large number of clientsdifferent organizational units to operateloosely-tied distributed architecture where all modulesble ofns are handled with a well-kneformat, satisfies many of critical development requirements, difficult to fulfill witrently the most popular, centralized thin-client approach

Gradual (or even partial)modificatistem,s functionalitya detailed description of system architecture, found in the later section, will also show thatnd that high performance/ reliability level is relatively easy to maintain gnificantseparate organizational units can be differentiated in a4 Communication Abstraction Layersk of providing localunication( between modules on the same machine)is relativelyRemote connectivity(communication between modules on different machines) is anothertterIt is dependent on various characteristics of available network infof nk scenarios and conditiondifficult and worktensive task( Gierlowski K Gierszewski T 2004) Its complication and cost most often leadntechopen

E-learning, experiences and futureto abandoning such attempts and creation of products which require constant and stablenetwork connectivity lacking mechanisms for handling other scenarios( for example: theular thin-client architecturmploy no advanced communication functions at allWhile such approach may be sufficient for didactic content distribution systems, knowlednt requires a higher degree of communication between client (which interacts withually responsiblemechanisms called Communication Abstraction Layer(ComAL) specifically designedde network communication functions required by e-learningThis setnication methods, automaticallhoosing the one most appropriate for current working conditions, and is responsible for allion tasks- both local and remote It isolates e-learning system developer fromars of implementinmechanisms by providing him withFrom our experience in developing networked e-learning systems, we divided most oftenencountered network conditions into four scLocal Area Network -efficient and reliable, permanent network connectivit2

Internet-an environment where we have a permanent network connectivity at ourposal, but thereQuality of service(QoS)or reliability guar3 Periodic connecost commonly encothere is no network connectivity, but therill a possibilitymmunication by offline methods(floppy, CD/DVD, USB-storageon in all of theseenvironments, and is able to detect the correct scenario automatically and keeps monitoringthe situation to detect if thechangeFile transfer synchronisationmessangingIr mp me suponCommunication Abstraction LayerNOffline90fline storagestraction layer-overall architectureCommunication functiComaL to e-learninmodate a wide variety of application types, ranging from sending a simpthrough high volume file transfers and content synchronization, to reliable, real-timecourse, notunctions can be made available in all of the aboveTo deal with such limitationslicatiot network conditiomunication activities, overall status of network connectivity and its chanFor transport of data ComAL3): direct TCPUDPconnectivity Soap over Https, encrypted SoaP over Smtp and advanced automaticntechopen

Loosely-Tied Distributed Architecture for Highly Scalable E-Leaming Systemecure file export/import functions Some of these methods(SMTP and file-based) allowdeveloping a media proxy module functionality, allowing destinations behind NATnmunicate with Tcp/udp and indirect(but still secure)soap over HttpsNo network connectivityInternet-≌。-》e→Fig 3 Communication scenarios supported by e-learning systems with use of ComALAllexample test solutions)

The ComaL utilizes both symmetric and public-key cryand supports automatic key /certificate generation for clientsDue to similarities between mechanisms required in case of the Offline communicatioployed for thatide user with such functionality, we have defined a fifth(special)nication scenario- Secure Storage It provides a considerable range ofcryptographic functions and tamper protection mechanismn-memory file storage files are stored exclusively in memory, optionally inelete mechanisms to securely delete files from disk both onemand (in case of regular files) and automaticallydelete procedures are somewhat relaxed inarison with ones advised for highsecurity solutions, in order to prevent an excessive hardware degradation whileSymmetric/asymmetric encryption and data signingused cryptographic mechanisms, based on OpenSsL librattributes(read only, archived, system, creationdata, modification date etc can be employed in encryption/ signing processfrom modifying themfrom modifying/backing up/coping/overwriting protected files, Fo prevent usersallocation table can be employed in encryption/signing process, tofilntechopen

E-learning, experiences and futureneeds to be placed in the same exact disk sectors as it was initially written to, if it isinformation about all operations(reads/ writeswith the fdicated mechanisms detectdvanced secure storage functie added to ComAL for use in e-learninged in remote learning /remote knowledgeWe believe that creation of such abstraction laver able to freefrom difficult, specialized, costly and work consuming design and implementation oftion functions can encourage creation of advanced solutions, taking fulldvantage of potential provided by a networked environment It has been utilizednumberning products(Nowicki K Gierlowski K, 2004),("QTI(Gierlowski K et al, 2003),greatly reducing design complexity and implemenequired It was also successfully emplto extend functionality of strictlearning solution, to allow network based managementComAL has been designed to isolate high level e-learning systetrom spetechnologies and functionalities confirmed our belief that such isolation is an adbut they also suggest that the layer should not blockw level functions and statistshould be kepossible, but should beavailable, An excellent example of e-learning pris thereal-time grading module (described in later section)access to low level parameters such as radio signal strength or hardware address

Tpport this requirement, we decided to extend ComAL with ability of a very simple SNMIlavers in standardized formbasis of all inter -modunicastknowledgent system,enabling our system to function as manageabl5 System architectureAs oudivided into two basic groups: client and serClient modules interact directly with student or teacher during didactesponsible for providing majority of system's functionality in accordance withontro results ohany client modules providing different types of know ledge assessment orsupporting functions-their design and functionality is described in the following sectionsntechopen