8
Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University College Station, Texas [email protected] 9797395339 Tengyan Wang Texas A&M University College Station, Texas [email protected] 9795879818 ABSTRACT Online Study and Recommendation system is a public or private destination on the internet that addresses the in- dividual needs of its members by facilitating peer-to-peer study environment. In this paper we describe the basic idea of such a system to be developed as a part of the Com- puter Supported Cooperative Work graduate course. It is a single, robust, secure and integrated system that provides course recommendation and features for collaborative study. We discuss the basic approach, implementation, recommen- dation algorithms and finally the results of the user study. Most of today’s study systems are not safe and neither do they provide good privacy for the students to study in a dis- tributed environment. Thus, we have created such a system to employ individual and group learning process with several features supporting the activity. General Terms CSCW Keywords Recommendation, distributed, education, online. 1. INTRODUCTION In today’s world, there are many systems which provide an environment for students to study online but rarely are they provided with good privacy and integrity for information ex- change. Most of them have been forums or blogs where spe- cific groups have not been given prime importance. The On- line Recommendation and Study system mentioned in this paper introduces a unique distributed scenario for collabora- tion between students all over the world to study, share and make discussions. It is a public or private destination on the internet that addresses the individual needs of its members by facilitating peer-to-peer study environment. The system being a web-based application would provide great consis- tency and conformity among the group using the distributed Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Copyright 2014 ACM ...$15.00. system. Our system emulates the traditional E-learning sys- tem study environment with more preference given to the individuals and their preference. E-learning is an inclusive term that describes educational technology that electronically or technologically supports learning and teaching. E-learning may either be synchronous or asynchronous. Synchronous learning occurs in real-time, with all participants interacting at the same time, while asynchronous learning is self-paced and allows participants to engage in the exchange of ideas or information without the dependency of other participants involvement at the same time. Nowadays, there are many open course learning systems available which would interest the students and help them with their present discussion. Course Recommendation en- ables the system to better help the students and their learn- ing process. Recommender systems are active information filtering systems that attempt to present to the user in- formation items (film, television, music, books, news, web pages) the user is interested in. These systems add infor- mation items to the information flowing towards the user, as opposed to removing information items from the infor- mation flow towards the user. Recommender systems typi- cally use collaborative filtering approaches or a combination of the collaborative filtering and content-based filtering ap- proaches, although content-based recommender systems do exist. Our system is specifically designed to address this issue of recommending specific courses and information de- pending upon the interests of the students and their present search criteria. It uses an artificial-intelligence algorithm to do the recommendation in an efficient manner considering the specific interests of the students and other search pat- terns. 2. BACKGROUND The current trending culture of e-learning and online study drives us to this novel idea of combining online study and course recommendation. There are many successful and es- tablished systems in the past which provide a unique study system or a good course recommendation but very less ones which provide both the important features on the same plat- form. Most systems in the past have provided essential fea- tures like technical interaction or group study but have not been extended to course recommendation which we think is the most essential part in an online study system. Course recommendation remains one of the most crucial part con- sidering its importance with time and effort. Thus, combin- ing these systems would be beneficial to the users.

Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

Online Study and Recommendation System

Junnutula Meghanath ReddyTexas A&M UniversityCollege Station, Texas

[email protected]

Tengyan WangTexas A&M UniversityCollege Station, Texas

[email protected]

ABSTRACTOnline Study and Recommendation system is a public orprivate destination on the internet that addresses the in-dividual needs of its members by facilitating peer-to-peerstudy environment. In this paper we describe the basic ideaof such a system to be developed as a part of the Com-puter Supported Cooperative Work graduate course. It isa single, robust, secure and integrated system that providescourse recommendation and features for collaborative study.We discuss the basic approach, implementation, recommen-dation algorithms and finally the results of the user study.Most of today’s study systems are not safe and neither dothey provide good privacy for the students to study in a dis-tributed environment. Thus, we have created such a systemto employ individual and group learning process with severalfeatures supporting the activity.

General TermsCSCW

KeywordsRecommendation, distributed, education, online.

1. INTRODUCTIONIn today’s world, there are many systems which provide anenvironment for students to study online but rarely are theyprovided with good privacy and integrity for information ex-change. Most of them have been forums or blogs where spe-cific groups have not been given prime importance. The On-line Recommendation and Study system mentioned in thispaper introduces a unique distributed scenario for collabora-tion between students all over the world to study, share andmake discussions. It is a public or private destination on theinternet that addresses the individual needs of its membersby facilitating peer-to-peer study environment. The systembeing a web-based application would provide great consis-tency and conformity among the group using the distributed

Permission to make digital or hard copies of all or part of this work forpersonal or classroom use is granted without fee provided that copies arenot made or distributed for profit or commercial advantage and that copiesbear this notice and the full citation on the first page. To copy otherwise, torepublish, to post on servers or to redistribute to lists, requires prior specificpermission and/or a fee.Copyright 2014 ACM ...$15.00.

system. Our system emulates the traditional E-learning sys-tem study environment with more preference given to theindividuals and their preference.E-learning is an inclusive term that describes educationaltechnology that electronically or technologically supportslearning and teaching. E-learning may either be synchronousor asynchronous. Synchronous learning occurs in real-time,with all participants interacting at the same time, whileasynchronous learning is self-paced and allows participantsto engage in the exchange of ideas or information without thedependency of other participants involvement at the sametime.Nowadays, there are many open course learning systemsavailable which would interest the students and help themwith their present discussion. Course Recommendation en-ables the system to better help the students and their learn-ing process. Recommender systems are active informationfiltering systems that attempt to present to the user in-formation items (film, television, music, books, news, webpages) the user is interested in. These systems add infor-mation items to the information flowing towards the user,as opposed to removing information items from the infor-mation flow towards the user. Recommender systems typi-cally use collaborative filtering approaches or a combinationof the collaborative filtering and content-based filtering ap-proaches, although content-based recommender systems doexist. Our system is specifically designed to address thisissue of recommending specific courses and information de-pending upon the interests of the students and their presentsearch criteria. It uses an artificial-intelligence algorithm todo the recommendation in an efficient manner consideringthe specific interests of the students and other search pat-terns.

2. BACKGROUNDThe current trending culture of e-learning and online studydrives us to this novel idea of combining online study andcourse recommendation. There are many successful and es-tablished systems in the past which provide a unique studysystem or a good course recommendation but very less oneswhich provide both the important features on the same plat-form. Most systems in the past have provided essential fea-tures like technical interaction or group study but have notbeen extended to course recommendation which we think isthe most essential part in an online study system. Courserecommendation remains one of the most crucial part con-sidering its importance with time and effort. Thus, combin-ing these systems would be beneficial to the users.

Page 2: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

3. APPROACHThere are three major tasks in this project. Firstly, col-

lecting and processing data for the recommendation systems.Secondly, using algorithms and special techniques from ma-chine learning to come up with relevant suggestions. Ourfinal goal is to provide a good online study environment forthe users tweaking in the aforementioned features for groupsto collaborate efficiently.

3.1 Course Data EvaluationAny online course has some attributes like course name,

university name, course date, info, etc. These attributesjust can meet students basic need to analyze the course anddetermine if it is useful for the students. In addition tothose attributes, we want to add more detailed informationlike complexity, students satisfaction, student reviews andrelated course. All the attributes are important for studentsto make their choices and they are essential to our recom-mendation system.

3.2 RecommendationOur recommendation system should not be a passive one

taking certain inputs and then searching database rather ithas the ability to act dynamically through past inputs aswell. The user may or may not have taken some coursesrecorded on database, we can use past courses informationwith user’s preference to predict most relative course theuser may want to enroll in the future, all the procedureis according to the attributes described above. For exam-ple, a nascent computer science student, after finishing datastructures course would prefer to know more about program-ming. Thus, we would recommend him courses teachingC/C++/Java or programming studio or intro to algorithm,etc.

3.3 MethodologyThis project employs a basic online system developed pri-

marily on PHP and JavaScript. Some of the steps to betaken are:

• Feasibility Study:Understanding and identifying of existing course rec-ommendation and study systems with an associatedstudy of the features that can be incorporated in sucha system.

• Analysis:Proper analysis of the features that are useful andwould support the users.

• Coding:The system is implemented on a 2-tier basic architec-ture model using PHP language. The 3 layers of theapplication are as follows:

1. HTML, CSS and JAVASCRIPT - Front End

2. PHP - Middle end

3. MySQL(Php MyAdmin) - Back-end

3.4 Software Usage and System Requirements

• Hardware Requirements

– 512 MB RAM or more

– Windows 7 or upgraded versions

• Programming Languages and Environment

– PHP (Development kit)

– WebMatrix (IDE)

– MySQL (Database)

• Backup Media

– Hard Disk

This system is developed using Windows-8 as system soft-ware and is tested to be executed on all the operating sys-tems given above.

4. IMPLEMENTATIONMost of the current online systems are based on the In-

ternet, hence our system needs to powerful in a web-contextand next be a cross-platform application. In addition, weneed a reliable database to store our course information, sothat we combine the use of PHP with MySQL to build thesystem to have extreme coherence and compatibility. A loginsystem is very important on server like ours to distinguishdifferent groups, we need to identify every user and recordtheir information, so that login user is necessary. PHP alsoworks efficiently with MySQL database, which is very fast,reliable and easy to use.

In order to deal with the data between user and database,specially designed algorithms will be used making the in-formation exchange robust at the backend. Also, HTMLand CSS along with some implementation of JavaScript willdesign the user-interface to be attractive and user-friendly.Bootstap has been used to maintain consistency across allthe clients. Lastly, the credentials of the users logged in willbe stored using the database connectivity.

Figure 1: Process flow

4.1 OverviewThe system is a web-application built mainly using PHP

for the functionality and MySQL to store the applicationinformation for retrieval and injection. Also, xampp has

Page 3: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

been used to incorporate the server functionality and PHP-MyAdmin features available for the development and test-ing. The database has been implemented to store the infor-mation of the user, course and preference. The recommen-dation algorithms uses the database to retrieve informationbased on the user preference and rating given to a specificcourse.

Figure 2: Login-In system

4.2 Study RoomOne of the major goals of this project was to provide a

good study system in a distributed environment. Thus wehave a built-in chat system for the users to exchange tex-tual information and conceptual data as they study. Also,the internal frames within the web application allows theusers to stay connected during the study and also exchangeinformation among them regarding the course that they arepresently studying in a distributed environment.

Figure 3: Study Room

The chat system functionality has been developed withPHP, JavaScript. The CHAT database has been used asshown in the figure to allow the user to retrieve any linksor important information from their history. This is veryimportant in order to promote collaboration and enhanceuser-user communication.

4.3 Database FlowFor this system, we need five tables to store user and

course information and their relations. Each user can enrollin many courses, once the user has finished certain course

Figure 4: CHAT database

he will rate it and provide review. All the user preferenceand course attribute are stored accordingly as shown in thefigure, now it is easy for the system to predict users interest.

Figure 5: Relational database structure

5. COURSE RECOMMENDATION

5.1 Based on user preferenceThe Online Recommendation system will work on two

main algorithms for the recommendation process. In thefirst algorithm, the system recommends courses based on theuser preference and their need for the hour. The user entershis choice considering his skill on a range of areas and thendecides which course to take up from the recommended ones.The course information has already been loaded from differ-ent online opencourseware websites. The Figure.4 shows theareas taken into consideration and how recommendation willhappen based on the user preference and their experience inthese areas.

Page 4: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

Figure 6: Recommendation based on user prefer-ence

Figure 7: System dataflow

5.2 Based on Collaborative FilteringCollaborative filtering (CF) is a technique used by some

recommender systems. Collaborative filtering has two senses,a narrow one and a more general one.In general, collabora-tive filtering is the process of filtering for information or pat-terns using techniques involving collaboration among mul-tiple agents, viewpoints, data sources, etc. Applications ofcollaborative filtering typically involve very large data sets.

