Better volunteer management tools have been on the want list of many a CiviCRM user, dating back as far as 2006. Many of the organizations we work with require tools for managing volunteers apropos to specific events. For example, they may host periodic festivals requiring heavy volunteer participation to cover needs from ticket-taking, to crowd control, to staffing info tables, to A/V. In many of these cases, the organizations are already using CiviEvent to manage registration for regular attendees. While they could create duplicate events -- one for attendees (i.e., Participant role = Attendee) and one for volunteers (i.e., Participant role = Volunteer) --, this is clunky, counter-intuitive, and inflexible. Enter CiviVolunteer.
Event administrators specify their volunteer needs through a new “Manage Volunteers” tab (pictured below) on the Event Management page. Like many other tabs on this page, initially the tab contains only an unchecked checkbox which asks “Enable Volunteer Management?” If checked, the administrator is asked to provide a list of volunteer assignments (start time, end time, role, and number of desired volunteers). The administrator can store these settings in an event template for reuse with similar events (e.g., Soccer Tournaments require 3 Referees, 1 Scorekeeper, 3 Ticket Takers, and 2 Concession Stand workers).
Roles will be managed through an administration page, similar to Administer > Customize Data and Screens > Activity Types. For the first release, roles will be defined simply by their Role Name and Role Description. Roles created for any given event will be available to all events.
A drag-and-drop interface allows event administrators to select specific volunteers for specific assignments, as well as reject a would-be volunteer’s services altogether. The interface also allows the administrator to give volunteers assignments manually (vs. when volunteers sign themselves up, e.g., if a constituent expresses interest in volunteering over the phone). The mockup below illustrates this drag-and-drop interface.
An administrative interface will be provided for event administrators to log the number of volunteer hours performed, as well as to mark no-shows. Future releases of CiviVolunteer may allow volunteers to sign in and log their own hours.
Reporting is available for individual events (e.g., to produce a list of expected volunteers) as well as across events (e.g., how many volunteer hours did we recruit in February?). Since volunteering will be logged as an activity, we expect custom activity reports to be a feasible stop-gap for early CiviVolunteer releases.
We feel the set of features described above make a good, usable first release for CiviVolunteer. Here are some ideas for inclusion in the roadmap. Feedback on how these should be prioritized, and what should be added will be valuable.
We're looking for feedback on the approach and phase 1 requirements from folks who need a solution as well as folks who are using an existing solution. We'll tweak the game-plan based on feedback and come up with an estimated scope and cost. At that point we'll be looking for organizations that can provide seed funding - and the kick off of a Make-it-Happen Campaign.
Roles define what a volunteer is doing. Eventually, skills and requirements and more can be attached to a role.
Assignments represent the scheduling of an activity. It includes the role, the time and duration, and the person performing the activity. An assignment is a shift, but we may reserve the term in the interface for the meta sense of the word, that is, a grouping of assignments. The basic facility for grouping assignments has been conceived, but not fully fleshed out, so there is plenty of room for discussion on what will make the interface intuitive.
Unlikely to be a part of early releases, this a requirement that will be accommodated from the start. Grouping of assignments can have several purposes.