Understand
Software development follows an implementation-verification loop in which developers or agents iteratively revise an implementation until an evaluator, such as a test suite, accepts it.
- The evaluator checks the implementation against a set of requirements under a model of the deployment environment.
- Yet even a formal proof that the implementation satisfies the requirements under the model cannot guarantee acceptable behavior after deployment.
- Requirements only approximate stakeholder intent, and the model only approximates the real deployment environment.
Reading the bibliography…