Collaborative filtering methods have been applied to manydifferent kinds of data including: sensing and monitoringdata, such as in mineral exploration, environmental sens-ing over large areas or multiple sensors; financial data, suchas financial service institutions that integrate many finan-cial sources; or in electronic commerce and web applicationswhere the focus is on user data, etc. The remainder of thisdiscussion focuses on collaborative filtering for user data, al-though some of the methods and approaches may apply tothe other major applications as well.

In the newer, narrower sense, collaborative filtering is amethod of making automatic predictions (filtering) aboutthe interests of a user by collecting preferences or taste in-

Figure 8: Collaborative Filtering

Figure 9: Collaborative Filtering-1

formation from many users (collaborating). The underlyingassumption of the collaborative filtering approach is that ifa person A has the same opinion as a person B on an issue,A is more likely to have B’s opinion on a different issue xthan to have the opinion on x of a person chosen randomly.For example, a collaborative filtering recommendation sys-tem for MOOC course tastes could make predictions aboutwhich course a user would like given a partial list of thatuser’s preference(likes or not likes). Note that these predic-tions are specific to the user, but use information gleanedfrom many users. This differs from the simpler approach ofgiving an average (non-specific) score for each item of inter-est, for example based on its number of votes and its valueof likes. A simple example is shown below.

For a group of people who have their own preferences, wewant to predict a certain user over a certain item in thelist. By using collaborative filtering, we can come up with asimple view about the users preference over this item.

5.3 Our Recommendation Algorithm

5.3.1 Content basedA content-based recommendation system recommends an

item to a user based upon a description of the item and aprofile of the user’s interests. Content-based recommenda-tion systems may be used in a variety of domains rangingfrom recommending web pages, news articles, restaurants,television programs, and items for sale. Although the de-tails of various systems differ, content-based recommenda-tion systems share in common a means for describing theitems that may be recommended, a means for creating aprofile of the user that describes the types of items the user

Page 5: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

likes, and means of comparing items to the user profile todetermine what to recommend. The profile is often createdand updated automatically in response to feedback on thedesirability of items that have been presented to the user.

Figure 10: Working of the algorithm

In the figure above, we can see that user ’meghz17’ hastaken three courses with rating 4 for OOT, 5 for Practiceon Programming and 5 on Introduction to Python, whileuser ’wty1009’ has taken four courses with rating 5, 4, 4 and2. Those ratings are based on a 1 to 5 scores scale, whichshows how much a user likes a certain course. We begin tofind a certain course ’Algorithm’ with its feature vector, alsoa certain user ’meghz17’ with his attribute vector. Since allthe features are shared between course and user so that thedimension of these two vectors are the same. Then we do avector multiplication with course feature and the transposeof user attribute, which comes a relatively score of likeli-hood. In this case, we get a score of 6.4, which means thatuser ’meghz17’ is likely to choose ’Algorithm’ based on hisinterests.

Figure 11: Example course rating

Using the same method, we come up with the final resultof the scenario. For other courses that the user has nottaken, we get a predicted value for them. For user ’meghz17’we may recommend him with ’Algorithm’(6.4 score) ratherthan ’Advanced Algorithm’(3.4 score), while probably not torecommend ’Bio-informatics’(<1 score). For user ’wty1009’,we may recommend him with both ’Introduction to Python’(>5 score) and ’Bio-informatics’(4.95 score).

5.3.2 Algorithm ImprovementContent-based recommendation works really good but we

find that manually inputting all the course features and user

Figure 12: Example course table

attributes is time consuming and not the intuitive idea ofour system. So we implement collaborative filtering in amachine learning way, that is to use algorithm let the systemlearn those features automatically. In detail, given courseattributes can estimate user preference. Having the costfunctions based on given features, we use linear model minussquare part in both cost functions actually dealing with thesame feature of vector multiplication, so it gives us a chanceto update both course feature and user attribute at the sametime.

First of all, we initialize course attribute and user prefer-ence to small random values. Minimize cost function withtheir values, using gradient descent algorithm to updatethese values. At last, for a user with certain preference andcourse attribute, predict the rating.

