SIRMM Modernization
A JSP monolith carried into a Spring Boot rewrite, now redesigned around clean architecture and a schema consolidated from 308 tables to 61.
Evolution
Context
Architecture
Angular SPA and Spring Boot backend ship as one WAR on WildFly, over the Oracle schema v2 inherited from v1, with five enterprise integrations.
static/ and deployed to WildFly 16 as one artefact. No CORS and one release to coordinate; the price is that a front-end fix redeploys the backendIncident lifecycle
Which SIR actions a user sees is a lookup on role and status, not a coded transition. Information-breach incidents take the risk-assessment branch.
Delivery
Two-week sprints, twelve developers, and no room in the schedule for broad test coverage. Automation went where regressions actually recur: every reported defect got a test that reproduced it, and the test merged with the fix. The suite grew along the paths that had already proven they could break.
Rollout was graduated. Administrators and directors first, then coordinators and programme officials, then the agency. A toggle in the UI let pilot users move between SIRMM 1.0 and 2.0, so a defect found in the pilot cost a switch back rather than a rollback.