| | 1 | == Incident Command System == |
| | 2 | Required in the U.S. for disaster response. |
| | 3 | This is a bit of brainstorming on what is needed to fit into ICS for use by Citizen Corps programs (CERT, Neighborhood Watch, etc.) |
| | 4 | Initial version not quite done... |
| | 5 | |
| | 6 | == Components == |
| | 7 | * Location: address, coordinate, postal info |
| | 8 | * Person: individual |
| | 9 | * Role: hierarchy of structure and command |
| | 10 | * Organization: companies, agencies, etc., with inter-relationships |
| | 11 | * Membership: relationship of people to organizations |
| | 12 | * Incident: deployment, training, exercise, debriefing, etc. |
| | 13 | * Credential: training, certification, vaccinations, etc. |
| | 14 | * Prerequisite: what credentials needed before a person can participate in an incident |
| | 15 | * Event: what happened at a particular time and place; logging |
| | 16 | * Equipment: personal and organizational gear |
| | 17 | * Resource: supplier of equipment, skills, etc. |
| | 18 | * Project: workflow for planning and management |
| | 19 | * Email: contact info |
| | 20 | * Phone: contact info |
| | 21 | * Web page: associated with people, organizations, resources |
| | 22 | |
| | 23 | |
| | 24 | == Functions == |
| | 25 | * Add, modify, remove each kind of component |
| | 26 | * Alerting - instant messaging, SMS, printed phone tree generation |
| | 27 | * Export KML data to maps |
| | 28 | * Calendar |
| | 29 | * Dashboards for incidents, teams, resources, projects |
| | 30 | * ICS/NIMS forms |
| | 31 | * Access control |
| | 32 | * MORE TBD |
| | 33 | |
| | 34 | == Table structures == |
| | 35 | |
| | 36 | '''PERSON''' |
| | 37 | ||person_id||PK|| |
| | 38 | ||person_login||CHAR|| |
| | 39 | ||person_password|| || |
| | 40 | ||person_title||CHAR|| |
| | 41 | ||first_name||CHAR|| |
| | 42 | ||person_nickname||CHAR|| |
| | 43 | ||last_name||CHAR|| |
| | 44 | ||photo||BLOB|| |
| | 45 | ||web_page||FK page_id|| |
| | 46 | ||twitter||FK page_id|| |
| | 47 | ||facebook||FK page_id|| |
| | 48 | ||physical_limitations||TEXT|| |
| | 49 | ||comments||TEXT|| |
| | 50 | ||gender||ENUM(m, f)|| |
| | 51 | ||birthdate||DATE|| |
| | 52 | ||status||ENUM(interested, pending, active, related) # related is for people who are in the database but not part of a team|| |
| | 53 | ||emergency_contact||FK person_id|| |
| | 54 | |
| | 55 | '''ROLE''' |
| | 56 | ||role_id||PK|| |
| | 57 | ||ICS_level||ENUM(Command, Section, Division, Individual)|| |
| | 58 | ||ICS_role||ENUM(PIO, Safety, Operations, Planning, Logistics, Intelligence, Finance/Admin)|| |
| | 59 | ||manager||ENUM(camp, shelter, etc.)??|| |
| | 60 | ||subordinate||ENUM(assistant, deputy)|| |
| | 61 | ||team_role||ENUM(division leader, block leader...)|| |
| | 62 | ||citizen_corps_role||ENUM(board member, working group, donor)|| |
| | 63 | |
| | 64 | '''LIAISON''' |
| | 65 | # perhaps part of logging? |
| | 66 | ||liaison_id||PK|| |
| | 67 | ||person_id||FK|| |
| | 68 | ||organization_id1||FK|| |
| | 69 | ||organization_id2||FK|| |
| | 70 | ||when_assigned||DATETIME|| |
| | 71 | ||when_unassigned||DATETIME|| |
| | 72 | |
| | 73 | '''ACCESS_CONTROL''' |
| | 74 | TBD |
| | 75 | |
| | 76 | '''PERSON_ROLE''' |
| | 77 | ||person_id||FK|| |
| | 78 | ||role_id||FK|| |
| | 79 | ||function||ENUM (Command, Operations, Planning, Logistics, Finance/Admin, Intelligence/Investigation)|| |
| | 80 | ||role_assigned||DATETIME|| |
| | 81 | ||reports_to||FK person_id|| |
| | 82 | |
| | 83 | '''EQUIPMENT''' |
| | 84 | ||equipment_id||PK|| |
| | 85 | ||equipment_name||CHAR|| |
| | 86 | ||equipment_type||ENUM (HT, mobile radio, antenna, first aid kit, boots, backpack...)|| |
| | 87 | ||equipment_category||ENUM (communications, PPE, medical, SAR...)|| |
| | 88 | |
| | 89 | '''PERSON_EQUIPMENT''' |
| | 90 | # Equipment that volunteers have or should have. |
| | 91 | ||person_id||PK|| |
| | 92 | ||equipment_id||FK|| |
| | 93 | ||quantity||INT|| |
| | 94 | |
| | 95 | '''ADDRESS''' |
| | 96 | ||address_id||PK|| |
| | 97 | ||address_type||ENUM (home, work, incident, organization, company, division)|| |
| | 98 | ||address||CHAR|| |
| | 99 | ||address2||CHAR|| |
| | 100 | ||city|CHAR||| |
| | 101 | ||county||CHAR|| |
| | 102 | ||state/province||CHAR|| |
| | 103 | ||country||CHAR|| |
| | 104 | ||postal_code||CHAR|| |
| | 105 | ||longitude|||| |
| | 106 | ||latitude|||| |
| | 107 | ||last_updated||(DATE)|| |
| | 108 | |
| | 109 | '''PERSON_ADDRESS''' |
| | 110 | ||person_id||FK|| |
| | 111 | ||address_id||FK|| |
| | 112 | ||organization_id||FK|| |
| | 113 | ||address_type||ENUM(home, work, organization)|| |
| | 114 | |
| | 115 | '''PERSON_ORGANIZATION''' |
| | 116 | ||person_id||FK|| |
| | 117 | ||organization_id||FK|| |
| | 118 | ||active||BOOLEAN |
| | 119 | ||leader||BOOLEAN |
| | 120 | ||title||CHAR|| |
| | 121 | ||membership_started||DATE|| |
| | 122 | ||membership_expires||DATE|| |
| | 123 | |
| | 124 | '''EMAIL''' |
| | 125 | ||email_id||PK|| |
| | 126 | ||email_address||CHAR|| |
| | 127 | ||email_type||ENUM(normal, pager)|| |
| | 128 | ||last_updated||DATE|| |
| | 129 | |
| | 130 | '''PERSON_EMAIL''' |
| | 131 | ||person_id||FK|| |
| | 132 | ||email_id||FK|| |
| | 133 | |
| | 134 | '''PHONE''' |
| | 135 | # Can belong to person, organization, resource |
| | 136 | ||phone_id||PK|| |
| | 137 | ||phone_type||ENUM(home, work, mobile, other)|| |
| | 138 | ||area_code||INT|| |
| | 139 | ||number||INT|| |
| | 140 | ||extension||INT|| |
| | 141 | ||service_provider||CHAR|| |
| | 142 | ||confidential||BOOLEAN|| |
| | 143 | ||primary||BOOLEAN|| |
| | 144 | ||24_7||BOOLEAN|| |
| | 145 | ||last_updated||DATE|| |
| | 146 | ||organization_id||FK|| |
| | 147 | ||resource_id||FK|| |
| | 148 | ||time_of_day||ENUM(any, day, night)|| |
| | 149 | ||comments||TEXT|| |
| | 150 | |
| | 151 | '''PERSON_PHONE''' |
| | 152 | ||person_id||FK|| |
| | 153 | ||phone_id||FK|| |
| | 154 | |
| | 155 | '''CREDENTIAL''' |
| | 156 | # Any kind of certificate, training, other prerequisite associated with a person |
| | 157 | ||credential_id||PK|| |
| | 158 | ||credential_name||CHAR|| |
| | 159 | ||credential_description||TEXT|| |
| | 160 | ||credential_type||ENUM(communications, ICS, EMS, SAR, CERT, vaccination...)|| |
| | 161 | |
| | 162 | '''PERSON_CREDENTIAL''' |
| | 163 | ||person_id||FK|| |
| | 164 | ||credential_id||FK|| |
| | 165 | ||issuing_organization_id||FK|| |
| | 166 | ||completion_date||DATE|| |
| | 167 | ||verified_by||FK person_id|| |
| | 168 | ||verified_date||DATE|| |
| | 169 | ||credential_expires||DATE|| |
| | 170 | ||credential_certificate_id||CHAR|| |
| | 171 | |
| | 172 | '''INCIDENT''' |
| | 173 | ||incident_id||PK|| |
| | 174 | ||incident_name||TEXT|| |
| | 175 | ||planned||BOOLEAN|| |
| | 176 | ||incident_description||TEXT|| |
| | 177 | ||incident_comments||TEXT|| |
| | 178 | ||activation_code||CHAR|| |
| | 179 | ||incident_contact||FK person_id|| |
| | 180 | ||incident_type_id||FK|| |
| | 181 | ||location_id||FK|| |
| | 182 | ||address_id||FK|| |
| | 183 | ||incident_page||FK page_id|| |
| | 184 | ||twitter_hashtag|||| |
| | 185 | |
| | 186 | INCIDENT_TYPES |
| | 187 | ||incident_type_id||PK|| |
| | 188 | ||incident_category||ENUM (preparedness, response)|| |
| | 189 | ||incident_type||ENUM(fire, flood, earthquake, medical, evacuation, terrorism, other emergency, critical incident debrief, operational debrief, class, seminar, workshop, game, training, table-top exercise, functional exercise, full-scale exercise)|| |
| | 190 | ||incident_geography||ENUM(neighborhood, city, county, region, state, national, global)|| |
| | 191 | |
| | 192 | PAGE |
| | 193 | # web pages |
| | 194 | ||page_id||PK|| |
| | 195 | ||URL||CHAR|| |
| | 196 | ||title||CHAR|| |
| | 197 | ||description||TEXT|| |
| | 198 | ||last_reviewed||DATE|| |
| | 199 | |
| | 200 | '''PERSON_INCIDENT''' |
| | 201 | ||person_id||FK|| |
| | 202 | ||incident_id||FK|| |
| | 203 | ||notified||DATETIME|| |
| | 204 | ||committed||DATETIME|| |
| | 205 | ||committed_by||FK person_id || |
| | 206 | ||arrived||DATETIME|| |
| | 207 | ||departed||DATETIME|| |
| | 208 | ||met_requirements||BOOLEAN|| |
| | 209 | ||verified_by||FK person_id|| |
| | 210 | |
| | 211 | '''INCIDENT_EVENT''' |
| | 212 | # Logging - most of this will probably happen on paper, then transcribed |
| | 213 | ||event_id||PK|| |
| | 214 | ||event_type||ENUM(person, resource, objective, assessment, situation report, status_report, strategy, intelligence, incident location, incident command, incident base, joint information center)|| |
| | 215 | ||incident_id||FK|| |
| | 216 | ||person_id||FK|| |
| | 217 | ||person_event||ENUM (notified, en-route, checked_in, assigned, rehab, demobilized, available)|| |
| | 218 | ||role_id||FK|| |
| | 219 | ||address_id||FK|| |
| | 220 | ||resource_id||FK|| |
| | 221 | ||authority||FK person_id|| |
| | 222 | ||incident_timestamp||DATETIME|| |
| | 223 | ||public||BOOLEAN|| |
| | 224 | ||incident_communications_primary||CHAR|| |
| | 225 | ||incident_communications_secondary||CHAR|| |
| | 226 | ||comment||TEXT|| |
| | 227 | |
| | 228 | '''INCIDENT_PREREQUISITE''' |
| | 229 | # qualifications, training, etc. |
| | 230 | ||incident_id||FK|| |
| | 231 | ||prerequisite_id||FK|| |
| | 232 | ||required||ENUM(True, recommended)|| |
| | 233 | |
| | 234 | '''ASSIGNMENT''' |
| | 235 | ||assignment_id||PK|| |
| | 236 | ||incident_id||FK|| |
| | 237 | ||assignment_description||TEXT|| |
| | 238 | |
| | 239 | '''ASSIGNMENT_PERSON''' |
| | 240 | ||assignment_id||FK|| |
| | 241 | ||person_id||FK|| |
| | 242 | ||assigned_when||DATETIME|| |
| | 243 | ||removed_when||DATETIME|| |
| | 244 | |
| | 245 | '''ORGANIZATION''' |
| | 246 | # Companies, government agencies, etc. - association or group of people with like objectives |
| | 247 | ||organization_id||PK|| |
| | 248 | ||organization_name||CHAR|| |
| | 249 | ||organization_phone||FK|| |
| | 250 | ||organization_page||FK|| |
| | 251 | ||organization_type||ENUM(company, foundation, government agency, NGO, responder)|| |
| | 252 | ||organization_purpose||ENUM(medical, supplies, elder care, child care, church, shelter, school, public works, communications, transportation, firefighting, emergency management, mass care/emergency assistance/housing/human services, logistics, public health, SAR, hazardous materials, agriculture/natural resources, energy, law enforcement, long-term recovery)|| |
| | 253 | ||vulnerable_population||ENUM (children, elderly, disabled)|| |
| | 254 | ||donor||BOOLEAN|| |
| | 255 | ||parent_organization||FK organization_id|| |
| | 256 | ||organization_scope||ENUM(neighborhood, city, county, state, national, global)|| |
| | 257 | |
| | 258 | '''ORGANIZATION_SERVICE_AREA''' |
| | 259 | # Geographic description of areas that an organization serves: TBD |
| | 260 | |
| | 261 | '''RESOURCE''' |
| | 262 | ||resource_id||PK|| |
| | 263 | ||resource_name||CHAR|| |
| | 264 | ||resource_page||FK page_id|| |
| | 265 | ||resource_type||ENUM(web site, park, storage, fire station, gas station, atm, water)|| |
| | 266 | ||resource_scope||ENUM(neighborhood, city, county, state, national, global)|| |
| | 267 | ||category||ENUM(training, operations, discussion, communications)|| |
| | 268 | |
| | 269 | '''RESOURCE_ADDRESS''' |
| | 270 | ||resource_id||FK|| |
| | 271 | ||address_id||FK|| |
| | 272 | |
| | 273 | '''RESOURCE_PERSON''' |
| | 274 | ||resource_id||FK|| |
| | 275 | ||person_id||FK|| |
| | 276 | ||primary_contact||BOOLEAN |
| | 277 | |
| | 278 | '''RESOURCE_ORGANIZATION''' |
| | 279 | ||resource_id||FK|| |
| | 280 | ||organization_id||FK|| |
| | 281 | |
| | 282 | '''PROJECT''' |
| | 283 | ||project_id||PK|| |
| | 284 | ||project_name||CHAR|| |
| | 285 | ||project_category||ENUM(planning, supplies, finance, logistics...)|| |
| | 286 | |
| | 287 | '''PROJECT_PERSON''' |
| | 288 | ||project_id||FK|| |
| | 289 | ||project_name||TEXT|| |
| | 290 | |
| | 291 | '''DIVISION''' |
| | 292 | ||division_id||PK|| |
| | 293 | ||division_number|||| |
| | 294 | ||division_name||CHAR|| |
| | 295 | ||division_command_address_id||FK|| |
| | 296 | ||primary_frs_channel|||| |
| | 297 | ||primary_frs_pl|||| |
| | 298 | ||tactical_frs_channel|||| |
| | 299 | ||tactical_frs_pl|||| |