A method for developing a family of complex systems having a common
software architecture platform. The method entails forming a functional
requirements specification (FRS) which includes use cases that describes
interaction of users with said complex systems in terms of abstract
concept and forming a requirements object model which explains the
abstract concepts in terms of a structured vocabulary. The use cases are
developed simultaneously with the requirements object model. The FRS
specifies the interaction of the complex systems with their users, i.e.,
the FRS specifies the activities which are performed in the interaction
of the complex systems with their users, i.e., `what` the complex systems
do. This is preferably done in terms of the use cases which are usually
written in a natural language such as English. The requirements object
model specifies the concepts to which the activities specified in the FRS
relate.