|
1 | 1 | # Functional Requirements |
2 | 2 |
|
3 | | -## This semester (Fall 2024) |
| 3 | +## Fall 2025 Semester |
| 4 | + |
| 5 | +### Login & Authentication |
| 6 | +- Must take email address, and password |
| 7 | +- If 2fa on must go through 2fa process, entering code |
| 8 | +- Must have functioning forgot password |
| 9 | +- Account creation must have secure password checks: Minimum Characters, numbers and symbols |
| 10 | +- Asks for Full Name, Email, Double checks password |
| 11 | +- Middleware must correctly route based on role (Volunteer/Admin) |
| 12 | +- Volunteers may not access the admin side |
| 13 | + |
| 14 | +### Profile Settings |
| 15 | +- Must save profile picture, have ability to edit |
| 16 | +- Must have ability to edit Name, Contact, Address |
| 17 | +- Must update on the dashboard screen |
| 18 | +- Must have ability to turn on 2fa |
| 19 | +- Must have ability to reset password |
| 20 | + |
| 21 | +### Admin Module |
| 22 | +includes all database management of grant, donations, and volunteer info |
| 23 | +#### Admin Dashboard |
| 24 | +- Interface needs to be aligned & organized to Kids-U's preferance |
| 25 | +- Must show visual graphic (graph, current statistics) |
| 26 | +- Must follow the Kids-U branding with colors and logo |
| 27 | +- Tasks List should be stored specific to admin user |
| 28 | +- Key metrics should be accurate |
| 29 | +- Volunteer hours should be stored in progress bar and computed accurately |
| 30 | + - Super Admin may change the goal accordingly/set new goal |
| 31 | + |
| 32 | +### Databases |
| 33 | +- Filters based on catergories |
| 34 | + - Searchable Filter, Specific Filters for each |
| 35 | +- UI needs to be standard between other database pages |
| 36 | +- Catergories must follow current Kids-U spreadsheets |
| 37 | +- Has a method to add or show more catergories on the single page |
| 38 | + - Such as scrollable view or catergory adding area |
| 39 | + |
| 40 | +#### Donations Database Tab: |
| 41 | +##### Donations List Page |
| 42 | +- Database must show at least these catergories in a nice view such as Donor Type, Donor Name, Amount, Date, Campaign, Method, Type |
| 43 | +##### Donors List Page |
| 44 | +- Database must show at least these catergories in a nice view such as Donor Type, Name, Email, Phone, Total Donated,Last Donation, Status |
| 45 | +##### Add a Donation Page |
| 46 | +This is a manual way to add donations to the donation database. |
| 47 | +- Contains have three modes: Anonymous, New, Existing |
| 48 | +- Anonymous/General contains Type(One-Time, Recurring, Pledge, In-kind (ask for item & value instead of donation)), Donation Amount, Payment Method (Credit card, Check, Bank Transfer, ACH, Cash, Paypal, Venmo, Zelle), Campaign, Fund, Date, Recurrence, Donation source, Matching Donation?, Tax deductible, Acknowledgement Sent? |
| 49 | +- New contains Type(Individual, Corporate, Foundation), Communication Preference, Status, Retention, Notes, Contact Info, Address, General Donation Info |
| 50 | +- Existing contains Donot Email and General Donation Info |
| 51 | +- Simple UI form to fill out |
| 52 | +##### Add a Donor |
| 53 | +This is a manual way to add donors to the database. |
| 54 | +This contains three types: Individual, Corporate, Foundation |
| 55 | +- Individual takes information such as: Communication Preference, Status, Retention, Notes, Individual Details(Name, Contact, Address) |
| 56 | +- Corporate & Foundation takes: Communication Preference, Status, Retention, Notes, Organization Details(Name, Contact, Address) |
| 57 | +##### Import Donations Data |
| 58 | +- Contains a draggable & clickable upload area |
| 59 | +- Shows expected columns: Donor Type, Donor First Name, Donor Last Name, Email Address, Contact Number, Mailing Address, Preferred Contact Method, Company Name (if applicable), Donation Amount, Donation Method, Donation Date, Campaign/Event Name, Donation Frequency, Thank you/Follow Up Sent? |
| 60 | +- May accept other types of columns as well |
| 61 | +- Takes in an excel file |
| 62 | +- Must follow current Kids-U formatting |
| 63 | + |
| 64 | +#### Grants Database Tab: |
| 65 | +##### Grants List |
| 66 | +- Contains columns for Grantor, Representative, Name, Status, Purpose, Start Date, End Date, Award Notification Date, Amount Awarded, Amount Requested, Proposal Due Date, Proposal Submission Date. |
| 67 | +##### Grantor List |
| 68 | +- Contains columns for Name, Type, Address Line 1, Address Line 2, City, State, Zipcode, Communication Preference, Recognition Preference. |
| 69 | +##### Add a Grant |
| 70 | +The manual way to add grant data into the grant list database. |
| 71 | +- Must ask for Grantor, Name, Status, Amount Requested, Amount Awarded, Purpose, Internal Owner, Use Area, Dates, Multi-year grant?, Quarter, Proposal Due date, Application Type, Funding area, Acknowledgement sent, Eligible for Renewal?, Award Notification Date, Project submission due date, Proposal Summary, Funding Restrictions, Matching Requirements, Renewal application Date, Renewal Award Status |
| 72 | +- Contains a way to add a new grantor asking for: Name, Title, Email, Contact, Address |
| 73 | +##### Grant Import |
| 74 | +- contains draggable and clickable upload area |
| 75 | +- Shows expected columns:Assigned, Quarter, Funder, Funding Area, Kids-U Program, Contact Type, LOI Due Date, Grant Due Date, Open-close dates, Funding Restrictions, Written Amount, Amount Awarded, Notes, Resources, Link for grant import |
| 76 | +- May accept other types of columns as well |
| 77 | +- Takes in an excel file |
| 78 | +- Must follow current Kids-U formatting |
| 79 | + |
| 80 | +#### Volunteer Database Tab: |
| 81 | +##### Volunteer Database List Page |
| 82 | +Contains a running list of all volunteer users & registration status |
| 83 | +-Should be able to click into all details of account, displaying all application information |
| 84 | +-Ability to edit any information |
| 85 | +- Catergories such as: Name, email, Regisration status, Action button |
| 86 | +##### View Registration Page |
| 87 | +- Shows all current events |
| 88 | +- Includes Name, Date, Time, Location, Registration amount, Button to access List of all volunteers |
| 89 | +- Has Past event history access |
| 90 | +- Must be able to edit event information here or remove |
| 91 | +##### View Applications Page |
| 92 | +Contains list of all current applications |
| 93 | +- Should be sorted by pending to accepted with options to filter |
| 94 | +- Must display: Name, Preferred Name, Email, Phone, Education, Accepted, Action Button to Change acceptance status |
| 95 | +- Abilities to change pending status |
| 96 | +- Ability to revert status: should ask twice to be sure |
| 97 | +#### Export Page |
| 98 | +Exports all current database information into a spreadsheet. |
| 99 | +- Has ability to be filtered |
| 100 | +- Two types of exports: Grants & Donors |
| 101 | +Grant Filters: |
| 102 | +- Due date, Funding area, Min/Max awarded amount, status, Application type, Grantor Type |
| 103 | +Donors Filters: |
| 104 | +- Date, Donor Type, Status, Communication Preference, Fund Designation, Min/Max Amount, Payment, Campaign, Acknowledgement Sent, Recurring Frequency |
| 105 | + |
| 106 | +#### Events Tab: |
| 107 | +##### Add orientation page |
| 108 | +- Form: Name, Orientation, Date, Time, Capacity, Location |
| 109 | +- Must have ability to create location |
| 110 | +- Must have ability to delete past locations |
| 111 | +##### View Orientations page |
| 112 | +Shows all current orientations |
| 113 | +- Must have ability to see archived orientations |
| 114 | +- Shows Name, Date, time, Location, Capacity (should show how full currently) |
| 115 | +- Must have ability to edit Orientation information |
| 116 | +- must have ability to click into Orientation information |
| 117 | +##### Add event page |
| 118 | +Form: Event Name, date, Time, Description, Location |
| 119 | +- Ability to add a new location |
| 120 | +- Ability to delete locations |
| 121 | + |
| 122 | +#### Mail Page |
| 123 | +This page is designated for emailing individuals, mass emails for: all volunteers, admins |
| 124 | +- Must ask for Recipient Email |
| 125 | +- Contains templates for reminders, thank-you, custom, announcment, fundraising, subject, message. |
| 126 | +- Templates must be able to be edited |
| 127 | +- Mass emails must send to all current volunteers or admins. |
| 128 | +- Templates contain information that must be filled in. |
| 129 | + |
| 130 | +### Volunteer Module |
| 131 | +includes all information on volunteer account side |
| 132 | +#### Dashboard Page |
| 133 | +- Must use Kids-U Colors, Branding, Show logo |
| 134 | +- Shows the social media and is hyperlinked |
| 135 | +- Quick Buttons leading to other pages. |
| 136 | +- Shows all current events they are signed up for |
| 137 | +- Gives contact for any questions |
| 138 | +- Shows event gallery with images |
| 139 | +- Shows their current statistics such as hours and events attended |
| 140 | + |
| 141 | +#### Event Registration Page |
| 142 | +- Shows all current events |
| 143 | +- Shows registered and unregistered status |
| 144 | +- Shows event, date, time, location, description, action |
| 145 | +- Has ability to unregister for events |
| 146 | +- Shows notification for registering for event |
| 147 | + |
| 148 | +#### Check-in/Check out |
| 149 | +- Shows all current events registered for |
| 150 | +- Has past event history |
| 151 | +- Ability to log hours manually |
| 152 | +- Shows Event Name, date, time, location, button |
| 153 | +- There should not be a clock in/ clock out ability, It should be manual |
| 154 | +- Hours should be verified by admins |
| 155 | +#### Application Page |
| 156 | +Application to apply to be a volunteer |
| 157 | +- Must have personal information (Name, Maiden Name, SSN, Address, Email, Phone number), Do you speak Spanish?, Do you have a driver's license?, Are you a U.S. citizen or lawful permanent resident?, Contact, Education, Volunteer Questions, Background verification |
| 158 | +-If submitted should show status, need to edit button, or delete application. |
| 159 | +- When application becomes verified should set volunteer status |
| 160 | +- Must follow Kids-U volunteer application |
| 161 | +- Must ask for signature, certification checkbox, and date |
| 162 | + |
| 163 | +### Super Admin Module |
| 164 | +New role with ultimate authoritiy to be implemented for future |
| 165 | +- Abilities to add other admin, or super admin |
| 166 | +- Abilitiy to invite or create new admin account |
| 167 | +- Abilities to add images to volunteer |
| 168 | +- *contains ALL pages that admin role has |
| 169 | +- Ability to set volunteer hour goal |
| 170 | +- Ability to hard delete any data |
| 171 | + |
| 172 | +## Past semester: (Fall 2024) |
4 | 173 |
|
5 | 174 | ### Volunteer Module |
6 | 175 |
|
|
17 | 186 | - Sign up type (individual, group, group member) |
18 | 187 | - Customizable volunteer data registration pages, includes name, email, address, emergency contact, agreement to media use/background check, Training completion, age |
19 | 188 |
|
20 | | -#### Mail Page |
21 | | - |
22 | | -- Allows for sending mail to multiple volunteers through the website |
23 | | -- Requires (currently non-functional) mail service |
24 | | - |
25 | 189 | #### Event Creation Form |
26 | 190 |
|
27 | 191 | - Allows admins to create volunteer events and display them |
|
60 | 224 | - Needs to be able to send Thank You Letters/Receipts for donations |
61 | 225 | - Needs to be able to send acknowledgements for grants |
62 | 226 |
|
63 | | - |
64 | | - |
65 | | - |
66 | | - |
67 | | -## Past semester (Spring 2024) |
| 227 | +## Past semester: (Spring 2024) |
68 | 228 |
|
69 | 229 | ### Grants Module |
70 | 230 |
|
|
91 | 251 | - Stores information related to volunteers and events |
92 | 252 | - Includes their name, age, address, email, emergency contact, agreement to media use and background check, and status regarding their training |
93 | 253 |
|
94 | | -## Future (the rest of the project) |
95 | | - |
96 | | -Since these are to be implemented in the future, the requirements will be a bit broader (not listed by page but by modules) |
97 | | - |
98 | 254 | ### Database For Volunteers |
99 | 255 |
|
100 | 256 | - Stores information related to volunteers and events |
|
0 commit comments