Details

    • Type: Candidate Proposal
    • Status: Closed
    • Resolution: Sponsored Project
    • Fix Version/s: None
    • Labels:
      None
    • Project Preface:
      sched-assist
    • Initial Committers:
      nblair
    • Technology Overview:
      Hide
      The Scheduling Assistant is a multi-module Maven project. When completely built, there are 2 core applications:

          * A Java web application providing:
                o User interface for Schedule Owners (e.g. Advisors)
                o User interface for Schedule Visitors (e.g. Students)
                o Administrative interface for managing the deployment
                o Web Services endpoint for the portlet
          * A JSR-168 Portlet providing the same user interface for Schedule Visitors

      The Scheduling Assistant uses:

          * the Spring Framework, along with:
                o Spring Security
                o Spring Web Services
                o Spring Web Flow.
          * iCal4j for Calendar data
          * Jasig ResourceServer for jQuery and other static media

      The Oracle Calendar dependencies are isolated to one of the modules in the project, and can be used as a reference for how to integrate a different calendar server.
      Show
      The Scheduling Assistant is a multi-module Maven project. When completely built, there are 2 core applications:     * A Java web application providing:           o User interface for Schedule Owners (e.g. Advisors)           o User interface for Schedule Visitors (e.g. Students)           o Administrative interface for managing the deployment           o Web Services endpoint for the portlet     * A JSR-168 Portlet providing the same user interface for Schedule Visitors The Scheduling Assistant uses:     * the Spring Framework, along with:           o Spring Security           o Spring Web Services           o Spring Web Flow.     * iCal4j for Calendar data     * Jasig ResourceServer for jQuery and other static media The Oracle Calendar dependencies are isolated to one of the modules in the project, and can be used as a reference for how to integrate a different calendar server.
    • Community Description:
      Hide
      The University of Wisconsin-Madison is currently the only deployer of the Scheduling Assistant.
      At the University of Wisconsin-Madison, the entire population of individuals eligible for the WiscCal service (implemented with Oracle Calendar) are eligible to use any of the user facing features of the Scheduling Assistant.

      There are 2 distinct roles within the Scheduling Assistant. As of Spring 2011 we have over 400 registered Schedule Owners.
      Schedule Owners are primarily made up of faculty or staff, commonly:

          * Academic Advisors
          * Instructors
          * Tutors
          * Resource Accounts, like Conferences and Groups

      From August 2009 to March 1 2011 the Scheduling Assistant has facilitated over 24,400 events with more than 11,100 distinct Schedule Visitors.
      Show
      The University of Wisconsin-Madison is currently the only deployer of the Scheduling Assistant. At the University of Wisconsin-Madison, the entire population of individuals eligible for the WiscCal service (implemented with Oracle Calendar) are eligible to use any of the user facing features of the Scheduling Assistant. There are 2 distinct roles within the Scheduling Assistant. As of Spring 2011 we have over 400 registered Schedule Owners. Schedule Owners are primarily made up of faculty or staff, commonly:     * Academic Advisors     * Instructors     * Tutors     * Resource Accounts, like Conferences and Groups From August 2009 to March 1 2011 the Scheduling Assistant has facilitated over 24,400 events with more than 11,100 distinct Schedule Visitors.
    • JASIG Relationships:
      Hide
      The Scheduling Assistant cannot function without an Enterprise Calendar Server. While Oracle Calendar was the original target for this application, the loosely coupled integration opens the door for integration with other Enterprise Calendar Servers.
      Integration with Bedework has been identified as potentially possible, and is the subject of current work with RPI.
      Show
      The Scheduling Assistant cannot function without an Enterprise Calendar Server. While Oracle Calendar was the original target for this application, the loosely coupled integration opens the door for integration with other Enterprise Calendar Servers. Integration with Bedework has been identified as potentially possible, and is the subject of current work with RPI.
    • Benefits to Higher Education:
      Hide
      Once Instructors and Advisors publish essentially their "office hours" in the Scheduling Assistant, their students and/or colleagues can easily see their free/busy and create appointments with the Scheduling Assistant's simple interface.
      The "Relationship" subsystem within the Scheduling Assistant also provides a powerful mechanism for deployers to help their students find the people they need to meet with. Consider the new student
      that may not even know the name of their Academic Advisor, Instructors, or other relevant faculty. The Scheduling Assistant can not only do the work of finding their names, it can present to the student the contextual information about why the student would want to meet with that person.
      The Scheduling Assistant also tracks the activity generated by Visitors. Schedule Owners can look through the visitor history for their account and verify if or when visitors created, joined, cancelled, or left appointments with them.
      Show
      Once Instructors and Advisors publish essentially their "office hours" in the Scheduling Assistant, their students and/or colleagues can easily see their free/busy and create appointments with the Scheduling Assistant's simple interface. The "Relationship" subsystem within the Scheduling Assistant also provides a powerful mechanism for deployers to help their students find the people they need to meet with. Consider the new student that may not even know the name of their Academic Advisor, Instructors, or other relevant faculty. The Scheduling Assistant can not only do the work of finding their names, it can present to the student the contextual information about why the student would want to meet with that person. The Scheduling Assistant also tracks the activity generated by Visitors. Schedule Owners can look through the visitor history for their account and verify if or when visitors created, joined, cancelled, or left appointments with them.
    • References:
      Hide
      Production instance: https://tools.wisccal.wisc.edu/available/
      Youtube channel for Demonstration videos: http://www.youtube.com/user/uwmadwisccal
      Show
      Production instance: https://tools.wisccal.wisc.edu/available/ Youtube channel for Demonstration videos: http://www.youtube.com/user/uwmadwisccal
    • Licensing Checklist:
      license file in designated location, all non-licensed or license-incompatible dependencies removed from code base, software license grant complete, corporate contributor license agreement on file, individual contributor license agreement on file, license header added to all source files
    • Licensing Notes:
      COMPLETE
    • Copyright Checklist:
      notices file in designated location, all source copyright statements added to notices file
    • Copyright Notes:
      COMPLETE
    • Trademark Checklist:
      project name does not violate trademark
    • Trademark Notes:
      COMPLETE
    • Community Checklist:
      active and diverse development community, project has a reasonable expectation for support in the future
    • Community Notes:
      Need another developer from another university or commitment from WISC university to continue support this project if Nick leaves WISC.
    • Governance Checklist:
      steering committee has been created or assigned, jasig voting practices have been adopted, project has weathered and resolved conflicts as needed, release plans are developed and executed in public, engagement with the larger jasig community
    • Governance Notes:
      Nick and Gary Schwartz support the proposal to bring the Scheduling Assistant under the aegis of the Bedework Steering Committee.
    • Alignment Checklist:
      integration with other jasig projects where appropriate, synergy with other jasig projects where possible
    • Infrastructure Checklist:
      subversion module has been created on jasig server, mailing lists have been used, jira issue tracker is being used, project roadmap is in confluence, project website is kept current, all non-sensitive (i.e. passwords, etc) information in the above tools is publicly accessible
    • Infrastructure Notes:
      Hide
          SVN modules:
          Scheduling Assistant (non-Oracle Calendar) source imported to Jasig svn: https://source.jasig.org/sa/sched-assist/trunk/
          Scheduling Assistant Oracle Calendar being imported to: https://source.jasig.org/sa/sched-assist-oraclecalendar/trunk/

          Mailing lists created:
          sched-assist-user@lists.jasig.org
          sched-assist-dev@lists.jasig.org

          Wiki space created: https://wiki.jasig.org/display/SA/Home

          Jira project created: https://issues.jasig.org/browse/SA

      Show
          SVN modules:     Scheduling Assistant (non-Oracle Calendar) source imported to Jasig svn: https://source.jasig.org/sa/sched-assist/trunk/     Scheduling Assistant Oracle Calendar being imported to: https://source.jasig.org/sa/sched-assist-oraclecalendar/trunk/     Mailing lists created:      sched-assist-user@lists.jasig.org      sched-assist-dev@lists.jasig.org     Wiki space created: https://wiki.jasig.org/display/SA/Home     Jira project created: https://issues.jasig.org/browse/SA

      Description

      The Scheduling Assistant is a web application developed at the University of Wisconsin-Madison to satisfy the following goals:

          * Allow people a means for setting rules regarding their availability
          * Allow those same individuals to expose a limited view of their schedule to self-selected populations
          * Provide individuals in those populations a simplified appointment scheduling interface

      The quintessential example and driver for this software is the Academic-Advisor and Student relationship.
      Academic Advisors at UW-Madison are often assigned hundreds of students. Managing an appointment schedule
      for just one let alone a group of advisors requires significant staff time.

      With the Scheduling Assistant, Academic Advisors can:

          * Set an "Availability Schedule" to correspond with their office hours
          * Constrain their assigned advisees with limitations like "30 minute meetings, scheduled no sooner than 24 hours in advance, no later than 2 weeks out"
          * Open one on one or group appointments or a mix
          * Automatically share their schedule with their assigned advisees - no permissioning steps required
          * And/or share their schedule with other populations using "Relationships" and "Public Profiles"

      Students conversely can:

          * Choose from a list of people that have shared their schedules
                o This list displays names along with a description of their relationship to the student, like:
                o "BUCKINGHAM BADGER (Academic Advisor, General Course - BS Degree, Spring 2010-2011)"
          * View free/busy times within a person's schedule
          * Easily Create and/or Cancel appointments

      Appointments created by the Scheduling Assistant are stored in the Enterprise Calendaring system.

      While Oracle Calendar is the current product choice for UW Madison's Enterprise Calendar system, the Scheduling Assistant is not tightly dependent
      upon Oracle Calendar as the target for the appointment data. The Scheduling Assistant can be easily integrated with
      other Enterprise Calendar systems like Bedework or others provided an adequate API is provided by the product.

        Attachments

          Activity

            People

            • Assignee:
              tuyly Tuyhang Ly
              Reporter:
              nblair Nicholas Blair
              Project Lead:
              Nicholas Blair
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: