Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of...

21
Project Report Finding Issues in Clicker and Suggesting Solution Approaches Submitted in partial fulfillment of the requirements for the degree of Master of Technology By Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian Institute of Technology, Bombay Mumbai-400076

Transcript of Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of...

Page 1: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Project Report

Finding Issues in Clicker and Suggesting Solution Approaches

Submitted in partial fulfillment of the requirements for the degree of

Master of Technology

By

Arpit Jain (113050028)

Sailee Jain (123050037)

Under the guidance of

Prof. D.B. Phatak

Jan - May 2013

Department of Computer Science and EngineeringIndian Institute of Technology, Bombay

Mumbai-400076

Page 2: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Contents

1 Introduction 11.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Technology Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Tools Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Issues in Clicker 42.1 Problems Identified . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.2 Problem chosen for solving . . . . . . . . . . . . . . . . . . . . . . . . . . 42.3 Possible solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.4 Experimental setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.5 Evaluation of the scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

3 Comparison of new design model and clicker 7

4 Clicker Architecture 11

5 Moodle with Clicker 12

6 Extension Possible 14

7 Conclusion 15

1

Page 3: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

List of Figures

2.1 Android clicker showing (a)login page and (b)list of subjects . . . . . . . 52.2 Android clicker showing (a)downloading quiz questions and (b)timer starts 6

3.1 Graph showing number of packets in start, mid and end phase for 1 tablet 73.2 Graph showing number of packets in start, mid and end phase for 2 tablets 83.3 Graph showing number of packets in start, mid and end phase for 3 tablets 93.4 Changes in number of packets in start, mid and end phase for 1 tablet . . 93.5 Changes in number of packets in start, mid and end phase for 2 tablets . 103.6 Changes in number of packets in start, mid and end phase for 3 tablets . 10

4.1 Entire Architecture of Clicker . . . . . . . . . . . . . . . . . . . . . . . . 11

5.1 Android moodle showing login page(a) and course list(b) . . . . . . . . . 125.2 Android moodle showing option window(a) and forum discussions(b) . . 13

2

Page 4: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Acknowledgement

I would like to express my gratitude to Prof. D.B Phatak, for his valuable guidancethroughout the project and continuous monitoring of my work. I would also like to thankclicker team and all those who are involved directly or directly with my work.

3

Page 5: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Abstract

Clicker is a student response system used to capture responses from a live audiencein real time. It is a quiz application which helps teachers to evaluate students as wellas to give them feedback regarding their performance by generating the reports basedon the previous records of quizzes of every student. There are certain networking issuesand functioning problems clicker which lessens its usefulness. This report focuses onthese problems and their solutions proven with the help of experiments conducted. Alsomajor part of work includes the integration of clicker with moodle in order to improveits usability and accessibility. We present an application that provides access to moodlenot through web but via android interface.

Page 6: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 1

Introduction

Clicker is a web based quiz application aimed at improving learning methods in class-room environment. Clicker system provides the facility to the instructor to interact withstudents by presenting question, collecting answers of individual students, and evaluatingthe understanding level of each student in that session. This helps teachers to changetheir way and pace of teaching as per requirements. The system also facilitates teachersto collect the attendance of class. Regardless of the class size, the instructor is always ableto gauge student understanding with the help of immediate feedback that the technol-ogy provides. Results from class responses can be saved and then displayed in a varietyof formats (bar chart, pie charts, and so forth) or saved to spread sheet programs forsemester-long analysis that may inform subsequent curriculum development.

This report also focuses on various issues in clicker like its capacity to supportlimited number of users. In section [2.3] we propose a design model for making clickeran android based application instead of web based application in order to solve thesimultaneous multiple connections problem. It describes a small application which workssame as that of clicker, all the file transfer, network connection happens in the same way asin clicker. This section is followed by experiment section which proves the effectiveness ofthe above design model in solving the clicker networking problem. This Section containsthe experimentation done for load testing and plots graphs obtained by collecting packetsin both the forms of clicker using Wireshark and analyses the results of the two forms.Last section contains an android application which makes integration of moodle withclicker possible. This allows clicker to use the moodle database and also makes theperformance results accessible to students through moodle.

