Lots of development and no controls?
One benefit of developing software for IBM i is that it's relatively transparent in terms of understanding application architecture. It's always been fairly easy to hire RPG or COBOL programmers to pick up a project where another developer left it. Of course, there's some ramp-up time while the new programmer learns the program and database schemas, but the architecture of most IBM i applications is similar enough to make this a nonissue. Therefore, organizations typically hire, retain, and eliminate many developers over the life of their IBM i applications. The penalty for using this approach has been extremely minor, given the relative stability enjoyed by applications that may have multiple versions lying around.
However, this development style compounds the challenges of becoming a more effective development organization or becoming Sarbanes-Oxley (SOX)-compliant. It's easy for a consultant to inform you of the problems, which you may already be aware of, but the question is how to get from point A to point B. How do you bridge the distance between your current state and audit-readiness?
Figure 1 shows an example of a typical change procedure in an IBM i development environment.
Figure 1: Typical development environment change process. (Click images to enlarge.)
Documentation Software Bridges the Gap
So where does IBM i documentation software fit in? Isn't this just a change-management problem? The answer is yes, but you aren't really ready to just plug in a change management tool yet. You first need to answer the "which member is correct" question. Cross-referencing and documentation tools, like ABSTRACT from SEQUEL Software, can help.
ABSTRACT has many sophisticated reports that you can run prior to generating a cross-reference. These reports identify things you need to know before you reach the change control state—like orphaned objects, objects without source, source conflicts, or source members with multiple (or no) objects (Figure 2).
Figure 2: Define the Exception Report.
After the exception reports are generated, someone still needs to correct the object/source relationship problem. Without ABSTRACT, a programmer would need to recompile all objects affected, which can have a significant impact on database files and would likely create a lot of work. ABSTRACT's Change Service Data command makes it easy to redirect the object to point to the correct source member (Figure 3).
Figure 3: The Exception Report identifies objects needing to be recompiled.
Ready to Exhibit Control
After you resolve your object/source conflicts, you're one large step closer to SOX compliance. SOX Section 404 requires that companies have internal control over items like financial reporting and object change procedures. ABSTRACT can help here as well.
Financial reporting control, for example, requires that you document any objects that touch financial reports. Change-management software is effective at telling you what programs touch your report programs or which files those report programs use. The reality, however, is that IBM i applications are far more complex than just program/file relationships. A question like "Does this report manipulate the Sales Revenue field?" can be answered only by a tool like ABSTRACT (Figures 4 and 5).
Figure 4: Right-click any field and select "Field where used."
Figure 5: ABSTRACT displays where the field is used.
ABSTRACT also documents legacy artifacts, like copybooks or QRYDFNs, and their impact on the application flow. In addition, recent versions of IBM i applications, like RPGLE or COBOLLE, use procedures, subroutines, and external data structures for which change-management software doesn't document dependencies. ABSTRACT analyzes the source for these objects, whereas change-management tools rely only on object-level information, typically derived from the DSPPGMREF command.
The Big Picture
At the macro level, ABSTRACT can help you or your auditor understand broad application flows. It can generate flowcharts from the "ground up" to answer questions like "where is the AMTDU field used?" Or you can get "top down" perspectives that provide information such as "this is my application's entry point; show me the application flow for that object." You can work with the flowcharts in ABSTRACT or use Visio (Figure 6).
Figure 6: Flowcharts show you the big picture.
Summary
Compliance is broad enough in scope that a single software tool is unlikely to address all your compliance challenges. It's clear that organizations need to gain more control over their change procedures and that dealing with the dirty work prior to and during that step can't be addressed by change-management software alone. Click here to learn more about how ABSTRACT can help you in this endeavor.
as/400, os/400, iseries, system i, i5/os, ibm i, power systems, 6.1, 7.1, V7,
LATEST COMMENTS
MC Press Online