Program Properties
Recall that we want our programs to be:
- correct: produce required results for valid inputs
- reliable: behave sensibly for invalid inputs/errors
- efficient: give results quickly (even for large inputs)
- maintainable: code is clear and well-structured
Guaranteeing correctness requires
- formal statement of requirements (pre/post-conditions)
- formal proof that program meets requirements
Testing increases confidence that program may be correct ...
|