Software design : analysis and a Jackson extension. - Muhammad Shakil Khan (1990)