A comprehensive system should include features like: