While software development techniques for identifying specifying, and analyzing functional requirements of software systems are quite mature, existing traditional design methods are not mature enough to capture non-functional requirements such as concurrency, performance, fault tolerance, distribution, and persistence of a software application. Very recently, Aspect-Oriented Programming (AOP) approach has been introduced to provide an implementation-level programming framework for separately developing basic functionalities and non-functionalities of a software application. However, this is just an implementation-level approach. There are still needs for supporting AOP concepts at the design level, and for providing the traceability between the design model and the implementation model. In this paper, we propose an approach called Aspect-Oriented Design (AOD), which supports the concept of AOP at design level, for developing distributed object systems over the Internet. We also demonstrate the usability of the proposed approach with Multi-media Video Conference Systems (MVCS) example.