uAchieve is a Java-based web application that uses various sources of data to display information back to users through a web browser. Freemarker is a template engine used to generate the text output for presenting this data back to users.
The core functionality of the uAchieve Planner application is driven by the use of AJAX, in addition to Spring services and Spring MVC. The Planner uses the Hibernate framework for the persistence layer, allowing support for most SQL databases.
A back-end degree audit system must be running and configured for the Planner that allows it to request and receive audit information. The Planner displays the audit data in a tree view format that allows drag-and-drop to build roadmaps, which are term-by-term subsets of the overall degree audit used to guide students in course planning for timely graduation. Security authentication and authorization is handled by the Dashboard application, which uses Spring Security. The Spring Security framework allows configurable integration into existing authentication.
The uAchieve Planner can run in a standalone servlet container (e.g., Tomcat) or any J2EE-compliant web application server.
The diagram below illustrates how data moves within the architecture of the uAchieve Planner: