 The IT Bombay X platform is indeed good for handling data related to large number of students, while the Moodle platform is an excellent learning management system. Our next presentation is on the topic integration prototype between IT Bombay X and Moodle and it seeks to integrate the two platforms. Good morning everyone. I am Sonali and she is Madhav Priya. Our project is integration prototype between IT Bombay X and Moodle. So these are the contents which we are going to discuss in our presentation. First is motivation. As we all know, IT Bombay X is built on open edX and it offers online interactive classes and courses and Moodle is an open source software which serves all the learners across the globe. So there are advantages of both the systems. IT Bombay X is a very good learning management system. A learning management system is basically an application which provides interactive online courses and it basically allows the administrators to prepare assignments, prepare reports and grade the students. Whereas Moodle is a very good course management system. Course management system is basically an application which allows the users to manage courses. So basically we can add both the good features from both the systems and we can basically from Moodle what we have done is we used Moodle for course administration purposes and we have used IT Bombay X to view the contents of those courses. Now under this project we have basically built an integration prototype between IT Bombay X and Moodle. So the grades of the students are available on Instructor dashboard of IT Bombay X and there is a functionality over there to export it via CSV file. So we exported the grade data in a CSV file and then we transferred it to Moodle. Then we basically created custom tables in Moodle and populated them with IRTBX quiz data. Then after this we created a local plugin in Moodle to view the quiz results and we then transferred that local plugin in course level. Okay so now the question is why to use local plugins. So whenever we need any kind of customization in our running software we should always use plugins rather than modifying the core code. So local plugins are used in the cases when there are no standard plugin fits in. Then basically we can use custom tables to support our custom plugin. These local plugins will go into local directory of Moodle and then we can transfer the plugin to course administration navigation bar. Now the plugin development. We started with installing Moodle on our systems. We created the required directory structures. Then we modified the files in the directory that is we done with the coding part. Then we installed plugin on Moodle's admin interface. Updated the database from Moodle's XML2DV editor. And finally we added our plugin to the course administration block. Okay next we'll talk about the database description of Moodle. Moodle uses MySQL databases. In order to store the transferred content from IIT Bombay access courses we created two tables in Moodle. MDL edX quiz and MDL quiz results to store the quiz details as well as the results of students which are stored quiz wise. Also we used five inbuilt tables in Moodle. MDL user, MDL quiz, quiz attempts, user enrollments and role assignments. Now we'll show you a demo of the plugin. First we look at the admin interface. So first the admin logs in. This is the admin dashboard. Then he clicks on his list of available courses. Under the workshop category there is a course named cyber security. So we've added the plugin to this particular course. Under the course administration module you can see the edX grade plugin. This adds two links to the page quiz result and final result. The quiz results displays the grades from IIT Bombay X which has been transferred. The drop down contains the various list of courses from IIT Bombay X. The email id of the user acts as a unique identifier. Also we have the final results page which shows the combined result of IIT Bombay X as well as Moodle. Each user has a unique email id and needs to be registered with that on both the platforms. The first five quizzes are edX's quizzes and the last quiz is Moodle's quiz. Now we'll show you the student interface. This is the student dashboard. He can under the cyber security course. Under his course administration menu he has the plugin added under the name edX grade. This is the quiz result from IIT Bombay X. It only shows his particular result not the other student's result. Also this is the combined grade of the student. The first five quizzes are from IIT Bombay X and the last quiz is from Moodle. By doing this project we faced many challenges. First we had to move the plugin to the test server. The test server had many changes. Also we had to change many variables to suit the database structure of the test server. Also we had time constraints. We had to finish the plugin in a very short period of time. We had to generate dynamic queries because the number of quizzes on IIT Bombay X can keep varying. So we didn't have to hard code it. We had to generate them dynamically. Also we had to understand the user requirements. We took part in a user requirement meeting under Professor Gayakunde and we had to define the scope of the project from that. Also we had to ensure the quality of the code because it had to be put up on the test server. So we successfully created an integration prototype between the two loosely coupled systems, IIT Bombay X and Moodle. And this plugin will improve the efficiency of overall system. Future work. Our project basically deals with unidirectional transfer of grades from IIT Bombay X to Moodle. So in future the transfer of data can be in other direction also. And another thing here can be the ultimate goal can be complete integration of IIT Bombay X and Moodle so that we can have a single login page. From Professor Gayakunde. He attended a meeting actually. Why have you not shown it to him? I saw him walking today morning. He is very nice fellow. You can show him anytime and he wants it. Have you got a sign off on the requirement document? No. Then you should never mention that I have done requirement analysis. Requirement analysis means two things. If you do that formally, you have to write it down and sign Karnakobolnai. Then only it is frozen because you may miss out on what the user has told you. You may misunderstand. So finally he has to sign off and at the end of the exercise when you develop the software according to user's pack then again he has to sign off. Industry has got even professional industry people do not insist on it. If the requirement is not signed off, you may deliver the software to the customer but you will not get any payment. It is standard. I know people, organizations who are given the software to the customer and he keeps asking why this change is not there, why it is like this and they keep on doing the change but you will not get any money because you have not met the requirements where it is, I want something more. Requirements sign off is very important and end sign off is very important since you are trying to do something professional. I am not going to requirements, this is not mine. The only thing is that future work is not complete integration of the two systems. I have had the talk with Shweta man already. I do not mind exporting data from IIT Mumbai to Moodle. There is no way I will take data from Moodle to IIT Bombay. Because IIT Bombay is the main learning platform. It is always possible from main learning platform. I can give it to somebody from professor to use. Quiz gates can be accepted. That is not an issue but no seamless integration. Because after all the faculty is running the course in IIT Bombay. You can always say I will not use your IIT Bombay quiz. I will go and write the student grade. The other question I had was why did you separate student? Why did you have to do student plug-in on Moodle? Why this does not, why the grades are not imported into quiz created by Moodle? No, but the better thing would have been to ask professor Kaithunde to run the quiz on IIT Bombay X. Run, announce a quiz here on Moodle. Put the end date as something so that the quiz does not start. And then just take the grade and put it here. The only thing then change that is there is the quiz is not conducted on Moodle. But the quiz is created on Moodle. That is probably the better way to do it than I do not need that quiz at all. Then it is seamless. It is a Moodle quiz, but only the grades have come from there are no questions in the quiz. That could have been a better way. Confusing things is great in Moodle. It is a Moodle quiz, but data has come from there. And similarly if in future if you are transferred data in other direction Moodle to IIT Bombay X. If at all it happens it will happen this way. IIT Bombay X a quiz will be created with zero questions and the grade will be put. The only way it will work is we do not play around with plugins. Plugins have to be avoided. Plugin is required for loading data. Does it work? Moodle to a test server. Moodle test server. Moodle test server. No, but where did they get the test data from IIT Bombay X? Correct. So, you took data from Moodle. What are the test conditions you used? No, no, no. What are the data conditions you used? The three types and your software should behave properly in three types. I do not know what that what how it will behave with that is part of the user requirement. The three types are actually might be a fourth one. Students which are common. A student is identified on both system by you as you said email. Correct. Okay. Emails exist on both sites. No problem. You your grade gets copied. Email exists on IIT Bombay X. It does not exist on Moodle. Email exists on Moodle. It does not exist on IIT Bombay. Both cases. All three cases you have taken care of. Okay. Sure. Yeah.