download Project Documentation (.pdf)
Website Database Back End
The Java applet and GWT prototypes both require the presence of a back end database to establish basic functionality. Basic functionality is necessary for the evaluation phase – without at least fundamental functionality, the font end will merely be a static version of what can be done using the web site. Yet, due to the massively dynamic nature of the site content and the mission statement, dynamic interaction rather than a static one is absolutely critical and necessary during the evaluation of prototypes.
The database is by no means the focus of this project. Hence, in this section, only a brief description is given. For more details, please refer to Appendix A, which discusses details about the relation schemes, possesses an entity-relationship diagram and analyzes the normalization and normal form of the database.
For the database server MySQL has been chosen, this is due to the ubiquitous availability and the simplicity of setting up databases using that software. The web site front end will use the database to manage the content of guidelines, objective, performance criteria and performance items. Hence, the database must support a high level of dynamic content management and the ability to concurrently add, delete, or modify content, along with the ability to manage one-to-one, one-to-many, and many-to-many relationships between entities in the database. We hence chose a database design in Boyce-Codd Normal Form, as BCNF reduced the amount of redundancy of the stored data and also allows for quickly modifying the entity relationships with a minimum of computational overhead.