Stelagmite / learning-management-system

Discussion and planning for a LMS in Rock RMS
2 stars 1 forks source link

Suggested Features/Functions #1

Open timlem opened 3 years ago

timlem commented 3 years ago

Here's where to start...

What core features are you looking for with an LMS system inside of Rock?

timlem commented 3 years ago

Here are some notes I already had as I was working on it myself for my church:

  1. Signup individually or as a group
  2. Have categories
  3. Have tags
  4. Image
  5. Description
  6. Viewable by people in a group/dataview
  7. Have questions
  8. Restrict access to next one after completing first one
  9. Ability to have time spans (the module is open from specific date range) 10.Have video(s)
  10. Have resources (pdf's, etc)
  11. Use Steps to measure how many people have signed up for, started, completed
asdf1nit commented 3 years ago

I agree with all that @timlem said and have built most of that out for us. I would like to add a couple things that I feel are important as well. Core has a lot of things that can be Frankenstein'd together but there could be a few tweaks that can be made with minimal impact to how things already work and yet be useful for managing this as well.

markewampler commented 3 years ago

I am not trying to derail the conversation here completely but to suggest a possible different direction on this overall...

Instead of making this a Core thing it became a plugin and it was just hooks into a currently existing LMS.

I would think overall that would be a better bang for you buck in regards to continuing updates and improvements and less management for the Core team to worry about. The LMS would continue to innovate in their space to keep their product relevant and it would not require any funds directed at Rock to get a better product.

We are working on an integration with Pathwright LMS. It would require pathwright to come to the table and open up their API some more, but they would bite more at a potential audience increase that could be available for minimal effort on their part.

jsw-austin commented 3 years ago

I am not trying to derail the conversation here completely but to suggest a possible different direction on this overall...

Instead of making this a Core thing it became a plugin and it was just hooks into a currently existing LMS.

I would think overall that would be a better bang for you buck in regards to continuing updates and improvements and less management for the Core team to worry about. The LMS would continue to innovate in their space to keep their product relevant and it would not require any funds directed at Rock to get a better product.

We are working on an integration with Pathwright LMS. It would require pathwright to come to the table and open up their API some more, but they would bite more at a potential audience increase that could be available for minimal effort on their part.

To me this idea maximizes extensibility (aligned with the values of Rock) and has the added benefit (possibly) of taking some of the burden of management off the core team.

charlottedean commented 3 years ago

I agree with Mark but also like what Daniel has suggested as well. My organization has also been in talks with Leadr, which is more staff specific but in the same ballpark with everything we are all talking about.

cabal95 commented 3 years ago

At this point, it's probably still too early to decide on integration vs plugin vs core. The early goal should be to get a list of what bare minimum requirements each church has. That will really be the driving factor of the decision. The bare minimum should be kept to just that. Basically the list of what features it must have for you to even consider it.

For example, with a decision on whether to choose Rock or a different system would Rock not having integration with background checks be a deal breaker? Meaning, if background checks were something you needed and even though you could run them manually via an external site and upload the completed background check into Rock manually - would that be a deal breaker? Would you throw away the entire "basket of eggs" (Rock) just because it lacked that one feature?

When talking to my own staff, I usually try to get the list of requirements in 3 chunks:

  1. The absolute bare minimum (what I described above) features it MUST have to even consider the project.
  2. The "we really WANT these but they probably aren't deal breakers" items.
  3. Finally the "would be NICE" things.

It would be NICE if Rock had a learning management system and we WANT it to integrate with our background check service but it MUST let us do electronic children's checkin.

Once those are in place, it becomes much easier to make decisions like should this be a core feature in Rock, an integration with another system(s), or a plugin that gets built.

markewampler commented 3 years ago
  1. our MVP is as follows:

     

    1. A group member of a specifically chosen GroupType(s) needs to be able to launch a group without staff input
      1. When launched allow launcher to select who will be participating
      2. Allow for non-group members to join as well
        1. In case they want a friend to join that is not a part of the group
      3. Allow for a “Moderator/Leader” to be chosen who is responsible for the groups progress
        1. Chosen among group members or ley leadership over group or staff leadership over group
          1. Leadership are stored in attributes about the group
    2. Allow staff to have an ongoing “registration” for group placement into a particular course/class
      1. Random members register for a potluck type group
      2. Staff member curates group and launches when a sufficient number of members have registered and a “Moderator/Leader” is available to serve
    3. Allow Staff/Leaders to launch a curated group
      1. Present a “registration” url that anyone who has it can join the group
    4. Allows Videos as a task
    5. Allows Audio as a task
    6. Allows Images as a task
    7. Allows PDF’s as a task
    8. Has Assigned Tasks
      1. Allow Groups of Tasks to be assigned as due at the same time
      2. Required Tasks
      3. Optional Tasks
        1. Optional do not count towards “Completing the course”
      4. Tasks can be time gated
        1. Task 1 is available(unlocked) starting on Jan 1st then Task 2 is available(unlocked) on Jan 8th and so on
        2. Always backwards available to complete old tasks
    9. Has a forum for the group to discuss
      1. posts and replies
      2. Unique to that group and only that group can see it
        1. Allows for more vulnerability in sharing
    10. Automated Emails at set times
      1. Sends to group members reminding of upcoming tasks due
      2. Sends to group members reminding of tasks becoming available
      3. Welcome Emails
      4. Closing Emails
    11. Allow for Moderator/Leader to send emails if needed outside of automated emails
      1. To whole group
      2. To individuals in group
      3. Record all emails on person record (CYA in case of abuse)
    12. “Quizzes” or questions about material
    13. Ability to create Reports on group data
      1. Individual Completion percentage
      2. Group completion percentage
      3. Furthest Task completed if incomplete
    14. Allows historical access to material if I have completed a class/course previously
      1. forever or until Jesus comes back
    15. Automatically updates record showing that “Person A” has completed “Course B” on X Date
    16. Have different courses and security on courses that are available based on previous completion of other courses
marcierempel commented 3 years ago

I'll have my team review the necessary requirements and post them here.

We currently are operating with a learning management system that we had built about 2 years ago using the features in Rock. It's only used for video training at the moment, using group requirements, person attributes, dataviews, content channel and custom template on a content channel view block.

I can share my documentation here if anyone wants to see it, but I'm sure it's a little clunkier than what you're thinking of doing. It doesn't allow for collaboration, questions, or group interaction and that's what we would like to see as we move more towards online groups and classes.

timlem commented 3 years ago

@markewampler thank you for that level of detail!

I agree with Daniel that we should start with what the MVP is and then decide if it should be core or a plugin or how to proceed from there. So everyone take a look at features listed so far and then if there is something you see a need for that is not yet listed feel free to add as a comment on this discussion.

I am going to create another discussion for specific use cases. How would you plan on using the LMS. I will post mine and if there are any other use cases add them as comments

marcierempel commented 3 years ago

Our MVP would be the same as Mark has listed with the addition of the following (more for the Learning Designers & Content Authors):

These are not deal breakers but would be nice to have:

TheArkChurch commented 3 years ago

So I'll reference a group\class\training\course all as "course" for this outline.

Our MVP requirements are:

The ability to create a course that has the following attributes\properties

Sessions should have the following attributes\properties

Other Requirements

Future abilities of this should include