The programming and execution environments of advanced robotic systems are esamples of complex software environments which deal with a variety of distributed mechanical and computer subsystems. Traditional software design methodologies have been shown t o have drawbacks in designing and implementing such software systems for robotics. A novel dual-hierarchical object-oriented design (DHOOD) methodology is presented, which is well suited to problems of this type. A practical example of the application of this methodology is presented, utilizing CLOS as the implementation vehicle. The methodology developed is shown to facilitate the programming and planning of complex robot tasks, and the provision of generic recovery procedures for exception handling.