Drupal/CiviCRM as a SIS (student information system)

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
lobo's picture

Hi!

I've got two kids who are just starting their long school careers :) and i'm starting to look at open source in education. Earlier this year i realized that there is a big need for open source auction software to manage school auctions, but thats another story :)

My current investigation is on SIS (Student Information Systems). There are currently 4 open source packages that I found (openSIS, Centre and focus-SIS and SchoolTool). From alexa.org reports these four dont have a lot of usage, so i'm not sure whether they are heavily used or not. They also seem to be independent and dont integrate with the other packages (Drupal, Moodle). SchoolTool does look promising, but its also in Python which will make integration a challenge. openSIS and Centre are in PHP.

I think between Drupal and CiviCRM we cover approx 80% of the needs. I'm realistic enough to realize that the other 20% is probably the most of the work and nitty gritty details which will consume a fair amount of time. However I also would like to get this done, push it forward and get other schools in the Bay Area (and nationwide/worldwide) involved over the next few years

So what am i missing? thoughts and comments welcome?

lobo

Comments

SchoolTool

bonobo's picture

Hello, lobo,

I know the lead dev of Schooltool (Tom Hoffman), and he has a great vision for the project. Schooltool is also a Shuttleworth-funded project, which doesn't hurt. While I can't speak for Tom, I feel pretty comfortable saying that he would be a great collaborator to work out an integration.

I don't have any direct experience with recent incarnations of the other projects you mention; fwiw, over the years we have had several inquiries about both Civi/Drupal and SchoolTool/Drupal in school settings, but zero inquiries on the others you mention.

Knowing what I know of Schooltool, I would hate to see any duplication of effort. It might be worth reaching out to Tom and seeing where he's at. And, re

I think between Drupal and CiviCRM we cover approx 80% of the needs. I'm realistic enough to realize that the other 20% is probably the most of the work and nitty gritty details which will consume a fair amount of time.

Absolutely; maybe even 90%. But that last 10% would be the trick; given that Tom has been working at this for a while, I would definitely recommend getting in touch with him.

Cheers,

Bill


FunnyMonkey
Click. Connect. Learn.
Using Drupal in Education

I Need a Great SIS

webmanoffesto's picture

I'm an English teacher and I really need a good Teacher's Information Management System / Student Information System. I'm a Moodle user. I like Moodle Gradebook, but that's just what it is (only) a gradebook. Grades are a small part of what a working classroom teacher must track.

I am looking for a Teacher's Information Management System (see below). Are you also looking for the same type of system?

A Teacher's Information System (also called a Student Management System) includes tables such as:

* key school staff (with contact information)
* homerooms (and homeroom teachers)
* learning disabilities (and accommodations)
* parent/guardian
* family (I saw a students/guardians/families done with CiviCRM)
* grading periods
* assessments (tests, quizzes, homework, ... )
* attendance
* discipline incidents

This would be a database with a number of one to many relationships, and even some (ugh) many to many relationships:

* one homeroom to many students
* one student to many courses
* one teacher to many courses
* one family to many students
* one family to many parents/guardians
* one student to many learning disabilities
* etc.

My biggest focus would be on a teacher who teaches at two or more schools, or a Subject coordinator such as the head math teacher who must track 5 or 6 teachers, and their students. I would limit the information to one academic year.

I've tried building this in Access, but did not succeed. I'm learning PHP and MySQL now, but still it may be beyond my ability.

Open Admin for Schools looks promising. http://asdtech.wik.is/

Anyone with experience using one of these? Schoolforge http://www.schoolforge.net/education-software/web-based-student-informat...

School Tool looks like it's promising, but not there yet. And I don't have Ubuntu.
Tom

Our current discussion is leaning towards ..

lobo's picture

CMS + CRM + SIS

based on that and your requirements above, here is how i think they will be handled:

Handled by CMS/CiviCRM:

  • key school staff (with contact information)
  • parent/guardian
  • family
  • one family to many students
  • one family to many parents/guardians
  • one student to many learning disabilities

and by the SIS:

  • grading periods
  • assessments (tests, quizzes, homework, ... )
  • attendance
  • discipline incidents
  • one homeroom to many students
  • one student to many courses
  • one teacher to many courses

