Technology Center

June 22, 2015

Educ: Unified Application Infrastructure

The College of Education has somewhere between nine and a dozen (depends how you count them) distinct information system applications.

Building these applications separately had some advantages. It kept the domain logic specific, gave a clear context to design decisions, prevented cross system bugs, and let us keep iterating on and improving our framework. But it has gotten to the point where the technical debt of maintaining those multiple systems is impacting our ability to deliver new functionality.

Going forward our plan is to have a shared infrastructure that we implement new applications in and when the opportunity arises fold the existing applications into the shared framework. We are calling the new unified application infrastructure "Educ" since it will potentially house all College of Education information systems. The new Person and Budget databases are built in Educ and Appreview Plus project includes migrating SOARS to the shared framework.

Within the Educ project we create "contexts" so the single application and database under the hood can still appear as distinct systems on the surface. Switching "contexts" between Person and Budget and Appreview gives you different titles, menus, and search scopes. It looks like you are switching applications, but you are navigating between sections.

Educ uses Laravel which is a robust, popular, and high performance PHP framework. Educ has a shared person repository which allows greater consistency of data and easier sharing of information across contexts.