SlideShare una empresa de Scribd logo
1 de 24
Proposal #160:
Sakai Course Site Creation
           and Automation




Date:            June 13, 2012
Time:            3:45– 4:45PM
Location:        Tower 1402
Presenter:       Carl Perry
Preview
Brief Introduction
     Carl Perry & Sakai @ UF

Course Creation & Strategies
     Benefits and Disadvantages


Automation
     Verification
     Java Web Services
     *Developer contributions from:
     • Mike Stoufer
     • Saee Bhavani Subramanian
Carl 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
Sakai @ UF

Branded as e-Learning
Adoption
    Spring 2010: Config and testing (v2.6)
    Summer 2010: Pilot & Blackboard migration

Upgrades
                              Spring 2012
    Fall ‘11     v2.7
    Sum ’12      v2.8         Sections: 4,487
    v2.9 / OAE   ?            Courses: 1,869
                              Students: 40,371
Course Creation in the Beginning

1. User submits course request form
    1. Minimal validation
2. Generates a ticket
3. We verify the user is an instructor
4. We verify the course is valid, and the section matches
    1. We mark the roster as verified to be created in Sakai
5. In Sakai, duplicate a course shell, copy and paste the title from the ticket
6. We search for the newly created site in Worksite Setup
7. 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            4.1 Roster App
       3. Instructor App                  5. Sakai (duplicate)
       4. Registrar App                   6. Sakai (search)
Creation Strategies

1. “On request”
     Triggered by users


2. “Create all”
    Triggered by admin
        Registrar Database
Create All
Start
              Query
             Registrar



                             Create
 Wait for                    course
  next                       shells
 term’s
                           • Insert
  data                       Instructor
                           • Or Roster




             Instructors
                teach
               course
“Create All”

          Pros                           Cons
    Minimize workload*                 Unused shells

  No need for verification               Statistics

   Uniform creation date        Limited time for course setup
     - Same site template                 -Re-import
Push departments to update           Multiple Sections
       the Registrar
Push instructors to use Sakai       Instructor Changes
           more*
“On Request” Creation Steps


                                Verify
User Request    Verify User
                               Section



Copy Course
    Shell         Insert
                Instructor
                              Send Email
 (Site Title)
On Request
 Roster & Shell
On Request
 Roster & Shell
On Request
 Shell Only
On Request
             Pros                        Cons
Customization                  Workload
• Multi-section                • Form Validation
• Combined Courses             • Verify User
• Requesting User              • Verify Course/Section
• Early course site requests
Statistics                     Managing forms

Inform students if their section Managing middleware
is being taught in Sakai         database

Interact more with Faculty     Maintain admin application

Offload work from developers
Middleware Roster Interface




ExtJS Grids- Javascript Framework (http://www.sencha.com/products/extjs/)
Data Tables- Jquery Plugin (http://datatables.net/)
“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
Automation: Verification

User Request
                          Verify      Verify
                        Instructor   Section


1. JQuery Validation
    1.   Regex Form Elements
2. Shibboleth Authentication & LDAP
    1.   Verify user’s affiliation
3. Middleware DB
    1.   Section already requested
4. Read access to the Registrar DB
    1.   Verify Section Rosters
    2.   Verify Instructor
Automation: Sakai Web Services
            Copy Course
                Shell                     Insert
             (Site Title)
                                        Instructor


1. Sakai Web Services
   1. 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
Automation: 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 course
         Define their role
•   Best of all: No more manual creation
     •     Automatically runs
Automation: 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)
Automation: 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)
Additional 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
Shibboleth         “On Request” Flow

                    Middleware DB
HTML Form                                  SOAP     Sakai
                                    Perl
                             Cron          Roster

                                           Course
                                           Users


      PHP Mail




    Registrar DB
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*
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+Autom
       ation

                 Thank You!

Más contenido relacionado

La actualidad más candente

Sb chatterjee share point workspace 2010 in action
Sb chatterjee   share point workspace 2010 in actionSb chatterjee   share point workspace 2010 in action
Sb chatterjee share point workspace 2010 in action
SharePoint Saturday NY
 
SharePoint 2010 Training Session 1
SharePoint 2010 Training Session 1SharePoint 2010 Training Session 1
SharePoint 2010 Training Session 1
Usman Zafar Malik
 
Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...
Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...
Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...
SPTechCon
 
SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...
SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...
SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...
SPTechCon
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
Jeremy Thake
 
Access share point-2013-data-with-provider-hosted-apps
Access share point-2013-data-with-provider-hosted-appsAccess share point-2013-data-with-provider-hosted-apps
Access share point-2013-data-with-provider-hosted-apps
Alexander Meijers
 
20100604 unyoug apex40_bauser
20100604 unyoug apex40_bauser20100604 unyoug apex40_bauser
20100604 unyoug apex40_bauser
ahmed farouk
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
Jeremy Thake
 

La actualidad más candente (20)

Sb chatterjee share point workspace 2010 in action
Sb chatterjee   share point workspace 2010 in actionSb chatterjee   share point workspace 2010 in action
Sb chatterjee share point workspace 2010 in action
 
Envision IT - Application Lifecycle Management for SharePoint in the Enterprise
Envision IT - Application Lifecycle Management for SharePoint in the EnterpriseEnvision IT - Application Lifecycle Management for SharePoint in the Enterprise
Envision IT - Application Lifecycle Management for SharePoint in the Enterprise
 
SharePoint 2010 Training Session 1
SharePoint 2010 Training Session 1SharePoint 2010 Training Session 1
SharePoint 2010 Training Session 1
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint Store
 
Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...
Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...
Programming the Power Behind SharePoint Designer Workflow by Chris Beckett - ...
 
SharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the FieldSharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the Field
 
SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...
SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...
SharePoint Server 2013 Farm Architecture and Performance by Ben Curry - SPTec...
 
SharePoint 2013 - What's New
SharePoint 2013 - What's NewSharePoint 2013 - What's New
SharePoint 2013 - What's New
 
(28.04) MOSSCA Invita - Bienvenidos a la casa de Sharepoint - Visión técnica
(28.04) MOSSCA Invita - Bienvenidos a la casa de Sharepoint - Visión técnica(28.04) MOSSCA Invita - Bienvenidos a la casa de Sharepoint - Visión técnica
(28.04) MOSSCA Invita - Bienvenidos a la casa de Sharepoint - Visión técnica
 
ECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your IntranetECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your Intranet
 
TERMINALFOUR t44u 2012 - People Finder and Personnel Profiles using External ...
TERMINALFOUR t44u 2012 - People Finder and Personnel Profiles using External ...TERMINALFOUR t44u 2012 - People Finder and Personnel Profiles using External ...
TERMINALFOUR t44u 2012 - People Finder and Personnel Profiles using External ...
 
Getting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online developmentGetting started with microsoft office 365 share point online development
Getting started with microsoft office 365 share point online development
 
Getting Started with SharePoint Development
Getting Started with SharePoint DevelopmentGetting Started with SharePoint Development
Getting Started with SharePoint Development
 
Deploying the share point user profile service
Deploying the share point user profile serviceDeploying the share point user profile service
Deploying the share point user profile service
 
Monitoring and Maintaining SharePoint 2013 Server
Monitoring and Maintaining SharePoint 2013 ServerMonitoring and Maintaining SharePoint 2013 Server
Monitoring and Maintaining SharePoint 2013 Server
 
Access share point-2013-data-with-provider-hosted-apps
Access share point-2013-data-with-provider-hosted-appsAccess share point-2013-data-with-provider-hosted-apps
Access share point-2013-data-with-provider-hosted-apps
 
SharePoint Site templates, site definitions, feature stapling
SharePoint Site templates, site definitions, feature staplingSharePoint Site templates, site definitions, feature stapling
SharePoint Site templates, site definitions, feature stapling
 
20100604 unyoug apex40_bauser
20100604 unyoug apex40_bauser20100604 unyoug apex40_bauser
20100604 unyoug apex40_bauser
 
Conductor Content Management System
Conductor Content Management SystemConductor Content Management System
Conductor Content Management System
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
 

Similar a Sakai presentation

Mahesh_Mathapati
Mahesh_MathapatiMahesh_Mathapati
Mahesh_Mathapati
mahesh011
 
A1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .pptA1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .ppt
pranatidubey2004
 
Hkust Sakai China Day Presentation
Hkust   Sakai China Day PresentationHkust   Sakai China Day Presentation
Hkust Sakai China Day Presentation
jiali zhang
 
Leveraging Administrative Tasks with Webservices
Leveraging Administrative Tasks with WebservicesLeveraging Administrative Tasks with Webservices
Leveraging Administrative Tasks with Webservices
hannonhill
 
Harsh_Resume_pdf
Harsh_Resume_pdfHarsh_Resume_pdf
Harsh_Resume_pdf
HArsh Dawar
 
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Lucidworks
 
Abhishek Resume
Abhishek ResumeAbhishek Resume
Abhishek Resume
Abhishek R
 

Similar a Sakai presentation (20)

Share point development 101
Share point development 101Share point development 101
Share point development 101
 
Real World – Rapid prototyping with Logic Apps
Real World – Rapid prototyping with Logic AppsReal World – Rapid prototyping with Logic Apps
Real World – Rapid prototyping with Logic Apps
 
Webservices Workshop - september 2014
Webservices Workshop -  september 2014Webservices Workshop -  september 2014
Webservices Workshop - september 2014
 
Mahesh_Mathapati
Mahesh_MathapatiMahesh_Mathapati
Mahesh_Mathapati
 
Drew madelung sp designer workflows - sp-biz
Drew madelung   sp designer workflows - sp-bizDrew madelung   sp designer workflows - sp-biz
Drew madelung sp designer workflows - sp-biz
 
S2U november 2013
S2U november 2013S2U november 2013
S2U november 2013
 
Advanced Site Studio Class, June 18, 2012
Advanced Site Studio Class, June 18, 2012Advanced Site Studio Class, June 18, 2012
Advanced Site Studio Class, June 18, 2012
 
A1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .pptA1590026209_21789_20_2018_0 Lecture .ppt
A1590026209_21789_20_2018_0 Lecture .ppt
 
Upgrading to SharePoint 2013
Upgrading to SharePoint 2013Upgrading to SharePoint 2013
Upgrading to SharePoint 2013
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
 
Hkust Sakai China Day Presentation
Hkust   Sakai China Day PresentationHkust   Sakai China Day Presentation
Hkust Sakai China Day Presentation
 
Ja Sakai 09 V01
Ja Sakai 09 V01Ja Sakai 09 V01
Ja Sakai 09 V01
 
How to build a JavaScript toolkit
How to build a JavaScript toolkitHow to build a JavaScript toolkit
How to build a JavaScript toolkit
 
LTI Advantage: The Next Big Thing in LMS Integration
LTI Advantage: The Next Big Thing in LMS IntegrationLTI Advantage: The Next Big Thing in LMS Integration
LTI Advantage: The Next Big Thing in LMS Integration
 
Leveraging Administrative Tasks with Webservices
Leveraging Administrative Tasks with WebservicesLeveraging Administrative Tasks with Webservices
Leveraging Administrative Tasks with Webservices
 
7 steps to simplifying your AI workflows
7 steps to simplifying your AI workflows7 steps to simplifying your AI workflows
7 steps to simplifying your AI workflows
 
Harsh_Resume_pdf
Harsh_Resume_pdfHarsh_Resume_pdf
Harsh_Resume_pdf
 
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
 
04 integrate entityframework
04 integrate entityframework04 integrate entityframework
04 integrate entityframework
 
Abhishek Resume
Abhishek ResumeAbhishek Resume
Abhishek Resume
 

Último

Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
SoniaTolstoy
 

Último (20)

Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 

Sakai presentation

  • 1. Proposal #160: Sakai Course Site Creation and Automation Date: June 13, 2012 Time: 3:45– 4:45PM Location: Tower 1402 Presenter: Carl Perry
  • 2. Preview Brief Introduction Carl Perry & Sakai @ UF Course Creation & Strategies Benefits and Disadvantages Automation Verification Java Web Services *Developer contributions from: • Mike Stoufer • Saee Bhavani Subramanian
  • 3. Carl 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
  • 4. Sakai @ UF Branded as e-Learning Adoption Spring 2010: Config and testing (v2.6) Summer 2010: Pilot & Blackboard migration Upgrades Spring 2012 Fall ‘11 v2.7 Sum ’12 v2.8 Sections: 4,487 v2.9 / OAE ? Courses: 1,869 Students: 40,371
  • 5. Course Creation in the Beginning 1. User submits course request form 1. Minimal validation 2. Generates a ticket 3. We verify the user is an instructor 4. We verify the course is valid, and the section matches 1. We mark the roster as verified to be created in Sakai 5. In Sakai, duplicate a course shell, copy and paste the title from the ticket 6. We search for the newly created site in Worksite Setup 7. 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 4.1 Roster App 3. Instructor App 5. Sakai (duplicate) 4. Registrar App 6. Sakai (search)
  • 6. Creation Strategies 1. “On request” Triggered by users 2. “Create all” Triggered by admin Registrar Database
  • 7. Create All Start Query Registrar Create Wait for course next shells term’s • Insert data Instructor • Or Roster Instructors teach course
  • 8. “Create All” Pros Cons Minimize workload* Unused shells No need for verification Statistics Uniform creation date Limited time for course setup - Same site template -Re-import Push departments to update Multiple Sections the Registrar Push instructors to use Sakai Instructor Changes more*
  • 9. “On Request” Creation Steps Verify User Request Verify User Section Copy Course Shell Insert Instructor Send Email (Site Title)
  • 10. On Request Roster & Shell
  • 11. On Request Roster & Shell
  • 13. On Request Pros Cons Customization Workload • Multi-section • Form Validation • Combined Courses • Verify User • Requesting User • Verify Course/Section • Early course site requests Statistics Managing forms Inform students if their section Managing middleware is being taught in Sakai database Interact more with Faculty Maintain admin application Offload work from developers
  • 14. Middleware Roster Interface ExtJS Grids- Javascript Framework (http://www.sencha.com/products/extjs/) Data Tables- Jquery Plugin (http://datatables.net/)
  • 15. “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
  • 16. Automation: Verification User Request Verify Verify Instructor Section 1. JQuery Validation 1. Regex Form Elements 2. Shibboleth Authentication & LDAP 1. Verify user’s affiliation 3. Middleware DB 1. Section already requested 4. Read access to the Registrar DB 1. Verify Section Rosters 2. Verify Instructor
  • 17. Automation: Sakai Web Services Copy Course Shell Insert (Site Title) Instructor 1. Sakai Web Services 1. 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
  • 18. Automation: 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 course Define their role • Best of all: No more manual creation • Automatically runs
  • 19. Automation: 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)
  • 20. Automation: 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)
  • 21. Additional 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
  • 22. Shibboleth “On Request” Flow Middleware DB HTML Form SOAP Sakai Perl Cron Roster Course Users PHP Mail Registrar DB
  • 23. 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*
  • 24. 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+Autom ation Thank You!