guide to programming methodology 16 pages 1007412