PreviousVerifying a Euro Conversion Metering Lines of CodeNext

Chapter 6: Working with EuroSmart

This chapter explains how EuroSmart can be used to analyze the impact of the euro on an application as the first part of the remediation process.

6.1 Process for Using EuroSmart

The conversion process has three phases: preparation, analysis and fixing. You use EuroSmart for the first two phases: preparation and analysis. Once you deliver an analyzed application from EuroSmart into the fixing phase, you proceed with your normal development tools.

EuroSmart provides the flexibility to organize your process in many ways. This section describes one general process and highlights the tasks and milestones. Having considered the issues involved, you will be in a good position to devise a strategy tailored to your own particular circumstances.

Figure 6-1 shows the general EuroSmart process.

Figure 6-1: EuroSmart Process

If you are working in a group and sharing the work, an administrator is responsible for the preparation phase. Both the administrator and the users are involved in the analysis phase.

If you are working independently, you don't need to create or use a group worksheet and so the process is simpler. However, you will have to do all the preparation and analysis yourself, working directly in your own worksheet.

6.2 Preparation Phase

This phase covers setting up the project database, initialising tool settings and establishing worksheets.

6.2.1 Rough-cut Analysis

As part of the preparation phase, you may decide to undertake a preliminary assessment of your application. This involves setting up, effectively, a full project containing all the sources in the application and running some initial analysis after limiting the scope of the analysis tools. The process is explained more fully in the chapter Analyzing Applications and Preparing for Conversion, but the important thing is not to confuse this with setting up the main project, as described below.

The benefit of preliminary analysis is that it doesn't take so long as a detailed analysis. However, you can get a flavour of how difficult the project might be, establish analysis tool settings and make rough estimates of timescales and modification effort. You can also use this knowledge to devise your own category system, if required. Armed with the insight of the preliminary analysis, you can then proceed.

6.2.2 Preparing for the Analysis

This section details the steps you take before undertaking the detailed analysis.

Note: In the steps below, activities that are necessary only for group working are prefixed by an asterisk (*).

To set up the project, you:

  1. Create a project and load the source files into the database. Any missing files are identified, which helps you to produce a full inventory of files in the application.

    * You then make the project shareable, and put it somewhere accessible to the users.

  2. Check the default settings that you will use for locating monetary points of interest. You can customize them using the Configuration Wizard. For example, if you actually use certain literals that are not in the default settings, you can add them to the list of literals settings.

    * Make the settings accessible to the users.

  3. Create a customized tool so that a complicated process for finding a set of points of interest is simplified and can be used consistently.

    * Make the customized tool accessible to the users.

  4. Find the initial sets of points of interest in the application, using the analysis tools. These are the data items, statements and data files that potentially relate to currencies.

  5. Open the project worksheet.

  6. Set up categories to be assigned to worksheet entries.

  7. Populate the worksheet by adding the initial monetary points of interest to it.

  8. * Allocate the analysis work by assigning owners to the data items in the group worksheet, and copying the owned entries into the corresponding owner's worksheet.

    * You can use any method of splitting up the work. You could divide on the basis of source file or you could allocate, say, all BMS items to one user and all computation statements to another.

    * However, note that the data items in working storage copyfiles are likely to be shared by more than one program, and so, to avoid conflicts, each of these common data items needs one owner.

6.3 Analysis Phase

6.3.1 The Analysis Approach

There are distinct tasks in the analysis required for your application, such as finding all numeric constants that represent currency values. Although this seems to infer that you can complete one task completely before beginning the next, in practice this is not the case. You can probably identify most potential points of interest fairly quickly, but the hard work lies in analysing points of interest that seem useful but turn out not to be, and those that look unlikely but are eventually proved otherwise. See the chapter Finding Points of Interest for more about this.

You should try to be methodical in pursuing particular types of item, such as numeric constants or items used in file handling, until you think you have isolated them all, rather than interrupting a search strategy to find something else. However, after this, when you are studying the code to discover whether an item you already identified is of interest, you might find it difficult to make progress. This might be a good time to switch temporarily to another task, using any insights you gained while working on the first task. Likewise, the first task might be made simpler on returning because of what you learned while working on the second. Furthermore, the investigation process itself might convince you to revisit certain areas of the source for further research, in the light of what you have learnt of the application and its methods of processing.

6.3.2 The Analysis Process

Analysis work is generally assigned by program, but copy and include files mean that programs are not entirely self contained, so you might have to consider who gets these sources to analyze.

The list below details the analysis process.

Note: In the steps below, activities that are necessary only for group working are prefixed by an asterisk (*).

The analysis process itself is iterative:

  1. Validating the points of interest and removing any that don't involve currencies from your worksheet.

  2. Using the analysis tools to find any additional points of interest and adding them to your worksheet.

    * You might discover an effective process that can be shared with other users, or discover literals that are not in the defaults.

  3. Assigning relevant categories to the worksheet additions and adding notes to the worksheet to explain why a point of interest is included.

  4. Scanning any categories allocated to a point of interest when its analysis is complete, to decide how you think the item should be dealt with. If your category system requires it, you decide what final category you should allocate to indicate how it should be modified, or you might just make notes.

  5. Saving your worksheet.

    * Group users need to merge their local worksheets into the group worksheet, and may need to update the tool settings they use if someone discovers an effective investigation process. The administrator resolves any conflicting points of interest, accepting or rejecting the users' changes as thought fit.

    * If, as group administrator, you reject any changes, they are left in the users' worksheets. After merging, you might need to assign ownership of new points of interest, but the process needs to be repeated until you are happy that you have them all.

    * As a group user, you work alone on the points of interest that the administrator has copied into your worksheet. You can view the group worksheet as necessary but cannot change it.

The analysis phase is complete when:

This milestone is the confidence test for determining when to begin fixing the source code. You must judge that the time required to find any further monetary points of interest is greater than time at risk from handling possible exceptions

6.3.3 After the Analysis

This part of the analysis phase considers what must be done when you are satisfied that you have identified all points of interest that need fixing:

  1. Finally, you produce reports on the worksheet, together with an Access database of project data. Together, these give full details of all the fixes and a record of the diligence used in the project. You archive the original inventory of source files together with the final worksheet so that the project can be revisited if any exceptions occur during system testing.

    The administrator is likely to do this for a group working environment.

Warning: Do not edit the original source code until you are satisfied that the analysis phase is as complete as possible. If you do, you will need to restart the project from the beginning and remake the inventory and recreate the worksheet.

6.4 Fixing Phase

Now that the worksheet has a complete set of points of interest, you can proceed to fix, compile and test the application using your preferred development tool. Fixing can be simplified if you have assigned categories to document the type of solution required for each point of interest, and annotated any other helpful comments.

If you are using Mainframe Express, you can export the monetary points of interest from EuroSmart using the EuroSmart Export POI Details wizard. You then import the resulting files into Mainframe Express, and the lines containing the points of interest are highlighted.

6.5 Policy Decisions for Group Working in EuroSmart

EuroSmart enables you to work within a group. It enables you to track and control the group's work, and so provides you with an audit trail of how you reached euro compliance. Group working also enables you to share common source code, information and techniques; and this can help reduce duplication of effort while maintaining consistency and control.

You need to decide in your organization how you are going to use the group working facilities. The main considerations involve:

Copyright © 1998 Micro Focus Limited. All rights reserved.
This document and the proprietary marks and names used herein are protected by international law.
PreviousVerifying a Euro Conversion Metering Lines of CodeNext