description of different aspects of program