1 |
|
2 |
Calendula -- Towards a Fundraising Database Standard |
3 |
|
4 |
Requirements Document |
5 |
|
6 |
Darryl Caldwell darrylc@fudosys.com |
7 |
|
8 |
|
9 |
Overview |
10 |
======== |
11 |
|
12 |
This document provides a general outline of the |
13 |
requirements of the Calendula project. |
14 |
|
15 |
Overview |
16 |
Intended Audience for this document |
17 |
Problem Summary |
18 |
Major Required Features |
19 |
Environment/Platforms |
20 |
Documentation |
21 |
Support Maintenance |
22 |
Glossary |
23 |
|
24 |
|
25 |
Intended Audience for this document |
26 |
=================================== |
27 |
|
28 |
This document provides a general outline of the |
29 |
Calendula project. It is aimed primarily at developers, |
30 |
but I hope the concepts are explained in general enough |
31 |
terms so that fundraisers may read it, follow my thoughts, |
32 |
see the error of my ways and provide valuable feedback. |
33 |
|
34 |
|
35 |
Problem Summary |
36 |
=============== |
37 |
|
38 |
* In 2002 (and in a shaky economy) U.S. citizens |
39 |
donated almost $50 billion in individual donations to |
40 |
nonprofits. Nearly all of this money was tracked in |
41 |
closed source, proprietary software by the nonprofits |
42 |
which received the respective gifts. Some of the most |
43 |
popular proprietary systems are Raiser's Edge, Donor2, |
44 |
Paradigm, and GiftMaker Pro. |
45 |
|
46 |
* A fundraising database is essential to nonprofit organizations |
47 |
(NPOs) that rely on donations. Nonprofit development directors use |
48 |
databases to solicit donations and track their supporters. |
49 |
|
50 |
* High quality, proprietary fundraising systems generally costs |
51 |
$5000 to $20,000. This significantly adds to a nonprofit's |
52 |
administrative costs and reduces the amount of money going toward |
53 |
its goals. |
54 |
|
55 |
* Smaller and mid-sized nonprofits are blocked by a financial |
56 |
barrier to the technological enhancements that are enjoyed |
57 |
by larger NPOs that can afford the top proprietary systems. |
58 |
|
59 |
* Proprietary databases are not based on any standard in terms |
60 |
of their operations and user interfaces. A typical development |
61 |
director will only stay in his or her job for 3 years before |
62 |
moving on to a different organization. This means they will |
63 |
have to be retrained to use the database system at the new |
64 |
organization or they will attempt to either buy or develop |
65 |
a crude system on their own to get their job done. This adjustment |
66 |
period costs the nonprofit money. If there were an open fundraising |
67 |
database standard, development directors could hop from job to |
68 |
job without the need for more training in the system. |
69 |
|
70 |
* Proprietary databases carry strict licenses which prohibit |
71 |
nonprofits from sharing the application with their peers. Client |
72 |
applications can not be copied around the organizations as needed without |
73 |
payment to the proprietor of the database. |
74 |
|
75 |
Problem Objective |
76 |
================= |
77 |
|
78 |
The goal of the Calendula project is to create a |
79 |
Free Software fundraising system that NPOs, schools, |
80 |
religious institutions can use instead of proprietary |
81 |
ones. |
82 |
|
83 |
* A Free Software option would remove the financial barrier |
84 |
to enhanced technological features that mid-sized |
85 |
to smaller NPOs need in their fundraising efforts. |
86 |
|
87 |
* A Free Software option would also encourage NPOs to |
88 |
share their own enhancements with other NPOs and |
89 |
build a better system for all. |
90 |
|
91 |
* By using other Free Software tools as the building |
92 |
blocks of this system, developers and implementers have |
93 |
access to a wide variety of databases (MySQL, PostgresSQL, |
94 |
Firebird, SAP-db) and programming tools (C development, Python, |
95 |
wxWindows, wxPython) to develop it all rather quickly. |
96 |
|
97 |
|
98 |
Major Required Features |
99 |
======================= |
100 |
|
101 |
Here are the basic requirements of a fundraising |
102 |
database. It must: |
103 |
|
104 |
* Be easy to use |
105 |
1. Easy to setup server |
106 |
2. Easy to setup client |
107 |
3. Client UI is easy to understand |
108 |
4. Client UI is configurable to user's desires |
109 |
5. Client operations are easy to execute |
110 |
|
111 |
* Maintain a list of donors |
112 |
|
113 |
* Maintain a list of prospects |
114 |
|
115 |
* Track donors by giving level and type |
116 |
1. Example: "Show all donors who have given gifts over $50" |
117 |
2. Example: "Show all who have given $1000+ annually" |
118 |
3. Example: "Show all 'Patron' or 'Steward' type donors" |
119 |
|
120 |
* Track donations received on a periodic basis |
121 |
1. Example: "Show total donations in 2002" |
122 |
2. Example: "Show total donations in since January" |
123 |
|
124 |
* Generate information for mass mailings, emailing, and phone banks |
125 |
1. Example: "Return names and addresses of all donors and prospects" |
126 |
2. Example: "Return names and phone numbers of all prospects" |
127 |
|
128 |
* Track prospects/donors by demographic information |
129 |
1. Example: "Show contact info for all donors and prospects who |
130 |
live in Colorado" |
131 |
|
132 |
* Report on the success of campaigns |
133 |
1. Example: "Show total amount raised for the XYZ campaign" |
134 |
|
135 |
* Track relationships between donors and/or prospects |
136 |
1. Example: "Under the relationships listed for Fred Weasley |
137 |
we see the name for George Weasley and Lee Jordan who have |
138 |
records in the database. |
139 |
|
140 |
* Export data in variety of open formats |
141 |
1. All the database tables or record sets can be exported in CSV, |
142 |
tab-delimited, and XML formats. Or any other standard database format. |
143 |
|
144 |
The exported files must be accessible to word processors that |
145 |
perform merging of names and addresses into form letters and mailing |
146 |
labels. |
147 |
|
148 |
* Secure varying levels of access to the database information |
149 |
1. Example: "Admin level can access all reports, screens, and |
150 |
enter new donor types" |
151 |
2. Example: "Entry level can enter new prospects/donors/donations |
152 |
but not add donor types. Nor can Entry level authorization create |
153 |
new users in the database." |
154 |
|
155 |
* Check for the presence of duplicate entries the database and send |
156 |
the user some flag or warning. |
157 |
|
158 |
* Process matching gifts |
159 |
1. Example: "The database notes and notifies the user that if Rubeus Hagrid gives |
160 |
a donation, his employer, Hogwarts, will match his donation." |
161 |
|
162 |
* The user must be able to design and preview reports based on the data held |
163 |
in the system according to her needs. |
164 |
|
165 |
* The database must be able to generate periodic pledge reminders for those |
166 |
donors who have volunteered to donate certain amounts over a period of |
167 |
time. |
168 |
1. Example: "Minerva McGonagall pledges to give $100 quarterly to her local |
169 |
foodbank. The database produces the reminder along with her contact info |
170 |
for the mailing. |
171 |
|
172 |
* The database queues up the contact info for all donors who have given a |
173 |
recent donation. Each record contains this contact info and the amount given |
174 |
so that the donors are promptly thanked with a written letter. |
175 |
|
176 |
* The database must produce a special report on the zip codes for all contact info |
177 |
generated for a bulk mailing. The report is a tally by zip codes which determines |
178 |
the discount offered for presorted mail. Nonprofits in the U.S. must make their |
179 |
calculations available to the post office when sending out the mail. |
180 |
|
181 |
|
182 |
Environment/Platforms |
183 |
===================== |
184 |
|
185 |
The project will be built on the client/server model, with the |
186 |
idea that multiple clients can connect to the server. In smaller |
187 |
offices the client and server can reside on the same machine. |
188 |
|
189 |
The Calendula client will need to be able to run |
190 |
on a variety of operating systems and it will need to be |
191 |
run over a secure connection to the server. |
192 |
|
193 |
The Calendula server will run on a GNU/Linux or BSD operating system. |
194 |
|
195 |
|
196 |
Documentation |
197 |
============= |
198 |
|
199 |
The Calendula project needs the following documentation: |
200 |
|
201 |
* Developer's manual offering insight into system design, architecture, |
202 |
API, and programming guidelines. |
203 |
|
204 |
* Administration Manual which outline installation, customization and setup |
205 |
|
206 |
* User's manual which covers all the ins and outs of daily operation. |
207 |
|
208 |
* Supporting website offering a forum for users to ask questions, tutorials, |
209 |
and latest news on the system. |
210 |
|
211 |
|
212 |
Support/Maintenance |
213 |
=================== |
214 |
|
215 |
Support for this project will need to come from a variety of |
216 |
sources. I see the greatest help coming from users helping |
217 |
each other, the open nature of the system will mean that |
218 |
the end users will have as much access to the system operations |
219 |
as the developers. |
220 |
|
221 |
The next level of support will come from developers active |
222 |
in the core system and the extension modules designed for it. |
223 |
|
224 |
The project websites will offer discussion forums, mailing lists, |
225 |
online bug databases. |
226 |
|
227 |
The third party support will be offered by paid consultants. |
228 |
|
229 |
|
230 |
Glossary |
231 |
======== |
232 |
|
233 |
-Campaign |
234 |
|
235 |
A connected series of operations designed to bring |
236 |
about a particular result. For a nonprofit this can be |
237 |
a concentrated effort to raise money for a particular |
238 |
cause or program. |
239 |
|
240 |
-Development Directors/Development Officers |
241 |
|
242 |
The person or persons whose job it is to oversee the |
243 |
fundraising activities of a nonprofit. |
244 |
|
245 |
-Donation |
246 |
|
247 |
A gift to a nonprofit. Donations are usually in the form of money |
248 |
but inkind gifts can be goods or commodities other than money. |
249 |
|
250 |
-Donor |
251 |
|
252 |
A person or organization that gives a donation. |
253 |
|
254 |
-Free Software |
255 |
|
256 |
Software that allows the end user a liberal amount of freedoms |
257 |
See www.fsf.org for details |
258 |
|
259 |
-Gift |
260 |
|
261 |
a donation |
262 |
|
263 |
-Matching Gifts |
264 |
|
265 |
A matched gift is a monetary contribution given by an employer to a nonprofit |
266 |
that equals the amount given to the same nonprofit by an employee. |
267 |
|
268 |
-Nonprofit Organization (NPO) |
269 |
|
270 |
In the U.S. these are organizations that are given tax-exempt status. |
271 |
Charities, churches, educational groups, etc. that are given 501(c)3 |
272 |
and 501(c)4 designations by the U.S. Internal Revenue Service. A nonprofit |
273 |
is based on the common interests of its members. It has no shareholders |
274 |
or profit motive. |
275 |
|
276 |
-Nongovermental Organization (NGO) |
277 |
|
278 |
The United Nations' term for nonprofit organization. |
279 |
|
280 |
-Open Source |
281 |
|
282 |
Software which the end user has access to the source |
283 |
code used to produce it. See www.opensource.org |
284 |
for details |
285 |
|
286 |
-Prospect |
287 |
|
288 |
a potential donor |