Data fusion is the process of combining signals from several sensors into a single world view. A four-level software architecture provides a generalised h e w o r k for designing data fusion systems. Important issues in data fusion are feature extraction, closure criteria, paradigm shifts between levels, error correction and knowledge engineering. Each of these is discussed in the context of a data fusion system for ultrasonic mapping with a mobile robot.