sakai presentation

24
oposal #160: akai Course Site Creation and Automation Date: June 13, 2012 Time: 3:45– 4:45PM Location: Tower 1402 Presenter: Carl Perry

Upload: carl33p

Post on 20-May-2015

1.276 views

Category:

Education


7 download

DESCRIPTION

Creating thousands of course sites each semester can be a daunting task. Add in the fact that individuals and departments have their own unique conventions and requirements. The workload can really pile up at the beginning of the semester.This presentation will overview course site and roster creation and how UF has automated most of this process. This includes the ability to dynamically create course sites from pre-configured template sites. The advantages and disadvantages of different course creation strategies will be highlighted. A technical overview will be given, including specific Java Web Services used to achieve automation. This session will benefit universities who are developing a strategy for creating course sites or are interested in improving their current course creation process. The University of Florida is currently using Sakai CLE 2.8.

TRANSCRIPT

Page 1: Sakai presentation

Proposal #160:

Sakai Course Site Creation and Automation

Date: June 13, 2012Time: 3:45– 4:45PMLocation: Tower 1402Presenter: Carl Perry

Page 2: Sakai presentation

PreviewPreview

Brief IntroductionCarl Perry & Sakai @ UF

Course Creation & StrategiesBenefits and Disadvantages

AutomationVerification

Java Web Services

*Developer contributions from:• Mike Stoufer• Saee Bhavani Subramanian

Page 3: Sakai presentation

Carl PerryCarl Perry

University of Florida

Learning Support Services ( https://lss.at.ufl.edu ) Two years

B.S. Comp Sci @ UF *M.S. Info Sys @ UF

Duties

Sakai Administrator (Support) High level testing on Sakai Web development and programming Not a Sakai developer & not associated with the

Registrar in any way

Page 4: Sakai presentation

Sakai @ UFSakai @ UF

Branded as e-Learning

AdoptionSpring 2010: Config and testing (v2.6)Summer 2010: Pilot & Blackboard migration

UpgradesFall ‘11 v2.7Sum ’12 v2.8 v2.9 / OAE ?

Spring 2012

Sections: 4,487Courses: 1,869Students: 40,371

Page 5: Sakai presentation

Course Creation in the BeginningCourse Creation in the Beginning

1. User submits course request form1. Minimal validation

2. Generates a ticket3. We verify the user is an instructor4. We verify the course is valid, and the section matches

1. We mark the roster as verified to be created in Sakai5. In Sakai, duplicate a course shell, copy and paste the title from the ticket6. We search for the newly created site in Worksite Setup7. We insert the instructor into the course site ( add roster )8. We close the ticket and send the user an email from the ticketing system

2 & 8. Ticketing System

3. Instructor App

4. Registrar App

4.1 Roster App

5. Sakai (duplicate)

6. Sakai (search)

Page 6: Sakai presentation

Creation StrategiesCreation Strategies

1. “On request” Triggered by users

2. “Create all” Triggered by admin

Registrar Database

Page 7: Sakai presentation

Create AllCreate All

Query Registrar

Create course shells

• Insert Instructor

• Or Roster

Instructors teach

course

Wait for next

term’s data

Start

Page 8: Sakai presentation

“Create All”“Create All”

Pros ConsMinimize workload* Unused shells

No need for verification Statistics

Uniform creation date- Same site template

Limited time for course setup-Re-import

Push departments to update the Registrar

Multiple Sections

Push instructors to use Sakai more*

Instructor Changes

Page 9: Sakai presentation

“On Request” Creation Steps“On Request” Creation Steps

Copy Course Shell

(Site Title)

Insert Instructor Send Email

User Request Verify User Verify Section

Page 10: Sakai presentation

On RequestOn Request

Roster & Shell

Page 11: Sakai presentation

On RequestOn Request

Roster & Shell

Page 12: Sakai presentation

On RequestOn Request

Shell Only

Page 13: Sakai presentation

On RequestOn Request

Pros ConsCustomization• Multi-section• Combined Courses• Requesting User• Early course site requests

Workload• Form Validation• Verify User• Verify Course/Section

Statistics Managing forms

Inform students if their section is being taught in Sakai

Managing middleware database

Interact more with Faculty Maintain admin application

Offload work from developers

Page 14: Sakai presentation

Middleware Roster InterfaceMiddleware Roster Interface

ExtJS Grids- Javascript Framework (http://www.sencha.com/products/extjs/)Data Tables- Jquery Plugin (http://datatables.net/)

Page 15: Sakai presentation

“On Request”: Customization“On Request”: Customization

Why customization is necessary at UF?

User Customization• Forensics & Business College

• Facilitator requests all courses and adds rosters• Nursing, Engineering EDGE, & Pharmacy

• Multiple Facilitators, Designers, Observers• TA’s that are the “true” Sakai instructors• Secretaries & Instructional Designers

Course site customization• 1 to 20+ sections in a single course shell• Graduate/Undergraduate combined course shells• Requests far in advance

• Create course shell immediately• Hold roster and verify when available

Page 16: Sakai presentation

Automation: VerificationAutomation: Verification

1. JQuery Validation 1. Regex Form Elements

2. Shibboleth Authentication & LDAP1. Verify user’s affiliation

3. Middleware DB1. Section already requested

4. Read access to the Registrar DB1. Verify Section Rosters2. Verify Instructor

User RequestVerify

InstructorVerify

Section

Page 17: Sakai presentation

Automation: Sakai Web ServicesAutomation: Sakai Web Services

1. Sakai Web Services1. Allow services to be written that expose any

part of the Sakai API.2. Script with Java, Perl, PHP, Python, etc

How to use Sakai Web Services?• https://confluence.sakaiproject.org/display/WEBSVCS/How+to+use

+the+Sakai+Web+Services

Copy Course Shell

(Site Title)

Insert Instructor

Page 18: Sakai presentation

Automation: Sakai Web ServicesAutomation: Sakai Web Services

Advantages• Customizable Site ID

f4c1699d-1119-4eef-b5db-c0b1ff1a02ef UFL-ABC1234-4143-12012 (unique)

• Duplicate the tool list from a specified course site

• Define fields such as site title, description and short description, published

• Add participants to the courseDefine their role

• Best of all: No more manual creation• Automatically runs

Page 19: Sakai presentation

Automation: Sakai Web ServicesAutomation: Sakai Web Services

SAKAI_SRC/webservices/axis/src/webapp/*.jws

Authenticating: SakaiLogin.jws

• Login as Administrator• login(String id,String pw)

• ……

• Logout• logout(String id)

Page 20: Sakai presentation

Automation: Sakai Web ServicesAutomation: Sakai Web Services

Course Creation: SakaiScript.jws• Make a copy of a site

• copySite( .., String siteidtocopy, String newsiteid, String title, String description, String shortdesc, String iconurl, String infourl, boolean joinable, String joinerrole, boolean published, boolean publicview, String skin, String type)

• Add Instructor to Site• addMemberToSiteWithRole(…, String siteid,

String eid, String roleid)• eid: Username

• Remove Administrator From Site• removeMemberFromSite(…, String siteid, String

eid)

Page 21: Sakai presentation

Additional AutomationAdditional Automation

• Departmental Template Sites• copySite( … String siteidtocopy, …)• Home content HTML stored in DB

• Departmental Facilitators & Designers• addMemberToSiteWithRole(…String siteid, String

eid, String roleid)

• Email Automation• PHP Mail

Page 22: Sakai presentation

“On Request” Flow

HTML FormMiddleware DB

Sakai

Cron

PHP Mail

Shibboleth

Registrar DB

Roster

Course

Users

SOAPPerl

Page 23: Sakai presentation

Future Enhancements/Tools

Enhancements to Request Form– Predictive text dropdown (course field)– Preview of Instructor sections (Registrar DB)

Student Tool: “Which courses are available in Sakai?”– Compare middleware DB with Registrar DB

Compute More Statistics

Optionally add Roster(s) to course site*

Page 24: Sakai presentation

Questions?Questions?

• How about other institutions?

• Jasig Wiki• Review Materials, request for additional

info, and contact exchange• https://

wiki.jasig.org/display/JCON/2012-06-13+Sakai+Course+Site+Creation+and+Automation

Thank You!