About MeA graduate student of TJUA developer of Sakai CLEAn English beginner
TianJin UniversityEstablished in 1895A national university under the direct administration of the Ministry of Education of China15,620 Undergraduate Students10,139 Graduate Students2,953 PhDs4,489 Faculties
Sakai in TJU2011: We were using Moodle2012: Secondary development of Sakai CLELocalizationSingle Sign On system(Based on CAS)Data SynchronismNew tools
Sakai in TJU2013: Beta testing & launchedUntil Now:12443 users425 active sites In 2013, our new e-learning system launched and until now, there are more than 12 thousands users and 425 active sites in this system. Our university is a new adopter of Sakai and we are trying our best to encourage teachers and students to use it.Data SynchronizationUser managementEach student or faculty should has an official account in Sakai Course managementCourse and roster information should be inserted into SakaiData SynchronizationUpdate issueNew users appearCourse information changesEffective/Simple/Flexible Data SynchronizationWhen to transfer the information ?How to transfer the information ? How to update the information ?
There are three specific problems that we should solve. Transfer the information means that we get the information from remote database, and then copy the information to the local database. OK, lets solve these problems.How we solve itBased on an Idea:Unify those information which is requiredUpdate those information that already exists in the local database
Our method is based on this idea: we just care about those information which is required, and we only update the existing information. We dont have to transfer all the course information, all the user information to the local database and maintain an update process. Local Database(Sakai Server)Remote Database(Official System)Checka triggernot exist already exist responseIt is a workflow about it. When a user request an update process to the Sakai Server, the server would check whether the information has already existed in the local database. If not, send a request to the remote database and then the remote database could return the required information. Then the Sakai Server will insert the information to the local database. Faculty LoginSSO(CAS)Create a new site/Update requestOther ActivitiesLocalDatabase(Sakai)UserInformationCourseInformationAdd the user information to localAdd the course information to localThis is an specific example about a teachers activity. When the faculty login, the SSO system will check whether the user is valid, if so, the Sakai server would get an account from SSO system, if the account is not in the Local Database, the server will request the remote database to get the User Information and added this user in Local Database. Same method is applied to transfer the course information. How we solve itGet information by WebserviceSimple/EfficientSecurity/Permission
String courseList = "http://121.193.xx.XX/Teaching/services/SAKAI/getTermCourseListByTeacherId?term=12131&teacherId=997127";This is an example of webservice. This webservice returns a string that contains all the course information related to the teacher 997127 in term 12131. It looks like a select statement.How to updateScheduled taskQuartzNew APIgetAllEnrollmentSets(String termId)Update the existing enrollments at 3:00 AM everydayHow to updateRewrite the action that faculties can update their course and roster information at any time
What we plan to doA course manage tool for adminThank Youfirstname.lastname@example.org