1.1 Motivation

The aim behind clicker development is to provide an interface between student andteacher, which help the instructor to conduct the classroom sessions more effectively.Also to create an interface which will allow a large number of students to participate andlearn in a single classroom session. It also provides an interface which allow studentsfrom remote centers to participate in the classroom sessions conducted at other places.Clicker provides the faculty, with the ability to fine-tune their instruction based on stu-dent response. The motivation behind this work is to find out the problems in clickerat functional as well as networking level, so that not even a single student should bedeprived of using this application effectively and make clicker a widely accepted quizzingapplication. Apart from this, our work is also directed towards making clicker more avail-

1

Page 7: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

able and useful by integrating it with moodle so that it does not require its own database,and makes use of moodle database.

1.2 Technology Used

1. HTML: It is the main markup language for displaying web pages and other infor-mation that can be displayed in a web browser. HTML is written in the form ofHTML elements consisting of tags enclosed in angle brackets (like ¡html¿), withinthe web page content.

2. CSS: (CSS) is a style sheet language used for describing the style of web pageswritten in HTML and XHTML, but the language can also be applied to any kindof XML document

3. JavaScript: It is a prototype-based scripting language that is dynamic, weaklytyped and has first-class functions and is mainly used for validation etc.

4. Ajax: AJAX is the art of exchanging data with a server, and updating parts of aweb page without reloading the whole page.

5. JQuery: It is a cross-browser JavaScript library designed to simplify the client-sidescripting of HTML. It also includes the functionality of Ajax.

6. JSP: JSP provide excellent server side scripting support for creating databasedriven web applications. JSP enable the developers to directly insert java codeinto jsp file, this makes the development process very simple and its maintenancealso becomes very easy.

7. MySQL: It is the world’s most used open source relational database managementthat runs as a server providing multi-user access to a number of databases.

8. Servlet: A servlet is a Java programming language class used to extend the capa-bilities of servers that host applications access via a request-response programmingmodel.

9. XML: The web.xml file defines each servlet and JSP page within a Web Applica-tion. It also enumerates enterprise beans referenced in the Web application. Thefile goes into the WEB-INF directory under the document root of a web application.

1.3 Tools Used

1. Wireshark- Wireshark is a free and open-source packet analyzer used for networktroubleshooting, analysis, software and communications protocol development, andeducation. Wireshark allows the user to put network interface controllers thatsupport promiscuous mode into that mode, in order to see all traffic visible on thatinterface, not just traffic addressed to one of the interface’s configured addressesand broadcast/multi-cast traffic. However, when capturing with a packet analyzerin promiscuous mode on a port on a network switch, not all of the traffic travelingthrough the switch will necessarily be sent to the port on which the capture isbeing done, so capturing in promiscuous mode will not necessarily be sufficient to

2

Page 8: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

see all traffic on the network. Wireshark is also able to display the encapsulationand the fields along with their meanings of different packets specified by differentnetworking protocols.

2. Eclipse- Eclipse is a multi-language software development environment comprisinga base workspace and an extensible plug-in system for customizing the environment.It is written mostly in Java. It can be used to develop applications in Java and, bymeans of various plug-ins, other programming languages including Ada, C, C++,COBOL, Fortran, Haskell, JavaScript, Perl, PHP, Python.

3. Android SDK- Android SDK provides you the API libraries and developer toolsnecessary to build, test, and debug apps for Android. Generally android SDK isinstalled as a plugin in eclipse to provide easy coding support.

3

Page 9: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 2

Issues in Clicker

2.1 Problems Identified

Various problems have been identified in clicker. Some of them are related with thenetworking and others with its functionality. Most prominent among those which needsto be taken care of are:

1. During testing in a large lecture hall of capacity 180, it is found that when usergoes to 60 then server side application gets stuck and is not able to process therequest of given users.

2. It is also found that sometimes users get connected to server but the quiz is notdisplayed in tablet and the timer is started.

3. There is no submit button in application, students have to wait for the timer to getover.

4. During quizzing if one will refresh the page, then all the marked choices gets un-marked.

5. If during the quiz student uses back button then he will be redirected to a pagewhere he has to wait for quiz and he will not be allowed to attempt quiz again.

6. Some problem was with timer synchronization also, sometimes the timer goes intoloop and then the quiz will never stop until we restart the server.

7. The student needs to be connected to the server during the entire duration of quizcausing an unnecessary continuous load at the server.

2.2 Problem chosen for solving

Problem: Connecting multiple users through wifi simultaneously.

Problem analysis and reason finding using experimentWe did testing experiments for analyzing the performance of clicker application in F.CKohli auditorium of 180 people capacity and observed that the application works cor-rectly for 50 users. When we further increase users to 60 then some users are not allowedto connect to server. So the limit is found to be 50 users per access point. Now the goalin front of us is to increase this limit which can be solved into 2 ways.

4

Page 10: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

2.3 Possible solutions

1. Hardware solution- Use of multiple access point can also solve this problem butin this we need to take care of the configuration of access points in a room.

2. Software Solution- TDM based solution which allows multiple users to connectthrough Wi-Fi. In this solution we will connect first set of users (limit of AP) anddisconnect them once they have downloaded quiz questions, and continue with thisprocess until all the users get chance to connect and get the quiz. In this solutionwe will keep a timer on the client side that starts as soon as the student startsattempting the quiz, so no need to sync timer with the server.

2.4 Experimental setup

For this experiment we have made a simple android application whose workload is sameas that of clicker. This application contains a login page in which the user will login usingits credentials and then the request will be send to server. Server then authenticates userinformation and based to that acknowledges the user. Once the user is logged into thesystem, a question file is send to the user and the connection gets broken. Now otherusers who are waiting for getting connected but not yet connected will get a chance. Thisquestion file is then loaded into quiz and timer will start. After timer expires, an xmlfile for answers is send to the server for processing. Figure[2.1] and figure[2.2] shows theandroid clicker application.

Figure 2.1: Android clicker showing (a)login page and (b)list of subjects

2.5 Evaluation of the scheme

1. Chances for cheating are negligible- To prevent cheating the server is up onlyfor a small period of time before/after quiz conduction/submission respectively and

5

Page 11: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Figure 2.2: Android clicker showing (a)downloading quiz questions and (b)timer starts

this time period depends upon the size of the data transferred and the networkbandwidth.

2. Limitation of access point to connect limited number of users is no more a problemto us as we need not connect all the users simultaneously.

3. This method is more reliable as the user will connect for sure may be not at the verypoint when quiz is launched but at some future point and timer is also separatedfor each user so no need to worry if a user faces delay in connectivity because ofsome congestion at access point. Each user will get its own specified time.

4. Load in this application is comparatively less as only the question file is transferredto client, while the application is already present at client end.

6

Page 12: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 3

Comparison of new design modeland clicker

This section describes the result of comparisons of new proposed model of android clickerand clicker. For the experiment we have considered 3 phases:

Figure 3.1: Graph showing number of packets in start, mid and end phase for 1 tablet

1. Start Phase- This phase ranges from start of clicker application to the time untilquiz is launched. This phase basically deals with the connection establishment andrequest of quiz to be launched.

2. Mid Phase- This phase starts from the time when quiz starts and last upto thequiz timer ends.

3. End Phase- This extends starts afer the timer expires and last upto the resultsare received by students.

7

Page 13: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Figure 3.2: Graph showing number of packets in start, mid and end phase for 2 tablets

It has been seen that during start phase (before conducting quiz) the number ofpackets transferred in clicker is very large as compared to android clicker. It is becauseof the images such as header, footer etc sent during start of clicker which is not in thecase of android clicker. As in android clicker the quiz application is present at client end,only the question file is send to client. Here the timer is also present at client end, oncethe timer is over an answer file is send to server for processing. Following are the resultsof comparisons between new android clicker and clicker.

8

Page 14: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Figure 3.3: Graph showing number of packets in start, mid and end phase for 3 tablets

Figure 3.4: Changes in number of packets in start, mid and end phase for 1 tablet

9

Page 15: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Figure 3.5: Changes in number of packets in start, mid and end phase for 2 tablets

Figure 3.6: Changes in number of packets in start, mid and end phase for 3 tablets

10

Page 16: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 4

Clicker Architecture

Figure [] shows the architecture of clicker where instructor first login into system forconducting a quiz. Once the quiz is launched it is available to all the students connectedto server using access point. After the quiz is over the results are stored in server aswell as it is displayed to user. More detailed architecture is shown in figure[] and figure[]which explains the exact flow of clicker system with all the input/outputs of each class.

Figure 4.1: Entire Architecture of Clicker

11

Page 17: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 5

Moodle with Clicker

This is second part of our work which aims to integrate moodle with clicker to makeclicker more useful and accessible. We have used an android application[1] for moodlewhich provides efficient GUI to access courses, files and forums of subjects correspondingto students. Its functioning is same as that of moodle, first the user will login using itsLdap Id and password, and after verification the user is allowed to view its courses list,respective files and the discussions in forum.

Figure 5.1: Android moodle showing login page(a) and course list(b)

We have integrated this application with clicker to make clicker more useful andavailable, as now clicker can use moodle database of students to get all the student detailsrather than maintaining its own database for students. The below are the snapshots ofmoodle application. Figure [5.1(a)] shows the login page of moodle where the user canlogin using its Ldap Id and password. Figure [5.1(b)] shows the list of the courses forwhich the user is registered, from which user can select one course. Figure [5.2(a)] shows

12

Page 18: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

the files, forum and quiz window for the selected course. Figure [5.2(b)] shows the forumdiscussions in moodle for the course selected by user.

Figure 5.2: Android moodle showing option window(a) and forum discussions(b)

13

Page 19: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 6

Extension Possible

As an extension of this work, results of quizzes can be uploaded to moodle in order to makeit available to students anytime, anywhere. Thus helps in improving the accessibility ofclicker. This can be done by storing the results of quizzes corresponding to students andsubjects in clicker and these results are uploaded to a specified folder in moodle. For thisthe database schema of clicker application needs to be changed according to moodle.

14

Page 20: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Chapter 7

Conclusion

Clicker is a very useful application for improving learning methods in classroom by fa-cilitating the interaction between faculty and students, and evaluating students throughquiz for finding understanding level of students. Through this immediate feedback sys-tem faculty can change their way of teaching as per requirements. But there are somenetworking problems in clicker which lessens its utility. These problems can be solved bymaking slight modification in clicker, by making clicker an android application presentat the client, where only the question file comes from the server and gets loaded intoquiz application. And after the quiz is over an answer file is uploaded to server. Thesechanges makes network less loaded and mitigates the problem of connecting multipleusers through Wi-Fi simultaneously as proven with the help of experiments. In additionto this, by integrating moodle with clicker makes clicker more useful and accessible.

15

Page 21: Arpit Jain (113050028) · Arpit Jain (113050028) Sailee Jain (123050037) Under the guidance of Prof. D.B. Phatak Jan - May 2013 Department of Computer Science and Engineering Indian

Bibliography

[1] Praveen Kumar Pendyala’s(2013) Mdroid (Version 2.4) [Computer program] Availableat https://github.com/praveendath92/MDroid (Accessed 2 March 2013)

16