demo:simple
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
demo:simple [2020/04/23 21:23] – jonathan | demo:simple [2020/04/29 18:18] (current) – jonathan | ||
---|---|---|---|
Line 4: | Line 4: | ||
* [[https:// | * [[https:// | ||
+ | * [[http:// | ||
Below is a Demo of a Capstone Project by two students: Webapp for compiling/ | Below is a Demo of a Capstone Project by two students: Webapp for compiling/ | ||
Line 17: | Line 18: | ||
===== Design by Contract ===== | ===== Design by Contract ===== | ||
- | In Design by Contract (developed by Bertrand Meyer), a software component has a mathematical **specification** that describes **what** the the component must do (free of implementation detail) and an **implementation** (one of possibly many) that describes **how** the specification is implemented. For example, the specification of a a square root function is described by a precondition and a postcondition as shown below. | + | In Design by Contract (developed by Bertrand Meyer), a software component has a mathematical **specification** that describes **what** the the component must do (free of implementation detail) and an **implementation** (one of possibly many) that describes **how** the specification is implemented. |
+ | |||
+ | For example, the specification of a a square root function is described by a precondition | ||
{{: | {{: | ||
+ | |||
+ | There are of course many different implementations that might satisfy this specification. | ||
+ | |||
+ | A **contract** imposes obligations and benefits on the **client** (a component that uses the square root function) and the **supplier** (who must provide a body for the square root function). | ||
{{: | {{: | ||
+ | |||
+ | A precondition failure is the fault of the client of the component. A postcondition failure is the fault of the supplier of the failure. | ||
+ | |||
+ | Runtime assertion checking (in Eiffel) is used to check that the given implementation satisfies the specification. |
demo/simple.1587677033.txt.gz · Last modified: 2020/04/23 21:23 by jonathan