Using Design Using Patterns in Software — Programming Keynou