Before software can be reusable it first has to be usable. — Ralph Johnson