Professional Documents
Culture Documents
L12 SystemDesignObjectDesign
L12 SystemDesignObjectDesign
ACCESS CONTROL
PROTECTION PROXY
CONFIGURATION
EXCEPTIONS
Exceptions: A hardware failure; Changes in the operating environment; A software fault meaningful error message
Attributes are public -> actually private, but with full getter and setter Visibility of method
Public methods and contract: define contracts for each public operation of each class. Contract: agreement between the class user and the class implementer CONTRACT: Contracts are constraints on a class that enable class users, implementers, and extenders to share the same assumptions about the class (formal def) The postconditions describe what the class implementer guarantees in the event the class user fulfilled her part of the contract. When refining a class, class extenders inherit the contract from the original class implementer.-> Liskov substitution principle
INVARIANT
Invariants constitute a permanent contract that extends and overwrites the operation-specific contracts. Similar to identify the abstract classes: The activity of identifying invariants is similar to that of finding abstract classes during analysis Commonality: Others can be identified by extracting common properties from operation-specific contracts.