Program design - Juliff, Peter (Prentice-Hall, New Delhi, 2000)