1. A method in a data processing system for managing a program, the method comprising: monitoring operation of the program, wherein monitoring the operation of the program comprises reading ahead of the execution to identify behavior constructs and their identifiers, wherein a profile of behavior constructs is created during compiling source code for the program, and wherein the profile of behavior constructs is stored in association with a unique identifier; comparing an observed operation of the program with an expected operation of the program to form a comparison, wherein the expected operation is identified during compiling of the program; determining whether an error has occurred based on the comparison; responsive to an occurrence of the error, obtaining a solution for the error; and implementing the solution when the solution is obtained.