# Information Architecture

## Fieldworker Information Architecture

### Key tables

Customer

Employee

Project

Contact

Location

Task

### Key relationships

Customer - Project

Project - Employee

Project - Contact

Project - Location

Customer - Location

Employee - Employee

### Architecture invariants/constraints

1. A customer can exist on its own, as a primary entity
2. An employee can exist, as a primary entity
3. A location can exist, as a primary entity
4. A project requires a customer, an employee, and at least a location
5. A customer may have more than one project
6. An employee has one assigned manager but can be associated with many other employees in other relationships.
7. A contact can exist, as a primary entity
8. Contact may be associated with a specific customer(s)
9. Contact may be associated with the project(s)
10. Location may be associated with the project(s)
