A very simple change that would save use many hours of chasing our tail is simply to put text in the messaging of a rolled back transaction that it was rolled back.
When executing a transaction to update the database, users will often execute it with a rollback to make sure it does what they want before running it with commit. The messaging returned by Sql for a committed transaction and a rolled back transaction is identical. While it seems stupid, often times the user can become distracted and think that the update was commited. Then when they or another user finds that the change is not there, time is wasted looking for what went wrong.
We've also had cases where a script that is tested in QA has a rollback in it that is forgotten about because the script runs without errors.
I am not saying that a rollback should be considered an error, but the messaging should be different from commit so the user is aware that the change was not commited to the database.