Controllability and Observability
These are central concepts from control theory. We will define them as:
- Controllability: the ability to change the behavior of a system
by changing its parameters.
- Observability: the ability to observe the behavior of a system
well enough to control it.
In order to control a system, both controllability and observability
The implications for large software systems are:
- Aspects of software that cannot easily be observed will never
- All large software systems must have observability built in.
- Observability is a requirement, not a luxury. The time spent
building in observability will be well repaid.
- In-process traces can be turned on by setting bits in a bit vector.