- A specification which is complete and unambiguous is necessarily incomprehensible.
- A specification which is comprehensible is necessarily incomplete and ambiguous.
- All such specifications are incorrect in that they fail to match the actual implementation.
FFAS has the following characteristics:
- It is functional, in a sense such as that used in computer science, by which I mean that a specification module
- ...is stateless, which in the computer science sense means it does not use variables.
- ...does not have "side effects", which means that the explicit result is the only effect.
- ...does not use iteration or recursion.
- ...does not imply the order of operations.
- It is flat, meaning that the input of a module is a list of simple elements and the output is a single simple element.
- It is active, meaning that the specification "drives" or "controls" the system in some way.
No comments:
Post a Comment