I once worked on a project that made liberal use of assertions to enforce invariants. This was useful during development, as one could easily see whether you broke something when you ran the test application…