cs205: engineering software?
(none)
20 September 2010

CS205 Notes 4 (30 August 2006)

cs205 Wednesday 30 August 2006
(Notes continued from Class 3)

Assignments Due

Specifying Procedures

What kinds of documentation do we need to allow modular development?






How does a specification constrain a client?






Our procedural specifications will use three clauses:

An implementation of a procedural specification is satisfactory if: if the client satisfies the precondition before the call, the postcondition is always satisfied after the call returns.

requires → (effects & everything that is not listed in modifies is unchanged)

What is the point of having a MODIFIES clause?






What are the advantages and disadvangates of formal (instead of informal) specifications?






If a procedure's specification has no REQUIRES clause, what is the precondition?






If a procedure's specification has no MODIFIES clause, what can it modify?






What does it mean when a procedure has no EFFECTS clause?






Both version numbers "1.5.0" and "5.0" are used to identify this release of the Java 2 Platform Standard Edition. Version "5.0" is the product version, while "1.5.0" is the developer version. The number "5.0" is used to better reflect the level of maturity, stability, scalability and security of the J2SE. The number "5.0" was arrived at by dropping the leading "1." from "1.5.0". Where you might have expected to see 1.5.0, it is now 5.0 (and where it was 1.5, it is now 5).

From Java 1.5.0/5.0 Release Notes