Difference between revisions of "CNVC IT Committee"

From NVCWiki
Jump to: navigation, search
(CNVC IT Survey)
(CNVC IT Survey)
Line 7: Line 7:
 
=[[Talk:CNVC_IT_Committee|ITC Questions & Discussion]]=
 
=[[Talk:CNVC_IT_Committee|ITC Questions & Discussion]]=
 
Click on the title of this ITC Q&D section to visit the "Talk" page CNVC Information Technology (IT) page on NVCwiki. Clicking on this section's link takes you to the same page as clicking on the "discussion" link at the very top of the page. In that Talk area is where we can discuss and ask questions, while this "article" area you are viewing right now is best suited to building documents and lists.
 
Click on the title of this ITC Q&D section to visit the "Talk" page CNVC Information Technology (IT) page on NVCwiki. Clicking on this section's link takes you to the same page as clicking on the "discussion" link at the very top of the page. In that Talk area is where we can discuss and ask questions, while this "article" area you are viewing right now is best suited to building documents and lists.
 +
 +
 +
----
 +
=CNVC RFP=
 +
<B>RFP For A CNVC Online Partnership Community</b><BR>
 +
January 18, 2006
 +
 +
==Overview==
 +
The Center for Nonviolent Communication (CNVC), an international non-profit 501(c)(3) organization, has a network of people around the world who are interested in Nonviolent Communication.  Nonviolent Communication (NVC) is sometimes referred to as compassionate communication. Its purpose is to strengthen our ability to inspire compassion from others and to respond compassionately to others and to ourselves.
 +
 +
We want to overhaul our website and create an online community to support the CNVC network and facilitate connection and collaboration between people interested in NVC.  CNVC operates in a partnership paradigm.  We want a website that creates community and fosters partnership.  Drupal appears to have much of the functionality we are looking for.  I have a preference for staying as close as possible to the vanilla installation of Drupal for ease in upgrading.  However, we may be asking for functionality that requires custom coding. 
 +
 +
We have a worldwide audience with a wide variety of browsers in use.  Our statistics average around 61% for IE 6, 29 other browser/versions, some really old (Netscape 2, for example) and 15% undetermined.  And we have a significant Mac audience.  I want a design that uses CSS, is not dependent on graphics for navigation (which does not mean it can’t use graphics), degrades gracefully to older browsers, and will work on slow speed modems.
 +
 +
==Estimates & Information about You==
 +
I would like the following estimates/information:<BR>
 +
What it would cost to install Drupal with the following functionality
 +
Please separate the estimate into four parts:
 +
#Phase I, the vanilla installation and the customized development
 +
#Phase II, the vanilla installation and the customized development
 +
#Please lay out a tentative schedule with dates
 +
#What it would cost to add another language beyond the first four we have identified?<BR>
 +
Please note which of the following functions are not handled by Drupal and would require custom development.  Please highlight the functionality that needs custom development and send the document back to me.
 +
 +
I realize that these specifications are quite general, but am hoping you can give us general estimates and an indication of what we need to do to make this work.  Please feel free to ask me any questions that come up as you are working on the bid.
 +
 +
I would also like some information about you and your company.  For example, how many online community developing Drupal sites have you installed?  How long have you worked with Drupal? And what references can you give us?
 +
 +
==Phase I Functionality==
 +
*We have selected 4 languages to start with: English, French, German and Spanish.
 +
*A centralized repository for contact information:  names, addresses (ability to handle international addresses—currently 7 lines of text), multiple telephone numbers, more than one website address, email address, languages spoken, sex, and other information for individuals in relationship with CNVC that would be used across the entire organization anytime contact information is needed for a person.  Only one place to update when it changes.
 +
This means the system needs to feed online contact changes to Quick Books.
 +
 +
In addition, the database needs to support fundraising (see below).
 +
*Contact information currently resides in 4 sources: Quick books, Excel spreadsheets that are used to manage IITs (International Intensive Trainings), an Access database in the office that has the current mailing list on it, and the Access database on the present website which has contact information for certified trainers, local NVC supporters, and other people in the CNVC network.  We would need staged conversion. 
 +
#The office Access database (mailing list?)
 +
#Quick Books contact information can be converted as soon as the new system can update Quick Books with changes.  (I’m open to other ideas for the exchange.)
 +
#The present website Access database can be converted as soon as the new website is up (after March 1 so that the past year trainer reports are all posted) and has replaced all the programmed functionality in the current website (contact information updates, adding/updating/deleting trainings, finding people in the network, posting trainer reports, displaying trainers, local NVC supporters, local groups/websites in regional areas, and the ability to create a text file extract of the contact information for specific permission group(s), like certified trainers, (including name, functions, address, phone numbers, email address)<BR>
 +
Note: we have a handful of trainers without email addresses.
 +
#The IIT spreadsheets can convert as soon as the system can schedule/manage IITs
 +
The trainers want to add a field to their contact information for “other disciplines.”  They want to be able to select people using those disciplines.  For example, find trainers who use Transcendental Meditation.
 +
 +
There is a Drupal module that stops mining efforts or certain kinds of robots (I’m not remembering how it was worded).  I want our information as protected as possible.
 +
 +
*Ability for the office to add a new user (member); we have people who ask to be on our mailing list and do not provide an email address and may not have internet access.
 +
*Ability of users to add themselves with certain general permissions
 +
*Ability to assign different levels of permissions and multiple permissions to the same person
 +
*Users access to their own profile information and update their contact information
 +
*User access to only that information and processes that they have permissions for.  We are visualizing a variety of groups within the website, and each group would have public and private data of its own.  In addition, there will be general public information.
 +
*Enable people with certain permissions (such as trainers) to be associated with multiple countries/regions so that they can be “found” by people in multiple countries/regions
 +
*Viewers can find people throughout the network, by country (or proximity), by function (trainers, local NVC supporters, board members, etc.) and then view contact information for them.
 +
There are two parts to this: <BR>
 +
#we would like the public website (accessible without membership) to display trainers, local NVC supporters and board members by region along with contact information designated as public by the trainer/supporter (only name, city or area, country, phones, website address, the ability to email them); and
 +
#having certain permissions would allow the viewer to see full contact information (for example, trainers and staff could see full contact information on anyone including their email address).
 +
*Donation management, reporting and tracking
 +
*Contact logging
 +
*Tickler system (an action management system: next calls, notes, meetings and action steps, auto notification of tasks, etc.)
 +
*Records of contributions, dates, amounts, how the individual got asked to give, what campaign
 +
*Event management (venue relationships, event contracts, correspondence, event registration)
 +
*Event calendars (the public finding events)
 +
*Reporting (donor frequency, lapse, top donors, contact and thank yous)
 +
need to be locale-centric: e.g., Sweden does not have a donor culture
 +
*Relationship trees
 +
*Manage volunteers
 +
*Merged mailings
 +
*A system for tracking interactions individuals have with the CNVC offices in any location
 +
*Emailing individual members by members and by the general public (non-members)
 +
*Emailing segments of users, possibly defined by their permissions
 +
*Affiliation groups (public and private data to the group)
 +
 +
These groups can be language groups (e.g., Francophiles) or interest groups (e.g., restorative justice, social change); we will want to be able to add new groups as the need arises
 +
*Ability of members to add/edit content within the group based on permissions
 +
*Ability to create documents in a shared environment with
 +
#Moderated documents
 +
#Revision control
 +
#Ability to collaboratively work on shared documents
 +
*Ability to store documents, with access based on permissions
 +
*Ability to access users based on profile characteristics
 +
*Ability to have unique roles/permissions for groups
 +
