The architecture incorporates popular Java web application technologies such as Struts, Validator, Java Server Pages (JSP) and custom tag libraries. It uses a simple persistence framework that accesses a database via JDBC and stores SQL templates separately from Java code.
The architecture can be broken into the following logical components:
| Controller | |
| Model | |
| View | |
| Data Access | |
| Utils | |
| Services |
A broad overview of the architecture is depicted in the following diagram: