bartech.jpg (9859 bytes)

BlueMarbleLine.gif (4441 bytes)
Home | Custom Databases | Web Development | Tech Support | Successes | Us | Links

Year 2000 Bug

This white paper to explains the approach to repairing MVS Cobol systems for Year 2000 Compliance.  It originally was published by Microfocus and is available at their site.

SoftFactory/2000™
A comprehensive approach to repairing MVS COBOL systems for Year 2000 compliance

Introduction
By now, the Year 2000 date change problem is certainly well known within the IT community. In fact, the potential impact of 00 year dates is so widespread, that stories covering this issue have appeared in the popular press and broadcast media - it has been discussed on CNN, and local television stations as well as in magazines and newspapers around the world. The millennium date change has even been the subject of a special fact-finding session in the United States House of Representatives.

But even with all this notoriety, many companies have yet to implement fixes to ensure their software systems continue to operate after 1999, or have failed to find an adequate solution that can address all the criteria for a successful Year 2000 conversion. The dimensions of the challenge are formidable and impacts can range from minor inconveniences to catastrophic failure of mission-critical systems.

The problem resides in the date fields that are tightly woven into the applications that corporations rely on to conduct day-to-day business. These systems are primarily written in COBOL and run on mainframe systems. Most dates programmed into these applications are based on a two-digit year field - for example, "97" instead of "1997." When "00" of the year 2000 is encountered, programs that use these two-digit fields for computations will fail, or produce inaccurate results.

Sizing Up the Problem
The enormity of the Year 2000 problem can be traced to the sheer number of two-digit year date fields used in large business applications. These systems typically contain millions of lines of code, consequently, it is often difficult to pinpoint each instance where date data is used. The Gartner Group estimates that as many as 90% of mainframe applications will fail because of invalid date computations by 1999 if corrective measures are not taken. Today, problems are surfacing in applications that use long-term planning horizons, such as those handling five-year financial forecasts, drivers license expirations, and term insurance policies. Gartner estimates that there are some 200 billion lines of COBOL code in use and that it will cost between $300 and $600 billion to fix the date problem for mainframe systems worldwide.

Sorting Out Solutions
Two basic approaches have evolved to remedy the Year 2000 problem: the data expansion solution, which involves expanding year-date fields to four digits; and the procedural logic solution, which goes directly to the date computations and adds logic that will allow the program to interpret the century date change correctly. The best approach for a particular organization depends on a number of factors including: the variety and availability of hardware platforms, operating systems and programming languages used; the size of the problem, the availability of programmer and analyst resources; an organization's culture, and, of course the time remaining to effect a successful conversion. Micro Focus provides software and services that address both of these approaches, although this paper principally examines the advantages of the procedural logic solution.

Expanding date fields is often thought of as the "pure" approach, because it appears, at first glance, the simpler and more aesthetic solution. With this approach, organizations must change two-digit year fields to four-digit year fields in file layout, database, and program storage definitions, then recreate the files and databases containing two-digit year fields to store four-digit years. The date field expansion approach is the most comprehensive solution that addresses Year 2000 problems, but it is not always a practical one. Using a date conversion approach means organizations must commit to a very large-scale maintenance project - programs must be modified, recompiled and tested; files must be updated; reports often need reformatting; and some screens may need to be redesigned. To make date expansion a viable solution it must be done everywhere (including archived data and applications).

Because of the size and complexity of a date expansion project, this approach can involve a higher degree of risk, is time-consuming, and can be very expensive for many organizations. Finally, for many companies that have yet to begin addressing the Year 2000 issue, it may simply be too late to implement the date expansion approach.

Fixing procedural logic, however, is often more practical for many corporate IT organizations. This approach employs the well-known windowing or sliding windows technique, which ignores the data and focuses on the logic that evaluates that data. Simply stated, this method augments the program logic that evaluates the two-digit date fields to include an algorithm that allows a program to supply the missing two digits of the century. During execution, these new routines assign the appropriate century value and perform requested date comparisons and calculations, returning the correct result to the program.

