Presentation on theme: "Scott Kodai Distributed Learning California State University, Chico Scott Kodai Distributed Learning California State University, Chico Extracting Useful."— Presentation transcript:
Scott Kodai Distributed Learning California State University, Chico Scott Kodai Distributed Learning California State University, Chico Extracting Useful Information with the PowerSight Kit
Evolution First focus was stability (Vista 4.0) Next we looked at basic usage information –Number of concurrent users –VistaStats application Then more detailed statistics –Count(*) queries on rpt_tracking Even more detailed statistics –Processing each hit Pivot tables, cubes and, eventually, a data warehouse
A set of views in the database that are denormalized to make them easier to query rpt_gradebook rpt_learning_context rpt_learning_context_size rpt_member rpt_person rpt_template rpt_tracking What is the PowerSight Kit?
Chico Specifics In Spring 2009: –17,810 students enrolled –1,060 faculty enrolled –4,067 sections with enrollments A Vista section created for every section offered Learning Context Hierarchy matches institution structure –A division for every college and a group for every department Crosslisting –In Spring 09: 302 crosslists created, combining 711 child sections
Challenge of Crosslisted Sections Division and Group for crosslist parents is special Sometimes sections from different departments, or even colleges, are crosslisted –Tracking activity should be counted for the child section, but its recorded with the parent sections LCID in rpt_tracking This makes it necessary to do queries by enrollment, and not just by section
Basic Idea Get a list of sections for the given term For each section: –Get a list of enrolled students and faculty –For each enrolled person: Query rpt_tracking for all hits for that person in that section Process each record, adding to accumulators as you go I used Perl hashes (and hashes of hashes) extensively Output files for further analysis I am not a programmer nor a DBA –TMTOWTDI
SQL Examples Getting all sections in a given term –select tm.assigned_lcid, lc.source_id, lc.name, lc.description, lc.delivery_unit_type from webct.lc_term_mapping tm, webct.lc_term t, webct.learning_context lc where tm.lc_term_id = t.id and tm.assigned_lcid = lc.id and t.source_id = ?; Why not use rpt_learning_context?
SQL Examples Finding the parent section for a crosslisted child –select master_lcid from webct.xlist_lc_mapping where child_lcid = ?
SQL Examples Finding the Division for a given section –select lc.name from webct.learning_context_index lci, webct.learning_context lc where lc.id = lci.left_lc_id and lci.hierarchy_level = 4 and right_lc_id = ?"; Finding the Group for a given section –select lc.name from webct.learning_context_index lci, webct.learning_context lc where lc.id = lci.left_lc_id and lci.hierarchy_level = 3 and right_lc_id = ?";
SQL Examples Getting a list of enrolled students for a given section –select distinct p.webct_id from webct.member m, webct.role r, webct.role_definition rd, webct.person p where m.id = r.member_id and r.role_definition_id = rd.id and m.person_id = p.id and m.learning_context_id = ? and m.delete_status = 0 and rd.name = 'SSTU' and p.webct_id != ?"; Demo student id = webct_demo_
SQL Examples Getting a list of activity for a person in a section –select t.tracking_id, t.session_id, t.event_time_mil, p.webct_id, t.tool_name, t.action_name, t.page_name, t.dwell_time from webct.rpt_tracking t, webct.person p where t.person_id = p.id and t.learning_context_id = ? and t.event_time_mil >= ? and t.event_time_mil <= ? and p.webct_id = ?; Event_time_mil = milliseconds since 1/1/1970 (stored in UTC)
Answers… Or More Questions? Certainly usage statistics provide answers to many questions On the other hand, they often lead to more questions How do you determine whether a person (faculty or student) is active? –Are hits or sessions a better indicator of activity? How active is active? What is the difference between an active section and an engaged section? –Counting hits? Unique sessions? Tools used?
Active Users Total enrolled faculty: 1060 Total faculty (logged in at least once): 775 Total faculty with at least 25 hits/week avg: 418 Total faculty with avg one login per week: 630 Total faculty with avg three or more logins per week: 454 Total faculty with avg one or more logins per day: 256 Total enrolled students: 17810 Total students (logged in at least once): 16032 Total students with at least 25 hits/week avg: 11273 Total students with avg one login per week: 15130 Total students with avg three or more logins per week: 11642 Total students with avg one or more logins per day: 4300 Total students with avg 10 or more logins per day: 1
Section activity Total Sections: 4966 Sections with > 0 enrollments: 4067 (includes 411 with only 1 student) Sections with Content: 2253 Sections with any activity: 2175 Sections with avg at least one login per student per week: 1465 Sections with avg at least three login per student per week: 103 Sections with avg one login per student per day: 47 Sections using 5 or less tools: 432 Sections using more than 5 tools: 1725 Average tools used per section (all sections): 4.25 Average tools used per section (tools used > 0): 9.79
Pivot Tables Pivot tables in Excel are a powerful way to explore large amounts of data Unfortunately, were dealing with way more data than Excel and Access can handle Currently starting a project to move this activity data to our data warehouse –Overall goal is to maintain usage data across LMSs to enable longitudinal assessment