For Nonprofits

Are you a nonprofit who would like to have some quality software developed for free? Well you've come to the right place! Read on for more information. This page contains the requirements that nonprofits must meet in order to have a project completed, as well as the legal agreements that need to be signed.

If you represent a nonprofit, and are interested in submitting an application for a SLP project, please see the application page.


Nonprofit and project requirements

We have a few requirements for software systems developed by the SLP:

  • The software must be for a nonprofit in our community. Formally, you must be a 501(c)(3) organization. Currently, "our community" means the Charlottesville/Albemarle area. And the primary goal of that nonprofit must be charitable in nature (e.g., no athletic leagues, fraternities or sororities, political organizations, etc.).  
    • Religious organizations are fine, as long as the purpose of the nonprofit is secular -- separation of church and state prevents us, a state institution, from developing software for religious purposes. However, if a local church runs, say, a soup kitchen which is open to all, then developing software to help the soup kitchen would be perfectly acceptable.
    • Governmental organizations are generally fine, as long as there is a direct public benefit. But due to the locality issue, it would likely have to be a Charlottesville-area government entity.
    • We are generally trying to target organizations outside the University of Virginia.
  • The software must have sufficient complexity for a group project of 5-6 computing majors. Thus, designing a pretty website with lots of content is not really the type of technical challenge needed to make this a worthwhile project for the SLP, as we need a year-long project for a group of computing majors. Some examples of possible software systems include: personnel management, volunteer-nonprofit communications, asset tracking, etc. While we expect most of the software to be web-based, that's certainly not a requirement. We are happy to discuss what constitutes a valid project, if you are unsure.
  • As much as is possible, the software must be free to use. While we realize that a personnel management system may only be used by staff members of the nonprofit, any public facing system may not require financial payment to use.
  • The software is free for the nonprofit to use forever (including augmenting it, modifying it, etc.), but the code is owned by the development group and the SLP program. Only the development group and/or the SLP may distribute the software. And we reserve the right to use the website -- and images thereof -- in our advertisements and communications (this pertains to the code we develop and not to any confidential information, obviously). There will be a licensing agreement to this effect to sign.
  • The nonprofit must be willing to dedicate some time to the development of this system. Typically, this means a regular bi-weekly meeting with the students, as well as providing feedback on the site, describing requirements, etc. Basically, we need to know what you want, how you like what is being developed, and what we can do better to fulfill you needs. We do not expect you to have any computing or software engineering knowledge.
  • Any costs incurred by this project must be borne by the nonprofit. Typically, that means proving the hosting platform for the final deployed software (although we have leads as to free hosting services). But this may also include staff time in support of the project, if that is needed. Basically, we do not want the students to have to pay for their project.
  • And the standard disclaimer whenever something is free: there is no warranty.

As this is a year-long course, the development work begins in September, with expected deployment the following April.


As mentioned above, the software is free for the nonprofit to use forever. However, the nonprofit does not own this software -- it is owned by the students who developed it. This ownership applies to the software, not the data therein -- that will always remain the property of the nonprofit.

In order to participate in the Service Learning Practicum, there are forms that will need to be signed. The forms can be found here. The forms are as follows:

  • Student Participation and Release Form: this form is only signed by the students, but it contains the details of the license, the relevant parts of which are reproduced above. Specifically, the license is detailed in item 6 of that form.
  • Capstone NDA: if the nonprofits want the students to sign an non-disclosure agreement, then this form has already been approved for use by students in this capstone course. Any other NDA form will need to be pre-approved by UVa prior to use. Note that the course instructor(s) should also sign this form, as s/he will have access to this confidential information as well.
  • Customer Information Agreement: this form is a series of disclaimers and other pieces of information that are relevant to the nonprofits who participate in the SLP. The agreement indicates that the nonprofit is aware of all of these issues.

The only form that must be signed by the nonprofits is the third form ("Customer Information Agreement"). The nonprofits can request that the students and instructor(s) sign the "Capstone NDA" form as well.


I want some!

Still with us? Not scared off by all the disclaimers? Application details can be found on the application page. Feel free to send an e-mail to aaron (at) virginia (dot) edu for more information! Selection is made by a process that seems remarkably similar to a Magic 8-ball.