“Systems do not have a ‘life cycle.’ They may go on forever if kept viable with change. The only thing that has a ‘life cycle’ is a project which has a beginning for planning, a middle for execution, and an end for review.”
– Bryce’s Law
“Unless we learn from history, we are doomed to repeat it.” Many I.T. organizations do not grasp the significance of System Audits and, as such, tend to regard such reviews as a waste of precious time and resources. Consequently, systems are installed without any type of follow-up. Because of this, many of the benefits of the system are never realized. For example, clerical savings may have been part of the justification for a new system, but operating management did not reduce or reallocate the staff to realize the benefits. Without a system review, “Parkinson’s Law” may occur where “work expands to fill the time available,” and the system savings are never realized.
As another example, a new management infrastructure, created as a result of organizational changes, may not be effectively utilizing the information provided by the system. They may be unaware of, or lack knowledge about the system. In order for management to have confidence in their systems organization and the systems installed, they should have tangible evidence their significant investments are producing the promised results.
The systems organization can realize many benefits from a System Audit. It is not just a platitudinous statement to say that “we learn from our mistakes”; It is a clear and established fact. A detailed audit provides systems and software personnel with an opportunity to review their estimating and design skills. This knowledge, along with historical data, can be gainfully applied to new systems and projects. As such, estimating guidelines can be updated.
A carefully executed audit can also add to the credibility of the systems organization by showing how well they performed and whether they were accountable for their actions. More importantly, the systems organization may find the new system is simply not functioning in spite of systems maintenance and revisions. In this event, the audit may indicate an entirely new approach should be taken as opposed to continually fighting the problem.
WHEN SHOULD YOU CONDUCT THE SYSTEM AUDIT?
The System Audit should be scheduled for execution after the system has operated for an adequate period of time. Typically, this will be between thirty (30) and ninety (90) days after implementation. In some instances, it may be necessary to conduct more than one audit, depending on the timing of implementation and execution of the various sub-systems within the system. For example, users may want a detailed accounting of project costs immediately after startup. The actual system evaluation can follow thereafter.
HOW SHOULD YOU PERFORM THE SYSTEM AUDIT?
Ideally, the audit should not be performed by the same individual(s) who developed the system. A neutral third party should be involved who can audit the system and project objectively.
The steps required to execute the System Audit are similar to:
* “Current Systems Analysis” – the intent of this activity is to study the existing system, sample work, and evaluate strengths and weaknesses. This same type of work is performed in the System Audit. Here, the Systems Analyst uses the systems documentation to walk through the system.
* “Prepare System Evaluation” – the intent of this activity is to estimate and schedule the remaining work effort, and perform a Cost/Benefit Analysis. During the System Audit, the Project Manager examines actual time reported, costs incurred and delivery dates. A final Cost/Benefit Analysis is calculated based on actual data (not estimated).
During the System Audit the Systems Analyst may identify errors, omissions and severe weaknesses in the new system. In this event, the analyst may initiate a Work Request to document a modification/improvement. This will then go through the normal process of evaluation and priority calculation.
A Project Management (PM) system can assemble all pertinent project data for analysis. This data can also be exported to other financial packages and spreadsheets for further analysis as required.
There are those who see System Audits as a waste of time and would rather scramble off to other assignments. As for me, I have always found the System Audit as an invaluable opportunity to fine tune the skills of the development staff and improve the standards and techniques used throughout the methodology. For example, after one System Audit we found it necessary to upgrade our programming standards to better promote consistency. We also found it necessary to obtain a prototyping tool to expedite the development of screens. This materially impacted subsequent projects which benefited from the System Audit.
Keep the Faith!