Go to DCI for Micro Focus COBOL

Code Freeze

When large-scale changes are made to an application, it is recommended that no other changes be made at the same time. This is often called a CODE FREEZE, as the code is frozen, or unable to be changed, until the global changes have been made.

Need for CODE FREEZE

COBOL programs are known for their stability and dependability. When making a global change, it is important to note any functional differences that may have occurred during the mass change process. Examples of a mass change process are: changing dates for Y2K, separating a commonly used file into multiple structures, reorganizing a standard security routine, changing screens from textual to graphical mode, rewriting COBOL file syntax to support SQL, etc. If programmers have been adding/modifying code while the large-scale changes are being made, it will be very difficult to determine the cause of problems found during QA. This can double the debugging phase of the conversion process. Establishing a Code Freeze helps reduce the debugging and testing phase to a more manageable length of time.

Negative Impact of CODE FREEZE

Applications have long lists of enhancements and problems to be fixed. Users want to have problems fixed as quickly as they are found. A Code Freeze means that while the "large scale" enhancement is taking place, no other work can be done to the code. (It is possible to start work on other areas using version control techniques so that multiple changes are made, then integrated at a later point. However, the later integration can be expensive, so that development throughput is made less efficient.) As COBOL applications tend to lag behind new technologies (such as graphical interfaces, or web interactions), a Code Freeze will impose further delays in areas where users are already expressing frustration and anger.

DBMaker and CODE FREEZE

DBMaker does not require a Code Freeze. A Code Freeze is needed when global changes are made to an application. DBMaker makes no changes to the application. The process is similar to loading files from tape or CD; the testing needed is that the data is correct and working. This means that enhancements (like bug fixes, or adjusting screens into a more graphical interface) can take place while data is being migrated to DBMaker.