Computer-Aided Architectural Design (CAAD) systems have adequately satisfied several needs so far. They have dramatically improved the accuracy and consistency of working drawings, enabled designers to visualize their design ideas in three-dimensions, allowed the analysis of designs through data exchange and integrated databases, and even allowed the designers to evaluate (and in some cases generate) designs based on comparisons to previous cases and/or the formalization of grammars. Yet, there is a consensus that CAAD systems have not yet achieved their full potential. First, most systems employ a single-user approach to solving architectural problems which fails to grapple with the fact that most design work is done through teamwork. Second, current systems still can not support early design stages which involve client briefing, data collection, building program formulation, and schematic design generation. This paper seeks to study remedies to both of the afore-mentioned limitations through focusing on the fundamental dialectic and collaborative nature of what is called designing: a concerned social activity that proceeds by creating architectural elements to address a set of requirements and their re-thinking as a result of architectural conjecture. To investigate this relationship, it is proposed to build a computer-supported collaborative design environment using the tools of conceptual modelling, object-oriented algorithms, and distributed agents. Based on findings regarding the role of artifacts in collaborative design and a literature survey, this paper concludes with an outline of the requirements for the above system.