Computer-aided software design for spacecraft guidance, navigation and control