The advantages of the procedural logic approach are highlighted below:

  • Requires no expansion of databases, copybooks, DBDs, working-storage, etc. The data formats used in internal files, reports, screens, input cards, and imported files can remain unchanged
  • Minimizes risk because it keeps existing century derivation logic in place
  • Can be implemented in small, incremental pieces rather than large production installs, so it is simpler, less time-consuming and less costly to put into production
  • Does not require conversion of archived data
  • Dramatically reduces testing iterations
  • Shortens Year 2000 compliance life cycle for an entire organization.

Crux of the Problem
In order to get your arms around the Year 2000 problem, it's important to understand what causes program logic to incorrectly evaluate a two-digit date field in the first place. Incorrect evaluation occurs when an expression either compares date fields or does an arithmetic calculation involving date fields. These are the only cases in which a program will fail when interacting with a two-digit year field in a Year 2000 scenario.

Thus an effective approach to converting non-compliant applications for the Year 2000 must target only those date fields that will be impacted by the century date change.

Minimizing Risk
From an MIS point of view, meeting the Year 2000 challenge effectively depends on a solutions approach that is: complete, can be rapidly implemented and safe. All three of these factors are necessary for a thorough, low cost and low-risk solution.

A complete Year 2000 solution must be thorough. Two-digit year fields can be found in applications, queries, procedures, screens, databases, and data. Computations affected include those that calculate age, sort by date, compare dates or perform other specialized tasks. A partial fix isn't an option. All non-compliant code must be identified and updated for a solution to be successful.

Completeness also means that a solution must not only find and fix all the date fields requiring change, but also find and fix only the date instances requiring change. This latter point is extremely important because most so-called automated solutions lack the intelligence necessary to distinguish genuine date fields from false date fields, often called false positives. Many solutions also have trouble determining if a date field is live i.e. whether it is the object of computational logic or not. A solution that pinpoints only the date fields that need changing increases both the accuracy and expediency of the effort and, consequently, dramatically reduces the need for manual intervention in systems, minimizing risk and saving time and money.

Any Year 2000 solution must be able to be implemented rapidly. This points to the diminishing time available for resolving the problem, and also to costs associated with prolonged solutions such as major re-engineering of legacy systems.

A date conversion solution must be safe, i.e. protect the integrity of applications and systems impacted by the conversion. The risk factor in converting to Year 2000 compliance must be kept to a minimum. IT organizations can ill afford compounding the difficulty of conversion by creating a host of new problems.

Introducing SoftFactory/2000
As one of the industry's recognized leaders in COBOL technology, with more than 20 years' experience in providing the technology that helps companies to maintain COBOL systems more effectively, Micro Focus has a true understanding of Year 2000 issues and associated challenges. To ensure that organizations can effectively address the issues raised by the Year 2000, Micro Focus has developed a new solution that brings together the company's vast understanding of the COBOL language, its experience in programming tool technology; and specific Year 2000 expertise into the SoftFactory/2000 solution.

SoftFactory/2000 is designed specifically to ensure a complete Year 2000 conversion implementation for a reasonable cost, in a timely manner, in organizations where the primary programming language used is COBOL, and where the primary operating environment is MVS. SoftFactory/2000 engagements include on-site process expertise and training in the use of the highly automated and intelligent SoftFactory/2000 software tools. The overriding premise behind this Year 2000 solution is to address the fundamental IT requirements of speed, accuracy and completeness by finding only dates that will be impacted by the century date change.

As the name implies, the products and services available here will help IT organizations set up a conversion factory, on site, that processes MVS COBOL source code for Year 2000 readiness. SoftFactory/2000 addresses each IT organization's need to validate and correct COBOL application programs so that they perform appropriately for the coming century transition. It does this with a unique, automated process that minimizes human intervention and provides a high degree of completeness.

As with any factory, SoftFactory/2000 takes raw materials (non-compliant applications), applies appropriate human resources (in-house knowledge) and tools (SoftFactory/2000's automated technology) governed by a process (Micro Focus' methodology of how to apply the technology) to produce a highly effective and comprehensive system for finding and fixing impacted date fields.