Unknown:

  • homerooms (and homeroom teachers)
  • learning disabilities (and accommodations)

For the unknown part, i'm not sure how much an SIS handles and what functionality is expected. So i'll defer to tom on that one :)

lobo

SIS elements should include...

pbaker's picture

Homerooms should go in the SIS. Homerooms are frequently used as markers for student grade level and this is an important part of the student record for a given year

IEP determinations should also go in the SIS, as they have legal implications

Peggy Baker
www.ease-equity.org

What goes where rule of thumb

pbaker's picture

In general, I think that data belongs in the SIS when it has legal or academic implications that need to stay with a student. If a student has an IEP, that information needs to stay in the SIS regardless of whether a student changes addresses, adds or loses family members, etc. It needs to travel with the student in the sense that if a student moves to a new school or district, that information needs to accompany the student regardless of what demographics follow along. THe homeroom is more like course information than like student demographic information, and goes into the SIS as well.

Peggy Baker
www.easlinstitute.org

A lot of things go both places...

krasni_bor's picture

Thinking of this in terms of "what goes where" is a little premature -- a lot of it has to go both places, the question is just which is authoritative and the rules around making and propogating changes.

At this point, as Peggy does above, we need to focus on the roles of the SIS and CRM. The SIS (particularly in public schools) can be very encumbered by privacy and security concerns. A significant potential advantage of having a separate CRM is that it can handle direct communication with parents, letting anyone in the public create an account if they're interested in the school, etc., without them having accounts on the same server that has tons of sensitive and mission critical data about students on it.

Don't Forget Open Admin for Schools

IKN's picture

Hi, Donald,

Les Richardson, the author of Open Admin for Schools (http://openadmin.ca) is my favorite for robust and dependable and honestly open. Dependability is really what's called for at grading and reporting time. Open Admin has got a longer history than the others and lots of solid growth built on testing (used at many schools). It is built with PERL. It may not have the looks of some of the others, but, to me, it still wins in features, dependability and congruence with what real schools need. It is not hard to learn and it works. Besides, Les supports it personally. I am helping to get it translated into Thai.

Perhaps you've had better experience with it than I, but I would advise steering clear of CiviCrm. I gave up on it a year ago, so I would love to see that I'm wrong. For me, It required too much time and effort for the return -- and that was not dependable.

Drupal is dependable; so is Open Admin. Parents can log into Open Admin and see their children's attendance and marks, right from within Drupal. I've seen that done.

--
http://opensourceschools.org

http://FlossEd.org - Free & Open Source Schools -- Free & Open Minds

yep, did check that out ..

lobo's picture

hey david:

yeah i did look at open admin briefly. its also on my list of SIS systems out there ... :)

I do agree that CiviCRM does not have some of the essential features of an SIS, but it does have a fair amount. Also its got a pretty big and growing community that can get involved. I'm a bit biased since i'm one of the lead developers of tbe project. I'm curious to hear what were some of the shortcomings in your opinion

lobo

Ah... that gives me a little more context...

krasni_bor's picture

Can you point me to the best place to get up to speed on how Drupal/CiviCRM integration works and web services in general in CiviCRM. I know a lot of potential SchoolTool users would be happy if they could also have a CRM that worked with their SIS.

Ok. Sorry re. Civi CRM

IKN's picture

Hi Don,

Now I remember seeing you there -- you were/are an essential piece of what works in the CiviCRM community. As a newcomer to the community, I got help directly from you. Thank you.

In the long run, however, after many tries, I found that we had to do everything the civicrm way and that meant time and money we didn't have -- and, sorry to say, probably due to our own lack of understanding, we found it was slow and hard for users to learn (let alone us). I'm sure that we short-changed it; sorry.

By the bye, I would just like to say re. Open Admin that it represents a genuinely open project in which others could/should/are invited to get involved. Making it better would be a community-minded effort; starting your own is, well, starting over.

http://opensourceschools.org

http://FlossEd.org - Free & Open Source Schools -- Free & Open Minds

Integration

gchaix's picture

As much as I'd love to see a solution built directly within Drupal, I'm with Bill in that it'd be a shame to duplicate the effort. Python is easy to work with. While it will require work to integrate, I wouldn't necessarily see it as a severe problem.