5.3.3 Evaluation of AlgorithmFor user ’wty1009’ with preference vector: (0.4, 0.3, 0.5,

0.4, 0.5), we initially recommend him all the courses basedon initial preference vector. But after the user study andrate a certain course, both the course features and user at-tributes will be updated to a optimal value to fit in our learn-ing model. For example, after ’wty1009’ rated 5 stars for’Algorithm’, which according to our system achieves high-est estimated rating among all the courses, and then he alsorated 5 stars for ’An Introduction to Interactive Program-ming in Python’, which achieves second highest estimatedrating in the system. But after the user rated 5 stars for’Practice on Programming’, besides the courses he has al-ready taken, which achieves the highest estimated ratingnow, the estimated rating list have some changes. The pre-vious order of the recommendation is:

Figure 13: Before Recommendation

Page 6: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

• Previous order

1. Bioinformatics

2. Introduction to C++

3. Computational Methods of Scientific Programming

4. Data Structures

• Previous order

1. Computational Methods of Scientific Programming

2. Data Structures

3. Bioinformatics

4. Introduction to C++

Figure 14: After Recommendation

6. USER STUDYOne of the most important task of our project was to

evaluate our system with users physically using it. Thiswould give us a fair idea on specific area that needs potentialdevelopment. Also, many design issues and flaws would beexposed could be eliminated by conducting a user study ofthis system with students who would be the potential usersof our system in the near future.

6.1 ParticipantsWe had 16 participants in our user study who carefully

evaluated our system for various technical flaws and to pro-vided their opinions about the system. They had no ex-ternal influence explaining them about the system as tocreate an environment as if they were using one of thosetrending course recommendation system or study room outthere. Most of the participants were college students andcolleagues who were studying at the Texas A&M University-College Station. All of them had prior experience with onlinecourses and were given a demo about the various features ofthe system.

6.2 EvaluationThe user study was conducted by asking the candidate

several questions related to the system and how they feltabout each of these incorporated feature. Some of the ques-tions were:

6.2.1 Did you use a similar system before?This question was initially posted to know if the user had

prior experience using any system of similar kind. From thiswe could find valuable data as they would relate our systemwith the ones they used before. Our study shows that 56percent of the people among the 16 participants had used asimilar kind of system before.

Figure 15: Percent of experienced users

6.2.2 How many online courses in an year?We wanted our system to be evaluated by people who had

good knowledge with online courses and experience hence weposted this question to know what was their level and in-terest in online systems. This would particularly guaranteeus users who had fair idea about our system and thus theresult set and suggestions would be accurate for further de-velopment.From the pie chart below we observe that many users hadtaken at least 3 online courses in an year and others tookmore than 3 too. Many had commented that they did notcomplete the course fully which may due to several reasons;one being the course content but that was not taken intoconsideration as we only wanted to know about the basicfunctionality of the system, recommendation algorithm andother design issues we could further develop.

Figure 16: Proficiency with online courses

6.2.3 Satisfaction with current features?In order to know how the users felt about the various fea-

tures and measure the level of satisfaction we posted this inthe user study. We observed that among the 16 participants12 of them liked the idea of a collaborated study room withcourse recommendation. Also, they liked the chat systemwhich gave them chance to communicate with their peers.Some of them complained about the basic user interface andthus that remains as a challenge to work and consider thedesign interface carefully in the future.

Page 7: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

Figure 17: Level of satisfaction

We also observed what their favorite feature among thecurrent ones so that future work could be concentrated ondeveloping these features. As most of them were college stu-dents the mental behavior and likes of this age group wouldbe the same. From the results obtained study room was theapplauded by 12 amongst the 16, and the next was the therecomendation followed by chat, calendar and search. Thisgave us a fair idea on which feature was the most popularand could be developed to attract more and provide betterassistance.

Figure 18: Best feature according to the study

6.2.4 Would you like to use our system again?Finally, we wanted how the users felt about using the sys-

tem again to gauge how popular the system would be ifdeployed. To our surprise, 13 amongst the 16 participantsaid they were interested in our system and would return toa more developed version when deployed. This shows thecurrently growing interest towards the online course systemand migration from the traditional class room teaching to-wards e-learning. There were users who did not want touse this kind of system in the future and were more inter-ested to the class room teaching. This potentially maybedue to the flaws in the system or their inclination towardsthe conventional system of study.

6.3 Design lessonsWe have made many essential observations from the study

that people preferred a simple interface with robust features.Although, most of the students were technologically driventhey preferred a simple interface and did not want the ordealof handling a complex system. This is mainly due to thefact that systems main functionality is to provide the usera good learning experience and not perplex them with itscomplexity. We have acquired the user interests to furtherdevelop the system accordingly. It has been noticed thatmany users i.e the students have turned to the e-learning

Figure 19: Percent of user satisfied

and systems like ours will be popular in the near future ifcarefully developed considering their needs and improvingthem accordingly.

7. CONCLUSIONThis paper introduces the Online Study and Recommen-

dation system. The basic system has been presented in thispaper and design issues have been exploited by conductinga user study. Our approach in building such a system ismainly directed towards the computer supported coopera-tive work considering the individual’s behavior working in agroup. Thus, the algorithm developed will also ensure suchan activity at an intense level. Also, the languages usedand API required to build the Online Study and Recom-mendation system have been mentioned within the paper.Through our design process, we thought critically about howthe unique social benefits of our system could benefit thispopulation and crafted an application to support the needsof this group.

Secondly, we conducted an extensive user study in thegiven time frame to gauge our systems capabilities and ana-lyze the basic features of the system in a real environment.We organized our study around three themes: analysis, ca-pabilities of system interaction and recommendation. As ex-pected we received valuable information for the developmentand direction to further our research in the area. This infor-mation and ideas will prompt designers to think differentlyabout the way that system environments can be designedin order to support a wide variety of social interactions andcommunication amongst the users.

Based on our study, a system which is simple and hasimportant features is more likely to succed than the onewhich is complex and hard to deal. with a higher level ofprivacy would succeed on a longer run and thus our systemwould be a closed system. However, it would be open to agroup of individuals with common login credentials.

8. FUTURE SCOPEOur research on the current systems show that not many

have the features discussed earlier in the paper. Thus, theOnline Study system will be a widely acceptable web systemas it has a broad scope of development in the future. Mostother famous technical features will be compatible and canbe incorporated into it. For instance, the news recommenda-tion would interest many around the world as it would keepthem updated with the current affairs and research trends.Many synchronous features such as such as instant messag-ing and asynchronous features like the message boards canbe implemented along with the system.

Page 8: Online Study and Recommendation Systemresume.meghz17.com/documents/online_study_recommendation.pdf · Online Study and Recommendation System Junnutula Meghanath Reddy Texas A&M University

Moreover, the recommendation algorithm can be extendedto a new set of areas other than opencourseware.

9. ACKNOWLEDGEMENTSWe would like to thank Dr. Frank Shipman for this won-

derful opportunity and challenging task. It has been a greatlearning curve dwelling into the area of computer supportedco-operative work. The information and support providedthroughout the course of this project is most appreciated.

10. REFERENCES

1. Schroeder, R. (2012). Emerging open online distanceeducation environment. Continuing Higher EducationReview, 76 90-99

2. Tschofen, C., & Mackness, J. (2012). Connectivismand dimensions of individual experience. InternationalReview Of Research In Open & Distance Learning,13(1), 124-143.

3. Schroeder, R. (2012). Emerging open online distanceeducation environment. Continuing Higher EducationReview, 76 90-99.

4. Fini, A. (2009). The technological dimension of a Mas-sive Open Online Course: The case of the CCK08course tools. International Review Of Research InOpen And Distance Learning, 10(5), 1-26

5. MOOCs: A Systematic Study of the Published Litera-ture 2008-2012 Tharindu Rekha Liyanagunawardena1,Andrew Alexandar Adams2, and Shirley Ann Williams1

6. Collaborative Filtering-http://en.wikipedia.org/wiki/Collaborative filtering