*Ability to add/edit content: some content will be “official” documents (not to be modified, like board minutes); some will be from people with permission to post. 
 +
 +
*We will also have content in different languages that we will want available to the general public.  Sometimes the same document will be translated into several languages.  How can people using different languages find documents in their language?  Say they don’t speak/read much English.
 +
 +
*Event scheduling and management: addition, editing, viewing, venue relationships, event contracts, correspondence, event registration and payment, across time zones with multiple event types, including scheduling trainings, conferences, NVC negotiation/mediation, and consulting services for Marshall (our founder) and other trainers
 +
*Need to be able to assign multiple trainers to events (as teachers)
 +
*Need to be able to assign multiple contact people to events
 +
*IITs need special functionality: venue management, registration, room assignments (this requires knowing the sex of the registrant), and probably other things I’m not aware of right now.
 +
*Events calendars (different calendars for different types of events, e.g., trainings, donation events, meetings, conferences, etc.)
 +
*Find trainings/events by date, topic, location/proximity, trainer, difficulty level
 +
*Document storage/exchange (including revision control and classification)
 +
*Can store press releases, press kits, and marketing materials.  Also need to manage multi-media documents.  Online newsletters, journals, magazines.  Trainer reports.
 +
*Individual and group listserves (by topic, by person, by permissions) meaning that a trainer or affiliation group can have his/her/their own listserve that people can sign up for, and there will also be group listserves, such as Friends of NVC, and the Trainers’ Newsletter.<br>
 +
Note: Friends of NVC and the Trainers’ Newsletter are currently Yahoo Groups; some thought needs to be given to whether or not we want to bring them in-house considering current email issues and the occasional inability to get a cnvc.org email to the recipient
 +
*Instant messaging (I’m private, visible to friends, or visible to everyone)
 +
*Collaborative work spaces
 +
 +
==Phase II Functionality==
 +
*Web casts: we currently use a service that broadcasts a PowerPoint presentation along with voices from speakers who call in by phone.  The PPT presentation is not viewable by people using Macs unless they download a pdf of the presentation.  We would like a different way to do web casts that works for Macs and PCs.
 +
*Forums/chat rooms: want for varied topics.  For example, empathy rooms (to give/receive empathy), discussion topics; empathy may have a donation associated with it
 +
*Audio/video storage and viewing/listening
 +
*Online meeting/conference rooms and scheduling them
 +
*Content syndication (RSS feeds—in and out)
 +
*Online store fronts that can deliver either services or goods
 +
*Polls and surveys
 +
*Scholarships (need to handle for trainings, system usage, e-learning and web TV usage [which is currently being developed by someone else]); in other words, the ability to assign a scholarship to someone and have it applied to the cost of an event they want to attend, leaving either none or partial cost for the person to pay
 +
*Travel and scheduling
 +
 +
==Phase III Functionality==
 +
*Individual and group calendars
 +
*E-learning: training classes, live or text based
 +
*Video conferencing
 +
*Project management software/tools
 +
*Blogging with comments
 +
*Memberships/Permissions/Access<br>
 +
This is a first take on the different kinds of permissions.  A person can have multiple permissions.  New permissions will be developed along the way as needs arise.
 +
*Guest Members
 +
*General Members
 +
*Trainer Candidates
 +
*CNVC-Certified Trainers
 +
*Local NVC Supporters
 +
*Project Coordinators
 +
*Organizer
 +
*Executive director of the Center
 +
*Director of educational services
 +
*International project coordinator
 +
*IIT administration
 +
*Scheduler
 +
*Webmaster
 +
*Affiliation groups (language, region, themes/collaborative interests—social change, professions/avocations—nursing); there would be a separate permission for each group
 +
*Sociocracy Trainers
 +
*Trainers of Trainers
 +
*CNVC Staff
 +
*CNVC Office Manager
 +
*CNVC Board
 +
*Current Programming on cnvc.org<br>
 +
I’m including this information so you can see where we are right now.  The functionality does not necessarily transfer over to the new system.  For example, maintaining country names was done to allow the native spelling(s) for a country to show next to the English name to make it easier for people in other countries.  If the French language module in Drupal, for example, includes country names in French, then this function is unneeded.
 +
 +
The current Center for Nonviolent Communication website is partially database driven.  Updates to the database are done in a private part of the website called “insidecnvc.”  A data dictionary of the current database begins on the next page.  Functionality that currently exists there includes several areas:
 +
 +
Maintaining contact data for people in the CNVC network, including full contact information that is available to CNVC and staff members and certain people in the network, plus separate contact information (a smaller amount—no mailing address) for people who are listed on the public website (trainers, local NVC supporters, board members).
 +
 +
Everyone who has access to “insidecnvc” has a function within the organization, sometimes several functions.  These functions determine access and also where each person shows up.
 +
 +
CNVC-certified trainers post their trainings; multiple trainers can be assigned to each training, we want multiple contact people to be able to be assigned to a training
 +
 +
