Schemacode is a software tool that provides a systematic approach to program design and implementation. The objective of the tool is to increase the readability of programs as well as the reliability of the documentation. This is achieved by using schemes to represent the program constructs. This methodology is called schematic pseudocode (Schemacode). The stepwise refinement approach is automated in such a way that it provides most of the documentation. Source code is automatically generated from the schematic pseudocode. The steps required to build a program are presented. The self-implementation of Schemacode is stressed, and the details of retrofitting an unstructured program are revealed. The salient features of the tool are presented.