A Collaborative Design Framework in a Distributed Virtual Environment