Collaborative engineering design involves coordination among designers. While coordination in most cases entails explicit communication between designers, the real reason for designers to coordinate with each other is not for communication but for resolving engineering dependencies. In the field of collaborative engineering research, various computer models and tools have been developed to facilitate communication among designers aiming to improve their communication efficiency for coordination. We argue that in order to provide effective and purposeful coordination support, one must understand how engineering dependencies evolve and propagate in different phases, of design, from problem definition, conceptual design, to detail design. In our research on collaborative design, we take a dependency-based approach, i.e., to explicitly capture and manipulate dependencies and create design processes and support tools based on explicit understanding of underlying dependencies. The long term goal of our research is to develop a dependency-based coordination framework that consists of a formal model of engineering dependencies and coordination mechanisms, mapping between the dependencies and coordination methods, and guidelines and procedures for dependency-based work process design and management. This paper describes our current status of developing a formal model of engineering dependencies.