Building a Year 2000 Factory
With SoftFactory/2000, Micro Focus forms a solutions partnership with IT organizations to build an on-site Year 2000 conversion factory. Micro Focus brings the technology, best-practices methodology and training; while customers supply the applications and in-house systems experts. The result of this partnership provides customers with SoftFactory/2000 technology as well as the knowledge necessary to use it effectively to ensure COBOL applications to function properly through the millennial transition, and beyond.

The SoftFactory/2000 solution is also available to IT service providers looking for a competitive edge in the Year 2000 consulting business. It is flexible enough to adapt to a variety of methodological approaches a service provider may employ, and powerful enough to ensure client satisfaction. Micro Focus provides franchise status for service providers wishing to take advantage of our factory concept with SoftFactory/2000.

Date Identification
The most common methodology for ferreting out date field candidates for Year 2000 conversion is called pattern matching. Pattern matching involves examining date fields based on naming conventions. For example, with pattern matching you would use queries like, "Does the terminology include "DT," "YR," "MO," and other nomenclature that would indicate a date field?" You would then trace the impact of those fields that look like dates throughout an application, attempting to identify which fields need to be changed.

One of pattern matching's inherent disadvantages is the need for extensive manual intervention. This method typically identifies only about 85% of all the dates needing conversion. Furthermore, because the criteria are so broad, pattern matching generates many false positives--suspect date fields that look like valid candidates for conversion, but actually aren't. Examples of false positives resulting from the pattern matching approach can be such date names as DATE-INDEX, UPDATE-TOTAL, DATE-BOOK, and so on. This can mean, for example, that of 3,000 "hits," only 300 may be valid candidates for conversion.

Due to this high margin of error, manual processes must then be employed to drill down and eliminate all of the false positives, as well as to find all the errant date fields missed by the pattern matching software. This is not only slow and tedious, it involves unnecessary risk. Namely, human errors tend to compound the problem whenever manual approaches are employed.

Because pattern matching software identifies only possible candidates for change, it opens up a large number of instances within a program where errors can creep in through manual intervention. And more manual intervention means more testing. Testing is the most expensive aspect of Year 2000 conversion; it drains hardware resources and programmer time and produces delays. The result is a substantial increase in the time and cost of the Year 2000 conversion.

Automated software that relies only on pattern matching methods lacks the intelligence necessary to single out the dates that are true candidates for conversion. For many organizations, solutions that rely on pattern matching may be incomplete and slow to implement.

SoftFactory/2000 offers MVS COBOL shops another option that will dramatically reduce the need for testing while providing other benefits not available to pattern matching methodologies and software.

SmartFind/2000™: The Intelligent Approach
The SoftFactory/2000 approach goes far beyond mere pattern recognition and focuses on an analysis of program logic using a proven parsing technology and a highly sophisticated and comprehensive logic-based database of rules called SmartFind.T This functionality gives SoftFactory/2000 the power to analyze systems with thousands of programs and millions of lines of code. Its ability to scale up and manage large systems is what sets it apart from other Year 2000 analysis tools. It can analyze COBOL from many different environments, including those that incorporate MVS JCL, BMS, CICS, IMS/ESA, DB2, and other sub-systems.

By focusing solely on the logic that evaluates date fields, rather than the date fields themselves, SoftFactory/2000 not only finds the dates - and only the dates -- that will be impacted by the Year 2000 date change, but examines how they are used - for calculations, definitions, screen transfers or data transfers. This sophisticated analysis and screening greatly reduces the number of false positives characteristic of pattern matching.

SoftFactory/2000 Process
SoftFactory/2000 employs a standard process for making applications Year 2000 compliant. Since the key to any successful Year 2000 conversion lies in identifying and locating affected applications, SoftFactory/2000 focuses on three steps:

  1. Creating an inventory of existing systems
  2. Performing an audit of suspect systems for management review
  3. Constructing a detailed blueprint for implementing date-logic modifications in specific code.

In the first pass through an application, SoftFactory/2000 looks at traditional date-type descriptors to see if the size and description indicate they might in fact be dates. This first pass will often produce a number of instances that only appear to be dates or are dates that are of no consequence in the Year 2000 conversion.