-Greg

Not talking of duplication as yet ...

lobo's picture

i'm still learning and trying to see what is there and what is missing? I do agree that integration with existing solutions is better than duplication

lobo

SchoolTool and Drupal

krasni_bor's picture

Hi all,

Bill flagged this thread for me -- I'm the project manager of SchoolTool.

I would say lobo is underestimating how different a student information system is from a content management system. I've had a few meetings this month with a Moodle developer to plan out Moodle integration (we've got a $10,000 planning grant from a school to finish this month, with more to come next month), and I've been shocked by how different even a learning management system is from an SIS, once you dig deep into the data models.

To give some sense of scale, SIS for a single smallish school, from scratch, is about a person/year job. Or two people in six months. People do it all the time. Creating an SIS that can be installed and used at multiple schools with varying designs is vastly more difficult. The clear evidence for this is the fact that thousands of home brewed SIS's have been written and used, but no really successful open source SIS's (yet). This is the most important thing to understand before jumping in this soup.

What sort of integration do you have in mind? We have gotten SchoolTool doing single sign on with Drupal and Moodle using CAS at one school, which is an important first step, along with some other simple integration that is too jerry-rigged to be used generally, but has been a useful prototype.

Regarding the other open source options, it is worth noting that Focus/SIS and OpenSIS are both forks of Centre. I'll let you draw your own conclusions about that. Les has been plugging away on Open Admin and supporting it in real schools pretty much forever, so there is a stability there. SchoolTool's development has been excruciatingly slow -- open source philanthropy is not the shortest distance between two points -- but we've got an experienced international development team and are quickly gaining momentum since calling it "1.0" in April.

thanx for the info ..

lobo's picture

hey tom:

thanx for the info. i was on the schooltool irc channel yesterday pinging folks with a few questions :) a couple of things:

  1. yes, i do agree that a generic SIS is not a trivial implementation. In general software takes way more time than you anticipate and i suspect your numbers abvove are also quite optimistic :)

Here are some of the things on my roadmap. I'm not sure if a lot of this intersects with an SIS (i'm quite new to the space)

  1. Initially the requirements are more from a CRM perspective (IMO). Online login and signup. Ensuring that either parent can see/update various forms (contact informatation, emergency information, student information)

  2. There are also various application forms (day care / extended care / summer camp / walkathon etc) that they want online signup for. Extended care seems to be the most complex and keeping track of when students were signed in / out and calculating blocks used. Online payment for some of these things would be an added benefit

  3. parent teacher conferences. The scheduling aspect should be done online. The school is quite small (260 students, 3 years - 8th grade) that i dont think this is a big thing

  4. online auctions. realized that the commercial space is a pretty big ripoff (the leading vendor charges 9% + $600) and i'd like to get this into civicrm. We already have a fair chunk of this written for next years auctions :)

  5. automating and simplifying the admission application forms.

I'll update this as i learn more :)

lobo

Not much overlap

krasni_bor's picture

There isn't much overlap with an SIS there, but good opportunities for data sharing and efficiencies, and some segmentation of domains so that each app can do its job well rather than everything poorly.

Clear segmentation

bonobo's picture

I'd love to see an integration move forward with clear agreement about what fits best in each app -- this way, we could draw some clear lines about what the various apps are doing, and make sure that the use case is as clear as possible for end users.

Tom -- the base install is pretty straightforward, but without a clearly defined need for what Drupal is going to be doing the power of the integration can be difficult to discern. The civicrm wiki has been a pretty useful starting point for me: http://wiki.civicrm.org/confluence/display/CRMDOC/Drupal+Installation+Guide

Donald and Tom -- one of the things I'd want to see tackled in any integration is a firm decision about the authoritative source for user data; either that, or a pluggable backend for managing user data that eliminates user data being stored in multiple locations -- of the many issues I have seen schools struggle with, fragmented user/community contact data is one of the most common.


FunnyMonkey
Click. Connect. Learn.
Using Drupal in Education

Some thoughts ...

lobo's picture

