Sometimes done is better than perfect.
Rather than trying to design “the perfect” system, maybe they could give us a barebones system and base evaluation from that?
Barebones:
Everyone flags their preference - tank / dps / healer
The system then prefers to place teams with at least ONE tank and ONE healer.