Closed jonedmiston closed 5 years ago
This looks great Jon!
We plan on allowing black-out dates to also be configured for other people in the same family(ies) as the individual.
On that thought process, would it make sense to use a "family member picker" (drop down list) in the schedule toolbox above everything else that switches the context of the entire block to the selected person? Example:
I routinely serve with my wife and teenager. Should I be able to view their volunteer schedule information and accept/deny their confirmations for them?
I like where this is going. There's one thing that we do a lot with volunteer scheduling that I'm not sure if I'm missing somewhere: volunteer roles and requirements. This may be tricky to implement since you're leveraging the check-in functionality, which seems to be deeply tied to named locations.
When we schedule volunteers, in addition to what their schedule will be, we also have scheduled roles. In an AV context, that means I have Sunday morning schedules for a couple sound guys (two different roles), 5-6 camera operators (scheduled by individual camera), Light operators, screen media, and on down the list. Children's ministry has room leads and room helpers. For special events we end up with a wide range of service areas, including setup, cleanup, food service, greeters, etc.
There are training requirements for most of my AV service areas, there are background check requirements for service in childrens ministry, etc. Typically when we schedule, we'll start from a list of individuals who are trained/approved for a given role, and schedule them to a given service.
Effectively, the model that would work ideally would be to add a "role" branch under group/location/schedule - role. So AV Team / Auditorium / 9am / Sound Board, or Children's Volunteers / Kindergarten room / 10:45am / Lead Teacher
I can see how I could kludge this functionality by making additional locations within, say, my auditorium, but this has negative effects in other areas, such as in the room management plugin which was developed by Central Christian.
Hey Luke! I think this can be done, but maybe I'm missing something. Your locations could take the place of the roles (slots). Does this make sense? I'm not sure what the ramifications are with the Room Manager. I talked with Nick and I think they could add some filters to only consider locations of a certain type. Below is a diagram of what service programming could look like.
This makes sense from a hierarchical standpoint. Maybe leverage ability levels to take care of training concerns? That has ramifications because I believe ability levels are single-select, which makes sense for infant/crawling/walking/etc. but doesn't make as much sense in a cross-trained tech team.
One big picture thing to also consider - volunteer saturation analytics. One of the things that I'd really like to arrive at is a good visual depiction of a person's volunteer involvement across ministries. Having a quick view that Ted Decker volunteering as:
In our current context at Highlands, we have a balkanized system between the different ministries of how scheduling is done, which is why this is so exciting. No longer do I have worship musicians scheduled on a google docs spreadsheet, worship technicians scheduled in planning center, children's ministry volunteers scheduled on an excel spreadsheet on the kid's ministry assistant's laptop, and communion servers scheduled on a piece of paper at someone's house. Centralizing the information leads to much better metrics on the healthy participation of our congregation in the ministry.
You guys have to know this as well as anyone, but there's a whole stratum of volunteers who serve everywhere because they can't say no. For a while it's great and they're ministry all-stars, but it's absolutely the road to burn-out in the long run.
It's really the other end of the bell curve from the scheduling analytics you've shown. It looks like right now you would be showing scheduling analytics for one group, but would that be expandable to show service across all scheduled groups / locations?
Also, could there be a volunteer service block, probably in the Person Profile / Groups (or a separate Person Profile / Service) page to show scheduled service / confirmation / blackout / no show (history) by Group / Location[Role] / Schedule?
Additional thought, somewhat peripheral - in someone's service toolbox area, have a specification for desired overall weekly/monthly service hours. Calculate their actual service hours from scheduled/checked in service, and return a value. Shade the service badge accordingly on their person profile, keep light gray for not scheduled, orange for <25% of desired hours scheduled, yellow for 25% - 75%, green for 75% - 100%, and Red for excessive service, maybe 150% plus.
Wondering if the built in Group Requirements
features would help with the training concerns? Ability levels might not work out so well, as you noted.
The burn-out idea is great. The good news is all that data is in one system. What you're thinking is definitely possible. Not sure it will be in v1.0, but getting the data is more than 1/2 of the work, and that would be done.
Also, could there be a volunteer service block, probably in the Person Profile / Groups (or a separate Person Profile / Service) page to show scheduled service / confirmation / blackout / no show (history) by Group / Location[Role] / Schedule?
Yes, I think we're going to need something there to help staff see the schedules, but also add black-out dates.
More of a question than a comment... but way back when "Simple Volunteer Scheduling" was just an idea on a Trello board, I thought it was stated (though my memory is fuzzy) that Rock wasn't going to try and "compete" with Planning Center and its relatively complex scheduling features and that the scheduling mechanism would be more geared toward Parking lot and Coffee Bar type teams. Clearly this new plan for vol scheduling has moved well beyond "simple", so I'm just curious if that original idea is now moot... are most churches looking at this new feature thinking of ditching Planning Center, at least for the scheduling piece?
Group requirements would work for things e.g. background check necessity, but perhaps not for differential training in teams. Some kind of group attribute category perhaps?
RE: complexity - I'm definitely looking to completely centralize volunteer scheduling. Having siloed information hurts my ability to present the most complete picture of a congregant's relationships within the church.
Planning Center has developed a great suite of products, and there are some small, new churches that I talk to that I steer in their direction. PCO sync by red arrow looks to sync contact information between the two databases, but wouldn't give me the single-location visibility of the gradient of someone's volunteer involvement, just a yes/no they're in the group.
Spark and the Rock community have built a basket that's so good, I want all my eggs there, in terms of seeing and managing the relationship.
PCO should and does rule the roost for managing a service schedule, dragging and dropping songs and announcements and the like. Rock doesn't need to be in the business of re-keying a song chart. That's not important to the goal of showing relationships. But robustly showing someone's involvement, from group membership and attendance, conversion and baptism dates, through now their weekly/monthly volunteer commitment is, to me, completely within the mission of Rock.
That's a great point Jim! We definitely don't see competing with PCO on service programming/worship/service planning. We want to keep this feature as simple as possible but also meet the needs of most churches. That's a tough tension to manage though. Please do help challenge the conversation to keep this simple!
I'm glad to see @JimMichael's thoughts on the original intent behind Volunteer Scheduling. From our perspective, we're currently using PCO for the normal, non-worship volunteer teams as a stop-gap until v9 is available for use. PCO offers much more advanced features than we need for building and scheduling our teams, and from what I've seen in the current specs of volunteer scheduling here, it does meet all our needs. Keep it up team!
We've been hard at work with a few more updates and new features based on your feedback.
Added the ability to quickly search for a person by typing their name, list will filter as the search query is typed.
A person profile level block that allows administrators to view upcoming schedules for a person as well as blackout dates. Administrators will be able to add blackouts if volunteers are unable to do it themselves.
Shows checkins, missed confirmations, declines, and decline reasons with ability to filter by group, date range, dataview, and person.
Emails the scheduler for every confirmation or decline. (Disabled by default)
All emails will now be sent using a job that will group RSVP and confirmation emails where possible. This will help prevent an avalanche of emails by grouping confirmation emails to send as defined by a new job. The schedule email job will be configurable by a group and its children.
This will help determine who is allowed to do the scheduling for a group. This is a new security level between 'Edit' and 'Administrate'.
@edmistj excited to see more of this get flushed out! Based on the updates and pre-existing information a few questions here for you and the team:
How does Check-In tie into pre-existing groups, like the ones you setup Connections to. From looking at the admin side of Rock, it seems like you can't setup Check-In schedules for Groups that are in the Group viewer? ** I'm still a Rock newbie, so sorry if I'm missing something :)
What will the limitations be on the digest?
Sign Ups
Will there be a place to edit/add text on the outgoing requests before the persons are emailed? Like a “general” text body?
Will cloning the “Schedule Assignments” also bring over the assigned persons, or just groups/schedules?
I see the UI for reminder preferences, which is great but just want to clarify, will there be a Workflow/Job that sends out scheduling reminders?
In the latest notes, it says you will now be able to search by name in the resources list.
I know this comment is late but one enhancement that would take this a step further would be to allow people to choose their confirmation and reminder communicate preference between SMS and e-mail.
This looks great! We would also want to be able to send confirmations by text. If I understand correctly ('worker' meaning 'volunteer'), it would be great to have the ability to add the toolbox to the user portal with the ability for checkin there also.
Excited to see the direction you're going with this. It looks like a great fit for us.
I saw a note in the early discussion that this was built on the check-in data structures, but not much discussion of how deep that connection goes. We'd really like to be able to use our existing children's check-in infrastructure (computer kiosks, RFID tags, label printers) to "check in" our volunteers and print them a role-specific name tag.
Will that capability be part of the V9 release?
@SteveSwaringen yes, barring some odd custom configuration specific to an organization, it should work with your current hardware.
@SteveSwaringen we already check-in all volunteer teams (with role printed on tags that differ from Kids check-in), and in fact the Volunteer Check-In config exists out of the box... you just have to set it up. This doesn't really have anything to do with the scheduling side of things (which is what's coming in v9)
I know that prealpha is just that: Love how progress is looking - I think the term "Committed No Show" on group scheduler analytics is a little ambiguous. I feel like 'Committed' in the context of a volunteer means the opposite of what one would do who wouldn't appear. "Did Not Show" I think conveys the same information in a more clear way.
Thanks @luke-infoministry we'll process that input.
I saw that on the back end, this referred to a status that basically is communicating "Commited to serve but did not show", which makes more sense with the abbreviation. I still think "Did not show" contains the implied statement that 'showing' was expected.
Hey Jon, great meeting you at LeadNet in San Jose back in April. I am just joining this conversation and only read a couple of the recent posts. I did a keyword search on "SMS" and saw a post back in Sept of 2018, I am unaware if there's been more dialog. I am really excited to hear/read about Volunteer Scheduling. The SMS/text method of confirming or declining a schedule is something we've been discussing here at Willow in the kids ministry. Many of our volunteers are on the teenage and elderly end - we find they don't use email (especially the teens). So right now, many of our PCO scheduling emails go unopened. This week I received a text from my dentist (well. their scheduling system) asking me to respond "1" if I am coming to my appointment later this week or "2" to cancel the appointment. Here at Willow we've been talking about a similar desire for our volunteers - and even an option "3" to signal for someone on the staff to contact the volunteer for further conversation or even "4" to take them out of the serving group (which would also trigger a phone call from our staff). Those are loose ideas. Just wanted to see if a concept like this is desired out there in the Rock community and/or if you can point us to a solution that will integrate with Rock's scheduling to do the SMS portion.
@mshintani Great ideas. We can add this to the roadmap for this feature. I think we have a lot of the plumbing for that in our current foundation.
@jonedmiston as we are looking through Group Scheduling for v9, is this the best place to pose questions about features listed above?
@WoodsonJ Questions are probably best put into chat where more people can assist in answering.
Rock Scheduling
The new scheduling feature is designed to augment the standard Rock Check-in model. This means if you have your volunteers checking-in at services, most of your configuration will already be complete.
Scheduling will add the ability to create minimum, desired, and maximum capacities for each location schedule. This allows you to set staffing needs based on the size of a service. If a 10:30 service has 20% more attendees, you can scale your volunteers appropriately.
Next up we'll have group members select their schedules. The options here (weekly, every other week, etc) will be defined on the Group Type.
And, a group member can also have an assignment which ties them to a location and/or schedule. In most cases, a group member will just select their schedule frequency--this will allow a kids volunteer to always serve in the same classroom (location).
Showing some of the permutations on assignments.
The system will then be able auto-assign people to the correct place using this logic.
Screens
OK, so let's start to look at some possible UI to drive this. First from the admin side. This first screen allows the scheduling to be created. Most people would be assigned from the Group's Group Members. But you could also pull people from an alternate group or data view. You can also add a single person to the resource list to pull from. By default the resource list will show volunteers with a matching schedule preference, if a group member is set to serve every other week and it's their off week, they will not be shown in the resource list.
The resource list will show the group member, their last scheduled date, a note, as well as any conflicts (denoted by a yellow background color). Schedulers will be able to select all members in the resource list, or drag individual members to their assignments.
Each location will now include a ScheduleStatusLight (a Rock version of a traditional stop/go-light). The chart will represent confirmed members in green, pending members in blue, and declined in red. With a line denoting the minimum required. Next to the status chart is a circular status light that will show:
Schedulers will also be able to clone any schedule location to another week or schedule time by pressing the clone button next to the ScheduleStatusLight.
Schedulers will also be able to see an overview of current schedules using the Schedule Status Board. Which is customizable by groups and dates.
Confirmation emails would look something like this, but of course would be configurable.
From there users will be linked to an email confirmation block with custom lava to show for each group.
Optionally, declines can require a decline reason (defined type), and a note to explain their absence.
Next , we would have a Schedule Toolbox for the workers to use. The first tab allows them to view and confirm upcoming schedules. They’ll be able to subscribe to an iCal feed with all their upcoming and pending schedules.
The next tab would allow them to set their preferences.
Note that black-out dates could be global (I'm going on vacation) or specific to a single group (I need a break from the kids). We plan on allowing black-out dates to also be configured for other people in the same family(ies) as the individual.
The final tab allows them to sign-up for additional schedules that they were not assigned to.
Finally, how about a light analytics block that allows you to have accountability.
Data Model Changes
Here's some high-level changes needed to the data model to support these features.
Conclusion
That’s V1 of volunteer scheduling. Please let us know your thoughts...