based on some conversations with Tom and my own limited understanding of schooltool, here are a few thoughts and ideas. This has worked for us quite nicely with Drupal integration and hopefully will also work with schooltool :)

  1. Drupal (or Joomla) to be in-charge of the user registration process. All users management is via the CMS. All users are contacts.

  2. CiviCRM stores and manages all contact information. Any additional data to be stored about contacts is done via civicrm custom groups (rather than via CMS). Some contacts (students, teachers and admin) also have a record in the SIS. This can hopefully be done via a REST API. CiviCRM will store a reference to the SIS ID (in a custom field). Might be advantageous for the SIS to store the corresponding contact ID also. Parents might have login access to the CMS/CRM but dont have a corresponding record in SIS.

  3. The SIS stores all student / course / schedule / gradebook / standardized test scores / discipline information.

  4. One area of overlap is "demographic" information. I'd recommend that demographic information be stored in CiviCRM (but then i'm a bit biased also!). CiviCRM will be doing two things in a future release:

  • Introducing the notion of a contact sub-type. Thus we can have a contact of type "Student" and thus have custom data extend only contacts of that type
  • Move demographic information to a custom data group. We currently ship with a limited number of demographic fields (gender, date of birth, if deceased, date of death). Moving this to a custom group allows admins to extend and tailor it for their particular needs and allow more demographic information to be added in a relatively seamless manner
  1. The SIS exposes a set of student information to CiviCRM via API's. More on this as i learn more :)

lobo

Division of Labor

krasni_bor's picture

Not surprisingly, I see the SIS as ideally being the definitive source of data about students enrolled in the school. The CRM might focus on parent interaction, and particularly the processes which precede enrollment and potentially follow graduation. Also, the CRM might be more lenient in allowing user modification -- a parent can modify their own address in the CRM, for example, but this might require an explicit approval to be propagated to the SIS (don't want someone quietly changing the address a student's report card goes to...).

I see the workflow looking something like this:

  • The parent goes to the CRM to express interest in the school, apply, pay. They can do all this stuff themselves directly on the site.

  • If a student is accepted, the contact, etc. data is transferred over to SchoolTool. This is verified and becomes the definitive record.

  • CRM is the main site that parents interact with. SIS is the main tool that teachers and administrators interact with. Students interact directly with SIS or indirectly via LMS.

  • It might make sense to not give direct logins to the SIS to parents (we haven't decided how we're going to implement it) but use secure web services between the SIS and CRM to provide access to homework, attendance, grades etc. Just an idea at this point.

contact data stored for SIS

lobo's picture

hey tom:

Is there a schema for the type of contact data that schooltool stores? Can you talk a bit about what type of data is stored, how it is modelled and how it can be extended

thanx

lobo

Contacts overview

krasni_bor's picture

This is a good intro: http://book.schooltool.org/htmlhelp/contacts.html

We've added relationship types in the current development trunk but not released it yet. Probably next month.

Blog post ...

lobo's picture

i've blogged a bit about this thread here:

http://civicrm.org/node/586

lobo

Online admissions

gmasky's picture

I have been following this thread with great interest. One other feature at least in the context of India is online admission. This process is tedious for both the parent and the school because of the volumes of applicants for the limited number of seats.

We have been testing Fronter LMS at our school. It is much simpler than Moodle but costs $$$

openSIS

sleducator's picture

Gentleman , I am the community manager and project lead for openSIS, I am also founder of the http://en.opensuse.org/education project. I would like to invite you to help us finish rebuilding openSIS for MySQL and to help shape version 5. Our current thoughts for version 5 are very much in line with your ideas. Please visit our beta https://eduforge.org/projects/opensismysql and help us move towards a better student records management format for all. You can contact me at james (At) os4ed.com

more details please ...

lobo's picture

hey james:

a few questions:

  1. can u elaborate a bit more on: "Our current thoughts for version 5 are very much in line with your ideas."

  2. Can you educate us on the differences between openSIS and schooltool for the planned versions

  3. Can you elaborate a bit more on the origins of openSIS and the fork between openSIS / FocusSIS / Centre.

lobo

Details?

bonobo's picture

Hello, James,

Thanks for joining in the conversation --

Given that there has already been some conversation about strategies/approaches, do you have anything to add to the discussion?

I am also interested in your responses to lobo's questions.

Cheers,

Bill


