Integrity can be a tough concept in business software. You want to put in an Address, once, and use it on multiple transactions. Then, when it changes, you want to replace it, once, without changing past transactions. The software does this for you. It helps you be efficient, while it preserves integrity.