Hardware and software systems will inevitably grow in scale and functionality.
Because of this increase in complexity,
the likelihood of subtle errors is much
greater. Moreover, some of these errors
may cause catastrophic loss of money,
time, or even human life. A major goal
of software engineering is to enable developers to construct systems that operate reliably despite this complexity. One
way of achieving this goal is by using
formal methods, which are mathematically based languages, techniques, and
tools for specifying and verifying such
systems. Use of formal methods does
not a priori guarantee correctness.
However, they can greatly increase our
understanding of a system by revealing
inconsistencies, ambiguities, and incompleteness that might otherwise go undetected
Hardware and software systems will inevitably grow in scale and functionality.
Because of this increase in complexity,
the likelihood of subtle errors is much
greater. Moreover, some of these errors
may cause catastrophic loss of money,
time, or even human life. A major goal
of software engineering is to enable developers to construct systems that operate reliably despite this complexity. One
way of achieving this goal is by using
formal methods, which are mathematically based languages, techniques, and
tools for specifying and verifying such
systems. Use of formal methods does
not a priori guarantee correctness.
However, they can greatly increase our
understanding of a system by revealing
inconsistencies, ambiguities, and incompleteness that might otherwise go undetected
การแปล กรุณารอสักครู่..