FunnyMonkey
Click. Connect. Learn.
Using Drupal in Education

opensis v5

sleducator's picture

lobo,
1: The team and I have been constructing a new data model and plans for a MVC based rewrite of openSIS. We were looking at Moodles underpinning as a format to which we would align our database. We have some Moodle developers guiding the process and we are hoping to end up with a program that is stand alone but acts very much like a host for Moodle to snapin to. We think the idea of mixed education environments (physical and virtual) even in the elementary school age is a vital process change for the future of education.
2: openSIS is the third evolution of the code base in Centre, it has had over 1000 hrs of added debugging and interface enhancements.
We already support all of the data types mentioned above and we are written in PHP with some AJAX and now on MySQL. Our goal is not to write something in a language foreign to 90% percent of the current open source solutions for education which are all ,but a few, written to the AMP stack. Moodle, openBiblio, openSIS ,etc make an entire suite of school administration and education tools accessible to localization with the same skill set.
3: As I said openSIS is the third generation of the code that was Centre/SIS our fork is different in that, as the others are distributed as GPL, we are developed as true open source \ GPL meaning we intend for the code to live in Public SVN forever. It is our intention to be the automatic other half of every Moodle installation from now on.

http://en.opensuse.org/Education_ERP

more specific questions ...

lobo's picture

following up to some of your answers:

  1. can you point us to some documentation / wiki / mailing lists where the discussion is happening.

  2. can you give us some background on why the fork from centre happened and the reasoning behind it

  3. can you elaborate on the differences in functionality / capabilities between openSIS / schooltool apart from the language. yes, the language is a pretty big deal for most folks, but i'm more interested in it from a feature set perspective

thanx

lobo

more specifically

sleducator's picture

Documentation: http://opensis.com/ We do not have a wiki yet.
Forum: http://os4ed.com/forum/

The guys and I tend to use instant communication at this point but the forum is supposed to be more active.
You can join me weekdays 7 am to 5 pm EST UTC -5:00 on Skype as os4ed_support

Forking from Centre and Focus (all the same code) was about distribution\development ideas and processes.

openSIS and the underlying code have the maturity and usage to have had it's users request and help develop 90+ % of the features available in the commercial products it replaces i.e. PowerSchool and Inifinate Campus. Under the Postgres version we have discipline, billing, foodservice, parent portal , student portal and other features either fully implemented or nearly complete. some of this code was "for sale" under Centre yet was included as GPL under Focus until Focus closed development and went proprietary.
Although the school year is closed and I need to build another school, demo.os4ed.com has a running version of the Postgres version available.
user pass
admin admin
teacher teacher
parent parent
yep u guessed it
student student

http://en.opensuse.org/education

An update ...

lobo's picture

I did not really disappear :) but in the past week we released CiviCRM v3.0 alpha

On the SIS <-> CRM <-> CMS integration, i've made fairly good progress. You can read my blog post here:

Adapting CiviCRM for the needs of a school : http://civicrm.org/node/618

Exposing relationship data in CiviCRM profile view : http://civicrm.org/node/604

Most of the code is here: http://svn.civicrm.org/sfschool/trunk/drupal/ (you'll also need CiviCRM 2.2.8 and Drupal 6.x)

Note that this is a work in progress, but i think a good step forward :)

lobo

Another blog post about my work for San Francisco School .

lobo's picture

http://civicrm.org/node/624

Also all the school related blog posts are here: http://civicrm.org/taxonomy/term/26

lobo

Great Thread... but.

MrAdamJohn's picture

By this time there must be a live implementation or two of Drupal in (or integrated into) the more traditional SIS/SMS context. While much more is certainly possible, the core functionality of managing students, in classes (in rooms) and assigned grades with student, teacher, administrator and possibly even parent roles at work. Anyone know anything in production out there?

Handling Attendance for Extended Care Activities in CiviCRM

lobo's picture

Another blog post of how we deal with extended care at San Francisco School

http://civicrm.org/node/669

Also all the school related blog posts are here: http://civicrm.org/taxonomy/term/26

lobo

any progress in this direction...

gorav's picture

Kindly post any progress that takes place in this direction... would be really appreciated.

Also, it would be nice to have a transport module.

CiviCRM

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: