Technical Info

About The Database Design

This platform was developed custom software in order to thoroughly document our database design. This includes plain-English descriptions of every data table and field. It also includes details about the types of data stored as well as all of the logical relationships between tables.

Our database design method is based upon recommendations presented in Database Design for Mere Mortals: A Hands-On Guide to Relational Database Design (3rd Edition), by Michael J. Hernandez.

The data requirements and emerging organizational policies and practices are based upon the guidelines presented in The New World of Police Accountability by Sam Walker and Carol Archbold. We also receive ongoing guidance, from some of the top national experts in the field of police oversight and accountability.

Software Specifications

The full source code is up on GitHub for wider collaboration with additional open-source programmers, although it’s open, we permit access by invitation. So PLEASE REQUEST ONE! – Our software slightly differs from our USA Partner, in a number of ways but we have the same foundation and the same goal.

It’s like a CMS — but for police complaints.

In order to provide complainants with a dynamic user experience, we custom built a branching tree engine. Most nodes in this branching tree represent either a single form field or a page, which wraps multiple fields. After defining the full tree, and mapping each form field to its correct field in the database, the tree is recursively traversed in order to create a sequence of prompts, which reveal the unique DNA of an individual police complaint.

Every node on the tree can check for prerequisites in earlier responses, and some areas of the tree are set to be looped through. (For example, when adding multiple witnesses, officers, or victims.) This approach to form generation means that most data prompts and storage are the default automated behavior of a generalized engine. This also allows for A/B testing of any individual field for quality control.

Need answers? Search our knowledgebase.