MAUI
MAUI is a large project to reengineer all of our student information systems. Our legacy systems are mainframe based systems developed over the past 30 years and we are implementing new systems based on Java and Oracle (in a much more aggressive time period). The scope of MAUI includes all software and applications to support the following:
- The Office of Admissions - including recruiting, applicant processing, events, communication, etc.
- The Office of Financial Aid - interacting with the Dept of Education, FASFA, awarding, disbursement, etc.
- The Registrar's Office - course management, enrollment, grades, student record management, etc.
- The Cashier's Office - tuition/fees assessment, billing, payment, etc.
- Advising tools - degree evaluation, course transfer database, etc.
- Departmental workflow, services, and reporting.
- Student services that support ISIS and ICON (our student portal and course management systems).
- Authoritative source for all Person related data for the University.
In general, my role is is the project's technical leader/architect/fixer. I wear many hats and do what is needed to move things forward, including leading monthly all-staff meetings to improve communication between teams, managing or mentoring various developers and team leads, leading architecture initiatives, and contributing to functional areas when needed. In more detail:
- Responsible for a number of architecture services and frameworks, including:
- user interface standards and patterns (inspectors, home page, navigation, search)
- communication frameworks (email and print, PDF generation, campaigns, tracking)
- rule engine design and implementation (used in awarding, workflow, requirements processing, etc.)
- various support, management, and metrics tools
- Kickstarted various projects and teams, including:
- led the Admissions team through the implementation of recruiting functionality
- implemented an early events system to buy time for a more complete events implementation
- led the Financial Aid team through project planning, design, and initial ISIR management implementation
- Implemented various "best practices" (and resisted others).
- Recruited and hired various team team members across the project.
- Acted as a sounding board or resource to others leading critical projects.
- Worked to establish strong relationships with customers and colleagues throughout the life of the project.
Challenges and Lessons Learned
There have been plenty.
This project is not complete yet, so it is a little preemptive or presumptuous to give an inventory of issues, mistakes made, or stories of what went right, but I'm sure that down the road I will probably reflect on the following:
- big project vs small projects
- monolithic apps vs multiple smaller applications
- simple vs clever
- identifying goals, and more importantly the ownership of those goals
- building something new, while supporting existing projects
- timelines, distractions, scope
- database normalization
- hibernate
- planned architecture vs evolving architecture
- vended software vs. vended solutions
- migration projects vs blue sky projects
- and so much more...