It has become commonplace to solve hardware problems with software. But many times it is not for heroic reasons, it's because hardware is cost-reduced.
In space, however, you can only run the hardware in it's destined environment once. Software is critical to the design process regardless of the HW costs.