Currently the animal has a single lookup to Contact, which is either the previous or current owner.
There have been a couple of requirements to be able to have multiple contacts/accounts assigned to the animal, and to store the owner history of the animal, as currently when the animal is adopted the contact is updated to reflect the new owner, but the old owner is lost.
Potential Solution
Look at using the existing Relationships object with RecordTypes and additional lookups that could store the changes in the ownership of the animal either to a contact or Account
Currently the animal has a single lookup to Contact, which is either the previous or current owner.
There have been a couple of requirements to be able to have multiple contacts/accounts assigned to the animal, and to store the owner history of the animal, as currently when the animal is adopted the contact is updated to reflect the new owner, but the old owner is lost.
Potential Solution Look at using the existing Relationships object with RecordTypes and additional lookups that could store the changes in the ownership of the animal either to a contact or Account