SoftFactory/2000 then employs an exhaustive and sophisticated rules-based methodology, called SmartFind to examine the COBOL logic associated with each of the suspect dates. If a piece of logic associated with a suspect date field matches the very specific usage criteria set forth in SoftFactory/2000's rules, that instance is then noted and flagged as a candidate for repair.

The precision of results generated by SoftFactory/2000's rules-based methodology belies the complexity of the process, which involves numerous iterative examinations of the code before arriving at satisfactory results. These examinations rely on the proven technology behind Micro Focus' powerful Revolve/2000 parsing engine underlying the process.

In many cases, SoftFactory/2000 will have eliminated 95% of false positive date fields at this stage, far exceeding the effectiveness of traditional pattern matching software and methodologies.

Let's now take a closer look at the three steps involved in efficient date identification with SoftFactory/2000:

Application Inventory
The first step in any Year 2000 project involves inventorying existing systems with an eye toward prioritizing which ones need the most help. IT managers must identify just what comprises an application and where all the source code, screens, and data are stored. This can be a tedious manual process, even for a systems analyst who knows the applications well. SoftFactory/2000 can automatically inventory application assets and identify all the components of each affected application. This step will help assess which software components belong to which application and create an inventory of all the programs, subroutines, copybooks, screens and files being used.

Assessing Results
When the inventory process is complete, a report is generated that provides refined statistical analysis of all probable dates needing to be fixed. Micro Focus editing tools are then employed to further refine and identify errant dates. At this point, a report is generated to provide management with a comprehensive understanding of the systems-wide extent of the date change problem - where date information is used and whether or not it needs to be fixed.

While the Year 2000 problem is widely acknowledged by senior management at most firms, many companies want the option of performing cost/benefit studies to analyze the extent of the problem before proceeding. The intent of these studies is to determine just which systems are susceptible and how much it will cost to keep them functioning properly in terms of total worker hours, CPU time, and costs that will be required to fix embedded date fields on an application-by-application basis. It feeds inventory and analysis information into an estimating model so managers can determine precisely what resources will be required to update their systems.

Customers can use the assessment and estimation features in SoftFactory/2000 in two ways. They can rely on it in the early stages to get a handle on the cost and resource requirements that will be required to proceed. And they can use it on the back end to actually audit what has already been done and compare it to the costs that have been proposed by a service provider.

Precision Reporting
For generating a complete implementation blueprint, SoftFactory/2000 users can rely on a detailed reporting feature. This provides similar information to the assessment module but at a much finer grain of detail: down to the exact programs, subroutines, and lines of code that are affected. The reports tell managers just what needs to change and how, giving them enough information to hand off to the maintenance staff or service provider to manually make the changes, if desired. Such detailed information about where the code is going to fail and what's required to fix it can be an excellent way to determine where to focus a team's efforts. At this stage SoftFactory/2000 lets developers create reports that are linked to the actual source code that needs to be changed. These reports can be shared between programmers or used to control the file editor for implementing source code modifications during the Fix-It phase.

A Word on Impact Analysis
Unfortunately, finding all the errant date fields is only the beginning of a Year 2000 conversion job. A small change to one part of an application can have a rippling effect throughout other parts of an application, which makes careful impact analysis essential. SoftFactory/2000 can not only scan through COBOL programs to find nearly all the instances of date fields and date-manipulation logic; it can help programmers judge the impact of changes to those fields on other parts of the system.

Impact analysis is used to assess the effect that changing a data field will have on an entire COBOL system. It requires the ability to sweep through an application, tracing a data element as it is moved from one field to another. SoftFactory/2000 excels at this chore, tracing data through COBOL move statements, file I/O based on record offsets, parameters in call statements, redefines, computations and comparisons. It then creates a complete diagram of how the data fields are related and a comprehensive list of synonyms -- different variables that contain the same data.

SoftFactory/2000 also performs cross referencing-- providing programmers with the ability to find where and how any component of the software is used in an application. Programmers can spend days trying to identify every place a file, variable, copybook, paragraph, or screen is used in an application. And these tedious manual searches run the risk of overlooking critical information. That's why SoftFactory/2000 zeros in on the actual lines of code which are of interest to the programmer.

Advantages of a PC-Based Approach
SoftFactory/2000 is designed for use on desktop PCs to give development teams the most productive and cost-effective environment available for tackling massive Year 2000 conversion projects. Rather than competing for the resources of the mainframe, the SoftFactory/2000 factory is meant to be located in a separate environment away from the mainframe, where the programming team can address the Year 2000 problem. This method saves money, it saves mainframe resources, and it allows the team to focus efforts in a more coordinated fashion.

While some Year 2000 tools are designed for use by mainframe programmers, Micro Focus has proven again and again the advantages of having COBOL maintenance activities moved to the desktop. Already, the Year 2000 problem is causing contention for computer resources, as IT organizations are forced to use existing systems to support a whole new set of analysis, testing, and maintenance activities. Relocating these new activities to PCs places minimal impact on precious mainframe resources, and makes it easier to scale the team's efforts as more programmers get involved.

Micro Focus has been helping organizations develop and maintain mainframe-targeted applications on cost-efficient workstations for over 20 years. Many organizations will choose to take advantage of this experience and bring in Micro Focus COBOL Workbench development environments as initial test beds for applications that have undergone Year 2000 conversion. COBOL Workbench supports most mainframe COBOL dialects and combines a fast, efficient COBOL compiler with a wide range of analysis and testing tools. With Workbench, programmers validate their work and help can ensure clean compiles on the mainframe. Through Workbench's special System Date warping feature, developers can also change the MVS System Date at will during program testing and, as a result, can easily compare "before and after" results of modifications made to accommodate the Year 2000. Thorough testing on the workstation will reduce the risk of applications failure when systems are sent back to the host for final system testing.

Services that Complete the Partnership
Many companies don't have the extra time and resources necessary to implement a full-range conversion project and often, those organizations have had little or no experience bringing systems into Year 2000 compliance. That is why quality consulting and training services are a key aspect of a complete Year 2000 date conversion solution. Micro Focus has extensive experience with Year 2000 conversion projects and, through Micro Focus Consulting, companies can leverage that experience to ensure that date conversions are done correctly and on time.

Micro Focus consulting services can be tailored to fit the unique demands of individual IT organizations. Some clients may only require assistance configuring workstations and assessing their exposure; others may need help in the first stages of implementation; and yet others will need assistance through the entire conversion project. This range of service offerings means clients can choose the level of service that best fits their needs.

Conclusion
As the 20th century draws to a close, problems with two-digit date fields are already surfacing. Over the next three years, they will become more and more prevalent, surfacing first in applications that use long-term planning horizons, such as those handling financial forecasts, drivers license expirations, and term insurance policies. Until SoftFactory/2000 came on the scene, the industry lacked a Year 2000 solution that possessed the completeness, speed and reliability afforded by Micro Focus.

The SoftFactory/2000 approach is made possible by a "partnership of experts": Micro Focus' in- depth experience and knowledge of COBOL and your specialized understanding of your own legacy systems. The tools and processes delineated in this paper, from initial inventory to final fix, represent the most advanced technologies available for meeting the Year 2000 challenge. The factory's combination of unique automated software and sophisticated understanding of COBOL means that you can move quickly and confidently to a complete solution, with less risk than other approaches and for substantially less cost.

SoftFactory/2000 also allows IT organizations to make the best use of available resources, whether in-house or those of an external services provider, to rapidly and accurately put the Year 2000 problem behind them and be poised for the other challenges of the 21st Century.

 

For more information about any of our products and services, please contact us at:

MCS & Associates
895 N. Jericho Drive
Casselberry, Florida 32707

E-mail: Manuel_Collazo@hotmail.com
Phone: (407) 699-5036
Fax: (407) 699-5036

This page has been visited times thank you for your visit.


Home | Custom Databases | Web Development | Tech Support | Successes | Contact Us | Copyrights

1