I would think the software is relatively simple and that the fix, as it's described, is more smoothing inputs and limiting outputs. Or course the combined software that flies a plane is enormous and incredibly complicated, but I'm talking about a relatively small component of that whole. The program reads sensors and actuates surfaces to correct what it incorrectly registered as an abnormally high angle of attack but was, in reality, a misbehaving sensor. The new program, from what's described, tries to figure out the right value even if the sensor disagrees, and limits the output to avoid large corrections. Along the programs, they also need to write new documentation, operating and maintenance manuals, issue corrections for flight simulators and so on.
It's also not the first plane to crash because of software reading bad data from bad sensors. Or the last.
It's also not the first plane to crash because of software reading bad data from bad sensors. Or the last.