The FRAAS will be upgraded far more frequently than product releases, possibly from one successful build to another. Therefore the upgrade mechanism will have to be compatible with this model.
Re-introduce a "build" field in Version and use it so that upgrade can identify upgrade tasks that need to be performed from one build to the next. Whenever an upgrade task is required the developer MUST increment the build version in the Maven pom file and add the upgrade task for that version.
It is possible to upgrade between successive builds that have the same major, minor and point version, but different build version.