The system design of complex systems in an inherently difficult task—the nature of complex problems that a system is intended to address typically conspires against complete definition of its salient characteristics. This paper addresses the complexities of the system design problem with a hybrid methodology combining both functional and object-oriented design approaches. The methodology uses UML notation as the means for synthesizing and communicating the system design. The methodology is recursive in nature and has demonstrated adaptability to different scale systems development efforts.