| 
 Much of the work of  software engineers (programmers)
is involved with altering programs which some other programmer
has written. This can be made easier if the program is a  good
program....but what do we mean by that? 
The characteristics of a 'good' program.... 
    - the program is organised into small sections ...ie subroutines
 
        (small rocks are
        easier to lift than large rocks) 
    - the program is self-documenting 
      
        - there are plenty of  comments in the
        program identifying what sections of the program do etc..
 
        (you know you have
        picked up the right rock if it has a label on it) 
      
     - meaningful 
        names are used for
        constants and variables, subroutine names etc 
 
      Eg It is better to call a variable
      Tax_Level_Indicator rather than just
      TL even if it does mean more typing when
        coding!
      
 
     - structure is clearly shown - using indentation of
        blocks.
 
 
       
        |