CNVC-certified trainers post their trainer reports each year (these are available only in “insidecnvc”
 +
 +
For CNVC and staff members and certain people in the network there is a function to look other people up and see their contact information
 +
*Maintaining the list of countries (affects drop-down lists)
 +
*Maintaining a list of topics for the trainings (affects drop-down lists)
 +
*A report of all people with contact information in “insidecnvc” is produced on demand
 +
*There are other pages available in “insidecnvc,” but they are maintained manually
 +
 +
The pages that are database-generated on the public cnvc.org website:
 +
*To find a training:  http://www.cnvc.org/training_list.aspx
 +
*Click on the “find nvc trainings” button without selecting anything from a drop-down list to see a list of trainings, then click on “more” to see how a training displays
 +
*To find a contact:  http://www.cnvc.org/people.aspx?continent=2&country=41
 +
This link will take you to Austria.  It is a representative country (it has all 3 parts of the page).
 +
*To see all the local groups/websites:  http://www.cnvc.org/network.aspx
 +
*To see the board members:  http://www.cnvc.org/boardlst.aspx
 +
*The top part of the page is hard-coded, the board members are database generated
 +
*People who want to be local NVC supporters start to register themselves on this page:
 +
http://www.cnvc.org/register.aspx
 +
 +
Current “insidecnvc” Data Dictionary
 +
*Field Name
 +
*Data Type
 +
*Description
 +
*Entity Table
 +
 +
 +
ipkEntityID
 +
AutoNumber
 +
Entity key
 +
datEntered
 +
Date/Time
 +
Date the record was added
 +
txtUsername
 +
Text 50
 +
Login ID
 +
txtPassword
 +
Text 50
 +
Password
 +
blnTrainer
 +
Yes/No
 +
Yes or No: certified trainer
 +
blnLocalSupporter
 +
Yes/No
 +
Yes or No: local NVC supporter
 +
blnLocalOnlyAccess
 +
Yes/No
 +
Yes or No: Determines access permissions within the website, not a data-entry field for users.  For Local NVC Supporters/ Groups/Websites primarily, but used at administrators’ discretion.
 +
blnOrganizer
 +
Yes/No
 +
Yes or no: organizer for Center-sponsored trainings
 +
ifkContactType
 +
Text 50
 +
NOTE: don’t understand what this field is for. 
 +
One of 3:  coordinator/contact person/organizer
 +
blnCenterDirector
 +
Yes/No
 +
Yes or no: director of the Center
 +
blnOfficeManager
 +
Yes/No
 +
Yes or no: office manager of the Center
 +
blnIITAdministration
 +
Yes/No
 +
Yes or no: IIT administration
 +
blnEdDirector
 +
Yes/No
 +
Yes or no: director of educational services
 +
blnIntlProjectCoord
 +
Yes/No
 +
Yes or no: international project coordinator
 +
blnCNVCStaff
 +
Yes/No
 +
Yes or no:  CNVC staff
 +
blnScheduler
 +
Yes/No
 +
Yes or no:  scheduler
 +
blnWebmaster
 +
Yes/No
 +
Yes or no:  webmaster
 +
blnLocalGroup
 +
Yes/No
 +
Yes or no:  regional center
 +
blnLocalWebsite
 +
Yes/No
 +
Yes or no:  regional website
 +
blnBoardMember
 +
Yes/No
 +
Yes or no:  board member
 +
rdolstBoardOffice
 +
Text 50
 +
One of 5:  president/vicepresident/secretary/treasurer/ memberatlarge; we have had a person hold multiple offices
 +
blnBoardPresident
 +
Yes/No
 +
Yes or no:  board president
 +
blnBoardVicePresident
 +
Yes/No
 +
Yes or no:  board vice president
 +
blnBoardSecretary
 +
Yes/No
 +
Yes or no:  board secretary
 +
blnBoardTreasurer
 +
Yes/No
 +
Yes or no:  board treasurer
 +
blnBoardMemberAtLarge
 +
Yes/No
 +
Yes or no:  board member at large
 +
blnEdMaterialsCom
 +
Yes/No
 +
Yes or no:  educational materials committee
 +
blnFinanceCom
 +
Yes/No
 +
Yes or no:  finance committee
 +
blnFundraiseCom
 +
Yes/No
 +
Yes or no:  fund raising committee
 +
blnInsideCNVCAdmin
 +
Yes/No
 +
Yes or no:  insidecnvc administrator
 +
blnSuspend
 +
Yes/No
 +
Yes or no:  “yes” means this entity doesn’t show up anywhere (on no pages or lists) except for the administrator/center who would need to be able to remove the suspension or delete the person.
 +
blnProjectLeader
 +
Yes/No
 +
 +
txtProjectName
 +
Text 70
 +
Name(s) of project(s)  Store as is
 +
(there are about six in existence, but we can have new ones).
 +
txtGivenName
 +
Text 25
 +
* for display, only.  Store as is.  People from foreign countries may use accents here.
 +
txtSurname
 +
Text 35
 +
* for display, only.  Store as is.  Ditto.
 +
txtGroupName
 +
Text 70
 +
* for display, only.  Store as is.  Ditto.
 +
memPostalAddress
 +
Memo
 +
Probably up to 7 lines of 50 characters.  Store as is.  Might be more lines in some parts of the world, though I did hear that 7 was the most.
 +
tfkPhoneType1
 +
Text 20
 +
(value from drop-down list)
 +
txtNationalPhone1
 +
Text 18
 +
National phone number 1; number of digits will vary;  may contain dashes, parentheses, periods; store as is.
 +
txtInternationalPhone1
 +
Text 18
 +
International phone number 1; number of digits will vary;  may contain dashes, parentheses, periods; store as is.
 +
tfkPhoneType2
 +
Text 20
 +
(value from drop-down list)
 +
txtNationalPhone2
 +
Text 18
 +
National phone number 2
 +
txtInternationalPhone2
 +
Text 18
 +
International phone number 2
 +
tfkPhoneType3
 +
Text 20
 +
(value from drop-down list)
 +
txtNationalPhone3
 +
Text 18
 +
National phone number 3
 +
txtInternationalPhone3
 +
Text 18
 +
International phone number 3
 +
txtEmail
 +
Text 70
 +
Email address, can be blank.
 +
txtLanguages
 +
Text 100
 +
Languages, can be blank
 +
txtWebsite
 +
Text 70
 +
Website address, will make into working link on output pages.  Can be blank.
 +
blnInsidePermit
 +
Yes/No
 +
NOT USED
 +
blnYahooPermit
 +
Yes/No
 +
Yes or no:  agree to be on “CNVC Trainers’ Network” (the Yahoo! Group)?  (interactive email group)
 +
txtYahooEmail
 +
Text 70
 +
Email address for the Yahoo! Group (interactive email group).
 +
blnWebPermit
 +
Yes/No
 +
Yes or no:  agree to be on the public CNVC website.  If “no” do not collect any web information (below).  If they key in web information and permission is “no,” that should be an error.  Error message: “If you want your contact information to display on the public cnvc.org website, you must click on the “yes” button and give us permission”
 +
txtWebCity
 +
Text 50
 +
Store as is.
 +
ifkWebCountry
 +
Number
 +
(value from a modifiable drop-down list)
 +
ifkWebState
 +
Number
 +
(value from a modifiable drop-down list)
 +
tfkWebPhoneType1
 +
Text 20
 +
(value from drop-down list)
 +
txtWebNationalPhone1
 +
Text 18
 +
Web National phone number 1
 +
txtWebInternationalPhone1
 +
Text 18
 +
Web International phone number 1
 +
tfkWebPhoneType2
 +
Text 20
 +
(value from drop-down list)
 +
txtWebNationalPhone2
 +
Text 18
 +
Web National phone number 2
 +
txtWebInternationalPhone2
 +
Text 18
 +
 +
tfkWebPhoneType3
 +
Text 20
 +
(value from drop-down list)
 +
txtWebNationalPhone3
 +
Text 18
 +
Web National phone number 3
 +
txtWebInternationalPhone3
 +
Text 18
 +
Web International phone number 3
 +
txtWebEmail
 +
Text 70
 +
Web email address, can be blank.  NOTE: I want our email addresses protected better than they are now.
 +
We do have some people without email addresses.
 +
txtWebLanguages
 +
Text 100
 +
Languages the entity speaks, can be blank.  On the public website would like to be able to search for trainers/people by language
 +
txtWebWebsite
 +
Text 70
 +
Website address, will make into working link on output pages.  Can be blank
 +
tfkStatus
 +
Text 50
 +
Drop Down fed from tblStatus
 +
(“active” “suspended” and “pending”)
 +
blnNewsletterEnabled
 +
Yes/No
 +
NOTE: this seems to me to be a duplicate field to BlnYahooPermit
 +
blnPublicInfoEnabled
 +
Yes/No
 +
NOTE: this seems to me to be a duplicate field to BlnWebPermit
 +
 +
 +
 +
Event Table
 +
 +
Training events
 +
ipkEventID
 +
AutoNumber
 +
Event key
 +
tfkStartYear
 +
Text 4
 +
(value from drop-down list)  On the contact information page, the drop-down list only shows the current year, next year and 9999.
 +
tfkStartMonth
 +
Text 2
 +
(value from drop-down list: 1–12 and 99)
 +
tfkStartDay
 +
Text 2
 +
(value from drop-down list: 1–31 and 99)
 +
datStart
 +
Date/Time
 +
NOTE: not currently used.  Created from the 3 fields above, will be used to stop showing trainings on the public trainings pages after their start date.
 +
txtDisplayDate
 +
Text 100
 +
Written out date to display, in their language.
 +
tfkEventLevel
 +
Text 50
 +
(value from modifiable drop-down list) Level of the training
 +
ifkTopicID
 +
Number
 +
(value from modifiable drop-down list) Topic of the training
 +
txtShowStartDate
 +
Text 60
 +
This is the start date of the training for display purposes.  Store as they key it in.  I expect it to be in their own language. Blank for trainings with a type of “practice group.”
 +
_txtShowEndDate
 +
Text 30
 +
This is the end date of the training for display purposes.  Ditto above.
 +
ifkDuration
 +
Number
 +
Integer
 +
tfkDuration
 +
Text 50
 +
From 3 radio buttons: “hours” “days” “weeks”
 +
txtEventCity
 +
Text 100
 +
* City name.  Store as is.
 +
ifkEventCountryID
 +
Number
 +
(value from modifiable drop-down list)  Name of the country of the training.
 +
ifkEventStateID
 +
Number
 +
(value from drop-down list) For the *US only, you will get state names as well as Washington D.C.  For other countries, this will be blank.
 +
txtEventTitle
 +
Text 100
 +
* Title of the training.  Store as is.
 +
txtPreparation
 +
Text 200
 +
Also known as a “prerequisite.”  Store as is.
 +
memDescription
 +
Memo
 +
The class description.  This field is limited to 1000 characters, could make it 10,000.
 +
txtTrainingWebsite
 +
Text 140
 +
Training website address, will make into working link on output pages.  Can be blank.
 +
tfkExpYear
 +
Text 4
 +
(value from drop-down list)  On the contact information page, the drop-down list only shows the current year and next year.
 +
tfkExpMonth
 +
Text 2
 +
(value from drop-down list: 1–12)
 +
tfkExpDay
 +
Text 2
 +
(value from drop-down list: 1–31)
 +
datExp
 +
Date/Time
 +
NOTE: this field is unnecessary. We are not going to show past trainings.  Created from the 3 fields above, this is the date the training will stop showing up on the public trainings pages.  So someone can show all his or her trainings for the past year.
 +
ifkEntityID_Contact
 +
Number
 +
(value from the entity record of the contact person/group)  Want to change this to allow multiple contact people the same way we have multiple trainers.
 +
txtLanguages
 +
Text 200
 +
Currently specify the languages the training will be in to view.  Would like to be able to search for trainings by language.
 +
 +
 +
 +
Countries Table
 +
 +
Modifiable drop-down list
 +
starting position: “select a country”
 +
ipkCountryID
 +
AutoNumber
 +
Country key
 +
txtCountry
 +
Text 45
 +
Country name.  This field needs to be 70 characters
 +
nbrSortOrder
 +
Number
 +
This is a sequential number applied to the countries when they are in alphabetical order.  It is used to put them in alphabetical order in the drop-down list.
 +
txtCountryCode
 +
Text 50
 +
This is the 2-character internet country code—want it lower case, always.
 +
 +
 +
 +
Level Table
 +
 +
Modifiable drop-down list
 +
starting position:“select one”
 +
tpkEventLevel
 +
Text 50
 +
 +
txtLevelAbbr
 +
Text 50
 +
 +
nbrSort
 +
Number
 +
 +
 +
 +
 +
Phone Type Table
 +
 +
Drop-down list starting position: “select one”
 +
Also includes an entry “unused” that causes the other 2 related phone fields to be cleared.
 +
tpkPhoneType
 +
Text 50
 +
 +
nbrSortOrder
 +
Number
 +
 +
 +
 +
 +
State Table
 +
 +
Drop-down list starting position: “select a state”
 +
ipkStateID
 +
AutoNumber
 +
State key
 +
txtState
 +
Text 50
 +
Written out state name, including Washington D.C.
 +
nbrSortOrder
 +
Number
 +
This is a sequential number applied to the states when they are in alphabetical order.  It is used to put them in alphabetical order in the drop-down list.
 +
txtRegion
 +
Text 50
 +
Regional names: divided the USA into 6 regions (NW, NC, NE, SW, SC, and SE, written out)
 +
txtStateCode
 +
Text 50
 +
The 2-character postal state code (e.g., MN)
 +
 +
 +
 +
Status Table
 +
 +
Drop-down list “active” “pending” “suspended”
 +
tpkStatus
 +
Text 50
 +
Status name
 +
nbrSort
 +
Number
 +
Number for sequence of drop-down list
 +
 +
 +
 +
Topic Table
 +
 +
Modifiable drop-down list
 +
starting position:“select one”
 +
ipkTopicID
 +
AutoNumber
 +
 +
txtTopic
 +
Text
 +
 +
 +
 +
 +
Trainer Report Table
 +
 +
This table needs to be cleared out on the first of the year.
 +
ipkTrainerReportID
 +
AutoNumber
 +
 +
ifkEntityID
 +
Number
 +
The trainer’s entity table key
 +
datPosted
 +
Date/Time
 +
Date the report was posted
 +
datExpire
 +
Date/Time
 +
This will always be 1/1 of the next year
 +
memReport
 +
Memo
 +
The trainer report.  These can be very long and are usually created offline in a word processing program.
 +
  
  

Revision as of 06:54, 13 May 2006

Document collaboration "article" area for CNVC Information Technology (IT) Committee.


Draft Mission
To research technical solutions to problems identified by members of the IT committee, staff, contributors to the Board/GCC and members in the NVC network; and to formulate strategies in support of the acquisition, implementation and distribution of these technical solutions to those who require them.

ITC Questions & Discussion

Click on the title of this ITC Q&D section to visit the "Talk" page CNVC Information Technology (IT) page on NVCwiki. Clicking on this section's link takes you to the same page as clicking on the "discussion" link at the very top of the page. In that Talk area is where we can discuss and ask questions, while this "article" area you are viewing right now is best suited to building documents and lists.



CNVC RFP

RFP For A CNVC Online Partnership Community
January 18, 2006

Overview

The Center for Nonviolent Communication (CNVC), an international non-profit 501(c)(3) organization, has a network of people around the world who are interested in Nonviolent Communication. Nonviolent Communication (NVC) is sometimes referred to as compassionate communication. Its purpose is to strengthen our ability to inspire compassion from others and to respond compassionately to others and to ourselves.

We want to overhaul our website and create an online community to support the CNVC network and facilitate connection and collaboration between people interested in NVC. CNVC operates in a partnership paradigm. We want a website that creates community and fosters partnership. Drupal appears to have much of the functionality we are looking for. I have a preference for staying as close as possible to the vanilla installation of Drupal for ease in upgrading. However, we may be asking for functionality that requires custom coding.

We have a worldwide audience with a wide variety of browsers in use. Our statistics average around 61% for IE 6, 29 other browser/versions, some really old (Netscape 2, for example) and 15% undetermined. And we have a significant Mac audience. I want a design that uses CSS, is not dependent on graphics for navigation (which does not mean it can’t use graphics), degrades gracefully to older browsers, and will work on slow speed modems.

Estimates & Information about You

I would like the following estimates/information:
What it would cost to install Drupal with the following functionality Please separate the estimate into four parts:

  1. Phase I, the vanilla installation and the customized development
  2. Phase II, the vanilla installation and the customized development
  3. Please lay out a tentative schedule with dates
  4. What it would cost to add another language beyond the first four we have identified?

Please note which of the following functions are not handled by Drupal and would require custom development. Please highlight the functionality that needs custom development and send the document back to me.

I realize that these specifications are quite general, but am hoping you can give us general estimates and an indication of what we need to do to make this work. Please feel free to ask me any questions that come up as you are working on the bid.

I would also like some information about you and your company. For example, how many online community developing Drupal sites have you installed? How long have you worked with Drupal? And what references can you give us?

Phase I Functionality

  • We have selected 4 languages to start with: English, French, German and Spanish.
  • A centralized repository for contact information: names, addresses (ability to handle international addresses—currently 7 lines of text), multiple telephone numbers, more than one website address, email address, languages spoken, sex, and other information for individuals in relationship with CNVC that would be used across the entire organization anytime contact information is needed for a person. Only one place to update when it changes.

This means the system needs to feed online contact changes to Quick Books.

In addition, the database needs to support fundraising (see below).

  • Contact information currently resides in 4 sources: Quick books, Excel spreadsheets that are used to manage IITs (International Intensive Trainings), an Access database in the office that has the current mailing list on it, and the Access database on the present website which has contact information for certified trainers, local NVC supporters, and other people in the CNVC network. We would need staged conversion.
  1. The office Access database (mailing list?)
  2. Quick Books contact information can be converted as soon as the new system can update Quick Books with changes. (I’m open to other ideas for the exchange.)
  3. The present website Access database can be converted as soon as the new website is up (after March 1 so that the past year trainer reports are all posted) and has replaced all the programmed functionality in the current website (contact information updates, adding/updating/deleting trainings, finding people in the network, posting trainer reports, displaying trainers, local NVC supporters, local groups/websites in regional areas, and the ability to create a text file extract of the contact information for specific permission group(s), like certified trainers, (including name, functions, address, phone numbers, email address)

Note: we have a handful of trainers without email addresses.

  1. The IIT spreadsheets can convert as soon as the system can schedule/manage IITs

The trainers want to add a field to their contact information for “other disciplines.” They want to be able to select people using those disciplines. For example, find trainers who use Transcendental Meditation.

There is a Drupal module that stops mining efforts or certain kinds of robots (I’m not remembering how it was worded). I want our information as protected as possible.

  • Ability for the office to add a new user (member); we have people who ask to be on our mailing list and do not provide an email address and may not have internet access.
  • Ability of users to add themselves with certain general permissions
  • Ability to assign different levels of permissions and multiple permissions to the same person
  • Users access to their own profile information and update their contact information
  • User access to only that information and processes that they have permissions for. We are visualizing a variety of groups within the website, and each group would have public and private data of its own. In addition, there will be general public information.
  • Enable people with certain permissions (such as trainers) to be associated with multiple countries/regions so that they can be “found” by people in multiple countries/regions
  • Viewers can find people throughout the network, by country (or proximity), by function (trainers, local NVC supporters, board members, etc.) and then view contact information for them.

There are two parts to this:

  1. we would like the public website (accessible without membership) to display trainers, local NVC supporters and board members by region along with contact information designated as public by the trainer/supporter (only name, city or area, country, phones, website address, the ability to email them); and
  2. having certain permissions would allow the viewer to see full contact information (for example, trainers and staff could see full contact information on anyone including their email address).
  • Donation management, reporting and tracking
  • Contact logging
  • Tickler system (an action management system: next calls, notes, meetings and action steps, auto notification of tasks, etc.)
  • Records of contributions, dates, amounts, how the individual got asked to give, what campaign
  • Event management (venue relationships, event contracts, correspondence, event registration)
  • Event calendars (the public finding events)
  • Reporting (donor frequency, lapse, top donors, contact and thank yous)

need to be locale-centric: e.g., Sweden does not have a donor culture

  • Relationship trees
  • Manage volunteers
  • Merged mailings
  • A system for tracking interactions individuals have with the CNVC offices in any location
  • Emailing individual members by members and by the general public (non-members)
  • Emailing segments of users, possibly defined by their permissions
  • Affiliation groups (public and private data to the group)

These groups can be language groups (e.g., Francophiles) or interest groups (e.g., restorative justice, social change); we will want to be able to add new groups as the need arises

  • Ability of members to add/edit content within the group based on permissions
  • Ability to create documents in a shared environment with
  1. Moderated documents
  2. Revision control
  3. Ability to collaboratively work on shared documents
  • Ability to store documents, with access based on permissions
  • Ability to access users based on profile characteristics
  • Ability to have unique roles/permissions for groups
  • Ability to add/edit content: some content will be “official” documents (not to be modified, like board minutes); some will be from people with permission to post.
  • We will also have content in different languages that we will want available to the general public. Sometimes the same document will be translated into several languages. How can people using different languages find documents in their language? Say they don’t speak/read much English.
  • Event scheduling and management: addition, editing, viewing, venue relationships, event contracts, correspondence, event registration and payment, across time zones with multiple event types, including scheduling trainings, conferences, NVC negotiation/mediation, and consulting services for Marshall (our founder) and other trainers
  • Need to be able to assign multiple trainers to events (as teachers)
  • Need to be able to assign multiple contact people to events
  • IITs need special functionality: venue management, registration, room assignments (this requires knowing the sex of the registrant), and probably other things I’m not aware of right now.
  • Events calendars (different calendars for different types of events, e.g., trainings, donation events, meetings, conferences, etc.)
  • Find trainings/events by date, topic, location/proximity, trainer, difficulty level
  • Document storage/exchange (including revision control and classification)
  • Can store press releases, press kits, and marketing materials. Also need to manage multi-media documents. Online newsletters, journals, magazines. Trainer reports.
  • Individual and group listserves (by topic, by person, by permissions) meaning that a trainer or affiliation group can have his/her/their own listserve that people can sign up for, and there will also be group listserves, such as Friends of NVC, and the Trainers’ Newsletter.

Note: Friends of NVC and the Trainers’ Newsletter are currently Yahoo Groups; some thought needs to be given to whether or not we want to bring them in-house considering current email issues and the occasional inability to get a cnvc.org email to the recipient

  • Instant messaging (I’m private, visible to friends, or visible to everyone)
  • Collaborative work spaces

Phase II Functionality

  • Web casts: we currently use a service that broadcasts a PowerPoint presentation along with voices from speakers who call in by phone. The PPT presentation is not viewable by people using Macs unless they download a pdf of the presentation. We would like a different way to do web casts that works for Macs and PCs.
  • Forums/chat rooms: want for varied topics. For example, empathy rooms (to give/receive empathy), discussion topics; empathy may have a donation associated with it
  • Audio/video storage and viewing/listening
  • Online meeting/conference rooms and scheduling them
  • Content syndication (RSS feeds—in and out)
  • Online store fronts that can deliver either services or goods
  • Polls and surveys
  • Scholarships (need to handle for trainings, system usage, e-learning and web TV usage [which is currently being developed by someone else]); in other words, the ability to assign a scholarship to someone and have it applied to the cost of an event they want to attend, leaving either none or partial cost for the person to pay
  • Travel and scheduling

Phase III Functionality

  • Individual and group calendars
  • E-learning: training classes, live or text based
  • Video conferencing
  • Project management software/tools
  • Blogging with comments
  • Memberships/Permissions/Access

This is a first take on the different kinds of permissions. A person can have multiple permissions. New permissions will be developed along the way as needs arise.

  • Guest Members
  • General Members
  • Trainer Candidates
  • CNVC-Certified Trainers
  • Local NVC Supporters
  • Project Coordinators
  • Organizer
  • Executive director of the Center
  • Director of educational services
  • International project coordinator
  • IIT administration
  • Scheduler
  • Webmaster
  • Affiliation groups (language, region, themes/collaborative interests—social change, professions/avocations—nursing); there would be a separate permission for each group
  • Sociocracy Trainers
  • Trainers of Trainers
  • CNVC Staff
  • CNVC Office Manager
  • CNVC Board
  • Current Programming on cnvc.org

I’m including this information so you can see where we are right now. The functionality does not necessarily transfer over to the new system. For example, maintaining country names was done to allow the native spelling(s) for a country to show next to the English name to make it easier for people in other countries. If the French language module in Drupal, for example, includes country names in French, then this function is unneeded.

The current Center for Nonviolent Communication website is partially database driven. Updates to the database are done in a private part of the website called “insidecnvc.” A data dictionary of the current database begins on the next page. Functionality that currently exists there includes several areas:

Maintaining contact data for people in the CNVC network, including full contact information that is available to CNVC and staff members and certain people in the network, plus separate contact information (a smaller amount—no mailing address) for people who are listed on the public website (trainers, local NVC supporters, board members).

Everyone who has access to “insidecnvc” has a function within the organization, sometimes several functions. These functions determine access and also where each person shows up.

CNVC-certified trainers post their trainings; multiple trainers can be assigned to each training, we want multiple contact people to be able to be assigned to a training

CNVC-certified trainers post their trainer reports each year (these are available only in “insidecnvc”

For CNVC and staff members and certain people in the network there is a function to look other people up and see their contact information

  • Maintaining the list of countries (affects drop-down lists)
  • Maintaining a list of topics for the trainings (affects drop-down lists)
  • A report of all people with contact information in “insidecnvc” is produced on demand
  • There are other pages available in “insidecnvc,” but they are maintained manually

The pages that are database-generated on the public cnvc.org website:

This link will take you to Austria. It is a representative country (it has all 3 parts of the page).

http://www.cnvc.org/register.aspx

Current “insidecnvc” Data Dictionary

  • Field Name
  • Data Type
  • Description
  • Entity Table


ipkEntityID AutoNumber Entity key datEntered Date/Time Date the record was added txtUsername Text 50 Login ID txtPassword Text 50 Password blnTrainer Yes/No Yes or No: certified trainer blnLocalSupporter Yes/No Yes or No: local NVC supporter blnLocalOnlyAccess Yes/No Yes or No: Determines access permissions within the website, not a data-entry field for users. For Local NVC Supporters/ Groups/Websites primarily, but used at administrators’ discretion. blnOrganizer Yes/No Yes or no: organizer for Center-sponsored trainings ifkContactType Text 50 NOTE: don’t understand what this field is for. One of 3: coordinator/contact person/organizer blnCenterDirector Yes/No Yes or no: director of the Center blnOfficeManager Yes/No Yes or no: office manager of the Center blnIITAdministration Yes/No Yes or no: IIT administration blnEdDirector Yes/No Yes or no: director of educational services blnIntlProjectCoord Yes/No Yes or no: international project coordinator blnCNVCStaff Yes/No Yes or no: CNVC staff blnScheduler Yes/No Yes or no: scheduler blnWebmaster Yes/No Yes or no: webmaster blnLocalGroup Yes/No Yes or no: regional center blnLocalWebsite Yes/No Yes or no: regional website blnBoardMember Yes/No Yes or no: board member rdolstBoardOffice Text 50 One of 5: president/vicepresident/secretary/treasurer/ memberatlarge; we have had a person hold multiple offices blnBoardPresident Yes/No Yes or no: board president blnBoardVicePresident Yes/No Yes or no: board vice president blnBoardSecretary Yes/No Yes or no: board secretary blnBoardTreasurer Yes/No Yes or no: board treasurer blnBoardMemberAtLarge Yes/No Yes or no: board member at large blnEdMaterialsCom Yes/No Yes or no: educational materials committee blnFinanceCom Yes/No Yes or no: finance committee blnFundraiseCom Yes/No Yes or no: fund raising committee blnInsideCNVCAdmin Yes/No Yes or no: insidecnvc administrator blnSuspend Yes/No Yes or no: “yes” means this entity doesn’t show up anywhere (on no pages or lists) except for the administrator/center who would need to be able to remove the suspension or delete the person. blnProjectLeader Yes/No

txtProjectName Text 70 Name(s) of project(s) Store as is (there are about six in existence, but we can have new ones). txtGivenName Text 25

  • for display, only. Store as is. People from foreign countries may use accents here.

txtSurname Text 35

  • for display, only. Store as is. Ditto.

txtGroupName Text 70

  • for display, only. Store as is. Ditto.

memPostalAddress Memo Probably up to 7 lines of 50 characters. Store as is. Might be more lines in some parts of the world, though I did hear that 7 was the most. tfkPhoneType1 Text 20 (value from drop-down list) txtNationalPhone1 Text 18 National phone number 1; number of digits will vary; may contain dashes, parentheses, periods; store as is. txtInternationalPhone1 Text 18 International phone number 1; number of digits will vary; may contain dashes, parentheses, periods; store as is. tfkPhoneType2 Text 20 (value from drop-down list) txtNationalPhone2 Text 18 National phone number 2 txtInternationalPhone2 Text 18 International phone number 2 tfkPhoneType3 Text 20 (value from drop-down list) txtNationalPhone3 Text 18 National phone number 3 txtInternationalPhone3 Text 18 International phone number 3 txtEmail Text 70 Email address, can be blank. txtLanguages Text 100 Languages, can be blank txtWebsite Text 70 Website address, will make into working link on output pages. Can be blank. blnInsidePermit Yes/No NOT USED blnYahooPermit Yes/No Yes or no: agree to be on “CNVC Trainers’ Network” (the Yahoo! Group)? (interactive email group) txtYahooEmail Text 70 Email address for the Yahoo! Group (interactive email group). blnWebPermit Yes/No Yes or no: agree to be on the public CNVC website. If “no” do not collect any web information (below). If they key in web information and permission is “no,” that should be an error. Error message: “If you want your contact information to display on the public cnvc.org website, you must click on the “yes” button and give us permission” txtWebCity Text 50 Store as is. ifkWebCountry Number (value from a modifiable drop-down list) ifkWebState Number (value from a modifiable drop-down list) tfkWebPhoneType1 Text 20 (value from drop-down list) txtWebNationalPhone1 Text 18 Web National phone number 1 txtWebInternationalPhone1 Text 18 Web International phone number 1 tfkWebPhoneType2 Text 20 (value from drop-down list) txtWebNationalPhone2 Text 18 Web National phone number 2 txtWebInternationalPhone2 Text 18

tfkWebPhoneType3 Text 20 (value from drop-down list) txtWebNationalPhone3 Text 18 Web National phone number 3 txtWebInternationalPhone3 Text 18 Web International phone number 3 txtWebEmail Text 70 Web email address, can be blank. NOTE: I want our email addresses protected better than they are now. We do have some people without email addresses. txtWebLanguages Text 100 Languages the entity speaks, can be blank. On the public website would like to be able to search for trainers/people by language txtWebWebsite Text 70 Website address, will make into working link on output pages. Can be blank tfkStatus Text 50 Drop Down fed from tblStatus (“active” “suspended” and “pending”) blnNewsletterEnabled Yes/No NOTE: this seems to me to be a duplicate field to BlnYahooPermit blnPublicInfoEnabled Yes/No NOTE: this seems to me to be a duplicate field to BlnWebPermit


Event Table

Training events ipkEventID AutoNumber Event key tfkStartYear Text 4 (value from drop-down list) On the contact information page, the drop-down list only shows the current year, next year and 9999. tfkStartMonth Text 2 (value from drop-down list: 1–12 and 99) tfkStartDay Text 2 (value from drop-down list: 1–31 and 99) datStart Date/Time NOTE: not currently used. Created from the 3 fields above, will be used to stop showing trainings on the public trainings pages after their start date. txtDisplayDate Text 100 Written out date to display, in their language. tfkEventLevel Text 50 (value from modifiable drop-down list) Level of the training ifkTopicID Number (value from modifiable drop-down list) Topic of the training txtShowStartDate Text 60 This is the start date of the training for display purposes. Store as they key it in. I expect it to be in their own language. Blank for trainings with a type of “practice group.” _txtShowEndDate Text 30 This is the end date of the training for display purposes. Ditto above. ifkDuration Number Integer tfkDuration Text 50 From 3 radio buttons: “hours” “days” “weeks” txtEventCity Text 100

  • City name. Store as is.

ifkEventCountryID Number (value from modifiable drop-down list) Name of the country of the training. ifkEventStateID Number (value from drop-down list) For the *US only, you will get state names as well as Washington D.C. For other countries, this will be blank. txtEventTitle Text 100

  • Title of the training. Store as is.

txtPreparation Text 200 Also known as a “prerequisite.” Store as is. memDescription Memo The class description. This field is limited to 1000 characters, could make it 10,000. txtTrainingWebsite Text 140 Training website address, will make into working link on output pages. Can be blank. tfkExpYear Text 4 (value from drop-down list) On the contact information page, the drop-down list only shows the current year and next year. tfkExpMonth Text 2 (value from drop-down list: 1–12) tfkExpDay Text 2 (value from drop-down list: 1–31) datExp Date/Time NOTE: this field is unnecessary. We are not going to show past trainings. Created from the 3 fields above, this is the date the training will stop showing up on the public trainings pages. So someone can show all his or her trainings for the past year. ifkEntityID_Contact Number (value from the entity record of the contact person/group) Want to change this to allow multiple contact people the same way we have multiple trainers. txtLanguages Text 200 Currently specify the languages the training will be in to view. Would like to be able to search for trainings by language.


Countries Table

Modifiable drop-down list starting position: “select a country” ipkCountryID AutoNumber Country key txtCountry Text 45 Country name. This field needs to be 70 characters nbrSortOrder Number This is a sequential number applied to the countries when they are in alphabetical order. It is used to put them in alphabetical order in the drop-down list. txtCountryCode Text 50 This is the 2-character internet country code—want it lower case, always.


Level Table

Modifiable drop-down list starting position:“select one” tpkEventLevel Text 50

txtLevelAbbr Text 50

nbrSort Number



Phone Type Table

Drop-down list starting position: “select one” Also includes an entry “unused” that causes the other 2 related phone fields to be cleared. tpkPhoneType Text 50

nbrSortOrder Number



State Table

Drop-down list starting position: “select a state” ipkStateID AutoNumber State key txtState Text 50 Written out state name, including Washington D.C. nbrSortOrder Number This is a sequential number applied to the states when they are in alphabetical order. It is used to put them in alphabetical order in the drop-down list. txtRegion Text 50 Regional names: divided the USA into 6 regions (NW, NC, NE, SW, SC, and SE, written out) txtStateCode Text 50 The 2-character postal state code (e.g., MN)


Status Table

Drop-down list “active” “pending” “suspended” tpkStatus Text 50 Status name nbrSort Number Number for sequence of drop-down list


Topic Table

Modifiable drop-down list starting position:“select one” ipkTopicID AutoNumber

txtTopic Text



Trainer Report Table

This table needs to be cleared out on the first of the year. ipkTrainerReportID AutoNumber

ifkEntityID Number The trainer’s entity table key datPosted Date/Time Date the report was posted datExpire Date/Time This will always be 1/1 of the next year memReport Memo The trainer report. These can be very long and are usually created offline in a word processing program.



CNVC IT Survey

  • Staff:
    • How many staff members do you have in your development office, Business office? 15
    • What are the different Departments? IIT, A/R, A/P, Bookkeeping, Workshop admin, Educational Materials, Office Admin, Fundraising, Organizational Operations, Trainer Certification Admin, Web admin, Project Admin, MBR Scheduling
    • What are their functions? (Look-up job descriptions and procedures)
    • What percentage of time does each staff member spend accessing, updating and using data? DS 20%, TK 70%, EL 100%, AT 20%, MG 50%, JS 40%
  • Revenue:
    • What are your current and future goals with regard to:
    • fundraising? $200,000 unrestricted, $50,000 each active project end 2007
    • Tuition? Check 2005 financial analysis
    • Enrollment? EL 20%
  • Capacity:
    • How many gift records and constituents do you have in your fundraising database? 1736 donors, 5227 gift records
    • How many members does your organization have? 100,000+
    • How many funds do you need to track in your chart of accounts? ~50
    • How many students apply to and attend your training each year? IIT-500 in 05
    • How many classes do you schedule each year? Marshall only-51
    • How many alumni do you need to keep tabs on? 20,000+ in office alone
  • Growth:
    • Are you launching a new campaign that will result in numerous records and gifts? Yes, ongoing
    • Would you like to track special events? Fundraising events, trainings, outreach events, speaking engagements, special sessions, Certified Trainer trainings
    • Does your organization plan to use its Website for fundraising? Yes, inlcuding webcasts
    • Does your training program have a lofty goal for increasing enrollment in the coming years? Yes, ?%
    • Is your board asking for more sophisticated financial analysis? not yet
  • Reporting:
    • What type of reports is your office required to generate regularly? Event participant lists, donor lists (various categories), project financial reports, regional mailing list, schedule/calendar, intinerary,
      • (Consider all requests from other staff members, your board of directors, auditors, donors, FASB, the IRS and Revenue)
    • In addition to requested reports, what type of information would help your organization operate more efficiently and/or expand its reach?
      • Trainer certification renewal (automated)
      • email list by location and interest
      • Automation / integration / data cleaning desired: History search, organized correspondence tracking, duplicate person data, person history beyond financial.
      • Fields of interest with personal info
      • Foundation data
  • Integration:
    • Could you benefit from enhanced communication among your departments? YES
    • What kinds of redundancies could be eliminated with an integrated system? Manual history search, no organized correspondence tracking, duplicate person data, person history is not maintained beyond financial.
    • What types of data do you share with other people within your organization? Participants, supporters, organizers, training schedules, projects, donations
    • How do you process the information you collect from your organization’s Web site? Currently no standard procedure in place to retrieve this info from the website.
    • CNVC Office Departments: IIT Office, Accounts Receivable, Accounts Payable, Bookkeeping, Workshop Admin, Educational Materials, Office Admin, Fundraising, Organizational Operations, Trainer Certification Admin, Web admin, Project Admin, Marshall Rosenberg Scheduling.

IT Priorities

Initial Priorities

  • we start with integrating the office data to improve functionality there
  • we include building of the person data through the input of interested people in the network who contact our website
  • whatever we start with has the capacity to build community services/connections like the yahoo groups with registration to personal data files

Fundraising

IT Needs specific to fundraising for CNVC:

  • Database with most or all of the features found in Blackbaud.
  • Reporting mechanism so donors can track their money.
  • Means of tracking who's giving.
  • Communication w/donors via newsletter.
  • Ticklers for donor contact reminders (on screen at morning boot, not via email).
  • Online signup for IITs, including even room assignments.


See also Talk:CNVC_IT_Committee#Donor_contact_info.

Other IT Priorities

  1. Database combining online and CNVC office information.
    1. Variable levels of strong security.
    2. Trainer contact info.
    3. Donor contact info.
    4. Local and Regional NVC group contact info.
  2. Online tools integrating various CNVC and other online resources.
    1. The cnvc.org website.
    2. The NVCwiki website.
    3. The Yahoo Groups and other email lists.
    4. Blogs
      1. Email interface to blogs for those who prefer that medium.
      2. Email digest daily, by discussion volume or weekly.
      3. Auto-trim of "quoted" prior messages in emails.
      4. Archive option for email interface?
      5. Live "push" technologies like RSS.
    5. File sharing capability.
    6. Audio and Video streaming and file download capability; free, restricted and paid.
      1. Photos of IITs and other events.
      2. Handouts and other documents from IITs and other events.
      3. Maps and directions for IITs and other events.
      4. FTP and/or Bitorrent/peer network capability for sharing other files.
  3. Free IT package on CD or DVD data set, for distribution to NVC groups.
    1. Client applications.
      1. Pre-configured Linux installation for low-end computer and net access for low-income use.
      2. Firefox browser and Thuderbird email application for security and compatibility.
      3. OpenOffice for complete MS Office compatible application suite.
    2. Server applications.
      1. CivicSpace or equivalent integrated suite.
      2. Apache server for those wanting to set up and run their own server.
  4. Free computers with pre-installed IT package, for distribution to NVC groups.
    1. Donated computers could be pre-configured by volunteers for shipment to NVC groups.
    2. Using the IT package CD/DVD, local and regional volunteers could do the work.
    3. Locations with access to suitable donated computers could do the work for shipment to groups nearest their location (e.g. North America for shipment to S. America, Europe for Africa).



Database Selection Criteria

The following database qualities are offered for consideration by the IT Committee:

  1. Open source preferred (see description of [Open Source]) because of:
    1. Low cost. Funds invested in the database reduce funds for CNVC training and scholarships.
    2. No extra cost for distribution to NVC individuals and groups. Most commercial software charges more for each user, computer, or site using the package. GCC individuals and groups around the world could benefit from tools used by CNVC, and content generated would more likely be compatible between GCCs and CNVC.
    3. Well documented open document formats ensure the ability to extract data if another system is chosen in the future, few commercial packages use open standards.
    4. Robust multicultural, multinational and multilingual support.
    5. Extremely reliable and robust with rapid bug fixes, updates and security patches.
    6. Additional modules (e.g. Payroll, Donors, online features) at little or no cost.
    7. Skills learned by IT staff and volunteers on one project would be applicable to other projects, rather than needing to learn different commercial packages.
    8. Easy modification of features, functions, reports and screens. Commercial packages often lack the ability to modify some aspects of features, functions, reports and screens.
    9. Easy creation of new features, functions, reports and screens. Commercial packages generally limit the ability to create new features and functions.
    10. Free online support, with fee-based telephone support often available.
    11. Inexpensive and volunteer IT support is sometimes available for open source applications, because many of these applications are developed by altruists and college students actively seeking projects.
  2. Payroll, Contact Management, and online integration capabilities.
  3. Maximum compatibility with CNVC needs in an integrated package.
  4. User friendly.
  5. Secure, to prevent hackers from unauthorized access or damage to the system.
  6. Reliable and fast long-term support.
  7. Simple to maintain data.
  8. Solid long-term prognosis for commercial developer or open source project. In addition to content, many hours of labor typically go into learning and customizing a system and all that could be lost if the developer or open source project were to be shut down. Note that even very strong corporations are sometimes bought and shut down by larger companies who view them as competition, and open source projects sometimes lose the support and interest of their contributors.
  9. Robust email and web interactivity (mailing lists, etc.).
  10. Many levels of security, ranging from top system administrator through project manager and down to anonymous user. This enables a diverse community of people to create and access content with the level of security chosen for each type of user and content.



Information Technology (IT) Needs

The following overall Needs are offered for consideration in planning an update of CNVC computer systems:

  1. Open source preferred (see description of Open Source) because of:
    1. Low cost. Funds invested in the database reduce funds for CNVC training and scholarships.
    2. No extra cost for distribution to NVC individuals and groups. Most commercial software charges more for each user, computer, or site using the package. GCC individuals and groups around the world could benefit from tools used by CNVC, and content generated would more likely be compatible between GCCs and CNVC.
    3. Robust multicultural, multinational and multilingual support.
    4. Extremely reliable and robust with rapid bug fixes, updates and security patches.
    5. Additional modules (e.g. Email Lists similar to Yahoo Groups) at little or no cost.
    6. Skills learned by IT staff and volunteers on one project would be applicable to other projects, rather than needing to learn different commercial packages.
    7. Easy modification of features, functions, reports and screens. Commercial packages generally limit the ability to create new features and functions.
    8. Easy creation of new features, functions, reports and screens.
    9. Round the clock tech support. Free online support, with fee-based telephone support often available.
    10. Inexpensive and volunteer IT support is sometimes available for open source applications, because many of these applications are developed by altruists and college students actively seeking projects.
  2. Contact management tools for fundraising and other community interactions.
  3. Blog for easy creation and moderation of discussion groups and forums, with email publishing option including Digest function for the convenience of users who prefer that medium.
  4. Email lists with automatic trimming of quoted prior messages to a pre-set number of first and last lines.
  5. Wiki or similar for collaborative document generation and editing, with some areas having limited read and/or write access (e.g. Board, Certified Trainers, etc.).
  6. RSS capability.
  7. Online and offline mass mailing tools, with restricted access to prevent spamming our contact lists.
  8. Integration of online and offline content with robust security.
  9. Widely available free and paid technical support.
  10. File sharing with variable access and security levels to enable activities such as publishing IIT photos for participant sharing.
  11. Audio and video storage and streaming.
  12. Policies to invite, seek and utilize IT volunteers from the NVC community.
  13. Cooperation, collaboration and standardization whenever possible on technology efforts and projects within the whole NVC community.
  14. Online participation tools like Surveys and Polls to engage the NVC community in dialog.
  15. Online contact tools to enable people to share their personal information for networking.
  16. Online and offline tools to help in publishing event information.



Products for Consideration

Blackbaud commercial database package for non-profits

Features

  • NetCommunity: A Complete Website Management Solution
  • The Information Edge: Business Intelligence for Nonprofits -

Cost

Support options

Additional advantages

  • Proven favorite of non-profits.
  • Possibly easy to install and set up.
  • Over 150 programmers, 170 support analysts, and 150 trainers and consultants to ensure a smooth transition.
  • With The Raiser’s Edge, you’re not limited to using the software as it comes “out-of-the-box”; customization capabilities that are built in to the software.
  • is specifically designed for professional fund-raising and contact management incorporates over 25 years of user suggestions from more than 13,000 non-profit organizations.

Potential drawbacks

  • Base system does not include online features. NOT TRUE! Blackbaud's NetCommunity
  • Proprietary system might be more vulnerable to hackers, and data might be less portable.
  • Can not be shared with other NVC locations or affiliates without significant additional expense.
  • Additional features would probably be expensive if provided by the publisher and difficult or impossible to add otherwise.

CivicSpace integrated free Open Source software) package for non-profits

Features

Integrated package includes Drupal web software, MySQL database, CiviCRM Contact Resource Management software, blogs, file sharing, website, photo publishing, audio files, FTP and other features.

Cost

Complete package is downloadable at no charge. Development is supported by open source developer community (especially Drupal) and grants.

Support options

  • Free online support
  • Paid consultants
  • Fee-based support

Additional advantages

  • Can be installed and running within a few hours, although configuration and customization can be done over time to provide a wealth of additional features.
  • New features can be added relatively easily due to the underlying computer code being written in Open Source.
  • Many programmers are available who have the skills to modify open source software.
  • Some programmers, consultants and support might be found at no cost or relatively cheaply at technical schools and in the global open source community.
  • Any customization work done can be offered free to other non-profits.
  • All work done on CNVC implementation can be shared at no cost with other NVC affiliates.

Potential drawbacks

  • Concerns about the long-term availability of quality fee-based support from a specific vendor.
  • Not yet at 1.0 release
  • Will there be ongoing support for the system? Who will the users call when there's a problem? Will bugs be fixed, how often? Will new reports get written? How long will these things take?
  • Is a custom software dynamic enough to continually take advantage of the latest technologies and development trends?