As with robotic hardware needs the software can be
just as diverse. A simple program to move an arm and a command to open a
nozzle to spray paint can be part of the software.
But if you are looking for a reasoning or thinking
robot, an intelligent machine, software demands are of a different order
(see also Artificial Intelligence
and Neural Networks).