The practical applicability of a computer-aided design system is strongly influenced by both the user interface and the internal model representation. A well designed user interface facilitates the communication with the system by offering an intuitive environment for for specification and representation of model information. An internal model representation, capable of storing geometric, topological and hierarchical dependencies between components in a model, increases the efficiency of the system by facilitating modification and elaboration of the model during the different stages of the design process. The subject of this thesis is the integration of a high level parameterized model representation with direct manipulation interface techniques for the design of three-dimensional objects. A direct manipulation interface enables the user to specify a model by interaction on a graphical representation, as an alternative for an abstract and error-prone apha-numerical dialogue style. A high level model representation is obtained by using a procedural modelling language with general purpose control structures, including arithmetic and logical expressions, repetition, conditionals, functions and procedures, and dedicated data types such as coordinate systems, geometric primitives and geometric constraints. The language interpreter is interconnected with a graphical interface, an incremental constraint solver and a geometrical modeler, using visual programming techniques. The developed techniques are implemented in a modelling system called GeoNode. The system incorporates paradigms of object-oriented design, with respect to both the user interface and to the system implementation. The applicability of the presented techniques is illustrated by examples in application domains such as solid modelling, kinematic analysis, feature modelling and top-down design.